Copyright: INTWIN Layout: Christian Müller-Planitz
Citation: Copied from Ralf Brown's Interrupt List


Contents:
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Contents:

Interrupt Index

Tables

FILELIST

INTERRUP.1ST File

Interrupt Primer

Ports

Memory

CMOS

Glossary

Selected Topics

Miscellaneous Information

INTWIN Help and Hints

Credits

INT2WHLP v. 1.16 compilation.

INTWIN.HLP compiled 1995-08-13 - 21:12.


Credits

Interrupt List (c) by Ralf Brown

This list was converted from the released ASCII file

to the Windows Help-Format by

Christian Müller-Planitz

"cmp@cs.utah.edu" or "cmueller@techfak.uni-bielefeld.de"

and

Bent Lynggaard

"lynggaard@risoe.dk"


Interrupts
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Interrupts

Expand index

Notes

INT 00 - CPU-generated - DIVIDE ERROR

INT 01 - CPU-generated - SINGLE STEP; (80386+) - DEBUGGING EXCEPTIONS

INT 02 - external hardware - NON-MASKABLE INTERRUPT

INT 03 - CPU-generated - BREAKPOINT

INT 04 - CPU-generated - INTO DETECTED OVERFLOW

INT 05 - PRINT SCREEN; CPU-generated (80186+) - BOUND RANGE EXCEEDED

INT 06 - CPU-generated (80286+) - INVALID OPCODE

INT 07 - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE

INT 08 - IRQ0 - SYSTEM TIMER; CPU-generated (80286+)

INT 09 - IRQ1 - KEYBOARD DATA READY; CPU-generated (80286,80386)

INT 0A - IRQ2 - LPT2/EGA,VGA/IRQ9; CPU-generated (80286+)

INT 0B - IRQ3 - SERIAL COMMUNICATIONS (COM2); CPU-generated (80286+)

INT 0C - IRQ4 - SERIAL COMMUNICATIONS (COM1); CPU-generated (80286+)

INT 0D - IRQ5 - FIXED DISK/LPT2/reserved; CPU-generated (80286+)

INT 0E - IRQ6 - DISKETTE CONTROLLER; CPU-generated (80386+)

INT 0F - IRQ7 - PARALLEL PRINTER

INT 10 - VIDEO; CPU-generated (80286+)

INT 11 - BIOS - GET EQUIPMENT LIST; CPU-generated (80486+)

INT 12 - BIOS - GET MEMORY SIZE

INT 13 - DISK

INT 14 - SERIAL

INT 15 - CASSETTE

INT 16 - KEYBOARD

INT 17 - PRINTER

INT 18 - DISKLESS BOOT HOOK (START CASSETTE BASIC)

INT 19 - SYSTEM - BOOTSTRAP LOADER

INT 1A - TIME

INT 1B - KEYBOARD - CONTROL-BREAK HANDLER

INT 1C - TIME - SYSTEM TIMER TICK

INT 1D - SYSTEM DATA - VIDEO PARAMETER TABLES

INT 1E - SYSTEM DATA - DISKETTE PARAMETERS

INT 1F - SYSTEM DATA - 8x8 GRAPHICS FONT

INT 20 - DOS 1+ - TERMINATE PROGRAM

INT 21 - DOS 1+ - Function Calls

INT 22 - DOS 1+ - PROGRAM TERMINATION ADDRESS

INT 23 - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER

INT 24 - DOS 1+ - CRITICAL ERROR HANDLER

INT 25 - DOS 1+ - ABSOLUTE DISK READ

INT 26 - DOS 1+ - ABSOLUTE DISK WRITE

INT 27 - DOS 1+ - TERMINATE AND STAY RESIDENT

INT 28 - DOS 2+ - DOS IDLE INTERRUPT

INT 29 - DOS 2+ - FAST CONSOLE OUTPUT

INT 2A - NETBIOS

INT 2B - DOS 2+ - RESERVED

INT 2C - DOS 2+ - RESERVED

INT 2D - DOS 2+ - RESERVED

INT 2E - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION

INT 2F - Multiplex

INT 30 - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction

INT 31 - overwritten by CP/M jump instruction in INT 30

INT 32 - (no special use)

INT 33 - MS MOUSE

INT 34 - FLOATING POINT EMULATION - OPCODE D8h

INT 35 - FLOATING POINT EMULATION - OPCODE D9h

INT 36 - FLOATING POINT EMULATION - OPCODE DAh

INT 37 - FLOATING POINT EMULATION - OPCODE DBh

INT 38 - FLOATING POINT EMULATION - OPCODE DCh

INT 39 - FLOATING POINT EMULATION - OPCODE DDh

INT 3A - FLOATING POINT EMULATION - OPCODE DEh

INT 3B - FLOATING POINT EMULATION - OPCODE DFh

INT 3C - FLOATING POINT EMULATION - SEGMENT OVERRIDE

INT 3D - FLOATING POINT EMULATION - STANDALONE FWAIT

INT 3E - FLOATING POINT EMULATION - Borland "SHORTCUT" CALL

INT 3F - Overlay manager interrupt (Microsoft/Borland)

INT 40 - DISKETTE - RELOCATED ROM BIOS DISKETTE HANDLER

INT 41 - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE; CPU - MS Windows

INT 42 - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)

INT 43 - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)

INT 44 - VIDEO DATA - CHARACTER FONT (PCjr); Novell NetWare

INT 45 - Z100/Acorn

INT 46 - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE

INT 47 - Z100/Acorn/Western Digital/SQL Base

INT 48 - KEYBOARD (PCjr) - Z100/Watstar/Acorn/Western Digital/Compaq

INT 49 - SYSTEM DATA (PCjr) - Z100/TI/Watstar/Acorn/MAGic

INT 4A - SYSTEM - USER ALARM HANDLER

INT 4B - IBM SCSI interface; Virtual DMA Specification (VDS)

INT 4C - Z100/Acorn/TI

INT 4D - Z100

INT 4E - TI/Z100

INT 4F - Common Access Method SCSI

INT 50 - IRQ0 relocated by software

INT 51 - IRQ1 relocated by software

INT 52 - IRQ2 relocated by software

INT 53 - IRQ3 relocated by software

INT 54 - IRQ4 relocated by software

INT 55 - IRQ5 relocated by software

INT 56 - IRQ6 relocated by software

INT 57 - IRQ7 relocated by software

INT 58 - IRQ8/0 relocated by software

INT 59 - IRQ9/1 relocated by software; GSS Computer Graphics Interface

INT 5A - IRQ10/2 relocated by software

INT 5B - IRQ11/3 relocated by software; Network

INT 5C - IRQ12/4 relocated by software; Network Interface

INT 5D - IRQ13/5 relocated by software

INT 5E - IRQ14/6 relocated by software

INT 5F - IRQ15/7 relocated by software; HP 95LX GRAPHICS PRIMITIVES

INT 60 - reserved for user interrupt; multiple purposes

INT 61 - reserved for user interrupt; multiple purposes

INT 62 - reserved for user interrupt; multiple purposes

INT 63 - reserved for user interrupt; multiple purposes

INT 64 - reserved for user interrupt; multiple purposes

INT 65 - reserved for user interrupt; multiple purposes

INT 66 - reserved for user interrupt; multiple purposes

INT 67 - reserved for user interrupt; LIM EMS; multiple purposes

INT 68 - multiple purposes

INT 69 - multiple purposes

INT 6A - multiple purposes

INT 6B - multiple purposes

INT 6C - CONVERTIBLE; DOS 3.2; DECnet DOS network scheduler

INT 6D - VGA - internal

INT 6E - DECnet DOS - DECnet NETWORK PROCESS API

INT 6F - Novell NetWare; 10NET; MS Windows 3.0

INT 70 - IRQ8 - CMOS REAL-TIME CLOCK

INT 71 - IRQ9 - REDIRECTED TO INT 0A BY BIOS

INT 72 - IRQ10 - RESERVED

INT 73 - IRQ11 - RESERVED

INT 74 - IRQ12 - POINTING DEVICE (PS)

INT 75 - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)

INT 76 - IRQ14 - HARD DISK CONTROLLER (AT and later)

INT 77 - IRQ15 - RESERVED (AT,PS); POWER CONSERVATION (Compaq)

INT 78 - DOS extenders; multiple purposes

INT 79 - multiple purposes

INT 7A - Novell NetWare; IBM 3270; multiple purposes

INT 7B - multiple purposes

INT 7C - multiple purposes

INT 7D - multiple purposes

INT 7E - RESERVED FOR DIP, Ltd. ROM LIBRARY; multiple purposes

INT 7F - multiple purposes

INT 80 - reserved for BASIC; multiple purposes

INT 81 - reserved for BASIC

INT 82 - reserved for BASIC

INT 83 - reserved for BASIC

INT 84 - reserved for BASIC

INT 85 - reserved for BASIC

INT 86 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 87 - IBM ROM BASIC - used while in interpreter

INT 88 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 89 - IBM ROM BASIC - used while in interpreter

INT 8A - IBM ROM BASIC - used while in interpreter

INT 8B - IBM ROM BASIC - used while in interpreter

INT 8C - IBM ROM BASIC - used while in interpreter

INT 8D - IBM ROM BASIC - used while in interpreter

INT 8E - IBM ROM BASIC - used while in interpreter

INT 8F - IBM ROM BASIC - used while in interpreter

INT 90 - IBM ROM BASIC - used while in interpreter

INT 91 - IBM ROM BASIC - used while in interpreter

INT 92 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 93 - IBM ROM BASIC - used while in interpreter

INT 94 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 95 - IBM ROM BASIC - used while in interpreter

INT 96 - IBM ROM BASIC - used while in interpreter

INT 97 - IBM ROM BASIC - used while in interpreter

INT 98 - IBM ROM BASIC - used while in interpreter

INT 99 - IBM ROM BASIC - used while in interpreter

INT 9A - IBM ROM BASIC - used while in interpreter

INT 9B - IBM ROM BASIC - used while in interpreter

INT 9C - IBM ROM BASIC - used while in interpreter

INT 9D - IBM ROM BASIC - used while in interpreter

INT 9E - IBM ROM BASIC - used while in interpreter

INT 9F - IBM ROM BASIC - used while in interpreter

INT A0 - IBM ROM BASIC - used while in interpreter

INT A1 - IBM ROM BASIC - used while in interpreter

INT A2 - IBM ROM BASIC - used while in interpreter

INT A3 - IBM ROM BASIC - used while in interpreter

INT A4 - IBM ROM BASIC - used while in interpreter

INT A5 - IBM ROM BASIC - used while in interpreter

INT A6 - IBM ROM BASIC - used while in interpreter

INT A7 - IBM ROM BASIC - used while in interpreter

INT A8 - IBM ROM BASIC - used while in interpreter

INT A9 - IBM ROM BASIC - used while in interpreter

INT AA - IBM ROM BASIC - used while in interpreter

INT AB - IBM ROM BASIC - used while in interpreter

INT AC - IBM ROM BASIC - used while in interpreter

INT AD - IBM ROM BASIC - used while in interpreter

INT AE - IBM ROM BASIC - used while in interpreter

INT AF - IBM ROM BASIC - used while in interpreter

INT B0 - IBM ROM BASIC - used while in interpreter

INT B1 - IBM ROM BASIC - used while in interpreter

INT B2 - IBM ROM BASIC - used while in interpreter

INT B3 - IBM ROM BASIC - used while in interpreter

INT B4 - IBM ROM BASIC - used while in interpreter

INT B5 - IBM ROM BASIC - used while in interpreter

INT B6 - IBM ROM BASIC - used while in interpreter

INT B7 - IBM ROM BASIC - used while in interpreter

INT B8 - IBM ROM BASIC - used while in interpreter

INT B9 - IBM ROM BASIC - used while in interpreter

INT BA - IBM ROM BASIC - used while in interpreter

INT BB - IBM ROM BASIC - used while in interpreter

INT BC - IBM ROM BASIC - used while in interpreter

INT BD - IBM ROM BASIC - used while in interpreter

INT BE - IBM ROM BASIC - used while in interpreter

INT BF - IBM ROM BASIC - used while in interpreter

INT C0 - IBM ROM BASIC - used while in interpreter

INT C1 - IBM ROM BASIC - used while in interpreter

INT C2 - IBM ROM BASIC - used while in interpreter

INT C3 - IBM ROM BASIC - used while in interpreter

INT C4 - IBM ROM BASIC - used while in interpreter

INT C5 - IBM ROM BASIC - used while in interpreter

INT C6 - IBM ROM BASIC - used while in interpreter

INT C7 - IBM ROM BASIC - used while in interpreter

INT C8 - IBM ROM BASIC - used while in interpreter

INT C9 - IBM ROM BASIC - used while in interpreter

INT CA - IBM ROM BASIC - used while in interpreter

INT CB - IBM ROM BASIC - used while in interpreter

INT CC - IBM ROM BASIC - used while in interpreter

INT CD - IBM ROM BASIC - used while in interpreter

INT CE - IBM ROM BASIC - used while in interpreter

INT CF - IBM ROM BASIC - used while in interpreter

INT D0 - IBM ROM BASIC - used while in interpreter

INT D1 - IBM ROM BASIC - used while in interpreter

INT D2 - IBM ROM BASIC - used while in interpreter

INT D3 - IBM ROM BASIC - used while in interpreter

INT D4 - IBM ROM BASIC - used while in interpreter

INT D5 - IBM ROM BASIC - used while in interpreter

INT D6 - IBM ROM BASIC - used while in interpreter

INT D7 - IBM ROM BASIC - used while in interpreter

INT D8 - IBM ROM BASIC - used while in interpreter

INT D9 - IBM ROM BASIC - used while in interpreter

INT DA - IBM ROM BASIC - used while in interpreter

INT DB - IBM ROM BASIC - used while in interpreter

INT DC - IBM ROM BASIC - used while in interpreter

INT DD - IBM ROM BASIC - used while in interpreter

INT DE - IBM ROM BASIC - used while in interpreter

INT DF - IBM ROM BASIC - used while in interpreter

INT E0 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT E1 - IBM ROM BASIC - used while in interpreter

INT E2 - IBM ROM BASIC - used while in interpreter

INT E3 - IBM ROM BASIC - used while in interpreter

INT E4 - IBM ROM BASIC - used while in interpreter

INT E5 - IBM ROM BASIC - used while in interpreter

INT E6 - IBM ROM BASIC - used while in interpreter

INT E7 - IBM ROM BASIC - used while in interpreter

INT E8 - IBM ROM BASIC - used while in interpreter

INT E9 - IBM ROM BASIC - used while in interpreter

INT EA - IBM ROM BASIC - used while in interpreter

INT EB - IBM ROM BASIC - used while in interpreter

INT EC - IBM ROM BASIC - used while in interpreter

INT ED - IBM ROM BASIC - used while in interpreter

INT EE - IBM ROM BASIC - used while in interpreter

INT EF - BASIC - ORIGINAL INT 09 VECTOR

INT F0 - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR

INT F1 - reserved for user interrupt

INT F2 - reserved for user interrupt

INT F3 - reserved for user interrupt

INT F4 - reserved for user interrupt

INT F5 - reserved for user interrupt

INT F6 - reserved for user interrupt

INT F7 - reserved for user interrupt

INT F8 - reserved for user interrupt

INT F9 - reserved for user interrupt

INT FA - reserved for user interrupt

INT FB - reserved for user interrupt

INT FC - reserved for user interrupt

INT FD - reserved for user interrupt

INT FE - AT/XT286/PS50+ - destroyed by return from protected mode

INT FF - AT/XT286/PS50+ - destroyed by return from protected mode

Notes


INTERRUP.1ST File

Interrupt List	Release 47	   Last change 8/13/95

Please redistribute the following files unmodified as a group, in a quartet of

archives named INTER47A through INTER47D (preferably the original authenticated

PKZIP archives):

INTERRUP.1ST	this file

INTERRUP.A	INT 00 through INT 13/2F  \

INTERRUP.B	INT 13/30 through INT 15/4F\

INTERRUP.C	INT 15/50 through INT 19    \

INTERRUP.D	INT 1A through INT 21/43     \	 total 1856 pages at

INTERRUP.E	INT 21/44 through INT 21/5F   \	 60 lines per page,

INTERRUP.F	INT 21/60 through INT 21/FE    > 1979 with INTPRINT -p

INTERRUP.G	INT 21/FF through INT 2F/42   /	 (7400 entries)

INTERRUP.H	INT 2F/43 through INT 2F/CF  /	 (2734 tables)

INTERRUP.I	INT 2F/D0 through INT 5A    /

INTERRUP.J	INT 5B through INT 61	   /

INTERRUP.K	INT 62 through INT 6E	  /

INTERRUP.L	INT 6F through INT 7F	 /

INTERRUP.M	INT 80 through INT FF   /

INTERRUP.PRI	a brief primer on interrupts

INTPRINT.COM	a simple formatter that also generates a list summary

INTPRINT.DOC	instructions for INTPRINT

OVERVIEW.LST	brief listing of major uses of each interrupt

86BUGS.LST	a listing of CPU bugs and undocumented features

CMOS.LST	a description of the CMOS RAM data bytes

FARCALL.LST	APIs available through FAR CALLs

GLOSSARY.LST	a glossary of terms, abbreviations, and acronyms

MEMORY.LST	format of the BIOS data area

OPCODES.LST	a listing of recent and undocumented CPU instructions

PORTS.LST	a listing of I/O ports

CATEGORY.KEY	descriptions of divider-line category letters

COMBINE.BAT	combine the pieces of the list into a single file

The following files should be distributed in an archive called INTER47E:

86BUGSnn.ZIP	programs to test for CPU bugs

INT.*	invoke interrupts from commandline

INT2GUID.*	convert list into TurboPower GUIDE or POPHELP database

INT2HLP.ZIP	convert list into QuickHelp database

INT2QH.*	convert list into QuickHelp database

INTHELP.*	convert list into TurboPower GUIDE database

INTHLP??.ZIP	Interrupt Helper viewer for the interrupt list

INTLIST.E	Epsilon extension for handling list

INTPRINT.C	source code for INTPRINT

INTSM*.ZIP	Interrupt Summary viewer for the interrupt list

RB2NG???.ZIP	convert list into Norton Guides database

INTERVUE.EXE	indexed interrupt list browser

INTLIST.ICO	Windows icon for INTERVUE

IV.BAT	wrapper for INTERVUE

Finally, the following files should be distributed in an archive INTER47F:

INT2WHLP.ZIP	convert list into Windows Help database

HINTSRCH.ZIP	WinHelp DLL for full-text searches of interrupt list

WH_ED*.ZIP	WinHelp-file editor

Concatenate INTERRUP.A, .B, .C, .D, .E, .F, .G, .H, .I, .J, .K, .L, and .M with

COMBINE.BAT to create an interrupt list file identical to my master copy.

Use INTPRINT to generate a one-line-per-call summary file and/or a file

containing only data structure formats.	 See INTPRINT.DOC for details.

Note: in addition to the archives mentioned above, you may also find other

archives named INTERrrx containing additional files generated from the

original distribution for your convenience.  These other archives are

maintained by other people, so please do not ask me any questions about them

(all I'll do is refer you to the creator).  The additional distributions

I am currently aware of contain a ready-made Quick Help database (compiled

by Brad Willcott <b-willcott@adfa.oz.au>), a ready-made Norton Guides

database (compiled by Michael Gallias <gallias@iaccess.za> and distributed

as RBNGrr.*), and a ready-made WinHelp database (compiled by Ron Loewy

<76350.333@compuserve.com> and occasionally distributed as INTWIN*.*).

--------!---COPYRIGHT------------------------

NOTICE	NOTICE	NOTICE	NOTICE

This compilation is (c) Copyright 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Permission is granted to use and redistribute the files comprising the

interrupt listing in any way (including conversion to another format),

provided that my name and addresses and the names of all contributers

are preserved, as well as the information on how to obtain new releases.

The above requirement to give credit is waived for excerpts totaling

less than 2000 lines (although common courtesy indicates that you

should give some form of acknowledgment).

Some of the archives in the distribution contains programs contributed

by others; these programs are included as a service to users of the

interrupt list and the authors retain the rights to their programs.

Please send corrections/additions to the interrupt list me rather than

distributing a modified version of the list, so that all may benefit from

your contribution.  Corrections to programs contributed by others should

be sent directly to their authors.

--------!---DISCLAIMER-----------------------

DISCLAIMER:  THIS MATERIAL IS PROVIDED "AS IS".	 I verify the information

contained in this list to the best of my ability, but I cannot be held

responsible for any problems caused by use or misuse of the information,

especially for those functions not officially documented.  If it is marked

"internal" or undocumented, you should check it carefully to make sure it

works the same way in your version of the software (and please let me know

whether or not it works the same way).	Information marked with "???" is

known to be incomplete or guesswork.

--------!---AVAILABILITY---------------------

If the list is three or more months old by the time you get it, there

is probably a newer release out already (R46 is planned for early June,

R47 for early August).  Each release supersedes all previous versions, so

there is no need to keep old versions.

The newest release of this list is available in these places (please do not

ask me to email it, at over one meg compressed it is much too large for that):

On the Internet, by standard anonymous FTP from FTP.CS.CMU.EDU [128.2.206.173].

Change directly to directory /afs/cs.cmu.edu/user/ralf/pub and get the

files inter??a.zip thru inter??d.zip.  You MUST change directory first

and in a single command because of the way CMU's anonymous FTP works.

Don't forget to set mode "binary" or "type L 8"!

If connected to AFS, you can simply perform standard Unix/VMS/whatever

directory listing and file copies from the above directory.

On FIDOnet, from SoundingBoard BBS 1:129/26 1-412-621-4604 9600/14.4k HST/V32

as files INTERrrA.ZIP to INTERrrD.ZIP (rr stands for the release

number), in file area #8.  First-time callers may download.

File Requests.

Alternate Distribution Points (the list will typically be available here

within 24 hours of release):

Internet: on the SimTel Software Repository mirrors as files interRRa.zip to

interRRd.ZIP in directory /pub/msdos/info, where RR stands for the

release number. Note that you must use a binary transfer mode

("tenex" or "type L 8" for most people) to successfully FTP the

files.	The SimTel mirrors include oak.oakland.edu [141.210.10.117],

wuarchive.wustl.edu [128.252.135.4], ftp.uu.net [137.39.1.9],

nic.funet.fi [128.214.6.100], src.doc.ic.ac.uk [146.169.3.7], and

archie.au [139.130.4.6].

FIDO:	SyncPoint BBS 1:261/1008 1-410-529-2584 File Requests.

Additional Distribution Points:

BITnet: you may retrieve the copy on SimTel via the following automated mail

servers:

(in the US) LISTSERV@RPITSVM (alias VM.ITS.RPI.EDU)

    LISTSERV@NDSUVM1 (alias VM1.NODAK.EDU)

(in Europe) TRICKLE@AWIWUW11 (Austria)

    TRICKLE@BANUFS11 (Belgium)

    TRICKLE@DKTC11   (Denmark)

    TRICKLE@FRMOP11  (France)

    TRICKLE@DEARN    (Germany)

    TRICKLE@IMIPOLI  (Italy)

    TRICKLE@HEARN    (Netherlands)

    TRICKLE@EB0UB011 (Spain)

    TRICKLE@SEARN    (Sweden)

    TRICKLE@TREARN   (Turkey)

(elsewhere) TRICKLE@UNALCOL  (Colombia)

    TRICKLE@TAUNIVM  (Israel)

FIDO:	boards belonging to the PDN (Programmer's Distribution Network) system

Madrid, Spain: 2:341/70 (93:341/110), +34-1-378 01 27.	24 hours.

  28800 V.FC/V.34.  File requests from all nodes, including unlisted

  points (magic filename INTER for newest release).

CompuServe: in the IBM Programming Forum (GO IBMPRO), Library 6, as INTrrA.*,

INTrrB.*, INTrrC.*, and INTrrD.*.

The list is also posted to USEnet in comp.binaries.ibm.pc about twice a year,

concurrently with a new release of the list.  Since comp.binaries.ibm.pc is

archived, you will be able to find a fairly recent release in the various UUCP

archives.

--------!---ABBREVIATIONS--------------------

Key to system abbreviations

(unless otherwise indicated, a function is available on all systems)

PC	IBM PC

XT	IBM PC XT

PORT	IBM PC Portable (uses same BIOS as XT)

Jr	IBM PCjr

AT	IBM PC AT

XT2	IBM PC XT 2

XT286	IBM PC XT/286

CONV	IBM Convertible

PS	IBM PS/2, any model

PS30	IBM PS/2 Model 30 and below

PS50+	IBM PS/2 Models 50,60,70,80

CDP	Compaq Deskpro

CLTE	Compaq LTE

CP386	Compaq Portable 386

CSLT	Compaq SLT

CSYS	Compaq Systempro

CGA	Color Graphics Adapter

EGA	Enhanced Graphics Adapter

VGA	Video Graphics Array

MCGA	Multi-Color Graphics Array

TopView TopView/DESQview/TaskView/OmniView/other compatibles

ConcCP/M Concurrent CP/M by Digital Research, now DR MultiUser DOS

--------!---CREDITS--------------------------

This list is the result of the time and effort of a large number of people:

 1/85 Janet Jack  (original list)

 1/85 J. Weaver Jr.

 2/85 John Cooper

 2/85 Skip Gilbrech

      Bob Jack

 4/85 Jim Kyle	       76703.762@compuserve.com

 8/85 John Ruschmeyer  moncol!john@princeton.edu

 8/85 Bill Frolik      bill@hpcvlx.cv.hp.com

 8/85 Ross M. Greenberg 72461.3212@compuserve.com

   87 Mike Morearty    mikemo@microsoft.com	  \   early 1987

      Ed Nather	       nather@emx.utexas.edu	   >  several undocumented DOS

      Peter Holzmann   pete@octopus.com	  /   calls in another list

   87 Dan Lanciani     ddl@harvard.harvard.edu	      various, incl. NetBIOS

 7/87 Ralf Brown       ralf@telerama.lm.com	      INT 24h and DOS func 59h

10/87 Ralf Brown       ralf@telerama.lm.com	      become list maintainer

11/87 Dan Davison      dd@lanl.gov	      DOS 3.3 function calls

11/87 Bill White       wwhite@jeeves.teknowledge.com  DOS 3.3

11/87 Richard Hargrove harvard!killer!richardh	      EGA

12/87 Vincent Broman   broman@bugs.nosc.mil	      Cordata BIOS/Minix

12/87 Dennis Grinberg  dennis+@cs.cmu.edu	      MCGA/VGA

 1/88 Brad Davis       bradd@gssc.gss.com	      GSS, DGIS

 2/88 Diomidis Spinellis dds@doc.ic.ac.uk	      Herc GRAFIX Dev Toolkit

 3/88 Michael A. Moran Michael@cup.portal.com	      VGA INT 10h

 3/88 Ralf Brown       ralf@telerama.lm.com	      DESQview API

 4/88 Richard Marks    rmarks@KSP.Unisys.COM	      undoc dir search fields

 5/88 Robert Goldsmith rpg@mitre.org	      AT&T DEB adapter

 7/88 Gary E. Miller   gem@rellim.com	      Paradise VGA

 8/88 John Lefor       johnlef@microsoft.com	      XMS spec

 9/88 Dan Lanciani     ddl@harvard.harvard.edu	      miscellaneous

 9/88 Howard Johnson   Howard_Reed_Johnson@cup.portal.com  NetWare overview

 9/88 Finn Thoegerson  via jesperf@daimi.aau.dk	      10-NET, miscellaneous

 9/88 Michael Shiels   mshiels@watmath.waterloo.edu   FOSSIL spec

 9/88 Ralf Brown       ralf@telerama.lm.com	      Microsoft CD-ROM API

10/88 Michael Shiels   mshiels@ziebmef.uucp	      ATI VIP INT 10h

       BMB Compuscience Canada Ltd.

10/88 Michael Shiels   mshiels@ziebmef.uucp	      FTP Driver spec

10/88 Helmut Waelder   ZRWA001@DTUZDV1.BITNET	      data structures, misc

10/88 Helmut Waelder   ZRWA001@DTUZDV1.BITNET	      more 10-NET functions

10/88 Ge van Geldorp   ge@dutlru2.tudelft.nl	      Novell NetWare

10/88 Ralf Brown       ralf@telerama.lm.com	      INT 2F/AH=12h

11/88 Clarence A Dold  dold@tsmiti.Convergent.COM     Compaq386 speed settings

11/88 Ralf Brown       ralf@telerama.lm.com	      TesSeRact API

12/88 Ying-Kuen K. Hwang  khwang@wyse.com	      ESDI fixed disk calls

 1/89 Ari Huttunen     Ari.Huttunen@hut.fi	      additional INT 33 calls

 1/89 Duncan Murdoch   dmurdoch@watstat.waterloo.edu  undoc fields in DOS data

 2/89 Ralf Brown       ralf@telerama.lm.com	      VCPI API

 3/89 Helmut Waelder   ZRWA001@DTUZDV1.BITNET	      more DOS 4.0 calls

 4/89 Robert Seals     rds95@leah.Albany.EDU	      ATI VGA Wonder modes

 4/89 Ge van Geldorp   ge@dutlru2.tudelft.nl	      pcANYWHERE III API

 4/89 Robin Walker     rdhw@cus.cam.ac.uk	      undoc DOS 4 data struc

 4/89 Robin Walker     rdhw@cus.cam.ac.uk	      DOS 4.0 shell API

 4/89 Ralf Brown       ralf@telerama.lm.com	      DCA/Intel CAS API

 4/89 Ralf Brown       ralf@telerama.lm.com	      Intel Image Proc Interf

 5/89 Robin Walker     rdhw@cus.cam.ac.uk	      multiplex int calls

 6/89 Peter Sawatzki   IN307@DHAFEU11.BITNET	      Video7 extended INT 10

 7/89 Wes Cowley       71441.3154@compuserve.com      SHARE.EXE hooks

 9/89 Robin Walker     rdhw@cus.cam.ac.uk	      more DOS 4 data struc

 9/89 Stuart R. Kemp   cpsrk@marlin.jcu.edu.au	      Halo88

 9/89 Urs Zurbuchen    zu@bernina.ethz.ch	      Btrieve API

 9/89 Dan Lanciani     ddl@husc6.harvard.edu	      Z100, Taxan video BIOS

 9/89 Robin Walker     rdhw@cus.cam.ac.uk	      more DOS 4 data struc

10/89 Robin Walker     rdhw@cus.cam.ac.uk	      DOS 3.0 data struc

10/89 John DesRosiers  via Marc Bertrand 1:167/1      Ontrack INT 13 extensions

11/89 Ge van Geldorp   ge@dutlru2.tudelft.nl	      master boot record

11/89 Barry Burke      bburke@banyan.com	      Banyan VINES

11/89 Christian Franke franke@informatik.rwth-aachen.de	 ATI EGA Wonder, WP5.0

 1/90 Norman Walsh     NORM@IONAACAD.BITNET	      Inset API

 1/90 Andrew Schulman  76320.302@CompuServe.COM	      Phar Lap 386/DOS extender

 1/90 Dan Prather      72765.1330@CompuServe.COM      IBM 3270 Workst Prog API

 3/90 Roger Bowler     rbowler@cix     Fido 2:252/10  IBM 3270, Amstrad PC1512

 3/90 Mike Baszczak	      SQL Base

 4/90 Rick Wagner      rick@always.com	      PC Network RECEIVER.COM

 4/90 Ralf Brown       ralf@telerama.lm.com	      more DOS 3.3 internals

 5/90 Mike Weaver      1:264/610	      DESQview XDI

 6/90 Les Moskowitz    1:261/1008	      APL*PLUS/PC

 6/90 Ralf Brown       ralf@telerama.lm.com	      more DOS 4.0 internals

 6/90 Robin Walker     rdhw@cus.cam.ac.uk	      BIOS data segment format

 7/90 Andrew Schulman  76320.302@CompuServe.COM	      MSWindows INT 2F/AH=16h

 7/90 Ben Myers	       0003571400@mcimail.com	      Tseng ET4000, misc

 7/90 Ralf Brown       ralf@telerama.lm.com	      DPMI 0.9 API

 8/90 G. Adam Stanislav 1:129/39	      AVATAR.SYS

 8/90 Robin Walker     rdhw@cus.cam.ac.uk	      more DOS internals

 8/90 Michael A Shiels mshiels@masnet.uucp	      Quarterdeck INT 2F/AH=D2h

 8/90 Michel Mathieu   mjm@bmbcomp.uucp	      Logitech INT 33

 8/90 Cornel Kaufmann  coka@bernina.ethz.ch	      Novell Netware shell 3.01

 9/90 Michael A Shiels mshiels@masnet.uucp	      IBM/Yale & 3com INT 14

 9/90 Michael A Shiels mshiels@masnet.uucp	      INT 6B, Starlan INT 2A/5B

 9/90 Michael A Shiels mshiels@masnet.uucp	      DECnet INT 69/INT 6A

 9/90 Michael A Shiels mshiels@masnet.uucp	      Topware NOS, Win3 EGA.SYS

 9/90 David Maxey      dmaxey@lotus.com	      misc undoc DOS

 9/90 Roger Bowler     rbowler@cix.compulink.co.uk    Attachmate Extra API

 9/90 Ben Myers	       0003571400@mcimail.com	      FRIEZE API

 9/90 Michael A Shiels mshiels@masnet.uucp	      VDS, Sangoma, misc

 9/90 Rob Luursema     robl@idca.tds.philips.nl	      EISA BIOS calls

10/90 Stephen Bean     70575.406@compuserve.com	      more DECnet INT 69/INT 6A

10/90 Maxime Dallaire  1:167/163	      Carbon Copy Plus 5.0 API

11/90 Dan Fandrich     shad04@ccu.umanitoba.ca	      SCSI calls

       1:153/511.1

11/90 Ben Myers	       0003571400@mcimail.com	      Everex Viewpoint VGA

11/90 Michael A Shiels mshiels@masnet.uucp	      AppleTalk/IBM802.2 INT 5C

11/90 Mark Livingstone markl@csource.oz.au	      TVGA video modes

11/90 Michael A Shiels mshiels@masnet.uucp	      LPTx, X00 calls

12/90 Michael A Shiels mshiels@masnet.uucp	      Compaq BIOS, Ad Lib

12/90 Michael A Shiels mshiels@masnet.uucp	      PCSpool,Disk Spool II

12/90 Michael A Shiels mshiels@masnet.uucp	      OmniView, misc

12/90 Michael A Shiels mshiels@masnet.uucp	      Cswitch, HIGHUMM.SYS,misc

 1/91 Michael A Shiels mshiels@masnet.uucp	      Back&Forth 1.62,DoubleDOS

 1/91 Bernd Schemmer   (Dortmund, Germany)	      MDEBUG API

 1/91 Michael A Shiels mshiels@masnet.uucp	      more AppleTalk, misc

 1/91 Michael A Shiels mshiels@masnet.uucp	      DPMI 1.0 func names

 2/91 Michael A Shiels mshiels@masnet.uucp	      miscellaneous

 3/91 Jan-Pascal van Best BEST@rulwinwst.LeidenUniv.nl	NetWare IPX/SPX INT 7A

 3/91 Jeroen Pluimers  jeroenp@dragons.nest.nl	      TBSCANX

 3/91 Ralf Brown       ralf@telerama.lm.com	      PC Tools API

 4/91 David H. Bennett 74635.1671@compuserve.com      ELRES API

 4/91 Michael A Shiels mshiels@masnet.uucp	      Interconnections Inc. TES

 4/91 Manfred Young    fyoung @ BIX	      DOS, LANstep, misc

 4/91 Fridrik Skulason frisk@complex.is	      virus installation checks

 4/91 Joseph G. Souza  1:322/327	      Alloy ANSK, NTNX, MW386

 4/91 Frank Gladu	      Alloy ANSK, NTNX, MW386

 4/91 Tamura Jones     2:512/36.7	      Win3 DOSX, Soundblaster

 4/91 Michael D Shride 74010.3214@compuserve.com      UltraVision

 4/91 Michael A Shiels mshiels@masnet.uucp	      DR MultiUser DOS 5.0

 5/91 Michael A Shiels mshiels@masnet.uucp	      Northnet Jetstream, misc

 5/91 Duncan Murdoch   dmurdoch@watstat.waterloo.edu  New Executable header

 5/91 Andrew Schulman  76320.302@CompuServe.COM	      SMARTDRV.SYS

 5/91 Tamura Jones     2:512/36.7	      RESPLAY

 5/91 Michael A Shiels mas@bmbcomp.uucp	      LAN Manager DOS,INT 24

 6/91 Herwig Feichtinger (Petershausen, Germany)      Shamrock EMAIL, NET.24

 6/91 Robin Walker     rdhw@cus.cam.ac.uk	      DOS 5.0 internals

 6/91 Todor Todorov    2:359/105	      misc DOS-related

 6/91 Ross Wentworth   1:102/330.2	      Turbo Pascal popup lib

 6/91 Everett Kaser    everett%hpcvra@hplabs.hp.com   HP 95LX

 7/91 Michael A Shiels mshiels@masnet.uucp	      Digiboard DigiCHANNEL

 7/91 Rickard Faith    faith@cs.unc.edu	      Stacker

 7/91 Wolfgang Lierz   lierz@kmx.gmd.dbp.de	      Norton Utilities 5.0

 8/91 Michael A Shiels mshiels@masnet.uucp	      NPC NCSI, KBUF, Telebit

 9/91 Ralf Brown       ralf@telerama.lm.com	      QEMM API

 9/91 Holger Veit      veit@du9ds3.uni-duisburg.de    Optima 1024 VGA zoom

 9/91 Gary E. Miller   gem@rellim.com	      Rabbit LLAPI

10/91 Michael A Shiels mshiels@masnet.uucp	      FTP Packet Driver 1.10

10/91 Marcus Groeber   2:241/5609.1	      DR DOS

11/91 Fridrik Skulason frisk@complex.is	      more virus install checks

11/91 Christopher J Ambler cambler@cymbal.aix.calpoly.edu  FSBBS 2.0

12/91 Robin Walker     rdhw@cus.cam.ac.uk	      new PS/2 keyboard funcs

 1/92 Krzysztof Halasa khc@inf.pm.waw.pl	      EMM386 executable header

 1/92 Michael A Shiels mshiels@masnet.uucp	      pcAnywhere IV/LAN, misc

 1/92 Michael A Shiels mshiels@masnet.uucp	      ISOLAN Multi-Protoc Sftwr

 1/92 Michael A Shiels mshiels@masnet.uucp	      PCW Weather Card, FaxBIOS

 1/92 Jan-Pieter Cornet john@pc.hacktic.nl	      DR-DOS CDS & misc

 1/92 Frank Vorstenbosch akcs.kingswood@hpcvbbs.cv.hp.com  Kingswood TSR API

 1/92 Jacob Rieper     73377.1220@compuserve.com      DR-DOS 6.0 TaskMAX

 1/92 Fridrik Skulason frisk@complex.is	      more viruses, std names

 1/92 Tim Farley       tim@magee.mhs.compuserve.com   Microsoft EMM386.EXE

 1/92 Alexi Lookin     alexi@riaph.irkutsk.su	      NetWare TBMI 2.0

 1/92 Ralf Brown       ralf@telerama.lm.com	      more QEMM API

 1/92 Tim Farley       tim@magee.mhs.compuserve.com   more PS/x model IDs

 1/92 Kevin Gillett    1:153/101	      SOLLEX SuperVGA extnsions

 1/92 Michael A Shiels mshiels@masnet.uucp	      B.Antoine ST-01 SCSI.SYS

 1/92 Michael A Shiels mshiels@masnet.uucp	      ASPI,ASPITAPE,Canon SI3

 1/92 Michael A Shiels mshiels@masnet.uucp	      Win3 INT 2F/40, misc

 2/92 Michael A Shiels mshiels@masnet.uucp	      miscellany

 2/92 Dan Bodoh	       danb@bunt.sps.mot.com	      DVSIXDI

 2/92 Gary E. Miller   gem@rellim.com	      more Btrieve API

 2/92 Ralf Brown       ralf@telerama.lm.com	      TKERNEL private API

 2/92 Ralf Brown       ralf@telerama.lm.com	      PC Paint Plus 2.0

 2/92 Tamura Jones     2:512/36.7	      Windows3 VTD.386, misc

 3/92 Frank Vorstenbosch akcs.kingswood@hpcvbbs.cv.hp.com  more Kingswood API

 3/92 Michael A Shiels mshiels@masnet.uucp	      MBBIOS

 3/92 Ralf Brown       ralf@telerama.lm.com	      DPMILOAD API

 3/92 Joseph Gil       yogi@cs.technion.ac.il	      HP 95LX

 3/92 Ralf Brown       ralf@telerama.lm.com	      386MAX 6.0 API

 3/92 Fyodor Evseev    Ted@ppicnit.perm.su	      AutoCAD Digitizer ADI

 3/92 Tim Farley       tim@magee.mhs.compuserve.com   Advanced Power Management

 4/92 Tamura Jones     2:512/36.7	      PGS1600.DEV

 4/92 Andrew Rossmann  andyross@infopls.chi.il.us     SMARTDRV v4.00, QEMM

 4/92 Tamura Jones     2:512/36.7	      METZTSR.COM

 4/92 Tamura Jones     2:512/36.7	      Vanderaart txtwin,DR MDOS

 4/92 Dan Bodoh	       danb@bunt.sps.mot.com	      DESQview/X .DVP file

 5/92 William Peavy    70042.2310@CompuServe.COM      Borland FP shortcuts

 5/92 Ralf Brown       ralf@telerama.lm.com	      FGDRIVER v1.10

 5/92 Tim Farley       tim@magee.mhs.compuserve.com   Vedit VSWAP, NG.EXE

 6/92 Dan Fandrich     shad04@ccu.umanitoba.ca	      BitFax scheduler

 6/92 Tamura Jones     2:512/36.7	      more New EXE, AD-DOS.COM

 6/92 Tim Farley       tim@magee.mhs.compuserve.com   LANtastic v4.1

 6/92 Francis Turner FTURNER@madge.MHS.CompuServe.COM AX (Japanese AT) calls

 6/92 John Fa'atuai    frotz@novell.com	      DR Multiuser DOS

 6/92 Andy Hakim       cosc16to@menudo.uh.edu	      Smooth Mouse Driver

 7/92 Michael A Shiels mshiels@masnet.uucp	      License Server API,misc

 7/92 Tim Farley       tim@magee.mhs.compuserve.com   Novell Netware shell

 7/92 Carlos M. de Sousa Antunes L31546@beta.ist.pt   MS Mouse driver

 7/92 Ralf Brown       ralf@telerama.lm.com	      DESQview/X socket API

 8/92 Jacob Rieper     73377.1220@compuserve.com      SETDRVER, more DR-DOS

 8/92 Richard A Plinston  Auckland, New Zealand	      Europ.DOS4.0,DR DOS Plus

 8/92 Richard A Plinston  Auckland, New Zealand	      Acorn BBC Master 512

 8/92 Serge Pachkovsky ps@comcen.nsk.su	      PC-MOS/386 v3.0

 8/92 Aki Korhonen     aki@holonet.net	      Seagate disk BIOS

 8/92 Chris Hall       CAH17@phx.cam.ac.uk	      misc

 8/92 Michael A Shiels mshiels@masnet.uucp	      MTEZ XpressFax

 8/92 Tamura Jones     2:512/36.7	      Control Hostess i/ISA

 8/92 Patrick Ibbetson ibbetson@nes.nersc.gov	      NEL Electronics BIOS

 9/92 Patrick Ibbetson ibbetson@nes.nersc.gov	      SCREENR, Cirrus chipsets

 9/92 Tamura Jones     2:512/36.7	      FlashTek X-32VM

 9/92 Ben Myers	       0003571400@mcimail.com	      more NCR 77C22 chip modes

 9/92 Dan Fandrich     shad04@ccu.umanitoba.ca	      more Future Domain SCSI

 9/92 Michael A Shiels mshiels@masnet.uucp	      PC/TCP syscall names

 9/92 A. Peter Blicher Oakland, CA	      Genoa Super EGA

 9/92 Tim Farley       tim@magee.mhs.compuserve.com   misc

 9/92 Riku Meskanen    riku@tuura.icl.fi	      ArtiCom

10/92 Jack Ridgway     1:3632/4.13	      VMiX API

10/92 Tim Farley       tim@magee.mhs.compuserve.com   misc

10/92 Alexi Lookin     alexi@riaph.irkutsk.su	      more NetWare, VIDRAM

10/92 Harry Sumar      ptsoft@glas.apc.org	      Linear Executable

10/92 Tim Farley       tim@magee.mhs.compuserve.com   XGA

11/92 Michael A Shiels mshiels@masnet.uucp	      Columbia Data Prod SDLP

12/92 Igor Sysoev      sysoev@gate.dialnet.msk.su     HIMEM.SYS v2.77

12/92 Aaron Emigh      aaron@iit.com	      After Dark API correctns

12/92 Tim Farley       tim@magee.mhs.compuserve.com   SilverNET,DECnet,NetWare4

12/92 Bent Lynggaard   lynggaard@risoe.dk	      misc video

12/92 Kyle Rogers      70650.3316@compuserve.com      DOS LAN Requester

12/92 Gary E. Miller   gem@rellim.com	      WD90C video chipset

 1/93 Frank Klemm      pfk@rz.uni-jena.de	      Diamond Speedstar 24X

 2/93 Geoff Chappell   cix.compulink.co.uk!geoffc     var. undoc DOS behavior

 2/93 Dr. David Bailey Salford, England	      DBOS API

 2/93 Tim Farley       tim@magee.mhs.compuserve.com   more Novell LSL API

 3/93 Rainer Schuetze  2:2402/330	      dLite API

 3/93 Michael A Shiels mshiels@masnet.uucp	      LAN Manager Enhanced DOS

 3/93 A Padgett Peterson padgett%tccslr.dnet@uvs1.orl.mmc.com  ROM debugger

 3/93 Ian Oliver       cross@cix.compulink.co.uk      SCSILink API

 3/93 Richard Talon    71005.1523@CompuServe.COM      XVIEW hypertext viewer

 3/93 Tamura Jones     2:512/36.7	      IBMSND driver

 3/93 Grant Echols     76247.2232@CompuServe.COM      undoc Novell NetWare

 3/93 George L. Fulk   fulkgl@vnet.IBM.COM	      OS/2 2.x VDMs, FAPI

 3/93 Andrew Schulman  76320.302@CompuServe.COM	      Novell DPMS

 3/93 Dan Fandrich     ubc-cs!merlin!fch!dan	      more Future Domain SCSI

 3/93 Konstantin Kisurin  kkk@toi.kiev.ua	      more 386MAX

 4/93 Arne Schaepers	      DR-DOS details

 4/93 Geoff Chappell   cix.compulink.co.uk!geoffc     DOS4 ExtAttrib support

 4/93 Morten Welinder  terra@diku.dk	      miscellaneous

 4/93 Tim Farley       tim@magee.mhs.compuserve.com   PS/2 INT 15,INT 16

 4/93 Xavier Caballe   xcaballe@servicom.es	      TFPCX driver interface

 4/93 Michael A Shiels mshiels@masnet.uucp	      more OS/2 Family API

 4/93 Chris Dunford    76703.2002@compuserve.com      Cove Software programs

 5/93 Dmitry Stefankov wizard@npi.msu.su	      more DOS 3 SDA fields

 5/93 Stephan Wolf     swolf@skd.de	      SK-UPPS DLI API

 5/93 Dmitry Stefankov wizard@npi.msu.su	      Soft-ICE v2.5x

 5/93 Mikael Rydberg   Sweden	      Cirrus/UM587/etc vidmodes

 5/93 Michael A Shiels mshiels@masnet.uucp	      more BAPI,Frieze,ANSIPLUS

 5/93 Steve Bromwich   cs9h1ssb@pyramid.swansea.ac.uk  MediaVision MVSOUND.SYS

 6/93 Roeland Jansen   2:512/153.1	      more PC-MOS/386 API

 6/93 Ralf Brown       ralf@telerama.lm.com	      FAST! v5 API

 6/93 Ralf Brown       ralf@telerama.lm.com	      CEMM v5.10,v5.11

 6/93 Jens Vollmar     Erlangen, Germany	      Trident/C&T video, misc

 6/93 Victor Forsyuk   forth@samsoby.cs.kiev.ua	      MX5 Extended FOSSIL

 6/93 Michael A Shiels mshiels@masnet.uucp	      Blank-It, TSRCOMM

 6/93 Michael A Shiels mshiels@masnet.uucp	      VxD, Al William's WINX

 6/93 Mark Aitchison   PHYS169@csc.canterbury.ac.nz   ScanBoot, partition types

 6/93 Warner Young     Net-Source, Santa Clara, CA    SilverNET, misc DOS int.

 7/93 Wim Osterholt    2:512/56	      PORTS.LST

 7/93 Aki Korhonen     aki@holonet.net	      Cirrus Logic BIOS

 7/93 Alexi Lookin     alexi@riaph.irkutsk.su	      Realtek RTVGA

 7/93 Alexi Lookin     alexi@riaph.irkutsk.su	      Phar Lap .EXP headers

 7/93 Jean-Francois Larvoire larvoire@hp6300.desk.hp.com  HP HIL Vectra BIOS

 7/93 Ralf Brown       ralf@telerama.lm.com	      386MAX v7.00/QEMM v7.01

 7/93 Joe Souza	       Webcorp, Sausalito, CA	      WEB API

 7/93 Michael Hung   mhkhung@electrical.watstar.uwaterloo.edu  PharLap 386/DOSX

 8/93 John Howells     100031.353@compuserve.com      EMS,XMS,VCPI,DPMI bugs

 8/93 Tim Farley       tim@magee.mhs.compuserve.com   PCMCIA Socket Services

 8/93 Dan Bodoh	       danb@bunt.sps.mot.com	      DESQview internal data

 9/93 Gary E. Miller   gem@rellim.com	      Diamond Stealth 24X

 9/93 Frank Vorstenbosch  prompt@hacktic.nl	      more Kingswood API, misc

 9/93 Phil Rea	       PhilRea@sound.demon.co.uk      TopWare Network OS

 9/93 Andreas Westfeld westfeld@freia.inf.tu-dresden.de Olivetti Quaderno

 9/93 Alexi Lookin     alexi@riaph.irkutsk.su	      Avance Logic, C&T video

 9/93 Inbar Raz	       2:403:302.42	      Juko UNIQUE UX, misc

 9/93 Gary E. Miller   gem@rellim.com	      Phar Lap 386|DOS-Ext.

10/93 Ralf Brown       ralf@telerama.lm.com	      Compaq ROMs

10/93 Paolo Borsalino  100042.1206@CompuServe.COM     VSAFE

10/93 Marco Savegnago  MC2365@mclink.it	      MBBIOS updates, G8BPQ

11/93 Wim Osterholt    2:512/56	      Cirrus Logic BIOS 3.02

11/93 Dmitry S. Kohmanyuk  dk@farm.cs.kiev.ua	      CS_TSR specification

12/93 Alex Novgorodcev san@riaph.irkutsk.su	      AutoCAD Dev Interface

12/93 Christian Kaiser	100065.2574@compuserve.com    Windows debugging kernel

12/93 Colin Buckley    colin.buckley@CANREM.COM	      UNCHAIN

12/93 Jeffrey L. Hayes tvdog@delphi.com	      Tandy BIOS calls

12/93 Finn Thoegersen  via jesperf@daimi.aau.dk	      VESA XGA BIOS Extensions

 1/94 David A. Mair    100137.264@COMPUSERVE.COM      NASI INT 6B calls

 1/94 Bill Hawkins     73650.167@compuserve.com	      Adv. Par. Port DAISY.SYS

 1/94 Inbar Raz	       2:403:302.42	      VGARAM,HelpTSR,Lightning

 1/94 James E Beersman jeb962t@nic.smsu.edu	      HP and Compaq info

 2/94 Peter van den Boogert  P.C.vdnBoogert@kub.nl    ZFAX v2.x, v3.01

 2/94 Jesper Rene Frandsen jesperf@daimi.aau.dk	      VESA XGA BIOS,misc video

 2/94 Jesper Rene Frandsen jesperf@daimi.aau.dk	      Husky Hunter 16 BIOS

 2/94 Ciriaco Garcia de Celis  ciri@luna.gui.uva.es   CiriSoft, 2M

 2/94 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      Norton Utils v7, misc

 2/94 Menno Pieters    aj132@freenet.hsc.colorado.edu DimVGA

 3/94 Markus Lomb      Markus_Lomb@confusion.fido.de  bitFOSS,bitFOSSI,WDTSR

 3/94 taQ Okazaki      CXB00750@niftyserve.or.jp      Windows Global EMM Import

 3/94 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      PCMCIA, Award PCDISK.EXE

 3/94 Clinton Warren   CIW@MACOLA.usa.com	      Novell XQL

 3/94 Reidar Gresseth  gresseth@unixg.ubc.ca	      Explosiv API

 4/94 Uwe Zimmermann   u.zimmermann@genie.geis.com    Adv.Power Management v1.1

 4/94 Thomas Brugger   fd1@aixfile1.urz.uni-heidelberg.de  NetWare VLMs & more

 5/94 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      Toshiba laptops,misc

 5/94 Jan Beulich      Jan_Beulich@Novell.COM	      DPMS v1.0

 5/94 Ralf Brown       ralf@telerama.lm.com	      Novell DOS 7 EMM386.EXE

 5/94 Frank Kintrup    nico@uni-paderborn.de	      FK TSR Utils, misc OS/2

 5/94 Christian Franke franke@I1.Informatik.RWTH-Aachen.DE  redirector, Win3

 5/94 Peter Claus Gutmann  pgut01@cs.aukuni.ac.nz     SFS (Secure FileSystem)

 5/94 Wilbert van Leijen wilbert@dragons.nest.nl      ODIHLP, misc

 6/94 Wolfgang Spraul  100024.1540@CompuServe.COM     Seagate ST01/ST02 BIOS

 6/94 Wolfgang Spraul  100024.1540@CompuServe.COM     SyQuest BIOS

 7/94	!!!	      Compaq QVision

 7/94 Dmitry S. Kohmanyuk  dk@farm.cs.kiev.ua	      JAM compressor

 7/94 Thomas Brugger   fd1@aixterm1.urz.uni-heidelberg.de  more miscellany

 7/94 Mark T. Vitt     70053.2236@compuserve.com      SDA/DTA interaction, misc

 8/94 Jean F. Larvoire HP6300_Q2@hpgnd.grenoble.hp.com	HP Ext. BIOS, misc

 8/94 Matthias Paul    MPAUL@ibh.rwth-aachen.de	      K3PLUS API

 8/94 George A. Reznik gar@spcs.ms.kiev.ua	      LZSAPI (Stacker 4)

 8/94 Kristofer Sweger 72713.1241@compuserve.com      ANSIPLUS

 9/94 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      miscellaneous

 9/94 Mojmir Strhan    strhan@simultan.ch	      WPS and REBOOT VxDs

 9/94 Alex V. Korsunov avk@netserv2.free.net	      CPU stepping codes

 9/94 Tim Farley       TIM@magee.mhs.compuserve.com   "PS/1" harddisk/ATA info

 9/94 Tim Farley       TIM@magee.mhs.compuserve.com   Intel SL Enh. APM BIOS

 9/94 Mojmir Strhan    strhan@simultan.ch	      more VxDs IDs, misc

 9/94 George L. Fulk   fulkgl@VNET.IBM.COM	      PSP fields, "DOSOpen2"

 9/94 Emily Markowicz  70252.2621@compuserve.com      many typo corrections

10/94 Masashi Fukuda   TAB01645@niftyserve.or.jp      C&T PC/CHIP SuperState

10/94 M.w. Pieters     aj132@Freenet.HSC.Colorado.EDU DimVGA 3.4, ObjectKernel

10/94 Delman Lee       delman@mipg.upenn.edu	      Phoenix Enh. Disk Drive

10/94 Gary E. Miller   gem@rellim.com	      VESA VBE/Power Management

11/94 Andreas Groegel  ag@studbox.uni-stuttgart.de    VESA Audio Interface

11/94 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      HP 100LX/200LX

11/94 Mojmir Strhan    strhan@simultan.ch	      MSG.COM, PC Mag WINGO

11/94 Tim Farley       TIM@magee.mhs.compuserve.com   Award CMOS, PCMCIA ExCA

12/94 Rob Misiak       rob0006@ibm.net	      miscellaneous

12/94 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      more HP 100LX/200LX, misc

12/94 Michael A. Shiels masnet!mshiels@uunet.uu.net   EDOS VxD API

12/94 Matthias Paul    MPAUL@ibh.rwth-aachen.de       HP Vectra EX-BIOS API

12/94 Michael A. Shiels masnet!mshiels@uunet.uu.net   DOSISODE

 1/95 Jack Ridgway     1:3632/4	      Back&Forth Professional

 1/95 Matthias Paul    MPAUL@ibh.rwth-aachen.de       miscellaneous

 1/95 Tim Farley       TIM@magee.mhs.compuserve.com   NetWare Event Serv. Layer

 1/95 Stanley Appel    appel@stack.urc.tue.nl	      UltraMid, MegaEm

 1/95 LARVOIRE_JEAN-FRANCOIS/HP6300_Q2@hpgnd.grenoble.hp.com  Vectra,OmniShare

 2/95 Tim Farley       TIM@magee.mhs.compuserve.com   NetWare NETWARN

 2/95 Sven B. Schreiber  sbs@psbs.franken.de	      much more Banyan VINES

 2/95 Peter Claus Gutmann pgut01@cs.aukuni.ac.nz      IBM/MS INT 13 Extensions

 2/95 Fernando Papa    fido@fing.edu.uy	      QRIP, MultiLink Advanced

 2/95 Inbar Raz	       2:403:302.42	      GRTMOUSE, miscellaneous

 3/95 Thomas Brugger   fd1@aixterm1.urz.uni-heidelberg.de  more miscellany

 3/95 Matthias Paul    MPAUL@ibh.rwth-aachen.de       miscellaneous

 3/95 John	       tenthumbs@BIX.com	      MSWin PageFile/Reboot

 3/95 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      Stacker 4, Stac Anywhere

 3/95 Norman L. DeForest af380@cfn.cs.dal.ca	      TI Professional PC

 3/95 Norman L. DeForest af380@cfn.cs.dal.ca	      miscellaneous

 3/95 Gerard Mannig    mannig@world-net.sct.fr	      AMI BIOS-FLASH interface

 4/95 Ralf Brown       ralf@telerama.lm.com	      AMI BIOS INT 15 extensns

 4/95 Tim Farley       TIM@magee.mhs.compuserve.com   PCMCIA Socket Serv. 2.1

 4/95 Matthias Paul    MPAUL@ibh.rwth-aachen.de       miscellaneous

 4/95 SkullC0DEr       SkullC0DEr 2:4631/7	      PUPClip

 5/95 Peter Charles Tonoli 071836@edna.cc.swin.edu.au CauseWay

 5/95 Stanley Appel    appel@stack.urc.tue.nl	      DOS32, virus inst.checks

 5/95 Tim Farley       TIM@magee.mhs.compuserve.com   Intel SMBus

 5/95 Stanley Appel    appel@stack.urc.tue.nl	      DIGPAK, MIDPAK

 5/95 Wolfgang Lierz   Wolfgang.Lierz@gmd.de	      C&T chips, LapLink RemAcc

 6/95 Jun-ichiro ITOH  itojun@csl.sony.co.jp	      HP 100LX/200LX

 6/95 Andreas Groegel groegeas@cip10.mathematik.uni-stuttgart.de  Windows95

 6/95 Tim Farley       TIM@magee.mhs.compuserve.com   XMZ

 6/95 James Roberts-Thomson COM3ROBERJD@ntu.ac.uk     LAN Manager wksta_info

 6/95 Peter Charles Tonoli 071836@edna.cc.swin.edu.au Linux DOSEMU

 7/95 Nico Looije      nico@djo.wtm.tudelft.nl	      NetWare printing, VLMs

 7/95 Matthias Paul    MPAUL@ibh.rwth-aachen.de       HugeRealMode server

 7/95 Steve Ryckman    76175.3515@compuserve.com      GO! directory locator

 7/95 Ciriaco G.de Celis  ciri@luna.gui.uva.es	      XDF

Also contributing:

 Dan Crocker <enchant@oliveb.ATC.OLIVETTI.COM>, George Smith <gbs@nsc.nsc.com>,

 Shalom Krischer <actnyc!srk@uunet.UU.NET>, Greg Pasquariello <moss!picuxa!gp>,

 Rich Goldschmidt <rlgvax!golds>, Marty Leisner <leisner@sdsp.mc.xerox.com>,

 Dave Guggisberg <daveg@cv.hp.com>,Jonathan Story <jonathan@jspc.wimsey.bc.ca>,

 Thomas Hundt <hundt@flash.bellcore.com>, Brad Templeton <brad@looking.on.ca>,

 John Werner <aptr@tut.cc.rochester.edu>, Pete Fales <att!ttrde!pfales>,

 David Herron <david@gonzo.twg.com>, Otto J. Makela <otto@jyu.fi>,

 Risto Lankinen via Markku Savela <msa@clinet.fi>, Darryl Gregorash 1:140/86,

 Skule Johansen <skule.johansen@avh.unit.no>, Bob Fehrenbach,

 David Dyck <dcd@tc.fluke.COM>, Sylvan Butler <sbutler@hpdmd48.hp.com>,

 Mark Davis <mad@merit.edu>, Sergio Fogel <fogel@haifasc3.vnet.ibm.com>,

 James P. Kiely <kiely%lownlab@harvard.harvard.edu>, Kevin142@micron.net,

 W.F. Schroeder <schroeder.pad@sni-usa.com>, <zlatuska@UDEL.EDU>,

 Russ Nelson <nelson@sun.soe.clarkson.edu>,  Michael Ho <ho@fergvax.unl.edu>,

 Ralph Heredia <att!attmail!rheredia>, Nelluri Reddy <reddy@uc.msc.umn.edu>,

 Victor Poon <vipoon@sbcs.sunysb.edu>, Andrea Omodeo (Cilavegna, Italy),

 Richard D. Morris <gu.morris@science.utah.edu>, RS Tse 3:700/1,

 Mark Scase <coa44@keele.ac.uk>, Erik Liljencrantz <d88-eli@nada.kth.se>,

 Mark Seiffert <marks%%mgse@rex.cs.tulane.edu>, Lewis Paper (Minnesota),

 Marco Lumachi <RARCHI06@IMIPOLI.BITNET>, Michael Dickson <mcd@ccsitn.att.com>,

 Andrew Torda <torda@igc.ethz.ch>, Madis Kaal 2:490/30 <mast@ce.ttu.ew.su>,

 Paul Williamson <pwilliamson@drzeus.qualcomm.com>, Jan Ceuleers 2:295/27,

 James Birdsall <jwbirdsa@picarefy.picarefy.com>, Guenther Thiele (Austria),

 Joe Morris <jcmorris@MWUNIX.MITRE.ORG>, Jim Peterson <jpeterso@vtssi.vt.edu>,

 Edwin Floyd <76067.747@CompuServe.COM>, James West 1:140/26, David G. Thomas,

 Simon Phipps <sphipps@cix.compulink.co.uk>, ecleton@bilftp.bouw.tno.nl,

 Glen Kriekenbeck <glenk@East.Sun.COM>, Dave Andrews <bilver!dandrews@aii.com>,

 John P. Vias <72260.1601@CompuServe.COM>, Brian Leeming (Surrey, England),

 Naota Kimura <abcscnuk@csuna.csun.edu>,George W. Pogue <gwp@trsvax.tandy.com>,

 Michael L. Kaufman <kaufman@eecs.nwu.edu>, John Jurewicz 76004.2311,

 Michael D. Lawler <mdlawler@bsu-cs.bsu.edu>, Norbert Juffa (Karlsruhe, FRG),

 Chris Blum <76625.1041@compuserve.com>,David Fink <73700.3076@compuserve.com>,

 Klaus Hartnegg <hartnegg@ruf.uni-freiburg.de>, Thomas Lukka 2:227/16,

 Norbert Sommer <100016.1241@compuserve.com>, John.Brennen@VI.RI.CMU.EDU,

 Paul van Keep <75170.1045@compuserve.COM>,John B. Thiel <jbthiel@cse.ogi.edu>,

 Ken Medellin via <76702,1071@compuserve.com>, Bob Green <bob@inmos.co.uk>,

 Leonard Erickson <70465.203@CompuServe.COM>, Robert Chafer (Salford, England),

 Carl Schelin <tcs@mailer.jhuapl.edu>,Dave Kirsch <Dave_Kirsch@mindlink.bc.ca>,

 Michael S. Stratoti <tmstrato@king.mcs.drexel.edu>, Marc Scholtis 2:281/701.2,

 Sean Lin (Midland, MI), John Villalovos <villalj@instruction.CS.ORST.EDU>,

 Claude Marche <marche@lri.lri.fr>, Carlos Antunes <cma@eniac.inesc.pt>,

 Drake Koefoed (Eugene, OR), Rehn-Lieh Lin <rllin@paradise.ccl.itri.org.tw>,

 Mark T Garlanger <garlangr@ecn.purdue.edu>, J. B. Gill <JBG@arlan.byu.edu>,

 Frank Behrens (Dresden, Germany), Bruce Gingery 1:310/5.1, John Navas,

 Johan Zwiekhorst 2:292/100, Klaus Fischer 2:243/64, Steve Grant (New Jersey),

 Jeff Pipkins <pipkins@cpqhou.se.hou.compaq.com>, Nemrod Kedem 2:403/138,

 Brett Warthen <73270.405@compuserve.com>, Thomas Dwyer <tomiii@mtu.edu>,

 Brian.McGuinness@nirvonics.com, Mitch Davis 3:634/384.6, Steve Halko 1:365/12,

 noesis@ucscb.UCSC.EDU, Timo Salmi <ts@uwasa.fi>, Jack Alvrus (Florida),

 Eberhard Mattes <mattes@azu.informatik.uni-stuttgart.de>, Pete Peterson,

 Alex Fedorov <inex@telebox.tele.fi>, Frank-Christian Kruegel 2:240/300.44,

 Heath Ian Hunnicutt <heathh@cco.caltech.edu>, Stefan Gustafsson <sg@diab.se>,

 Janos Haide <JHAIDE.NOVELL@sjfsmtp.novell.com>, Stan Brown <brown@ncoast.org>,

 Serge Krupa <krupa@eig.unige.ch>, Tom Rawson <75300.210@compuserve.com>,

 Edwin Cleton 2:512/1007.2, Martin Wilde 2:247/352.2, Ed Palmer 1:140/1,

 Carlos Rioja <CarlosRioja@cpd.uva.es>,Torbj|rn Lindgren <tl@etek.chalmers.se>,

 Jens Bleuel <100064.1757@CompuServe.COM>, Gianni Albóre (Taranto, Italy),

 Morten Welinder <terra@APL.FOX.CS.CMU.EDU>, <Tim_-_Otholt@cup.portal.com>,

 Serge Pachkovsky <ps@comcen.nsk.su>, Dmitry Ablov <abl@ablov.comrel.msk.su>,

 Nigel Bree <nigel@mwc.com>, Bob Aitchison via 76244.726@compuserve.com,

 Francis Turner <FTURNER@madge.MHS.CompuServe.COM>, kevinc@kpc.com,

 Vsevolod M. Shabad 2:5020/75.13,Peter van den Boogert <P.C.vdnBoogert@kub.nl>,

 Gordon Edwards <gedwards@ncratl.atlantaga.ncr.com>, John_Spinks@novell.com,

 Jose R. Rodriguez Santia <100012.364@CompuServe.COM>,KUCHTA@dcse.fee.vutbr.cs,

 Michael Bootz <bootz@physik.uni-kl.de>,Sergey Danilov <victor@rodnik.msk.su>,

 Harald Langhammer <100114.114@compuserve.com>, Bert Baker (Texas),

 Gino Lucrezi <lucrezi@dsiaq1.ing.univaq.it>, Yousuf Khan 1:163/215.6,

 James Berry <jfb292@ecs.southampton.ac.uk>, Everett C. Johnson 70631,16,

 Jerzy Tarasiuk <JT@zfja-gate.fuw.edu.pl>, Roman Rutman <jbari@CCSG.TAU.AC.IL>,

 Lutz Schroer <hmls@IDEFIX.RZ.TU-CLAUSTHAL.DE>, Per-Eric Larsson 2:203/410.15,

 Otto-Michael Braun <omb@ahobln.br.schule.de>, Martin Winkler 2:2402/330.6,

 Scott C. Pedigo <100020.723@CompuServe.COM>, Ed Mulroy 70007.4630,

 Frank van der Linden <vdlinden@fwi.uva.nl>, Ben Castricum <benc@htsa.aha.nl>,

 Andrei Tsyganenko <ANDY@GODZILLA.UMD.EDU>, Jeremy.Laidman@cowan.EDU.AU,

 Brian Long <BLONG@boruk.mhs.compuserve.com>, John_Murphy@perftech.com,

 Peter Singer <100024.1603@CompuServe.COM>, Martin Shipley <martin@buss.co.uk>,

 Jiri Kuchta <kuchta@dcse.fee.vutbr.cs>, Pavel Shtemenko <pasha@opi.odessa.ua>,

 Paul Ratcliffe <70630.647@compuserve.com>, Ivan Martinez 4:801/6,

 David Woolley <100121.53@compuserve.com>,Paul Vojta <vojta@math.berkeley.edu>,

 Ronald Lokker <rlokker@fys.ruu.nl>, Wolfram Joost <WOJO@TEAMWORK.SH.SUB.ORG>,

 Nico E. de Vries <nevries@aip.nl>, Riku Saikkonen <riku.saikkonen@compart.fi>,

 David J. Craig <73313.1610@compuserve.com>, Peter <d91-pbr@nada.kth.se>,

 Igor Khasilev <igor@petre.odessa.ua>, Anthony Naggs <amn@ubik.demon.co.uk>,

 Pybe Faber <postdo@duttncb.tn.tudeflt.nl> (shared acct), cmuelle@eos.ncsu.edu,

 Zhaoyuan Zhang (via Youjun Luo <luo@informatik.uni-wuerzburg.d400.de>),

 Holger Genz (via volker@bsd-home.iam.uni-bonn.de), Thomas Valjak 2:245/1803,

 Wonyong Koh <f7wyk@chem.krict.re.kr>, Igor V. Krasikov <kiv@kiv.kiev.ua>,

 Wolfgang Lorenz <100112.220@CompuServe.COM>, michael_rothman@VNET.IBM.COM,

 Yinrong Huang <HUANGY@SLUVCA.SLU.EDU>, David.Bourgin@babbage.imag.fr,

 Christoph Fischer <Fisher@rz.uni-karlsruhe.de>, Peter_Schuette@ks.fido.de,

 David Perry <davep@demon.csd.unsw.EDU.AU>,Yury Semenov <yury@petre.odessa.ua>,

 Bill Potvin II <70540.120@compuserve.com>, Jordi Mas <jordi@qdeck.com>,

 Chad Robinson <crobinso@vaxc.stevens-tech.edu>, Tom Yohe <stampede@oar.net>,

 <Alexey_Kulentsov@p6.f216.n5020.z2.gate.phantom.msk.su>, jaust@mindscape.com,

 Martin Trnovec <umertrno@savba.savba.sk>, Alexander Lepetyuk 2:463/11.44,

 Aaron Martin <71726.2543@compuserve.com>, Tony Hundt <THUNDT@bb-elec.com>,

 Michael Holin <holin@am.heim1.tu-clausthal.de>, Wade Bowmer 3:712/505.0,

 Andreas Kinzler <akinzler@com.rhein-main.de>, Marcus Better 2:201/2120.1,

 Patrick Swayne <PATS@internet.megatrends.com>, Jaap Keuter 2:283/512.0,

 Pancrazio DE MAURO via fausto baldi <balf@dsi.unimi.it>,

 Markku Leinio <matale@utu.fi>, David Markun 76320.302@compuserve.com,

 Alexander A Maltsev <amp@cairccom.msk.su>, Michal Szokolo <msz@plearn.bitnet>,

 Alexander I. Yanovsky <ayan@xray.ineos.ac.ru>, John Sasse <tenthumbs@BIX.com>,

 Carlos Fernandez Sanz <100410.3445@compuserve.com>, Dr. David Leov (Israel),

 James Roberts-Thomson <COM3ROBERJD@NOTTINGHAM-TRENT.AC.UK>,

 Derek Kwan <dkwan@zeus.UWaterloo.ca>, Pim Schaeffer <pschaef@knoware.nl>,

 Kris Heidenstrom <Kris.Heidenstrom@actrix.gen.nz>, bill.dickson@dscmail.com,

 Dave Stephenson <bb683@freenet.toronto.on.ca>, Fernando ? <fido@fing.edu.uy>,

 Michael Heier <100427.2105@compuserve.com>, Robert Raymond CIS 74601.354,

 Joe C. <u8123027@cc.nctu.edu.tw>, Dan Miller <derelict@netcom.com>,

 Niels Kristian Bech Jensen <nkbj@kemi.aau.dk>,Alex Zinin <zinin@icl.kazan.su>,

 Ralf D. Kloth <kloth@sunwan.mpik-tueb.mpg.de>, eckertw@worms-emh4.army.mil,

 Giorgio Caimi <caimi@zeus.csr.unibo.it>, Bob Longnecker <blong@mav.com>,

 Jaroslaw Rafa <sfrafa@lfs.cyf-kr.edu.pl>, Mojmir Strhan <strhan@simultan.ch>,

 Axel C. Frinke <frinke@athene.informatik.uni-bonn.de>, avp@iron.misa.ac.ru,

 Julian Nicholls <julian@aladdin.co.uk>, ricardo.ferreira@mpcbbs.com.br,

 Vincent Lyonel <vincentl@cc.ec-lyon.fr>, George Lefterov <george@virbus.bg>,

 Pascal Moulart <100572.1021@compuserve.com>, John Murphy <murf@perftech.com>,

 Giacomo Amabile Catenazzi <gcatenaz@g26.ethz.ch>, Svante Frey <sfrey@kuai.se>,

 Nils <xorax@Informatik.Uni-Bremen.DE>, Rod Mathews <rodmathews@earthlink.net>,

 Pino Navato <morrone@ds.cised.unina.it>, <Gabor.Somlai@ohsh.u-szeged.hu>,

 Morten Welinder <terra@APL.FOX.CS.CMU.EDU>,

 Ervin Peretz <peretz@eagle.natinst.com>,

--------!---BIBLIOGRAPHY---------------------

Information on Tseng/Ahead/Paradise EGA video modes from a list posted by

Dan Kegel 3/87.

Information on the INT 10h functions supported by the EGA BIOS was derived

from the article "Graphic Enhancement" found in the April 1985 _PC Tech

Journal_, pages 58ff., and is marked with the string (EGA). jrh.

Information on functions unique to the Portable PC and the Convertible was

derived from a similar list compiled by David E. Powell, and added by

Ralf Brown 11/14/87.

Information on LIM EMS 3.2 functions was derived from _Advanced_MSDOS_, by

Ray Duncan. Added by Ralf Brown 11/19/87.

Information on LIM EMS 4.0 functions was derived from the transcription of

the specification by Dick Flanagan.  Added by Ralf Brown, 11/20/87.

Some of the information on MCGA/VGA BIOS calls was derived from _Byte_,

Volume 12 Number 12.

Various and sundry info on which machines support which calls was derived from

the BIOS comparison in _Byte_, Volume 12 Number 12 and added by Ralf Brown,

1/4/88.

COMPAQ DOS 3.31 INT 25/26 from a posting by John Lefor, 1/25/88.

TopView INT 15/AH=12h info from macro definitions by Daniel T. Travison Jr.

Added 3/4/88.  Some additional TopView INT 15 info gleaned from "glue" routines

by John Navas.

Quarterdeck's flyer on its overpriced API specs and tools provided sufficient

clues as to functionality to allow figuring out a large number of DESQview

INT 15h calls.

MS Mouse driver calls derived from PC Magazine, Vol 6 #13.  Added 3/29/88.

Non-video PS/2 BIOS calls derived from _IBM_ROM_BIOS_ by Ray Duncan.

Added by Ralf Brown, 7/6/88.

EEMS function calls derived from PC Tech Journal, May 1987.  Added by Ralf

Brown, 7/11/88.

The list of functions used by Novell NetWare was taken from Novell's

"NetWare Function Call Reference".

PC Mouse information derived from the "PC Mouse Reference Manual version 4.00"

10-Net INT 6Fh information derived from "10-Net Reference Manual version 2.0"

APPC/PC INT 68h information derived from "Advanced Program-to-Program

Communication for the IBM Personal Computer, Programming Guide", second

edition, Dec 1986.

CD-ROM function call information derived from "Microsoft MS-DOS CD-ROM

Extensions Function Requests", dated May 28, 1988.  Added by Ralf Brown,

9/19/88.

Novell NetWare function names from a 9/23/88 post by Marc Guyott

<mguyott@mirror.TMC.COM>.  Added by Ralf Brown, 9/30/88.

Miscellaneous data structures contributed by Helmut Waelder derived from

descriptions in _MS-DOS_Encyclopedia_.

Additional 10-Net INT 6F info from 10-Net version 3.3.10.

Additional Novell NetWare info from "Advanced NetWare 2.0 Reference".

Three miscellaneous calls from an info package by Dave Williams.  I do wish

he'd given this list more credit than

   "various text files downloaded from BBS systems - INTERRUP.ARC, BIOSDOS.ZOO,

   DOSINFO.ARC, DOSERROR.DOC, DOSTIPS.TXT, etc."

considering that most of his interrupt listing is derived from this one (a

majority of that with only formatting changes), AND he's asking a $15 shareware

registration [newer versions do give better credit].

Compaq speed setting calls derived from the Compaq DeskPro 386 Technical

Reference Guide.

TesSeRact RAM-resident API calls derived from the documentation to the

TesSeRact library v1.0, available on BBSs as TESS_10.ARC.  Added by Ralf Brown,

11/29/88.

Various extended VGA video modes from PC Tech Journal, Jan 1989.  Added by Ralf

Brown, 1/6/89.

HLLAPI functions derived from PC Tech Journal, Jan 1989.  Added by Ralf Brown,

1/7/89.

Virtual Control Program Interface functions derived from "Virtual Control

Program Interface, Revision 1.0, December 1987", copyright Phar Lap Software

and Quarterdeck Office Systems.	 Added by Ralf Brown, 2/21/89.	Available for

free by writing to Bob Moote, VCPI Coordinator, Phar Lap Software, Inc.,

60 Aberdeen Ave, Cambridge, MA 02138.

DOS 4.0 calls submitted by Helmut Waelder are largely derived from _Advanced_

_MSDOS_Programming_, by Ray Duncan, Second Edition.

pcANYWHERE API functions derived from the pcANYWHERE v2.10 User's Guide. 4/7/89

Communicating Applications Specification API derived from "DCA/Intel

Communicating Applications Specification, Version 1.0A", Sep 1988, copyright

Digital Communications Associates, Inc and Intel Corp.	Added by Ralf Brown,

4/18/89.  Available on Intel's BBS at 503-645-6275.

Image Processing Interface API derived from "Intel Image Processing Interface

Specification, Version 1.0", copyright 1989 Intel Corp.	 Added by Ralf Brown,

4/19/89.  Available on Intel's BBS at 503-645-6275.

More TesSeRact RAM-resident API calls derived from the documentation to the

TesSeRact library v1.1.	 Added by Ralf Brown, 4/30/89.

CD-ROM 2.10 function calls derived from "Microsoft MS-DOS CD-ROM Extensions

Function Requests Specification, 29 March 1989".  Added by Ralf Brown, 6/2/89.

Video7 VGA extended INT 10 calls derived from Video Seven VGA Technical

Reference Manual, dated 6/30/88.

Additional video modes gleaned from configuration file for FRACTINT v8.0.

Added by Ralf Brown, 6/26/89.

A variety of notes inspired by the 12/16/88 version of the MSDOS reference

by Dave Williams.  Added 7/30/89.

Additional video modes gleaned from configuration file for VPIC v2.0.  Added by

Ralf Brown, 9/2/89.

Btrieve API derived from the Btrieve Reference Manual, Rev. 2.0.  Added 9/7/89.

The Hercules GraphX manual, edition 2.1. Aug 1986, was used to fill in gaps

in coverage.  Info added 9/7/89.

Banyan VINES info summarized from _VINES_Programmer's_Interface_(DOS)_, June88

revision, provided by Barry Burke <Barry=Burke%3PM%Banyan@thing.banyan.com>.

Added by Ralf Brown, 11/89.

ZIPKEY programmatic interface extracted from ZIPKEY documentation.  Added by

Ralf Brown, 12/15/89.

File sharing behavior from July 1987 PC Tech Journal.  Added by Ralf Brown,

12/21/89.

Inset API derived from "Inset Extended Specification" 11/23/88 by Inset Systems

Added 1/4/90.

EMS4 hardware configuration info data format cribbed from

"MS-DOS Extensions Quick Reference" by Ray Duncan.  Added 1/4/90.

PC-IPC API from PC-IPC documentation.  Added by Ralf Brown, 1/5/90.

Imtec and Genoa 6400 video modes from VPIC v2.3 config files.  Added by Ralf

Brown, 1/12/90.

LANtastic API info derived from "LANtastic (tm) Network Operating System

Technical Reference Manual", provided by Edwin Floyd <76067.747@CompuServe.COM>

Added by Ralf Brown, 1/90.

Phar Lap 386/DOS-extender API extracted from Phar Lap's manual.	 Added 1/90.

IBM 3270 Workstation Program API derived from "IBM 3270 Workstation Program

Version 1.10, Programming Guide", dated December 1987.	Added 2/90.

VESA SuperVGA BIOS extensions derived from Dr. Dobb's Journal, April 1990.

Added by Ralf Brown, 3/25/90.

Additional undocumented DOS 4 info gleaned from _Developing_Applications_Using_

_DOS_, by Christopher, Feigenbaum, and Saliga.	Added by Ralf Brown, 3/29/90

and 3/31/90.

TAME v2.30 data structure provided by David G. Thomas.	Added 5/26/90.

OS/386 API call names extracted from _Extending_DOS_ by Ray Duncan et al.

Added by Ralf Brown, 5/27/90.

Network Driver Interface Specification 2.0.1 calls extracted from the May 18,

1990 draft of the spec.	 Added by Ralf Brown, 6/7/90.

Additional Phar Lap 386/DOS-Extender calls extracted from _Extending_DOS_.

Added by Ralf Brown, 6/8/90.

Even more video modes derived from VPIC 2.8 configuration files.  Added by

Ralf Brown, 6/8/90.

DOS Protected Mode Interface version 0.9 API from the May 15,1990 version of

the specification.  Intel Corp. order number 240763-001.  Added by Ralf Brown,

July 13-14, 1990.

MSWindows INT 2F/AH=16h info gleaned from Microsoft Windows 3.0 Device Driver

Kit and the March 1990 issue of Computer Language.  Added 7/17/90.

Tseng ET4000 chipset mode info from _ET4000_Graphics_Controller_Data_Book_ by

Tseng Labs, Inc., Newtown, PA (215)968-0502.  Added 7/25/90.

Additional Packet Driver API calls extracted from version 1.09 of the "PC/TCP

Packet Driver Specification" Sept 14, 1989, by FTP Software, Inc.,

26 Princess St, Wakefield, MA 01880-3004.  Added by Ralf Brown, 8/29/90.

Additional Netware 3.01 shell calls from "Professional Development Series

Bullets" Volume 2, Number 5 (June 1990).  Added 9/90.

Video FOSSIL INT 14 API extracted from Fidonet document FSC-0021 version 1.00

by Rick Moore, dated May 23, 1988.  Added by Ralf Brown, 9/12/90.

Additional DESQview API info (mostly for v2.2+ calls) extracted from

_DESQview_API_Reference_, provided by Quarterdeck Office Systems,150 Pico Blvd,

Santa Monica, CA 90405.	 Added by Ralf Brown, 9/90.

LANtastic v3.0 calls derived from the online "LANtastic (tm) Network Operating

System Technical Reference Manual", file date 6/13/90.	Added by Ralf Brown,

10/6/90.

Additional DECnet DOS INT 69/INT 6A info derived from the "DECnet DOS

Programmer's Reference Manual" (AA-EB46C-TV).  Added 10/13/90.

Carbon Copy Plus API derived from the Carbon Copy Plus user's manual.  Added

11/2/90.

CMC International SCSI driver TARGA.DEV API derived from its source code.

Added 11/2/90.

Everex Viewpoint VGA calls derived from Everex Viewpoint Owner's Manual and

Reference Guide, version 1.0.  Added 11/3/90.

VESA SuperVGA BIOS 1.1 extensions extracted from VESA standard #VS900602.

Added by Ralf Brown, 12/9/90.

PCSpool API derived from PC Magazine, Vol 10 Number 1 (Jan 15,1991).  Added

12/20/90.

STARLITE calls derived from _General_Software_Project_STARLITE_Architecture_

_Specification_, Final Draft, October 1, 1990, provided by Stephen Jones

of General Software.  Added by Ralf Brown, 1/5/91.

Communicating Applications Specification v1.2 information extracted from

"DCA/Intel Communicating Applications Specification Version 1.2" dated 9/27/90

(Intel part number 301812-004) and available from the Intel BBS at

(503)645-6275.	Added by Ralf Brown, 2/23/91.

TBScanX v2.3 API extracted from the TBScanX documentation (Frans Veldman,

ESaSS B.V., P.O. Box 1380, 6501 BJ Nijmegen, The Netherlands).	Added 3/12/91.

Novell IPX/SPX calls in part from an article by J. Vanderaart in the Dutch

_LAN-Magazine_, issue #1, titled "IPX, de kabel in de knel".  Added 3/16/91.

Replacements for July 1987 info derived from

_80286_and_80287_Programmer's_Reference_Manual, Intel #210498-004

_IBM_ROM_BIOS_, Ray Duncan, "Programmer's Quick Reference Series"

_DOS_and_BIOS_Functions_Quick_Reference_, Que

_The_MS-DOS_Encyclopedia_, Microsoft Press

_Advanced_MSDOS_, Ray Duncan (first edition, 1986)

_System_BIOS_for_IBM_PC/XT/AT_Computers_and_Compatibles_, Phoenix

Technical Reference Series

_PC_Tech_Journal, December 1984, April 1986, May 1986, and August 1988

_Programmer's_Journal_, v8 #1

_Byte_, v12 #12 (1987 Extra Edition)

Information added by Ralf Brown, 3/91.

John J. Seal's BIOS Window Extension v1.1 API extracted from the May 1986 Dr.

Dobb's Journal.	 Added by Ralf Brown, 3/23/91.

Some additional NetWare data structures and flag values from _NetWare_System_

_Interface_Technical_Overview_ by Novell.  Added by Ralf Brown, 3/24/91.

Alloy ANSK, NTNX, and MW386 calls summarized from information provided by

Joseph G. Souza and Frank Gladu of Alloy Computer Products, Inc.  "Alloy and

its employees are not to be held responsible for any errors which may be

contained in the information provided."	 Added by Ralf Brown, 4/91.

Windows 3.0 DOSX information from PC Magazine, Feb 26, 1991.  Added 4/22/91.

MultiDOS Plus API summarized from the on-line manual provided by Nanosoft, Inc.

(available on the Nanosoft BBS at 508-650-9552).  Added by Ralf Brown, 4/91.

Replacements for July 1987 networking INT 2A calls gleaned from

_Networking_Software_, ed. Colin B. Ungaro (McGraw Hill), p265.

Added by Ralf Brown, 5/8/91.

Common Access Method r2.3 calls and data structures extracted from "SCSI-2

Common Access Method, Transport and SCSI Interface Module, Rev 2.3", dated

February 25, 1991, by the Computer and Business Equipment Manufacturers

Association (CBEMA).  Available from the SCSI BBS, (316)636-8700.

Added by Ralf Brown, 6/7/91.

DOS Protected Mode Interface spec 1.0 calls extracted from _DOS_Protected_

_Mode_Interface_(DPMI)_Specification,_Version_1.0_, dated March 12, 1991,

Intel Corp. order number 240977-001.  Added by Ralf Brown, 6/11/91.

CD-ROM device driver request headers extracted from "Microsoft MS-DOS CD-ROM

Extensions Hardware-Dependent Device Driver Specification" of 5 Aug 88.

Added by Ralf Brown, 7/25/91.

Some DOS 5.0 information extracted from _Microsoft_MSDOS_Programmer's_

_Reference_, ISBN 1-55615-329-5.  Added 7/28/91.

DOS 5.0 task switcher interface and misc other info extracted from _Microsoft_

_Programmer's_Reference_, ISBN 1-55615-329-5.  Added by Ralf Brown, 8/3/91.

Turbo Debugger hardware breakpoint interface extracted from the Borland C++ 2.0

file MANUAL.TNT.  Added by Ralf Brown, 8/4/91.

Various and sundry references from Michael Shiels:

Fundamentals of FOSSIL Implementation and Use, Draft Version 4

August 10, 1987; Vincent E. Perriello, VEP Software

FSC-0015

Fundamentals of FOSSIL Implementation and Use, Version 5

February 11, 1988; Rick More, Solar Wind Computing

FSC-0008

eXtended Memory Specification (XMS), version 2.0

July 19, 1988; Microsoft Corporation

Virtual DMA Services (VDS), Version 1.00

Printed July 16, 1990; Microsoft Corporation

Enhanced Expanded Memory Specification (Enhanced EMS), version 2.0

(020022-001 A), July 1986; AST Research, Quadram Inc., Ashton-

Tate

Additional video modes extracted from the VPIC v4.6 configuration files.

Added by Ralf Brown, 9/14/91.

Japanese functions extracted from the January 1992 issue of _Windows/DOS_

_Developer's_Journal_:

"Japanese Double Byte Character Processing", John G. Nelson, p23.

"Uncovering the NEC-9801 PC", John G. Nelson, p35.

Added by Ralf Brown, 1/2/92.

Additional SMARTDRV info gleaned from "Programmer's Workbench", Dr. Dobb's

Journal, January 1992.	Added by Ralf Brown, 1/4/92.

Miscellaneous tidbits found in Andrew Rossman's (andyross@infopls.chi.il.us)

INFOPLUS v1.50 of January 1, 1992.  Added by Ralf Brown, 1/4/92.

Da Vinci eMail Dispatcher interface calls were extracted from the

_Da_Vinci_Systems_Dispatcher_Development_Toolkit_ (Revision 2), dated

20 June 1990.  Added 1/7/92.

FaxBIOS calls and structures gleaned from the FaxBios sample source code

including struct/enum .h files (dated 1 October 1991).	Added 1/8/92.

TaskMAX calls extracted from Digital Research Inc.'s DR DOS 6.0 TaskMAX API

document.  Added by Ralf Brown, 1/16/92.

SOLLEX SuperVGA calls extracted from _SOLLEX_Super_VGA_Standard_ (Smos

videO controLLer EXtensions), No. S03-SP-001-01, dated 9/23/91,

copyright Seiko Epson Corp.  Added by Ralf Brown, 1/20/92.

RSIS information was found in "RSIS: Relocated Screen Interface Specification",

available for free from V Communications, Inc. (see below).

"Strategies for Writing State-of-the-Art TSRs that exploit MS-DOS", Douglas

Boling, Microsoft Systems Journal volume 7 number 1.

Advanced Power Management calls abstracted from _Advanced_Power_Management_

_The_Next_Generation_, Version 1.0, by Intel Corporation and Microsoft Corp.

Added by Ralf Brown, 3/31/92.

PGS1600.DEV info extracted from _PG1600_Display_Adapter,_Installation_and_

_Reference_ First Edition, November 1987, P/N 0010216-101A by CornerStone

Technology.  Added 4/10/92.

Borland debug info header was found in Borland's _Open_Architecture_Handbook_.

Added by Ralf Brown, 4/14/92.

Several DR Multiuser DOS (Concurrent CP/M) calls found in "Multiuser DOS for

Control Systems: Part I" by Richard Kryszak, Dr. Dobbs Journal, April 1992.

Added 4/18/92.

Vanderaart text-windows API found in J. Vanderaart,"The Golden Btriever", LAN

Magazine, July 1990, p. 85.  Added 4/18/92.

SuperVGA v1.2 info from _Super_VGA_BIOS_Extension_, standard #VS911022,

October 22, 1991.  Added 5/6/92.

Additional partition types from a public domain list by Sean Goggin

<sean@u36.kwnet.on.ca>.	 Added 5/22/92.

XMS 3.0 calls were found in XMS30.TXT on the CompuServer MSLANG forum.

Vanderaart PC Thuis Shell calls extracted from the premiere (June/July 1990)

issue of PC Thuis Power magazine, column "Voorheen Methode Vanderaart" by

John Vanderaart.  Added 7/24/92.

Additional video modes extracted from the VPIC v5.0 configuration files.

Added by Ralf Brown, 8/7/92.

Details on the NetWare API found in Novell's _NetWare_System_Calls--DOS_,

Volume I and Volume II (item numbers 100-000571-002 and 100-000572-002,

1989).	Added by Ralf Brown, 9/92.

SNAP.EXE v3.2 API culled from the SNAP source code.  Added by Ralf Brown,

9/10/92.

FlashTek X-32VM calls extracted from the X-32VM manual of April 1, 1992.

Comtrol Hostess i/ISA interrupt usage from the

 COMTROL HOSTESS i/ISA Programmer's Reference, First Edition, December 1991

 COMTROL Corporation product number 6978-12/96/91.

Disk Spool II v4.0x documented API extracted from file SP2INTFC.DOC, included

with the Disk Spool II v4.05.04 distribution.  Added by Ralf Brown, 1/22/93.

Novell Link Support Layer API extracted from Novell's _ODI_Developer's_Guide_

_for_DOS_Protocol_Stacks_, Rev 1.1 3/18/92.  Available for anonymous FTP from

sjf-lwp.novell.com.  Added by Ralf Brown, 2/93.

VADMAD device info from Microsoft KnowledgeBase article Q83012, "Using Auto-

Initialize DMA under Windows" (4/17/92).  Added 2/24/93.

Windows 3.0 Virtual DMA Spec bugs extracted from Microsoft KnowledgeBase

article Q77998, "Errors in the VDS API in Enhanced Mode Windows" (11/8/91).

Added 2/24/93.

IBMSND driver API info from "Examining PC Audio, welcome to the wild and wooly

world of PC Sound", John W. Ratcliff, DDJ #198 (March 1993), p. 78-85.

Added 3/93.

UM587 chipset video modes from "IBM VGA-Compatible Video Graphics Controller

User's Manual".	 Added by Ralf Brown, 5/22/93.

Cirrus Logic CL-GD 5420/5422/5426 video modes extracted from "V542X (Super VGA)

User Manual".  Added by Ralf Brown, 5/22/93.

Additional Tseng ET-3000 info extracted from "Puretek VGA Ultra Advanced

Graphics Board Operations Guide".  Added by Ralf Brown, 5/22/93.

Additional virus calls extracted from the Computer Virus Catalog maintained

by Prof. Dr. Klaus Brunnstein <brunnstein@rz.informatik.uni-hamburg.dbp.de> at

the University of Hamburg.  Added by Ralf Brown, 5/25/93.

Software Carousel API extracted from a technical note dated 1/20/88.  Added

6/4/93.

DIET v1.43e API from DIETAPI.DOC "DIET APPLICATION INTERFACE version 1.43e"

by Teddy Matsumoto, 11/22/91.  Added 6/4/93.

xDISK v3.32+ installation check extracted from the xDISK v3.40 documentation.

Added by Ralf Brown, 6/4/93.

NetWare Access Server Driver API extracted from "NetWare Access Server

Driver Specification", Version 1.0 (November 17, 1992), Novell part number

107-000018-002.	 Added by Ralf Brown, 6/12/93.

Chips&Technologies VGA BIOS INT 10/5Fxx extracted from Programmer's Guide to

EGA and VGA Programming, 2nd edtion.  Added 6/24/93.

Cloaking API based on CLOAKAPI.INC and RMFUNCS.DOC on Netroom Supplemental

Disk.  Added by Ralf Brown, 6/24/93.

Cirrus Logic BIOS info from the Cirrus Logic CL-GD542X Technical Reference

Manual, dated April 1993.  Added 7/13/93.

Some QEMM internal functions documented in Quarterdeck files QDMEM.DOC and

QPI.DOC, dated 6/15/93.	 Added by Ralf Brown, 7/18/93.

10NET v5.0 calls and data structures extracted from "10NET 5.0 Implementation

Spec", chapter 5.  Added by Ralf Brown, 7/24/93.

Phar Lap 386|DOS-Extender v4.0/4.1 info extracted from 386DOSX.DOC.  Added

7/27/93.

Novell NetWare 3270 API (INT 6F) extracted from Novell SNA Note 3-133,

"API/HLLAPI INFORMATION", dated March 7, 1991.	Added by Ralf Brown, 7/28/93.

PCMCIA Socket Services from _PCMCIA_Socket_Services_Interface_Specification_,

Revision A.00, dated June 20, 1991.  Added by Ralf Brown, 8/30/93.

MEMORY.LST updates from "IBM Local Area Network Technical Reference"

SC30-3383-03, December 1990 (page D-31), and "IBM PS/2 and PC BIOS Interface

Technical Reference" (September 1991 edition).	Added 9/24/93.

Connection Manager API extracted from _The_Connection_Manager_User's_Guide_,

Third Edition, February 1993.  Added by Ralf Brown, 10/18/93.

NetWare multiplexor (INT 21/AH=F2h) calls from November 1993 _Dr._Dobb's_

_Journal_ "Undocumented Corner" (Pawel Szczerbina, "The NetWare Core Protocol

(NCP)") and Novell's SC3X04.EXE (available from NOVLIB and ftp.novell.com).

Added by Ralf Brown, 10/26/93.

Additional Microsoft Mouse driver details from Microsoft Knowledge Base

articles, available for anonymous FTP from ftp.microsoft.com.  Added by

Ralf Brown, 10/26/93.

HLLAPI return codes extracted from Microsoft's _Windows_HLLAPI_Specification_,

version 1.0 (10/6/92).	Added by Ralf Brown, 10/31/93.

Chicago VxD identifiers from "Undocumented Corner", _Dr._Dobb's_Journal_

December 1993.	Added by Ralf Brown, 11/19/93.

SBSIM (SoundBlaster Simplified Interface Module) API extracted from file

SBSIMDMO.C, distributed along with the other files for _SoundBlaster:_The_

_Official_Book_.  Added by Ralf Brown, 1/22/94.

Windows debugging kernel calls from _Undocumented_Windows_ and _Windows_

_Internals_.  Added 1/22/94.

YEA_GUS.EXE and EURO_MOD.EXE APIs from the SPHINX C-- v0.189 example files

GUS.H-- and GUSMOD.H--.	 Added by Ralf Brown, 1/31/94.

ZFAX v3 API from the ZFAX v3.01 manual, Appendix D.  Added 2/3/94.

Husky Hunter 16 BIOS from the _Husky_Hunter_16_User_Guide_, 2nd edition (Sept

1991).	Added 2/4/94.

Additional ASPI information from Brian Sawert's ASCILOOK utility, published

in the March 1994 Dr. Dobb's Journal.  Added by Ralf Brown, 3/26/94.

Novell XQL INT 7Bh from XQL C interface source of 7/89.	 Added by Ralf Brown,

3/94.

Various PS/1 and DOS/V calls were found in Frank van Gilluwe's book

_The_Undocumented_PC_, Addison-Wesley 1994.  ISBN 0-201-62277-7.  Added by

Ralf Brown, 4/16/94.

Various ports and miscellaneous data structure were found in Frank van

Gilluwe's book _The_Undocumented_PC_, Addison-Wesley 1994.  ISBN 0-201-62277-7.

Added by Ralf Brown, 6/5/94.

Compaq QVision info from the _COMPAQ_QVision_Graphics_System_Technical_

_Reference_Guide_, second edition (October 1993).  Compaq part number

073A/0693.  Added by Ralf Brown, 7/31/94.

Cloaking v1.01 info from the Cloaking(tm) Developer's Toolkit, first edition

(October 1993), provided by Helix Software.  Helix part number N04,1093.

Added by Ralf Brown, 8/94.

K3PLUS API from the K3API.DOC file v2.04 for K3PLUS.  Added by Ralf Brown,

8/7/94.

QEMM port-trapping API extracted from the QEMM v7.5 manual.  Added by

Ralf Brown, 10/22/94.

IBM 8514/A and XGA Adapter Interface calls extracted from Richard F. Ferraro's

_Programmer's_Guide_to_the_EGA,_VGA,_and_Super_VGA_Cards_, third edition.

Added by Ralf Brown, 10/94.

Enhanced Disk Drive Specification calls and tables from Phoenix Technologies'

_Enhanced_Disk_Drive_Specification_,_Version_1.0_, dated January 25, 1994.

Added 10/94.

VSWITCHD VxD API from "Q&A MSDOS" column by Jeff Prosise in the September 1994

_Microsoft_System_Journal_.  SHELL VxD API from "Windows Questions and

Answers", _Windows/DOS_Developer's_Journal_, August 1994.  POSTMSG VxD API

from "Q&A MSDOS", _Microsoft_Systems_Journal_, November 1994.  Added 11/5/94.

VESA Audio Interface calls from the VBEAI SDK include files.  Added 1/3/95.

VESA SuperVGA BIOS v2.0 calls gleaned from SVGAKit v5.1beta1 by SciTech

Software.  Added by Ralf Brown, 1/6/95.

PCMCIA ExCA function names from "Programmer's Guide to the AMIBIOS",

ISBN 0-07-001562-7, page 395.  Added 1/7/95.

Hewlett Packard EX-BIOS functions extracted from the _HP_Vectra_AT_Technical_

_Reference_Manual_,Vol_2:_System_BIOS_, first edition, September 1985.  Added

1/95.

Plug-and-Play BIOS specs extracted from _Plug_and_Play_BIOS_Specification_

_Version_1.0A_ (May 5, 1994).  Added by Ralf Brown, 3/4/95.

Extended System Configuration Data formats extracted from _Extended_System_

_Configuration_Data_Specification_Version_1.01_ (December 28, 1993).

Added by Ralf Brown, 3/5/95.

Plug-and-Play Configuration Manager API extracted from _Plug_and_Play_Device_

_Driver_Interface_Version_1.0C_ (October 5, 1993).  Added by Ralf Brown,

3/6/95.

Comments about PC LAN Program from _IBM_PC_Local_Area_Network_Program_User's_

_Guide_ Third edition (April 1987, for Release 1.2).  Added 3/17/95.

QRIP API extracted from QRIPTECH.TXT in RIPCPP10.ZIP (C++ class library for

using QRIP/TSR).  Added 3/17/95.

AMI BIOS-FLASH interface from "AMIFLASH - Flash Implementation Guide",

available as FLASH110.ZIP on American Megatrends' BBS and FTP sites.

Added 3/31/95.

Many Windows VxD function numbers extracted from PharLap's PHARLAPX header

file PHAR386.H.  Added by Ralf Brown 4/14/95.

PHARLAPX VxD API extracted from PharLap's

ftp.pharlap.com:/pub/286dosx/pharlapx.zip.  Added by Ralf Brown, 4/14/95.

Intel SMBus info from _Intel_System_Management_Bus_BIOS_Interface_

_Specification_, _Revision_1.0_, February 15, 1995, by Intel Architecture

Labs.  Added 5/14/95.

Various Novell NetWare info available at

ftp://ftp.urz.uni-heidelberg/pub/novell/unsupported; SC4X01.ZIP info added

8/13/95. (!!! more to come!)

--------!---ADDRESSES------------------------

The following have provided API reference and other materials at no charge:

Alloy Computer Products, Inc.	(ANSK, NTNX, MW386)

1 Brigham Street

Marlborough, MA 01752

Voice: (508) 481-8500

       (800) 544-7551

FAX:   (508) 481-7711

Banyan Systems, Inc.	(Banyan VINES)

115 Flanders Road

Westboro, MA 01581

Voice: (508) 898-1000

FAX:   (508) 898-3604

Beame & Whiteside Software Ltd	(BW-TCP)

P.O. Box 8130	[6/93]

Dundas, ON L9H 5E7

Canada

Voice:	(416) 765-0822

FAX:	(416) 765-0815

FTP:	ftp.bws.com

bit-design GmbH	(bitFOSS, bitFOSSI, WDTSR)

Bayerwaldstr. 5	[4/94]

D-81737 Muenchen

Germany

Voice:	+49-89-670050-0

FAX:	+49-89-670050-90

BBS:	+49-89-670050-91

Compact Soft Group	(CS_TSR specification)

SU-252186 Kiev Ukraine	[11/93]

Martirosyana st. 15, apt 4

Email:	compact.soft@cs.kiev.ua

General Software	(STARLITE architecture [Embedded DOS])

P.O. Box 2571

Redmond, WA 98073

Helix Software Company, Inc.	(Netroom, RM386, Cloaking)

47-09 30th Street

Long Island City, NY 11101

Voice: (718) 392-3100

FAX:   (718) 392-4212

BBS:   (718) 392-4054

Intel Architecture Labs	(SMBus and other specs)

Voice: (800) 627-8686

FAX:   (916) 356-6100

       (916) 356-3551 (international)

Email: IAL_Support@ccm.hf.intel.com

Intel Literature	(DOS Protected-Mode Interface)

3065 Bowers Avenue

Box 58065

Santa Clara, CA 95051-8065

Voice: (800) 548-4725

FTP:   ftp.intel.com

International Computers	(ImageCapture)

12021 West Bluemound Road

Wauwatosa, WI 53226

Voice: (414) 764-9000

JAM Software	(JAM disk compressor)

George A. Reznik	[11/94]

Vasilkovskaya str.8, apt.139

252040 Kiev, UKRAINE

Voice:  +7(044) 266-6547

FAX:    +7(044) 266-4091

Internet: gar@UA.NET (best) or gar@jam.cs.kiev.ua

Microsoft Corporation	(CD-ROM Extensions)

16011 NE 36th Way

Box 97017

Redmond, WA 98073-9717

Voice: (206) 882-8080

FAX:   (206) 883-8101

FTP:   ftp.microsoft.com

Net-Source, Inc.	(SilverNET)

1265 El Camino Real, Suite 101	[7/93]

Santa Clara, CA 95050

Voice: (408) 246-6679

FAX:   (408) 246-7040

       netsource.com

Nanosoft, Inc.	(MultiDOS Plus, TurboNET)

13 Westfield Road

Natick, MA 01760

Voice: (800) 678-2141

       (508) 651-0091

FAX:   (508) 655-8860

BBS:   (508) 650-9552

NashaKala Corporation	(ComShare)

P.O. Box 218, Station 'K'	[1/95]

Toronto, Ontario  M4P-2E0

CANADA

NetManage, Inc.	(ChameleonNFS)

20823 Stevens Creek Blvd	[6/93]

Suite 100

Cupertino, CA 95014

Voice: (408) 973-7171

FAX:   (408) 257-6405

FTP:   ftp.netmanage.com

Novell, Inc.	(NetWare, LSL)

122 East 1700 South

Provo, UT 84601

Voice: (800) 453-1267

       (801) 379-5900

FTP:	ftp.novell.com, sjf-lwp.novell.com

WWW:	http://occam.sjf.novell.com:8080/

Phar Lap Software, Inc.	(Virtual Control Program Interface)

60 Aberdeen Avenue

Cambridge, MA 02138

Voice: (617) 661-1510

FTP:	pharlap.com

Phoenix Technologies, Ltd.	(PCMCIA Socket Services)

40 Airport Parkway	[6/91]

San Jose, CA 95110-1008

Voice: (408) 452-6500

FAX:   (408) 452-1985

Quarterdeck Office Systems	(DESQview 2.26)

150 Pico Boulevard	[12/92]

Santa Monica, CA 90405

Voice: (213) 392-9701

FAX:   (213) 399-3802

BBS:   (213) 314-3227

FTP:	qdeck.com

Bernd Schemmer	(MDEBUG)

Ostenbergstr. 99/137

W4600 Dortmund 50

GERMANY

Softwarehouse Corporation	(Connection Manager)

326 State Street	[10/93]

Los Altos, CA 94022

Voice: (415) 949-0203

FAX:   (415) 949-0208

BBS:   (415) 949-0207

Tiara Computer Systems, Inc.	(10NET)

1091 Shoreline Blvd	[7/93]

Mountain View, CA 94043

V Communications, Inc.	(RSIS)

4320 Stevens Creek Blvd, Suite 275  [2/92]

San Jose, CA 95129

Voice: (408) 296-4224

Video Electronics Standards Association (VESA SuperVGA BIOS extensions)

1330 South Bascom Avenue, Suite D

San Jose, CA 95128-4502

Voice: (408) 971-7525

FAX:   (408) 286-8988

(2150 North First Street, Suite 440, San Jose, CA 95131-2029; phone

408-435-0333, FAX 408-435-8225)

Webcorp	(WEB)

2750 Bridgeway	[7/93]

Sausalito, CA 94965

Voice: (415) 331-1449

FAX:   (415) 331-0911

Willies' Computer Software Company  (COMM-DRV)

2470 S. Dairy Ashford, Suite 188    [5/94]

Houston, TX 77077

Voice: (800) 966-4832

       (713) 498-4832

--------!---ADDRESSES------------------------

Other addresses:

J.M. Allen Creations	(PRINDIR)

115 Lynn Street	[8/92]

Fremont, OH 43420

American Megatrends, Inc.	(AMIBIOS, BIOS-FLASH)

Voice:	(800) 828-9264	[1994]

FTP:	american.megatrends.com

A.N.D. Technologies	(PSPS)

P.O. Box 64811	[5/93]

Los Angeles, CA 90064

Voice:	(213) 848-9345

CIS:	71011,3570

Artisoft Inc.	(LANtastic)

575 East River Rd.

Tucson, AZ 85704

Voice:	(602) 293-6363

artisoft.com

Attachmate Corporation	(Extra!)

3617 131st Ave. SE

Bellevue, WA 98006-9930

Voice: (800) 426-6283

FAX:   (206) 747-9924

G.T. Becker	(RighTime)

Air System Technologies, Inc.	[4/91]

14232 Marsh Lane, Suite 339

Dallas, TX 75234

Better Software Technology, Inc. (Switch-It)

55 New York Ave	[1990]

Framingham, MA 01701

Voice:	(508) 879-0744

FAX:	(508) 872-1734

Biologic	(HRAM, MIN-MEM)

PO Box 1267	[9/91]

Manassas, VA 22110

BLOC Publishing Corp.	(FAST!)

800 S.W. 37th Avenue	[6/93]

Coral Gables, FL 33134

Rich Bono	(ISR.COM)

7 Redfield Circle	[2/91]

Derry, New Hampshire, 03038

rbono@necis.ma.nec.com

nm1d@wb1dsw.nh.usa.na

Borland International Inc.	(Turbo Pascal, Turbo C)

1800 Green Hills Rd.

Scotts Valley, CA 95066

Voice:	(408) 438-8400

Bromfield Software Products	(SCROLLit)

P.O. Box 70081	[5/93]

Ottawa, Ontario K2P 2M3

Canada

CIS:	71054,3051

Andrzej Brzezinski	(CALCULATOR)

308-70 Garry St.	[12/90]

Winnipeg, Manitoba R3C 3J9

Canada

Budget Software Company	(Disk Spool II)

P. O. Box 12282	[12/91]

12162 E. Mississippi Ave.

Aurora, CO  80012-3499

Voice:	(303) 695-9095

Cirrus Logic	(video adapters)

3100 West Warren Ave

Fremont, CA 94538

Commercial Software Associates	(VMiX)

Post Office Box 36

Corona del Mar, CA 92625

Voice:	(714) 720-1214 (8-6pm PDT)

BBS:	(714) 720-1139 (24 Hrs.)

Compaq Computer Corporation

20555 S.H. 249

Houston, TX 77070

FTP:	ftp.compaq.com

COMTROL Europe Ltd.	(COMTROL HOSTESS)

Killé House

Chinnor Road

Thame

Oxon, OX9-3NU

ENGLAND

CTRLALT Associates	(STACKEY, EGAPAL, VGAPAL)

Suite 133	[3/90]

260 South Lake Ave.

Pasadena, CA 91101

Dell Computers

FTP:   dell1.dell.com, dell2.dell.com

Digital Research, Inc.	(GEM, DR DOS, Concurrent DOS)

(see Novell, Inc.)

Distributed Information Processing, Ltd.

Number 2 Frederick Sanger Road

Surrey Research Park

Guildford, Surrey GU2 5XN

England

Voice:	+44 483 301 555

FAX:	+44 483 301 434

[DPMI Committee]

Albert Teng, DPMI Committee Secretary

Mailstop NW1-18

2801 Northwestern Parkway

Santa Clara, CA 95051

FAX:	(408) 765-5165

Dynamic Microprocessor Associates (pcANYWHERE)

1776 E. Jericho Turnpike

Huntington, NY 11743

Voice:	(516)-462-0440

EasyNet Systems Inc.	(EasyNet ShareLan)

4283 Village Centre Court	[4/88]

Mississauga, Ontario L4Z 1S2

Voice:	(416) 273-6410

Eicon Technology Corporation

2196 32nd Avenue

Montreal, Quebec, Canada H8T 3H7

Voice:	(514) 631-2592

Ergo Computing	(OS/286, OS/386)

1 Intercontinental Way

Peabody, MA 01960

Voice:	(508) 535-7510

FAX:	(508) 535-7512

ESaSS B.V.	(TBSCANX, ThunderByte, STACKMAN)

Thunderbyte PC Immunizer Division

P.O. Box 1380

6501 BJ Nijmegen

The Netherlands

Voice:	+31-80-787 881

FAX:	+31-80-789 186

BBS:	+31-85-212 395

Express Consulting	(EZRECV)

4960 Hamilton Ave. Suite 211	[7/92]

San Jose, CA 95130

Voice:	(408) 374-7992

FAX:	(408) 374-3115

FAB Software	(Newkey)

P.O. Box 336	[10/90]

Wayland, MA 01778

Peter Fitzsimmons	(SWELL)

P.O. Box 670	[as of 7/89]

Adelaide St. Postal Station

Toronto, Canada M5C 2J8

FlashTek, Inc.	(X-32VM)

804 Airport Way, Suite D	[9/92]

Sandpoint, ID 83864

Voice:	(208) 263-7311

FAX:	(208) 263-8772

UUCP:	x-32vm@proto.com

Geoff Friesen	(IC)

Box 94	[10/92]

Dauphin, Manitoba

Canada R7N 2T9

Frontier Technologies Corp.	(Super-TCP)

10201 N. Port Washington Road	[8/93]

Mequon, WI 53092

Voice:	(414) 241-4555

FAX:	(414) 241-7084

FTP:	isi.frontiertech.com

FTP Software, Inc.	(PC/TCP)

Voice:	(800) 282-4387

FTP:	vax.ftp.com

Future Domain Corporation	(SCSI controllers)

2801 McGaw Ave.

Irvine, CA 92714

Voice:	(714) 253-0440

FAX:	(714) 253-0429

Gamma Software	(APCAL)

P.O. Box 8191	[2/93]

Fort Collins, CO 80526

Voice: (800) 747-9960

       (303) 490-2928

H&G Software	(Explosiv)

P.O. Box #3013	[3/94]

Vancouver, B.C. Canada

V6B 3X5

Husky Computer Limited	(Husky Hunter 16 BIOS)

Eden Road	[9/91]

Walsgrave Triangle Business Park

Coventry CV2 2TB

England

Voice:	+44 203 604040

FAX:	+44 203 603060

Information Modes	($25 Network)

P.O. Drawer F

Denton, TX 76202

Voice:	(817) 387-3339

Innovative Data Concepts, Inc.	(SWAP?? utilities, TesSeRact library)

122 North York Road

Suite 5

Hatboro, PA 19040

Voice:	(215) 443-9705

Orders: (800) 926-4551

FAX:	(215) 443-9753

Inset Systems	(Inset)

71 Commerce Drive	[may be outdated]

Brookfield, CT 06804

inset.com

Eric Isaacson Software	(ZIPKEY)

416 East University Ave.

Bloomington, IN 47401-4739

Voice:	(812) 339-1811

Isogon Corporation	(NewSpace)

330 Seventh Avenue

New York, NY 10001

Voice:	(212) 967-2424

Jorj Software Co.	(JORJ)

4354 Fletcher Rd.	[5/91]

Manchester MI 48158

JP Software	(4DOS)

P.O. Box 1470

E. Arlington, MA 02174

Voice:	(617) 646-3975

Robert Juhasz	(XFS)

Auf der Suehle 14	[4/94]

33102 Paderborn

Germany

FAX:	+49 5251 55764

Email:	robertj@lwfws1.uni-paderborn.de

CIS:	100045,2433

KANSYS, Inc.	(AutoBraille)

1016 Ohio	[12/91]

Lawrence, KS 66044

Voice:	(800) 279-4880

(913) 843-0351

Key Software Products	(The Last Byte)

440 Ninth Avenue

Menlo Park, CA 94025

Voice:	(415) 364-9847 [8am-6pm PST]

BBS:	(415) 364-9847 [7pm-8am PST]

Lanera Corporation	(TCPOpen)

516 Valley Way	[8/93]

Milpitas, CA 95035

Voice: (408) 956-8344

FAX:   (408) 956-8343

Lassen Software, Inc.	(Trusted Access)

5923 Clark Rd, Suite F	[4/93]

P.O. Box 2319

Paradise, CA 95967-2319

Voice:	(305) 445-6304

Microsystems Software, Inc.	(MAGic)

600 Worcester Road

Framingham, MA 01701

Voice:	(508) 626-8511

FAX:	(508) 626-8515

BBS:	(508) 875-8009

MicroTalk	(ASAP)

337 S. Peterson

Louisville, KY 40206

Voice: (502) 897-2705

BBS:   (502) 893-2269

Celso Minnitti, Jr.	(INTMON)

139 Linden St

Wellesley, MA 02181

John Newlin

New-Ware	(SCOUT)

8050 Camino Kiosco

San Diego, CA 92122

Alexandr Novy & Petr Horak	(REDVIEW)

Technical University of Prague	[2/92]

Faculty of Nuclear Science and Physical Engineering

Pargue, Czechoslovakia

BITNET: HORAC@CSEARN

Nu-Mega Technologies, Inc.	(Soft-ICE)

P.O. Box 7780	[8/92]

Nashua, NH 03060-7780

Voice: (603) 889-2386

FAX:   (603) 889-1135

Offe Enterprises	(VUIMAGE)

1163 E. Ogden Ave. #705-131

Naperville, IL 60563

Voice: (708) 357-6679

Ontrack Computer Systems	(Disk Manager, SWBIOS, Drive Rocket)

6321 Bury Drive	[10/93]

Minneapolis, MN 55346

Voice:	(800) 752-1333

(612( 937-1107

P2 Enterprises	(Phantom of the Keyboard)

P.O. Box 25	[5/91]

Ben Lomond, CA 95005

PC-Kwik Corporation	(Super PC-Kwik, PowerPak, PCKSPL, PCKSCRN,...)

15100 SW Koll Parkway	[6/93]

Beaverton, OR 97006-6026

Voice: (503) 644-5644

FAX:   (503) 646-8267

PC Thuis BV	(PC Thuis Power magazine)

Spaarne 55

2011 CE HAARLEM

The Netherlands

Voice: 023 - 366814

Personics Corporation	(UltraVision)

63 Great Road

Maynard, MA 01754

P.R. Glassel and Associates, Inc.	(QUICKCACHE II)

30255 Fir Trail	[1/90]

Stacy, MN 55079

Voice: (619) 462-1337

Progressive Solutions	(Back&Forth)

Sandi and Shane Stump

Box 276125

San Antonio, TX 78227

Voice: (800) 833 4400

       (512) 670 0882

BBS:   (512) 670 1809

RSE, Inc.	(Nabbit)

1157 57th Drive SE	[1/93]

Auburn, WA 98002

Voice: (206) 939-4105

FAX:   (206) 989-4105

SeaSide Software	(FastJuice)

312 W. 6th Street, Suite 108	[1990]

Corona, CA 91720

Shamrock Software	(EMAIL, NET.24)

Muenchner Strasse 26a

W-8067 Petershausen

Germany

BBS:   +49 89-307 2079

SitBack Technologies, Inc.	(SitBack)

9290 Bond, Suite 210	[8/90]

Overland Park, KS 66214

Voice: (913) 894-0808

Soft Warehouse, Inc.	(HERCULES.COM)

3615 Harding Avenue	[11/88]

Suite 505

Honolulu, HI 96816

Softlogic Solutions, Inc.	(DoubleDOS,Cubit,Software Carousel)

One Perimeter Road

Manchester, NH 03103

Software Concepts Design	(FLU_SHOT)

594 Third Avenue

New York, NY 10016

BBS:   (212) 889-6438

The Software Link, Inc.	(PC-MOS/386)

5575B Chamblee-Dunwoody Road, suite 205	[7/93]

Atlanta, GA 30338

Voice: (404) 512-0705

BBS:   (404) 512-0643

FAX:   (404) 512-7005

Spirit of Performance, Inc.	(ASPIHOOK)

Harvard, MA

STSC, Inc.	(APL*Plus/PC)

2115 E. Jefferson St.	[3/93]

Rockville, MD 20852-9950

Voice: (301) 984-5123 (MD)

       (800) 592-0050 Ext 900

       (301) 984-5412 (international)

FAX:   (301) 984-5094

Telex: 898-085 (may be outdated)

TapirSoft	(TEXTCAP 2.0)

Gisbert W. Selke	[12/91]

Ermekeilstr. 28

W-5300 Bonn 1

Germany

Ted Gruber Software	(FGDRIVER)

P.O. Box 13408

Las Vegas, NV 89112

Voice: (702) 735-1980

BBS:   (702) 796-7134

FAX:   (702) 735-4603

George A. Theall	(RECALL)

TifaWARE

506 South 41st St., #3M

Philadelphia, PA 19104

Voice: (215) 662-0558

David G. Thomas	(TAME)

c/o PowerSoft

P.O. Box 956338

Duluth, GA 30136

Tseng Labs

10 Pheasant Run

Newtown, PA 18940

Vertisoft Systems, Inc.	(Double Disk,NOW!)

153 B Grace Drive

Easley, SC 29640

Vadim V. Vlasov	(COMBI-disk)

Inst. for Nuclear Research of Russian Acad. Sci.	[5/93]

60th October Anniversary prospect, 7a

117312 Moscow, Russia

Voice:	7-095-133-6533

Thomas Wagner	(CTask)

Ferrari electronic GmbH

Beusselstrasse 27

1000 Berlin 21

Germany

Voice: +49 30-396 50 21

FAX:   +49 30-396 80 20

Ross Neilson Wentworth	(RAID)

Serendipity Software	[as of 11/88]

1422 Elkgrove Circle, #3

Venice, CA 90291

ZSoft Corporation	(FRIEZE)

450 Franklin Rd. Suite 100

Marietta, GA 30067

Voice: (404) 428-0008

--------!---TRADEMARKS-----------------------

To keep the lawyers happy:

ArtiCom is a registered trademark of Artisoft, Inc.

ASAP is a trademark of MicroTalk.

Banyan is a registered trademark of Banyan Systems, Inc.

Compaq is a registered trademark of Compaq Computer Corp.

Corona and Cordata are trademarks of Cordata Computer

DESQview, DESQview/X, QEMM-386, and QRAM are trademarks of Quarterdeck Office

Systems

HALO'88 is a trademark of Media Cybernetics.

Hayes is a trademark of Hayes Microcomputer Products Inc.

IBM, PC, PCjr, PC/XT, PC/AT, XT/286, PS/2, TopView, OS/2 are trademarks of

IBM Corp.

Logitech is a trademark of Logitech, Inc.

Microsoft, MS, MS DOS are trademarks of Microsoft Corp.

Mouse Systems is a trademark of Mouse Systems Corp.

NetWare is a registered trademark of Novell Development Corp.

PC Tools is a trademark of Central Point Software, Inc.

StreetTalk, VINES, and Banyan Network Server are trademarks of Banyan Systems,

Inc.

Tandy 1000 is a registered trademark of Tandy Corp.

TaskView and OmniView are trademarks of Sunny Hill Software

10NET is a registered trademark of Tiara Computer Systems, Inc.

TesSeRact is a trademark of the TesSeRact Development Team.

Turbo C and Turbo Pascal are registered trademarks of Borland International

286/DOS-Extender and 386/DOS-Extender are trademarks of Phar Lap Software, Inc.

Carbon Copy Plus is a trademark of Meridian Technology, Inc.

GIF is a trademark of Compuserve, Inc.

VUIMAGE is a trademark of Offe Enterprises.

Soft-ICE is a trademark of Nu-Mega Technologies.

MAGic is a trademark of Microsystems Software, Inc.

LANtastic is a trademark of Artisoft, Inc.

HRAM is a trademark of Biologic.

ImageCapture is a trademark of International Computers.

FlashTek, X-32, and X-32VM are trademarks fo FlashTek, Inc.

SK-UPPS is a trademark of Schneider & Koch GmbH

SK-PASSPORT is a trademark of SysKonnect, Inc.

PostScript is a trademark of Adobe, Inc.

SpaceManager is a trademark of Vertisoft Systems, Inc.

Husky, Hunter, Hunter 16, Hawk, 8/16, Sidebox and Oracle GT are trademarks

of Husky Computers Limited.

COMM-DRV is a trademark of Willies' Computer Software Company.

Various other names are trademarks or registered trademarks of their respective

    holders

--------!---QUOTES---------------------------

What they're saying about this list:

  "A cornucopia of descriptions of interrupt and function calls on the

   IBM PC.  A great thing to have on your hard disk if you don't have

   a Ray Duncan or Peter Norton book handy."

      _Turbo_Technix_, July/August 1988, p. 157.

[and that was about the 1/30/88 version, which was only one-twentyfifth the

 size of the current version....]

  "An enormous listing of DOS and BIOS interrupt calls, many undocumented

   and program-specific.  Quite simply, some of Snooper's reports wouldn't

   be there without it.	 Very useful in that it reports bugs and

   incompatibilities books rarely mention.  And it's free!"

John P. Vias, SNOOPER.DOC v1.07 (Snooper is a shareware system

information program).

  "Ralf Brown maintains an astounding file which is chock-full of

   detailed, absolutely-indispensable information for DOS programmers on

   Hardware, BIOS, DOS, and other interrupts.  ....  You should not be

   without this file, which is widely-known as "Ralf Brown's Interrupt

   List". Ask about it. You will find it."

Robert Curtis Davis, TBONES07.DOC.

  "It's the finest mess 'o Purina Geek Chow that I've seen in a coon's age."

--Ethan Dicks

--------!---CONTACT_INFO---------------------

If you know of any information not in the list, or which is stated incorrectly,

please let me know!  This list would be a pale shadow of its current self if it

weren't for everybody's input.

Software developers are encouraged to check the list before assigning

interrupts, and to provide me with a list of interrupt calls used (to help

prevent future interrupt conflicts).

Ralf Brown

Address e-mail to:

Internet: ralf@telerama.lm.com

UUCP: {uunet,harvard}!telerama.lm.com!ralf

FIDO: Ralf Brown 1:129/26.1

or post a message to me in the DR_DEBUG echo

CompuServe:   >INTERNET:ralf@telerama.lm.com

Snail mail:

Ralf Brown

813 Copeland Way, Suite 26

Pittsburgh, PA 15232-2217

   (Letters which enclose a Self-Addressed Stamped Envelope [or self-

    addressed envelope and international return coupon] or e-mail

    address will be given priority.  This address will remain valid

    until at least May 1, 1996.)

Visit my home page!

http://www.cs.cmu.edu:8001/afs/cs.cmu.edu/user/ralf/pub/WWW/ralf-home.html

I reply to all e-mail submissions and inquiries.  If you do not receive a reply

within a reasonable time, send your message again, giving a better return path

(on UUCP, a bang path starting at harvard or uunet; elsewhere, a path starting

from the Internet).


Interrupt Primer

                     iAPX 86 Interrupt Primer

                     ------------------------

                          by Ralf Brown

                              12/87

     Updated 6/88, 4/90, 9/92

What is an interrupt?

   An interrupt is a hardware signal that tells the CPU to

   temporarily stop what it is doing and go do something else.

   Without interrupts, the CPU would have to constantly check for

   external events; with interrupts, the CPU can work on

   something else and still respond to an event as soon as it

   occurs.

   CPUs typically have an instruction to disable interrupts for

   use when a section of code has to run without being disturbed

   by external events.  Because of this, most CPUs also have a

   special interrupt called a Non-Maskable Interrupt (NMI), which

   is responded to even when all other interrupts are disabled.

   The NMI is used to signal calamities such as memory failure or

   imminent power loss.

Why so many different interrupts?

   The 8086 family of processors has the ability to recognize 256

   different interrupts.  They also have the ability to let a

   program invoke any of these interrupts with a special

   instruction, known as a software interrupt (as opposed to a

   hardware interrupt which is signalled from outside the

   processor).  Software interrupts are treated just like

   hardware interrupts, except that they are never disabled and

   do not result in an acknowledgement to other chips in the

   computer.  The software interrupt instruction on the 8086

   family is called INT, and is given the number of the

   interrupt.  Thus an INT 21h instruction invokes interrupt

   number 33 decimal.

   Other processors also have software interrupts, though they

   often use different names, such as the Motorola 68000 family

   TRAP instruction, the Intel 8080 RST (ReSTart) instruction, or

   many mainframes' SVC (SuperVisor Call).

   Since a program can invoke an interrupt by number rather than

   by its address (as it has to in calling subroutines),

   interrupts are a convenient way of providing services without

   having to recompile a program whenever the address of the code

   providing the service changes.  This also allows a user

   program to enhance the services provided by directing the

   interrupt to itself.  These enhanced services can then be made

   available to other programs.

How does an interrupt work?

   The 8086 reserves the lowest 1024 bytes of memory for a table

   containing the addresses for each of the 256 possible

   interrupts.  When an interrupt occurs (hardware or software),

   the processor multiplies its number by 4 and looks at the

   resulting memory location to find the address of the piece of

   code which handles the interrupt.  It then places the current

   address in the program and the processor flags on the stack,

   and jumps to the beginning of the interrupt handler.

   When the interrupt handler finishes, it invokes a special

   instruction to return from the interrupt.  This instruction

   takes the previously saved flags and program address off of

   the stack and places them back in the appropriate registers in

   the CPU.

   The interrupt handler has to be careful to preserve any

   registers that it uses which are not used to communicate

   results to the program that invoked the interrupt.  If the

   interrupt can be triggered by a hardware interrupt (only

   certain ones can on IBM PC's, XT's, and AT's), then the

   interrupt handler has to preserve ALL registers, since the

   interrupt could have happened anywhere.

GLOSSARY

--------

API (Application Program[ming] Interface)

   An API is the set of function calls and services that a

   program makes available to other processes (applications).

   Each function or service has a set format which specifies

   the values to be supplied by the caller and the values

   which are returned.	Because of this interface

   specification, the underlying organization of the

   function or service can be changed without affecting the

   applications which use it.  For example, the DOS INT 21h

   file access functions remained unchanged between DOS 2.x

   and DOS 3.x, even though the internal data structures and

   code organization changed significantly.

NMI (Non-Maskable Interrupt)

   Most external (hardware) interrupts can be disabled by the

   CLI (CLear Interrupt enable flag) instruction when the CPU

   is executing critical code that should not be interrupted,

   such as switching from one stack to another.  However, there

   are some situations so dire that the CPU must act on them

   immediately no matter what else it is doing, even if it has

   disabled interrupts.  The Non-Maskable Interrupt serves

   precisely this purpose, as it cannot be disabled (masked) by

   the CPU.


Ports

PORTS.LST Note

 New Format:

0000-001F ----  DMA 1   (first Direct Memory Access controller 8237)

0010-001F ----  DMA controller (8237) on PS/2 model 60 & 80

0018      ----  PS/2 EXTENDED FUNCTION REGISTER

001A      ----  PS/2 extended function execute

0020-003F ----  PIC 1   (Programmable Interrupt Controller 8259A)

0022-0023 ----  Chip Set Data

0022-0023 ----  Cyrix Cx486SLC/DLC processor Cache Configuration Registers

0022-0023 ----  82359 DRAM controller  from 82358DT 'Mongoose' EISA chipset

0022-0023 ----  chipset from Etec Cheetah ET6000 (single chip)

0022-0024 ----  chipset from Pico Power, UMC or PCChips

0022-0025 ----  Intel 82360SL Chipset (for 386SL)

0022-002B ----  Intel 82355, part of chipset for 386sx

0024-0028 ---- Headland HTK340 Shasta 386/486 Chipset

0026-0027 ----  Power Management

002E-002F ----  Dell Enhanced Parallel Port

0038-003F ----  PC radio by CoZet Info Systems

0040-005F ----  PIT  (Programmable Interval Timer  8253, 8254)

0060-006F ----  KEYBOARD CONTROLLER 804x (8041, 8042)  (or PPI (8255) on PC,XT)

0065      ----  AT&T 6300+ high/low chip select

0065      ----  ???

0066-0067 ----  AT&T 6300+ system configuration switches

0066      ----  IBM 4717 Magnetic Stripe Reader - ???

0068      ----  C&T chipsets, turbo mode control

0069      ----  IBM 4717 Magnetic Stripe Reader - ???

006B-006F ----  SSGA control registers

0070-007F ----  CMOS RAM/RTC (Real Time Clock)

0073      ----  Intel Pentium motherboard ("Neptune" chipset)

0074-0076 ----  secondary CMOS (Compaq), NVRAM (IBM) access

0078      ----  HP-Vectra  Hard Reset: NMI enable/disable

0078-007F ----  PC radio by CoZet Info Systems

007C-007D ----  HP-Vectra  PIC 3   (Programmable Interrupt Controller 8259)

0080      ----  MANUFACTURING DIAGNOSTICS PORT

0080-008F ----  DMA page registers   (74612)

0080-009F ----  Intel386sx chipset 82231

0084      ----  Compaq POST Diagnostic

0084      ----  EISA Synchronize Bus Cycle

0090-009F ----  PS/2 POS (Programmable Option Select)

00A0-00AF ----  PIC 2   (Programmable Interrupt Controller 8259A)

00B0-00BF ----  PC radio by CoZet Info Systems

00C0      ----  TI  SN746496 programmable tone/noise generator  PCjr

00C0-00DF ----  DMA 2   (second Direct Memory Access controller 8237)

00E0-00E1 ----  chipset from ACT

00E0-00E7 ----  Microchannel

00EC-00ED ----  Compaq LTE Elite

00ED      ----  ???

00EF      ----  Hyunday Super-NB386S (AMD386sx with Intel chipset)

00F0-00F5 ----  PCjr Disk Controller

00F0-00FF ----  coprocessor (8087..80387)

00F9      ----  Compaq LTE Elite

00FB      ----  Compaq LTE Elite

00F9-00FF ----  PC radio by CoZet Info Systems

0100      ----  3COM 3C509 Ethernet card - ID port

0100-0107 ----  PS/2 POS (Programmable Option Select)

0100-010F ----  CompaQ Tape drive adapter. alternate address at 0300

0108-010F ----  IBM PS/2 - 8 digit LED info panel

0110      ----  3COM 3C509 Ethernet card - ID port (alternate address)

0120      ----  3COM 3C509 Ethernet card - ID port (alternate address)

0130-013F ----  CompaQ SCSI adapter. alternate address at 0330

0130-0133 ----  Adaptec 154xB/154xC SCSI adapter.

0134-0137 ----  Adaptec 154xB/154xC SCSI adapter.

0138-013F ----  PC radio by CoZet Info Systems

0140-014F ----  SCSI (alternate Small Computer System Interface) adapter

0140-0157 ----  RTC (alternate Real Time Clock for XT)   (1st at 0340-0357)

015C-015D ----  Dell Enhanced Parallel Port

015F      ----  ARTEC Handyscanner A400Z.  alternate address at 35F.

0170-0177 ----  HDC 2   (2nd Fixed Disk Controller) (ISA, EISA)

0178-0179 ----  Power Management

0178-017F ----  PC radio by CoZet Info Systems

01CE-01CF ----  ATI Mach32 video chipset - ???

01E8-01EF ----  Headland HL21 & Acer M5105 chipsets - SYSTEM CONTROL

01F0-01F7 ----  HDC 1   (1st Fixed Disk Controller) (ISA, EISA)

01F8      ----  ???

01F9-01FF ----  PC radio by CoZet Info Systems

0200-020F ----  Game port reserved I/O address space

0200-02FF ----  Sunshine uPW48, programmer for EPROM version CPU's 8748/8749

0208-0209 ----  Intel 82C212B "Neat" chipset - EMS emulation control

020C-020F ----  AIMS LAB PC Radio

0210-0217 ----  Expansion unit (XT)

0218-0219 ----  Intel 82C212B "Neat" chipset - EMS emulation control

0220-0223 ---- Sound Blaster / Adlib port (Stereo)

0220-0227 ----  Soundblaster PRO and SSB 16 ASP

0220-022F ----  Soundblaster PRO 2.0

0220-022F ----  Soundblaster PRO 4.0

022F      ----  mc-soundmachine, mc 03-04/1992 - SPEECH I/O

0230-0233 ----  Adaptec 154xB/154xC SCSI adapter.

0234-0237 ----  Adaptec 154xB/154xC SCSI adapter.

0238-023F ----  COM port addresses on UniRAM card by German magazine c't

0238-023x ----  Bus Mouse Port (secondary address)

023C-023x ----  Bus Mouse Port (primary address)

0240-024F ----  Gravis Ultra Sound by Advanced Gravis

0240-0257 ----  RTC (alternate Real Time Clock for XT)   (1st at 0340-0357)

0258-0259 ----  Intel 82C212B "Neat" chipset - EMS emulation control

0258-0259 ---- AT RAMBANK Memory Expansion Board - EXT. MEMORY AND EMS-SUPPORT

0258-025F ----  Intel Above Board

0260-0268  ----  LPT port address on the UniRAM card by German magazine c't

0268-0269 ----  Intel 82C212B "Neat" chipset - EMS emulation control

026E-026F ----  Dell Enhanced Parallel Port

0278      ----  Covox 'Speech Thing' COMPATIBLES

0278-027E ----  parallel printer port, same as 0378 and 03BC

0280       ---- LCD display on Wyse 2108 PC

0280-0288  ---- non-standard COM port addresses (V20-XT by German magazine c't)

0288-028F  ---- non-standard COM port addresses (V20-XT by German magazine c't)

02A0-02A7 ----  Sunshine EW-901BN, EW-904BN

02A2-02A3 ----  MSM58321RS clock

02A8-02A9 ----  Intel 82C212B "Neat" chipset - EMS emulation control

02B0-02BF ----  Trantor SCSI adapter

02B0-02DF ----  alternate EGA,  primary EGA at 03C0

02B8-02B9 ----  Intel 82C212B "Neat" chipset - EMS emulation control

02C0-02Cx ----  AST-clock

02C0-02DF ----  XT-Real Time Clock 2 (default jumpered address)

02E0-02E8 ----  LPT port address on the UniRAM card by German magazine c't

02E0-02EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

02E0-02EF ----  data aquisition  (AT)

02E8      ----  S3 86C928 video controller (ELSA Winner 1000)

02E8-02E9 ----  Intel 82C212B "Neat" chipset - EMS emulation control

02E8-02EF ----  serial port, same as 02F8, 03E8 and 03F8 (COM4)

02E8-02EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

02EA      ----  S3 86C928 video controller (ELSA Winner 1000)

02F0-2F8  ----  LPT port address on the UniRAM card by German magazine c't

02F8-02FF ----  serial port, same as 02E8, 03E8 and 03F8 (COM2)

0300      ----  Award POST Diagnostic

0300-0301 ----  Soundblaster 16 ASP MPU-Midi

0300-???? ----  HP IEC/HP-IB adapter (e.g. for use with tape streamer HP9142)

0300-031F ----  3com Ethernet adapters (default address)

0300-???? ----  NE2000 compatible Ethernet adapters

0300-0303 ----  Panasonic 52x CD-ROM SCSI Miniport

0300-030F ----  Philips CD-ROM player CM50

0300-030F ----  CompaQ Tape drive adapter. alternate address at 0100

0300-031F ----  prototype cards

030C-030F ----  AIMS LAB PC Radio

0310-031F ----  Philips CD-ROM player CM50

0320-0323 ----  XT HDC 1   (Hard Disk Controller)

0324-0327 ----  XT HDC 2   (Hard Disk Controller)

0328-032B ----  XT HDC 3   (Hard Disk Controller)

032C-032F ----  XT HDC 4   (Hard Disk Controller)

0330-0331 ----  MIDI interface

0330-0333 ----  Adaptec 154xB/154xC SCSI adapter. default address.

0330-033F ----  CompaQ SCSI adapter. alternate address at 0130

0330-033F ----  Philips CD-ROM player CM50

0334-0337 ----  Adaptec 154xB/154xC SCSI adapter.

0338      ----  AdLib soundblaster card

0338-033F ----  COM port addresses on UniRAM card by German magazine c't

0340-034F ----  Philips CD-ROM player CM50

0340-034F ----  SCSI (1st Small Computer System Interface) adapter

0340-034F ----  Gravis Ultra Sound by Advanced Gravis

0340-0357 ----  RTC (1st Real Time Clock for XT)

0348-0357 ----  DCA 3278

034C-034F ----  Gravis UltraMax by Advanced Gravis

035A-035B ----  Adaptec AH1520 jumper settings

035F      ----  ARTEC Handyscanner A400Z.  alternate address at 15F.

0360-036F ----  PC network (AT)

0360-036F ----  National Semiconductor DP8390(1)C/NS3249C network chipset

0370-0377 ----  FDC 2  (2nd Floppy Disk Controller)     first FDC at 03F0

0378      ----  Covox 'Speech Thing' COMPATIBLE SPEECH OUTPUT

0378-037A ----  parallel printer port, same as 0278 and 03BC

0380-038F ----  2nd Binary Synchronous Data Link Control adapter (see 03A0)

0388-0389 ---- Sound Blaster / Adlib port - MONO OUTPUT

0388-0389 ---- Soundblaster PRO FM-Chip

0388-038B ---- Soundblaster 16 ASP FM-Chip

0388-038F ----  mc-soundmachine, mc 03-04/1992 - SPEECH I/O

0390-0397 ----  Sunshine EW-901B, EW-904B

0390-039F ----  Cluster adapter (AT)

0398-0399 ----  Dell Enhanced Parallel Port

03A0-03AF ----  1st SDLC (Binary Synchronous Data Link Control adapter)

03B0-03BF ----  MDA  (Monochrome Display Adapter based on 6845)

03BC-03BF ----  PARALLEL PRINTER PORT (MDA's LPT1)

03BF      ----  Hercules configuration switch register

03C0-03C7 ----  Sunshine EW-901, EW-901A, EW-904, EW-904A

03C0-03CF ----  EGA  (1st Enhanced Graphics Adapter)    alternate at 02C0

03CE-03CF ----  Compaq Qvision - Functionality Level

03D0-03DF ----  CGA   (Color Graphics Adapter)

03E0-03E8  ---- LPT port address on the UniRAM card by German magazine c't

03E0-03EF ----  COM port addresses on UniRAM card by German magazine c't

03E8-03EF ----  serial port, same as 02E8, 02F8 and 03F8 (COM3)

03E8-03EF  ----  LPT port address on the UniRAM card by German magazine c't

03F0-03F7 ----  FDC 1  (1st Floppy Disk Controller)     second FDC at 0370

03F8-03FF ----  serial port (8250,8250A,8251,16450,16550,16550A,etc.) COM1

0401-04D6 ----  used by EISA systems only

0461-0462 ----  NMI CONTROL

0464-0465 ----  EISA BUS MASTER STATUS

0481-048B ---- EISA DMA page registers

04C6-04CF ---- EISA DMA count registers

04D0-04D1 ---- EISA IRQ control

04D4-04D6 ---- EISA DMA control

04E0-04FF ---- EISA DMA stop registers

0530-0533 ----  Gravis Ultra Sound Daughter Card by Advanced Gravis

0601      ----  Headland HL21, Acer M5105 chipsets - SYSTEM CONTROL

0620-0627 ----  PC network (adapter 1)

0680-0681 ----  Microchannel POST Diagnostic (write only)

06A0-06A8  ---- non-standard COM port addresses (V20-XT by German magazine c't)

06E2-06E3 ----  data aquisition (adapter 1)

06E8      ----  S3 86C928 video controller (ELSA Winner 1000)

06E8-06EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

0746      ----  Gravis Ultra Sound by Advanced Gravis

0790-0793 ----  cluster (adapter 1)

0800-08FF ----  I/O port access registers for extended CMOS RAM or SRAM

0800-08FF ----  reserved for EISA system motherboard

0A20-0A23 ----  Token Ring (adapter 1)

0AE2-0AE3 ----  cluster (adapter 2)

0AE8      ----  S3 86C928 video controller (ELSA Winner 1000)

0AE8-0AEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

0B90-0B93 ----  cluster (adapter 2)

0C00      ----  EISA??? - PAGE REGISTER

0C00-0CFF ----  reserved for EISA system motherboard

0C7C            bit 7-4 (Compaq)

0C80-0C83 ----  EISA system board ID registers

0CF8      ----  Intel Pentium motherboard ("Neptune" chipset)

0CFA      ----  Intel Pentium motherboard ("Neptune" chipset)

0EE8      ----  S3 86C928 video controller (ELSA Winner 1000)

0EE8-0EEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

1000-10FF ----  available for EISA slot 1

12E8-12EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

1390-1393 ----  cluster (adapter 3)

1400-14FF ----  available for EISA slot 1

16E8-16EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

1800-18FF ----  available for EISA slot 1

1AE8-1AEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

1C00-1CFF ----  available for EISA slot 1

1C65      ----  Compaq Contura Aero

1C80-1C8F ----  VESA XGA Video in EISA slot 1

1C80-1C83       EISA board product ID (board in slot 1)

1C85            Compaq Qvision EISA - Virtual Controller ID

1EE8-1EEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

2000-20FF ----  available for EISA slot 2

2065      ----  Compaq Contura Aero

2100      ----  XGA Video Operating Mode Register

2101      ----  XGA VIdeo Aperture Control

2102-2103 ----  XGA ???

2104      ----  XGA Video Interrupt Enable

2105      ----  XGA Video Interrupt Status

2106      ----  XGA Video Virtual Memory Control

2107      ----  XGA Video Virtual Memory Interrupt Status

2108      ----  XGA Video Aperture Index

2109      ----  XGA Video Memory Access Mode

210A      ----  XGA Video Index for Data

210B      ----  XGA Video Data (byte)

210C-210F ----  XGA Video Data (word/dword)

2110-211F ----  IBM XGA (eXtended Graphics Adapter  8514/A) (second installed)

217A-217B ---- ET4000/W32 CRTC-B/Sprite

22E8-22EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

2390-2393 ----  cluster (adapter 4)

23C0-23CF ----  Compaq QVision - BitBLT engine

2400-24FF ----  available for EISA slot 2

2465      ----  Compaq Contura Aero

27C6      ----  Compaq LTE Lite - LCD TIMEOUT

2800-28FF ----  available for EISA slot 2

28E9      ----  8514/A - WD Escape Functions

2C80-2C8F ----  VESA XGA Video in EISA slot 2 (see 1C80-1C8F)

2C80-2C83 ----  EISA board product ID (board in slot 2)

3000-30FF ----  available for EISA slot 3

3220-3227 ----  serial port 3, description same as 03F8

33C0-33CF ----  Compaq QVision - BitBLT engine

3400-34FF ----  available for EISA slot 3

3510-3513 ----  ESDI primary harddisk controller

3518-351B ----  ESDI secondary harddisk controller

3540-354F ----  IBM SCSI (Small Computer System Interface) adapter

3800-38FF ----  available for EISA slot 3

3C00-3CFF ----  available for EISA slot 3

3C80-3C8F ----  VESA XGA Video in EISA slot 3

3C80-3C83 ----  EISA board product ID (board in slot 3)

4000-40FF ----  available for EISA slot 4

4220-4227 ----  serial port, description same as 03F8

42E0-42EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

42E8      ----  8514/A and hardware-compatible video cards

4400-44FF ----  available for EISA slot 4

46E8      ----  VGA video adapter enable

46E8      ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

4800-48FF ----  available for EISA slot 4

4AE8-4AEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

4C00-4CFF ----  available for EISA slot 4

4C80-4C83       EISA board product ID (board in slot 4)

4C80-4C8F ----  VESA XGA Video in EISA slot 4 (see 3C80-3C8F)

5000-50FF ----  available for EISA slot 5

5220-5227 ----  serial port, description same as 03F8

5400-54FF ----  available for EISA slot 5

5800-58FF ----  available for EISA slot 5

5C00-5CFF ----  available for EISA slot 5

5C80-5C8F ----  VESA XGA Video in EISA slot 5

5C80-5C83       EISA board product ID (board in slot 5)

6000-60FF ----  available for EISA slot 6

62E0-62EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

63C0-63CF ----  Compaq QVision - BitBLT engine

6400-64FF ----  available for EISA slot 6

6800-68FF ----  available for EISA slot 6

6C00-6CFF ----  available for EISA slot 6

6C80-6C83 ----  EISA board product ID (board in slot 6)

6C80-6C8F ----  VESA XGA Video in EISA slot 1

7000-70FF ----  available for EISA slot 7

7400-74FF ----  available for EISA slot 7

7800-78FF ----  available for EISA slot 7

7C00-7CFF ----  available for EISA slot 7

7C80-7C83 ----  EISA board product ID (board in slot 7)

7C80-7C8F ----  VESA XGA Video in EISA slot 7

8000-80FF ----  available for EISA slot 8

82E0-82EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

82E8-82EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

82F8-82FF ----  serial port, description same as 03F8

83C0-83CF ----  Compaq QVision - Line Draw Engine

83C4      ----  Compaq Qvision EISA - Virtual Controller Select

83C6-83C9 ----  Compaq Qvision EISA - DAC color registers

8400-84FF ----  available for EISA slot 8

86E8-86EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

8800-88FF ----  available for EISA slot 8

8AE8-8AEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

8C00-8CFF ----  available for EISA slot 8

8C80-8C83 ----  EISA board product ID (board in slot 8)

8EE8-8EEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

9000-90FF ----  available for EISA slot 9

92E8-92EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

9400-94FF ----  available for EISA slot 9

96E8-96EF ----  8514/A and hardware-compatible video cards

9800-98FF ----  available for EISA slot 9

9AE8-9AE9 ----  8514/A Graphics Processor Status

9C00-9CFF ----  available for EISA slot 9

9C80-9C83 ----  EISA board product ID (board in slot 9)

9EE8      ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

A220      ----  soundblaster support in AMI Hi-Flex BIOS  ????

A2E0-A2EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

A2E8-A2EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

A6E8-A6EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

AAE8-AAEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

AEE8-AEEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

AFFF      ----  VIDEO REGISTER

B220-B227 ----  serial port, description same as 03F8

B2E8-B2EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

B6E8-B6EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

BAE8-BAEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

BEE8-BEEF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

C000-C004 ----  Intel Pentium motherboard ("Neptune" chipset)

C008      ----  Intel Pentium motherboard ("Neptune" chipset)

C050      ----  Intel Pentium motherboard ("Neptune" chipset)

C052      ----  Intel Pentium motherboard ("Neptune" chipset)

C059      ----  Intel Pentium motherboard ("Neptune" chipset)

C065      ----  Intel "Neptune" chipset - MEMORY SIZE???

C200-C204 ----  Intel Pentium motherboard ("Neptune" chipset)

C220-C227 ----  serial port, description same as 03F8

C244      ----  Intel Pentium motherboard ("Neptune" chipset)

C2E0-C2EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

D220-D227 ----  serial port, description same as 03F8

E2E0-E2EF ----  GPIB (General Purpose Interface Bus, IEEE 488 interface)

E2E8-E2EF ----  8514/A and compatible video cards (e.g. ATI Graphics Ultra)

80C00000  Compaq Deskpro 386 system memory board register

C0000000-C000FFFF       Weitek "Abacus" math coprocessor

Chuck Proctor           <71534.2302@CompuServe.COM>

Highest Table Number = P104

Please redistribute all of the files comprising the interrupt list (listed at

Internet: ralf@telerama.lm.com


Memory

MEMORY MAP	Release 47	Last Change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

--------H-M00000000--------------------------

MEM 0000h:0000h R - INTERRUPT VECTOR TABLE

Size:	1024 BYTEs

Note:	see also the main interrupt list

--------b-M0000031D--------------------------

MEM 0000h:031Dh - 1989 AMI 386sx BIOS - USER-DEFINABLE TYPE 47 HARD DISK PARMS

Size:	16 BYTEs

Note:	these fields are used if the AMI BIOS setup is set to use the top of

  the interrupt table for the extended BIOS data area

SeeAlso: MEM 0000h:032Dh,INT 41

--------b-M0000032D--------------------------

MEM 0000h:032Dh - 1989 AMI 386sx BIOS - USER-DEFINABLE TYPE 48 HARD DISK PARMS

Size:	16 BYTEs

Note:	these fields are used if the AMI BIOS setup is set to use the top of

  the interrupt table for the extended BIOS data area

SeeAlso: MEM 0000h:031Dh,INT 46

--------B-M00000400--------------------------

MEM 0000h:0400h - BIOS DATA AREA

Size:	256 BYTEs

Note:	see also the MEM 0040h:xxxxh entries

----------M00000500--------------------------

MEM 0000h:0500h - DATA AREA

Size:	256 BYTEs

----------M00000600--------------------------

MEM 0000h:0600h - MS-DOS 1.x LOAD ADDRESS

----------M00000700--------------------------

MEM 0000h:0700h - MS-DOS 2+ LOAD ADDRESS

----------M00400000--------------------------

MEM 0040h:0000h - BASE I/O ADDRESS OF FIRST SERIAL I/O PORT

Size:	WORD

Notes:	the BIOS sets this word to zero if is unable to find any serial ports

  at the addresses it is programmed to check at boot

DOS and BIOS serial device numbers may be redefined by re-assigning

  these values of the base I/O addresses stored here

SeeAlso: MEM 0040h:0002h,MEM 0040h:0004h,MEM 0040h:0006h,MEM 0040h:0008h

SeeAlso: MEM 0040h:007Ch

----------M00400002--------------------------

MEM 0040h:0002h - BASE I/O ADDRESS OF SECOND SERIAL I/O PORT

Size:	WORD

Note:	the BIOS sets this word to zero if is unable to find more than one

  serial port at the addresses it is programmed to check at boot

SeeAlso: MEM 0040h:0000h,MEM 0040h:0004h,MEM 0040h:0006h,MEM 0040h:000Ah

SeeAlso: MEM 0040h:007Dh

----------M00400004--------------------------

MEM 0040h:0004h - BASE I/O ADDRESS OF THIRD SERIAL I/O PORT

Size:	WORD

Note:	the BIOS sets this word to zero if is unable to find more than two

  serial ports at the addresses it is programmed to check at boot

SeeAlso: MEM 0040h:0000h,MEM 0040h:0002h,MEM 0040h:0006h,MEM 0040h:000Ch

SeeAlso: MEM 0040h:007Eh

----------M00400006--------------------------

MEM 0040h:0006h - BASE I/O ADDRESS OF FOURTH SERIAL I/O PORT

Size:	WORD

Note:	the BIOS sets this word to zero if is unable to find more than three

  serial ports at the addresses it is programmed to check at boot

SeeAlso: MEM 0040h:0000h,MEM 0040h:0002h,MEM 0040h:0004h,MEM 0040h:0008h

SeeAlso: MEM 0040h:007Fh

----------M00400008--------------------------

MEM 0040h:0008h - BASE I/O ADDRESS OF FIRST PARALLEL I/O PORT

Size:	WORD

Notes:	the BIOS POST routine fills in the parallel port address fields in

  turn as it finds parallel ports.  All fields beyond the last one

  for which a valid parallel port was found are set to zero.

the BIOS INT 17 handler uses these fields to address the parallel

  ports

SeeAlso: MEM 0040h:0000h,MEM 0040h:000Ah,MEM 0040h:000Ch

----------M0040000A--------------------------

MEM 0040h:000Ah - BASE I/O ADDRESS OF SECOND PARALLEL I/O PORT

Size:	WORD

Note:	zero if fewer than two parallel ports installed

SeeAlso: MEM 0040h:0002h,MEM 0040h:0008h,MEM 0040h:000Ch

----------M0040000C--------------------------

MEM 0040h:000Ch - BASE I/O ADDRESS OF THIRD PARALLEL I/O PORT

Size:	WORD

Note:	zero if fewer than three parallel ports installed

SeeAlso: MEM 0040h:0004h,MEM 0040h:0008h,MEM 0040h:000Ah,MEM 0040h:000Eh

----------M0040000E--------------------------

MEM 0040h:000Eh - BASE I/O ADDRESS OF FOURTH PARALLEL I/O PORT (pre-PS/2)

Size:	WORD

Note:	zero if fewer than four parallel ports installed

SeeAlso: MEM 0040h:0008h,MEM 0040h:000Ah,MEM 0040h:000Eh"BIOS DATA"

----------M0040000E--------------------------

MEM 0040h:000Eh - SEGMENT OF EXTENDED BIOS DATA SEGMENT (PS/2, newer BIOSes)

Size:	WORD

SeeAlso: MEM 0040h:000Eh"PARALLEL"

Format of Extended BIOS Data Area:

Offset	Size	Description	(Table M001)

 00h	BYTE	length of EBDA in kilobytes

 01h 15 BYTEs	reserved

 17h	BYTE	number of entries in POST error log (0-5)

 18h  5 WORDs	POST error log (each word is a POST error number)

 22h	DWORD	Pointing Device Driver entry point

 26h	BYTE	Pointing Device Flags 1 (see #M002)

 27h	BYTE	Pointing Device Flags 2 (see #M003)

 28h  8 BYTEs	Pointing Device Auxiliary Device Data

 30h	DWORD	Vector for INT 07h stored here during 80387 interrupt

 34h	DWORD	Vector for INT 01h stored here during INT 07h emulation

 38h	BYTE	Scratchpad for 80287/80387 interrupt code

 39h	WORD	Timer3: Watchdog timer initial count

 3Bh	BYTE	??? seen non-zero on Model 30

 3Ch	BYTE	???

 3Dh 16 BYTEs	Fixed Disk parameter table for drive 0 (for older machines

  which don't directly support the installed drive)

 4Dh 16 BYTEs	Fixed Disk parameter table for drive 1 (for older machines

  which don't directly support the installed drive)

 5Dh-67h	???

 68h	BYTE	cache control

bits 7-2 unused (0)

bit 1: CPU cache failed test

bit 0: CPU cache disabled

 69h-6Bh	???

 6Ch	BYTE	Fixed disk: (=FFh on ESDI systems)

    bits 7-4: Channel number 00-0Fh

    bits 3-0: DMA arbitration level 00-0Eh

 6Dh	BYTE	???

 6Eh	WORD	current typematic setting (see INT 16/AH=03h)

 70h	BYTE	number of attached hard drives

 71h	BYTE	hard disk 16-bit DMA channel

 72h	BYTE	interrupt status for hard disk controller (1Fh on timeout)

 73h	BYTE	hard disk operation flags

bit 7: controller issued operation-complete INT 76h

bit 6: controller has been reset

bits 5-0: unused (0)

 74h	DWORD	old INT 76h vector

 78h	BYTE	hard disk DMA type

typically 44h for reads and 4Ch for writes

 79h	BYTE	status of last hard disk operation

 7Ah	BYTE	hard disk timeout counter

 7Bh-7Dh

 7Eh  8 WORDs	storage for hard disk controller status

 8Eh-E6h

 E7h	BYTE	floppy drive type

bit 7: drive(s) present

bits 6-2: unused (0)

bit 1: drive 1 is 5.25" instead of 3.5"

bit 0: drive 0 is 5.25"

 E8h  4 BYTEs	???

 ECh	BYTE	hard disk parameters flag

bit 7: parameters loaded into EBDA

bits 6-0: unused (0)

 EDh	BYTE	???

 EEh	BYTE	CPU family ID (03h = 386, 04h = 486, etc.) (see INT 15/AH=C9h)

 EFh	BYTE	CPU stepping (see INT 15/AH=C9h)

 F0h 39 BYTEs	???

117h	WORD	keyboard ID (see INT 16/AH=0Ah)

(most commonly 41ABh)

119h	BYTE	???

11Ah	BYTE	non-BIOS INT 18h flag

bits 7-1: unused (0)

bit 0: set by BIOS before calling user INT 18h at offset 11Dh

11Bh  2 BYTE	???

11Dh	DWORD	user INT 18h vector if BIOS has re-hooked INT 18h

121h and up:	??? seen non-zero on Model 60

3F0h	BYTE	Fixed disk buffer (???)

Bitfields for Pointing Device Flags 1:

Bit(s)	Description	(Table M002)

 7	command in progress

 6	resend byte (FAh) received

 5	acknowledge byte (FEh) received

 4	error byte (FCh) received

 3	unexpected value received

 2-0	index count for auxiliary device data at 28h

SeeAlso: #M001,#M003

Bitfields for Pointing Device Flags 2:

Bit(s)	Description	(Table M003)

 7	device driver far call flag

 6-3	reserved

 2-0	package size (number of bytes received) - 1

SeeAlso: #M001,#M002

----------M00400010--------------------------

MEM 0040h:0010h - INSTALLED HARDWARE

Size:	WORD

Bitfields for BIOS-detected installed hardware:

Bit(s)	Description	(Table M004)

 15-14	number of parallel devices

00 or 11 sometimes used to indicate four LPT ports

 13	(Convertible, PS/2-55LS) internal modem

 12	game port installed

 11-9	number of serial devices

000 or 111 sometimes used to indicate eight COM ports

 8	reserved

 7-6	number of floppy disk drives (minus 1)

 5-4	initial video mode

00 EGA,VGA,PGA, or other with on-board video BIOS

01 40x25 CGA color

10 80x25 CGA color

11 80x25 mono text

 3-2	(PC only) RAM on motherboard

00 = 16K, 01 = 32K, 10 = 48K, 11 = 64K

 2	(pre-PS/2 except PC) reserved

(PS/2, newer BIOSes) pointing device installed

 1	math coprocessor installed

 0	floppy disk drives are installed

booted from floppy

----------M00400012--------------------------

MEM 0040h:0012h - Convertible - POST STATUS

Size:	BYTE

----------M00400012--------------------------

MEM 0040h:0012h U - AT - MANUFACTURING TEST INITIALIZATION FLAGS

Size:	BYTE

Bitfields for AT manufacturing test initialization flags:

Bit(s)	Description	(Table M005)

 0	start in manufacturing test mode rather than normal operation

 1-7	unused

----------M00400012--------------------------

MEM 0040h:0012h - MCA - MANUFACTURING TEST

Size:	BYTE

Bitfields for MCA manufacturing test flags :

Bit(s)	Description	(Table M006)

 7	POST flag, ???

 6-5	unused

 4	POST flag, slot 4 has adapter identifier EDAFh

 3	POST flag, 80x25 color video

 2	POST flag, ???

 1	unused

 0	manufacturing test mode rather than normal operation

----------M00400012--------------------------

MEM 0040h:0012h - PS/2 Model 25 - POST SYSTEM FLAG

Size:	BYTE

Bitfields for PS/2 Model 25 POST sytem flag :

Bit(s)	Description	(Table M007)

 0	optional memory failed; memory remapped

 1	real-time clock installed

----------M00400013--------------------------

MEM 0040h:0013h - BASE MEMORY SIZE IN KBYTES

Size:	WORD

----------M00400015--------------------------

MEM 0040h:0015h - PC, XT - ADAPTER MEMORY SIZE IN KBYTES

Size:	WORD

----------M00400015--------------------------

MEM 0040h:0015h U - AT - MANUFACTURING TEST SCRATCH PAD

Size:	BYTE

----------M00400015--------------------------

MEM 0040h:0015h - Compaq Deskpro 386 - PREVIOUS SCAN CODE

Size:	BYTE

----------M00400016--------------------------

MEM 0040h:0016h U - AT - MANUFACTURING TEST SCRATCH PAD

Size:	BYTE

----------M00400016--------------------------

MEM 0040h:0016h U - PS/2 Model 30 - BIOS CONTROL FLAGS

Size:	BYTE

----------M00400016--------------------------

MEM 0040h:0016h - Compaq Deskpro 386 - KEYCLICK VOLUME

Size:	BYTE

Range:	00h-7Fh

--------K-M00400017--------------------------

MEM 0040h:0017h - KEYBOARD - STATUS FLAGS 1

Size:	BYTE

SeeAlso: MEM 0040h:0018h,INT 16/AH=01h

Bitfields for keyboard status flags 1:

Bit(s)	Description	(Table M008)

 7	INSert active

 6	Caps Lock active

 5	Num Lock active

 4	Scroll Lock active

 3	either Alt pressed

 2	either Ctrl pressed

 1	Left Shift pressed

 0	Right Shift pressed

SeeAlso: #M009

--------K-M00400018--------------------------

MEM 0040h:0018h - KEYBOARD - STATUS FLAGS 2

Size:	BYTE

SeeAlso: MEM 0040h:0017h,INT 16/AH=01h

Bitfields for keyboard status flags 2 :

Bit(s)	Description	(Table M009)

 7	INSert pressed

 6	Caps Lock pressed

 5	Num Lock pressed

 4	Scroll Lock pressed

 3	Pause state active

 2	Sys Req pressed

 1	Left Alt pressed

 0	Left Ctrl pressed

SeeAlso: #M008

--------K-M00400019--------------------------

MEM 0040h:0019h - KEYBOARD - ALT-nnn KEYPAD WORKSPACE

Size:	BYTE

Desc:	holds the current value of an Alt-NNN keypad sequence; when Alt is

  released and this byte is non-zero, the appropriate character is

  placed in the keyboard buffer

SeeAlso: INT 16/AH=00h

--------K-M0040001A--------------------------

MEM 0040h:001Ah - KEYBOARD - POINTER TO NEXT CHARACTER IN KEYBOARD BUFFER

Size:	WORD

SeeAlso: MEM 0040h:001Ch,MEM 0040h:0080h,MEM 0040h:0082h,INT 16/AH=00h

--------K-M0040001C--------------------------

MEM 0040h:001Ch - KEYBOARD - POINTER TO FIRST FREE SLOT IN KEYBOARD BUFFER

Size:	WORD

SeeAlso: MEM 0040h:001Ah,MEM 0040h:0080h,MEM 0040h:0082h,INT 16/AH=00h

--------K-M0040001E--------------------------

MEM 0040h:001Eh - KEYBOARD - DEFAULT KEYBOARD CIRCULAR BUFFER

Size:	16 WORDs

SeeAlso: MEM 0040h:001Ah,MEM 0040h:001Ch,MEM 0040h:0080h,MEM 0040h:0082h

SeeAlso: INT 16/AH=00h

----------M0040003E--------------------------

MEM 0040h:003Eh - DISKETTE - RECALIBRATE STATUS

Size:	BYTE

SeeAlso: MEM 0040h:003Fh,MEM 0040h:0040h

Bitfields for diskette recalibrate status:

Bit(s)	Description	(Table M010)

 7	diskette hardware interrupt occurred

 6-4	reserved

 3	recalibrate diskette 3 (PC,XT only)

 2	recalibrate diskette 2 (PC,XT only)

 1	recalibrate diskette 1

 0	recalibrate diskette 0

----------M0040003F--------------------------

MEM 0040h:003Fh - DISKETTE - MOTOR STATUS

Size:	BYTE

SeeAlso: MEM 0040h:003Eh,MEM 0040h:0040h

Bitfields for diskette motor status:

Bit(s)	Description	(Table M011)

 7	current operation is write or format, rather than read or verify

 6	reserved (DMA enabled on 82077)

 5-4	diskette drive number selected (0-3)

 3	diskette 3 motor on (PC,XT only)

 2	diskette 2 motor on (PC,XT only)

 1	diskette 1 motor on

 0	diskette 0 motor on

----------M00400040--------------------------

MEM 0040h:0040h - DISKETTE - MOTOR TURN-OFF TIMEOUT COUNT

Size:	BYTE

Desc:	number of clock ticks until diskette motor is turned off

Note:	the typical implementation of the timeout is to have the INT 08

  handler decrement this byte on every clock tick, and force the

  diskette motor off if the result is equal to zero

SeeAlso: MEM 0040h:003Eh,MEM 0040h:003Fh,MEM 0040h:0041h

----------M00400041--------------------------

MEM 0040h:0041h - DISKETTE - LAST OPERATION STATUS

Size:	BYTE

SeeAlso: MEM 0040h:003Eh

Bitfields for diskette last operation status:

Bit(s)	Description	(Table M012)

 7	drive not ready

 6	seek error

 5	general controller failure

 4-0	error reason

00h no error

01h invalid request/parameter

02h address mark not found

03h write-protect error

04h sector not found

06h diskette change line active

08h DMA overrun

09h DMA across 64k boundary

0Ch media type unknown

10h CRC error on read

Note:	the following values for this byte differ somewhat from the

  bitfield definition above:

    30h drive does not support media sense

    31h no media in drive

    32h drive does not support media type

    AAh diskette drive not ready

----------M00400042--------------------------

MEM 0040h:0042h - DISK - FLOPPY/HARD DRIVE STATUS/COMMAND BYTES

Size:	7 BYTEs

    42h BYTE	XT: command byte to hard disk controller

AT: write precompensation cylinder number / 4

    43h	BYTE	XT: bit 5 = drive number, bits 3-0=head number

AT: sector count

    44h BYTE	XT: bits 6,7 = high bits of track, bits 5-0 = start sector-1

AT: starting sector

    45h BYTE	low byte of track number

    46h BYTE	XT: sector count

AT: high bits of track number

    47h BYTE	XT: controlbyte from HD parameters (step rate,...)

AT: 101DHHHH, D=drive number, HHHH=head number

    48h BYTE	XT: INT 13h subfunction number

AT: comand byte to hard disk controller

----------M00400042--------------------------

MEM 0040h:0042h - DISK CONTROLLER STATUS REGISTER 0

Size:	BYTE

Bitfields for diskette controller status register 0:

Bit(s)	Description	(Table M013)

 7-6	interrupt code

00 normal completion

01 abnormal termination during execution

10 invalid command

11 abnormal termination: ready line on/diskette change

 5	requested seek complete

 4	drive fault

 3	drive not ready

 2	head state at time of interrupt

 1-0	selected drive (drives 2&3 on PC,XT only)

----------M00400043--------------------------

MEM 0040h:0043h - DISK CONTROLLER STATUS REGISTER 1

Size:	BYTE

Bitfields for diskette controller status register 0:

Bit(s)	Description	(Table M014)

 7	attempted access beyon last cylinder

 6	unused

 5	CRC error on read

 4	DMA overrun

 3	unused

 2	data error

 1	disk write protected

 0	missing address mark

----------M00400044--------------------------

MEM 0040h:0044h - DISK CONTROLLER STATUS REGISTER 2

Size:	BYTE

Bitfields for diskette controller status register 0:

Bit(s)	Description	(Table M015)

 7	unused

 6	found deleted data address mark

 5	CRC error in data field

 4	wrong cylinder number read

 3	verify equal

 2	can't find sector matching verify condition

 1	bad cylinder

 0	unable to find address mark

----------M00400049--------------------------

MEM 0040h:0049h - VIDEO - CURRENT VIDEO MODE

Size:	BYTE

SeeAlso: MEM 0040h:004Ah,INT 10/AH=00h

----------M0040004A--------------------------

MEM 0040h:004Ah - VIDEO - COLUMNS ON SCREEN

Size:	WORD

SeeAlso: MEM 0040h:0049h,MEM 0040h:004Ch,MEM 0040h:004Eh

----------M0040004C--------------------------

MEM 0040h:004Ch - VIDEO - PAGE (REGEN BUFFER) SIZE IN BYTES

Size:	WORD

SeeAlso: MEM 0040h:004Ah,MEM 0040h:004Eh,MEM 0040h:0050h

----------M0040004E--------------------------

MEM 0040h:004Eh - VIDEO - CURRENT PAGE START ADDRESS IN REGEN BUFFER

Size:	WORD

SeeAlso: MEM 0040h:004Ch,MEM 0040h:0050h,MEM 0040h:0062h

----------M00400050--------------------------

MEM 0040h:0050h - VIDEO - CURSOR POSITIONS

Size:	8 WORDs

Desc:	contains row and column position for the cursors on each of eight

  video pages

SeeAlso: MEM 0040h:004Eh,MEM 0040h:0060h

----------M00400060--------------------------

MEM 0040h:0060h - VIDEO - CURSOR TYPE

Size:	WORD	(big-endian)

Desc:	contains cursor start scan line and cursor end scan line

SeeAlso: MEM 0040h:0050h,MEM 0040h:0062h,INT 10/AH=03h

----------M00400062--------------------------

MEM 0040h:0062h - VIDEO - CURRENT PAGE NUMBER

Size:	BYTE

SeeAlso: MEM 0040h:004Eh,MEM 0040h:0063h

----------M00400063--------------------------

MEM 0040h:0063h - VIDEO - CRT CONTROLLER BASE I/O PORT ADDRESS

Size:	WORD

Note:	normally 03B4h for mono and 03D4h for color video boards

SeeAlso: MEM 0040h:0065h,MEM 0040h:0066h

----------M00400065--------------------------

MEM 0040h:0065h - VIDEO - CURRENT MODE SELECT REGISTER

Size:	BYTE

Desc:	contains last value written to I/O port 03B8h / 03D8h

SeeAlso: MEM 0040h:0063h,MEM 0040h:0066h

Bitfields for current video mode select register:

Bit(s)	Description	(Table M016)

 7-6	unused

 5	attribute bit 7 controls blinking instead of background

 4	mode 6 graphics in monochrome

 3	video signal enabled

 2	monochrome

 1	graphics

 0	80x25 text

----------M00400066--------------------------

MEM 0040h:0066h - VIDEO - CURRENT SETTING OF CGA PALETTE REGISTER

Size:	BYTE

Desc:	contains the last value written to I/O port 03D9h

SeeAlso: MEM 0040h:0063h,MEM 0040h:0065h,INT 10h/AH=0Bh/BH=01h

Bitfields for CGA palette register:

Bit(s)	Description	(Table M017)

 7-6	unused

 5	palette (0/1)

 4	intense background colors in text mode

 3	intense border color (40x25) / background color (mode 5)

 2	red

 1	green

 0	blue

----------M00400067--------------------------

MEM 0040h:0067h - PC only - CASSETTE TIME COUNT

Size:	WORD

SeeAlso: INT 15/AH=00h

----------M00400067--------------------------

MEM 0040h:0067h - RESET RESTART ADDRESS

Size:	DWORD

Desc:	this address stores the address at which to resume execution after a

  CPU reset (or jump to F000h:FFF0h) when certain magic values are

  stored at 0040h:0072h or in CMOS RAM location 0Fh

SeeAlso: MEM 0040h:0072h,MEM F000h:FFF0h,CMOS 0Fh,INT 19

----------M00400069--------------------------

MEM 0040h:0069h	- CASSETTE (PC only) - CASSETTE CRC REGISTER

Size:	WORD

SeeAlso: MEM 0040h:006Bh"CASSETTE"

----------M00400069--------------------------

MEM 0040h:0069h - V20-XT-BIOS - KEY REPEAT

Size:	BYTE

Bitfields for V20-XT-BIOS key repeat flags:

Bit(s)	Description	(Table M018)

 7	key repeat disabled

 6	Ctrl-Alt pressed instead of just Alt

----------M0040006B--------------------------

MEM 0040h:006Bh - CASSETTE (PC only) - LAST VALUE READ FROM CASSETTE

Size:	BYTE

SeeAlso: MEM 0040h:0069h"CASSETTE"

----------M0040006B--------------------------

MEM 0040h:006Bh - POST LAST UNEXPECTED INTERRUPT (XT and later)

Size:	BYTE

Desc:   this is a bitmask of IRQs which have occurred while the corresponding

  interrupt vector points at the default system BIOS handler

  (bit 0 = IRQ0 to bit 7 = IRQ7)

----------M0040006C--------------------------

MEM 0040h:006Ch - TIMER TICKS SINCE MIDNIGHT

Size:	DWORD

SeeAlso: MEM 0040h:0070h,INT 1A/AH=00h

----------M00400070--------------------------

MEM 0040h:0070h - TIMER OVERFLOW

Size:	BYTE

Desc:	non-zero if timer has counted past midnight since last call to

  INT 1A/AH=00h

Note:	the original IBM BIOS, and thus most other BIOSes, sets this byte to

  01h at midnight; a few (such as the Eagle PC-2) increment it each

  time midnight is passed.  The former behavior results in lost days

  if multiple midnights pass between "get-time" calls while the machine

  is powered up.

SeeAlso: MEM 0040h:006Ch

----------M00400071--------------------------

MEM 0040h:0071h - Ctrl-Break FLAG

Size:	BYTE

Desc:	bit 7 is set when Ctrl-Break has been pressed

----------M00400072--------------------------

MEM 0040h:0072h - POST RESET FLAG

Size:	WORD

Desc:	specify the action the BIOS should take at the beginning of the

  power-on self-test when the machine is reset

(Table M019)

Values for POST reset flag:

 0000h	cold boot

 0064h	Burn-in mode

 1234h	to bypass memory test (warm boot)

 4321h	[PS/2 except Mod 25,30] to preserve memory

 5678h	[Conv] system suspended

 9ABCh	[Conv] manufacturing test mode

 ABCDh	[Conv] POST loop mode

----------M00400074--------------------------

MEM 0040h:0074h - FIXED DISK LAST OPERATION STATUS (except ESDI drives)

Size:	BYTE

SeeAlso: INT 13/AH=01h

(Table M020)

Values for fixed disk last operation status:

 00h	no error

 01h	invalid function request

 02h	address mark not found

 03h	write protect error

 04h	sector not found

 05h	reset failed

 06h	diskette removed

 07h	drive parameter activity failed

 08h	DMA overrun

 09h	DMA data boundary error

 0Ah	bad sector flag detected

 0Bh	bad track detected

 0Ch	requested diskette media type not found

(PS/2 or extended BIOS only) unsupported track

 0Dh	invalid number of sectors for Format

 0Eh	control data address mark detected

 0Fh	DMA arbitration level out of range

 10h	uncorrectable ECC or CRC error

 11h	ECC corrected data error

 20h	general controller failed

 40h	seek failed

 80h	time out

 AAh	drive not ready

 BBh	undefined error

 CCh	write fault on selected drive

 E0h	status error/error register is zero

 FFh	sense failed

----------M00400074--------------------------

MEM 0040h:0074h - WD1002-27X SuperBIOS - TOTAL DRIVES, FIRST CONTROLLER ONLY

Size:	BYTE

SeeAlso: MEM 0040h:0075h"SuperBIOS",MEM 0040h:0076h"SuperBIOS"

----------M00400075--------------------------

MEM 0040h:0075h - FIXED DISK - NUMBER OF FIXED DISK DRIVES

Size:	BYTE

SeeAlso: MEM 0040h:0076h"FIXED DISK",MEM 0040h:0077h"FIXED DISK"

----------M00400075--------------------------

MEM 0040h:0075h - WD1002-27X SuperBIOS - TOTAL FIXED DRIVES, BOTH CONTROLLERS

Size:	BYTE

SeeAlso: MEM 0040h:0074h"SuperBIOS",MEM 0040h:0076h"SuperBIOS"

----------M00400076--------------------------

MEM 0040h:0076h - FIXED DISK - CONTROL BYTE    {IBM document only for XT}

Size:	BYTE

SeeAlso: MEM 0040h:0075h"FIXED DISK",MEM 0040h:0077h"FIXED DISK"

----------M00400076--------------------------

MEM 0040h:0076h - XT: hard disk controller's I/O address (Western Digital)

Size:	BYTE

----------M00400076--------------------------

MEM 0040h:0076h - WD1002-27X SuperBIOS - USED IN TRACK RECALCULATION

Size:	BYTE

SeeAlso: MEM 0040h:0074h"SuperBIOS",MEM 0040h:0075h"SuperBIOS"

SeeAlso: MEM 0040h:0077h"SuperBIOS"

----------M00400077--------------------------

MEM 0040h:0077h	- FIXED DISK - I/O port offset {IBM document only for XT}

Size:	BYTE

SeeAlso: MEM 0040h:0075h"FIXED DISK",MEM 0040h:0076h"FIXED DISK"

----------M00400077--------------------------

MEM 0040h:0077h - WD1002-27X SuperBIOS - USED IN TRACK RECALCULATION

Size:	BYTE

SeeAlso: MEM 0040h:0076h"SuperBIOS"

----------M00400078--------------------------

MEM 0040h:0078h - PARALLEL DEVICE 1 TIME-OUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0079h,MEM 0040h:007Ah

----------M00400079--------------------------

MEM 0040h:0079h - PARALLEL DEVICE 2 TIME-OUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0078h,MEM 0040h:007Ah

----------M0040007A--------------------------

MEM 0040h:007Ah - PARALLEL DEVICE 3 TIME-OUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0078h,MEM 0040h:0079h,MEM 0040h:007Bh"PARALLEL"

----------M0040007B--------------------------

MEM 0040h:007Bh - PARALLEL DEVICE 4 TIME-OUT COUNTER (pre-PS, PS Models 25,30)

Size:	BYTE

SeeAlso: MEM 0040h:0078h,MEM 0040h:007Ah,MEM 0040h:007Bh"INT 4Bh"

----------M0040007B--------------------------

MEM 0040h:007Bh - INT 4Bh FLAGS (PS2 and newer)

Size:	BYTE

Bitfields for INT 4Bh flags:

Bit(s)	Description	(Table M021)

 7-6	reserved

 5	set if Virtual DMA Spec supported [PS] (see INT 4B)

 4	reserved

 3	set if INT 4Bh intercepted and must be chained

 2	reserved

 1	set if Generic SCSI CBIOS services available on INT 4Bh

 0	reserved

----------M0040007C--------------------------

MEM 0040h:007Ch - SERIAL DEVICE 1 TIMEOUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0000h,MEM 0040h:007Dh,MEM 0040h:007Eh,MEM 0040h:007Fh

----------M0040007D--------------------------

MEM 0040h:007Dh - SERIAL DEVICE 2 TIMEOUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0002h,MEM 0040h:007Ch,MEM 0040h:007Eh,MEM 0040h:007Fh

----------M0040007E--------------------------

MEM 0040h:007Eh - SERIAL DEVICE 3 TIMEOUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0004h,MEM 0040h:007Ch,MEM 0040h:007Dh,MEM 0040h:007Fh

----------M0040007F--------------------------

MEM 0040h:007Fh - SERIAL DEVICE 4 TIMEOUT COUNTER

Size:	BYTE

SeeAlso: MEM 0040h:0006h,MEM 0040h:007Ch,MEM 0040h:007Dh,MEM 0040h:007Eh

----------M00400080--------------------------

MEM 0040h:0080h - KEYBOARD BUFFER START OFFSET FROM SEGMENT 40h (normally 1Eh)

Size:	WORD

SeeAlso: MEM 0040h:001Ah,MEM 0040h:001Eh,MEM 0040h:0082h

----------M00400082--------------------------

MEM 0040h:0082h - KEYBOARD BUFFER END+1 OFFSET FROM SEGMENT 40h (normally 3Eh)

Size:	WORD

Note:	XT BIOS dated 11/08/82 ends here

SeeAlso: MEM 0040h:001Ch,MEM 0040h:003Eh,MEM 0040h:0080h

----------M00400084--------------------------

MEM 0040h:0084h - VIDEO (EGA/MCGA/VGA) - ROWS ON SCREEN MINUS ONE

Size:	BYTE

----------M00400085--------------------------

MEM 0040h:0085h - VIDEO (EGA/MCGA/VGA) - CHARACTER HEIGHT IN SCAN-LINES

Size:	WORD

----------M00400087--------------------------

MEM 0040h:0087h - VIDEO (EGA/VGA) CONTROL: [MCGA: =00h]

Size:	BYTE

Bitfields for EGA/VGA Video control flags:

Bit(s)	Description	(Table M022)

 7	do not to clear RAM on mode set (see INT 10h, AH=00h)

 6-5	RAM on adapter = (this field + 1) * 64K

 4	reserved

 3	EGA/VGA video system INactive

 2	wait for display enable

 1	mono monitor

 0	alphanumeric cursor emulation DISabled

When enabled, text mode cursor size (INT 10,AH=01h) settings looking

 like CGA ones are translated to equivalent EGA/VGA ones.

----------M00400088--------------------------

MEM 0040h:0088h - VIDEO (EGA/VGA) SWITCHES: [MCGA: reserved]

Size:	BYTE

SeeAlso: MEM 0040h:0087h,MEM 0040h:0088h

Bitfields for EGA/VGA Video switches:

Bit(s)	Description	(Table M023)

 7-4	power-on state of feature connector bits 3-0

 3-0	configuration switches 4-1 (=0 on, =1 off) (see #M024)

Note:	when bit 4 of 0040h:0089h is 0, VGA emulates 350-line EGA if this

  byte is x3h or x9h, otherwise emulates 200-line CGA in 400-line

  double scan. VGA resets this byte to x9h after the mode set.

See also note for 0040h:0089h.

(Table M024)

Values for EGA/VGA configuration switches:

 00h Pri MDA,	Sec EGA+old color display 40 x 25

 01h Pri MDA,	Sec EGA+old color display 80 x 25

 02h Pri MDA,	Sec EGA+ECD normal mode (CGA emul)

 03h Pri MDA,	Sec EGA+ECD enhanced mode

 04h Pri CGA 40 x 25,	Sec EGA mono display

 05h Pri CGA 80 x 25,	Sec EGA mono display

 06h Pri EGA+old color display 40 x 25, Sec MDA

 07h Pri EGA+old color display 80 x 25, Sec MDA

 08h Pri EGA+ECD normal mode (CGA emul), Sec MDA

 09h Pri EGA+ECD enhanced mode,	Sec MDA

 0Ah Pri EGA mono display,	Sec CGA 40 x 25

 0Bh Pri EGA mono display,	Sec CGA 80 x 25

SeeAlso: #M023

----------M00400089--------------------------

MEM 0040h:0089h U - VIDEO (MCGA/VGA) - MODE-SET OPTION CONTROL

Size:	BYTE

Bitfields for Video mode-set option control:

Bit(s)	Description	(Table M025)

 7,4	requested scan lines

0 0  350-line mode requested

0 1  400-line mode at next mode set

1 0  200-line mode requested

1 1  reserved

Note:	Apparently VGA BIOS mode set disregards bit 7 and uses

  byte 40h:88h to determine 200/350 selection when bit 4

  is zero. Presumably bit 7 is a convenience for other

  purposes. Bit 7 is reset to zero after the mode set.

 6	display switching enabled

 5	reserved

 4	if set:   use 400-line mode at next mode set

if clear: [VGA] emulate EGA at next mode set

[MCGA] emulate CGA, digital monitor, 200 lines, 8x8 text

Note: this bit is set by the video mode set on VGA, unchanged on MCGA

 3	default palette loading DISabled at mode set

 2	mono display

 1	gray scale summing enabled

 0	[VGA] =1 if VGA active, =0 if not

[MCGA] reserved, zero

Note:	the Tseng ET4000 BIOS v3.00 uses bits 6-4 of 88h and bits 6-5 of 89h

  to specify graphics-mode refresh rates as follows

88h/6	640x480:  1 for 72Hz,0 for 60Hz

88h/5+89h/6	800x600:  00  60Hz

  01  56Hz

  11  72Hz

88h/4+89h/5	1024x768: 00  interlaced

  01  60Hz

  10  72Hz???

  11  70Hz

----------M0040008A--------------------------

MEM 0040h:008Ah U - VIDEO (MCGA/VGA) - INDEX INTO DISPLAY COMBINATION CODE TBL

Size:	BYTE

----------M0040008B--------------------------

MEM 0040h:008Bh - PC, PCjr, PC/XT 11/8/82, Convertible - RESERVED

Size:	11 BYTEs

----------M0040008B--------------------------

MEM 0040h:008Bh - DISKETTE MEDIA CONTROL

Size:	BYTE

Bitfields for diskette media control:

Bit(s)	Description	(Table M026)

 7-6	last data rate set by controller

00=500kbps, 01=300kbps, 10=250kbps, 11=1Mbps

 5-4	last diskette drive step rate selected

00=0Ch, 01=0Dh, 10=0Eh, 11=0Ah

 3-2	{data rate at start of operation}

 1-0	reserved

Note:	EHD BIOS sets this byte to 01h and never reads it back

----------M0040008C--------------------------

MEM 0040h:008Ch - FIXED DISK - CONTROLLER STATUS [not XT]

Size:	BYTE

SeeAlso: MEM 0040h:008Dh,MEM 0040h:008Eh

----------M0040008D--------------------------

MEM 0040h:008Dh - FIXED DISK - CONTROLLER ERROR STATUS [not XT]

Size:	BYTE

SeeAlso: MEM 0040h:008Ch,MEM 0040h:008Eh

----------M0040008E--------------------------

MEM 0040h:008Eh - FIXED DISK - INTERRUPT CONTROL [not XT]

Size:	BYTE

Note:	cleared to 00h at start of disk operation, set to FFh by IRQ14

  handler when hard disk controller completes command

SeeAlso: MEM 0040h:008Ch,MEM 0040h:008Dh,MEM 0040h:008Fh

----------M0040008F--------------------------

MEM 0040h:008Fh U - DISKETTE CONTROLLER INFORMATION [not XT]

Size:	BYTE

SeeAlso: MEM 0040h:008Ch,MEM 0040h:008Dh,MEM 0040h:008Eh

Bitfields for diskette controller information:

Bit(s)	Description	(Table M027)

 7	reserved

 6	=1 drive 1 determined

 5	=1 drive 1 is multi-rate, valid if drive determined

 4	=1 drive 1 supports 80 tracks, always valid

 3	reserved

 2	=1 drive 0 determined

 1	=1 drive 0 is multi-rate, valid if drive determined

 0	=1 drive 0 supports 80 tracks, always valid

Note:	EHD BIOS sets this byte to 01h and never alters it again

----------M00400090--------------------------

MEM 0040h:0090h - DISKETTE DRIVE 0 MEDIA STATE

Size:	BYTE

SeeAlso: MEM 0040h:0091h

Bitfields for diskette drive media state:

Bit(s)	Description	(Table M028)

 7-6	data rate

00=500kbps, 01=300kbps, 10=250kbps, 11=1Mbps

 5	double stepping required (e.g. 360kB in 1.2MB)

 4	media type established

 3	drive capable of supporting 4MB media

 2-0	on exit from BIOS, contains

000 trying 360kB in 360kB

001 trying 360kB in 1.2MB

010 trying 1.2MB in 1.2MB

011 360kB in 360kB established

100 360kB in 1.2MB established

101 1.2MB in 1.2MB established

110 reserved

111 all other formats/drives

SeeAlso: #M029,#M030

----------M00400091--------------------------

MEM 0040h:0091h - DISKETTE DRIVE 1 MEDIA STATE

Size:	BYTE

SeeAlso: MEM 0040h:0090h,#M028

----------M00400092--------------------------

MEM 0040h:0092h U - DISKETTE DRIVE 0 MEDIA STATE AT START OF OPERATION

Size:	BYTE

Note:	officially "Drive 2 media state"

SeeAlso: MEM 0040h:0093h"DRIVE 1"

Bitfields for diskette drive 0 media state at start of operation:

Bit(s)	Description	(Table M029)

 7-3 (see #M028)

 2	multiple data rate capability determined

 1	multiple data rate capability

 0	=1 if drive has 80 tracks, =0 if 40 tracks

SeeAlso: #M028,#M030

----------M00400092--------------------------

MEM 0040h:0092h - Olivetti Quaderno - HARD DISK POWERDOWN COUNTDOWN CLOCK TICKS

Size:	BYTE

Note:	hard disk is turned off when counter reaches zero

----------M00400093--------------------------

MEM 0040h:0093h U - DISKETTE DRIVE 1 MEDIA STATE AT START OF OPERATION

Size:	BYTE

Note:	officially "Drive 3 media state"

SeeAlso: MEM 0040h:0092h"DRIVE 0"

Bitfields for diskette drive 1 media state at start of operation:

Bit(s)	Description	(Table M030)

 7-3	(see #M028)

 2	multiple data rate capability determined

 1	multiple data rate capability

 0	=1 if drive has 80 tracks, =0 if 40 tracks

--HP 100LX/200LX--

display control status

 0	=1 if DISPCTL -K

 1	=1 if DISPCTL -C

----------M00400094--------------------------

MEM 0040h:0094h - DISKETTE DRIVE 0 CURRENT TRACK NUMBER

Size:	BYTE

SeeAlso: MEM 0040h:0095h

----------M00400095--------------------------

MEM 0040h:0095h - DISKETTE DRIVE 1 CURRENT TRACK NUMBER

Size:	BYTE

SeeAlso: MEM 0040h:0094h

----------M00400096--------------------------

MEM 0040h:0096h - KEYBOARD STATUS BYTE 1

Size:	BYTE

Bitfields for keyboard status byte 1:

Bit(s)	Description	(Table M031)

 7	=1 read-ID in progress

 6	=1 last code read was first of two ID codes

 5	=1 force Num Lock if read-ID and enhanced keyboard

 4	=1 enhanced keyboard installed

 3	=1 Right Alt pressed

 2	=1 Right Ctrl pressed

 1	=1 last code read was E0h

 0	=1 last code read was E1h

SeeAlso: #M032

----------M00400097--------------------------

MEM 0040h:0097h - KEYBOARD STATUS BYTE 2

Size:	BYTE

Bitfields for keyboard status byte 2:

Bit(s)	Description	(Table M032)

 7	=1 keyboard transmit error flag

 6	=1 LED update in progress

 5	=1 RESEND received from keyboard

 4	=1 ACK received from keyboard

 3	reserved, must be zero

 2	Caps Lock LED

 1	Num Lock LED

 0	Scroll Lock LED

SeeAlso: #M031

----------M00400098--------------------------

MEM 0040h:0098h - TIMER2 (AT, PS exc Mod 30) - PTR TO USER WAIT-COMPLETE FLAG

Size:	DWORD

Note:	(see INT 15/AX=8300h)

----------M0040009C--------------------------

MEM 0040h:009Ch - TIMER2 (AT, PS exc Mod 30) - USER WAIT COUNT IN MICROSECONDS

Size:	DWORD

----------M0040009F--------------------------

MEM 0040h:009Fh - HP 100LX/200LX - VIDEO ZOOM MODE

Size:	BYTE

(Table M033)

Values for HP 100LX/200LX video zoom mode:

 02h	80x25 mono

 03h	80x25 color

 80h	64x18 mono

 81h	64x18 color

 82h	40x25 mono

 83h	40x25 color

 84h	40x16 mono

 85h	40x16 color

SeeAlso: INT 10/AH=D0h

----------M004000A0--------------------------

MEM 0040h:00A0h - TIMER2 (AT, PS exc Mod 30) - WAIT ACTIVE FLAG

Size:	BYTE

Bitfields for Timer2 wait active flag:

Bit(s)	Description	(Table M034)

 7	wait time elapsed

 6-1	reserved

 0	INT 15/AH=86h has occurred

----------M004000A1--------------------------

MEM 0040h:00A1h - BIT 5 SET IF LAN SUPPORT PROGRAM INTERRUPT ARBITRATOR PRESENT

Size:	BYTE

Note:	DEVICE=DXMA0MOD.SYS

----------M004000A2--------------------------

MEM 0040h:00A2h - RESERVED FOR NETWORK ADAPTERS

Size:	6 BYTEs

----------M004000A4--------------------------

MEM 0040h:00A4h - PS/2 Mod 30 - SAVED FIXED DISK INTERRUPT VECTOR

Size:	DWORD

----------M004000A8--------------------------

MEM 0040h:00A8h - VIDEO (EGA/MCGA/VGA) - POINTER TO VIDEO SAVE POINTER TABLE

Size:	DWORD

Format of Video Save Pointer Table [EGA/VGA/MCGA only]:

Offset	Size	Description	(Table M035)

 00h	DWORD	ptr to Video Parameter Table

 04h	DWORD	ptr to Parameter Dynamic Save Area, else 0 [EGA/VGA only]

 08h	DWORD	ptr to Alphanumeric Character Set Override, else 0

 0Ch	DWORD	ptr to Graphics Character Set Override, else 0

 10h	DWORD	[VGA only] ptr to Secondary Save Pointer Table, must be valid

 14h	DWORD	reserved, zero

 18h	DWORD	reserved, zero

Note: table initially in ROM, copy to RAM to alter, then update 40h:A8h.

Format of Secondary Video Save Pointer Table [VGA only]:

Offset	Size	Description	(Table M036)

 00h	WORD	Length of this table in bytes, including this word (1Ah)

 02h	DWORD	ptr to Display Combination Code Table, must be valid

 06h	DWORD	ptr to second Alphanumeric Character Set Override, else 0

 0Ah	DWORD	ptr to User Palette Profile Table, else 0

 0Eh	DWORD	reserved, zero

 12h	DWORD	reserved, zero

 16h	DWORD	reserved, zero

Note: table initially in ROM, copy to RAM to alter, then alter Save Ptr Table.

Format of Display Combination Code Table [VGA only]:

Offset	Size	Description	(Table M037)

 00h	BYTE	Number of entries in the DCC table at offset 04h

 01h	BYTE	Version number

 02h	BYTE	Maximum display type code that can appear in DCC table

 03h	BYTE	reserved

 04h 2N BYTEs	Each pair of bytes gives a valid display combination

Meaning of each byte:

 00h	 no display

 01h	 MDA with mono display

 02h	 CGA with color display

 03h	 reserved

 04h	 EGA with color display

 05h	 EGA with mono display

 06h	 Professional Graphics Controller

 07h	 VGA with mono display

 08h	 VGA with color display

 09h	 reserved

 0Ah	 MCGA with digital color display

 0Bh	 MCGA with analog mono display

 0Ch	 MCGA with analog color display

 FFh	 unrecognised video system

Format of Video Parameter Table [EGA, VGA only]:

Offset	Size	Description	(Table M038)

 00h-03h	Modes 00h-03h in 200-line CGA emulation mode

 04h-0Eh	Modes 04h-0Eh

 0Fh-10h	Modes 0Fh-10h when only 64kB RAM on adapter

 11h-12h	Modes 0Fh-10h when >64kB RAM on adapter

 13h-16h	Modes 00h-03h in 350-line mode

 17h	VGA Modes 00h or 01h in 400-line mode

 18h	VGA Modes 02h or 03h in 400-line mode

 19h	VGA Mode  07h in 400-line mode

 1Ah-1Ch	VGA Modes 11h-13h

Note:	An array of 23 [EGA] or 29 [VGA] elements, each element being 64

  bytes long.  Elements appear in the above order.

Format of Video Parameter Table element [EGA, VGA only]:

Offset	Size	Description	(Table M039)

 00h	BYTE	Columns on screen	  (see 40h:4Ah)

 01h	BYTE	Rows on screen minus one	  (see 40h:84h)

 02h	BYTE	Height of character in scan lines (see 40h:85h)

 03h	WORD	Size of video buffer	  (see 40h:4Ch)

 05h  4 BYTEs	Values for Sequencer Registers 1-4

 09h	BYTE	Value for Miscellaneous Output Register

 0Ah 25 BYTEs	Values for CRTC Registers 00h-18h

 23h 20 BYTEs	Values for Attribute Controller Registers 00h-13h

 37h  9 BYTEs	Values for Graphics Controller Registers 00h-08h

Format of Video Parameter Table [MCGA only] {guesswork from inspection}:

Offset	Size	Description	(Table M040)

    - 16 triplet BYTEs of R,G,B DAC info for 16 colors;

    - An array of 11 elements, each element being 32 bytes long.

  Elements appear in the order:

Modes 00h,01h in 200-line mode for digital displays

Modes 00h,01h in 400-line mode for analog displays

Modes 02h,03h in 200-line mode for digital displays

Modes 02h,03h in 400-line mode for analog displays

Modes 04h,05h in 200-line mode for digital displays

Modes 04h,05h in 400-line mode for analog displays

Mode  06h in 200-line mode for digital displays

Mode  06h in 400-line mode for analog displays

Mode  11h

Mode  13h in 200-line mode for digital displays

Mode  13h in 400-line mode for analog displays

Format of Video Parameter Table element [MCGA only]:

Offset	Size	Description	(Table M041)

 00h	BYTE	Columns on screen	  (see 40h:4Ah)

 01h	BYTE	Rows on screen minus one	  (see 40h:84h)

 02h	BYTE	Height of character in scan lines (see 40h:85h)

 03h	WORD	Size of video buffer	  (see 40h:4Ch)

 05h	WORD	??? always zero

 07h 21 BYTEs	Video data registers 00h-14h to port 3D5h indexed by 3D4h

 1Ch	BYTE	PEL Mask to port 3C6h

 1Dh	BYTE	CGA Mode Control to port 3D8h

 1Eh	BYTE	CGA Border Control to port 3D9h

 1Fh	BYTE	Extended Mode Control to port 3DDh

Format of Video Parameter Dynamic Save Area [EGA, VGA only]:

Offset	Size	Description	(Table M042)

 00h 16 BYTEs	Last data written to Attribute Contr. Palette Registers 0-15

 10h	BYTE	Last data written to Attribute Controller Overscan Register

 11h-FFh	Reserved

Note: Need for table was that EGA registers were write-only.

Note: If default values (from the Video Parameter Table) are

      over-ridden at a mode set by the VGA User Palette Profile

      Table, then the Dynamic Save Area is updated with the

      default values, not the User Profile ones.

Format of Alphanumeric Character Set Override:

Offset	Size	Description	(Table M043)

 00h	BYTE	Length in bytes of each character in font table

 01h	BYTE	Character generator RAM bank to load, 0=normal

 02h	WORD	Number of characters in font table, normally 256

 04h	WORD	Code of first character in font table, normally 0

 06h	DWORD	ptr to font table

 0Ah	BYTE	Displayable rows (FFh=use maximum calculated value)

 0Bh	BYTEs	Array of mode values to which this font is to pertain

BYTE	FFh end of array

Format of Second Alphanumeric Character Set Override:

Offset	Size	Description	(Table M044)

 00h	BYTE	Length in bytes of each character in font table

 01h	BYTE	Character generator RAM bank to load, normally non-zero

 02h	BYTE	reserved

 03h	DWORD	ptr to font table

 07h	BYTEs	Array of mode values to which this font is to pertain

BYTE	FFh end of array

Note:	Authorities differ, some say same as first override above, but IBM

  says it is as shown above

Format of Graphics Character Set Override:

Offset	Size	Description	(Table M045)

 00h	BYTE	Number of displayable character rows

 01h	WORD	Length in bytes of each character in font table

 03h	DWORD	ptr to font table

 07h	BYTEs	Array of mode values to which this font is to pertain

BYTE	FFh end of array

Format of User Palette Profile Table [VGA only]:

Offset	Size	Description	(Table M046)

 00h	BYTE	Underlining: 01h=enable in all alphanumeric modes

     00h=enable in monochrome alphanumeric modes only

     FFh=disable in all alphanumeric modes

 01h	BYTE	reserved

 02h	WORD	reserved

 04h	WORD	Number (0-17) of Attribute Controller registers in table

 06h	WORD	Index (0-16) of first Attribute Controller register in table

 08h	DWORD	ptr to table of Attribute Controller registers to override

Table is an array of BYTEs.

 0Ch	WORD	Number (0-256) of video DAC Color registers in table

 0Eh	WORD	Index (0-255) of first video DAC Color register in table

 10h	DWORD	ptr to table of video DAC Color registers to override

Table is ??? triplets ??? of BYTEs???

 14h	BYTEs	array of mode values to which this profile is to pertain

BYTE	FFh end of array

----------M004000AC--------------------------

MEM 0040h:00ACh - RESERVED

Size:	4 BYTEs

----------M004000B0--------------------------

MEM 0040h:00B0h - Phoenix 386 BIOS 1.10 10a - LOOP COUNT FOR HARD DISK TIMEOUT

Size:	BYTE

Desc:	number of times a tight software delay loop should be executed to

  generate the sub-55ms delays used internally by the BIOS

Note:	also used for delaying when beeping due to full keyboard buffer

----------M004000B0--------------------------

MEM 0040h:00B0h - PTR TO 3363 OPTICAL DISK DRIVER OR BIOS ENTRY POINT

Size:	DWORD

Notes:	When 3363 BIOS present, the ASCIZ signature "OPTIC "occurs 3 bytes

  beyond this entry point

When 3363 BIOS and 3363 File System Driver present, the ASCIZ signature

  "FILE SYSTEM DRIVER" occurs 3 bytes beyond this entry point

----------M004000B0--------------------------

MEM 0040h:00B0h	- 1988 Phoenix 386 BIOS 1.10 03 - PARAMS FOR TYPE 48 HARD DISK

Size:	16 BYTEs

SeeAlso: INT 41,INT 46

----------M004000B4--------------------------

MEM 0040h:00B4h	- RESERVED

Size:	WORD

----------M004000B5--------------------------

MEM 0040h:00B5h	- Dell 4xxDE

Size:	BYTE

Bitfields for Dell 4xxDE flags:

Bit(s)	Description	(Table M047)

 2	??? (related to disk drives)

 5	page tables set to allow Weitek addressing in real mode

 6	Weitek math coprocessor present

----------M004000B6--------------------------

MEM 0040h:00B6h	- RESERVED FOR POST???

Size:	3 BYTEs

----------M004000B9--------------------------

MEM 0040h:00B9h - ???

Size:	7 BYTEs

----------M004000C0--------------------------

MEM 0040h:00C0h	- 1988 Phoenix 386 BIOS 1.10 03 - PARAMS FOR TYPE 49 HARD DISK

Size:	16 BYTEs

SeeAlso: INT 41,INT 46

----------M004000C0--------------------------

MEM 0040h:00C0h	- RESERVED

Size:	14 BYTEs

----------M004000CE--------------------------

MEM 0040h:00CEh	- COUNT OF DAYS SINCE LAST BOOT

Size:	WORD

----------M004000D0--------------------------

MEM 0040h:00D0h - RESERVED

Size:	32 BYTEs

----------M004000D0--------------------------

MEM 0040h:00D0h	- Digiboard MV/4 - LENGTH OF DATA TABLE

Size:	BYTE

----------M004000D0--------------------------

MEM 0040h:00D0h	EHD floppy - INSTALLATION FLAGS

Size:	BYTE

Bitfields for EHD floppy installation flags:

Bit(s)	Description	(Table M048)

 4	installation completed

 3-0	drives 0-3

----------M004000D1--------------------------

MEM 0040h:00D1h	- Digiboard MV/4 - PRODUCT ID

Size:	BYTE

----------M004000D2--------------------------

MEM 0040h:00D2h	- Digiboard MV/4 - BASE ADDRESS FOUND

Size:	WORD

----------M004000D4--------------------------

MEM 0040h:00D4h	- Digiboard MV/4 - PORTS

Size:	BYTE

----------M004000D5--------------------------

MEM 0040h:00D5h	- Digiboard MV/4 - IRQ

Size:	BYTE

----------M004000D5--------------------------

MEM 0040h:00D5h	- EHD floppy - NUMBER OF FLOPPY DISK CONTROLLERS IN SYSTEM

Size:	BYTE

----------M004000D6--------------------------

MEM 0040h:00D6h	- EHD floppy - AND-BITS TO ADJUST PORT ADDRESS

Size:	BYTE

Note:	this byte contains FFh if controller at 03Fxh and 7Fh if at 037xh; the

  value is ANDed with DL prior to using IN A?,DX or OUT DX,A?

  instructions

----------M004000D6--------------------------

MEM 0040h:00D6h - Digiboard MV/4 - NUMBER OF KEYBOARDS FOUND

Size:	WORD

SeeAlso: MEM 0040h:00D8h"Digiboard"

----------M004000D7--------------------------

MEM 0040h:00D7h - EHD floppy - DRIVE 0 DISKETTE MEDIA STATE

Size:	BYTE

Note:	the value in this byte is copied into 0040h:0090h (diskette 0 status)

SeeAlso: MEM 0040h:00D8h"EHD",MEM 0040h:00D9h"EHD",MEM 0040h:00DAh"EHD"

Bitfields for EHD diskette media state:

Bit(s)	Description	(Table M049)

 7-6	data rate: 00=500kbps,01=300kbps,10=250k,11=1M/S

 5	double stepping required (e.g. 360kB in 1.2MB)

 4	media type established

 3	reserved

 2-0	on exit from BIOS, contains:

000 trying 360kB in 360kB

001 trying 360kB in 1.2MB

010 trying 1.2MB in 1.2MB

011 360kB in 360kB established

100 360kB in 1.2MB established

101 1.2MB in 1.2MB established

110 reserved (2M8?)

111 all other formats/drives

----------M004000D8--------------------------

MEM 0040h:00D8h - Digiboard MV/4 - NUMBER OF MICE FOUND

Size:	WORD

SeeAlso: MEM 0040h:00D6h"Digiboard",MEM 0040h:00DAh"Digiboard"

----------M004000D8--------------------------

MEM 0040h:00D8h - EHD floppy - DRIVE 1 DISKETTE MEDIA STATE

Size:	BYTE

SeeAlso: MEM 0040h:00D7h"EHD",MEM 0040h:00D9h"EHD",MEM 0040h:00DAh"EHD"

----------M004000D9--------------------------

MEM 0040h:00D9h - EHD floppy - DRIVE 2 DISKETTE MEDIA STATE

Size:	BYTE

SeeAlso: MEM 0040h:00D7h"EHD",MEM 0040h:00D8h"EHD",MEM 0040h:00DAh"EHD"

----------M004000DA--------------------------

MEM 0040h:00DAh - Digiboard MV/4 - CURRENT PORT (used by VGA initializatn only)

Size:	BYTE

SeeAlso: MEM 0040h:00D8h"Digiboard"

----------M004000DA--------------------------

MEM 0040h:00DAh - EHD floppy - DRIVE 3 DISKETTE MEDIA STATE

Size:	BYTE

SeeAlso: MEM 0040h:00D7h"EHD",MEM 0040h:00D8h"EHD",MEM 0040h:00D9h"EHD"

----------M004000DB--------------------------

MEM 0040h:00DBh - Digiboard MV/4 - MASTER 8259 MASK (used by VGA init only)

Size:	BYTE

SeeAlso: MEM 0040h:00DCh"Digiboard"

----------M004000DB--------------------------

MEM 0040h:00DBh - EHD floppy - DRIVE 0 NEEDS RECALIBARATION

Size:	BYTE

SeeAlso: MEM 0040h:00DCh"EHD",MEM 0040h:00DDh"EHD",MEM 0040h:00DEh"EHD"

----------M004000DC--------------------------

MEM 0040h:00DCh - Digiboard MV/4 - SLAVE 8259 MASK (used by VGA init only)

Size:	BYTE

SeeAlso: MEM 0040h:00DBh"Digiboard"

----------M004000DC--------------------------

MEM 0040h:00DCh - EHD floppy - DRIVE 1 NEEDS RECALIBARATION

Size:	BYTE

SeeAlso: MEM 0040h:00DBh"EHD",MEM 0040h:00DDh"EHD",MEM 0040h:00DEh"EHD"

----------M004000DD--------------------------

MEM 0040h:00DDh - EHD floppy - DRIVE 2 NEEDS RECALIBARATION

Size:	BYTE

SeeAlso: MEM 0040h:00DBh"EHD",MEM 0040h:00DCh"EHD",MEM 0040h:00DEh"EHD"

----------M004000DE--------------------------

MEM 0040h:00DEh - EHD floppy - DRIVE 3 NEEDS RECALIBARATION

Size:	BYTE

SeeAlso: MEM 0040h:00DBh"EHD",MEM 0040h:00DCh"EHD",MEM 0040h:00DDh"EHD"

----------M004000E0--------------------------

MEM 0040h:00E0h - Phoenix 386 BIOS - DRIVE PARAMETER TABLE FOR FIRST HARD DISK

Size:	16 BYTEs

Note:	this area is used to store the driver parameter table for the first

  hard disk if it has been setup as the user-configurable "type 47"

----------M004000E3--------------------------

MEM 0040h:00E3h - EHD floppy - DRIVE 0 DISKETTE TYPE (from jumpers)

Size:	BYTE

SeeAlso: MEM 0040h:00E4h,MEM 0040h:00E5h"EHD",MEM 0040h:00E6h"EHD"

(Table M050)

Values for EHD floppy diskette type:

 01h	undefined by diskette change (360K)

 02h	1.2M

 03h	720K

 04h	1.44M

 05h	2.88M

----------M004000E4--------------------------

MEM 0040h:00E4h - EHD floppy - DRIVE 1 DISKETTE TYPE (from jumpers)

Size:	BYTE

SeeAlso: MEM 0040h:00E3h,MEM 0040h:00E5h"EHD",MEM 0040h:00E6h"EHD"

----------M004000E5--------------------------

MEM 0040h:00E5h - EHD floppy - DRIVE 2 DISKETTE TYPE (from jumpers)

Size:	BYTE

SeeAlso: MEM 0040h:00E3h,MEM 0040h:00E4h"EHD",MEM 0040h:00E6h"EHD"

----------M004000E6--------------------------

MEM 0040h:00E6h - EHD floppy - DRIVE 3 DISKETTE TYPE (from jumpers)

Size:	BYTE

SeeAlso: MEM 0040h:00E3h,MEM 0040h:00E4h"EHD",MEM 0040h:00E5h"EHD"

----------M004000EA--------------------------

MEM 0040h:00EAh - Omti controller - SEGMENT OF EXTENDED BIOS DATA AREA???

Size:	WORD

Note:	drive parameter tables stored in specified segment

----------M004000EC--------------------------

MEM 0040h:00ECh - Dell 4xxDE BIOS A11 - LOOP COUNT FOR DELAYS

Size:	WORD

----------M004000F0--------------------------

MEM 0040h:00F0h - INTRA-APPLICATION COMMUNICATION AREA

Size:	16 BYTEs

----------M00500000--------------------------

MEM 0050h:0000h - PRINT-SCREEN STATUS

Size:	BYTE

----------M00500004--------------------------

MEM 0050h:0004h - MS-DOS - LOGICAL DRIVE FOR SINGLE-FLOPPY SYSTEM (A: / B:)

Size:	BYTE

----------M0050000E--------------------------

MEM 0050h:000Eh - STATE OF BREAK CHECKING AT START OF BASICA.COM EXECUTION

Size:	BYTE

----------M0050000F--------------------------

MEM 0050h:000Fh - BASICA VERSION FLAG

Size:	BYTE

Note:	this byte contains the value 02h if BASICA v2.10 is running

----------M00500010--------------------------

MEM 0050h:0010h - POINTER TO BASIC DATA SEGMENT

Size:	WORD

----------M00500012--------------------------

MEM 0050h:0012h - INT 08 VECTOR AT START OF BASICA.COM EXECUTION

Size:	DWORD

----------M00500016--------------------------

MEM 0050h:0016h - INT 1B VECTOR AT START OF BASICA.COM EXECUTION

Size:	DWORD

----------M0050001A--------------------------

MEM 0050h:001Ah - INT 24 VECTOR AT START OF BASICA.COM EXECUTION

Size:	DWORD

----------M00600000--------------------------

MEM 0060h:0000h - DOS SCRATCH SPACE

Size:	256 BYTEs

Note:	used during DOS 2+ boot process

----------M00700000--------------------------

MEM 0070h:0000h - DOS 2+ IO.SYS LOAD ADDRESS

----------MA0000000--------------------------

MEM A000h:0000h - EGA+ GRAPHICS BUFFER

Size:	65536 BYTEs

----------MB0000000--------------------------

MEM B000h:0000h - MDA TEXT BUFFER

Size:	4096 BYTEs

----------MB0000000--------------------------

MEM B000h:0000h - HGC+ RAMFont-MODE TEXT BUFFER

Size:	16384 BYTEs

Note:	in RAMFont Mode 1, the memory is filled with the usual

  character/attribute pairs; in RAMFont Mode 2, four bits of each

  'attribute' byte is used to provide 12 bits for specifying the

  character

----------MB0000000--------------------------

MEM B000h:0000h - HGC GRAPHICS BUFFER (PAGE 0)

Size:	32768 BYTEs

----------MB4000000--------------------------

MEM B400h:0000h - HGC+ RAMFont BUFFER

Size:	4096 BYTEs

Notes:	apparently write-only

RAMFont Mode 1: 256 characters (8 bits each for char and attribute)

RAMFont Mode 2: 3072 characters (12 bits for char, 4 bits for attrib)

each character definition is 8 pixels wide (with 9th-column duplication

  if appropriate) by 8-16 pixels high

----------MB8000000--------------------------

MEM B800h:0000h - CGA TEXT/GRAPHICS BUFFER

Size:	16384 BYTEs

--------V-MB8000000--------------------------

MEM B800h:0000h - EGA/VGA+ TEXT BUFFER

Size:	32768 BYTEs

--------V-MB8000000--------------------------

MEM B800h:0000h - HGC GRAPHICS BUFFER (PAGE 1)

Size:	32768 BYTEs

----------MBFF00000--------------------------

MEM BFF0h:0000h - ET4000/W32 ACL accelerator

Size:	169 BYTES

Format of ET4000/W32 memory-mapped registers:

Offset	Size	Description	(Table M051)

 00h	DWORD	MMU Registers: memory base pointer register 0 (see #M052)

 04h	DWORD	MMU Registers: memory base pointer register 1 (see #M052)

 08h	DWORD	MMU Registers: memory base pointer register 2 (see #M052)

 0Ch  7 BYTEs	???

 13h	BYTE	MMU Registers: MMU control register

 14h 28 BYTEs	???

 30h	BYTE	Non-Queued Registers: suspend/terminate

 31h	BYTE	Non-Queued Registers: operation state (see #M054) (write-only)

 32h	BYTE	Non-Queued Registers: sync enable

 33h	BYTE	???

 34h	BYTE	Non-Queued Registers: interrupt mask

 35h	BYTE	Non-Queued Registers: interrupt status

 36h	BYTE	Non-Queued Registers: ACL status (read-only)

bit 1: read status (RDST) 1=ACL active, queue not empty

bit 0: write status (WRST) 1=queue full

 37h 73 BYTEs	???

 80h	DWORD	Queued Registers: pattern address (see #M055)

 84h	DWORD	Queued Registers: source address (see #M055)

 88h	WORD	Queued Registers: pattern Y offset (see #M056)

 8Ah	WORD	Queued Registers: source Y offset (see #M056)

 8Ch	WORD	Queued Registers: destination y offset (see #M056)

 8Eh	BYTE	Queued Registers: virtual bus size

 8Fh	BYTE	Queued Registers: X/Y direction (see #M057)

 90h	BYTE	Queued Registers: pattern wrap (see #M058)

 91h	BYTE	???

 92h	BYTE	Queued Registers: source wrap (see #M058)

 93h	BYTE	???

 94h	WORD	Queued Registers: X position

 96h	WORD	Queued Registers: Y position

 98h	WORD	Queued Registers: X count (see #M059)

 9Ah	WORD	Queued Registers: Y count (see #M059)

 9Ch	BYTE	Queued Registers: routine control (see #M060)

 9Dh	BYTE	Queued Registers: reload control

 9Eh	BYTE	Queued Registers: background ROP for mixing

 9Fh	BYTE	Queued Registers: foreground ROP for mixing

 A0h	DWORD	Queued Registers: destination address (see #M055)

 A4h	DWORD	Queued Registers: internal pattern address

 A8h	DWORD	Queued Registers: internal source address

Bitfields for ET4000/W32 memory base pointer register:

Bit(s)	Description	(Table M052)

 31-22	reserved

 21-0	memory base pointer

SeeAlso: #M051

Bitfields for ET4000/W32 MMU control register:

Bit(s)	Description	(Table M053)

 7	reserved

 6-4	linear address control (LAC)

  bit 6: MMU aperture 2

  bit 5: MMU aperture 1

  bit 4: MMU aperture 0

 3	reserved

 t2-0	aperture type (APT)

  bit 2: MMU aperture 2

  bit 1: MMU aperture 1

  bit 0: MMU aperture 0

SeeAlso: #M051

Bitfields for ET4000/W32 operation state register:

Bit(s)	Description	(Table M054)

 7-4	reserved

 3	restart operation after ACL-interruption

 2-1	reserved

 0	restore status before ACL-interruption

SeeAlso: #M051

Bitfields for ET4000/W32 memory address register:

Bit(s)	Description	(Table M055)

 31-22	reserved

 21-0	memory base pointer

SeeAlso: #M051

Bitfields for ET4000/W32 offset register:

Bit(s)	Description	(Table M056)

 15-12	reserved

 11-0	Y offset

SeeAlso: #M051

Bitfields for ET4000/W32 X/Y direction register:

Bit(s)	Description	(Table M057)

 7-2	reserved

 1	X direction

 0	Y direction

SeeAlso: #M051

Bitfields for ET4000/W32 wrap register:

Bit(s)	Description	(Table M058)

 7	reserved

 6-4	pattern Y wrap

000 = 1 line

001 = 2 lines

010 = 4 lines

011 = 8 lines

100 = reserved

101 = reserved

110 = reserved

111 = no wrap

 3	reserved

 2-0	pattern X wrap

000 = reserved

001 = reserved

010 = 4 byte

011 = 8 byte

100 = 16 byte

101 = 32 byte

110 = 64 byte

111 = no wrap

SeeAlso: #M051

Bitfields for ET4000/W32 count register:

Bit(s)	Description	(Table M059)

 15-12	reserved

 11-0	pixel count

SeeAlso: #M051

Bitfields for ET4000/W32 routine control register:

Bit(s)	Description	(Table M060)

 7-6	reserved

 5-4	routing of CPU address (ADRO)

  	00 don't use CPU address

  	01 CPU address is destination

  	10 reserved

  	11 reserved

 3	reserved

 2-0	routing of CPU data (DARQ)

  	000 don't use CPU data

  	001 CPU data is source data

  	010 CPU data is mixed data

  	011 reserved

  	100 CPU data is x-count

  	101 CPU data is y-count

  	10x reserved

SeeAlso: #M051

----------MC0000000--------------------------

MEM C000h:0000h - VIDEO BIOS (EGA and newer)

Size:	varies (usually 16K-24K for EGA, 24K-32K for VGA)

----------MC8000000--------------------------

MEM C800h:0000h - HARD DISK BIOS

Size:	varies (usually 8K or 16K)

----------MC8001C00--------------------------

MEM C800h:1C00h - IBM XGA, XGA/A - MEMORY-MAPPED REGISTERS

Range:	any 8K boundary within segments C000h to DFFFh

Notes:	The XGA memory mapped registers can be assigned to the last 1K block in

  in each 8K block in the range of C0000h-DFFFFh; the base offset of

  the 128 memory mapped lcoation for a particular XGA instance is

  Segment:(1C00h+instance*80h) for each XGA installed in a system

  (default instance is 6).

The XGA/A (PS/2 adapter) uses the 7KB area below the memory-mapped

  register area for ROM data; the XGA (PS/2 onboard) has included

  this area in it's video BIOS ROM.

Most of the memory mapped registers are from the graphics coprocessor,

  while the I/O-registers are for the display controller.

----------MF0006000--------------------------

MEM F000h:6000h - IBM PC ROM BASIC

Size:	32768 BYTEs

--------B-MF000E000--------------------------

MEM F000h:E000h - ORIGINAL IBM PC ROM BIOS

Size:	8192 BYTEs

--------H-MF000FFF0--------------------------

MEM F000h:FFF0h - RESET JUMP

Size:	5 BYTEs

--------B-MF000FFF5--------------------------

MEM F000h:FFF5h - ASCII BIOS DATE

Size:	8 BYTEs

----------MF000FFFD--------------------------

MEM F000h:FFFDh - OFTEN USED TO ENSURE CORRECT BIOS CHECKSUM

Size:	BYTE

--------B-MF000FFFE--------------------------

MEM F000h:FFFEh - MACHINE TYPE CODE

Size:	BYTE

SeeAlso: INT 15/AH=C0h

----------MFFFF0010--------------------------

MEM FFFFh:0010h - HIGH MEMORY AREA

Size:	65520 BYTEs

---------------------------------------------

--------!---CONTRIBUTORS---------------------

Robin Walker	<rdhw@cus.cam.ac.uk> ORIGINAL FILE

Wim Osterholt	<wim@djo.wtm.tudelft.nl> or Wim Osterholt 2:512/56

EHD floppy = 'KEGAN 4.0M Floppy Drive Controller.',

     'ACME FX4-K7tb2 v:2.5 11/5/91'

Stanley Appel   <appel@stack.urc.tue.nl>

Matthias Paul	<mpaul@ibh.rwth-aachen.de>

--------!---Admin----------------------------

Highest Table Number = M060

--------!---FILELIST-------------------------

Please redistribute all of the files comprising the interrupt list (listed at

the beginning of the list and in INTERRUP.1ST) unmodified as a group, in a

quartet of archives named INTER47A through INTER47D (preferably the original

authenticated PKZIP archives), and the utility programs in a two additional

archives called INTER47E.ZIP and INTER47F.ZIP

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

--------!---CONTACT_INFO---------------------

Internet: ralf@telerama.lm.com

UUCP: {uunet,harvard}!telerama.lm.com!ralf

FIDO: Ralf Brown 1:129/26.1

or post a message to me in the DR_DEBUG echo (I probably won't see it

unless you address it to me)

CIS:  >INTERNET:ralf@telerama.lm.com


CMOS

      CMOS Memory Map v1.25 June, 1995

[Last Change: 8/13/95]

Compiled from multiple sources by Padgett Peterson

Corrections/additions/comments to: padgett@tccslr.dnet.mmc.com

No guarantees of any kind.

Copyrights/Trademarks belong to whoever they may belong to.

Found: Algorithm used by IBM in calculating CRC checksums for PS/2

       (see bytes 32h-33h). Complex (recursive part is 12 lines of

       assembly) and not yet validated for every model.

Background

The CMOS (complementary metal oxide semiconductor) memory is actually

a 64 or 128 byte battery-backed RAM memory module that is a part of the

system clock chip. Some IBM PS/2 models have the capability for a

2k (2048 byte) CMOS ROM Extension.

First used with clock-calender cards for the IBM PC-XT, when the PC/AT

(Advanced Technology) was introduced in 1985, the Motorola MC146818

became a part of the motherboard. Since the clock only uses fourteen of

the RAM bytes, the rest are available for storing system configuration data.

Interestingly, the original IBM-PC/AT (Advanced Technology) standard for

the region 10h-3Fh is nearly universal with one notable exception: The

IBM PS/2 systems deviate considerably (Note: AMSTRAD 8086 machines were

among the first to actively use the CMOS memory available and since they

*predate* the AT, do not follow the AT standard).

This is just another example of how IBM created a standard, lost control

of it, tried to replace it, failed and lost market share in the process.

Originally, the IBM PC/AT only made use of a small portion of CMOS memory

and was defined in the IBM PC/AT Technical Reference Manual, specifically

bytes 10h, 12h, 14h-18h, 2Eh-33h. The balance was left undefined but was

quickly appropriated by various BIOS manufacturers for such user-selectable

options such as wait states, clock speeds, initial boot drive selection, and

password storage.

Later, as CMOS memory requirements grew, newer clock chips with 128

bytes of RAM came into use. However the fact remains that once the AT

standard was established, only IBM has tried to change the definitions

of that first description.

Accessing the CMOS

The CMOS memory exists outside of the normal address space and cannot

contain directly executable code. It is reachable through IN and OUT

commands at port number 70h (112d) and 71h (113d). To read a CMOS byte,

an OUT to port 70h is executed with the address of the byte to be read and

an IN from port 71h will then retrieve the requested information. The

following BASIC fragment will read 128 CMOS bytes and print them to the

screen in 8 rows of 16 values.

CMOS RAM space has an upper limit of 128 bytes because of the structure

of port 70: only bits 0-6 are used for addressing, bit 7 is used to

enable (0) or disable (1) Non-Maskable Interrupts (NMI) and explains why

IBM uses 80h OR <address> to read/write data & follows with  a "throw-away"

call.

Note that if the CMOS only has 64 bytes available, addressing will

generally wrap and addresses from 40h-7Fh will mirror 00h-3Fh. Output will

be hexadecimal.

10 CLS

20 FOR i = 0 TO &H7F

30 OUT &H70, i

40 PRINT USING "\   \"; HEX$(INP(&H71));

50 NEXT i

60 PRINT " "

Note: where not otherwise noted, all data points are expressed as BYTES

      these are eight bit values and are read from MSB to LSB e.g.

      0000 0000	    0101 1010 binary would be written as 5Ah

      7654 3210	    where only some bits are used this is represented with

    Xs e.g bits 5-3 would be shown as 00xx x000

Note: the entries for AMI WinBIOS also apply to AMIBIOS with core dates of

12/15/95 or later

Organization of CMOS Memory - Clock

00h-0Eh is defined by the clock hardware and all must follow it. Other

manufacturers generally follow the same format as specified for the

region 10h - 2Fh. Some also follow the IBM format for 30h-33h but not all

(Zenith in particular is different).

The first fourteen bytes are dedicated to the MC146818 chip clock functions

and consist of ten read/write data registers and four status registers, two

of which are read/write and two of which are read only.

The format of the ten clock data registers (bytes 00h-09h) is:

 00h Seconds	   (BCD 00-59, Hex 00-3B) Note: Bit 7 is read only

 01h Second Alarm  (BCD 00-59, Hex 00-3B; "don't care" if C0-FF)

 02h Minutes	   (BCD 00-59, Hex 00-3B)

 03h Minute Alarm  (BCD 00-59, Hex 00-3B; "don't care" if C0-FF))

 04h Hours	   (BCD 00-23, Hex 00-17 if 24 hr mode)

   (BCD 01-12, Hex 01-0C if 12 hr am)

   (BCD 81-92. Hex 81-8C if 12 hr pm)

 05h Hour Alarm	   (same as hours; "don't care" if C0-FF))

 06h Day of Week   (01-07 Sunday=1)

 07h Date of Month (BCD 01-31, Hex 01-1F)

 08h Month	   (BCD 01-12, Hex 01-0C)

 09h Year	   (BCD 00-99, Hex 00-63)

BCD/Hex selection depends on Bit 2 of register B (0Bh)

12/24 Hr selection depends on Bit 1 of register B (0Bh)

Alarm will trigger when contents of all three Alarm byte registers

match their companions.

The following is the on-chip status register information.

 0Ah Status Register A (read/write) (usu 26h)

  Bit 7	    - (1) time update cycle in progress, data ouputs undefined

      (bit 7 is read only)

  Bit 6,5,4 - 22 stage divider. 010b - 32.768 Khz time base (default)

  Bit 3-0   - Rate selection bits for interrupt.

      0000b - none

      0011b - 122 microseconds (minimum)

      1111b - 500 milliseconds

      0110b - 976.562 microseconds (default)

 0Bh Status Register B (read/write)

  Bit 7 - 1 enables cycle update, 0 disables

  Bit 6 - 1 enables periodic interrupt

  Bit 5 - 1 enables alarm interrupt

  Bit 4 - 1 enables update-ended interrupt

  Bit 3 - 1 enables square wave output

  Bit 2 - Data Mode - 0: BCD, 1: Binary

  Bit 1 - 24/12 hour selection - 1 enables 24 hour mode

  Bit 0 - Daylight Savings Enable - 1 enables

 0Ch Status Register C (Read only)

  Bit 7 - Interrupt request flag - 1 when any or all of bits 6-4 are

  1 and appropriate enables (Register B) are set to 1. Generates

  IRQ 8 when triggered.

  Bit 6 - Periodic Interrupt flag

  Bit 5 - Alarm Interrupt flag

  Bit 4 - Update-Ended Interrupt Flag

  Bit 3-0 ???

 0Dh Status Register D (read only)

  Bit 7 - Valid RAM - 1 indicates batery power good, 0 if dead or

  disconnected.

  Bit 6-0 ???

---------------------------------------------

Organization of CMOS Memory - non-Clock

The last two bytes in the first hexadecimal decade (hexade ?) were not

specified in the PC/AT but may have the following use on some systems:

 0Eh (PS/2) Diagnostic Status Byte

     Bit 7 - When set (1) indicates clock has lost power

     Bit 6 - (1) indicates incorrect checksum

     Bit 5 - (1) indicates that equipment configuration is incorrect

 power-on check requires that atleast one floppy be installed

     Bit 4 - (1) indicates error in memory size

     Bit 3 - (1) indicates that controller or disk drive failed initialization

     Bit 2 - (1) indicates that time is invalid

     Bit 1 - (1) indicates installed adaptors do not match configuration

     Bit 0 - (1) indicates a time-out while reading adaptor ID

 0Eh (AMSTRAD) 6  BYTEs time and date machine last used

---------------------------------------------

 0Fh Reset Code (IBM PS/2 "Shutdown Status Byte")

     00h-03h	perform power-on reset

       00h	  software reset or unexpected reset

       01h	  reset after memory size check in real/virtual mode

  (or: chip set initialization for real mode reentry)

       02h	  reset after successful memory test in real/virtual mode

       03h	  reset after failed memory test in real/virtual mode

     04h	INT 19h reboot

     05h	flush keyboard (issue EOI) and jump via 40h:0067h

     06h	reset (after successful test in virtual mode)

(or: jump via 40h:0067h without EOI)

     07h	reset (after failed test in virtual mode)

     08h	used by POST during protected-mode RAM test (return to POST)

     09h	used for INT 15/87h (block move) support

     0Ah	resume execution by jump via 40h:0067h

     0Bh	resume execution via IRET via 40h:0067h

     0Bh	resume execution via RETF via 40h:0067h

     0Dh-FFh	perform power-on reset

---------------------------------------------

The second group of values extends from address 10h to 2Dh. The word at

2Eh-2Fh is a byte-wise summation of the values in these bytes. Most BIOSes

will generate a CMOS Checksum error if this value is invalid however many

programs ignore the checksum and report the apparent value. The current

version of MSD reports my XT as having 20+ MB of extended memory.

Where a definiton appears universal, no identification is made. Where

the definition is thought to be specific to a manufacturer/model (AMI,

AMSTRAD, IBM AT, IBM PS/2) the identification is enclosed in parens. The

AMSTAD definitions appear to relate to 8088/8086 (PC and PC/XT class)

mchines only. AT class machines appear to adhere to IBM PC/AT fornat.

---------------------------------------------

 10h - Floppy Drive Type

  Bits 7-4 - First Floppy Disk Drive Type

   0h	   No Drive

   1h	   360 KB 5.25 Drive

   2h	   1.2 MB 5.25 Drive - note: not listed in PS/2 technical manual

   3h	   720 KB 3.5 Drive

   4h	  1.44 MB 3.5 Drive

   5h	  2.88 MB 3.5 drive

   6h-Fh  unused

   Bits 3-0 Second Floppy Disk Drive Type (bit settings same as A)

   Hence a PC having a 5 1/4 1.2 Mb A: drive and a 1.44 Mb B: drive will

   have a value of 24h in byte 10h. With a single 1.44 drive: 40h.

---------------------------------------------

 11h - (IBM-PS/2) First Fixed Disk Drive Type Byte (00-FFh) Note: if IBM

   ESDI or SCSI drive controller is used, CMOS drive type will be zero (00 -

   no drive) and INT 13h will be directed to controller ROM.

 11h - (older AMI Hi-Flex BIOS) Keyboard Typematic Data

  Bit 7 Enable Typematic (1 = On)

  Bits 6-5 Typematic Delay (wait before begin repeating)

   00b 250 ms

   01b 500 ms

   10b 750 ms

   11b 100 ms

  Bits 4-0 Typematic Rate char/sec e.g. 01010b = 12.0 cps

   00000b - 300	 01000b - 159  10000b - 75  11000b - 37

   00001b - 267	 01001b - 133  10001b - 67  11001b - 33

   00010b - 240	 01010b - 120  10010b - 60  11010b - 30

   00011b - 218	 01011b - 109  10011b - 55  11011b - 27

   00100b - 200	 01100b - 100  10100b - 50  11100b - 25

   00101b - 185	 01101b -  92  10101b - 46  11101b - 23

   00110b - 171	 01110b -  86  10110b - 43  11110b - 21

   00111b - 160	 01111b -  80  10111b - 40  11111b - 20

 11h - (AMI) Advanced Setup Options

    bit 7 mouse enabled

    bit 6 test memory above 1 megabyte

    bit 5 generate clicks during memory test

    bit 4 enable memory parity check

    bit 3 display key for Setup while booting

    bit 2 store user-defined disk data at top of memory instead of 0030h:0000h

    bit 1 request F1 keypress on boot error

 11h - (AMI WinBIOS) Boot Options

    bit 7 systems boots with high CPU speed

    bit 6 memory test above 1MB enabled

    bit 5 memory test tick sound enabled

    bit 4 floppy drive seek at boot enabled

    bit 3 "Hit <Del>" message enabled

    bit 2 BIOS extended RAM area takes 1K at top of memory instead of 30h:0000h

    bit 1 wait for F1 key on error

    bit 0 NumLock enabled at boot

see also 13h"AMI"

 11h - (AWARD) Configuration Bits

    Bit 7   NumLock ON at reboot.

    Bit 6   IDE Block Mode enabled.

    Bit 5   ???

    Bit 4   Shadow ROM BIOS at CC00-CFFF

    Bit 3   Shadow ROM BIOS at C800-CBFF

    Bit 2   ???

    Bit 1   BIOS Password Enabled

    Bit 0   0 = Password controls BIOS Setup Only

    1 = Password required to enter System

 11h - (Quadtel HT12 BIOS 03.05.03) configuration bits

    bit 7	640K RAM present

    bit 6	extension type (=CPU's Machine Status Word)

    bit 3-2	NumLock state at boot time

00 Auto

01 NumLock on

10 Numlock off

    bit 0	384K RAM relocated to top of memory

---------------------------------------------

 12h - (IBM PS/2) Second Fixed Disk Drive Type (00-FFh) - see 11h

 12h - Hard Disk Data

  Bits 7-4 First Hard Disk Drive

   00	  No drive

   01-0Eh Hard drive Type 1-14

   0Fh	  Hard Disk Type 16-255 (actual Hard Drive Type is in CMOS RAM 19h)

  Bits 3-0 Second Hard Disk Drive Type (same as above except extrnded type

  will be found in 1Ah).

  A PC with a single type 2 (20 Mb ST-225) hard disk will have 20h in byte 12h

  Note: some PCs utilizing external disk controller ROMs will use type 0 to

   disable ROM BIOS (e.g. Zenith 248 with Plus HardCard).

---------------------------------------------

 13h (AMI Hi-Flex BIOS) Advanced Setup Options

    bit 7 Mouse Enabled (1 = On)

    bit 6 Test Memory above 1 MB (1 = On)

    bit 5 Memory Test Tick Sound (1 = On)

    bit 4 Memory Parity Error Check (1 = On)

    bit 3 Press <Esc> to Disable Memory Test (1 = On)

    bit 2 User-Defined Hard Disk (1 = Type 47 data area at address 0:300h)

    bit 1 Wait for <F1> Message if Error (1 = On)

    bit 0 Turn Num Lock On at boot (1 = On)

see also 11h"WinBIOS"

 13h (AMI WinBIOS) Peripheral Options

    bits 7-5 typematic rate

000-111 = 6,8,10,12,15,20,24,30 cps

    bit 4: numeric processor test enabled

 13h (PS/2 MCA) internal POST operations

    bit 7  POST sets VGA pel information

    bit 6  RTC battery OK

    bit 5  invoke ROM BASIC from POST

    bit 4  POST sets typematic to 30cps/250ms delay instead of 10.9cps/500ms

    bit 3-2 unused or unknown

    bit 1  network password installed

    bit 0  power-on password installed

 13h - (AWARD) Configuration Bits

    bit 7   Set Keyboard Typematic Rate

    bit 4-6 Keyboard Repeat Rate

    000 =  6 cps

    001 =  8 cps

    010 = 10 cps

    011 = 12 cps

    100 = 15 cps

    101 = 20 cps

    110 = 24 cps

    111 = 30 cps

    bit 2-3 Keyboard Typematic Delay

    00 =  250 Msec

    01 =  500 Msec

    10 =  750 Msec

    11 = 1000 Msec

    bit 1   ???

    bit 0   Boot Up Floppy Seek

---------------------------------------------

 14h - Equipment Byte

Bits 7-6 Number of Floppy Drives (system must have at least one)

00b	   1 Drive

01b	   2 Drives

10b ??? 3 Drives

11b ??? 4 Drives

Bits 5-4 Monitor Type

00b Not CGA or MDA (observed for EGA & VGA)

01b 40x25 CGA

10b 80x25 CGA

11b MDA (Monochrome)

Bit 3 Display Enabled (1 = On) (turned off to enable boot of rackmount)

Bit 2 Keyboard Enabled (1 = On) (turn off to enable boot of rackmount)

Bit 1 Math coprocessor Installed (1 = On)

Bit 0 Floppy Drive Installed (1 = On) (turned off for rackmount boot)

 14h - (AMSTRAD)    BYTE user RAM checksum

LSB of sum of all user bytes should be AAh

---------------------------------------------

 15h - Base Memory in K, Low Byte

 15h - (AMSTRAD)    WORD Enter key scancode/ASCII code

default: 1C0Dh	- emulates Return key

---------------------------------------------

 16h Base Memory in K, High Byte

  The value in 15h-16h should be the same as in 0:413h and that returned by

  Int 12h. A PC having 640k (280h) of conventional memory will return 80h in

  byte 15h and 02h in byte 16h.

---------------------------------------------

 17h - Extended Memory in K, Low Byte

 17h - (AMSTRAD)    WORD Forward delete key scancode/ASCII code

default: 2207h	- emulates ^G (bell/beep)

---------------------------------------------

 18h - Extended Memory in K, High Byte (some systems will only accommodate

  15 Mb extended or 16 Mb total) Format is the same as in 15h-16h

---------------------------------------------

 19h - First Extended Hard Disk Drive Type (not in original AT

  specification but now nearly universally used except for PS/2).

  0-Fh unused (would not require extension. Note: this has the effect of

    making type 0Fh (15d) unavailable.

  10h-FFh First Extended Hard Drive Type 16d-255d

 19h - (MCA) Slot 0 adapter card ID

 19h - (AMI)

bits 3-0: ???

bits 7-4: ???

For most manufacturers the last drive type (typically either 47d or 49d)

is "user defined" and parameters are stored elsewhere in the CMOS.

 19h - (AMSTRAD)    WORD Joystick fire button 1 scancode/ASCII code

default: FFFFh	- (no translation)

---------------------------------------------

 1Ah - Second Extended Hard Disk Drive Type (see 19h above)

 1Ah - (MCA) Slot 0 adapter card ID

---------------------------------------------

 1Bh - (MCA) Slot 1 adapter card ID

 1Bh - (AMI) First Hard Disk (type 47) user defined: # of Cylinders, LSB

 1Bh - (AMSTRAD)    WORD Joystick fire button 2 scancode/ASCII code

default: FFFFh	- (no translation)

 1Bh - (PHOENIX) LSB of Word to 82335 RC1 roll compare register

 1Bh - (AWARD) Configuration Bits

    Bit 7-4 ???

    Bit 3   Shadow ROM BIOS at DC00-DFFF

    Bit 2     "	    "	 "   " D800-DBFF

    Bit 1     "	    "	 "   " D400-D7FF

    Bit 0     "	    "	 "   " D000-D3FF

---------------------------------------------

 1Ch - (MCA) Slot 1 adapter card ID

 1Ch - (AMI) First Hard Disk user defined: # of Cylinders, High Byte

 1Ch - (PHOENIX) MSB of Word to 82335 RC1 roll compare register

 1Ch,1Dh - (AWARD) Password

    Stored as a checksum or CRC using unknown algorithm.  (See byte 11h

    to enable)

---------------------------------------------

 1Dh - (MCA) Slot 2 adapter card ID

 1Dh - (AMI) First Hard Disk user defined: Number of Heads

 1Dh - (AMSTRAD)    WORD mouse button 1 scancode/ASCII code

default: FFFFh	- (no translation)

 1Dh - (Zenith Z-200 monitor) Boot Drive Selection

       Bits 6-5 (0xx0 0000)

       00 - MFM Monitor

       01 - First floppy drive (A:)

       10 - First fixed disk (C:)

       11 - First floppy drive (A:). If not there then First fixed disk (C:)

    (this is the default).

 1Dh - (PHOENIX) LSB of Word to 82335 RC2 roll compare register

 1Dh - (AWARD) MSB of password checksum (see byte 1Ch)

 1Dh - (Quadtel HT 12 BIOS) first user def. drive: # of cylinders low byte

---------------------------------------------

 1Eh - (MCA) Slot 2 adapter card ID

 1Eh - (AMI) First Hard Disk user defined: Write Precompensation Cylinder,

       Low Byte

 1Eh - (PHOENIX) MSB of Word to 82335 RC2 roll compare register

 1Eh - (AWARD) 2nd Hard Disk user defined (type 48): # of Cylinders Low Byte

 1Eh - (Quadtel HT 12 BIOS) first user def. drive

    bits 7-4: number of heads

    bits 3-0: # of cylinders MSB

---------------------------------------------

 1Fh - (MCA) Slot 3 adapter card ID

 1Fh - (AMI) First Hard Disk user defined: Write Precompensation Cylinder,

       High Byte

 1Fh - (AMSTRAD)    WORD mouse button 2 scancode/ASCII code

default: FFFFh	- (no translation)

 1Fh - (AWARD) 2nd Hard Disk user defined (type 48): # of Cylinders High Byte

 1Fh - (Quadtel HT 12 BIOS) first user def. drive: write precom. cyl. low byte

---------------------------------------------

 20h - (MCA) Slot 3 adapter card ID

 20h - (AMI) First Hard Disk user defined: Control Byte

     bits 7-6 no retries (1)

     bit 5    bad sector map at last cylinder+1

     bit 4    unused (0)

     bit 3    more than 8 heads

     bits 2-0 unused (0)

 20h - (AMI WinBIOS) First Hard Disk user defined: Landing Zone, Low Byte

 20h - (PHOENIX) First user defined hard disk (type 48) Cylinders LSB

 20h - (AWARD) 2nd Hard Disk user defined (type 48): Number of Heads

 20h - (Quadtel HT 12 BIOS) first user def. drive

    bits 7-4: landing zone MSB

    bits 3-0: write precom. cyl. MSB

---------------------------------------------

 21h - (MCA) Programmable Option Select configuration byte 2

 21h - (AMI) First Hard Disk user defined: Landing Zone, Low Byte

 21h - (AMI WinBIOS) First Hard Disk user defined: Landing Zone, High Byte

 21h - (AMSTRAD) BYTE mouse X scaling factor, default: 0Ah

 21h - (PHOENIX) First user defined hard disk (type 48) Cylinders MSB

 21h - (AWARD) 2nd Hard Disk user defined (type 48): Write Precomp Low Byte

 21h - (Quadtel HT 12 BIOS) first user def. drive: landing zone low byte

---------------------------------------------

 22h - (MCA) Programmable Option Select configuration byte 3

 22h - (AMI) First Hard Disk user defined: Landing Zone, High Byte

 22h - (AMI WinBIOS) First Hard Disk user defined: # of Sectors per track

 22h - (AMSTRAD) BYTE mouse Y scaling factor default: 0Ah

 22h - (PHOENIX) First user defined hard disk (type 48)	 of Heads

 22h - (AWARD) 2nd Hard Disk user defined (type 48): Write Precomp High Byte

 22h - (Quadtel HT 12 BIOS) first user def. drive: sectors per track

---------------------------------------------

 23h - (MCA) Programmable Option Select configuration byte 4

 23h - (AMI) First Hard Disk user defined: # of Sectors per track

 23h - (AMI WinBIOS) Second Hard Disk user defined: # of Cylinders, Low Byte

 23h - (AMSTRAD) BYTE initial VDU mode and drive count	default: 20h

    bit 7:  enables extended serial flow control

    (NB this is buggy)

    bit 6:  set if two floppy drives installed

    bits 5 & 4: (from Amstrad 1640 tech ref)

 0   0	    Internal video adapter

 0   1	    CGA card added; 40 x 25 mode

 1   0	    CGA card added; 80 x 25 mode

 1   1	    mono card added; 80 x 25 mode

 23h - (PHOENIX) First user defined hard disk (type 48) Write Precomp. LSB

 23h - (AWARD) 2nd Hard Disk user defined (type 48): Landing Zone Low Byte

 23h - (Quadtel HT 12 BIOS) second user def. drive: # of cylinders low byte

---------------------------------------------

 24h - (MCA) Programmable Option Select configuration byte 5

 24h - (AMI) Second Hard Disk user defined: # of Cylinders, Low Byte

 24h - (AMI WinBIOS) Second Hard Disk user defined: # of Cylinders, High Byte

 24h - (AMSTRAD)    BYTE initial VDU character attribute, default: 7h

 24h - (PHOENIX) First user defined hard disk (type 48) Write Precomp. MSB

 24h - (AWARD) 2nd Hard Disk user defined (type 48): Landing Zone High Byte

 24h - (Quadtel HT 12 BIOS) second user def. drive

    bits 7-4: number of heads

    bits 3-0: # of cylinders MSB

---------------------------------------------

 25h - (AMI) Second Hard Disk user defined: # of Cylinders, High Byte

 25h - (AMI WinBIOS) Second Hard Disk user defined: Number of Heads

 25h - (AMSTRAD)    BYTE size of RAM disk in 2K blocks

default: 0  - only used by the RAMDISK software supplied.

 25h - (PHOENIX) First user defined hard disk (type 48) Parking zone LSB

 25h - (AWARD) 2nd Hard Disk user defined (type 48): Sectors per Track

 25h - (Quadtel HT 12 BIOS) second user def. drive: write precom. cyl. low byte

---------------------------------------------

 26h - (AMI) Second Hard Disk user defined: Number of Heads

 26h - (AMI WinBIOS) Second Hard Disk user defined: Write Precompensation

Cylinder, Low Byte

 26h - (AMSTRAD)    BYTE initial system UART setup byte

default: E3h - format as for Int 14h fn 0

 26h - (PHOENIX) First user defined hard disk (type 48) Parking zone MSB

 26h - (AWARD) 1st Hard Disk user defined (type 49): # of Cylinders Low Byte

 26h - (Quadtel HT 12 BIOS) second user def. drive

    bits 7-4: landing zone MSB

    bits 3-0: write precom. cyl. MSB

---------------------------------------------

 27h - (AMI) Second Hard Disk user defined: Write Precompensation Cylinder,

       Low Byte

 27h - (AMI WinBIOS) Second Hard Disk user defined: Write Precompensation

Cylinder, High Byte

 27h - (AMSTRAD)    BYTE initial external UART setup byte

default: E3h - format as for Int 14h fn 0

 27h - (PHOENIX) First user defined hard disk (type 48) Sectors per track

 27h - (AWARD) 1st Hard Disk user defined (type 49): # of Cylinders High Byte

 27h - (Quadtel HT 12 BIOS) second user def. drive: landing zone low byte

---------------------------------------------

 28h - (AMI) Second Hard Disk user defined: Write Precompensation Cylinder,

       High Byte

 28h - (AMI WinBIOS) Second Hard Disk user defined: Landing Zone, Low Byte

 28h - (HP Vectra) checksum over bytes 29h-2Dh

 28h - (AWARD) 1st Hard Disk user defined (type 49): Number of Heads

 28h - (Quadtel HT 12 BIOS) second user def. drive: sectors per track

 28h-3Fh (AMSTRAD) 24 BYTEs user applications default: zeroes

---------------------------------------------

 29h - (AMI) Second Hard Disk user defined: Control Byte (80h if # of heads

       is equal or greater than 8)

 29h - (AMI WinBIOS) Second Hard Disk user defined: Landing Zone, High Byte

 29h - (PHOENIX) LSB word to Intel 82335 CC0 compare register

 29h - (AWARD) 1st Hard Disk user defined (type 49): Write Precomp  Low Byte

 29h - (HP Vectra) officially reserved "CMOS_HPCONFIG"

bit 7: include byte 2Ch in checksum (default = 0)

bit 6: select second ROM video adapter as primary (default = 0)

bits 5-1: reserved

bit 0: manufacturing test enabled

---------------------------------------------

 2Ah - (AMI) Second Hard Disk user defined: Landing Zone, Low Byte

 2Ah - (AMI WinBIOS) Second Hard Disk user defined: # of Sectors per track

 2Ah - (HP Vectra) officially reserved

 2Ah - (PHOENIX) MSB word to Intel 82335 CC0 compare register

 2Ah - (AWARD) 1st Hard Disk user defined (type 49): Write Precomp  High Byte

---------------------------------------------

 2Bh - (AMI) Second Hard Disk user defined: Landing Zone, High Byte

 2Bh - (AMI WinBIOS) IDE and shadowing control

    bit 7: LBA mode enabled

    bit 6: IDE block mode enabled

    bit 5: 32-bit transfer enabled

    bit 4: unused

    bit 3: shadowing of DC00h enabled

    bit 2: shadowing of D800h enabled

    bit 1: shadowing of D400h enabled

    bit 0: shadowing of D000h enabled

 2Bh - (HP Vectra) officially reserved

 2Bh - (PHOENIX) LSB word to Intel 82335 CC1 compare register

 2Bh - (AWARD) 1st Hard Disk user defined (type 49): Landing Zone   Low Byte

---------------------------------------------

 2Ch - (AMI) Second Hard Disk user defined: # of Sectors per track

 2Ch - (AMI WinBIOS) cache control

    bit 7: external RAM cache enabled

    bit 6: internal RAM cache enabled

    bit 5: shadowing of E000h enabled

    bit 4: shadowing of CC00h enabled

    bit 3: shadowing of C800h enabled

    bit 2: shadowing of C400h (video ROM) enabled

    bit 1: shadowing of C000h (video ROM) enabled

    bit 0: shadowing of system BIOS (F000h, 64K) enabled

 2Ch - (HP Vectra) officially reserved

 2Ch - (COMPAQ) bit 6:	0 - numlock OFF on boot, 1 - numlock ON at boot

 2Ch - (PHOENIX) MSB word to Intel 82335 CC1 compare register

 2Ch - (AWARD) 1st Hard Disk user defined (type 49): Landing Zone   High Byte

---------------------------------------------

 2Dh - (AMI Hi-Flex BIOS) Configuration Options

    bit 7 Weitek Installed

    bit 6 Floppy Drive Seek - turn off for fast boot

    bit 5 Boot Order	0 - Drive C:, then A:

1 - Drive A:, then C:

    bit 4 Boot Speed (0 - Low; 1 - High)

    bit 3 External Cache Enable (1 = On)

    bit 2 Internal Cache Enable (1 = On)

    bit 1 Use Fast Gate A20 after boot (1 = On)

    bit 0 Turbo Switch (1 = On)

 2Dh - (AMI WinBIOS)

    bit 7 Weitek Installed

    bit 6 bootsector virus protection enabled

    bit 5 mouse enabled

    bit 4 password checking (0 setup, 1 always)

    bit 3 parity error check enabled

    bits 2-1 boot order (00 = C:A:, 01 = A:C:)

    bit 0 turbo switch enabled

 2Dh - (HP Vectra) officially reserved

 2Dh - (PHOENIX) Checks for values AAh or CCh

 2Dh - (AWARD) 1st Hard Disk user defined (type 49): Sectors per Track

---------------------------------------------

 2Eh - Standard CMOS Checksum, High Byte

 2Fh - Standard CMOS Checksum, Low Byte

 2Eh and 2Fh are as defined by the original IBM PC/AT specification and

 represent a byte-wise additive sum of the values in locations 10h-2Dh only,

 00h-0Fh and 30h-33h are not included. This definition is used by most

 clone manufacturers including AMI, Compaq, Tandon, NEC, and Zenith. The

 IBM PS/2 line does not follow this standard with the range 19h-31h being

 undefined.  On the original HP Vectra, this checksum only covers locations

 10h to 20h, with a separate checksum for bytes 29h-2Ch (see offset 28h).

---------------------------------------------

 30h - Extended Memory in K, Low Byte

---------------------------------------------

 31h - Extended Memory in K, High Byte

 (this appears to mirror the value in bytes 17h-18h.)

---------------------------------------------

 32h - Century Byte (BCD value for the century - currently 19h)

 32h - (IBM-PS2) Configuration CRC low byte. CRC for range 10h-31h

---------------------------------------------

 33h - Information Flag

    bit 7 128K (??? believe this indicates the presence of the special 128k

      memory expansion board for the AT to boost the "stock" 512k

      to 640k - all machines surveyed have this bit set)

    bits 6-0 ???

 33h - (IBM PS/2) Configuration CRC high byte (see entry for 32h)

 33h - (PHOENIX) Bit 4 (000x 0000) bit 4 from Intel CPU register CR0

 33h - (AMI WinBIOS)

    bit 7: IBM-defined top 128K present

    bits 6-4 CPU internal clock frequency

000-011 = 25, 33, 40, 50 MHz

100 = 60/66 MHz

101 = 75 MHz

110 = 80 MHz

111 = 90/100 MHz

    bits 2-1 CPU internal clock multiplier

00-11 = 1,2,3,4

    bit 0 FlashROM programming enabled (Ctrl-Home pressed at power on)

Note: this location is not included in any CMOS checksum fields

 33h - (Quadtel HT12 BIOS 03.05.03)

    bit 7 = 1  640K RAM present

    bit 6 = extension type (=CPU's Machine Status Word)

    bit 1 = 1  print welcome message

---------------------------------------------

 34h - (AMI) Shadowing & Boot Password

  Bits 7-6 Password Selection

   00b Disable 10b Reserved

   01b Set     11b Boot

  Bit 5 C8000h Shadow ROM (Bit 1 = On)

  Bit 4 CC000h Shadow ROM (Bit 1 = On)

  Bit 3 D0000h Shadow ROM (Bit 1 = On)

  Bit 2 D4000h Shadow ROM (Bit 1 = On)

  Bit 1 D8000h Shadow ROM (Bit 1 = On)

  Bit 0 DC000h Shadow ROM (Bit 1 = On)

 24h - (AMI WinBIOS) system-specific information (bits 3-1)

 34h-3Ah - (AWARD) ??? unused ???  Defaults to all FFh's.

---------------------------------------------

 35h - (AMI) Shadowing

  bit 7 E0000h Shadow ROM (Bit 1 = On)

  bit 6 E4000h Shadow ROM (Bit 1 = On)

  bit 5 E8000h Shadow ROM (Bit 1 = On)

  bit 4 EC000h Shadow ROM (Bit 1 = On)

  bit 3 F0000h Shadow ROM (Bit 1 = On)

  bit 2 C0000h Shadow ROM (Bit 1 = On)

  bit 1 C4000h Shadow ROM (Bit 1 = On)

  bit 0 Reserved

 35h - (AMI WinBIOS) extended memory size in 64K blocks, low byte

 35h - (PHOENIX) Second user defined hard disk (type 48) Cylinders LSB

       NOTE: used only when PS/2 style password is NOT in effect.

 35h - (AMI 1990 Hyundai super-NB368S notebook)

  bit 3-1 = 000  shadow disabled

          = 011  video BIOS shadowed

  = 100  main BIOS shadowed

  = 111  both

  bit 0   coprocessor enabled

---------------------------------------------

 36h - (PHOENIX) Second user defined hard disk (type 48) Cylinders MSB

       NOTE: used only when PS/2 style password is NOT in effect.

 36h - (AWARD)

bit 6: IDE 32-bit transfer mode

 36h - (AMI)

bits 1-0: ???

bits 3-2: ???

 36h - (AMI WinBIOS) extended memory size in 64K blocks, high byte

 36h - (AMI 1990 Hyundai super-NB368S notebook)

  bit 7	= 1 LCD, 0 CRT at boot time

  bit 6	= 1 reversed, 0 normal video mode

  bit 5	= 1 external, 0 internal keyboard

  bit 4-3 = 00  cpu speed high

    01  cpu speed medium

    10  cpu speed low

  bit 2-1  harddisk vendor 1,2,3,4

  bit 0	= 1 relocation enabled, 0 disabled

 36h - (Quadtel HT12 BIOS 03.05.03) extended memory, low byte

---------------------------------------------

 37h - (IBM PS/2) Date Century Byte

 37h - (PHOENIX) Second user defined hard disk (type 48) # of heads

       NOTE: used only when PS/2 style password is NOT in effect.

 37h - (AMI Hi-Flex BIOS) ???

    bit 7: ???

 37h - (AMI WinBIOS)

    bits 7-4 password seed

    bits 3-0 WinBIOS/AMIBIOS setup color options

 37h - (Quadtel HT12 BIOS 03.05.03) extended memory, high byte

 37h-3Ah - (AMI 1990 Hyundai super-NB368S notebook)

encoded password, max 4 bytes.

---------------------------------------------

 38h - (PHOENIX) Second user defined hard disk (type 48) Write Precomp. LSB

       NOTE: used only when PS/2 style password is NOT in effect.

 38h-3Dh (AMI) Encrypted Password

 38h-3Fh ??? (IBM PS/2) Encrypted Password. Initialized to 00h in all

     bytes. Will accept from 1-7 scan codes.

---------------------------------------------

 39h - (PHOENIX) Second user defined hard disk (type 48) Write Precomp. MSB

       NOTE: used only when PS/2 style password is NOT in effect.

---------------------------------------------

 3Ah - (PHOENIX) Second user defined hard disk (type 48) Parking Zone LSB

       NOTE: used only when PS/2 style password is NOT in effect.

---------------------------------------------

 3Bh - (PHOENIX) Second user defined hard disk (type 48) Parking Zone MSB

       NOTE: used only when PS/2 style password is NOT in effect.

 3Bh - (AWARD) Configuration Bits

    Bit 4-7 Screen Colors Used in Setup

0   Yellow/White on Blue (Default)

1   Magenta/White on Blue

2   Yellow/Black on Green

3   Yellow/Green on Cyan

4   Black/Yellow on Cyan

5   Brown/White on Cyan

6   White/Green on Red

7   White/White on Red

8   Green/White on Magenta

9   Yellow/Red on Magenta

Ah  Red/White on Grey

Bh  Yellow/White on Grey

Ch  Cyan/White on Grey

Dh  Cyan/Yellow on Black

Eh  White on Black (Monochrome)

Fh  Green/Red on Black

    Bit 3   ??? Default = 0

    Bit 2   ??? Default = 0

    Bit 1   ??? Default = 1

    Bit 0   Enable External Cache

---------------------------------------------

 3Ch - (PHOENIX) Second user defined hard disk (type 48) Sectors per track

       NOTE: used only when PS/2 style password is NOT in effect.

 3Ch - (AWARD) Boot Configuration Bits

    bit 7   1 = Disable Virus Warning on Boot

    bit 6,5 ???

    bit 4   Quick POST Enabled

    bit 3,2 ???

    bit 1   Enable Turbo Switch Input

    bit 0   0 = Boot from A, then C

    1 = Boot from C, then A

 3Ch - (Quadtel HT12 BIOS 03.05.03) total memory, low byte

---------------------------------------------

 3Dh - (AWARD) ???

 3Dh - (Phoenix) bit 3: base memsize 512K/640K

 3Dh - (Quadtel HT12 BIOS 03.05.03) total memory, high byte

---------------------------------------------

 3Eh - (AMI) Extended CMOS Checksum, High Byte (includes 34h - 3Dh)

 3Eh - (AWARD) Boot Configuration Bits

    bit 7   Shadow Video BIOS at C000h

    bit 6,5 ???

    bit 4   Swap Floppy Drive

    bit 3   ???

    bit 2   Don't Halt on Diskette Errors at Boot

    bit 1   Don't Halt on Keyboard Errors at Boot

    bit 0   Never Halt for any error at Boot

 3Eh - (Quadtel HT12 BIOS 03.05.03)

    bit 2 = 1  system error occurred ?? (timer/RTC)

    bit 0 = 0  extended system configuration loaded

  = 1  checksum error

 3Eh - (Phoenix) shadowing control

    bit 7	relocate enable

    bit 1	shadow video enable

    bit 0	shadow BIOS enable

---------------------------------------------

 3Fh - (AMI) Extended CMOS Checksum, Low Byte (includes 34h - 3Dh)

 3Fh - (AWARD) ???

---------------------------------------------

 End of original 64 CMOS RAM bytes. Many modern chips now contain 128

 bytes and the IBM PS/2 has provision for 2k of "Expansion CMOS".

 The AMI HI-FLEX description is below. If the chip does have only

 64 bytes, addresses will wrap so that requests for bytes 40h-7Fh will

 return the same values as 00h-3Fh.

---------------------------------------------

 40h ???

 40h - (AMI 1990 Hyundai super-NB368S notebook)

    bit 7 = 1  power save enabled

    bit 6-0 HD power save wait, units of 1 minute (0-20)

 40h - (AWARD) Motherboard Chipset (SiS 85C501/85C502 shown)

    bit 7-1 ???

    bit 0   Automatic Configuration Enabled (Default: 1=enabled)

---------------------------------------------

 40h-55h - (AMI WinBIOS) PCI BIOS setup data

---------------------------------------------

 41h - (AMI)

  Bits 7-6 IOR/IOW Wait states

  Bits 5-4 16-bit DMA Wait States

  Bits 3-2  8-bit DMA Wait States

  Bit 1	   EMR bit

  Bit 0	   DMA Clock Source

---------------------------------------------

 42h-43h ???

 42h-44h - (AWARD) ??? chipset setup ???

---------------------------------------------

 44h - (AMI)

  Bit 4 NMI Power Fail Warning

  Bit 3 NMI Local Bus Timeout

---------------------------------------------

 45h - (AMI)

  Bits 7-6 AT Bus 32-Bit Delay

  Bits 5-4 AT Bus 16-Bit Delay

  Bits 3-2 AT Bus 8-Bit Delay

  Bits 1-0 AT Bus I/O Delay

 45h - (AWARD) Motherboard Chipset (SiS 85C501/85C502 shown)

    Bit 7   System BIOS Cacheable (Default: 1=enabled)

    Bit 6   Video BIOS Cacheable  (Default: 1=enabled)

    Bit 6-0 ???

---------------------------------------------

 46h - (AMI)

  Bits 7-6 AT Bus 32 Bit Wait States

  Bits 5-4 AT Bus 16 Bit Wait States

  Bits 3-2 AT Bus  8 Bit Wait States

  Bits 1-0 AT Bus Clock Source

 46h thru 47h - (AWARD) ??? chipset setup ???

---------------------------------------------

 47h-50h ???

 48h-4Fh - (AWARD) ??? unused ???  Defaults to all FFh's.

---------------------------------------------

 50h - (AWARD) PCI Bus Slot 1 Latency Timer 0-255 (default: 0)

---------------------------------------------

 51h - (AMI)

  Bit 7	   Bank 0/1 RAS Precharge

  Bit 6	   Bank 0/1 Access Wait States

  Bits 3-2 Bank 0/1 Wait States

 51h - (AWARD) PCI Bus Setup

    Bit 7   PIRQ0# Interrupt Triggering

    0 = Edge Sensitive,

    1 = Level Sensitive

    Bit 6-2 ??? Default: all 1's

    Bit 0-1	Slot 1 IRQ Setup

00 = A-PIRQ0 (Default)

01 = B-PIRQ1

10 = C-PIRQ2

11 = D-PIRQ3

---------------------------------------------

 52h ???

 52h - (AWARD) PCI Bus Slot 2 Latency Timer 0-255 (default: 0)

---------------------------------------------

 53h - (AMI)

  Bit 7	   Bank 2/3 RAS Precharge

  Bit 6	   Bank 2/3 Access Wait States

  Bits 3-2 Bank 2/3 Wait States

 53h - (AWARD) PCI Bus Setup

    Bit 7   PIRQ1# Interrupt Triggering

    0 = Edge Sensitive,

    1 = Level Sensitive

    Bit 6-2 ??? Default: all 1's

    Bit 0-1	Slot 2 IRQ Setup

00 = A-PIRQ1 (Default)

01 = B-PIRQ2

10 = C-PIRQ3

11 = D-PIRQ0

---------------------------------------------

 54h-7Fh ???

 54h - (AWARD) PCI Bus Slot 3 Latency Timer 0-255 (default: 0)

---------------------------------------------

 55h - (AWARD) PCI Bus Setup

    Bit 7   PIRQ2# Interrupt Triggering

    0 = Edge Sensitive,

    1 = Level Sensitive

    Bit 6-2 ??? Default: all 1's

    Bit 0-1	Slot 3 IRQ Setup

00 = A-PIRQ2 (Default)

01 = B-PIRQ3

10 = C-PIRQ0

11 = D-PIRQ1

---------------------------------------------

 56h - (AWARD) ?? reserved for PCI Bus Slot 4 Latency Timer ??

---------------------------------------------

 57h - (AWARD) PCI Bus Setup

    Bit 7   PIRQ3# Interrupt Triggering

    0 = Edge Sensitive,

    1 = Level Sensitive

    Bit 6-0 ??not used	Default: all 1's

---------------------------------------------

 58h - (AWARD) ?? reserved for PCI Bus Slot 5 Latency Timer ??

bit 3: onboard CMD IDE Mode 3

---------------------------------------------

 59h - (AWARD) ?? reserved for PCI Bus Setup ??

---------------------------------------------

 5Ah - (AWARD) PCI Bus IRQ Setup

    Bit 4-7 PIRQ1# Interrupt Line (0=none, Bh=IRQ11, etc)

    Bit 0-3 PIRQ0# Interrupt Line     "	     "	      "

---------------------------------------------

 5Bh - (AWARD) PCI Bus IRQ Setup

    Bit 4-7 PIRQ3# Interrupt Line (0=none, Bh=IRQ11, etc)

    Bit 0-3 PIRQ2# Interrupt Line     "	     "	      "

---------------------------------------------

 5Ch-5Fh - (AWARD) ??? unused ???  Defaults to all FFh's.

---------------------------------------------

 5Eh - (AMI 1990 Hyundai super-NB368S notebook) - ???

00h when values from bios defaults

34h when values from power up defaults

---------------------------------------------

 60h-77h - (AMI WinBIOS) PCI chipset-specific setup information

---------------------------------------------

 60h - (AWARD) Power Management

    Bit 7	???

    Bit 6	Video Off Method

1  = V/H SYNC + Blank (default)

0  = Blank Screen

    Bit 4,5  Video Off Option

00 = Always On (default)

01 = Suspend -> Off

10 = Suspend, Standby -> Off

11 = All Modes -> Off

    Bit 3	PM Control by APM (1=Yes)

    Bit 2	???

    Bit 0,1	Power Management Setup

00  User Defined

01  Disabled (default)

10  Minimum Power Savings (40 Minutes for all events)

11  Maximum Power Savings (20 Seconds for all events)

---------------------------------------------

 61h - (AWARD) Power Management

    Bit 7   PM Event on HDD Ports Activity (1=enable)

    Bit 6   PM Event on LPT Port Activity (1=enable)

    Bit 5   PM Event on COM Port Activity (1=enable)

    Bit 4   HDD Power Down on Suspend

    Bit 0-3 HDD Power Down Time

0	Disabled

1-15	Time in Minutes

---------------------------------------------

 62h - (AMI 1990 Hyundai super-NB368S notebook)

FFh when values from bios defaults

FEh when values from power up defaults

 62h - (AWARD) Power Management

    Bit 7-4	Standby Mode Setting (for User Defined)

0   Disabled

1   20 Seconds

2   1 Minute

3   5 Minutes

4   10 Minutes

5   15 Minutes

6   20 Minutes

7   30 Minutes

8   40 Minutes

    Bit 0-3	Doze Mode Setting (for User Defined)

(See Standby Mode above)

---------------------------------------------

 63h - (AWARD) Power Management

    Bit 7	Disable PM Event on IRQ3 Activity (COM2) (1=disable)

    Bit 6	PM Event on VGA Activity (1=enable)

    Bit 5	??? (Defaults to 1)

    Bit 4	PM Event on PCI/ISA Master Activity (1=enable)

    Bit 0-3	Suspend Mode Setting (for User Defined)

(See Standby Mode above)

---------------------------------------------

 64h - (AMI 1990 Hyundai super-NB368S notebook) - ???

 64h - (AWARD) Power Management

    Bit 7	Disable PM Event on IRQ11 Activity (1=disable)

    Bit 6	Disable PM Event on IRQ10 Activity (1=disable)

    Bit 5	Disable PM Event on IRQ9 Activity (IRQ2 Redir) (1=disable)

    Bit 4	Disable PM Event on IRQ8 Activity (RTC Alarm) (1=disable)

    Bit 3	Disable PM Event on IRQ7 Activity (LPT1) (1=disable)

    Bit 2	Disable PM Event on IRQ6 Activity (Floppy) (1=disable)

    Bit 1	Disable PM Event on IRQ5 Activity (LPT2) (1=disable)

    Bit 0	Disable PM Event on IRQ4 Activity (COM1) (1=disable)

---------------------------------------------

 65h - (AWARD) Power Management

    Bit 7-4	??? may be unused.  Defaults to all 1's

    Bit 3	Disable PM Event on IRQ15 Activity (1=disable)

    Bit 2	Disable PM Event on IRQ14 Activity (Hard Disk) (1=disable)

    Bit 1	Disable PM Event on IRQ13 Activity (Coprocessor) (1=disable)

    Bit 0	Disable PM Event on IRQ12 Activity (PS/2 Mouse) (1=disable)

---------------------------------------------

 66h - (AMI 1990 Hyundai super-NB368S notebook)

doze mode timeout 00-0F, from table (0,12 -14 sec)

---------------------------------------------

 66h-79h - (AWARD) ??? unused ???  Defaults to all FFh's.

---------------------------------------------

 67h - (AMI 1990 Hyundai super-NB368S notebook)

sleep mode timeout 00-0F, units of 1 second

---------------------------------------------

 68h - (AMI 1990 Hyundai super-NB368S notebook)

suspend mode timeout 01-0F, units of 5 minutes

---------------------------------------------

 68h-6Fh - (AWARD) IDE hard disk params for first drive on secondary IDE port

---------------------------------------------

 69h - (AMI 1990 Hyundai super-NB368S notebook)

LCD mode timeout 01-0F, units of 1 minute

---------------------------------------------

 6Ah - (AMI 1990 Hyundai super-NB368S notebook) - ???

---------------------------------------------

 70h-77h - (AWARD) IDE hard disk params for second drive on secondary IDE port

---------------------------------------------

 78h-7Dh - (AMI WinBIOS) used by BIOS as scratch RAM

---------------------------------------------

 7Ah - (AWARD) Extended CMOS Checksum, High Byte

---------------------------------------------

 7Bh - (AWARD) Extended CMOS Checksum, Low Byte

    Award's extended checksum is the arithmetic sum of all the bytes

    from 40h (64 decimal) through 79h (121 decimal).

---------------------------------------------

 7Eh-7Fh - (AMI WinBIOS) used as scratch RAM by power management code

---------------------------------------------

Revision History

v1.25	June  1995	Added AMI WinBIOS info from Daniel Miller (Ralf)

v1.24	Jan,  1995	Added Award info from Tim Farley (Ralf)

v1.23	June, 1994	Added some MCA info from _The_Undocumented_PC_

v1.22	Feb,  1994	Added NMI mask note

v1.21	Jan,  1994	Added note for PS/2 checksum found

v1.20	Sept, 1993	PHOENIX data from Wim Osterholt added

additional AMI data from Howie (hjh@gwd.dst.gov.au)

v1.15	June, 1993	AMSTRAD data updated

v1.1	June, 1993	AMSTRAD & PS/2 data added

v1.0	June, 1993	First release: Motorola MC 146818,  PC-AT & AMI

"Hi-Flex" information baselined


Glossary

GLOSSARY

Last Change 8/13/95.

A20

(Address line 20) The 80286 and higher CPUs allow addresses in

real mode to extend slightly beyond the one megabyte mark, which causes

an incompatibility with some older programs which expect such addresses

to wrap back to the beginning of the address space.  For complete

compatibility with the 8088, newer machines thus contain circuitry

which permits the twenty-first address line (A20) to be disabled.  The

CPU then effectively has only twenty address lines in real mode, just

as the 8088 does, and addresses which would extend beyond the one

megabyte mark wrap to the beginning of the address space.  See also

High Memory Area, Real Mode.

ABIOS

(Advanced BIOS) The IBM XT/286 and PS/2 models with 80286 or

higher processors contain two separate BIOSes.  The ABIOS is a

protected-mode BIOS which is used by OS/2.  For machines without an

ABIOS, such as the IBM AT, OS/2 loads the equivalent of the ABIOS from

disk.  see also CBIOS

API

(Application Program[ming] Interface) The defined set of calls

which a program may make to interact with or request services of the

operating system or environment under which it is running.  Because the

inputs and outputs of the calls are well-defined, a program using the

API can continue using the identical calls even if the internal

organization of the program providing the API changes.

APL

(A Programming Language) An interactive, mathematically-

oriented language which is well-suited to manipulating matrices.

Originally using greek letters and numerous special symbols, thus

requiring a special display, versions are now available which use

keywords in place of the special symbols.

ASCIZ

A NUL-terminated ASCII string.  The ASCIZ string "ABC" consists

of the four bytes 41h, 42h, 43h, and 00h.  Unless otherwise specified,

maximum lengths given in the interrupt list do not include the

terminating NUL.

AVATAR

(Advanced Video Attribute Terminal Assembler and Recreator) A

set of control codes which may be used to affect the output of

characters to the screen on systems equipped with an appropriate

driver.  Similar in intent to ANSI sequences, AVATAR has shorter

command sequences and provides additional PC-specific functionality.

AVATAR is primarily used by the Opus and Maximus bulletin board systems

(it was designed by one of the developers of the Opus system).

BASIC

(Beginner's All-purpose Symbolic Instruction Code) A

programming language originally designed as a means of teaching

FORTRAN.  There are many variations of BASIC with differing

capabilities; the majority are interpreted but compiled BASIC is

becoming more popular.  All genuine IBM personal computers (including

the latest PS/2 models) come equipped with a cassette-based BASIC

interpreter in ROM.

BCD

(Binary Coded Decimal) A method of data storage where two

decimal digits are stored in each byte, one in the upper four bits and

the other in the lower four bits.  Since only the values 0 through 9

are used in each half of a byte, BCD values can be read as decimal

numbers on a hexadecimal display of memory or a file.

Big-Endian

One of the two major ways of organizing multi-byte numeric

values in memory.  A big-endian layout places the most significant byte

of the value in the lowest (first) memory location, i.e. 12345678h is

stored as 12h 34h 56h 78h.  Motorola processors are big-endian.  Compare

Little-Endian.

BIOS

(Basic Input/Output System) A set of standardized calls giving

low-level access to the hardware.  The BIOS is the lowest software

layer above the actual hardware and serves to insulate programs (and

operating systems) which use it from the details of accessing the

hardware directly.

BIOS Parameter Block

The BIOS Parameter Block stores the low-level layout of a

drive.  See also INT 21h Function 53h.

Boot

To start up the computer or operating system. The term "boot"

is a contraction of "bootstrap", which in turn comes from the

expression "to lift oneself by one's boot straps."  The ROM BIOS on IBM

PCs and compatibles reads in the first sector of the disk, which

contains a short (less than 500 bytes) program that reads in a portion

of the operating system, which in turn reads in the remainder of the

operating system.

Boot Drive

The disk drive from which the operating system was booted.  See

also Boot.

BPB

see BIOS Parameter Block

Breakpoint

When debugging, a memory location which when accessed causes a

break in the normal flow of execution and the invocation of the

debugger.  Used to let a program run at full speed until a certain

instruction is reached or (less frequently) a particular data item is

accessed or changed.

Cache

Caching is a method of increasing performance by keeping

frequently-used data in a location which is more quickly accessed. The

most common caches are disk caches (store disk sectors in RAM) and RAM

caches (store portions of main memory in special high-speed RAM which

may be accessed as fast as the CPU is capable of accessing memory).

See also Delayed Write, Write-Through.

Callback

A call to a specified function made by the operating system or

operating environment when a request (usually an asynchronous request)

completes.  This permits the calling program to continue operating while

the request is processed yet still be aware of its completion

immediately without the need to constantly poll the request's status.

See also Callout.

Callout

A call made by the operating system, operating environment, or

an application program on various events, which may be intercepted by

other software which is interested in the current state of the system.

See also Callback, External Device Interface.

CAS

see Communicating Applications Specification

CBIOS

(Compatibility BIOS) The IBM XT/286 and PS/2 models with 80286

or higher processors contain two separate BIOSes.  The CBIOS is a

real-mode BIOS which is compatible with the earlier products in the IBM

PC family and PS/2 models with 8086 processors.  See also ABIOS.

CDS

see Current Directory Structure

CGA

(Color/Graphics Adapter) One of the two video display boards

introduced together with the original IBM PC.  See also HGC, MDA.

Clock Tick

1/18.2 second, or approximately 55 milliseconds.  This is the

rate at which the IBM PC's system clock is updated.

CMOS

(Complementary Metal-Oxide-Silicon) A type of integrated

circuit design known for its low power consumption.

CMOS RAM

A small amount (typically 64 or 128 bytes) of memory in the system's

real-time clock chip that is preserved by the clock's battery and is used for

storing configuration information.  See also Real-Time Clock.

Communicating Applications Specification

DCA and Intel's standard programmatic interface for sending and

receiving FAXes via any of a number of internal FAX boards.

CP/M

(Control Program for Microcomputers) An early operating system

for micros based on the 8-bit Intel 8080 CPU (and later the compatible

8085 and Zilog Z80 CPUs).  MSDOS version 1.0 was essentially a clone of

CP/M for the Intel 8086.

CP/M-86

One of the three operating systems offered by IBM for its

original PC (the other two were MSDOS and the UCSD p-System).  It has

since evolved into DR-DOS version 6 and Novell DOS 7.

CPU

(Central Processing Unit) The microprocessor which executes

programs on your computer.

Current Directory Structure

The data record used by DOS to keep track of the current

directory on a drive; whether the drive is valid, network, SUBSTituted,

or JOINed; and other pertinent information.  See also INT 21h Function

52h.

Cylinder

The set of concentric tracks of data located at the same

position on each data-bearing surface of the disk. A double-sided

floppy will contain two tracks per cylinder.

DAC

(Digital-to-Analog Converter) A hardware device (in its simplest

form, nothing more than a set of interconnected resistors) which converts

a digital number into an analog signal whose voltage is proportional to

the value of the digital number.  VGA and later color video boards use

DACs to convert color values into the analog signals sent to the display;

sound boards normally use DACs as well.

DCC

(Display Combination Code) A number which indicates both the

type of display adapter board and the type of monitor attached to the

video board.

Delayed Write

A form of caching in which control is returned before the data is

actually written to the storage media.  See also Cache, Write-Through.

Device Driver

An interface module between the device-independent portions of

the operating system and an actual hardware device which converts

device-independent requests into the actual sequence of device

operations to perform the requested action.  IO.SYS contains the

standard, built-in MSDOS device drivers such as CON, COM1, AUX, PRN,

etc.  See also INT 21h Function 52h and INT 2Fh Function 0802h.

Device Driver Request Header

The data structure passed to a device driver which contains the

command to be executed, its parameters, and space for a returned status

and data values.  See INT 2Fh Function 0802h.

DGIS

(Direct Graphics Interface Standard)

Direct Memory Access

A method whereby peripherals may transfer data into or out of

main memory without the involvement of the CPU.

Disk Transfer Address

The Disk Transfer Address indicates where functions which do

not take an explicit data address will read or store data.  Although

the name implies that only disk accesses use this address, other

functions use it as well.  See INT 21h Function 4Eh for an example of

the DTA's use.

DLL

see Dynamic Link Library

DMA

see Direct Memory Access

DOS Extender

A program which allows a program to run in protected mode while still

retaining access to real-mode MSDOS services.  See also Protected Mode.

DOS Parameter List

The DOS Parameter List is used to pass arguments to SHARE and

network functions.  See also INT 21h Function 5D00h.

DOS Protected-Mode Interface

An API which provides basic services for protected-mode programs to

allocate memory, invoke real-mode software, etc.  See also Virtual Control

Program Interface.

DOS Protected-Mode Services

An API designed by Novell (and first released with Novell DOS 7) which

allows TSRs to store most of themselves outside of the first megabyte of

memory.

DPB

see Drive Paramter Block

DPL

see DOS Parameter List

DPMI

see DOS Protected-Mode Interface

DPMS

see DOS Protected-Mode Services

DRAM

(Dynamic Random Access Memory) RAM memory which essentially consists

of a tiny capacitor for each bit of memory.  Since capacitors do not hold

a charge indefinitely, DRAM must be constantly refreshed to avoid losing

its contents.  Also, the process of reading the contents of the memory are

destructive, meaning extra time must be spent restoring the contents of

memory addresses which are accessed, so DRAM is slower than SRAM.  See also

Refresh, SRAM.

Drive Parameter Block

The DOS Drive Parameter Block stores the description of the

media layout for a logical drive, as well as some housekeeping

information.  See also INT 21h Function 1Fh and INT 21h Function 32h.

DTA

see Disk Transfer Address

DWORD

Doubleword; four bytes.  Commonly used to hold a 32-bit

segment:offset or selector:offset address.

Dynamic Link Library

A collection of subroutines which are linked with a program at

the time it is loaded into memory rather than permanently placed in the

executable.  This has the advantage of allowing a single copy of the

subroutine library to reside on disk or in memory even when it is used

by many programs.  It also permits all programs using the DLL to be

updated without recompiling simply by installing a new version of the

library.

EGA

(Enhanced Graphics Adapter) IBM's second color video board for the

IBM PC family, capable of a maximum resolution of 640x350 pixels in 16

simultaneous colors of a total of 64 possible colors.

EISA

(Enhanced Industry-Standard Architecture) A 32-bit superset of the

IBM AT's expansion bus (which is now known as the ISA or Industry-Standard

Architecture bus).

EMS

see Expanded Memory Specification

EOI

(End of Interrupt) A particular command sent to the interrupt

controller to indicate that the interrupt has been handled by software

and that new interrupts of the same or lower priority may now be signalled

by the interrupt controller.

ESDI

(Enhanced Small Device Interface) A disk drive interface type

which was briefly popular before IDE took over.  An ESDI drive can

transfer data between the drive and controller at 10, 15, or 20

megabits per second, which is faster than an MFM or RLL controller but

slower than what is possible with an IDE or SCSI drive.  See also IDE.

Exception

A signal by the CPU that some error condition has been encountered

that it can not deal with without a program's intervention.  The most commonly

encountered exceptions on Intel processors are Exceptions 12 and 13, which

are stack and general problems, respectively.  Exception 13 is typically

caused by a memory access which wraps from the end of a segment back to

the beginning.

Expanded Memory Specification

A specification devised by Lotus, Intel, and Microsoft for

accessing more than one megabyte of memory by bank-switching additional

memory into the one megabyte real mode address space.

Extended BIOS Data Area

A block of memory, typically the 1K at the top of conventional

memory, which is used to store additional data for use by the BIOS which

does not fit into the 256-byte data area at segment 0040h.

Extended File Control Block

A DOS File Control Block which has had an additional seven

bytes prepended to permit control of file attributes (which are stored

in the appendage).  See also FCB.

Extended Memory

Memory beyond the one megabyte address which is available only

on 80286 and higher machines.  Except for a small portion (the High

Memory Area), extended memory is only accessible from protected mode.

Extended Memory Specification

A specification devised by Microsoft which allows multiple

programs to share extended (above 1 megabyte) memory and noncontiguous

memory above 640K.  See also Upper Memory Block.

External Device Interface

A series of calls made by the DESQview multitasker on various

"interesting" events, which may be intercepted by programs which wish to

keep track of the current system state.  See also Callout.

FAT

see File Allocation Table

FCB

see File Control Block

File Allocation Table

A data structure on disk that records which clusters are free,

which are unusable, and which have been allocated.  The clusters occupied

by a file are linked into a list in the file allocation table, allowing

DOS to find the contents of the file.

File Control Block

A data record in the calling program's address space which is

used by DOS 1.x functions to record the state of an open file.  See

also INT 21h Function 13h.

File Handle

A small positive integer used to identify the previously-opened

file on which a program wishes to perform an operation.

Flush

To force the copying of any data still stored in temporary

buffers to its final destination.

FM

(Frequency Modulation)  A method of encoding data as a series of

magnetic flux reversals on disk or tape, commonly known as single-density

recording.  In frequency modulation, a series of clock pulses are written

at regular intervals, with one data bit for each clock pulse.  See also

MFM, RLL.

Formatting

Preparing a storage medium (usually magnetic media such as a

disk or tape) for storing data.  Low-level or physical formatting

writes all necessary housekeeping data to enable the storage device

to read the media and may also initialize the storage units on the

media to a known state.  High-level or logical formatting writes data

used by the operating system, such as allocation information and

directories onto media which has already been physically formatted.

Formatting programs often perform both a low-level and a high-level

format.

FOSSIL

(Fido/Opus/Seadog Standard Interface Layer)  A standardized API

for performing serial I/O, originally used by the Fido and Opus bulletin-

board software and Seadog bulletin-board mailer, but now in wider use.

FTP

(File Transfer Protocol)  The standard protocol for copying files

from one machine to another on a TCP/IP (Internet) network.  Also the

program of the same name with which a user may transfer files.

Gather-Write

see Scatter/Gather

Handle

A short identifier, usually a small integer or a pointer, for

some other object which is maintained or controlled by the operating

system or environment; a particular handle may be valid system-wide or

may have meaning only for a particular process.  See also File Handle.

HGC

(Hercules Graphics Card) A monochrome video adapter capable

of 720x352 monochrome graphics.  The HGC was the first non-IBM video

adapter for the IBM PC.  See also CGA, MDA.

High Memory Area

The first 65520 bytes (64K less 16 bytes) of extended memory.

This area is accessible from real mode on the 80286 and higher

processors because these processors do not wrap addresses at one

megabyte as the 8088 and 8086 do.  See also A20, INT 2Fh Functions

4A01h.

HMA

see High Memory Area

Horizontal Retrace

When a monitor has finished displaying a single scan line, it must

move it electron beam(s) back to the left edge of the CRT, during which time

it turns off the beam.  On the original CGA (and some early clones), the

only time one could access the display memory without causing "snow" was

during the horizontal or vertical retrace periods, as the display adapter

was not itself accessing the display memory during those times.  See also

Vertical Retrace.

IDE

(Integrated Drive Electronics) A type of disk drive interface

which essentially extends the PC's expansion bus all the way to the

drive and places the drive controller on the disk drive itself.  See

also ESDI.

IFS

see Installable File System

Installable File System

An Installable File System which allows non-DOS format media to

be used by DOS.  In most ways, an IFS is very similar to a networked

drive, although an IFS would typically be local rather than remote.

See also INT 21h Function 52h.

IP

(Internet Protocol) The lower level (transport layer) of the

TCP/IP protocol suite.  See also TCP, TCP/IP.

IPC

(Inter-Process Communication) Any one of numerous methods for

allowing two or more separate processes to exchange data.

IPX

(Internetwork Packet Exchange) A low-level layer of Novell's

NetWare networking software.

IRQ

(Interrupt ReQuest) A hardware line connected to the interrupt

controller chip which signals that a CPU interrupt should be generated.

ISA

(Industry-Standard Architecture) The expansion bus used by the

IBM PC/AT.  See also EISA.

JFT

see Job File Table

Job File Table

The Job File Table (also called Open File Table) stored in a

program's PSP which translates handles into SFT numbers.  See also INT

21h Function 26h.

LCD

(Liquid Crystal Display)

List of Lists

An internal DOS table of lists and other tables through which

most DOS-internal data structures may be reached.  See INT 21h Function

52h.

Little-Endian

One of the two major ways of organizing multi-byte numeric

values in memory.  A little-endian layout places the least significant

byte of the value in the lowest (first) memory location, i.e. 12345678h

is stored as 78h 56h 34h 12h.  Intel processors are little-endian.

Compare Big-Endian.

LPT

Abbreviation for Line PrinTer.

MCB

see Memory Control Block

MCGA

(Multi-Color Graphics Array) The low-end color adapter offered

in IBM's early PS/2 series machines.

MDA

(Monochrome Display Adapter) A text-only video adapter introduced

together with the original IBM PC.  See also CGA, HGC.

Memory Control Block

The data structure containing the length and owner (among other

things) of a portion of the memory managed by DOS.  See INT 21h

Function 52h.

MFM

(Modified Frequency Modulation) A method of encoding data as a

series of magnetic flux reversals on disk or tape, commonly known as

double-density recording.  In contrast to FM, modified frequency

modulation omits all clock pulses except those between pairs of zero

bits.  See also FM, RLL.

Mickey

The smallest increment of motion a mouse can sense.

MIDI

(Musical Instrument Digital Interface) A standardized interface

for controlling musical instruments with a computer.

Modem

(contraction of MOdulator/DEModulator)

Multitasking

Any of a number of methods by which multiple programs may

execute concurrently, with rapid switching between the programs giving

the appearance that all are executing simultaneously.

MZ

The letters M and Z appear in numerous places in DOS (memory

control blocks, .EXE header, etc.); the conventional explanation is

that these are the initials of Mark Zbikowski, one of the principal

architects of MSDOS 2.0.

NCB

see Network Control Block

NDIS

(Network Driver Interface Specification) A hardware-independent

network interface developed by Microsoft and 3com.  See also Packet

Driver, TCP/IP.

NetBIOS

One of a number of low-level device-independent network

interfaces; the other major interfaces are Novell's IPX and the

Internet's IP (Internet Protocol, the lower-level portion of TCP/IP).

Network Control Block

A Network Control Block used to pass requests to NetBIOS and

receive status information from the NetBIOS handler.

Network Redirector

A program which permits access to network devices (disks,

printers, etc.) using the MSDOS kernel network redirector interface.

See also Network Shell, Redirector Interface.

Network Shell

A program which permits access to network devices (disks,

printers, etc.) by intercepting DOS calls before they reach the DOS

kernel and handling those operating on network devices while passing

through actions on local devices.  See also Network Redirector.

NMI

see Non-Maskable Interrupt

Non-Maskable Interrupt

An interrupt which can not be disabled by clearing the CPU's

interrupt enable flag, unlike most normal interrupts.  Non-maskable

interrupts are typically used to signal calamities which require

immediate action, such as a hardware failure or imminent loss of power.

Non-Volatile RAM

Memory which can be modified like normal RAM but does not lose

its contents when the system's power is turned off. This memory may be

powered by a battery when the system power if off, or it may be a type

of memory which does not need electricity to maintain its contents,

such as EEPROM or bubble memory.

NVRAM

see Non-Volatile RAM

ODI

(Open Data-link Interface) A hardware-independent network

interface developed by Novell, Inc.  See also NDIS, Packet Driver.

Open File Table

see Job File Table

Overscan Area

The "border" between the edge of the area where graphics or text can

be displayed and the actual edge of the area the video adapter can illuminate

on the monitor's screen.

Overscan Register

On a display adapter, the control register which specifies the color

to be displayed in the overscan area.

Packet Driver

Any one of the numerous drivers conforming to FTP Software's

Packet Driver Specification, which provides a hardware-independent

network interface.  See also NDIS, ODI.

Page Fault

A CPU-generated signal, and the operating system's reaction to it,

generated when a program accesses a page of virtual memory which is not

located in RAM at the time.  The operating system's response is to load in

the required page, possibly writing some other page out to disk in order

to make room.  See also INT 0E.

Page Register

A peripheral register or I/O port used to extend the addressing

range of some other register or I/O port.  The prime example are

the DMA page registers, which allow the DMA controller to address

more than 64K (since the DMA controller only contains 16 address

lines; this is the cause of the 64K DMA boundaries).

Palette Register

A memory location on the video controller which specifies the actual

color displayed for a particular color number.

Park

To move a hard disk's read/write heads to a position in which

it is safe to turn off the power and transport the disk drive.  Many

drives also lock the heads into position when they are parked,

providing additional protection from sudden movement.

Pel

see Pixel

Pixel

A picture element, the smallest addressable unit of a graphical

display.

Post

Make known, either generally or to a specific handler, that a

particular event of interest has occurred.

POST

see Power-On Self-Test

Power-On Self-Test

A brief examination of the system's functionality performed

each time the system is turned on.

Print Spooler

see SPOOL.

Program Segment Prefix

The Program Segment Prefix is a 256-byte data area prepended to

a program when it is loaded.  It contains the command line that the

program was invoked with, and a variety of housekeeping information for

DOS.  See also INT 21h Function 26h.

Protected Mode

One of the operating modes of the 80286 and higher Intel

processors, in which addresses used by programs no longer correspond to

physical addresses and the CPU enforces various protection mechanisms

designed to prevent one program from disrupting other programs or the

operating system.  See also Real Mode, Virtual-86 Mode.

PSP

see Program Segment Prefix

PWORD

Six bytes.  Used to hold an 80386 protected-mode "far" address,

consisting of a segment selector and a 32-bit offset, or a Turbo Pascal

"real" variable.  See also DWORD, QWORD.

QWORD

(quad-word) Eight bytes.  See also DWORD, PWORD.

RAM

(Random Access Memory)	See also DRAM, SRAM.

Real Mode

One of the operating modes of the 80286 and higher Intel

processors, and the only operating mode of the 8088, 8086, 80186, and

80188 processors.  In this mode, all addresses used by programs

correspond directly to real physical addresses (thus the full name,

Real Address Mode) and there are no CPU-imposed protections between

programs.  See also Protected Mode, Virtual-86 Mode.

Real-Time Clock

A battery-powered clock which continues to maintain its time even

while the system is powered down.  On PCs, the real-time clock contains a

small amount of battery-powered memory (set CMOS RAM).

Redirector Interface

The set of device-independent INT 2Fh function calls invoked by

the MSDOS kernel to operate on devices it recognizes as network

devices.  These function calls provide a lower-level interface than the

INT 21h calls made to DOS, allowing a program intercepting these

functions to be simpler than one intercepting INT 21h calls.  See INT

2Fh Functions 1100h through 1130h.

Refresh

The process of periodically rewriting the contents of a DRAM

memory chip to keep it from fading.  The term "refresh" is also commonly

applied to redrawing the image on a CRT's phosphors.   See also DRAM.

RGB

(Red-Green-Blue) The color specification mechanism normally

used in computer displays, where colors are separated into their

primary-color components.  See also YUV.

RLL

(Run-Length Limited) A method of encoding data as a series of

magnetic flux reversals on disk or tape.  RLL can achieve higher data

densities than MFM recording because it encodes the data such that

(on average), fewer than one flux reversal per data bit is required

(however, timing becomes more critical).  RLL is actually an entire

family of encoding methods, specified with two numbers indicating the

minimum and maximum distances between one bits (flux transitions).  The

variant normally called RLL is RLL-2,7; RLL-1,7 and RLL-3,9 are also in

use.  MFM is in effect RLL-1,3.  See also FM, MFM.

ROM

(Read-Only Memory) A memory for program storage which may not be

changed by the program as it runs.

RTC

see Real-Time Clock

Scan Code

The actual key number sent by the keyboard, which differs from the

key codes seen by application programs.  The enhanced (101/102-key) keyboard

actually sends different scan codes than the original (83/84-key) IBM

keyboard, but these are normally translated by the keyboard controller into

the scan codes used by the original keyboard before they become visible to

programs.

Scatter/Gather

A technique in which the contiguous data of a disk sector or sectors

is transferred to or from multiple non-contiguous areas of memory.  When

reading into multiple areas of memory, this is called a scatter-read; the

opposing operation is called gather-write.

Scatter-Read

see Scatter/Gather

SCSI

(Small Computer Systems Interface) A system-independent

expansion bus typically used to connect hard disks, tape drives, and

CD-ROMs to a computer.  A host adapter connects the SCSI bus to the

computer's own bus.  See also ESDI, IDE.

SDA

see Swappable Data Area

Sector

The smallest addressable unit of data on a disk; under MS-DOS,

this is normally 512 bytes.  See also Track.

SFT

see System File Table

SPOOL

(Simultaneous Peripheral Operation OnLine)  The process of

performing output to a slow peripheral such as a printer while other

tasks continue running on the CPU.  This term dates back to mainframe

days before the invention of timesharing.

SQL

(Structured Query Language)

SRAM

(Static Random Access Memory)  RAM which typically consists of one

flip-flop per bit of memory.  Unlike DRAMs, static RAM retains its contents

as long as power is applied.  Because there is no need to refresh the

contents of memory addresses which are read, SRAM is faster than DRAM,

but it is more expensive and typically is available in much smaller sizes

than DRAM because each bit occupies more space on the chip.  See also DRAM.

SVGA

(Super VGA) A video adapter capable of higher resolution

(pixels and/or colors) than the 320x200x256 and 640x480x16 which IBM's

VGA adapter is capable of producing.  See also VESA.

Swappable Data Area

The portion of the DOS data segment containing all of the

variables used internally by DOS to record the state of a function call

in progress.  See also INT 21h Function 5D06h and INT 21h Function

5D0Bh.

System File Table

A System File Table is a DOS-internal data structure used to

maintain the state of an open file for the DOS 2+ handle functions,

just as an FCB maintains the state for DOS 1.x functions.  See also INT

21h Function 52h.

TCP

(Transmission Control Protocol) A higher level (session layer)

of the TCP/IP protocol suite.  See also IP, TCP/IP.

TCP/IP

The protocol suite originally developed by DARPA for use on its

ARPAnet network, which is now known as the Internet.  See also IP, TCP.

TSR

(Terminate and Stay Resident) A program which remains in memory

after terminating in order to provide services to other programs or the

user.  The name comes from the name of the DOS function call used to

remain in memory after termination.

Track

One of multiple concentric circular rings of data on a single

data-bearing surface of a disk.  Tracks at the same location on

different surfaces form a cylinder.

UMB

see Upper Memory Block

UNC

(Universal Naming Convention) The standard way of describing

network servers and their directories under MS-DOS and Windows NT.  A

name in UNC format consists of two backslashes followed by the server

name, optionally followed by another backslash and a list of

backslash-separated fields; for example

\\SERVER1\SHARED-DIR\SUBDIR1\SUBDIR2\FILENAME.EXT.

Upper Memory Block

A noncontiguous section of allocatable memory located between

the 640K and 1024K addresses.  See also INT 21h Function 52h.

V86

see Virtual-86 Mode

VCPI

see Virtual Control Program Interface

VDM

see Virtual DOS Machine

VDS

see Virtual DMA Specification

VDU

(Video Display Unit)  Mainframe-speak for computer monitor.

Vertical Retrace

When a monitor has finished displaying an image by sweeping its

electron beam(s) over the face of the CRT, it has to move the beam back up

to the top of the display.  During the time this takes, the beam is turned

off.  The vertical retrace interval is a good time to change the displayed

picture for smooth animation.  See also Horizontal Retrace.

VESA

(Video Electronics Standards Association)  An industry group

which sets both hardware and software standards and recommendations.

The term VESA is also used to denote compliance with the VESA SuperVGA

BIOS Extensions, a standard set of video BIOS functions for accessing

video modes of higher resolution than those defined by IBM.

VGA

(Video Graphics Array) The video adapter introduced with the

IBM PS/2 series of computers.

Virtual-86 Mode

One of the operating modes of the 80386 and 80486 processors in

which user programs run as if the CPU were in Real Mode, while

providing the protection and address-mapping capabilities of Protected

Mode to a supervisor program which oversees the virtual machine on

which the user programs are running.  This mode is called Virtual-86

because one or more virtual 8086 environments are run on a single CPU.

See also Protected Mode, Real Mode, Virtual Machine.

Virtual Control Program Interface

A simple API for protected-mode programs to allocate memory and

switch into or out of protected mode.  See also DOS Protected-Mode Interface.

Virtual DMA Specification

A set of interrupt calls which permit the use of DMA even on

systems running in protected or Virtual-86 mode with their address

remapping, or systems such as Micro Channel PS/2s with multiple bus

masters independently performing DMA operations.

Virtual DOS Machine

A special type of virtual machine provided by OS/2 version 2.0,

in which a copy of MS-DOS or an MS-DOS compatible operating system (or

even an incompatible 8086 operating system) is run and appears to have

full control of the system.  See also Virtual Machine, INT 21h Function

64h.

Virtual Machine

One method for multitasking programs is to virtualize the CPU

and other hardware, giving the appearance of sole possession of the

system to each program being run.  Such a virtualized environment is

called a virtual machine.  See also Virtual-86 Mode, Virtual DOS

Machine.

virus

A program which attaches itself to other programs for the purpose

of duplicating itself.  Viruses often (but not always) contain harmful

code which is triggered by some event, after a certain number of

reproductions, or on a specific date.  See also worm.

VM

see Virtual Machine

VxD

A virtual device driver for Windows 3.0 or 3.1.  See also

device driver.

WORM

(Write Once, Read Many)  A storage medium which may be written

exactly once, but may not be altered once data is stored.

worm

A program which duplicates itself, typically across networks.

In contrast to a virus, a worm does not attach itself to other programs,

but can reproduce itself independently.  See also virus.

Write-Through

One of two main types of caches, the write-through cache immediately

writes any new information to the medium it is caching, so that the cache

never contains information which is not already present on the cached device.

See also cache,

XBDA

see Extended BIOS Data Area

XDI

see External Device Interface

XGA

(Extended Graphics Array)

XMS

see Extended Memory Specification

YIQ

see YUV

YUV

A color specification mechanism used in NTSC-type color

television signals.  Y represents luminance (overall brightness, the

only part of the signal used by black-and-white televisions), while U

and V are chrominance (color) information.  Also called YIQ.  See also

RGB.


Notes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Notes

FILELIST

CONTACT_INFO

Note

DISCLAIMER

FLAGS

CATEGORIES

Interrupts


INT 00 - CPU-generated - DIVIDE ERROR
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 00 - CPU-generated - DIVIDE ERROR

INT 00 ---- - CPU-generated - DIVIDE ERROR

INT 00 ---- - Zenith - ROM DEBUGGER

Interrupts


INT 01 - CPU-generated - SINGLE STEP; (80386+) - DEBUGGING EXCEPTIONS
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 01 - CPU-generated - SINGLE STEP; (80386+) - DEBUGGING EXCEPTIONS

INT 01 ---- - CPU-generated - SINGLE STEP

INT 01 ---- - CPU-generated (80386+) - DEBUGGING EXCEPTIONS

Interrupts


INT 02 - external hardware - NON-MASKABLE INTERRUPT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 02 - external hardware - NON-MASKABLE INTERRUPT

INT 02 ---- - external hardware - NON-MASKABLE INTERRUPT

Interrupts


INT 03 - CPU-generated - BREAKPOINT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 03 - CPU-generated - BREAKPOINT

INT 03 ---- - CPU-generated - BREAKPOINT

INT 03 ---- - Columbia PCs (desktop,VP portables) - ROM DEBUGGER

INT 03 ---- - Realia COBOL - DEBUGGER SUPPORT

INT 03 ---- - Watcom WVIDEO, Watcom WD - OUTPUT DEBUGGING MESSAGE

INT 03 ---- - DTown Utilities - POP UP

INT 03 0910 - Soft-ICE - BACK DOOR COMMANDS - DISPLAY STRING IN Soft-ICE WINDOW

INT 03 0911 - Soft-ICE - BACK DOOR COMMANDS - EXECUTE Soft-ICE COMMAND

INT 03 0912 - Soft-ICE - BACK DOOR COMMANDS - GET BREAKPOINT INFORMATION

INT 03 0913 - Soft-ICE v2.5x - BACK DOOR COMMANDS - SET Soft-ICE BREAKPOINT

INT 03 0914 - Soft-ICE v2.5x - BACK DOOR COMMANDS - REMOVE Soft-ICE BREAKPOINT

Interrupts


INT 04 - CPU-generated - INTO DETECTED OVERFLOW
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 04 - CPU-generated - INTO DETECTED OVERFLOW

INT 04 ---- - CPU-generated - INTO DETECTED OVERFLOW

Interrupts


INT 05 - PRINT SCREEN; CPU-generated (80186+) - BOUND RANGE EXCEEDED
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 05 - PRINT SCREEN; CPU-generated (80186+) - BOUND RANGE EXCEEDED

INT 05 ---- - PRINT SCREEN

INT 05 ---- - CPU-generated (80186+) - BOUND RANGE EXCEEDED

INT 05 454A - PSPS v2.01 - EJECT PAGE

INT 05 4E57 - PSPS v2.01 - SET PARAMETERS

INT 05 5053 - PSPS v2.01 - GET PARAMETERS

INT 05 554E - PSPS v2.01 - UNINSTALL

Interrupts


INT 06 - CPU-generated (80286+) - INVALID OPCODE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 06 - CPU-generated (80286+) - INVALID OPCODE

INT 06 ---- - CPU-generated (80286+) - INVALID OPCODE

INT 06 ---- - HP 95LX - SLEEP/WAKEUP

INT 06 ---- - no-name clone - GRAPHICS CHARACTER TABLE (NOT A VECTOR!)

Interrupts


INT 07 - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 07 - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE

INT 07 ---- - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE

Interrupts


INT 08 - IRQ0 - SYSTEM TIMER; CPU-generated (80286+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 08 - IRQ0 - SYSTEM TIMER; CPU-generated (80286+)

INT 08 ---- - IRQ0 - SYSTEM TIMER

INT 08 ---- - CPU-generated (80286+) - DOUBLE EXCEPTION DETECTED

Interrupts


INT 09 - IRQ1 - KEYBOARD DATA READY; CPU-generated (80286,80386)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 09 - IRQ1 - KEYBOARD DATA READY; CPU-generated (80286,80386)

INT 09 ---- - IRQ1 - KEYBOARD DATA READY

INT 09 ---- - CPU-generated (80286,80386) - PROCESSOR EXTENSION PROTECTION ERROR

INT 09 ---- - internal hardware - RESERVED BY Intel (80486)

Interrupts


INT 0A - IRQ2 - LPT2/EGA,VGA/IRQ9; CPU-generated (80286+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 0A - IRQ2 - LPT2/EGA,VGA/IRQ9; CPU-generated (80286+)

INT 0A ---- - IRQ2 - LPT2 (PC), VERTICAL RETRACE INTERRUPT (EGA,VGA)

INT 0A ---- - IRQ2 - Tandy 1000-series HARD DISK

INT 0A ---- - IRQ2 - ROLAND MPU MIDI INTERFACE

INT 0A ---- - CPU-generated (80286+) - INVALID TASK STATE SEGMENT

Interrupts


INT 0B - IRQ3 - SERIAL COMMUNICATIONS (COM2); CPU-generated (80286+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 0B - IRQ3 - SERIAL COMMUNICATIONS (COM2); CPU-generated (80286+)

INT 0B ---- - IRQ3 - SERIAL COMMUNICATIONS (COM2)

INT 0B ---- - CPU-generated (80286+) - SEGMENT NOT PRESENT

INT 0B ---- - HP 95LX - LOW-LEVEL KEYBOARD HANDLER

Interrupts


INT 0C - IRQ4 - SERIAL COMMUNICATIONS (COM1); CPU-generated (80286+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 0C - IRQ4 - SERIAL COMMUNICATIONS (COM1); CPU-generated (80286+)

INT 0C ---- - IRQ4 - SERIAL COMMUNICATIONS (COM1)

INT 0C ---- - CPU-generated (80286+) - STACK FAULT

INT 0C ---- - IBM SYSTEM 36/38 WORKSTATION EMULATION - API POINTER

Interrupts


INT 0D - IRQ5 - FIXED DISK/LPT2/reserved; CPU-generated (80286+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 0D - IRQ5 - FIXED DISK/LPT2/reserved; CPU-generated (80286+)

INT 0D ---- - IRQ5 - FIXED DISK (PC,XT), LPT2 (AT), reserved (PS/2)

INT 0D ---- - IRQ5 - Tandy 1000 60 Hz RAM REFRESH

INT 0D ---- - HP 95LX - INFRARED INTERRUPT

INT 0D ---- - CPU-generated (80286+) - GENERAL PROTECTION VIOLATION

Interrupts


INT 0E - IRQ6 - DISKETTE CONTROLLER; CPU-generated (80386+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 0E - IRQ6 - DISKETTE CONTROLLER; CPU-generated (80386+)

INT 0E ---- - IRQ6 - DISKETTE CONTROLLER

INT 0E ---- - CPU-generated (80386+ native mode) - PAGE FAULT

INT 0E ---- - HP 95LX - EXTERNAL CARD INTERRUPT

Interrupts


INT 0F - IRQ7 - PARALLEL PRINTER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 0F - IRQ7 - PARALLEL PRINTER

INT 0F ---- - IRQ7 - PARALLEL PRINTER

INT 0F ---- - HP 95LX - REAL-TIME CLOCK

Interrupts


INT 10 - VIDEO; CPU-generated (80286+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 10 - VIDEO; CPU-generated (80286+)

INT 10 ---- - CPU-generated (80286+) - COPROCESSOR ERROR

INT 10 00-- - VIDEO - SET VIDEO MODE

INT 10 0070 - VIDEO - Everex Micro Enhancer EGA/Viewpoint VGA - EXTENDED MODE SET

INT 10 007E - VIDEO - Paradise VGA, AT&T VDC600 - SET SPECIAL MODE

INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - SET VGA OPERATION

INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - SET NON-VGA OPERATION

INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - QUERY MODE STATUS

INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - EXTENDED FUNCTIONS

INT 10 007F - Paradise VGA - ???

INT 10 007F - Paradise VGA - ???

INT 10 007F - Paradise VGA - ???

INT 10 007F - Paradise VGA - ???

INT 10 007F - Paradise VGA - ???

INT 10 01-- - VIDEO - SET TEXT-MODE CURSOR SHAPE

INT 10 02-- - VIDEO - SET CURSOR POSITION

INT 10 03-- - VIDEO - GET CURSOR POSITION AND SIZE

INT 10 04-- - VIDEO - READ LIGHT PEN POSITION (except VGA)

INT 10 04-- - HUNTER 16 - GET CURSOR ADDRESS

INT 10 05-- - VIDEO -  SELECT ACTIVE DISPLAY PAGE

INT 10 05-- - VIDEO - PCjr, Tandy 1000 - MANIPULATE CRT/CPU PAGE REGISTERS

INT 10 05-- - VIDEO - Corona/Cordata BIOS v4.10+ - GRAPHICS BITMAP BUFFER

INT 10 06-- - VIDEO - SCROLL UP WINDOW

INT 10 07-- - VIDEO - SCROLL DOWN WINDOW

INT 10 08-- - VIDEO - READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION

INT 10 09-- - VIDEO - WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION

INT 10 0A-- - VIDEO - WRITE CHARACTER ONLY AT CURSOR POSITION

INT 10 0B-- - VIDEO - SET BACKGROUND/BORDER COLOR

INT 10 0B-- - VIDEO - SET PALETTE

INT 10 0C-- - VIDEO - WRITE GRAPHICS PIXEL

INT 10 0D-- - VIDEO - READ GRAPHICS PIXEL

INT 10 0E-- - VIDEO - TELETYPE OUTPUT

INT 10 0E-- - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE

INT 10 0F-- - VIDEO - GET CURRENT VIDEO MODE

INT 10 0F56 - VUIMAGE DISPLAY DRIVER (v2.20 and below)

INT 10 0F-- - FRIEZE v7.41+ - INSTALLATION CHECK

INT 10 10-- - BIOS Window Extension v1.1 - SET WINDOW COORDINATES

INT 10 10-- - VIDEO - Eagle PC2 BIOS Rev. C - SET SCROLL SPEED

INT 10 1000 - VIDEO - SET SINGLE PALETTE REGISTER (PCjr,Tandy,EGA,MCGA,VGA)

INT 10 1001 - VIDEO - SET BORDER (OVERSCAN) COLOR (PCjr,Tandy,EGA,VGA)

INT 10 1002 - VIDEO - SET ALL PALETTE REGISTERS (PCjr,Tandy,EGA,VGA)

INT 10 1003 - VIDEO - TOGGLE INTENSITY/BLINKING BIT (Jr, PS, TANDY 1000, EGA, VGA)

INT 10 1007 - VIDEO - GET INDIVIDUAL PALETTE REGISTER (VGA,UltraVision v2+)

INT 10 1008 - VIDEO - READ OVERSCAN (BORDER COLOR) REGISTER (VGA,UltraVision v2+)

INT 10 1009 - VIDEO - READ ALL PALETTE REGISTERS AND OVERSCAN REGISTER (VGA)

INT 10 1010 - VIDEO - SET INDIVIDUAL DAC REGISTER (VGA/MCGA)

INT 10 1012 - VIDEO - SET BLOCK OF DAC REGISTERS (VGA/MCGA)

INT 10 1013 - VIDEO - SELECT VIDEO DAC COLOR PAGE (VGA)

INT 10 1015 - VIDEO - READ INDIVIDUAL DAC REGISTER (VGA/MCGA)

INT 10 1017 - VIDEO - READ BLOCK OF DAC REGISTERS (VGA/MCGA)

INT 10 1018 - VIDEO - SET PEL MASK (VGA/MCGA)

INT 10 1019 - VIDEO - READ PEL MASK (VGA/MCGA)

INT 10 101A - VIDEO - GET VIDEO DAC COLOR-PAGE STATE (VGA)

INT 10 101B - VIDEO - PERFORM GRAY-SCALE SUMMING (VGA/MCGA)

INT 10 10E0 - VIDEO - Diamond Speedstar 24 - SET 24-BIT GRAPHICS MODE

INT 10 10F0 - VIDEO - Tseng ET-4000 BIOS - SET HiColor GRAPHICS MODE

INT 10 10F1 - VIDEO - Tseng ET-4000 BIOS - GET DAC TYPE

INT 10 10F2 - VIDEO - Tseng ET-4000 BIOS - CHECK IF HiColor MODE/SET HiColor MODE

INT 10 11-- - BIOS Window Extension v1.1 - GET WINDOW COORDINATES

INT 10 11-- - VIDEO - TEXT-MODE CHARACTER GENERATOR FUNCTIONS (PS, EGA, VGA)

INT 10 11-- - VIDEO - Realtek RTVGA - TEXT-MODE CHARACTER GENERATOR FUNCTIONS

INT 10 110F - VIDEO - Realtek RTVGA - SET USER 8x8 GRAPHICS CHARACTERS

INT 10 1110 - VIDEO - Realtek RTVGA - SET USER GRAPHICS CHARACTERS

INT 10 1111 - VIDEO - Realtek RTVGA - SET ROM 8x14 GRAPHICS CHARACTERS

INT 10 1112 - VIDEO - Realtek RTVGA - SET ROM 8x8 DOUBLE-DOT CHARACTERS

INT 10 1120 - VIDEO - GRAPH-MODE CHARGEN - SET USER 8x8 GRAPHICS CHARS (PS,EGA,VGA)

INT 10 1121 - VIDEO - GRAPH-MODE CHARGEN - SET USER GRAPHICS CHARACTERS (PS,EGA,VGA)

INT 10 1122 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x14 GRAPHICS CHARS (PS,EGA,VGA)

INT 10 1123 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x8 DOUBLE-DOT CHARS (PS,EGA,VGA)

INT 10 1124 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPHICS CHARS (VGA,MCGA)

INT 10 1129 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPH CHARS (Compaq Systempro)

INT 10 1130 - VIDEO - GET FONT INFORMATION (EGA, MCGA, VGA)

INT 10 1130 - M10_SCR.COM v3.5+ - INSTALLATION CHECK

INT 10 12-- - BIOS Window Extension v1.1 - GET BLANKING ATTRIBUTE

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS, EGA, VGA, MCGA) - GET EGA INFO

INT 10 12-- - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET BIOS INFO

INT 10 12-- - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET VIDEO RAM SIZE

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS,EGA,VGA,MCGA) - ALTERNATE PRTSC

INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - SELECT VERTICAL RESOLUTION

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - PALETTE LOADING

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - VIDEO ADDRESSING

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - GRAY-SCALE SUMMING

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - CURSOR EMULATION

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS) - DISPLAY-SWITCH INTERFACE

INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS, VGA) - VIDEO REFRESH CONTROL

INT 10 12-- - VIDEO - XGA - MAINFRAME INTERACTIVE SUPPORT

INT 10 12-- - Tseng ET-4000 BIOS v8.00 (06/07/91) - BUG

INT 10 12-- - Tseng ET-4000 BIOS v8.00 (06/07/91) - BUG

INT 10 12-- - VIDEO - ALTERNATE FUNC SELECT (ATI,Tatung,Taxan) - ENHANCED FEATURES

INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 12-- - Cirrus Logic BIOS - INQUIRE VGA TYPE

INT 10 12-- - Cirrus Logic BIOS - GET BIOS VERSION NUMBER

INT 10 12-- - Cirrus Logic BIOS - GET DESIGN REVISION CODE

INT 10 12-- - Cirrus Logic BIOS v3.02 - INQUIRE OPTIONS

INT 10 12-- - Cirrus Logic BIOS - GET INSTALLED MEMORY

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - EN/DISABLE REVERSE VIDEO MODE

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET FRAME COLOR

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE BOLD MODE

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET AUTOMAP/EMULATE ATTRIBUTES

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE EXPAND MODE

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET CENTERING MODE

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET 720-DOT FIXUP MODE

INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SWITCH DISPLAY

INT 10 12-- - Cirrus Logic BIOS - FORCE 8-BIT OR 16-BIT OPERATION

INT 10 12-- - Cirrus Logic BIOS v3.02 - POWER CONSERVATION

INT 10 12-- - Cirrus Logic BIOS - GET USER OPTIONS

INT 10 12-- - Cirrus Logic BIOS - GET VIDEO MODE AVAILABILITY

INT 10 12-- - Cirrus Logic BIOS - READ MONITOR TYPE AND ID FROM 15-PIN CONNECTOR

INT 10 12-- - Cirrus Logic BIOS - SET MONITOR HORIZONTAL RETRACE FREQUENCY

INT 10 12-- - Cirrus Logic BIOS - SET VGA REFRESH

INT 10 12-- - Cirrus Logic BIOS - SET MONITOR TYPE

INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 13-- - VIDEO - WRITE STRING (AT and later,EGA)

INT 10 13-- - DOS/V - READ/WRITE DOUBLE-BYTE CHARACTER SET CHARACTERS/ATTRIBUTES

INT 10 1400 - VIDEO - LOAD USER-SPECIFIED LCD CHARACTER FONT (CONV,Compaq Port 386)

INT 10 1401 - VIDEO - LOAD SYSTEM ROM DEFAULT LCD CHARACTER FONT (CONV,CP386)

INT 10 1402 - VIDEO - SET MAPPING OF LCD HIGH INTENSITY ATTRIBUTES (CONV,CP386)

INT 10 15-- - VIDEO - GET PHYSICAL DISPLAY PARAMETERS (CONVERTIBLE)

INT 10 15-- - VIDEO - SET SUPERIMPOSE MODE (Sperry PC)

INT 10 18-- - VIDEO - DOS/V - GET/SET FONT PATTERN

INT 10 19-- - Japanese VIDEO - DOUBLE-BYTE CHARACTER SET SHIFT INFORMATION

INT 10 1A00 - VIDEO - GET DISPLAY COMBINATION CODE (PS,VGA/MCGA)

INT 10 1A01 - VIDEO - SET DISPLAY COMBINATION CODE (PS,VGA/MCGA)

INT 10 1B-- - VIDEO - FUNCTIONALITY/STATE INFORMATION (PS,VGA/MCGA)

INT 10 1C-- - VIDEO - SAVE/RESTORE VIDEO STATE (PS50+,VGA)

INT 10 1D-- - VIDEO - DOS/V - SHIFT STATUS LINE CONTROL

INT 10 1D-- - SpeedSTAR Plus BIOS v4.23+ - SET SYNC PARAMETERS

INT 10 1D-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

INT 10 1F00 - VIDEO - XGA - GET DMQS (Display Mode Query and Set) DATA LENGTH

INT 10 1F01 - VIDEO - XGA - READ DMQS DATA

INT 10 3000 - VIDEO - LOCATE 3270PC CONFIGURATION TABLE (INSTALLATION CHECK)

INT 10 3800 - Tinytalk Personal v1.09f+ - GET CONFIGURATION INFO

INT 10 3801 - Tinytalk Personal v1.10 - ???

INT 10 3802 - Tinytalk Personal v1.10 - ???

INT 10 3803 - Tinytalk Personal v1.10 - GET ???

INT 10 3804 - Tinytalk Personal v1.10 - GET ???

INT 10 3805 - Tinytalk Personal v1.10 - GET ???

INT 10 3806 - Tinytalk Personal v1.10 - ???

INT 10 39-- - Tinytalk Personal v1.10 - ???

INT 10 40-- - VIDEO - SET GRAPHICS MODE (Hercules GRAFIX)

INT 10 41-- - VIDEO - SET TEXT MODE (Hercules GRAFIX)

INT 10 42-- - VIDEO - CLEAR CURRENT PAGE (Hercules GRAFIX)

INT 10 43-- - VIDEO - SELECT DRAWING PAGE (Hercules GRAFIX)

INT 10 44-- - VIDEO - SELECT DRAWING FUNCTION (Hercules GRAFIX)

INT 10 45-- - VIDEO - SELECT PAGE TO DISPLAY (Hercules GRAFIX)

INT 10 46-- - VIDEO - DRAW ONE PIXEL (Hercules GRAFIX)

INT 10 47-- - VIDEO - FIND PIXEL VALUE (Hercules GRAFIX)

INT 10 48-- - VIDEO - MOVE TO POINT (Hercules GRAFIX)

INT 10 49-- - VIDEO - DRAW TO POINT (Hercules GRAFIX)

INT 10 4A-- - VIDEO - BLOCK FILL (Hercules GRAFIX)

INT 10 4B-- - VIDEO - DISPLAY CHARACTER (Hercules GRAFIX)

INT 10 4B-- - FRIEZE - API

INT 10 4C-- - VIDEO - DRAW ARC (Hercules GRAFIX)

INT 10 4D-- - VIDEO - DRAW CIRCLE (Hercules GRAFIX)

INT 10 4E-- - VIDEO - FILL AREA (Hercules GRAFIX)

INT 10 4E00 - VESA XGA BIOS Extensions - GET XGA ENVIRONMENT INFORMATION

INT 10 4E01 - VESA XGA BIOS Extensions - RETURN XGA SUBSYSTEM INFORMATION

INT 10 4E02 - VESA XGA BIOS Extensions - RETURN XGA MODE INFORMATION

INT 10 4E03 - VESA XGA BIOS Extensions - SET XGA VIDEO MODE

INT 10 4E04 - VESA XGA BIOS Extensions - RETURN CURRENT VIDEO MODE

INT 10 4E05 - VESA XGA BIOS Extensions - SET FEATURE CONNECTOR STATE

INT 10 4E06 - VESA XGA BIOS Extensions - RETURN FEATURE CONNECTOR STATE

INT 10 4F00 - VESA SuperVGA BIOS (VBE) - GET SuperVGA INFORMATION

INT 10 4F01 - VESA SuperVGA BIOS - GET SuperVGA MODE INFORMATION

INT 10 4F02 - VESA SuperVGA BIOS - SET SuperVGA VIDEO MODE

INT 10 4F03 - VESA SuperVGA BIOS - GET CURRENT VIDEO MODE

INT 10 4F04 - VESA SuperVGA BIOS - SAVE/RESTORE SuperVGA VIDEO STATE

INT 10 4F05 - VESA SuperVGA BIOS - CPU VIDEO MEMORY CONTROL

INT 10 4F06 - VESA SuperVGA BIOS v1.1+ - GET/SET LOGICAL SCAN LINE LENGTH (PIXELS)

INT 10 4F06 - VESA SuperVGA BIOS v2.0+ - SET LOGICAL SCAN LINE LENGTH (BYTES)

INT 10 4F06 - VESA SuperVGA BIOS v2.0+ - GET MAXIMUM SCAN LINE LENGTH

INT 10 4F07 - VESA SuperVGA BIOS v1.1+ - GET/SET DISPLAY START

INT 10 4F08 - VESA SuperVGA BIOS v1.2+ - GET/SET DAC PALETTE CONTROL

INT 10 4F09 - VESA SuperVGA BIOS v2.0+ - GET/SET PALETTE ENTRIES

INT 10 4F0A - VESA SuperVGA BIOS v2.0+ - GET PROTECTED-MODE CODE

INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - GET CAPABILITIES

INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - SET DISPLAY POWER STATE

INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - GET DISPLAY POWER STATE

INT 10 4F13 - VESA Audio Interface - VBE/AI INSTALLATION CHECK

INT 10 4F13 - VESA Audio Interface - LOCATE DEVICE

INT 10 4F13 - VESA Audio Interface - QUERY DEVICE

INT 10 4F13 - VESA Audio Interface - OPEN DEVICE

INT 10 4F13 - VESA Audio Interface - CLOSE DEVICE

INT 10 4F13 - VESA Audio Interface - UNINSTALL DRIVER

INT 10 4F13 - VESA Audio Interface - DRIVER CHAIN/UNCHAIN

INT 10 4F4D - VESA - VIDEO CURSOR INTERFACE REQUEST

INT 10 4FFF - VESA SuperVGA BIOS - Everex - TURN VESA ON/OFF

INT 10 4FFF - Diamond Stealth 24 - SET/RESET DUAL DISPLAY MODE

INT 10 50-- - SCROLOCK.COM - INSTALLATION CHECK

INT 10 5000 - VIDEO - AX PC - SET SCREEN COUNTRY CODE

INT 10 5001 - VIDEO - AX PC - GET SCREEN COUNTRY CODE

INT 10 5049 - VIDEO - SCREENR v1.55+ - API

INT 10 51-- - SCROLOCK.COM - ENABLE/DISABLE

INT 10 5100 - VIDEO - AX PC - REGISTER EXTERNAL CHARACTER

INT 10 5101 - VIDEO - AX PC - READ CHARACTER

INT 10 5200 - VIDEO - AX PC - SET VIRTUAL TEXT RAM BUFFER

INT 10 5201 - VIDEO - AX PC - GET VIRTUAL TEXT RAM BUFFER

INT 10 53-- - Show Partner F/X v3.6 - START PRESENTATION

INT 10 55-- - Show Partner F/X v3.6 - UNINSTALL

INT 10 5555 - VIDEO - ATI EGA/VGA Wonder Super Switch - INSTALLATION CHECK

INT 10 5F00 - Chips & Technologies Extended BIOS - RETURN CHIP INFORMATION

INT 10 5F00 - VIDEO - Realtek RTVGA - RETURN CHIP VERSION

INT 10 5F01 - Chips & Technologies Extended BIOS - SET PREPROGRAMMED EMULATION

INT 10 5F01 - VIDEO - Realtek RTVGA - WRITE RTVGA BIOS STRING TO DESTINATION

INT 10 5F02 - Chips & Technologies Extended BIOS - AUTO EMULATION CONTROL

INT 10 5F02 - VIDEO - Realtek RTVGA - RETURN RTVGA ON-BOARD MEMORY SIZE

INT 10 5F03 - VIDEO - Realtek RTVGA - SET ???

INT 10 5F03 - Chips & Technologies Extended BIOS - SET POWER-ON VIDEO CONDITIONS

INT 10 5F03 - Chips & Technologies Extended BIOS - SET POWER-ON EMULATION MODE

INT 10 5F10 - Chips & Technologies Extended BIOS - ???

INT 10 5F50 - Chips & Technologies Extended BIOS - GET LAPTOP DISPLAY STATUS

INT 10 5F51 - Chips & Technologies Extended BIOS - SET DISPLAY STATUS ???

INT 10 5F5E - Chips & Technologies Extended BIOS - SET ???

INT 10 5F-- - Chips & Technologies Extended BIOS - SAVE/RESTORE SUPERVGA STATE

INT 10 60-- - HUNTER 16 - SET GRAPHICS FONT

INT 10 61-- - HUNTER 16 - MOVE CURSOR TO GRAPHICS CO-ORDINATES

INT 10 62-- - HUNTER 16 - GET CURSOR POSITION IN GRAPHICS CO-ORDINATES

INT 10 63-- - HUNTER 16 - SET CONTRAST

INT 10 64-- - HUNTER 16 - SET BACKLIGHT LEVEL

INT 10 6500 - HUNTER 16 - GET BACKLIGHT TIMEOUT

INT 10 6501 - HUNTER 16 - SET BACKLIGHT TIMEOUT

INT 10 66-- - HUNTER 16 - SPLIT DISPLAY

INT 10 6A00 - Direct Graphics Interface Standard (DGIS) - INQUIRE AVAILABLE DEVICES

INT 10 6A01 - Direct Graphics Interface Standard (DGIS) - REDIRECT CHARACTER OUTPUT

INT 10 6A02 - DGIS - INQUIRE INT 10 OUTPUT DEVICE

INT 10 6E00 - Paradise VGA internal - GET ???

INT 10 6E04 - Paradise VGA internal - GET SCREEN SIZE AND ???

INT 10 6E05 - Paradise VGA internal - SET MODE

INT 10 6F00 - HP Vectra EX-BIOS - INSTALLATION CHECK

INT 10 6F00 - VIDEO - Video7 VGA,VEGA VGA - INSTALLATION CHECK

INT 10 6F01 - VIDEO - Video7 VGA,VEGA VGA,HP EX-BIOS - GET MONITOR INFO

INT 10 6F02 - HP Vectra EX-BIOS - SET MONITOR INFO

INT 10 6F03 - HP Vectra EX-BIOS - MODIFY MONITOR INFO

INT 10 6F04 - VIDEO - Video7 VGA,VEGA VGA,HP Vectra - GET MODE AND SCREEN RESOLUTION

INT 10 6F05 - VIDEO - Video7 VGA,VEGA EXTENDED EGA/VGA,HP Vectra - SET VIDEO MODE

INT 10 6F06 - VIDEO - Video7 VGA,VEGA VGA - SELECT AUTOSWITCH MODE

INT 10 6F07 - VIDEO -  Video7 VGA,VEGA VGA - GET VIDEO MEMORY CONFIGURATION

INT 10 70-- - VIDEO - TANDY 2000 only - GET ADDRESS OF VIDEO RAM

INT 10 70-- - HUNTER 16 - DRAW ELLIPSE/CIRCLE

INT 10 7000 - Everex Extended Video BIOS - RETURN EMULATION STATUS

INT 10 7000 - Everex Extended Video BIOS - GET PAGING FUNCTION POINTER FOR CURR MODE

INT 10 7000 - Everex Extended Video BIOS - GET SUPPORTED MODE INFO

INT 10 71-- - VIDEO - TANDY 2000 only - GET ADDRESS OF INCRAM

INT 10 71-- - HUNTER 16 - DRAW LINE/BOX

INT 10 72-- - VIDEO - TANDY 2000 only - SCROLL RIGHT PART OR ALL OF SCREEN

INT 10 72-- - HUNTER 16 - SELECT TEXT-MODE INVERSE VIDEO MECHANISM

INT 10 73-- - VIDEO - TANDY 2000 only - SCROLL LEFT PART OR ALL OF SCREEN

INT 10 73-- - HUNTER 16 - SELECT TEXT FONT

INT 10 74-- - HUNTER 16 - SET LCD WINDOWS POSITION

INT 10 75-- - HUNTER 16 - SET ZOOM

INT 10 76-- - HUNTER 16 - LOOKING KEYS

INT 10 77-- - HUNTER 16 - GET GRAPHICS FONT

INT 10 78-- - HUNTER 16 - TURN BACKLIGHT ON/OFF

INT 10 7F-- - Paradise SVGA - WD90C24 INSTALLATION CHECK

INT 10 7F00 - SOLLEX SuperVGA - GET EXTENSIONS INFO

INT 10 7F00 - Diamond Stealth 24 - GET S3 INFORMATION BLOCK

INT 10 7F00 - Diamond Stealth 24 - GET LINEAR ADDRESS

INT 10 7F00 - Diamond Stealth 24 - SET LINEAR ADDRESS

INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - SET ADAPTER

INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - GET ADAPTER

INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - DETERMINE ADAPTER SUPPORT

INT 10 7F02 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - SET DISPLAY OUTPUT

INT 10 7F02 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - GET DISPLAY OUTPUT

INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GET SUPPORT INFO

INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - INITIALIZE VIDEO SUPPORT

INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GO RAM RESIDENT

INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - SET POWER STATE

INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - GET POWER STATE

INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - SET TIMEOUT RESET

INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - GET TIMEOUT RESET

INT 10 7F05 - SOLLEX SuperVGA - LOAD REGISTER

INT 10 7F06 - SOLLEX SuperVGA - MULTIPLE FONT CONTROL

INT 10 7F07 - SOLLEX SuperVGA - FILL VIDEO RAM

INT 10 80-- - CU Writer v1.4 - GET OPTION

INT 10 80-- - VIDEO - DESQview 2.0x only - internal - SET ??? HANDLER

INT 10 81-- - CU Writer v1.4 - SET OPTION

INT 10 81-- - VIDEO - DESQview 2.0x only - internal - GET ???

INT 10 82-- - VIDEO - DESQview 2.0x only - internal - GET CURRENT WINDOW INFO

INT 10 8200 - VIDEO - AX PC - GET/SET SCROLL MODE

INT 10 8300 - VIDEO - AX PC - GET VIDEO RAM ADDRESS

INT 10 8B-- - Alloy MW386 - FORCE WORKSTATION SCREEN UPDATE

INT 10 90-- - Alloy MW386 - GET PHYSICAL WORKSTATION DISPLAY MODE

INT 10 91-- - Alloy MW386 - GET PHYSICAL WORKSTATION ADAPTER TYPE

INT 10 92-- - Alloy MW386 - INHIBIT WORKSTATION SCREEN UPDATES

INT 10 93-- - Alloy MW386 - REDRAW SCREEN

INT 10 A0-- - CU Writer v1.4 - SET PIXEL WRITE MODE

INT 10 A0-- - ATI Mach64 BIOS - Display Power Management Signalling API???

INT 10 A004 - PhoenixVIEW/LC - VIDEO DISPLAY TYPE

INT 10 A00C - ATI Mach64 BIOS - SET SLEEP MODE

INT 10 A01B - PhoenixVIEW/LC - CRT MONITOR DETECTION

INT 10 B0-- - CU Writer v1.4 - PUT PIXEL

INT 10 B1-- - CU Writer v1.4 - MOVE TO

INT 10 B2-- - CU Writer v1.4 - DRAW LINE TO

INT 10 B3-- - CU Writer v1.4 - FLOOD FILL

INT 10 B4-- - CU Writer v1.4 - DRAW RECTANGLE

INT 10 B5-- - CU Writer v1.4 - DRAW FILLED RECTANGLE

INT 10 BD44 - Compaq QVision - ???

INT 10 BF-- - Athena Digital HGCIBM.COM - INSTALLATION CHECK

INT 10 BF00 - VIDEO - Compaq Extensions - SELECT EXTERNAL MONITOR

INT 10 BF01 - VIDEO - Compaq Extensions - SELECT INTERNAL MONITOR

INT 10 BF02 - VIDEO - Compaq Extensions - SET MASTER MODE OF CURRENT CONTROLLER

INT 10 BF03 - VIDEO - Compaq Extensions - GET ENVIRONMENT

INT 10 BF04 - VIDEO - Compaq Extensions - SET MODE SWITCH DELAY

INT 10 BF05 - VIDEO - Compaq Extensions - ENABLE/DISABLE DISPLAY

INT 10 BF06 - VIDEO - Compaq SLT/286 - READ GRAY SCALE TABLE

INT 10 BF07 - VIDEO - Compaq SLT/286 - WRITE GRAY SCALE TABLE

INT 10 BF08 - VIDEO - Compaq SLT/286 - WRITE COLOR MIX REGISTERS

INT 10 BF09 - VIDEO - Compaq Extensions - TURN ON REVERSE VIDEO

INT 10 BF0A - VIDEO - Compaq Extensions - TURN OFF REVERSE VIDEO

INT 10 BF0B - VIDEO - Compaq Extensions - CHECK WHETHER VIDEO REVERSED

INT 10 BF0C - VIDEO - Compaq Extensions - SET DAC 6-BIT MODE

INT 10 BF0D - VIDEO - Compaq Extensions - SET DAC 8-BIT MODE

INT 10 BF0E - VIDEO - Compaq Extensions - CHECK DAC 6-BIT/8-BIT mode

INT 10 BF0F - VIDEO - Compaq Extensions - SET HIGH ADRESS MAP REGISTER

INT 10 BF10 - VIDEO - Compaq Extensions - GET HIGH ADDRESS MAP REGISTER

INT 10 BF11 - VIDEO - Compaq Extensions - GET EXTENDED ENVIRONMENT

INT 10 BF12 - VIDEO - Compaq Extensions - NEW ACTIVE MONITOR

INT 10 BF13 - VIDEO - Compaq QVision - GAMMA CORRECTION

INT 10 BFA0 - VIDEO - Compaq ADAPT.COM - INSTALLATION CHECK

INT 10 BFA1 - VIDEO - Compaq ADAPT.COM - GET ???

INT 10 BFA2 - VIDEO - Compaq ADAPT.COM - SET ???

INT 10 C0-- - CU Writer v1.4 - GO TO TEXT ROW AND COLUMN

INT 10 C1-- - CU Writer v1.4 - OUTPUT TEXT

INT 10 C2-- - CU Writer v1.4 - REVERSE TEXT

INT 10 C3-- - CU Writer v1.4 - TEXT BAR

INT 10 C4-- - CU Writer v1.4 - TEXT MENU

INT 10 CB00 - UNCHAIN - SAVE CURRENT VGA REGISTERS

INT 10 CB01 - UNCHAIN - UPDATE PAGE 1 OFFSET

INT 10 CB02 - UNCHAIN - UPDATE PAGE 2 OFFSET

INT 10 CB03 - UNCHAIN - UPDATE PAGE 3 OFFSET

INT 10 CB04 - UNCHAIN - UPDATE PAGE 4 OFFSET

INT 10 CB05 - UNCHAIN - SAVE PALETTE

INT 10 CB06 - UNCHAIN - RESTORE VGA REGISTERS

INT 10 CBFF - UNCHAIN - INSTALLATION CHECK

INT 10 CC00 - VIDEO - UltraVision - GET STATUS (INSTALLATION CHECK)

INT 10 CC01 - VIDEO - UltraVision - DISABLE EXTENSIONS

INT 10 CC02 - VIDEO - UltraVision - ENABLE EXTENSIONS

INT 10 CD00 - VIDEO - UltraVision - LOAD ULTRAVISION PALETTE (color EGA,VGA)

INT 10 CD01 - VIDEO - UltraVision - SET PALETTE LOCKING STATUS (color EGA,VGA)

INT 10 CD02 - VIDEO - UltraVision - GET ULTRAVISION PALETTE (EGA,VGA)

INT 10 CD03 - VIDEO - UltraVision - GET PALETTE LOCKING STATUS (color EGA,VGA)

INT 10 CD04 - VIDEO - UltraVision - GET UltraVision TEXT MODE (EGA,VGA)

INT 10 CD05 - VIDEO - UltraVision - SET CURSOR TYPE (EGA,VGA)

INT 10 CD06 - VIDEO - UltraVision - GET CURSOR TYPE (EGA,VGA)

INT 10 CD07 - VIDEO - UltraVision v1.2+ - SET UNDERLINE STATUS (EGA,VGA)

INT 10 CD08 - VIDEO - UltraVision v1.2+ - GET UNDERLINE STATUS (EGA,VGA)

INT 10 CD10 - VIDEO - UltraVision - LOAD USER FONT (EGA,VGA)

INT 10 CD-- - VIDEO - UltraVision - SET ULTRAVISION TEXT MODE (EGA,VGA)

INT 10 D0-- - CU Writer v1.4 - LOAD PICTURE

INT 10 D0-- - HP 100LX/200LX - SET ZOOM MODE

INT 10 D1-- - HP 100LX/200LX - INTERNAL - ???

INT 10 D4-- - HP 100LX/200LX - INTERNAL - ???

INT 10 D5-- - Netroom SCRNCLK - ???

INT 10 DFA5 - VIDEO - Compaq ADAPT.COM - GET ??? DATA AREA

INT 10 EF-- - VIDEO - MSHERC.COM - GET VIDEO ADAPTER TYPE AND MODE

INT 10 F0-- - EGA Register Interface Library - READ ONE REGISTER

INT 10 F1-- - EGA Register Interface Library - WRITE ONE REGISTER

INT 10 F2-- - EGA Register Interface Library - READ REGISTER RANGE

INT 10 F3-- - EGA Register Interface Library - WRITE REGISTER RANGE

INT 10 F4-- - EGA Register Interface Library - READ REGISTER SET

INT 10 F5-- - EGA Register Interface Library - WRITE REGISTER SET

INT 10 F6-- - EGA Register Interface Library - REVERT TO DEFAULT REGISTERS

INT 10 F7-- - EGA Register Interface Library - DEFINE DEFAULT REGISTER TABLE

INT 10 FA-- - EGA Register Interface Library - INTERROGATE DRIVER

INT 10 FA-- - FASTBUFF.COM - INSTALLATION CHECK

INT 10 FE-- - TopView - GET SHADOW BUFFER

INT 10 FF-- - TopView - UPDATE SCREEN FROM SHADOW BUFFER

INT 10 FF-- - DJ GO32.EXE 80386+ DOS extender - VIDEO EXTENSIONS

INT 10 FF-- - VIDEO - Oak VGA BIOS v1.02+ - SET EMULATION

INT 10 FF00 - CARBON COPY PLUS v5.0 - CHECK IF CC CONNECTED TO CCHELP

INT 10 FF01 - CARBON COPY PLUS v5.0 - DISCONNECT AND RESET LINE

INT 10 FF02 - CARBON COPY PLUS v5.0 - GET LAST PHONE NUMBER DIALED

Interrupts


INT 11 - BIOS - GET EQUIPMENT LIST; CPU-generated (80486+)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 11 - BIOS - GET EQUIPMENT LIST; CPU-generated (80486+)

INT 11 ---- - CPU-generated (80486+) - ALIGNMENT CHECK

INT 11 ---- - BIOS - GET EQUIPMENT LIST

INT 11 ---- - Columbia Data Products Standard Device Level Protocol (SDLP) 1.6

INT 11 0225 - Blank-It Screen Blanker - INSTALLATION CHECK

INT 11 0225 - Blank-It Screen Blanker - SET TIMEOUT FOR SCREEN BLANKING

INT 11 0225 - Blank-It Screen Blanker - ENABLE THE SOFTWARE

INT 11 0225 - Blank-It Screen Blanker - DISABLE THE SOFTWARE

INT 11 0225 - Blank-It Screen Blanker - GET BLANKING TIMEOUT

INT 11 0225 - Blank-It Screen Blanker - ENABLE WINDOWS COMPATIBILITY MODE

INT 11 0225 - Blank-It Screen Blanker - DISABLE WINDOWS COMPATIBILITY MODE

INT 11 0225 - Blank-It Screen Blanker - UNBLANK THE SCREEN

INT 11 0225 - Blank-It Screen Blanker - BLANK THE SCREEN

INT 11 0225 - Blank-It Screen Blanker - SET HOTKEY FOR MANUAL BLANKING

INT 11 05D7 - Borland C++ IDE - INSTALLED CALLOUT

INT 11 77-- - RainbowFAX v1.3 - SFENGINE API - OPERATIONAL CONTROL

INT 11 78-- - RainbowFAX v1.3 - SFENGINE API - ???

INT 11 79-- - RainbowFAX v1.3 - SFENGINE API - ???

INT 11 7A-- - RainbowFAX v1.3 - SFENGINE API - ???

INT 11 7C-- - RainbowFAX v1.3 - SFENGINE API - ???

INT 11 BC-- - BNU FOSSIL - INSTALLATION CHECK

INT 11 FF-- - WD7000 SDLP interface - EXECUTE GENERIC SCSI COMMAND

INT 11 FFFE - BACK&FORTH (before v1.62) API

Interrupts


INT 12 - BIOS - GET MEMORY SIZE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 12 - BIOS - GET MEMORY SIZE

INT 12 ---- - BIOS - GET MEMORY SIZE

INT 12 ---- - KEYBUI v2.0+ - INSTALLATION CHECK

INT 12 ---- - PARKER v2.0+ - INSTALLATION CHECK

INT 12 05D7 - Borland C++ IDE - INSTALLATION CHECK

INT 12 4350 - CPI-standard virus - "FRIEND" CHECK

INT 12 FFFE - Back&Forth v1.62+ - API

Interrupts


INT 13 - DISK
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 13 - DISK

INT 13 00-- - DISK - RESET DISK SYSTEM

INT 13 01-- - DISK - GET STATUS OF LAST OPERATION

INT 13 02-- - DISK - READ SECTOR(S) INTO MEMORY

INT 13 03-- - DISK - WRITE DISK SECTOR(S)

INT 13 04-- - DISK - VERIFY DISK SECTOR(S)

INT 13 05-- - FLOPPY - FORMAT TRACK

INT 13 05-- - FIXED DISK - FORMAT TRACK

INT 13 05-- - Future Domain SCSI BIOS - SEND SCSI MODE SELECT COMMAND

INT 13 057F - 2M - FORMAT TRACK

INT 13 06-- - FIXED DISK - FORMAT TRACK AND SET BAD SECTOR FLAGS (XT,PORT)

INT 13 06-- - Future Domain SCSI BIOS - FORMAT DRIVE WITH BAD SECTOR MAPPING

INT 13 06-- - Adaptec AHA-154xA/Bustek BT-542 BIOS - IDENTIFY SCSI DEVICES

INT 13 06-- - V10DISK.SYS - READ DELETED SECTORS

INT 13 07-- - FIXED DISK - FORMAT DRIVE STARTING AT GIVEN TRACK (XT,PORT)

INT 13 07-- - Future Domain SCSI BIOS - FORMAT DRIVE

INT 13 07-- - V10DISK.SYS - WRITE DELETED SECTORS

INT 13 08-- - DISK - GET DRIVE PARAMETERS (PC,XT286,CONV,PS,ESDI,SCSI)

INT 13 08-- - V10DISK.SYS - SET FORMAT

INT 13 0800 - SecureDrive - INSTALLATION CHECK

INT 13 09-- - HARD DISK - INITIALIZE CONTROLLER WITH DRIVE PARAMETERS (AT,PS)

INT 13 0A-- - HARD DISK - READ LONG SECTOR(S) (AT and later)

INT 13 0B-- - HARD DISK - WRITE LONG SECTOR(S) (AT and later)

INT 13 0C-- - HARD DISK - SEEK TO CYLINDER

INT 13 0D-- - HARD DISK - RESET HARD DISKS

INT 13 0E-- - HARD DISK - READ SECTOR BUFFER (XT only)

INT 13 0F-- - HARD DISK - WRITE SECTOR BUFFER (XT only)

INT 13 10-- - HARD DISK - CHECK IF DRIVE READY

INT 13 11-- - HARD DISK - RECALIBRATE DRIVE

INT 13 12-- - HARD DISK - CONTROLLER RAM DIAGNOSTIC (XT,PS)

INT 13 12-- - Future Domain SCSI CONTROLLER - STOP SCSI DISK

INT 13 12-- - SyQuest - START/STOP SCSI DISK

INT 13 13-- - HARD DISK - DRIVE DIAGNOSTIC (XT,PS)

INT 13 13-- - SyQuest - READ DRIVE PARAMATERS (for DOS 5+)

INT 13 14-- - HARD DISK - CONTROLLER INTERNAL DIAGNOSTIC

INT 13 15-- - DISK - GET DISK TYPE (XT 1/10/86 or later,XT286,AT,PS)

INT 13 16-- - FLOPPY DISK - DETECT DISK CHANGE (XT 1/10/86 or later,XT286,AT,PS)

INT 13 17-- - FLOPPY DISK - SET DISK TYPE FOR FORMAT (AT,PS)

INT 13 1700 - Future Domain SCSI CONTROLLER - GET INQUIRY INFO FROM SCSI DEVICE

INT 13 18-- - DISK - SET MEDIA TYPE FOR FORMAT (AT model 3x9,XT2,XT286,PS)

INT 13 18-- - Future Domain SCSI BIOS - GET SCSI CONTROLLER INFORMATION

INT 13 18-- - XDF.COM - API

INT 13 19-- - FIXED DISK - PARK HEADS ON ESDI DRIVE (XT286,PS)

INT 13 19-- - Future Domain SCSI CONTROLLER - REINITIALIZE DRIVE

INT 13 1A-- - ESDI FIXED DISK - FORMAT UNIT (PS)

INT 13 1A-- - Future Domain SCSI CONTROLLER - GET SCSI PARTIAL MEDIUM CAPACITY

INT 13 1B-- - ESDI FIXED DISK - GET MANUFACTURING HEADER

INT 13 1B-- - Future Domain SCSI CONTROLLER - GET POINTER TO SCSI DISK INFO BLOCK

INT 13 1C-- - Future Domain SCSI CONTROLLER - GET POINTER TO FREE CONTROLLER RAM

INT 13 1C-- - ESDI FIXED DISK - ???

INT 13 1C08 - ESDI FIXED DISK - GET COMMAND COMPLETION STATUS

INT 13 1C09 - ESDI FIXED DISK - GET DEVICE STATUS

INT 13 1C0A - ESDI FIXED DISK - GET DEVICE CONFIGURATION

INT 13 1C0B - ESDI FIXED DISK - GET ADAPTER CONFIGURATION

INT 13 1C0C - ESDI FIXED DISK - GET POS INFORMATION

INT 13 1C0D - ESDI FIXED DISK - ???

INT 13 1C0E - ESDI FIXED DISK - TRANSLATE RBA TO ABA

INT 13 1C0F - ESDI FIXED DISK - ???

INT 13 1C12 - ESDI FIXED DISK - ???

INT 13 1D-- - IBMCACHE.SYS - CACHE STATUS

INT 13 1F-- - SyQuest - DOOR LATCH/DOOR BUTTON DETECT

INT 13 20-- - DISK - ??? (Western Digital "Super BIOS")

INT 13 20-- - Compaq DESKPRO/i - GET CURRENT MEDIA FORMAT

INT 13 20-- - QUICKCACHE II v4.20 - DISMOUNT

INT 13 21-- - HARD DISK - PS/1 and newer PS/2 - READ MULTIPLE DISK SECTORS

INT 13 21-- - QUICKCACHE II v4.20 - FLUSH CACHE

INT 13 22-- - HARD DISK - PS/1 and newer PS/2 - WRITE MULTIPLE DISK SECTORS

INT 13 22-- - QUICKCACHE II v4.20 - ENABLE/DISABLE CACHE

INT 13 23-- - HARD DISK - PS/1 and newer PS/2 - SET CONTROLLER FEATURES REGISTER

INT 13 23-- - QUICKCACHE II v4.20 - GET ??? ADDRESS

INT 13 24-- - HARD DISK - PS/1 and newer PS/2 - SET MULTIPLE MODE

INT 13 24-- - QUICKCACHE II v4.20 - SET SECTORS

INT 13 25-- - HARD DISK - PS/1 and newer PS/2 - IDENTIFY DRIVE

INT 13 25-- - QUICKCACHE II v4.20 - SET FLUSH INTERVAL

INT 13 26-- - QUICKCACHE II v4.20 - UNINSTALL

INT 13 27-- - QUICKCACHE II v4.20 - INSTALLATION CHECK

INT 13 28-- - QUICKCACHE II v4.20 - SET AUTOMATIC DISMOUNT

INT 13 29-- - QUICKCACHE II v4.20 - NOP

INT 13 2A-- - QUICKCACHE II v4.20 - SET BUFFER SIZE

INT 13 2B-- - QUICKCACHE II v4.20 - DRIVE ACCESS SOUNDS

INT 13 2C-- - QUICKCACHE II v4.20 - SET BUFFERED WRITES

INT 13 2D-- - QUICKCACHE II v4.20 - SET BUFFERED READ

INT 13 2E-- - QUICKCACHE II v4.20 - SET FLUSH COUNT

INT 13 2F-- - QUICKCACHE II v4.20 - FORCE IMMEDIATE INCREMENTAL FLUSH

INT 13 30-- - QUICKCACHE II v4.20 - GET INFO

INT 13 31-- - QUICKCACHE II v4.20 - RESERVE MEMORY

INT 13 32-- - QUICKCACHE II v4.20 - ENABLE CACHING FOR SPECIFIC DRIVE

INT 13 33-- - QUICKCACHE II v4.20 - DISABLE CACHING FOR SPECIFIC DRIVE

INT 13 34-- - QUICKCACHE II v4.20 - SECTOR LOCKING

INT 13 35-- - QUICKCACHE II v4.20 - SET LOCK POOL SIZE

INT 13 36-- - QUICKCACHE II v4.20 - SET TRACE BUFFER SIZE

INT 13 37-- - QUICKCACHE II v4.20 - SET BUFFERED READS FOR SPECIFIC DRIVE

INT 13 38-- - QUICKCACHE II v4.20 - SET BUFFERED WRITES FOR SPECIFIC DRIVE

INT 13 39-- - QUICKCACHE II v4.20 - SET READ BUFFER SIZE FOR SPECIFIC DRIVE

INT 13 3A-- - QUICKCACHE II v4.20 - SET WRITE BUFFER SIZE FOR SPECIFIC DRIVE

INT 13 3B-- - QUICKCACHE II v4.20 - ENABLE/DISABLE ???

INT 13 3C-- - QUICKCACHE II v4.20 - ENABLE/DISABLE ???

INT 13 3D-- - QUICKCACHE II v4.20 - ENABLE/DISABLE CYLINDER FLUSH FOR DRIVE

INT 13 3E-- - QUICKCACHE II v4.20 - SET SINGLE-SECTOR BONUS

INT 13 3F-- - QUICKCACHE II v4.20 - SET BONUS THRESHOLD

INT 13 40-- - QUICKCACHE II v4.20 - SET "sticky_max"

INT 13 41-- - IBM/MS INT 13 Extensions - INSTALLATION CHECK

INT 13 41-- - QUICKCACHE II v4.20 - SAVE/RESTORE ???

INT 13 42-- - IBM/MS INT 13 Extensions - EXTENDED READ

INT 13 4257 - Beame&Whiteside BWLPD - INSTALLATION CHECK

INT 13 43-- - IBM/MS INT 13 Extensions - EXTENDED WRITE

INT 13 44-- - IBM/MS INT 13 Extensions - VERIFY SECTORS

INT 13 45-- - IBM/MS INT 13 Extensions - LOCK/UNLOCK DRIVE

INT 13 46-- - IBM/MS INT 13 Extensions - EJECT MEDIA

INT 13 47-- - IBM/MS INT 13 Extensions - EXTENDED SEEK

INT 13 48-- - IBM/MS INT 13 Extensions - GET DRIVE PARAMETERS

INT 13 49-- - IBM/MS INT 13 Extensions - EXTENDED MEDIA CHANGE

INT 13 5001 - VIRUS - "Andropinis" - INSTALLATION CHECK

INT 13 5342 - ScanBoot - INSTALLATION CHECK

INT 13 5501 - Seagate ST01/ST02 - Inquiry

INT 13 5502 - Seagate ST01/ST02 - RESERVED

INT 13 5503 - Seagate ST01/ST01 - Set Device Type Qualifier (DTQ)

INT 13 5504 - Seagate - ??? - RETURN IDENTIFICATION

INT 13 5504 - Seagate ST01/ST02 - RETURN IDENTIFICATION

INT 13 5505 - Seagate - ??? - PARK HEADS

INT 13 5505 - Seagate ST01/ST02 - PARK HEADS

INT 13 5506 - Seagate ST01/ST02 - SCSI Bus Parity

INT 13 5507 - Seagate ST01/ST02 - RESERVED FUNCTIONS

INT 13 5514 - Seagate - ???

INT 13 5515 - Seagate - PARK HEADS???

INT 13 59-- - SyQuest - Generic SCSI pass through

INT 13 70-- - Priam EDVR.SYS DISK PARTITIONING SOFTWARE???

INT 13 75-- - ???

INT 13 76-- - ???

INT 13 7B00 - NOW! v3.05 - GET INFORMATION

INT 13 7B01 - NOW! v3.05 - ???

INT 13 7B02 - NOW! v3.05 - SET INFORMATION

INT 13 7B03 - NOW! v3.05 - ???

INT 13 7B04 - NOW! v3.05 - ???

INT 13 7B05 - NOW! v3.05 - GET DISK ACCESSES???

INT 13 7B06 - NOW! v3.05 - GET ???

INT 13 7B07 - NOW! v3.05 - GET ???

INT 13 7B08 - NOW! v3.05 - ???

INT 13 80-- - FAST! v4.02+ - API

INT 13 8001 - FAST! v4.02+ - GET CACHE INFORMATION

INT 13 8006 - FAST! v4.02+ - INSTALLATION CHECK

INT 13 8007 - FAST! v4.02+ - UNHOOK INTERRUPTS

INT 13 81-- - Super PC-Kwik v3.20+ - ???

INT 13 82-- - Super PC-Kwik v3.20+ - ???

INT 13 83-- - Super PC-Kwik v3.20+ - ???

INT 13 84-- - Super PC-Kwik v3.20+ - ???

INT 13 85-- - Super PC-Kwik v3.20+ - ???

INT 13 86-- - Super PC-Kwik v4.00+ - ???

INT 13 87-- - Super PC-Kwik v4.00+ - ???

INT 13 88-- - Super PC-Kwik v4.00+ - ???

INT 13 89-- - Super PC-Kwik v5.10+ - ???

INT 13 8A-- - Super PC-Kwik v5.10+ - ???

INT 13 8EED - HyperDisk v4.01+ - ???

INT 13 8EEE - HyperDisk v4.01+ - ???

INT 13 8EEF - HyperDisk v4.01+ - ???

INT 13 92-- - Super PC-Kwik v5.10+ - ???

INT 13 93-- - Super PC-Kwik v5.10+ - ???

INT 13 94-- - Super PC-Kwik v5.10+ - ???

INT 13 95-- - Super PC-Kwik v5.10+ - ???

INT 13 96-- - Super PC-Kwik v5.10+ - ???

INT 13 97-- - Super PC-Kwik v5.10+ - ???

INT 13 98-- - Super PC-Kwik v5.10+ - ???

INT 13 99-- - Super PC-Kwik v5.10+ - ???

INT 13 9A-- - Super PC-Kwik v5.10+ - ???

INT 13 9B-- - Super PC-Kwik v5.10+ - ???

INT 13 9C-- - Super PC-Kwik v5.10+ - ???

INT 13 9D-- - Super PC-Kwik v5.10+ - ???

INT 13 A0-- - Super PC-Kwik v3.20+ - GET RESIDENT CODE SEGMENT

INT 13 A1-- - Super PC-Kwik v3.20+ - FLUSH CACHE

INT 13 A2-- - Super PC-Kwik v3.20+ - ???

INT 13 A3-- - Super PC-Kwik v5.10+ - DISABLE CACHE

INT 13 A4-- - Super PC-Kwik v5.10+ - ENABLE CACHE

INT 13 A5-- - Super PC-Kwik v5.10+ - PROGRAM TERMINATION NOTIFICATION

INT 13 A6-- - Super PC-Kwik v5.10+ - PROGRAM LOAD NOTIFICATION

INT 13 A7-- - Super PC-Kwik 5.1 - ???

INT 13 A759 - Novell DOS 7 - SDRes v27.03 - ???

INT 13 A8-- - Super PC-Kwik 5.1 - ???

INT 13 A9-- - Super PC-Kwik 5.1 - EXITCODE RETRIEVAL NOTIFICATION

INT 13 AA-- - Super PC-Kwik v4+ - ???

INT 13 AB-- - Super PC-Kwik v4+ - ???

INT 13 AC-- - Super PC-Kwik v4+ - ???

INT 13 AD-- - Priam HARD DISK CONTROLLER???

INT 13 AD-- - Super PC-Kwik v4+ - ???

INT 13 AE-- - Super PC-Kwik v5.10+ - ???

INT 13 B0-- - Super PC-Kwik v3.20+ - ???

INT 13 EC00 - VIRUS - "Tiso" - INSTALLATION CHECK

INT 13 EE-- - SWBIOS - SET 1024-CYLINDER FLAG

INT 13 EF-- - Ontrack Drive Rocket - SET CYLINDER OFFSET

INT 13 F2-- - VIRUS - "Neuroquila" - INSTALLATION CHECK

INT 13 F9-- - SWBIOS - INSTALLATION CHECK

INT 13 FA-- - PC Tools v8+ VSAFE, VWATCH - API

INT 13 FD50 - VIRUS - "Predator" - INSTALLATION CHECK

INT 13 FE-- - SWBIOS - GET EXTENDED CYLINDER COUNT

INT 13 FFFF - UNIQUE UX Turbo Utility - SET TURBO MODE

Interrupts


INT 14 - SERIAL
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 14 - SERIAL

INT 14 ---- - SERIAL - Digiboard DigiCHANNEL PC/X* Extender INT 14 (XAPCM232.SYS)

INT 14 00-- - SERIAL - INITIALIZE PORT

INT 14 00-- - FOSSIL (Fido/Opus/Seadog Standard Interface Level) - INITIALIZE

INT 14 00-- - MBBIOS - INITIALIZE PORT

INT 14 00-- - Connection Manager - MODIFY DEFAULT CONNECTION PARAMETERS

INT 14 01-- - SERIAL - WRITE CHARACTER TO PORT

INT 14 01-- - Connection Manager - SEND CHARACTER

INT 14 02-- - SERIAL - READ CHARACTER FROM PORT

INT 14 02-- - FOSSIL - RECEIVE CHARACTER WITH WAIT

INT 14 02-- - Connection Manager - RECEIVE CHARACTER

INT 14 03-- - SERIAL - GET PORT STATUS

INT 14 03-- - Connection Manager - RETURN COMMUNICATION PORT STATUS

INT 14 04-- - SERIAL - EXTENDED INITIALIZE (CONVERTIBLE,PS)

INT 14 04-- - FOSSIL - INITIALIZE DRIVER

INT 14 04-- - MultiDOS Plus IODRV - INITIALIZE PORT

INT 14 04-- - Digiboard DigiCHANNEL PC/X* - CHANGE BAUD RATE

INT 14 04-- - MBBIOS - INSTALLATION CHECK

INT 14 04-- - Connection Manager - OPEN COMMUNICATION

INT 14 0400 - Microsoft Systems Journal TSRCOMM INT14 - INSTALLATION CHECK

INT 14 0401 - Microsoft Systems Journal TSRCOMM INT14 - INITIALIZE MODE

INT 14 0402 - Microsoft Systems Journal TSRCOMM INT14 - EXTENDED INITIALIZE

INT 14 0403 - Microsoft Systems Journal TSRCOMM INT14 - SET TIMEOUT

INT 14 0404 - Microsoft Systems Journal TSRCOMM INT14 - CLEAR THE RECEIVE BUFFER

INT 14 0405 - Microsoft Systems Journal TSRCOMM INT14 - GET RECEIVE BUFFER COUNT

INT 14 0406 - Microsoft Systems Journal TSRCOMM INT14 - CLEAR THE TRANSMIT BUFFER

INT 14 0407 - Microsoft Systems Journal TSRCOMM INT14 - GET TRANSMIT BUFFER COUNT

INT 14 0408 - Microsoft Systems Journal TSRCOMM INT14 - UNINSTALL

INT 14 05-- - SERIAL - EXTENDED COMMUNICATION PORT CONTROL (CONVERTIBLE,PS)

INT 14 05-- - FOSSIL - DEINITIALIZE DRIVER

INT 14 05-- - MultiDOS Plus IODRV - READ CHARACTER FROM PORT

INT 14 05-- - Digiboard DigiCHANNEL PC/X* - CHANGE PROTOCOL

INT 14 05-- - MBBIOS - DROP DTR AND RTS

INT 14 05-- - PC-MOS/386 v5.01 $serial.sys v5.04 - CHANGE PORT PROTOCOL

INT 14 05-- - Connection Manager - CLOSE COMMUNICATION

INT 14 06-- - FOSSIL - RAISE/LOWER DTR

INT 14 06-- - MultiDOS Plus IODRV - WRITE CHARACTER TO PORT

INT 14 06-- - MBBIOS - RAISE DTR AND RTS

INT 14 06-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DRIVER 'ID' FUNCTION

INT 14 06-- - TelAPI - WRITE BLOCK

INT 14 06-- - Connection Manager - SEND CHARACTER BLOCK

INT 14 07-- - FOSSIL - RETURN TIMER TICK PARAMETERS

INT 14 07-- - MultiDOS Plus IODRV - GET PORT STATUS

INT 14 07-- - MBBIOS - SEND BREAK

INT 14 07-- - PC-MOS/386 v5.01 $serial.sys v5.04 - SEND RS-232 BREAK

INT 14 07-- - TelAPI - READ BLOCK

INT 14 07-- - Connection Manager - RECEIVE CHARACTER BLOCK

INT 14 08-- - FOSSIL - FLUSH OUTPUT BUFFER WAITING TILL ALL OUTPUT IS DONE

INT 14 08-- - MultiDOS Plus 4.0 IODRV - GET AND RESET PORT LINE STATUS

INT 14 08-- - Digiboard DigiCHANNEL PC/X* - ALTERNATE STATUS CHECK

INT 14 08-- - MBBIOS - NON-DESTRUCTIVE READ

INT 14 08-- - PC-MOS/386 v5.01 $serial.sys v5.04 - INPUT STATUS CHECK

INT 14 08-- - Connection Manager - RETURN DEFAULT CONNECTION PARAMETERS

INT 14 09-- - FOSSIL - PURGE OUTPUT BUFFER THROWING AWAY ALL PENDING OUTPUT

INT 14 09-- - MultiDOS Plus IODRV - RESET PORT STATUS

INT 14 09-- - Digiboard DigiCHANNEL PC/X* - CLEAR BUFFERS

INT 14 09-- - MBBIOS - GET/SET OPTIONS

INT 14 09-- - PC-MOS/386 v5.01 $serial.sys v5.04 - RESET I/O BUFFER POINTERS

INT 14 09-- - Connection Manager - SEND BREAK

INT 14 0A-- - FOSSIL - PURGE INPUT BUFFER THROWING AWAY ALL PENDING INPUT

INT 14 0A-- - Digiboard DigiCHANNEL PC/X* - INPUT QUEUE CHECK

INT 14 0A-- - MBBIOS - WRITE BUFFER

INT 14 0A-- - Connection Manager - MODIFY ACTIVE CONNECTION PARAMETERS

INT 14 0B-- - FOSSIL - TRANSMIT NO WAIT

INT 14 0B-- - MBBIOS - READ BUFFER

INT 14 0B-- - Connection Manager - PREPARE FOR INBOUND CONNECTION

INT 14 0C-- - FOSSIL - NON-DESTRUCTIVE READ AHEAD

INT 14 0C-- - MBBIOS PACCOM support - BUFFER MANAGEMENT

INT 14 0C-- - Connection Manager - TEST FOR INBOUND CONNECTION REQUEST

INT 14 0D-- - FOSSIL - KEYBOARD READ WITHOUT WAIT

INT 14 0D-- - Digiboard DigiCHANNEL PC/X* - GET POINTER TO CH_KEY_RDY FLAG

INT 14 0D-- - MBBIOS PACCOM support - SET TXD

INT 14 0D-- - Connection Manager - TERMINATE CONNECTION CLIENT ACTIVITY

INT 14 0D00 - MBBIOS - GET AVAILABLE BYTES

INT 14 0D01 - MBBIOS - LOWER ALL MODEM CONTROL SIGNALS

INT 14 0D02 - MBBIOS - RAISE ALL MODEM CONTROL SIGNALS

INT 14 0D03 - MBBIOS - SET HANDSHAKE BYTE

INT 14 0E-- - FOSSIL - KEYBOARD READ WITH WAIT

INT 14 0E-- - Digiboard DigiCHANNEL PC/X* - WRITE STRING

INT 14 0E-- - MBBIOS PACCOM support - SET PERSISTENCE

INT 14 0E-- - Connection Manager - SET HARDWARE FLOW STATE

INT 14 0F-- - FOSSIL - ENABLE/DISABLE FLOW CONTROL

INT 14 0F-- - Digiboard DigiCHANNEL PC/X* - READ STRING

INT 14 0F-- - MBBIOS PACCOM support - SET SLOT TIME

INT 14 0F-- - Connection Manager - RETURN ACTIVE CONNECTION PARAMETERS

INT 14 10-- - FOSSIL - EXTENDED ^C/^K CHECKING AND TRANSMIT ON/OFF

INT 14 10-- - Digiboard DigiCHANNEL PC/X* - CLEAR RECEIVE BUFFER

INT 14 10-- - MBBIOS PACCOM support - SET CRC WAIT

INT 14 10-- - Connection Manager - QUERY SERVICE NAMES

INT 14 11-- - FOSSIL - SET CURRENT CURSOR LOCATION

INT 14 11-- - Digiboard DigiCHANNEL PC/X* - CLEAR TRANSMIT BUFFER

INT 14 11-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DISABLE PORT

INT 14 12-- - FOSSIL - READ CURRENT CURSOR LOCATION

INT 14 12-- - Digiboard DigiCHANNEL PC/X* - GET TRANSMIT BUFFER FREE SPACE

INT 14 12-- - PC-MOS/386 v5.01 $serial.sys v5.04 - GET CURRENT PORT PARAMETERS

INT 14 13-- - FOSSIL - SINGLE CHARACTER ANSI WRITE TO SCREEN

INT 14 13-- - PC-MOS/386 v5.01 $serial.sys v5.04 - REGISTER A PORT WITH A TERMINAL

INT 14 14-- - FOSSIL - ENABLE OR DISABLE WATCHDOG PROCESSING

INT 14 14-- - PC-MOS/386 v5.01 $serial.sys v5.04 - OUTPUT STRING

INT 14 14-- - Digiboard - GET NUMBER OF BOARDS INSTALLED

INT 14 15-- - FOSSIL - WRITE CHARACTER TO SCREEN USING BIOS SUPPORT ROUTINES

INT 14 15-- - PC-MOS/386 v5.01 $serial.sys v5.04 - INPUT STRING

INT 14 15-- - Digiboard - ENABLE/DISABLE MEMORY

INT 14 16-- - FOSSIL - INSERT/DELETE FUNCTION FROM TIMER TICK CHAIN

INT 14 16-- - PC-MOS/386 v5.01 $serial.sys v5.04 - LINK TO ANOTHER SERIAL DRIVER

INT 14 16-- - Digiboard DigiCHANNEL PC/X* - CCB COMMAND

INT 14 1646 - Digiboard - CCB COMMAND - SET INTERRUPT TO HOST MASK

INT 14 1647 - Digiboard - CCB COMMAND - SET BAUD/DATABITS/STOPBITS/PARITY

INT 14 1649 - Digiboard - CCB COMMAND - SET MODEM LINES

INT 14 164A - Digiboard - CCB COMMAND - SET BREAK COUNT

INT 14 164B - Digiboard - CCB COMMAND - SET HANDSHAKE

INT 14 164C - Digiboard - CCB COMMAND - SET XON/XOFF CHARACTERS

INT 14 164D - Digiboard - CCB COMMAND - SET TRANSMIT MID-WATER MARK

INT 14 164E - Digiboard - CCB COMMAND - IRQ POLLING TIMER TO HOST

INT 14 164F - Digiboard - CCB COMMAND - BUFFER SET ALL

INT 14 1653 - Digiboard - CCB COMMAND - SPECIAL CHARACTER INTERRUPT

INT 14 17-- - FOSSIL - REBOOT SYSTEM

INT 14 17-- - PC-MOS/386 v5.01 $serial.sys v5.04 - WRITE MODEM CONTROL REGISTER

INT 14 18-- - FOSSIL - READ BLOCK

INT 14 18-- - Digiboard DigiCHANNEL PC/X* - SEND BIOS COMMAND

INT 14 18-- - PC-MOS/386 v5.01 $serial.sys v5.04 - GET DRIVER DESCRIPTION

INT 14 19-- - FOSSIL - WRITE BLOCK

INT 14 19-- - Digiboard DigiCHANNEL PC/X* - SPECIAL CHARACTER INTERRUPT

INT 14 19-- - PC-MOS/386 v5.01 $serial.sys v5.04 - SELECTIVE BUFFER FLUSH

INT 14 1A-- - FOSSIL - BREAK BEGIN OR END

INT 14 1A-- - Digiboard DigiCHANNEL PC/X - SPECIAL CHARACTER FLAG/COUNTER

INT 14 1B-- - FOSSIL - RETURN INFORMATION ABOUT THE DRIVER

INT 14 1C-- - X00 FOSSIL - ACTIVATE PORT

INT 14 1D-- - X00 FOSSIL - DEACTIVATE PORT

INT 14 1E-- - X00 FOSSIL - EXTENDED LINE CONTROL INITIALIZATION

INT 14 1E-- - HUNTER 16 - READ COMMS PARAMETERS

INT 14 1F-- - X00 FOSSIL - EXTENDED SERIAL PORT STATUS/CONTROL

INT 14 20-- - X00 FOSSIL - DESTRUCTIVE READ WITH NO WAIT

INT 14 20-- - Alloy MW386 - ATTACH LOGICAL COMMUNICATIONS PORT TO PHYSICAL PORT

INT 14 20-- - MultiDOS Plus - INITIALIZE PORT

INT 14 20-- - PC-MOS/386 v5.01 $serial.sys v5.04 - CHECK OUTPUT QUEUE

INT 14 20-- - HUNTER 16 - SELECT COMMS PARAMETERS

INT 14 21-- - X00 FOSSIL - STUFF RECEIVE BUFFER

INT 14 21-- - Alloy MW386 v1.x only - RELEASE PHYSICAL COMMUNICATIONS PORT

INT 14 21-- - MultiDOS Plus - TRANSMIT CHARACTER

INT 14 21-- - PC-MOS/386 v5.01 $serial.sys v5.04 - OUTPUT CHARACTER, WITH TIMEOUT

INT 14 21-- - HUNTER 16 - EXTENDED CONTROL

INT 14 22-- - Alloy MW386 v2+ - RELEASE LOGICAL COMMUNICATIONS PORT

INT 14 22-- - MultiDOS Plus - RECEIVE CHARACTER

INT 14 22-- - PC-MOS/386 v5.01 $serial.sys v5.04 - RECEIVE CHARACTER, WITH TIMEOUT

INT 14 22-- - HUNTER 16 - EXTENDED STATUS

INT 14 23-- - Alloy MW386 v2+ - GET PORT NUMBER FROM LOGICAL PORT ID

INT 14 23-- - MultiDOS Plus - GET PORT STATUS

INT 14 23-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DECLARE PORT OWNERSHIP

INT 14 23-- - HUNTER 16 - CONTROL HANDSHAKE LINES

INT 14 24-- - Alloy MW386 v2+ - CHANGE PHYSICAL PORT PARAMETERS

INT 14 24-- - MultiDOS Plus - SET MONITOR MODE

INT 14 24-- - PC-MOS/386 v5.01 $serial.sys v5.04 - ???

INT 14 24-- - HUNTER 16 - CONTROL CTS HANDSHAKING

INT 14 25-- - MultiDOS Plus - CLEAR BUFFERS

INT 14 25-- - HUNTER 16 - CONTROL RS232 DRIVERS

INT 14 26-- - HUNTER 16 - CONTROL RI POWER UP

INT 14 27-- - MultiDOS Plus - GET BUFFER CHARACTER COUNT

INT 14 27-- - HUNTER 16 - GET INSTALLED PROTOCOLS COUNT

INT 14 28-- - HUNTER 16 - GET PROTOCOL NAME

INT 14 29-- - HUNTER 16 - GET PROTOCOL HANDLE

INT 14 2A-- - HUNTER 16 - EXTENDED PROTOCOL MENU

INT 14 2B-- - HUNTER 16 - GET EXTENDED PROTOCOL PARAMETERS

INT 14 2C00 - HUNTER 16 - GET DTR

INT 14 2C-- - HUNTER 16 - SET DTR

INT 14 36-- - ComShare - INSTALLATION CHECK

INT 14 56-- - BWCOM14 - INSTALLATION CHECK

INT 14 57-- - BWCOM14 - INITIALIZE

INT 14 58-- - BWCOM14 - SHUTDOWN

INT 14 6F-- - Connection Manager - ???

INT 14 6F-- - Connection Manager - INSTALLATION CHECK

INT 14 6F00 - HP Vectra EX-BIOS - "F14_INQUIRE" - INSTALLATION CHECK

INT 14 6F01 - HP Vectra EX-BIOS - "F14_EXINIT" - INITIALIZE SERIAL PORT

INT 14 6F02 - HP Vectra EX-BIOS - "F14_PUT_BUFFER" - TRANSMIT BUFFER

INT 14 6F03 - HP Vectra EX-BIOS - "F14_GET_BUFFER" - READ DATA INTO BUFFER

INT 14 6F04 - HP Vectra EX-BIOS - "F14_TRM_BUFFER" - READ UNTIL TERMINATOR

INT 14 7E-- - FOSSIL - INSTALL AN EXTERNAL APPLICATION FUNCTION

INT 14 7F-- - FOSSIL - REMOVE AN EXTERNAL APPLICATION FUNCTION

INT 14 80-- - COMMUNICATIONS FOSSIL

INT 14 80-- - COURIERS.COM - INSTALLATION CHECK

INT 14 8000 - ARTICOM - INSTALLATION CHECK

INT 14 8000 - COMM-DRV v14.0 - READ PORT METRICS - GET ERROR CODE AND BUFFER STATUS

INT 14 8001 - ARTICOM - UNLOAD ASYNCHRONOUS REDIRECTOR FROM MEMORY

INT 14 8001 - COMM-DRV v14.0 - READ PORT METRICS - GET PORT PARAMETERS

INT 14 8002 - ARTICOM - GET ASYNCHRONOUS REDIRECTOR STATUS

INT 14 8002 - COMM-DRV v14.0 - READ PORT METRICS - GET PORT PARAMETERS

INT 14 8003 - ARTICOM - TRANSLATE ERROR CODE TO ERROR STRING

INT 14 8003 - COMM-DRV v14.0 - READ PORT METRICS - GET I/O BUFFER SIZES

INT 14 8004 - ARTICOM - ATTACH ASYNCHRONOUS RESOURCE

INT 14 8005 - ARTICOM - DETACH ASYNCHRONOUS RESOURCE

INT 14 8006 - ARTICOM - GET RESOURCE INFORMATION

INT 14 8007 - ARTICOM - GET REDIRECTED PORT INFORMATION

INT 14 8008 - ARTICOM - GET AVAILABLE SERVER NAME

INT 14 8009 - ARTICOM - SET SEND AND RECEIVE TIMEOUTS

INT 14 800A - ARTICOM - MODIFY FLOW CONTROL

INT 14 8025 - ARTICOM - SET INTERNAL SEND/RECEIVE VECTOR

INT 14 8035 - ARTICOM - GET INTERNAL SEND/RECEIVE VECTOR

INT 14 81-- - COURIERS.COM - CHECK IF PORT BUSY

INT 14 81-- - COMM-DRV - EXTENDED INITIALIZATION

INT 14 8100 - VIDEO FOSSIL - RETURN VFOSSIL INFORMATION

INT 14 8101 - VIDEO FOSSIL - OPEN VFOSSIL

INT 14 8102 - VIDEO FOSSIL - CLOSE VFOSSIL

INT 14 8103 - VIDEO FOSSIL - UNINSTALL

INT 14 82-- - KEYBOARD FOSSIL

INT 14 82-- - COURIERS.COM - CONFIGURE PORT

INT 14 82-- - COMM-DRV v14.0 - PORT CLEANUP

INT 14 83-- - SYSTEM FOSSIL

INT 14 83-- - COURIERS.COM - START INPUT

INT 14 83-- - COMM-DRV v14.0 - FLUSH COMMUNICATION BUFFERS

INT 14 84-- - COURIERS.COM - READ CHARACTER

INT 14 84-- - COMM-DRV v14.0 - SEND PACKET

INT 14 85-- - COURIERS.COM - FLUSH PENDING INPUT

INT 14 85-- - COMM-DRV v14.0 - RECEIVE PACKET

INT 14 86-- - COURIERS.COM - START OUTPUT

INT 14 86-- - COMM-DRV v14.0 - SET INPUT/OUTPUT TIMEOUTS

INT 14 87-- - COURIERS.COM - OUTPUT STATUS

INT 14 87-- - COMM-DRV v14.0 - TURN ON DTR

INT 14 88-- - COURIERS.COM - ABORT OUTPUT

INT 14 88-- - COMM-DRV v14.0 - TURN OFF DTR

INT 14 89-- - COURIERS.COM - SEND SINGLE CHARACTER

INT 14 89-- - COMM-DRV v14.0 - TURN ON RTS

INT 14 8A-- - COURIERS.COM - SEND BREAK

INT 14 8A-- - COMM-DRV v14.0 - TURN OFF RTS

INT 14 8B-- - COMM-DRV v14.0 - SET USER INTERRUPT ROUTINE

INT 14 8C-- - COURIERS.COM - SET SPEED

INT 14 8C-- - COMM-DRV v14.0 - READ UART REGISTER

INT 14 8D-- - COURIERS.COM - DECONFIGURE PORT

INT 14 8D-- - COMM-DRV v14.0 - WRITE UART REGISTER

INT 14 8E-- - COMM-DRV v14.0 - READ PACKET NONDESTRUCTIVELY

INT 14 A0-- - 3com BAPI SERIAL I/O - CONNECT TO PORT

INT 14 A0-- - Interconnections Inc. TES - INSTALLATION CHECK/STATUS REPORT

INT 14 A1-- - 3com BAPI SERIAL I/O - DISCONNECT FROM PORT

INT 14 A1-- - Interconnections Inc. TES - GET LIST OF SESSIONS WITH STATUS

INT 14 A2-- - 3com BAPI SERIAL I/O - WRITE CHARACTER

INT 14 A2-- - Interconnections Inc. TES - GET LIST OF SERVER NAMES

INT 14 A3-- - 3com BAPI SERIAL I/O - READ CHARACTER

INT 14 A3-- - Interconnections Inc. TES - START A NEW SESSION

INT 14 A4-- - 3com BAPI SERIAL I/O - WRITE BLOCK

INT 14 A4-- - Interconnections Inc. TES - HOLD CURRENTLY ACTIVE SESSION

INT 14 A5-- - 3com BAPI SERIAL I/O - READ BLOCK

INT 14 A5-- - Interconnections Inc. TES - RESUME A SESSION

INT 14 A6-- - 3com BAPI SERIAL I/O - SEND SHORT BREAK

INT 14 A6-- - Interconnections Inc. TES - DROP A SESSION

INT 14 A7-- - 3com BAPI SERIAL I/O - READ STATUS

INT 14 A7-- - Interconnections Inc. TES - SWITCH TO NEXT ACTIVE SESSION

INT 14 A8-- - Interconnections Inc. TES - SEND STRING TO COMMAND INTERPRETER

INT 14 A8-- - Novell TelAPI v4.01 - CONNECTION INFORMATION???

INT 14 A9-- - Novell TelAPI v4.01 - CONNECTION CONTROL???

INT 14 AA01 - DimVGA v2.0+ - INSTALLATION CHECK

INT 14 AA02 - DimVGA v2.0+ - SET TIME-OUT (DIMMING/BLANKING) PERIOD

INT 14 AA03 - DimVGA v2.0+ - SET DIMMING FACTOR

INT 14 AA04 - DimVGA v2.0+ - GET TIME-OUT PERIOD

INT 14 AA05 - DimVGA v2.0+ - GET DIMMING FACTOR

INT 14 AA06 - DimVGA v2.0+ - DISABLE

INT 14 AA07 - DimVGA v2.0+ - ENABLE

INT 14 AA08 - DimVGA v2.0+ - DIM SCREEN 'MANUALLY'

INT 14 AA09 - DimVGA v2.0+ - UNDIM SCREEN 'MANUALLY'

INT 14 AA0A - DimVGA v2.0+ - CHECK WHETHER ENABLED

INT 14 AA0B - DimVGA v2.1+ - SET HOTKEY

INT 14 AA0C - DimVGA v2.1+ - GET HOTKEY

INT 14 AA0D - DimVGA v3.0+ - SET MOUSE CHECK STATUS

INT 14 AA0E - DimVGA v3.0+ - GET MOUSE CHECK STATUS

INT 14 AA0F - DimVGA v3.4 - SET LOCKING STATUS

INT 14 AA10 - DimVGA v3.4 - GET MOUSE CHECK STATUS

INT 14 AF00 - 3com BAPI SERIAL I/O - INSTALLATION CHECK

INT 14 B0-- - 3com BAPI SERIAL I/O - EN/DISABLE "ENTER COMMAND MODE" (ECM) CHARACTER

INT 14 B1-- - 3com BAPI SERIAL I/O - ENTER COMMAND MODE

INT 14 B2-- - 3com BAPI SERIAL I/O - GET ECM WATCH STATE

INT 14 B3-- - 3com BAPI SERIAL I/O - GET/SET CONFIGURATION INFO

INT 14 E0-- - TelAPI - "telopen" - CREATE TELNET CONNECTION (BLOCKING)

INT 14 E000 - MX5 Extended FOSSIL - GET MNP STATUS BLOCK

INT 14 E001 - MX5 Extended FOSSIL - GET/SET MNP LEVEL

INT 14 E002 - MX5 Extended FOSSIL - GET/SET MNP ANSWER/ORIGINATE MODE

INT 14 E003 - MX5 Extended FOSSIL - GET/SET MNP WAIT TICKS

INT 14 E004 - MX5 Extended FOSSIL - GET/SET MNP CONNECT SOUND LEVEL

INT 14 E005 - MX5 Extended FOSSIL - UNINSTALL

INT 14 E006 - MX5 Extended FOSSIL - INSTALLATION CHECK

INT 14 E007 - MX5 Extended FOSSIL - WAIT SPECIFIED NUMBER OF TICKS

INT 14 E1-- - TelAPI - "telclose" - TERMINATE TELNET CONNECTION

INT 14 E2-- - TelAPI - "telread" - BUFFERED READ

INT 14 E3-- - TelAPI - "telwrite" - BUFFERED WRITE

INT 14 E4-- - TelAPI - "telioctl" - CONNECTION CONTROL

INT 14 E5-- - TelAPI - "telreset" - RESET ALL CONNECTIONS

INT 14 E6-- - TelAPI - "telunload" - UNINSTALL

INT 14 E7-- - TelAPI - "tellist" - GET TELNET SESSION LIST

INT 14 E8-- - TelAPI - "telattach" - ATTACH COM PORT TO/FROM TELNET SESSION

INT 14 E9-- - TelAPI - "telportosn" - GET SESSION NUMBER FOR COM PORT

INT 14 EA-- - TelAPI - "telstatus" - GET TELNET CONNECTION STATUS INFORMATION

INT 14 EB-- - TelAPI - "telname" - GET AVAILABLE/INUSE STATUS FOR ALL SESSIONS

INT 14 EC-- - TelAPI - "telnblkopen" - CREATE TELNET CONNECTION (NON-BLOCKING)

INT 14 ED-- - TelAPI - "telpoll" - POLL TELNET SESSION FOR CONNECTION COMPLETION

INT 14 F0F0 - ASAP v1.0 - ???

INT 14 F0F1 - ASAP v1.0 - INSTALLATION CHECK

INT 14 F4FF - IBM/Yale EBIOS SERIAL I/O - INSTALLATION CHECK

INT 14 F9-- - IBM/Yale EBIOS SERIAL I/O - REGAIN CONTROL

INT 14 FA-- - IBM/Yale EBIOS SERIAL I/O - SEND BREAK

INT 14 FB-- - IBM/Yale EBIOS SERIAL I/O - SET OUTGOING MODEM SIGNALS

INT 14 FC-- - IBM/Yale EBIOS SERIAL I/O - READ CHARACTER, NO WAIT

INT 14 FD02 - IBM/Yale EBIOS SERIAL I/O - READ STATUS

INT 14 FF00 - TelAPI - "telcheck" - INSTALLATION CHECK

INT 14 FF01 - IBM/Yale EBIOS SERIAL I/O - SET SEND BUFFER

INT 14 FF02 - IBM/Yale EBIOS SERIAL I/O - SET RECEIVE BUFFER

INT 14 FFF8 - COMM-DRV v14.0 - SET BAUD RATE DIVISOR

INT 14 FFFB - COMM-DRV v14.0 - GET HIGHEST ALLOWED PORT NUMBER

INT 14 FFFC - COMM-DRV v14.0 - GET INT 14 FLAGS

INT 14 FFFD - COMM-DRV v14.0 - SET INT 14 FLAGS

INT 14 FFFE - COMM-DRV v14.0 - RESTORE INT 14 VECTOR TO ORIGINAL

INT 14 FFFF - COMM-DRV v14.0 - GET INT 14 INFORMATION AREA

Interrupts


INT 15 - CASSETTE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 15 - CASSETTE

INT 15 ---- - Microsoft TSR Specification

INT 15 00-- - CASSETTE - TURN ON TAPE DRIVE'S MOTOR (PC and PCjr only)

INT 15 00-- - Amstrad PC1512 - GET AND RESET MOUSE COUNTS

INT 15 00-- - VMiX v2+ - INSTALLATION CHECK

INT 15 00-- - MultiDOS Plus - GIVE UP TIME SLICE

INT 15 01-- - CASSETTE - TURN OFF TAPE DRIVE'S MOTOR (PC and PCjr only)

INT 15 01-- - Amstrad PC1512 - WRITE DATA TO NON-VOLATILE RAM

INT 15 01-- - VMiX - "sys_chanreq" - I/O CHANNEL OBJECT MANAGER

INT 15 01-- - MultiDOS Plus - REQUEST RESOURCE SEMAPHORE

INT 15 02-- - CASSETTE - READ DATA (PC and PCjr only)

INT 15 02-- - Amstrad PC1512 - READ DATA FROM NON-VOLATILE RAM

INT 15 02-- - VMiX - "sys_memreq" - MEMORY OBJECT MANAGER

INT 15 02-- - MultiDOS Plus - RELEASE RESOURCE SEMAPHORE

INT 15 03-- - CASSETTE - WRITE DATA (PC and PCjr only)

INT 15 03-- - Amstrad PC1512 - WRITE VDU COLOR PLANE WRITE REGISTER

INT 15 03-- - VMiX - "sys_pinput" - PROMPTED CONSOLE INPUT

INT 15 03-- - MultiDOS Plus - SUSPEND TASK FOR INTERVAL

INT 15 04-- - SYSTEM - BUILD ABIOS SYSTEM PARAMETER TABLE (PS)

INT 15 04-- - Amstrad PC1512 - WRITE VDU COLOR PLANE READ REGISTER

INT 15 04-- - VMiX - "sys_vprintf" - FORMATTED OUTPUT TO STREAM

INT 15 04-- - MultiDOS Plus - SEND MESSAGE TO ANOTHER TASK

INT 15 05-- - SYSTEM - BUILD ABIOS INITIALIZATION TABLE (PS)

INT 15 05-- - Amstrad PC1512 - WRITE VDU GRAPHICS BORDER REGISTER

INT 15 05-- - VMiX - "sys_getpid" - GET PROCESS ID OF CURRENT PROCESS

INT 15 05-- - MultiDOS Plus - CHECK MAILBOX

INT 15 06-- - Amstrad PC1512 - GET ROS VERSION NUMBER

INT 15 06-- - VMiX - "sys_getpcb" - GET POINTER TO PROCESS CONTROL BLOCK

INT 15 06-- - MultiDOS Plus - READ MAILBOX

INT 15 07-- - VMiX - "sys_getocb" - GET POINTER TO OBJECT CONTROL BLOCK

INT 15 07-- - MultiDOS Plus - SPAWN INTERNAL TASK (CREATE NEW THREAD)

INT 15 08-- - VMiX - "sys_getccb" - GET CHANNEL CONTROL BLOCK

INT 15 08-- - MultiDOS Plus - TERMINATE INTERNAL TASK (KILL THREAD)

INT 15 09-- - VMiX - "sys_getqueue" - GET ID OF QUEUED ELEMENT

INT 15 09-- - MultiDOS Plus - CHANGE TASK'S PRIORITY

INT 15 0A-- - VMiX - "sys_qetqnext" - GET ID OF NEXT QUEUED ELEMENT

INT 15 0A-- - MultiDOS Plus - CHANGE TIME SLICE INTERVAL

INT 15 0B-- - VMiX - "sys_sysreq" - SYSTEM CONFIGURATION MANAGER

INT 15 0B-- - MultiDOS Plus - FORCE DISPLAY OUTPUT TO PHYSICAL SCREEN MEMORY

INT 15 0C-- - VMiX - "sys_getstack" - GET POINTER TO PROCESS TSS STACK

INT 15 0C-- - MultiDOS Plus - RESTORE OLD VIDEO DISPLAY MEMORY

INT 15 0D-- - VMiX - "sys_spawn" - START A CHILD PROCESS JOB SHELL

INT 15 0D-- - MultiDOS Plus - DISABLE MULTITASKING

INT 15 0E-- - VMiX - "sys_kill" - HARD TERMINATE PROCESS

INT 15 0E-- - MultiDOS Plus - ENABLE MULTITASKING

INT 15 0F-- - SYSTEM - FORMAT UNIT PERIODIC INTERRUPT (PS ESDI drives only)

INT 15 0F-- - VMiX - "sys_getqkey" - GET KEY FIELD OF QUEUED ELEMENT

INT 15 0F-- - MultiDOS Plus - EXECUTE A MULTIDOS PLUS COMMAND

INT 15 10-- - VMiX - "sys_virtual" - EXECUTE CONFORMING FUNCTION IN PROTECTED MODE

INT 15 10-- - MultiDOS Plus - TEST RESOURCE SEMAPHORE

INT 15 1000 - TopView - "PAUSE" - GIVE UP CPU TIME

INT 15 1001 - TopView - "GETMEM" - ALLOCATE "SYSTEM" MEMORY

INT 15 1002 - TopView - "PUTMEM" - DEALLOCATE "SYSTEM" MEMORY

INT 15 1003 - TopView - "PRINTC" - DISPLAY CHARACTER/ATTRIBUTE ON SCREEN

INT 15 10-- - TopView - UNIMPLEMENTED IN DV 2.x

INT 15 1013 - TopView - "GETBIT" - DEFINE A 2ND-LEVEL INTERRUPT HANDLER

INT 15 1014 - TopView - "FREEBIT" - UNDEFINE A 2ND-LEVEL INTERRUPT HANDLER

INT 15 1015 - TopView - "SETBIT" - SCHEDULE ONE OR MORE 2ND-LEVEL INTERRUPTS

INT 15 1016 - TopView - "ISOBJ" - VERIFY OBJECT HANDLE

INT 15 1017 - TopView - UNIMPLEMENTED IN DV 2.x

INT 15 1018 - TopView - "LOCATE" - FIND WINDOW AT A GIVEN SCREEN LOCATION

INT 15 1019 - TopView - "SOUND" - MAKE TONE

INT 15 101A - TopView - "OSTACK" - SWITCH TO TASK'S INTERNAL STACK

INT 15 101B - TopView - "BEGINC" - BEGIN CRITICAL REGION

INT 15 101C - TopView - "ENDC" - END CRITICAL REGION

INT 15 101D - TopView - "STOP" - STOP TASK

INT 15 101E - TopView - "START" - START TASK

INT 15 101F - TopView - "DISPEROR" - POP-UP ERROR WINDOW

INT 15 1020 - TopView - UNIMPLEMENTED IN DV v2.00+

INT 15 1021 - TopView - "PGMINT" - INTERRUPT ANOTHER TASK

INT 15 1022 - TopView - "GETVER" - GET VERSION

INT 15 1023 - TopView - "POSWIN" - POSITION WINDOW

INT 15 1024 - TopView - "GETBUF" - GET VIRTUAL SCREEN INFO

INT 15 1025 - TopView - "USTACK" - SWITCH BACK TO USER'S STACK

INT 15 10-- - DESQview (TopView???) - UNIMPLEMENTED IN DV 2.x

INT 15 102B - DESQview v2.00+ (TopView???) - "POSTTASK" - AWAKEN TASK

INT 15 102C - DESQview v2.00+ - "NEWPROC" - START NEW APPLICATION IN NEW PROCESS

INT 15 102D - DESQview v2.00+ - "KMOUSE" - KEYBOARD MOUSE CONTROL

INT 15 102E - DESQview v2.40+ - ALLOCATE SYSTEM MEMORY

INT 15 11-- - TopView commands

INT 15 11-- - VMiX - "sys_system" - EXECUTE SHELL SYSTEM COMMANDS

INT 15 11-- - MultiDOS Plus - TURN OFF AltZ TOGGLE

INT 15 1117 - DESQview v2.20+ - "ASSERTMAP" - GET/SET MAPPING CONTEXT

INT 15 11DE - DESQview - QEXT.SYS - INSTALLATION CHECK

INT 15 12-- - VMiX - "sys_sleep" - PUT PROCESS TO SLEEP

INT 15 12-- - MultiDOS Plus - TURN ON AltZ TOGGLE

INT 15 12-- - TopView - SEND MESSAGE - "HANDLE" - RETURN OBJECT HANDLE

INT 15 12-- - TopView - SEND MESSAGE - "NEW" - CREATE NEW OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "FREE" - FREE AN OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "ADDR" - GET HANDLE OF MESSAGE SENDER

INT 15 12-- - DESQview v2.26+ - "CONNECT" - CONNECT TWO WINDOWS

INT 15 12-- - TopView - SEND MESSAGE - "DIR" - GET PANEL FILE DIRECTORY

INT 15 12-- - TopView - SEND MESSAGE - "READ" - READ NEXT LOGICAL LINE OF WINDOW

INT 15 12-- - TopView - SEND MESSAGE - "READ" - GET NEXT RECORD FROM OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "READ" - WAIT FOR TIMER TO EXPIRE

INT 15 12-- - TopView - SEND MESSAGE - "APPLY" - WRITE PANEL TO WINDOW

INT 15 12-- - TopView - SEND MESSAGE - "WRITE" - WRITE TO OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "WRITE" - WRITE STRING TO WINDOW

INT 15 12-- - DESQview 2.20+ - SEND MESSAGE - "SETPRI" - SET PRIORITY WITHIN OBJECTQ

INT 15 12-- - DESQview 2.20+ - SEND MESSAGE - "GETPRI" - GET PRIORITY WITHIN OBJECTQ

INT 15 12-- - TopView - SEND MESSAGE - "SIZEOF" - GET OBJECT SIZE

INT 15 12-- - TopView - SEND MESSAGE - "LEN" - GET OBJECT LENGTH

INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - WRITE CHARS AND ATTRIBS TO WINDOW

INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - SEND MAILBOX MESSAGE/STAT BY VALUE

INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - SET OBJECT BITS

INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - WRITE ATTRIBUTES TO WINDOW

INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - SEND MAILBOX MESSAGE/STAT BY REF

INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - REMOVE OBJECT FROM OBJECTQ

INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - RESET OBJECT BITS

INT 15 12-- - TopView - SEND MESSAGE - "OPEN" - OPEN OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "CLOSE" - CLOSE OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "ERASE" - ERASE OBJECT

INT 15 12-- - TopView - SEND MESSAGE - "STATUS" - GET OBJECT STATUS

INT 15 12-- - TopView - SEND MESSAGE - "EOF" - GET OBJECT EOF STATUS

INT 15 12-- - TopView - SEND MESSAGE - "AT" - POSITION OBJECT CURSOR

INT 15 12-- - TopView - SEND MESSAGE - "SETNAME" - ASSIGN NAME TO MAILBOX

INT 15 12-- - TopView - SEND MESSAGE - "SETSCALE" - SET POINTER SCALE FACTOR

INT 15 12-- - TopView - SEND MESSAGE - "READN" - GET NEXT N OBJECT BYTES

INT 15 12-- - DESQview 2.50+ - SEND MESSAGE - "GETNAME" - GET NAME OF MAILBOX

INT 15 12-- - TopView - SEND MESSAGE - "GETSCALE" - GET POINTER SCALE FACTOR

INT 15 12-- - TopView - SEND MESSAGE - "REDRAW" - REDRAW WINDOW

INT 15 12-- - DESQview 2.50+ - SEND MESSAGE - "READINTO" - GET NEXT MAIL MESSAGE

INT 15 12-- - TopView - SEND MESSAGE - "SETICON" - SPECIFY POINTER ICON

INT 15 12-- - TopView - SEND MESSAGE - "SETESC" - SET ESCAPE ROUTINE ADDRESS

INT 15 12-- - TopView - SEND MESSAGE - "LOCK" - REQUEST EXCLUSIVE ACCESS TO RESOURCE

INT 15 12-- - DESQview v2.20+ - SEND MESSAGE - "SETFLAGS" - SET OBJECT FLAGS

INT 15 12-- - DESQview v2.20+ - SEND MESSAGE - "GETFLAGS" - GET OBJECT FLAGS

INT 15 12-- - DESQview v2.42-2.52 - BUG

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 00h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 01h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 02h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 03h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 04h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 05h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 06h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 07h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 08h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 09h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Ah WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Bh WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Ch WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Dh WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Eh WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Fh WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 10h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 11h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 12h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 13h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 14h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 15h WITH ERROR RECOVERY

INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 16h WITH ERROR RECOVERY

INT 15 13-- - VMiX - "sys_wake" - WAKE SLEEPING PROCESS

INT 15 13-- - MultiDOS Plus - GET TASK CONTROL BLOCK

INT 15 14-- - VMiX - "sys_clrwindow" - CLEAR WINDOW

INT 15 14-- - MultiDOS Plus - CHECK IF MultiDOS FOREGROUND OR BACKGROUND

INT 15 15-- - VMiX - "sys_setbwindow" - SET BANNER WINDOW MESSAGE

INT 15 15-- - MultiDOS Plus - GET SYSTEM BLOCK

INT 15 16-- - VMiX - "sys_setwindow" - SET ROOT WINDOW SIZE AND HOME CURSOR

INT 15 16-- - MultiDOS Plus - INITIALIZATION

INT 15 17-- - VMiX - "sys_getcolors" - GET CONSOLE WINDOW COLORS

INT 15 17-- - MultiDOS Plus - MAP IRQ

INT 15 18-- - VMiX - "sys_setcolors" - SET CONSOLE COLORS

INT 15 18-- - MultiDOS Plus - UNMAP IRQ

INT 15 19-- - VMiX v2+ - "sys_setconwn" - SET WINDOW COLORS

INT 15 19-- - MultiDOS Plus - UNMAP ALL IRQs

INT 15 1A-- - VMiX v2+ - "sys_sint" - INVOKE SOFTWARE INTERRUPT

INT 15 1A-- - MultiDOS Plus - MAP SEMAPHORE NAME TO NUMBER

INT 15 1B-- - VMiX v2+ - "sys_blkmov" - MOVE MEMORY BLOCK

INT 15 1B-- - MultiDOS Plus - REQUEST RESOURCE SEMAPHORE BY NAME

INT 15 1C-- - VMiX v2+ - "sys_bitblt" - PUT GRAPHICAL OBJECT AT CURSOR POSITION

INT 15 1C-- - MultiDOS Plus - RELEASE RESOURCE SEMAPHORE BY NAME

INT 15 1D-- - VMiX v2+ - "sys_getfont" - GET CURRENT CONSOLE GRAPHICS FONT

INT 15 1D-- - MultiDOS Plus - TEST RESOURCE SEMAPHORE BY NAME

INT 15 1E-- - VMiX v2+ - "sys_setfont" - SET CONSOLE GRAPHICS FONT

INT 15 1E00 - MultiDOS Plus - CLEAR EVENT COUNTER

INT 15 1E01 - MultiDOS Plus - TRIGGER EVENT

INT 15 1E02 - MultiDOS Plus - WAIT FOR EVENT

INT 15 1E08 - MultiDOS Plus 4.01 - SET CONTEXT-SWITCH FUNCTIONS

INT 15 1F-- - VMiX v2.???+ - "sys_scrollwin" - SCROLL WINDOW

INT 15 1F-- - MultiDOS Plus v4.01 - GET MEMORY PARAMETERS

INT 15 20-- - MultiDOS Plus v4.01 - CHECK IF MULTITASKING ENABLED

INT 15 2000 - DOS 3.0+ PRINT.COM - DISABLE CRITICAL REGION FLAG

INT 15 2001 - DOS 3.0+ PRINT.COM - SET CRITICAL REGION FLAG

INT 15 2010 - OS HOOK - SETUP SYSREQ ROUTINE (AT,XT286,PS50+)

INT 15 2011 - OS HOOK - COMPLETION OF SYSREQ FUNCTION (AT,XT286,PS50+)

INT 15 21-- - SYSTEM - POWER-ON SELF-TEST ERROR LOG (PS50+)

INT 15 22-- - SYSTEM - later PS/2s - LOCATE ROM BASIC

INT 15 2300 - SYSTEM - PS/1s - GET ??? CMOS DATA

INT 15 2301 - SYSTEM - PS/1s - SET ??? CMOS DATA

INT 15 2304 - SYSTEM - PS/1s - SYSTEM SETUP

INT 15 2305 - SYSTEM - PS/1s - GET PROCESSOR SPEED

INT 15 2400 - SYSTEM - later PS/2s - DISABLE A20 GATE

INT 15 2401 - SYSTEM - later PS/2s - ENABLE A20 GATE

INT 15 2402 - SYSTEM - later PS/2s - GET A20 GATE STATUS

INT 15 2403 - SYSTEM - later PS/2s - QUERY A20 GATE SUPPORT

INT 15 3000 - Object Kernel for DOS - INSTALLATION CHECK

INT 15 3001 - Object Kernel for DOS - GET STATUS BLOCK

INT 15 3002 - Object Kernel for DOS - KILL PROCESS

INT 15 3003 - Object Kernel for DOS - STOP PROCESS

INT 15 3004 - Object Kernel for DOS - START PROCESS

INT 15 3005 - Object Kernel for DOS - RESTART PROCESS

INT 15 3006 - Object Kernel for DOS - EXECUTE PROCESS

INT 15 3007 - Object Kernel for DOS - LIST PROCESSES

INT 15 3008 - Object Kernel for DOS - SWITCH ObjectKernel ON/OFF

INT 15 3009 - Object Kernel for DOS - RESERVED FOR FUTURE USE

INT 15 40-- - SYSTEM - READ/MODIFY PROFILES (CONVERTIBLE)

INT 15 4000 - Compaq SLT/286 or Portable 386 - READ LCD/PLASMA TIMEOUT

INT 15 4001 - Compaq SLT/286 or Portable 386 - SET LCD/PLASMA TIMEOUT

INT 15 41-- - SYSTEM - WAIT ON EXTERNAL EVENT (CONVERTIBLE and some others)

INT 15 42-- - SYSTEM - REQUEST POWER OFF (CONVERTIBLE,HP 95LX)

INT 15 4280 - Compaq SLT/286 - ENTER STANDBY

INT 15 43-- - SYSTEM - READ SYSTEM STATUS (CONVERTIBLE)

INT 15 44-- - SYSTEM - (DE)ACTIVATE INTERNAL MODEM POWER (CONVERTIBLE)

INT 15 44C0 - Olivetti Quaderno - INITIALIZE DIGITAL SIGNAL PROCESSING???

INT 15 44C1 - Olivetti Quaderno - ???

INT 15 44C2 - Olivetti Quaderno - ???

INT 15 44C3 - Olivetti Quaderno - GET ???

INT 15 44C4 - Olivetti Quaderno - ???

INT 15 44C6 - Olivetti Quaderno - READ LCD

INT 15 44C7 - Olivetti Quaderno - WRITE LCD

INT 15 44C8 - Olivetti Quaderno - ???

INT 15 44C9 - Olivetti Quaderno - GET XBIOS VERSION

INT 15 45-- - HP 100LX/200LX - SET DISPLAY CONTROL STATUS

INT 15 46-- - HP 100LX/200LX - SET POWER OFF TIMEOUT

INT 15 4600 - Compaq SLT/286 - READ POWER CONSERVATION/MODEM CONFIGURATION

INT 15 4601 - Compaq SLT/286 - MODIFY POWER CONSERVATION/MODEM CONFIGURATION

INT 15 4604 - Compaq Contura 486 and "Alladin" 08/05/93 ROMs - GET ???

INT 15 4605 - Compaq Contura 486 and "Alladin" 08/05/93 ROMs - ???

INT 15 47-- - HP 100LX/200LX - GET/SET DISPLAY CONTRAST

INT 15 48-- - HP 100LX/200LX - SET BUZZER VOLUME

INT 15 49-- - HP 100LX/200LX - SERIAL INTERFACE SELECT

INT 15 4900 - Far East MS-DOS - GET BIOS TYPE

INT 15 4A-- - HP 100LX/200LX - SERIAL INTERFACE CONTROL

INT 15 4B-- - HP 100LX/200LX - ADJUST SYSTEM TIME

INT 15 4DD4 - HP 95LX/100LX/200LX - INSTALLATION CHECK

INT 15 4E-- - HP 95LX - ENABLE/DISABLE LIGHT SLEEP

INT 15 4F-- - KEYBOARD - KEYBOARD INTERCEPT (AT model 3x9,XT2,XT286,CONV,PS)

INT 15 50-- - DOS/V - FONT SUBSYSTEM ACCESS

INT 15 50-- - VMIX v2.???+ - "sys_vm_page" - SET NEW VIRTUAL PAGE TABLE

INT 15 51-- - VMiX v2.???+ - "sys_vm_func" - EXECUTE FUNCTION IN PROTECTED MODE

INT 15 5101 - SYSTEM - later PS/2s - EXPANSION UNIT, RETURN CONFIGURATION NUMBER

INT 15 52-- - VMiX v2.???+ - "sys_vm_init" - INITIALIZE PROTECTED-MODE ENVIRONMENT

INT 15 52-- - IBM/MS INT 13 Extensions - MEDIA EJECT INTERCEPT

INT 15 5300 - Advanced Power Management Specification - INSTALLATION CHECK

INT 15 5301 - Advanced Power Management Specification - CONNECT REAL-MODE INTERFACE

INT 15 5302 - Advanced Power Management Spec - CONNECT 16-BIT PROTMODE INTERFACE

INT 15 5303 - Advanced Power Management Spec - CONNECT 32-BIT PROTMODE INTERFACE

INT 15 5304 - Advanced Power Management Specification - DISCONNECT INTERFACE

INT 15 5305 - Advanced Power Management Specification - CPU IDLE

INT 15 5306 - Advanced Power Management Specification - CPU BUSY

INT 15 5307 - Advanced Power Management Specification - SET POWER STATE

INT 15 5307 - Advanced Power Management Specification - SYSTEM STAND-BY

INT 15 5307 - Advanced Power Management Specification - SUSPEND SYSTEM

INT 15 5308 - Advanced Power Management Spec - ENABLE/DISABLE POWER MANAGEMENT

INT 15 5309 - Advanced Power Management Specification - RESTORE POWER-ON DEFAULTS

INT 15 530A - Advanced Power Management Specification - GET POWER STATUS

INT 15 530B - Advanced Power Management Specification - GET POWER MANAGEMENT EVENT

INT 15 530C - Advanced Power Management v1.1 - GET POWER STATE

INT 15 530D - Advanced Power Management v1.1 - EN/DISABLE DEVICE POWER MANAGEMENT

INT 15 530E - Advanced Power Management v1.1 - DRIVER VERSION

INT 15 530F - Advanced Power Management v1.1 - ENGAGE/DISENGAGE POWER MANAGEMENT

INT 15 5380 - APM SL Enhanced v1.0 - GET SUSPEND/GLOBAL STANDBY MODE

INT 15 5380 - APM SL Enhanced v1.0 - SET SUSPEND/GLOBAL STANDBY MODE

INT 15 5380 - APM SL Enhanced v1.0 - GET GLOBAL STANDBY TIMER

INT 15 5380 - APM SL Enhanced v1.0 - SET GLOBAL STANDBY TIMER

INT 15 5380 - APM SL Enhanced v1.0 - GET AUTO POWER OFF TIMER

INT 15 5380 - APM SL Enhanced v1.0 - SET AUTO POWER OFF TIMER

INT 15 5380 - APM SL Enhanced v1.0 - GET RESUME CONDITION

INT 15 5380 - APM SL Enhanced v1.0 - SET RESUME CONDITION

INT 15 5380 - APM SL Enhanced v1.0 - GET CALENDAR EVENT TIME

INT 15 5380 - APM SL Enhanced v1.0 - SET CALENDAR EVENT TIME

INT 15 5380 - APM SL Enhanced v1.0 - GET CALENDAR EVENT DATE

INT 15 5380 - APM SL Enhanced v1.0 - SET CALENDAR EVENT DATE

INT 15 5380 - APM SL Enhanced v1.0 - GET CPU SPEED MODE

INT 15 5380 - APM SL Enhanced v1.0 - SET CPU SPEED MODE

INT 15 5380 - APM SL Enhanced v1.0 - SL HW PARAMETER

INT 15 5380 - Advanced Power Management v1.1 - OEM APM INSTALLATION CHECK

INT 15 5380 - Advanced Power Management v1.1 - OEM APM FUNCTIONS

INT 15 53B0 - Intel System Management Bus - RESERVED

INT 15 53B0 - Intel System Management Bus - INSTALLATION CHECK

INT 15 53B0 - Intel System Management Bus - REAL MODE CONNECT

INT 15 53B0 - Intel System Management Bus - 16-BIT PROTECTED-MODE CONNECT

INT 15 53B0 - Intel System Management Bus - 32-BIT PROTECTED-MODE CONNECT

INT 15 53B0 - Intel System Management Bus - DISCONNECT

INT 15 53B0 - Intel System Management Bus - DEVICE ADDRESS

INT 15 53B0 - Intel System Management Bus - CRITICAL MESSAGES

INT 15 53B0 - Intel System Management Bus - RESERVED

INT 15 53B0 - Intel System Management Bus - REQUEST

INT 15 53B0 - Intel System Management Bus - REQUEST CONTINUATION

INT 15 53B0 - Intel System Management Bus - REQUEST ABORT

INT 15 53B0 - Intel System Management Bus - REQUEST DATA AND STATUS

INT 15 5400 - Omniview Multitasker - INSTALLATION NOTIFICATION

INT 15 5401 - Omniview Multitasker - PROCESS CREATION

INT 15 5402 - Omniview Multitasker - PROCESS DESTRUCTION

INT 15 5403 - Omniview Multitasker - SAVE

INT 15 5404 - Omniview Multitasker - RESTORE

INT 15 5405 - Omniview Multitasker - SWITCHING TO BACKGROUND

INT 15 5406 - Omniview Multitasker - SWITCHING TO FOREGROUND

INT 15 5407 - Omniview Multitasker - EXIT NOTIFICATION

INT 15 60-- - HUNTER 16 - SET SYSTEM CLOCK SPEED

INT 15 6000 - GET MAIN BATTERY LEVEL

INT 15 6001 - GET BACKUP BATTERY LEVEL

INT 15 6002 - GET POWER INFO

INT 15 6003 - SET MAIN BATTERY TYPE

INT 15 6004 - SET BATTERY CHARGING MODE

INT 15 61-- - HUNTER 16 - GET POWER LEVEL

INT 15 61-- - SET ANNOUNCIATORS POSITION

INT 15 62-- - HUNTER 16 - SET LOW POWER THRESHOLD

INT 15 62-- - SET DISPLAY CONTRAST

INT 15 6300 - HUNTER 16 - GET IDLE TIMEOUT

INT 15 6301 - HUNTER 16 - SET IDLE TIMEOUT

INT 15 64-- - HUNTER 16 - CONTROL RESUME MODE

INT 15 65-- - HUNTER 16 - AUTHORISE CHARGING

INT 15 66-- - HUNTER 16 - SET BATTERY LEVEL

INT 15 67-- - HUNTER 16 - CONTROL STOP MODE

INT 15 68-- - HUNTER 16 - REQUEST POWER DOWN

INT 15 69-- - HUNTER 16 - CONTROL POWER DOWN AVAILABILITY

INT 15 6A-- - HUNTER 16 - CONTROL SLOW MODE

INT 15 6B-- - HUNTER 16 - GET ROM BIOS VERSION

INT 15 6C-- - HUNTER 16 - GET SERIAL NUMBER

INT 15 6D-- - HUNTER 16 - GET EVENT DETAIL

INT 15 6E-- - HUNTER 16 - ENABLE/TRAP EVENT

INT 15 6F-- - HUNTER 16 - ACKNOWLEDGE EVENT

INT 15 70-- - HUNTER 16 - CONTROL SOUND

INT 15 7000 - Tandy 1000SL/TL - READ FROM EEPROM

INT 15 7001 - Tandy 1000SL/TL - WRITE TO EEPROM

INT 15 7002 - Tandy 1000 Model ??? - GET ROM PAGE

INT 15 7003 - Tandy 1000 Model ??? - SET ROM PAGE

INT 15 71-- - HUNTER 16 - SELECT POWER UP KEYS

INT 15 7200 - HUNTER 16 - RESET SERIAL NUMBER

INT 15 72-- - HUNTER 16 - REDIRECT SERIAL NUMBER

INT 15 73-- - HUNTER 16 - GET ORACLE GT POWER LEVEL

INT 15 74-- - HUNTER 16 - SET BACKLIGHT POWER UP STATE

INT 15 75-- - HUNTER 16 - SET CONTRAST POWER UP STATE

INT 15 76-- - HUNTER 16 - CONTROL POWER SAVE

INT 15 79-- - HUNTER 16 - REDIRECT LPT1

INT 15 7A-- - HUNTER 16 - INVOKE HOT KEY

INT 15 7B-- - HUNTER 16 - CONTROL HOT KEY

INT 15 7C-- - HUNTER 16 - CONTROL HOT KEY POWER OPTION

INT 15 7D-- - HUNTER 16 - OVERRIDE LOW POWER TURN OFF

INT 15 7E-- - HUNTER 16 - CONTROL BATTERY CHANGE FACILITIES (APM)

INT 15 7F-- - HUNTER 16 - SET BATTERY TYPE (APM)

INT 15 80-- - OS HOOK - DEVICE OPEN (AT,XT286,PS)

INT 15 80-- - HUNTER 16 - GET/SET BATTERY CAPACITY (APM)

INT 15 81-- - OS HOOK - DEVICE CLOSE

INT 15 81-- - HUNTER 16 - CONTROL POWER OUTPUT

INT 15 82-- - OS HOOK - PROGRAM TERMINATION

INT 15 82-- - HUNTER 16 - SOUND OUTPUT

INT 15 83-- - BIOS - SET EVENT WAIT INTERVAL (AT,PS50+)

INT 15 83-- - HUNTER 16 - CONTROL SCREEN SYNCHRONISATION

INT 15 84-- - BIOS - JOYSTICK SUPPORT (XT after 11/8/82,AT,XT286,PS)

INT 15 84-- - V20-XT-BIOS - JOYSTICK SUPPORT

INT 15 8400 - HUNTER 16 - GET DISKETTE PORT

INT 15 8401 - HUNTER 16 - SET DISKETTE PORT

INT 15 85-- - OS HOOK - SysReq KEY ACTIVITY (AT,PS)

INT 15 8500 - HUNTER 16 - RESTORE POWER MENU (APM)

INT 15 8501 - HUNTER 16 - SET POWER MENU (APM)

INT 15 86-- - BIOS - WAIT (AT,PS)

INT 15 86-- - HUNTER 16 - GET/SET SCREEN ATTRIBUTE TABLE

INT 15 87-- - SYSTEM - COPY EXTENDED MEMORY

INT 15 87-- - HUNTER 16 - SET INT 72h VECTOR

INT 15 88-- - SYSTEM - GET EXTENDED MEMORY SIZE (286+)

INT 15 88-- - HUNTER 16 - GET POWER UP KEYS

INT 15 89-- - SYSTEM - SWITCH TO PROTECTED MODE

INT 15 8900 - HUNTER 16 - GET POWER MODE

INT 15 8901 - HUNTER 16 - SET POWER MODE

INT 15 8A-- - HUNTER 16 - CONTROL POWER INPUT (SPM)

INT 15 8B-- - HUNTER 16 - GET/SET CHARGER TEMPERATURE OVERRIDE

INT 15 8C-- - HUNTER 16 - GET/SET POWER SAVE ENTRY FLAG

INT 15 8D-- - HUNTER 16 - GET/SET BOOST CHARGE (SPM)

INT 15 90-- - OS HOOK - DEVICE BUSY (AT,PS)

INT 15 91-- - OS HOOK - DEVICE POST (AT,PS)

INT 15 A100 - AMI PCI BIOS - SET ??? FLAG

INT 15 BA10 - HP OmniShare - Pen Driver - REPORT PEN CONTROL AREA EVENT

INT 15 BA11 - HP OmniShare - Pen Driver - SET THE COMMUNICATION LED STATE

INT 15 BA12 - HP OmniShare - Pen Driver - STORE PEN BATTERY CHARGE

INT 15 BA13 - HP OmniShare - Pen Driver - GET PEN BATTERY CHARGE

INT 15 BA20 - HP OmniShare - STANDBY.COM - INSTALLATION CHECK

INT 15 BA21 - HP OmniShare - STANDBY.COM - SET STANDBY DURATION

INT 15 BA22 - HP OmniShare - STANDBY.COM - GET STANDBY DURATION

INT 15 BA23 - HP OmniShare - STANDBY.COM - TURN ON THE SCREEN IMMEDIATELY

INT 15 BA24 - HP OmniShare - STANDBY.COM - TURN OFF THE SCREEN IMMEDIATELY

INT 15 BA25 - HP OmniShare - STANDBY.COM - PREPARE FOR UNINSTALL

INT 15 BA26 - HP OmniShare - STANDBY.COM - IS THE DISPLAY IN STANDBY MODE?

INT 15 BA27 - HP OmniShare - STANDBY.COM - RESERVED FUNCTIONS

INT 15 BC-- - Phoenix 386 BIOS - DETERMINE CPU SPEED FOR DELAY LOOPS

INT 15 BF00 - Rational Systems DOS/16M - ???

INT 15 BF01 - Rational Systems DOS/16M - ???

INT 15 BF02 - Rational Systems DOS/16M - INSTALLATION CHECK

INT 15 BF03 - Rational Systems DOS/4GW - UNINSTALL???

INT 15 BF04 - Rational Systems DOS/4GW - ???

INT 15 BF05 - Rational Systems DOS/4GW - INITIALIZE PROTECTED-MODE INTERFACE

INT 15 BF06 - Rational Systems DOS/4GW - ???

INT 15 BFDC - Rational Systems DOS/4GW - INSTALLATION CHECK

INT 15 BFDE - DESQview/X - DVDOS4GX.DVR - INSTALLATION CHECK

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET PROCESS MANAGER NAME

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET PROTECTED MODE PROGRAM LOADER

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - DECREMENT ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - INCREMENT ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET TASK HANDLE

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - LOCK ??? MAILBOX

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - UNLOCK ??? MAILBOX

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - CHECK IF ??? MAILBOX OWNED

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ??? MAILBOX OWNER

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - NOP

INT 15 C0-- - SYSTEM - GET CONFIGURATION (XT after 1/10/86,AT mdl 3x9,CONV,XT286,PS)

INT 15 C1-- - SYSTEM - RETURN EXTENDED-BIOS DATA-AREA SEGMENT ADDRESS (PS)

INT 15 C200 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - ENABLE/DISABLE

INT 15 C201 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - RESET

INT 15 C202 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET SAMPLING RATE

INT 15 C203 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET RESOLUTION

INT 15 C204 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - GET TYPE

INT 15 C205 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - INITIALIZE

INT 15 C206 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - EXTENDED COMMANDS

INT 15 C207 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET DEVICE HANDLER ADDR

INT 15 C3-- - SYSTEM - ENABLE/DISABLE WATCHDOG TIMEOUT (PS50+)

INT 15 C4-- - SYSTEM - PROGRAMMABLE OPTION SELECT (PS50+)

INT 15 C5-- - OS HOOK - ROM BIOS TRACING CALLOUT (PS30/286,PS50Z,PS95)

INT 15 C6-- - later PS/2 models - GET POS DATA

INT 15 C7-- - SYSTEM - later PS/2s - RETURN MEMORY-MAP INFORMATION

INT 15 C8-- - SYSTEM - ENABLE/DISABLE PROCESSOR FUNCTIONS

INT 15 C9-- - newer PS/2; various BIOSes - GET CPU TYPE AND MASK REVISION

INT 15 CA-- - PS/2 Model 95 - READ/WRITE CMOS MEMORY

INT 15 CB-- - PS/2 Model 95 - RESERVED

INT 15 CC-- - PS/2 Model 95 - RESERVED

INT 15 CCCC - Toshiba laptops - VCHAD.EXE - INSTALLATION CHECK

INT 15 CD-- - PS/2 Model 95 - RESERVED

INT 15 CE-- - later PS/2s - ALLOCATE DMA ARBITRATION LEVEL

INT 15 CF-- - later PS/2s - DEALLOCATE DMA ARBITRATION LEVEL

INT 15 D0-- - later PS/2s - RESERVED

INT 15 D100 - later PS/2s - GET NUMBER OF DEVICE DESCRIPTOR TABLE (DDT) ENTRIES

INT 15 D101 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY NUMBER

INT 15 D102 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY I/O ADDRSS

INT 15 D103 - later PS/2s - RETURN ENTIRE DDT

INT 15 D104 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY DEVICE ID

INT 15 D2-- - later PS/2s - RESERVED

INT 15 D3-- - later PS/2s - RESERVED

INT 15 D4-- - later PS/2s - GET PHYSICAL FIXED DISK DRIVE NUMBER (SELECTABLE BOOT)

INT 15 D5-- - later PS/2s - RESERVED

INT 15 D600 - later PS/2s - READ BOOT DEVICE ID

INT 15 D600 - later PS/2s - WRITE BOOT DEVICE ID

INT 15 D601 - later PS/2s - READ BOOT DEVICE KEY

INT 15 D601 - later PS/2s - WRITE BOOT DEVICE KEY

INT 15 D602 - later PS/2s - QUERY BOOT REFERENCE PARTITION

INT 15 D800 - EISA SYSTEM ROM - READ SLOT CONFIGURATION INFORMATION

INT 15 D801 - EISA SYSTEM ROM - READ FUNCTION CONFIGURATION INFORMATION

INT 15 D802 - EISA SYSTEM ROM - CLEAR NONVOLATILE MEMORY (EISA CMOS)

INT 15 D803 - EISA SYSTEM ROM - WRITE NONVOLATILE MEMORY

INT 15 D804 - EISA SYSTEM ROM - READ PHYSICAL SLOT

INT 15 D820 - Compaq LTE Lite - GET ???

INT 15 D821 - Compaq LTE Lite - SET ???

INT 15 D822 - Compaq EISA System ROM 04/08/93 - GET ???

INT 15 D823 - Compaq EISA System ROM 04/08/93 - ???

INT 15 D824 - Compaq EISA System ROM 04/08/93 - ???

INT 15 D825 - Compaq EISA System ROM 04/08/93 - ???

INT 15 D826 - Compaq EISA System ROM 04/08/93 - ???

INT 15 D8-- - EISA SYSTEM ROM - 32-bit CS ADDRESSING MODE CALLS

INT 15 D8-- - Compaq EISA System ROM 04/08/93 - 32-bit CS ADDRESSING MODE CALLS

INT 15 DA-- - AMI PCI BIOS v1.00.05.AX1 - ???

INT 15 DA00 - AMI PCI BIOS - ???

INT 15 DA01 - AMI PCI BIOS - CPU SPEED CONTROL

INT 15 DA05 - AMI PCI BIOS - GET ??? AND BIOS REVISION STRINGS

INT 15 DA08 - AMI PCI BIOS - ???

INT 15 DA12 - AMI PCI BIOS - v1.00.05.AX1 - ???

INT 15 DA14 - AMI PCI BIOS - GET/SET ???

INT 15 DA15 - AMI PCI BIOS - GET ??? AND BIOS REVISION STRINGS

INT 15 DA19 - AMI PCI BIOS - GET/SET ???

INT 15 DA88 - AMI PCI BIOS - GET EXTENDED MEMORY SIZE

INT 15 DA8C - AMI PCI BIOS - GET BIOS AND CHIPSET??? VERSION

INT 15 DA8E - AMI PCI BIOS - ???

INT 15 DA92 - AMI PCI BIOS - GET CPU TYPE AND SPEED

INT 15 DA99 - AMI PCI BIOS - GET/SET ??? FLAG

INT 15 DB00 - AMI BIOS - Flash ROM - ???

INT 15 DB01 - AMI BIOS - Flash ROM - GET BIOS SUBSYSTEM INFORMATION

INT 15 DB02 - AMI BIOS - Flash ROM - GET SIZE OF ??? CODE

INT 15 DB03 - AMI BIOS - Flash ROM - GET ??? CODE

INT 15 DB04 - AMI BIOS - Flash ROM - GET BIOS REVISION

INT 15 DE00 - DESQview - GET PROGRAM NAME

INT 15 DE01 - DESQview - UPDATE "OPEN WINDOW" MENU

INT 15 DE02 - DESQview 1.x only - SET ??? FLAG FOR CURRENT WINDOW

INT 15 DE03 - DESQview 1.x only - GET ??? FOR CURRENT WINDOW

INT 15 DE04 - DESQview - GET AVAILABLE COMMON MEMORY

INT 15 DE05 - DESQview - GET AVAILABLE CONVENTIONAL MEMORY

INT 15 DE06 - DESQview - GET AVAILABLE EXPANDED MEMORY

INT 15 DE07 - DESQview - "APPNUM" - GET CURRENT PROGRAM'S NUMBER

INT 15 DE08 - DESQview - GET ???

INT 15 DE09 - DESQview - UNIMPLEMENTED

INT 15 DE0A - DESQview v2.00+ - "DBGPOKE" - DISPLAY CHARACTER ON STATUS LINE

INT 15 DE0B - DESQview v2.00+ - "APILEVEL" - DEFINE MINIMUM API LEVEL REQUIRED

INT 15 DE0C - DESQview v2.00+ - "GETMEM" - ALLOCATE "SYSTEM" MEMORY

INT 15 DE0D - DESQview v2.00+ - "PUTMEM" - DEALLOCATE "SYSTEM" MEMORY

INT 15 DE0E - DESQview v2.00+ - "FINDMAIL" - FIND MAILBOX BY NAME

INT 15 DE0F - DESQview v2.00+ - ENABLE DESQview EXTENSIONS

INT 15 DE10 - DESQview v2.00+ - "PUSHKEY" - PUT KEY INTO KEYBOARD INPUT STREAM

INT 15 DE11 - DESQview v2.00+ - "JUSTIFY" - EN/DISABLE AUTOM. WINDOW JUSTIFICATION

INT 15 DE12 - DESQview v2.01+ - "CSTYLE" - SET "C"-COMPATIBLE CONTROL CHAR INTERPRET

INT 15 DE13 - DESQview v2.20+ - "GETCRIT" - GET CRITICAL NESTING COUNT

INT 15 DE14 - DESQview v2.20+ - GET OBJECT TYPE

INT 15 DE15 - DESQview v2.20+ - SET ERROR HANDLING

INT 15 DE16 - DESQview v2.20+ - GET ERROR HANDLING

INT 15 DE17 - DESQview v2.20-2.25 - reserved

INT 15 DE17 - DESQview v2.26+ - "ASSERTMAP" - GET/SET MAPPING CONTEXT

INT 15 DE18 - DESQview v2.20+ - internal - ???

INT 15 DE19 - DESQview v2.23+ - "GETCOMMON" - ALLOCATE "COMMON" MEMORY

INT 15 DE1A - DESQview v2.23+ - "PUTCOMMON" - DEALLOCATE "COMMON" MEMORY

INT 15 DE1B - DESQview v2.23+ internal - DECREMENT CRITICAL NESTING COUNT

INT 15 DE1C - DESQview v2.23+ - "ENTERC" - INCREMENT CRITICAL NESTING COUNT

INT 15 DE1D - DESQview v2.23+ - "PUTKEY" - FAKE USER KEYSTROKES

INT 15 DE1E - DESQview v2.23+ - "SCRNINFO" - GET TRUE VIDEO PARAMETERS

INT 15 DE1F - DESQview v2.23+ - "DOSUSER" - GET HANDLE OF TASK CURRENTLY USING DOS

INT 15 DE20 - DESQview v2.26+ - "DISPATCHINT" - INTERRUPT ANOTHER TASK

INT 15 DE21 - DESQview v2.26+ - "ASSERTVIR" - CONTROL 386 SCREEN VIRTUALIZATION

INT 15 DE22 - DESQview v2.26+ - "PROCESSMEM" - GET TASK MEMORY STATUS

INT 15 DE23 - DESQview v2.31+ - ???

INT 15 DE24 - DESQview v2.40+ - "XNEWPROC" - START NEW APPLICATION

INT 15 DE25 - DESQview v2.40+ - "GETDVPATH" - GET DESQview DIRECTORY

INT 15 DE26 - DESQview v2.40+ - "GETFOREGROUND" - GET KEYBOARD FOCUS

INT 15 DE27 - DESQview v2.50+ - "ADDINSTANCEDATA" - ADD PER-TASK SAVE/RESTORE AREA

INT 15 DE28 - DESQview v2.50+ - ???

INT 15 DE29 - DESQview/X - ???

INT 15 DE29 - DESQview/X - ???

INT 15 DE29 - DESQview/X - ???

INT 15 DE29 - DESQview/X - ???

INT 15 DE29 - DESQview/X - GET DISPLAY NAME

INT 15 DE29 - DESQview/X - ???

INT 15 DE2A - DESQview v2.50+ - "DISPATCHINTAFTERDOS" - INTERRUPT ANOTHER TASK

INT 15 DE2B - DESQview v2.50+ - "OBJNEXT" - TRAVERSE OBJECT LIST

INT 15 DE2C - DESQview v2.50+ - "WININFO" - GET WINDOW INFORMATION

INT 15 DE2D - DESQview v2.50+ - GET/SET SOCKET HANDLER

INT 15 DE2E - DESQview v2.50+ - SOCKET API

INT 15 DE2F - DESQview v2.50+ - "VIDEONOTIFY" - HAS DIRECT WINDOW BEEN ACTIVE?

INT 15 DE30 - DESQview v2.50+ - "GETDVXVERSION" - GET DESQview/X VERSION

INT 15 DE31 - DESQview/X v1.10 - ???

INT 15 DF-- - Juko UNIQUE UX BIOS - TURBO MODE CONTROL

INT 15 E00F - Compaq Systempro - MULTIPROCESSOR DISPATCH

INT 15 E10E - Compaq Systempro - MULTIPROCESSOR END-OF-DISPATCH

INT 15 E200 - Compaq Systempro - MULTIPROCESSOR AVAILABLE

INT 15 E4-- - Tandy??? - ???

INT 15 E4-- - Compaq ROM BIOS 03/08/93 and newer - ???

INT 15 E800 - Compaq Contura - GET ???

INT 15 E800 - Compaq Contura Aero, Contura 400 - GET SYSTEM MODEL CODE???

INT 15 E800 - Compaq Prolinea - GET ???

INT 15 E801 - Compaq Contura - GET ???

INT 15 E801 - Dell XPS P90 - DISPLAY MEMORY FOR >64M CONFIGURATIONS

INT 15 E802 - Compaq Contura - GET ???

INT 15 E820 - Dell XPS P90 - GET MEMORY MAP

INT 15 F200 - Tandon memory mapper - Tandon MAPPER HARDWARE INITIALISATION CHECK ???

Interrupts


INT 16 - KEYBOARD
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 16 - KEYBOARD

INT 16 00-- - KEYBOARD - GET KEYSTROKE

INT 16 01-- - KEYBOARD - CHECK FOR KEYSTROKE

INT 16 02-- - KEYBOARD - GET SHIFT FLAGS

INT 16 03-- - KEYBOARD - SET TYPEMATIC RATE AND DELAY

INT 16 04-- - KEYBOARD - SET KEYCLICK (PCjr only)

INT 16 04-- - K3PLUS v6.22+ - SET KEYCLICK

INT 16 05-- - KEYBOARD - STORE KEYSTROKE IN KEYBOARD BUFFER (AT/PS w enh keybd only)

INT 16 05-- - KEYBOARD - SELECT KEYBOARD LAYOUT (PCjr only)

INT 16 09-- - KEYBOARD - GET KEYBOARD FUNCTIONALITY

INT 16 0A-- - KEYBOARD - GET KEYBOARD ID

INT 16 10-- - KEYBOARD - GET ENHANCED KEYSTROKE (enhanced kbd support only)

INT 16 11-- - KEYBOARD - CHECK FOR ENHANCED KEYSTROKE (enh kbd support only)

INT 16 12-- - KEYBOARD - GET EXTENDED SHIFT STATES (enh kbd support only)

INT 16 13-- - DOS/V - DOUBLE-BYTE CHARACTER SET SHIFT CONTROL

INT 16 14-- - DOS/V - SHIFT STATUS DISPLAY CONTROL

INT 16 20-- - KEYBOARD - GET 122-KEY KEYSTROKE (122-key kbd support only)

INT 16 20-- - HUNTER 16 - SET TEMPORARY SHIFT

INT 16 20-- - K3 v1.5+, K3PLUS v5.0+ - GET EXTENDED BUFFER STATE

INT 16 21-- - KEYBOARD - CHECK FOR 122-KEY KEYSTROKE (122-key kbd support only)

INT 16 21-- - HUNTER 16 - CONTROL SHIFT KEYS

INT 16 22-- - KEYBOARD - GET 122-KEY SHIFT STATUS (122-key kbd support only)

INT 16 22-- - HUNTER 16 - CONTROL CTRL-ALT-DEL

INT 16 23-- - HUNTER 16 - CONTROL EMERGENCY BREAKOUT

INT 16 24-- - HUNTER 16 - REDEFINE KEY CODES

INT 16 25-- - HUNTER 16 - RESET KEYBOARD

INT 16 25-- - K3 v1.5+, K3PLUS v5.0+ - COPY INTO EXTENDED BUFFER

INT 16 26-- - HUNTER 16 - CONTROL KEYCLICK

INT 16 27-- - HUNTER 16 - CONTROL SCREEN DUMP AREA

INT 16 29-- - HUNTER 16 - GET KEY REPEAT

INT 16 2A-- - HUNTER 16 - CONTROL KEY REPEAT

INT 16 2B-- - HUNTER 16 - REDEFINE KEY SCAN CODES

INT 16 2C-- - HUNTER 16 - REDEFINE RAW KEY CODES

INT 16 2D-- - HUNTER 16 - CONTROL BREAK KEYS

INT 16 3577 - TextWare TWTSR - API

INT 16 4252 - TEXTCAP 2.0 - INSTALLATION CHECK

INT 16 4253 - TEXTCAP 2.0 - UNINSTALL

INT 16 4254 - TEXTCAP 2.0 - DUMP TEXT SCREEN TO FILE

INT 16 4500 - Shamrock Software EMAIL - GET STATUS

INT 16 4501 - Shamrock Software EMAIL - GET ELAPSED ONLINE TIME AND MAXIMUM TIME

INT 16 4502 - Shamrock Software EMAIL - GET CURRENT COMMUNICATIONS PARAMETERS

INT 16 4503 - Shamrock Software EMAIL - SPECIFY COMMAND-WORD FOR USER FUNCTION

INT 16 4504 - Shamrock Software EMAIL - CHECK FOR USER FUNCTION COMMAND-WORD

INT 16 4505 - Shamrock Software EMAIL - SEND RESULT OF USER FUNCTION

INT 16 4506 - Shamrock Software EMAIL - MONITOR XMODEM DOWNLOAD

INT 16 4D4F - M16_KBD.COM v5.6 - INSTALLATION CHECK

INT 16 5000 - KEYBOARD - AX PC - SET KEYBOARD COUNTRY CODE

INT 16 5001 - KEYBOARD - AX PC - GET KEYBOARD COUNTRY CODE

INT 16 51-- - KEYBOARD - AX PC - READ SHIFT KEY STATUS

INT 16 5453 - TSRBONES - INSTALLATION CHECK

INT 16 5500 - Microsoft Word internal - MICROSOFT WORD COOPERATION WITH TSR

INT 16 55FE - Microsoft QBASIC internal - MICROSOFT COOPERATION WITH TSR

INT 16 55FF - Microsoft Word - TSR COOPERATION???

INT 16 5758 - Netroom CACHECLK - INSTALLATION CHECK

INT 16 5758 - Netroom ??? - ???

INT 16 5758 - Netroom ??? - ???

INT 16 5758 - Netroom ??? - INSTALLATION CHECK

INT 16 5758 - Netroom PRENET - GET OLD INTERRUPT VECTORS

INT 16 5758 - Netroom POSTNET - GET OLD INTERRUPT VECTORS

INT 16 6969 - PC Tools v5.1+ BACKTALK - UNHOOK

INT 16 6969 - PC Tools v5.1+ BACKTALK - INSTALLATION CHECK

INT 16 6A6B - FastJuice - DISABLE/UNLOAD???

INT 16 6C63 - TMED v1.6a - INSTALLATION CHECK

INT 16 6F00 - HP Vectra EX-BIOS - "F16_INQUIRE" - Extended BIOS INSTALLATION CHECK

INT 16 6F01 - HP Vectra EX-BIOS - "F16_DEF_ATTR" - GET DEFAULT TYPEMATIC VALUES

INT 16 6F02 - HP Vectra EX-BIOS - "F16_GET_ATTR" - GET CURRENT TYPEMATIC VALUES

INT 16 6F03 - HP Vectra EX-BIOS - "F16_SET_ATTR" - SET TYPEMATIC VALUES

INT 16 6F04 - HP Vectra EX-BIOS - "F16_DEF_MAPPING" - GET DEFAULT KEY MAPPINGS

INT 16 6F05 - HP Vectra EX-BIOS - "F16_GET_MAPPING" - GET CURRENT KEY MAPPINGS

INT 16 6F06 - HP Vectra EX-BIOS - "F16_SET_MAPPING" - SET KEY MAPPINGS

INT 16 6F07 - HP Vectra EX-BIOS - "F16_SET_XLATORS" - SET CCP AND SOFTKEY PADS

INT 16 6F08 - HP Vectra EX-BIOS - "F16_KBD" - GET KEYBOARD INFORMATION

INT 16 6F09 - HP Vectra EX-BIOS - "F16_KBD_RESET" - RESET KEYBOARD TO DEFAULTS

INT 16 6F0A - HP Vectra ES/QS/RS EX-BIOS - READ PROCESSOR SPEED

INT 16 6F0B - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO LOW

INT 16 6F0C - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO HIGH

INT 16 6F0D - HP Vectra ES/QS/RS EX-BIOS - GET HIL Extended BIOS INTERRUPT NUMBER

INT 16 6F0E - HP Vectra ES/QS/RS EX-BIOS - SET HIL Extended BIOS INTERRUPT NUMBER

INT 16 6F0F - HP Vectras RS/20C and RS/25C - ENABLE MEMORY CACHING

INT 16 6F10 - HP Vectras RS/20C and RS/25C - DISABLE MEMORY CACHING

INT 16 6F11 - HP Vectras RS/20C and RS/25C - GET MEMORY CACHING STATE

INT 16 6F12 - HP Vectras RS/20C and RS/25C - SET PROCESSOR SPEED TO MEDIUM

INT 16 70-- - FAKEY.COM - INSTALLATION CHECK

INT 16 71-- - FAKEY.COM - PUSH KEYSTROKES

INT 16 72-- - FAKEY.COM - CLEAR FAKED KEYSTROKES

INT 16 73-- - FAKEY.COM - PLAY TONES

INT 16 7463 - FastJuice - INSTALLATION CHECK

INT 16 75-- - pcANYWHERE III - SET TICK COUNT FOR SCANNING

INT 16 76-- - pcANYWHERE III - SET ERROR CHECKING TYPE

INT 16 77-- - pcANYWHERE III - LOG OFF

INT 16 7761 - WATCH.COM v2.x-v3.0 - INSTALLATION CHECK

INT 16 7788 - PC Magazine PUSHDIR.COM - INSTALLATION CHECK

INT 16 79-- - pcANYWHERE III - CHECK STATUS

INT 16 7A-- - pcANYWHERE III - CANCEL SESSION

INT 16 7B00 - pcANYWHERE III - SUSPEND

INT 16 7B01 - pcANYWHERE III - RESUME

INT 16 7C-- - pcANYWHERE III - GET PORT CONFIGURATION

INT 16 7D-- - pcANYWHERE III - GET/SET TERMINAL PARAMETERS

INT 16 7E-- - pcANYWHERE III - COMMUNICATIONS I/O THROUGH PORT

INT 16 7F-- - pcANYWHERE III - SET KEYBOARD/SCREEN MODE

INT 16 80-- - MAKEY.COM - INSTALLATION CHECK

INT 16 8765 - AT.COM version 8/26/87 - API

INT 16 92-- - KEYB.COM KEYBOARD CAPABILITIES CHECK (not an actual function!)

INT 16 99-- - SCOUT v5.4 - GET ???

INT 16 9E-- - SCOUT v5.4 - INSTALLATION CHECK

INT 16 A2-- - KEYB.COM KEYBOARD CAPABILITIES CHECK (not an actual function!)

INT 16 AA-- - PTxxx.COM - (xxx=CGA,EGA,VGA,HER...) CALL GATE FOR GRAPHICS

INT 16 AABB - JORJ v4.3 - INSTALLATION CHECK

INT 16 AF20 - K3PLUS v6.00+ (API v2.0+) - GET EXTENDED BUFFER STATE

INT 16 AF25 - K3PLUS v6.00+ (API v2.0+) - COPY INTO EXTENDED BUFFER

INT 16 AF4D - K3PLUS v6.00+ (API v2.0+) - GET VERSION INFORMATION

INT 16 AF50 - K3PLUS v6.00+ (API v2.0+) - CHECK IF FUNCTION SUPPORTED

INT 16 AF51 - K3PLUS v6.00+ (API v2.00+) - SET OPTIONS

INT 16 AF80 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 09h VECTOR

INT 16 AF81 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 16h HANDLER

INT 16 AF82 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 10h HANDLER

INT 16 B0B1 - VGARAM v1.00 - INSTALLATION CHECK

INT 16 CA-- - CtrlAlt Associates STACKEY.COM v3.00 - API

INT 16 CA00 - CtrlAlt Associates EGAPAL.COM v1.00 - INSTALLATION CHECK

INT 16 CA00 - CtrlAlt Associates VGAPAL.COM v1.00 - INSTALLATION CHECK

INT 16 CB00 - PUPClip v1.12+ - INSTALLATION CHECK

INT 16 CB01 - PUPClip v1.12+ - GET CLIPBOARD CURSOR POSITION

INT 16 CB02 - PUPClip v1.12+ - SET CLIPBOARD CURSOR POSITION

INT 16 CB03 - PUPClip v1.12+ - GET CHARACTER FROM CURRENT CLIPBOARD CURSOR POSITION

INT 16 CB04 - PUPClip v1.12+ - WRITE CHARACTER TO CURRENT CLIPBOARD CURSOR POSITION

INT 16 CB05 - PUPClip v1.12+ - CLEAR CLIPBOARD CONTENTS

INT 16 CB06 - PUPClip v1.12+ - SCROLL UP CLIPBOARD CONTENTS

INT 16 CB07 - PUPClip v1.12+ - SCROLL DOWN CLIPBOARD CONTENTS

INT 16 CB08 - PUPClip v1.12+ - POP UP

INT 16 D724 - APCAL v3.20 - GET ???

INT 16 D724 - APCAL v3.20 - GET ???

INT 16 D724 - APCAL v3.20 - GET ???

INT 16 DD-- - VIRUS - "Frumble" - INSTALLATION CHECK

INT 16 DFDF - Corel PowerSCSI - FDAUDIO.COM - INSTALLATION CHECK

INT 16 E000 - AMI BIOS - BIOS-FLASH Interface - GET VERSION NUMBER

INT 16 E001 - AMI BIOS - BIOS-FLASH Interface - GET CHIPSET SAVE/RESTORE SIZE

INT 16 E002 - AMI BIOS - BIOS-FLASH Interface - SAVE CHIPSET STATUS & PREPARE CHPSET

INT 16 E003 - AMI BIOS - BIOS-FLASH Interface -  RESTORE CHIPSET STATUS

INT 16 E004 - AMI BIOS - BIOS-FLASH Interface - LOWER PROGRAMMING VOLTAGE Vpp

INT 16 E005 - AMI BIOS - BIOS-FLASH Interface - RAISE PROGRAMMING VOLTAGE Vpp

INT 16 E006 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE PROTECT

INT 16 E007 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE ENABLE

INT 16 E008 - AMI BIOS - BIOS-FLASH Interface - FLASH SELECT

INT 16 E009 - AMI BIOS - BIOS-FLASH Interface - FLASH DE-SELECT

INT 16 E00A - AMI BIOS - BIOS-FLASH Interface - VERIFY ALLOCATED MEMORY

INT 16 E00B - AMI BIOS - BIOS-FLASH Interface - SAVE INTERNAL CACHE STATUS

INT 16 E00C - AMI BIOS - BIOS-FLASH Interface - RESTORE INTERNAL CACHE STATUS

INT 16 E0E0 - TurboPower TSRs - ALTERNATE INSTALLATION CHECK

INT 16 E0FF - AMI BIOS - BIOS-FLASH Interface - GENERATE CPU RESET

INT 16 ED-- - BORLAND TURBO LIGHTNING - API

INT 16 EF-- - CALCULATOR - INSTALLATION CHECK

INT 16 F0-- - Compaq 386 and newer - SET CPU SPEED

INT 16 F0F0 - TurboPower TSRs - INSTALLATION CHECK

INT 16 F1-- - Compaq 386 and newer - READ CURRENT CPU SPEED

INT 16 F2-- - Compaq 386 and newer - DETERMINE ATTACHED KEYBOARD TYPE

INT 16 F3-- - Compaq 80286s - SET CPU SPEED LIMIT (OVERRIDE JUMPER)

INT 16 F398 - NORTON GUIDES - INSTALLATION CHECK

INT 16 F400 - Compaq Systempro and higher - CACHE CONTROLLER STATUS

INT 16 F401 - Compaq Systempro and higher - ENABLE CACHE CONTROLLER

INT 16 F402 - Compaq Systempro and higher - DISABLE CACHE CONTROLLER

INT 16 FA00 - PC Tools v8+ VSAFE, VWATCH - INSTALLATION CHECK

INT 16 FA01 - PC Tools v8+ VSAFE, VWATCH - UNINSTALL

INT 16 FA02 - PC Tools v8+ VSAFE, VWATCH - GET/SET OPTIONS

INT 16 FA03 - PC Tools v8+ VSAFE, VWATCH - GET ???

INT 16 FA04 - PC Tools v8+ VSAFE - GET HOTKEY DISABLE FLAG

INT 16 FA05 - PC Tools v8+ VSAFE - SET HOTKEY DISABLE FLAG

INT 16 FA06 - PC Tools v8+ VSAFE, VWATCH - GET NETWORK DRIVES TEST FLAG

INT 16 FA07 - PC Tools v8+ VSAFE, VWATCH - SET NETWORK DRIVES TEST FLAG

INT 16 FA08 - PC Tools v9+ VWATCH v2.1 - ???

INT 16 FE55 - PC Tools v8+ programs - GET ???

INT 16 FEA4 - PC Tools v7+ CPSCHED/DESKTOP - RESET ???

INT 16 FEC6 - PC Tools v7+ CPSCHED - ENABLE/DISABLE CPSCHED API

INT 16 FED3 - PC Tools v7+ CPSCHED/DESKTOP - ???

INT 16 FEDC - PC Tools v7+ CPSCHED - UNHOOK INTERRUPTS

INT 16 FEEF - PC Tools v7+ CPSCHED/DESKTOP - INSTALLATION CHECK

INT 16 FEF1 - PC Tools v7 only CPSCHED/DESKTOP - ALTERNATE INSTALLATION CHECK

INT 16 FF-- - KEYBOARD - KBUF extensions - ADD KEY TO TAIL OF KEYBOARD BUFFER

INT 16 FF-- - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY ZOOM INTERRUPT

INT 16 FF-- - FREEZE.COM - INSTALLATION CHECK

INT 16 FF70 - PC Tools v8+ DRIVEMAP - INSTALLATION CHECK

INT 16 FF70 - PC Tools v8+ DRIVEMAP - ???

INT 16 FF70 - PC Tools v8+ DRIVEMAP - ???

INT 16 FF80 - PC Tools v8+ CPTASK - INSTALLATION CHECK

INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

INT 16 FF80 - PC Tools v8+ CPTASK - GET ??? FLAGS

INT 16 FF80 - PC Tools v8+ CPTASK - SET ???

INT 16 FF80 - PC Tools v8+ CPTASK - GET NUMBER OF ACTIVE TASKS???

INT 16 FF80 - PC Tools v8+ CPTASK - GET AND CLEAR ??? FLAG

INT 16 FF80 - PC Tools v8+ CPTASK - ???

INT 16 FF80 - PC Tools v8+ CPTASK - ???

INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

INT 16 FF80 - PC Tools v9+ CPTASK - SET ???

INT 16 FF80 - PC Tools v9+ CPTASK - SET ???

INT 16 FF80 - PC Tools v9+ CPTASK - SET IDLE??? DELAY

INT 16 FF80 - PC Tools v8+ CPTASK - UNINSTALL

INT 16 FF90 - PC Tools v8+ DESKTOP - ???

INT 16 FF91 - PC Tools v7+ DESKTOP - ???

INT 16 FF92 - PC Tools v7+ DESKTOP - ???

INT 16 FF93 - PC Tools v7+ DESKTOP - SET ??? FLAG

INT 16 FF94 - PC Tools v7+ DESKTOP - SET ???

INT 16 FF95 - PC Tools v7+ DESKTOP - SET ???

INT 16 FF96 - PC Tools v7+ DESKTOP - ???

INT 16 FF97 - PC Tools v7+ DESKTOP - ???

INT 16 FF98 - PC Tools v7+ DESKTOP - OPEN \DESK.OVL FILE AND SEEK TO OVERLAY

INT 16 FF99 - PC Tools v7+ DESKTOP - ???

INT 16 FF9A - PC Tools v7+ DESKTOP - GET NAME OF COLOR SCHEME

INT 16 FF9B - PC Tools v7+ DESKTOP - UNUSED

INT 16 FF9C - PC Tools v8+ CPTASK - SET/CLEAR ??? POINTER

INT 16 FF9D - PC Tools v8+ CPTASK, VSAFE - ???

INT 16 FF9E - PC Tools v7+ DESKTOP - ???

INT 16 FFA1 - PC Tools v7+ DESKTOP - ???

INT 16 FFA2 - PC Tools v7+ DESKTOP - ???

INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - INSTALLATION CHECK

INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

INT 16 FFA3 - PC Tools v7+ DATAMON - SET ??? FLAG

INT 16 FFA3 - PC Tools v7+ DATAMON - CLEAR ??? FLAG

INT 16 FFA3 - PC Tools v7+ DATAMON - SET PSP SEGMENT ???

INT 16 FFA3 - PC Tools v9 DSKLIGHT - INSTALLATION CHECK

INT 16 FFA4 - PC Tools v7-8 DESKTOP - ???

INT 16 FFA5 - PC-Cache v6+ - INSTALLATION CHECK

INT 16 FFA5 - PC-Cache v6+ - ENABLE DELAYED WRITES

INT 16 FFA5 - PC-Cache v6+ - FLUSH CACHE AND DISABLE DELAYED WRITES

INT 16 FFA5 - PC-Cache v6+ - FLUSH AND DISABLE CACHE

INT 16 FFA5 - PC-Cache v6+ - ENABLE CACHE

INT 16 FFA5 - PC-Cache v6+ - FLUSH CACHE

INT 16 FFA6 - PC Tools v6.0-8.0 DESKTOP - GET ???

INT 16 FFA7 - PC Tools v6.0-8.0 DESKTOP - GET ??? PATH

INT 16 FFA8 - PC Tools v6.0-8.0 DESKTOP - ???

INT 16 FFA9 - PC Tools v6.0-8.0 DESKTOP - GET VERSION STRING

INT 16 FFAA - PC Tools v6.0-8.0 DESKTOP - ???

INT 16 FFAB - PC Tools v6.0-8.0 DESKTOP - GET EDITOR SETTINGS???

INT 16 FFAC - PC Tools v6.0-8.0 DESKTOP - SET ???

INT 16 FFAD - PC Tools v6.0-8.0 DESKTOP - SET ???

INT 16 FFAE - PC Tools v6.0-8.0 DESKTOP - GET ???

INT 16 FFAF - PC Tools v6.0-8.0 DESKTOP - SET ???

INT 16 FFB0 - PC Tools v6.0-8.0 DESKTOP - SET ???

INT 16 FFB1 - PC Tools v6.0-8.0 DESKTOP - ???

INT 16 FFB2 - PC Tools v5.5-8.0 DESKTOP - GET ???

INT 16 FFB3 - PC Tools v5.5-8.0 DESKTOP - ???

INT 16 FFB4 - PC Tools v5.5-8.0 DESKTOP - SET ??? FLAG

INT 16 FFB5 - PC Tools v5.5-8.0 DESKTOP - GET/SET WINDOW PARAMETERS

INT 16 FFB6 - PC Tools v5.5-8.0 DESKTOP - GET ???

INT 16 FFB7 - PC Tools v5.5-8.0 DESKTOP - GET/SET ???

INT 16 FFB8 - PC Tools v5.1-8.0 DESKTOP - GET/SET???

INT 16 FFB9 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFBA - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFBB - PC Tools v5.1-8.0 DESKTOP - CLEAR ??? FLAG

INT 16 FFBC - PC Tools v5.1-8.0 DESKTOP - RESTORE ORIGINAL SCREEN???

INT 16 FFBD - PC Tools v5.1-8.0 DESKTOP - ??? DATABASE INDEXING MESSAGES

INT 16 FFBE - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFBF - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFC0 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFC1 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFC2 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFC3 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFC4 - PC Tools v5.1-8.0 DESKTOP - GET ???

INT 16 FFC5 - PC Tools v5.1-8.0 DESKTOP - CHECK WHETHER DESKTOP LOADED RESIDENT

INT 16 FFC6 - PC Tools v5.1-8.0 DESKTOP - SET ???

INT 16 FFC7 - PC Tools v5.1-8.0 DESKTOP - REMOVE WINDOW

INT 16 FFC8 - PC Tools v5.1-8.0 DESKTOP - GET ???

INT 16 FFC9 - PC Tools v5.1-8.0 DESKTOP - COPY DATA TO CLIPBOARD

INT 16 FFCA - PC Tools v5.1-8.0 DESKTOP - SET ???

INT 16 FFCB - PC Tools v5.1-8.0 DESKTOP - SELECT WINDOW PARAMETERS???

INT 16 FFCC - PC Tools v5.1-8.0 DESKTOP - DISPLAY ASCIZ STRING CENTERED IN WINDOW

INT 16 FFCD - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFCE - PC Tools v5.1-8.0 DESKTOP - SET ??? DELAYS

INT 16 FFCF - PC Tools v5.1-8.0 DESKTOP - CLOSE PRINTER/PRINT FILE

INT 16 FFD0 - PC Tools v5.1-8.0 DESKTOP - PREPARE TO PRINT???

INT 16 FFD1 - PC Tools v5.1-8.0 DESKTOP - DISPLAY PRINT OPTIONS MENU

INT 16 FFD2 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFD3 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFD4 - PC Tools v5.1-8.0 DESKTOP - CREATE/OPEN/DELETE FILE

INT 16 FFD5 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFD6 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFD7 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFD8 - PC Tools v5.1-8.0 DESKTOP - SAFE CREATE FILE

INT 16 FFD9 - PC Tools v5.1-8.0 DESKTOP - GET ???

INT 16 FFDA - PC Tools v5.1-8.0 DESKTOP - GET NAME OF LAST FILE OPENED

INT 16 FFDB - PC Tools v5.1-8.0 DESKTOP - SET ???

INT 16 FFDC - PC Tools v5.1-8.0 DESKTOP - UNHOOK

INT 16 FFDD - PC Tools v5.1+ PCShell API - INSTALLATION CHECK

INT 16 FFDD - PC Tools v5.1+ PCShell API - REQUEST POP-UP

INT 16 FFDD - PC Tools v5.1-5.5 PCShell API - GET ???

INT 16 FFDD - PC Tools v5.1+ PCShell API - REQUEST POP-UP

INT 16 FFDD - PC Tools v5.1+ PCShell API - GET ???

INT 16 FFDD - PC Tools v5.1+ PCShell API - ???

INT 16 FFDD - PC Tools v5.1+ PCShell API - ???

INT 16 FFDD - PC Tools v5.1+ PCShell API - SET ??? FLAG

INT 16 FFDD - PC Tools v5.1+ PCShell API - CLEAR ??? FLAG

INT 16 FFDD - PC Tools v6.0+ PCShell API - GET PCRUN PARAMETERS

INT 16 FFDD - PC Tools v6.0+ PCRUN API - INSTALLATION CHECK

INT 16 FFDD - PC Tools v6.0+ PCRUN API - ???

INT 16 FFDE - PC Tools v5.1-8.0 DESKTOP - DISPLAY POPUP MENU

INT 16 FFDF - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFE0 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFE1 - PC Tools v5.1-8.0 DESKTOP - BEEP

INT 16 FFE2 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFE3 - PC Tools v5.1-8.0 DESKTOP - PRINT CHARACTER

INT 16 FFE4 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFE5 - PC Tools v5.1-8.0 DESKTOP - POP UP FILE SELECTION MENU

INT 16 FFE6 - PC Tools v5.1-8.0 DESKTOP - CHECK FOR AND GET KEYSTROKE

INT 16 FFE7 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFE8 - PC Tools v5.1-8.0 DESKTOP - DISPLAY NUMBER

INT 16 FFE9 - PC Tools v5.1-8.0 DESKTOP - GET FILE LIST???

INT 16 FFEA - PC Tools v5.1-8.0 DESKTOP - DISPLAY COUNTED STRING

INT 16 FFEB - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFEC - PC Tools v5.1-8.0 DESKTOP - GET KEY

INT 16 FFED - PC Tools v5.1-8.0 DESKTOP - GET ???

INT 16 FFEE - PC Tools v5.1-8.0 DESKTOP - DEFINE PULLDOWN MENUS

INT 16 FFEF - PC Tools v5.1-8.0 DESKTOP - INSTALLATION CHECK

INT 16 FFF0 - PC Tools v5.1-8.0 DESKTOP - SET ???

INT 16 FFF1 - PC Tools v5.1-8.0 DESKTOP - ALTERNATE INSTALLATION CHECK

INT 16 FFF2 - PC Tools v5.1-8.0 DESKTOP - DISPLAY HELP LINE

INT 16 FFF3 - PC Tools v5.1-8.0 DESKTOP - PREPARE TO UNLOAD RESIDENT DESKTOP

INT 16 FFF4 - PC Tools v5.1-8.0 DESKTOP - ???

INT 16 FFF5 - PC Tools v5.1-8.0 DESKTOP - GET SCREEN ATTRIBUTE ARRAY

INT 16 FFF6 - PC Tools v5.1-8.0 DESKTOP - INVOKE NOTEPAD EDITOR

INT 16 FFF7 - PC Tools v5.1-8.0 DESKTOP - PROCESS MENU BAR ENTRY???

INT 16 FFF8 - PC Tools v5.1-8.0 DESKTOP - DRAW EMPTY WINDOW

INT 16 FFF9 - PC Tools v5.1-8.0 DESKTOP - DEFINE SCREEN REFRESH ROUTINE

INT 16 FFFA - PC Tools v5.1-8.0 DESKTOP - DEFINE STANDARD PULLDOWN MENUS

INT 16 FFFB - PC Tools v5.1-8.0 DESKTOP - PROCESS STANDARD MENU BAR

INT 16 FFFC - PC Tools v5.1-8.0 DESKTOP - GET HOTKEYS AND KEYBOARD VECTOR

INT 16 FFFD - PC Tools v5.1-8.0 DESKTOP - COPY ???

INT 16 FFFE - PC Tools v5.1-8.0 DESKTOP - SHOW MOUSE CURSOR

INT 16 FFFF - PC Tools v5.1-8.0 DESKTOP - HIDE MOUSE CURSOR

Interrupts


INT 17 - PRINTER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 17 - PRINTER

INT 17 ---- - PRINTER - LPTx v5.x INSTALLATION CHECK

INT 17 ---- - PRINTER - LPTx v6.x INSTALLATION CHECK

INT 17 ---- - PRINTER - LPTx v7.x INSTALLATION CHECK

INT 17 ---- - PRINTER - LPTx v4.x INSTALLATION CHECK

INT 17 00-- - PRINTER - WRITE CHARACTER

INT 17 01-- - PRINTER - INITIALIZE PORT

INT 17 02-- - PRINTER - GET STATUS

INT 17 02-- - INSET - INSTALLATION CHECK

INT 17 0200 - Advanced Parallel Port (EPP) BIOS - INSTALLATION CHECK

INT 17 03-- - Emulaser ELTSR - INSTALL INTERRUPT HANDLERS

INT 17 03-- - PC-MOS/386 v5.01 - PRINT SPOOLER - PRINT STRING

INT 17 03-- - DMP Print Spooler v2.03 - INSTALLATION CHECK

INT 17 0300 - DOSISODE to WATTCP TSR Interface - "socket"

INT 17 04-- - Emulaser ELTSR - BEGIN CAPTURING OUTPUT

INT 17 0400 - DOSISODE to WATTCP TSR Interface - "bind"

INT 17 0500 - Emulaser ELTSR - ???

INT 17 0500 - DOSISODE to WATTCP TSR Interface - "connect"

INT 17 0501 - Emulaser ELTSR - UNHOOK INTERRUPTS

INT 17 0502 - Emulaser ELTSR - SET ???

INT 17 0503 - Emulaser ELTSR - DEACTIVATE???

INT 17 06-- - Emulaser ELTSR - ???

INT 17 0600 - DOSISODE to WATTCP TSR Interface - "listen"

INT 17 07-- - Emulaser ELTSR - OPEN CAPTURE FILE

INT 17 0700 - DOSISODE to WATTCP TSR Interface - "accept"

INT 17 08-- - Emulaser ELTSR - CLOSE CAPTURE FILE

INT 17 0800 - DOSISODE to WATTCP TSR Interface - "recvfrom"

INT 17 09-- - Emulaser ELTSR - PRINT CAPTURE FILE???

INT 17 0900 - DOSISODE to WATTCP TSR Interface - "sendto"

INT 17 0A-- - Emulaser ELTSR - SET ??? FILENAME

INT 17 0A00 - DOSISODE to WATTCP TSR Interface - "select"

INT 17 0B-- - Emulaser ELTSR - GET ???

INT 17 0B00 - DOSISODE to WATTCP TSR Interface - "ioctl"

INT 17 0C-- - Emulaser ELTSR - SET ??? FLAG

INT 17 0C00 - DOSISODE to WATTCP TSR Interface - "close"

INT 17 0D-- - Emulaser ELTSR - GET TRUE ScrlLk STATE

INT 17 0D00 - DOSISODE to WATTCP TSR Interface - "shutdown" - SHUTDOWN INTERFACE

INT 17 0E-- - Emulaser ELTSR - BACKGROUND PROCESSING

INT 17 0E00 - DOSISODE to WATTCP TSR Interface - INSTALLATION CHECK

INT 17 2000 - PC Paint Plus 2.0 - PRINTER DRIVER - INSTALLATION CHECK

INT 17 2001 - PC Paint Plus 2.0 - PRINTER DRIVER - SET ??? FLAG

INT 17 2002 - PC Paint Plus 2.0 - PRINTER DRIVER - GET INFORMATION

INT 17 2003 - PC Paint Plus 2.0 - PRINTER DRIVER - ???

INT 17 2004 - PC Paint Plus 2.0 - PRINTER DRIVER - GET ???

INT 17 2005 - PC Paint Plus 2.0 - PRINTER DRIVER - ADVANCE PRINTER TO NEXT PAGE

INT 17 2006 - PC Paint Plus 2.0 - PRINTER DRIVER - ADVANCE TO NEXT PAGE & SHUT DOWN

INT 17 2007 - PC Paint Plus 2.0 - PRINTER DRIVER - UNIMPLEMENTED

INT 17 2400 - Shamrock Software NET.24 v3.11+ - ENABLE/DISABLE API FUNCTIONS

INT 17 2401 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, NO HANDSHAKE

INT 17 2402 - Shamrock Software NET.24 v3.11+ - TRANSMIT BLOCK, NO HANDSHAKE

INT 17 2403 - Shamrock Software NET.24 v3.11+ - GET STATUS AND TRANSMISSION BUFFER

INT 17 2404 - Shamrock Software NET.24 v3.11+ - SEND ACK BLOCK

INT 17 2405 - Shamrock Software NET.24 v3.11+ - SEND NAK BLOCK

INT 17 2406 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED RECEIVE

INT 17 2407 - Shamrock Software NET.24 v3.11+ - RECEIVE CHARACTER FROM REMOTE

INT 17 2408 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, WITH HANDSHAKE

INT 17 2409 - Shamrock Software NET.24 v3.11+ - TRANSMIT COMMAND, WITH HANDSHAKE

INT 17 240A - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED TRANSMIT

INT 17 240B - Shamrock Software NET.24 v3.11+ - TRANSMIT SINGLE CHARACTER TO REMOTE

INT 17 240C - Shamrock Software NET.24 v3.11+ - END CHARACTER-ORIENTED TRANSMIT

INT 17 5000 - AX (Japanese AT) PRINTER - SET PRINTER COUNTRY CODE

INT 17 5001 - AX (Japanese AT) PRINTER - GET PRINTER COUNTRY CODE

INT 17 51-- - AX (Japanese AT) PRINTER - JIS to Shift-JIS CONVERSION

INT 17 52-- - AX (Japanese AT) PRINTER - Shift-JIS to JIS CONVERSION

INT 17 60-- - FLASHUP.COM - INSTALLATION CHECK

INT 17 61-- - SPEEDSCR.COM - INSTALLATION CHECK

INT 17 62-- - T2PS v1.0 - UNINSTALL

INT 17 63-- - T2PS v1.0 - SET PARAMETERS

INT 17 64-- - T2PS v1.0 - GET PARAMETERS

INT 17 6F00 - HP Vectra - EXTENDED BIOS - "F17_INQUIRE" - INSTALLATION CHECK

INT 17 6F02 - HP Vectra - EXTENDED BIOS - "F17_PUT_BUFFER" - PRINT BUFFER

INT 17 81-- - Alloy NTNX, MW386 - CANCEL JOBS FOR CURRENT USER

INT 17 82-- - Alloy NTNX, MW386 - CANCEL ALL JOBS FOR CURRENT USER

INT 17 83-- - Alloy NTNX, MW386 - SET NUMBER OF COPIES

INT 17 84-- - Alloy NTNX, MW386 - GENERATE PRINT BREAK

INT 17 84-- - AX (Japanese AT) PRINTER - OUTPUT CHARACTER WITHOUT CONVERSION

INT 17 85-- - AX (Japanese AT) PRINTER - ENABLE/DISABLE CHARACTER CONVERSION

INT 17 87-- - Alloy NTNX - SET INDOS POINTER

INT 17 88-- - Alloy NTNX, MW386 - REMOVE PRINTER FROM SPOOLER

INT 17 89-- - Alloy NTNX, MW386 - ADD PRINTER TO SPOOLER

INT 17 8A-- - Alloy NTNX - ACTIVATE USER-WRITTEN PRINTER DRIVER

INT 17 8B-- - Alloy MW386 - GET PHYSICAL DEVICE NUMBER FROM NAME

INT 17 8C-- - Alloy MW386 - GET DEVICE NAME FROM PHYSICAL DEVICE NUMBER

INT 17 8D-- - Alloy NTNX,MW386 - RESET SPOOLER

INT 17 8E-- - Alloy NTNX - GET INT 28 ENTRY POINT

INT 17 8F-- - Alloy NTNX - GET DOS INTERCEPT ENTRY POINT

INT 17 90-- - Alloy NTNX, MW386 - SPOOL FILE BY NAME

INT 17 91-- - Alloy NTNX, MW386 - GET USER NUMBER AND CURRENT PRINTER

INT 17 92-- - Alloy NTNX - CHECK PRINTER DRIVER

INT 17 94-- - Alloy NTNX, MW386 - SELECT PRINTER

INT 17 95-- - Alloy NTNX, MW386 - GET CURRENT PRINTER

INT 17 96-- - Alloy NTNX - SET SERIAL PORT PARAMETERS

INT 17 97-- - Alloy NTNX, MW386 - SET DATA DRIVEN PRINT BREAK

INT 17 98-- - Alloy NTNX,MW386 - RESTART PRINTER

INT 17 99-- - Alloy NTNX, MW386 - GET/SET PRINTER MODE

INT 17 9A-- - Alloy NTNX,MW386 - SET TAB EXPANSION

INT 17 9B-- - Alloy NTNX,MW386 - SET PRINT BREAK TIMEOUT

INT 17 A0-- - Alloy MW386 - SPOOL COPY OF FILE

INT 17 A4-- - Alloy MW386 - ENABLE/DISABLE FORM FEED

INT 17 A6-- - Alloy MW386 - ENABLE/DISABLE BANNER PAGE

INT 17 A7-- - Alloy MW386 v2+ - GET/SET SPOOL FLAGS

INT 17 A8-- - Alloy MW386 - DEFINE TEMPORARY FILENAME

INT 17 A9-- - Alloy MW386 - CHANGE TEMPORARY SPOOL DRIVE

INT 17 AA-- - Alloy MW386 v2+ - GET REAL-TIME PRINTER STATUS

INT 17 AF-- - Alloy MW386 - CHECK SPOOLER

INT 17 C0-- - PC Magazine PCSpool - GET CONTROL BLOCK ADDRESS

INT 17 C1-- - PC Magazine PCSpool - BUILD PAUSE CONTROL RECORD

INT 17 C2-- - PC Magazine PCSpool - FLUSH PENDING WRITES

INT 17 C3-- - PC Magazine PCSpool - CANCEL PRINTER QUEUE (FLUSH ALL QUEUED OUTPUT)

INT 17 C4-- - PC Magazine PCSpool - QUERY SPOOLER ACTIVE

INT 17 C5-- - PC Magazine PCSpool - JOB SKIP PRINTER QUEUE

INT 17 C6-- - PC Magazine PCSpool - CHECK PRINTER QUEUE STATUS

INT 17 C7-- - PC Magazine PCSpool - CLOSE QUEUE

INT 17 CD00 - INSET - EXECUTE COMMAND STRING

INT 17 CD01 - INSET - GET IMAGE SIZE

INT 17 CD02 - INSET - INITIALIZE

INT 17 CD03 - INSET - EXECUTE INSET MENU WITHIN OVERRIDE MODE

INT 17 CD04 - INSET - INITIALIZE LINKED MODE

INT 17 CD05 - INSET - START MERGING IMAGE INTO TEXT

INT 17 CD06 - INSET - GRAPHICS LINE FEED

INT 17 CD07 - INSET - FLUSH GRAPHICS FROM MERGE BUFFER

INT 17 CD08 - INSET - CANCEL LINK MODE

INT 17 CD09 - INSET - ALTER TEXT LINE SPACING

INT 17 CD0A - INSET - GET SETUP

INT 17 CD0B - INSET - START GETTING SCALED IMAGE

INT 17 CD0C - INSET - GET NEXT IMAGE STRIP

INT 17 E0-- - EPP BIOS - INSTALLATION CHECK

INT 17 E1-- - EPP BIOS - DISABLE EPP

INT 17 E2-- - EPP BIOS - ENABLE EPP

INT 17 F0-- - NorthNet Jetstream API - INSTALLATION CHECK

INT 17 F1-- - NorthNet Jetstream API - PRINT DATA BUFFER

INT 17 F2-- - NorthNet Jetstream API - GET PRINT PROGRESS STATUS

INT 17 F3-- - NorthNet Jetstream API - ABORT PRINT OPERATION

INT 17 F4-- - NorthNet Jetstream API - SET COMPLETION (POST) ADDRESS

INT 17 F5-- - NorthNet Jetstream API - PRINT DATA BUFFER FROM EXTENDED MEMORY

INT 17 FF-- - PC-MOS/386 v5.01 - PRINT SPOOLER - CLOSE SPOOL FILE

Interrupts


INT 18 - DISKLESS BOOT HOOK (START CASSETTE BASIC)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 18 - DISKLESS BOOT HOOK (START CASSETTE BASIC)

INT 18 ---- - DISKLESS BOOT HOOK (START CASSETTE BASIC)

INT 18 00-- - NEC PC-9800 series - KEYBOARD - GET KEYSTROKE

INT 18 01-- - NEC PC-9800 series - KEYBOARD - CHECK FOR KEYSTROKE

INT 18 02-- - NEC PC-9800 series - KEYBOARD - GET SHIFT STATUS

INT 18 03-- - NEC PC-9800 series - KEYBOARD - INITIALIZE

INT 18 04-- - NEC PC-9800 series - KEYBOARD - KEY PRESSED

INT 18 ---- - NEC PC-9800 series - VIDEO

INT 18 5350 - SPHINX C-- - WB.COM - API

INT 18 6900 - Gravis Ultra Sound YEA_GUS.EXE - GET STATUS

INT 18 6901 - Gravis Ultra Sound YEA_GUS.EXE - RESET

INT 18 6902 - Gravis Ultra Sound YEA_GUS.EXE - SET VOLUME FOR SPECIFIC VOICE

INT 18 6903 - Gravis Ultra Sound YEA_GUS.EXE - SET FREQUENCY FOR VOICE

INT 18 6904 - Gravis Ultra Sound YEA_GUS.EXE - SET LEFT/RIGHT BALANCE

INT 18 6905 - Gravis Ultra Sound YEA_GUS.EXE - PLAY MUSIC

INT 18 6906 - Gravis Ultra Sound YEA_GUS.EXE - LOAD SOUND DATA

INT 18 6907 - Gravis Ultra Sound YEA_GUS.EXE - STOP VOICE

INT 18 6908 - Gravis Ultra Sound YEA_GUS.EXE - SET VOICE END

INT 18 6909 - Gravis Ultra Sound YEA_GUS.EXE - RAMP VOLUME

INT 18 690A - Gravis Ultra Sound YEA_GUS.EXE - GET VOLUME

INT 18 690B - Gravis Ultra Sound YEA_GUS.EXE - GET POSITION

INT 18 690C - Gravis Ultra Sound YEA_GUS.EXE - SAVE SOUND DATA

INT 18 690D - Gravis Ultra Sound YEA_GUS.EXE - RESTART VOICE

INT 18 8000 - Gravis Ultra Sound EURO_MOD.EXE - INITIALIZE

INT 18 8001 - Gravis Ultra Sound EURO_MOD.EXE - LOAD .MOD FILE

INT 18 8002 - Gravis Ultra Sound EURO_MOD.EXE - PLAY .MOD FILE

INT 18 8003 - Gravis Ultra Sound EURO_MOD.EXE - STOP PLAYING

INT 18 8004 - Gravis Ultra Sound EURO_MOD.EXE - SHUTDOWN

Interrupts


INT 19 - SYSTEM - BOOTSTRAP LOADER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 19 - SYSTEM - BOOTSTRAP LOADER

INT 19 ---- - SYSTEM - BOOTSTRAP LOADER

Interrupts


INT 1A - TIME
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 1A - TIME

INT 1A 00-- - TIME - GET SYSTEM TIME

INT 1A 01-- - TIME - SET SYSTEM TIME

INT 1A 02-- - TIME - GET REAL-TIME CLOCK TIME (AT,XT286,PS)

INT 1A 03-- - TIME - SET REAL-TIME CLOCK TIME (AT,XT286,PS)

INT 1A 04-- - TIME - GET REAL-TIME CLOCK DATE (AT,XT286,PS)

INT 1A 04-- - Sperry PC - GET REAL-TIME CLOCK DATE

INT 1A 05-- - TIME - SET REAL-TIME CLOCK DATE (AT,XT286,PS)

INT 1A 04-- - Sperry PC - SET REAL-TIME CLOCK DATE

INT 1A 06-- - TIME - SET ALARM (AT,XT286,PS)

INT 1A 07-- - TIME - CANCEL ALARM (AT,XT286,PS)

INT 1A 08-- - TIME - SET RTC ACTIVATED POWER ON MODE (CONVERTIBLE)

INT 1A 09-- - TIME - READ RTC ALARM TIME AND STATUS (CONV,PS30)

INT 1A 0A-- - TIME - READ SYSTEM-TIMER DAY COUNTER (XT2,PS)

INT 1A 0B-- - TIME - SET SYSTEM-TIMER DAY COUNTER (XT2,PS)

INT 1A 10-- - NEC PC-9800 series - PRINTER - INITIALIZE

INT 1A 11-- - NEC PC-9800 series - PRINTER - OUTPUT CHARACTER

INT 1A 12-- - NEC PC-9800 series - PRINTER - SENSE STATUS

INT 1A 3601 - WORD PERFECT v5.0 Third Party Interface - INSTALLATION CHECK

INT 1A 6108 - SNAP.EXE 3.2+ - "SNAP_SENDWITHREPLY" - SEND MSG AND GET REPLY

INT 1A 6205 - SNAP.EXE 3.2+ - "SNAP_SENDNOREPLY" - SEND MSG, DON'T AWAIT REPLY

INT 1A 6308 - SNAP.EXE 3.2+ - "SNAP_BEGINCONV" - BEGIN CONVERSATION

INT 1A 6405 - SNAP.EXE 3.2+ - "SNAP_ENDCONV" - END CONVERSATION

INT 1A 6900 - SNAP.EXE 3.2+ - "SNAP_DATASEG" - GET RESIDENT DATA SEGMENT

INT 1A 6A01 - SNAP.EXE 3.2+ - "SNAP_ALLOC" - ALLOCATE BUFFER IN SNAP DATA SEGMENT

INT 1A 6B01 - SNAP.EXE 3.2+ - "SNAP_FREE" - DEALLOCATE BUFFER IN SNAP DATA SEGMENT

INT 1A 6C04 - SNAP.EXE 3.2+ - "SNAP_COPYTO" - COPY DATA TO RESIDENT SNAP PACKAGE

INT 1A 6D04 - SNAP.EXE 3.2+ - "SNAP_COPYFROM" - COPY DATA FROM RESIDENT SNAP PACKAGE

INT 1A 6E01 - SNAP.EXE 3.2+ - "SNAP_SETDEBUG" - SET ???

INT 1A 6F01 - SNAP.EXE 3.2+ - "SNAP_CHKINSTALL" - INSTALLATION CHECK

INT 1A 7002 - SNAP.EXE 3.2+ - "SNAP_SETANCHOR"

INT 1A 7101 - SNAP.EXE 3.2+ - "SNAP_GETANCHOR"

INT 1A 7202 - SNAP.EXE 3.2+ - "SNAP_SETCONVPARMS" - SET CONVERSATION PARAMETERS

INT 1A 7302 - SNAP.EXE 3.2+ - "SNAP_CLIENTVERSION" - ???

INT 1A 7400 - SNAP.EXE 3.2+ - "SNAP_VERSION" - GET VERSION

INT 1A 75-- - SNAP.EXE 3.2+ - "SNAP_NOP" - ???

INT 1A 76-- - SNAP.EXE 3.2+ - "SNAP_802_5" - ???

INT 1A 77-- - SNAP.EXE 3.4 - ???

INT 1A 7802 - SNAP.EXE 3.4 - ???

INT 1A 7F-- - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???

INT 1A 80-- - PCjr, Tandy 2500???, Tandy 1000SL/TL - SET UP SOUND MULTIPLEXOR

INT 1A 80-- - PCMCIA Socket Services v1.00 - GET NUMBER OF ADAPTERS

INT 1A 81-- - PCMCIA Socket Services v1.00 - REGISTER STATUS CHANGE CALLBACK

INT 1A 8100 - Tandy 2500, Tandy 1000L series - DIGITAL SOUND - INSTALLATION CHECK

INT 1A 82-- - Tandy 2500???, Tandy 1000SL/TL - DIGITAL SOUND - RECORD SOUND

INT 1A 82-- - PCMCIA Socket Services v1.00 - REGISTER CARD TECHNOLOGY CALLBACK

INT 1A 83-- - Tandy 2500, Tandy 1000L series - START PLAYING DIGITAL SOUND

INT 1A 83-- - PCMCIA Socket Services v1.00 - GET SOCKET SERVICES VERSION NUMBER

INT 1A 84-- - Tandy 2500, Tandy 1000L series - STOP PLAYING DIGITAL SOUND

INT 1A 84-- - PCMCIA Socket Services v1.00 - INQUIRE ADAPTER

INT 1A 85-- - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???

INT 1A 85-- - PCMCIA Socket Services v1.00 - GET ADAPTER

INT 1A 86-- - PCMCIA Socket Services v1.00 - SET ADAPTER

INT 1A 87-- - PCMCIA Socket Services v1.00 - INQUIRE WINDOW

INT 1A 88-- - PCMCIA Socket Services v1.00 - GET WINDOW

INT 1A 89-- - PCMCIA Socket Services v1.00 - SET WINDOW

INT 1A 8A-- - PCMCIA Socket Services v1.00 - GET PAGE

INT 1A 8B-- - PCMCIA Socket Services v1.00 - SET PAGE

INT 1A 8C-- - PCMCIA Socket Services v1.00 - INQUIRE SOCKET

INT 1A 8D-- - PCMCIA Socket Services v1.00 - GET SOCKET

INT 1A 8E-- - PCMCIA Socket Services v1.00 - SET SOCKET

INT 1A 8F-- - PCMCIA Socket Services v1.00 - GET CARD

INT 1A 90-- - PCMCIA Socket Services v1.00 - RESET CARD

INT 1A 91-- - PCMCIA Socket Services v1.00 - READ ONE

INT 1A 92-- - PCMCIA Socket Services v1.00 - WRITE ONE

INT 1A 93-- - PCMCIA Socket Services v1.00 - READ MULTIPLE

INT 1A 94-- - PCMCIA Socket Services v1.00 - WRITE MULTIPLE

INT 1A 95-- - PCMCIA Socket Services v1.00 - INQUIRE ERROR DETECTION CODE

INT 1A 96-- - PCMCIA Socket Services v1.00 - GET ERROR DETECTION CODE

INT 1A 97-- - PCMCIA Socket Services v1.00 - SET ERROR DETECTION CODE

INT 1A 98-- - PCMCIA Socket Services v1.00 - START ERROR DETECTION CODE

INT 1A 99-- - PCMCIA Socket Services v1.00 - PAUSE ERROR DETECTION CODE

INT 1A 9A-- - PCMCIA Socket Services v1.00 - RESUME ERROR DETECTION CODE

INT 1A 9B-- - PCMCIA Socket Services v1.00 - STOP ERROR DETECTION CODE

INT 1A 9C-- - PCMCIA Socket Services v1.00 - READ ERROR DETECTION CODE

INT 1A 9D-- - PCMCIA Socket Services v2.1? - GET VENDOR INFO

INT 1A 9D-- - Intel PCMCIA ExCA Card Services - API

INT 1A 9E-- - PCMCIA Socket Services v2.1 - ACKNOWLEDGE INTERRUPT

INT 1A 9F-- - PCMCIA Socket Services v2.1 - GET/SET PRIOR INT 1A HANDLER

INT 1A A0-- - Disk Spool II v2.07+ - INSTALLATION CHECK

INT 1A A0-- - PCMCIA Socket Services v2.1 - GET/SET SOCKET SERVICES ADDRESS

INT 1A A1-- - PCMCIA Socket Services v2.1 - GET ACCESS OFFSETS

INT 1A AB-- - Disk Spool II v1.83 - INSTALLATION CHECK

INT 1A AC-- - Disk Spool II v1.83 - INSTALLATION CHECK

INT 1A AD-- - Disk Spool II v1.83 - FUNCTION CALLS

INT 1A AE-- - PCMCIA Socket Services v2.1 - VENDOR SPECIFIC

INT 1A AE-- - PCMCIA Socket Services v2.1 - API

INT 1A AF-- - PCMCIA v2 - API

INT 1A B000 - HP 100LX/200LX - PCMCIA - ???

INT 1A B001 - Microsoft Real-Time Compression Interface (MRCI) - ROM-BASED SERVER

INT 1A B101 - Intel PCI BIOS v2.0c - INSTALLATION CHECK

INT 1A B102 - Intel PCI BIOS v2.0c - FIND PCI DEVICE

INT 1A B103 - Intel PCI BIOS v2.0c - FIND PCI CLASS CODE

INT 1A B106 - Intel PCI BIOS v2.0c - PCI BUS-SPECIFIC OPERATIONS

INT 1A B108 - Intel PCI BIOS v2.0c - READ CONFIGURATION BYTE

INT 1A B109 - Intel PCI BIOS v2.0c - READ CONFIGURATION WORD

INT 1A B10A - Intel PCI BIOS v2.0c - READ CONFIGURATION DWORD

INT 1A B10B - Intel PCI BIOS v2.0c - WRITE CONFIGURATION BYTE

INT 1A B10C - Intel PCI BIOS v2.0c - WRITE CONFIGURATION WORD

INT 1A B10D - Intel PCI BIOS v2.0c - WRITE CONFIGURATION DWORD

INT 1A B181 - Intel PCI BIOS v2.0c - INSTALLATION CHECK (32-bit)

INT 1A B182 - Intel PCI BIOS v2.0c - FIND PCI DEVICE (32-bit)

INT 1A B183 - Intel PCI BIOS v2.0c - FIND PCI CLASS CODE (32-bit)

INT 1A B186 - Intel PCI BIOS v2.0c - PCI BUS-SPECIFIC OPERATIONS (32-bit)

INT 1A B188 - Intel PCI BIOS v2.0c - READ CONFIGURATION BYTE (32-bit)

INT 1A B189 - Intel PCI BIOS v2.0c - READ CONFIGURATION WORD (32-bit)

INT 1A B18A - Intel PCI BIOS v2.0c - READ CONFIGURATION DWORD (32-bit)

INT 1A B18B - Intel PCI BIOS v2.0c - WRITE CONFIGURATION BYTE (32-bit)

INT 1A B18C - Intel PCI BIOS v2.0c - WRITE CONFIGURATION WORD (32-bit)

INT 1A B18D - Intel PCI BIOS v2.0c - WRITE CONFIGURATION DWORD (32-bit)

INT 1A B400 - Intel Plug-and-Play AUTO-CONFIGURATION - INSTALLATION CHECK

INT 1A B401 - Intel Plug-and-Play AUTO-CONFIGURATION - GET DEFAULT CONFIG TABLE

INT 1A B402 - Intel Plug-and-Play AUTO-CONFIGURATION - COPY AND VERIFY CONFIG TABLE

INT 1A B403 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

INT 1A B404 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

INT 1A B405 - Intel Plug-and-Play AUTO-CONFIGURATION - GET ???

INT 1A B406 - Intel Plug-and-Play AUTO-CONFIGURATION - GET ???

INT 1A B407 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

INT 1A B4-- - Intel Plug-and-Play AUTO-CONFIGURATION - 32-BIT API

INT 1A C0-- - Disk Spool II v2.07+ - ALTERNATE INSTALLATION CHECK

INT 1A CCCC - DATEFIX - INSTALLATION CHECK

INT 1A D0-- - Disk Spool II v2.07+ - FUNCTION CALLS

INT 1A E0-- - Disk Spool II v4.0x - ENABLE/DISABLE

INT 1A E1-- - Disk Spool II v4.0x - GET STATUS

INT 1A E11B - TheGrab v4.60 - ???

INT 1A E11D - TheGrab v4.60 - INSTALLATION CHECK

INT 1A E2-- - Disk Spool II v4.0x - GET SPOOL FILES

INT 1A E301 - Disk Spool II v4.0x - GET SPOOL FILE STATUS

INT 1A E302 - Disk Spool II v4.0x - UPDATE SPOOL FILE

INT 1A E401 - Disk Spool II v4.0x - SPOOL EXISTING FILE

INT 1A E402 - Disk Spool II v4.0x - SPOOL EXISTING FILE???

INT 1A E5-- - Emulaser ELSPL.COM - ???

INT 1A EE-- - Disk Spool II v4.05 - ???

INT 1A F7-- - RighTime v1.1 - TEMPORARILY DISABLE

INT 1A F8-- - RighTime v1.1 - ENABLE

INT 1A FE-- - AT&T 6300 - READ TIME AND DATE

INT 1A FF-- - AT&T 6300 - SET TIME AND DATE

INT 1A FF-- - RighTime v1.1 - PERMANENTLY DISABLE

INT 1A FF00 - SND - INSTALLATION CHECK???

INT 1A FF01 - SND - PAUSE

INT 1A FF02 - SND - START SOUND

INT 1A FF03 - SND - STOP SOUND

INT 1A FF04 - SND - PLAY MUSIC STRING IN BACKGROUND

INT 1A FF05 - SND - UNCONDITIONALLY STOP SOUND

Interrupts


INT 1B - KEYBOARD - CONTROL-BREAK HANDLER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 1B - KEYBOARD - CONTROL-BREAK HANDLER

INT 1B ---- - KEYBOARD - CONTROL-BREAK HANDLER

Interrupts


INT 1C - TIME - SYSTEM TIMER TICK
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 1C - TIME - SYSTEM TIMER TICK

INT 1C ---- - TIME - SYSTEM TIMER TICK

Interrupts


INT 1D - SYSTEM DATA - VIDEO PARAMETER TABLES
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 1D - SYSTEM DATA - VIDEO PARAMETER TABLES

INT 1D ---- - SYSTEM DATA - VIDEO PARAMETER TABLES

Interrupts


INT 1E - SYSTEM DATA - DISKETTE PARAMETERS
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 1E - SYSTEM DATA - DISKETTE PARAMETERS

INT 1E ---- - SYSTEM DATA - DISKETTE PARAMETERS

Interrupts


INT 1F - SYSTEM DATA - 8x8 GRAPHICS FONT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 1F - SYSTEM DATA - 8x8 GRAPHICS FONT

INT 1F ---- - SYSTEM DATA - 8x8 GRAPHICS FONT

INT 1F 12-- - C&T "SuperState" BIOS - POWER OFF

INT 1F 17-- - C&T "SuperState" BIOS - EXECUTE FAR PROC ROUTINE ON SuperState

INT 1F 19-- - C&T "SuperState" BIOS - ENABLE AUTO WAKEUP AND SET TIME AND DATE

INT 1F 1C-- - C&T "SuperState" BIOS - SET SUSPEND TIMEOUT

INT 1F 1D-- - C&T "SuperState" BIOS - SET SLEEP TIMEOUT

INT 1F 90-- - NEC PC-9801 - COPY EXTENDED MEMORY

INT 1F F5-- - C&T "SuperState" BIOS - REQUEST PASSWORD INPUT

INT 1F F5-- - C&T "SuperState" BIOS - ENCRYPT PASSWORD

INT 1F F5-- - C&T "SuperState" BIOS - SET PASSWORD

INT 1F F5-- - C&T "SuperState" BIOS - GET ENCRYPTED PASSWORD

INT 1F FB-- - C&T "SuperState" BIOS - GET/SET CPU SPEED

INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM STATUS

INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM STATUS

INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM TIME

INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM TIME

INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM DATE

INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM DATE

INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP STATUS

INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP STATUS

INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP TIME

INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP TIME

INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP DATE

INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP DATE

Interrupts


INT 20 - DOS 1+ - TERMINATE PROGRAM
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 20 - DOS 1+ - TERMINATE PROGRAM

INT 20 ---- - Minix - SEND/RECEIVE MESSAGE

INT 20 ---- - DOS 1+ - TERMINATE PROGRAM

INT 20 ---- - COMTROL HOSTESS i/ISA DEBUGGER - INVOKE FIRMWARE DEBUGGER

INT 20 ---- - Microsoft Windows - VxD FUNCTIONS

Interrupts


INT 21 - DOS 1+ - Function Calls
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 21 - DOS 1+ - Function Calls

INT 21 ---- - COMTROL HOSTESS i/ISA DEBUGGER - GET SEGMENT FOR CONTROL PROGRAM USE

INT 21 00-- - DOS 1+ - TERMINATE PROGRAM

INT 21 01-- - DOS 1+ - READ CHARACTER FROM STANDARD INPUT, WITH ECHO

INT 21 02-- - DOS 1+ - WRITE CHARACTER TO STANDARD OUTPUT

INT 21 03-- - DOS 1+ - READ CHARACTER FROM STDAUX

INT 21 04-- - DOS 1+ - WRITE CHARACTER TO STDAUX

INT 21 05-- - DOS 1+ - WRITE CHARACTER TO PRINTER

INT 21 06-- - DOS 1+ - DIRECT CONSOLE OUTPUT

INT 21 06-- - DOS 1+ - DIRECT CONSOLE INPUT

INT 21 07-- - DOS 1+ - DIRECT CHARACTER INPUT, WITHOUT ECHO

INT 21 08-- - DOS 1+ - CHARACTER INPUT WITHOUT ECHO

INT 21 09-- - DOS 1+ - WRITE STRING TO STANDARD OUTPUT

INT 21 0A-- - DOS 1+ - BUFFERED INPUT

INT 21 0A00 - WCED v1.6+ - INSTALLATION CHECK

INT 21 0B-- - DOS 1+ - GET STDIN STATUS

INT 21 0B56 - VIRUS - "Perfume" - INSTALLATION CHECK

INT 21 0C-- - DOS 1+ - FLUSH BUFFER AND READ STANDARD INPUT

INT 21 0D-- - DOS 1+ - DISK RESET

INT 21 0D20 - VIRUS - "Crazy Imp" - INSTALLATION CHECK

INT 21 0E-- - DOS 1+ - SELECT DEFAULT DRIVE

INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - INSTALLATION CHECK

INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - CLEAR ??? FLAG

INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - SET ??? FLAG

INT 21 0F-- - DOS 1+ - OPEN FILE USING FCB

INT 21 10-- - DOS 1+ - CLOSE FILE USING FCB

INT 21 11-- - DOS 1+ - FIND FIRST MATCHING FILE USING FCB

INT 21 12-- - DOS 1+ - FIND NEXT MATCHING FILE USING FCB

INT 21 13-- - DOS 1+ - DELETE FILE USING FCB

INT 21 14-- - DOS 1+ - SEQUENTIAL READ FROM FCB FILE

INT 21 15-- - DOS 1+ - SEQUENTIAL WRITE TO FCB FILE

INT 21 16-- - DOS 1+ - CREATE OR TRUNCATE FILE USING FCB

INT 21 17-- - DOS 1+ - RENAME FILE USING FCB

INT 21 18-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

INT 21 1812 - VIRUS - "Tasha Yar" - INSTALLATION CHECK

INT 21 19-- - DOS 1+ - GET CURRENT DEFAULT DRIVE

INT 21 1A-- - DOS 1+ - SET DISK TRANSFER AREA ADDRESS

INT 21 1B-- - DOS 1+ - GET ALLOCATION INFORMATION FOR DEFAULT DRIVE

INT 21 1C-- - DOS 1+ - GET ALLOCATION INFORMATION FOR SPECIFIC DRIVE

INT 21 1D-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

INT 21 1E-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

INT 21 1F-- - DOS 1+ - GET DRIVE PARAMETER BLOCK FOR DEFAULT DRIVE

INT 21 20-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

INT 21 21-- - DOS 1+ - READ RANDOM RECORD FROM FCB FILE

INT 21 22-- - DOS 1+ - WRITE RANDOM RECORD TO FCB FILE

INT 21 23-- - DOS 1+ - GET FILE SIZE FOR FCB

INT 21 24-- - DOS 1+ - SET RANDOM RECORD NUMBER FOR FCB

INT 21 25-- - DOS 1+ - SET INTERRUPT VECTOR

INT 21 2501 - Phar Lap 386/DOS-Extender - RESET DOS EXTENDER DATA STRUCTURES

INT 21 2502 - Phar Lap 386/DOS-Extender - GET PROTECTED-MODE INTERRUPT VECTOR

INT 21 2503 - Phar Lap 386/DOS-Extender - GET REAL-MODE INTERRUPT VECTOR

INT 21 2504 - Phar Lap 386/DOS-Extender - SET PROTECTED-MODE INTERRUPT VECTOR

INT 21 2505 - Phar Lap 386/DOS-Extender - SET REAL-MODE INTERRUPT VECTOR

INT 21 2506 - Phar Lap 386/DOS-Extender - SET INT TO ALWAYS GAIN CNTRL IN PR. MODE

INT 21 2507 - Phar Lap 386/DOS-Extender - SET REAL- & PROTECTED-MODE INT VECTORS

INT 21 2508 - Phar Lap 386/DOS-Extender - GET SEGMENT LINEAR BASE ADDRESS

INT 21 2509 - Phar Lap 386/DOS-Extender - CONVERT LINEAR TO PHYSICAL ADDRESS

INT 21 2509 - FlashTek X-32VM - GET SYSTEM SEGMENTS AND SELECTORS

INT 21 250A - Phar Lap 386/DOS-Extender - MAP PHYSICAL MEMORY AT END OF SEGMENT

INT 21 250C - Phar Lap 386/DOS-Extender - GET HARDWARE INTERRUPT VECTORS

INT 21 250D - Phar Lap 386/DOS-Extender - GET REAL-MODE LINK INFORMATION

INT 21 250E - Phar Lap 386/DOS-Extender - CALL REAL-MODE PROCEDURE

INT 21 250F - Phar Lap 386/DOS-Extender - CONVERT PROTECTED-MODE ADDRESS TO MS-DOS

INT 21 2510 - Phar Lap 386/DOS-Extender - CALL REAL-MODE PROCEDURE, REGISTERS

INT 21 2511 - Phar Lap 386/DOS-Extender - ISSUE REAL-MODE INTERRUPT

INT 21 2512 - Phar Lap 386/DOS-Extender - LOAD PROGRAM FOR DEBUGGING

INT 21 2513 - Phar Lap 386/DOS-Extender - ALIAS SEGMENT DESCRIPTOR

INT 21 2514 - Phar Lap 386/DOS-Extender - CHANGE SEGMENT ATTRIBUTES

INT 21 2515 - Phar Lap 386/DOS-Extender - GET SEGMENT ATTRIBUTES

INT 21 2516 - Phar Lap 386/DOS-Extender v2.2+ - FREE ALL MEMORY OWNED BY LDT

INT 21 2517 - Phar Lap 386/DOS-Extender v2.1c+ - GET INFO ON DOS DATA BUFFER

INT 21 2518 - Phar Lap 386/DOS-Extender 2.1c+ - SPECIFY HANDLER FOR MOVED SEGMENTS

INT 21 2519 - Phar Lap 386/DOS-Extender VMM - GET ADDITIONAL MEMORY ERROR INFO

INT 21 251A - Phar Lap 386/DOS-Extender VMM - LOCK PAGES IN MEMORY

INT 21 251B - Phar Lap 386/DOS-Extender VMM - UNLOCK PAGES

INT 21 251C - Phar Lap 386/DOS-Extender VMM v2.1c+ - FREE PHYSICAL MEMORY PAGES

INT 21 251D - Phar Lap 386/DOS-Extender VMM v2.1c - READ PAGE-TABLE ENTRY

INT 21 251E - Phar Lap 386/DOS-Extender VMM v2.1c - WRITE PAGE-TABLE ENTRY

INT 21 251F - Phar Lap 386/DOS-Extender VMM - EXHANGE TWO PAGE-TABLE ENTRIES

INT 21 2520 - Phar Lap 386/DOS-Extender VMM - GET MEMORY STATISTICS

INT 21 2521 - Phar Lap 386/DOS-Extender VMM - LIMIT PROGRAM'S EXTENDED MEM USAGE

INT 21 2522 - Phar Lap 386/DOS-Ext VMM v2.2+ - SPECIFY ALTERNATE PAGE-FAULT HANDLR

INT 21 2523 - Phar Lap 386/DOS-Ext VMM v2.2+ - SPECIFY OUT-OF-SWAP-SPACE HANDLER

INT 21 2524 - Phar Lap 386/DOS-Ext VMM v2.2+ - INSTALL PAGE-REPLACEMENT HANDLERS

INT 21 2525 - Phar Lap 386/DOS-Extender VMM - LIMIT PROGRAM'S CONVENT'L MEM USAGE

INT 21 2526 - Phar Lap 386/DOS-Extender - GET CONFIGURATION INFORMATION

INT 21 2527 - Phar Lap 386/DOS-Extender VMM - EN/DISABLE STATE SAVE ON INTERRUPTS

INT 21 2528 - Phar Lap 386/DOS-Extender VMM - READ REGISTERS AFTER CTRL-C INT

INT 21 2529 - Phar Lap 386/DOS-Extender - LOAD FLAT MODEL .EXP or .REX FILE

INT 21 252A - Phar Lap 386/DOS-Extender VMM - NEW LOAD PROGRAM FOR DEBUG

INT 21 252B - Phar Lap 386/DOS-Extender - CREATE UNMAPPED PAGES

INT 21 252B - Phar Lap 386/DOS-Extender - CREATE ALLOCATED PAGES

INT 21 252B - Phar Lap 386/DOS-Extender - CREATE PHYSICAL DEVICE PAGES

INT 21 252B - Phar Lap 386/DOS-Extender - MAP DATA FILE

INT 21 252B - Phar Lap 386/DOS-Extender - GET PAGE TYPES

INT 21 252B - Phar Lap 386/DOS-Extender - VIRTUAL MEMORY MANAGEMENT - PAGE LOCKING

INT 21 252B - Phar Lap 386/DOS-Extender - FREE PHYSICAL PAGES

INT 21 252B - Phar Lap 386/DOS-Extender v4.1 - GET PAGETABLE ENTRY/PAGE TABLE INFO

INT 21 252B - Phar Lap 386/DOS-Extender v4.1 - SET PAGETABLE ENTRY/PAGE TABLE INFO

INT 21 252B - Phar Lap 386/DOS-Extender v4.1+ - MAP DATA FILE AT FILE OFFSET

INT 21 252C - Phar Lap 386/DOS-Ext VMM v3.0 - ADD UNMAPPED PAGES AT END OF SEGMENT

INT 21 252D - Phar Lap 386/DOS-Extender VMM v2.3+ - CLOSE VMM FILE HANDLE

INT 21 252E - Phar Lap 386/DOS-Extender VMM v2.3+ - GET/SET VMM PARAMETERS

INT 21 252F - Phar Lap 386/DOS-Ext VMM v3.0 - WRITE RECORD TO VMM PAGE LOG FILE

INT 21 2530 - Phar Lap 386/DOS-Ext VMM v2.3+ - SET SIZE OF BUFFER FOR DOS CALLS

INT 21 2531 - Phar Lap 386/DOS-Extender VMM v3.0 - READ/WRITE LDT DESCRIPTOR

INT 21 2532 - Phar Lap 386/DOS-Extender - GET EXCEPTION HANDLER VECTOR

INT 21 2533 - Phar Lap 386/DOS-Extender - SET EXCEPTION HANDLER VECTOR

INT 21 2534 - Phar Lap 386/DOS-Extender v3.0+ - GET INTERRUPT FLAG

INT 21 2535 - Phar Lap 386/DOS-Extender v3.0+ - READ/WRITE SYSTEM REGISTERS

INT 21 2536 - Phar Lap 386/DOS-Ext VMM v3.0+ - MIN/MAX EXTENDED/CONV MEMORY USAGE

INT 21 2537 - Phar Lap 386/DOS-Ext VMM v3.0 - ALLOCATE DOS MEMORY ABOVE DOS BUFFER

INT 21 2538 - Phar Lap 386/DOS-Ext VMM v3.0 - READ PROTMODE REGS AFTER SFTWARE INT

INT 21 2539 - Phar Lap 386/DOS-Ext VMM v3.0 - GET OFFSET OF .EXP FILE HEADER

INT 21 253A - Phar Lap 386/DOS-Extender v3.0+ - INSTALL MOD. SEG FAILURE HANDLER

INT 21 253B - Phar Lap 386/DOS-Extender v3.0+ - JUMP TO REAL MODE CODE, NO CONTEXT

INT 21 253C - Phar Lap 386/DOS-Extender VMM v3.0+ - SHRINK 386|VMM SWAP FILE

INT 21 253D - Phar Lap 386/DOS-Extender v4.0+ - READ/WRITE IDT DESCRIPTOR

INT 21 253F - Phar Lap 386/DOS-Extender v6.0+ - ALLOCATE LDT DESCRIPTOR

INT 21 2540 - Phar Lap 386/DOS-Extender v6.0+ - FORCE ALIAS OF SEGMENT

INT 21 2544 - Phar Lap 386/DOS-Extender v6.0+ - FREE DLL

INT 21 2545 - Phar Lap 386/DOS-Extender v6.0+ - GET/SET PROCEDURE ADDRESS

INT 21 2546 - Phar Lap 386/DOS-Extender v6.0+ - GET MODULE HANDLE

INT 21 25C0 - Phar Lap 386/DOS-Extender - ALLOCATE MS-DOS MEMORY BLOCK

INT 21 25C1 - Phar Lap 386/DOS-Extender - RELEASE MS-DOS MEMORY BLOCK

INT 21 25C2 - Phar Lap 386/DOS-Extender - MODIFY MS-DOS MEMORY BLOCK

INT 21 25C3 - Phar Lap 386/DOS-Extender - EXECUTE PROGRAM

INT 21 26-- - DOS 1+ - CREATE NEW PROGRAM SEGMENT PREFIX

INT 21 27-- - DOS 1+ - RANDOM BLOCK READ FROM FCB FILE

INT 21 28-- - DOS 1+ - RANDOM BLOCK WRITE TO FCB FILE

INT 21 29-- - DOS 1+ - PARSE FILENAME INTO FCB

INT 21 2A-- - DOS 1+ - GET SYSTEM DATE

INT 21 2B-- - DOS 1+ - SET SYSTEM DATE

INT 21 2B-- - AI Architects - ??? - INSTALLATION CHECK

INT 21 2B-- - Super PC-Kwik v3.20+ - INSTALLATION CHECK

INT 21 2B-- - DESQview - INSTALLATION CHECK

INT 21 2B-- - ELRES v1.1 - INSTALLATION CHECK

INT 21 2B01 - Quarterdeck DOS-UP.SYS v2.00 - INSTALLATION CHECK

INT 21 2B01 - TAME v2.10+ - INSTALLATION CHECK

INT 21 2B16 - VIRUS - "Maltese Amoeba" - INSTALLATION CHECK

INT 21 2B44 - pcANYWHERE IV/LAN - INSTALLATION CHECK

INT 21 2B-- - WDTSR.COM - INSTALLATION CHECK

INT 21 2B-- - bitFOSS - INSTALLATION CHECK

INT 21 2B-- - bitFOSSI - INSTALLATION CHECK

INT 21 2C-- - DOS 1+ - GET SYSTEM TIME

INT 21 2C-- - VIRUS - "Anti Pode 2.0" - INSTALLATION CHECK

INT 21 2C00 - SKUDO - INSTALLATION CHECK

INT 21 2C2C - VIRUS - "LockJaw/Proto-T" - INSTALLATION CHECK

INT 21 2D-- - DOS 1+ - SET SYSTEM TIME

INT 21 2D01 - PC-Mix - INSTALLATION CHECK

INT 21 2E-- - DOS 1+ - SET VERIFY FLAG

INT 21 2F-- - DOS 2+ - GET DISK TRANSFER AREA ADDRESS

INT 21 30-- - DOS 2+ - GET DOS VERSION

INT 21 30-- - Phar Lap 386/DOS-Extender, Intel Code Builder - INSTALLATION CHECK

INT 21 30-- - VIRUS - "Possessed" - INSTALLATION CHECK

INT 21 3000 - CTask 2.0+ - INSTALLATION CHECK

INT 21 3000 - PC-MOS/386 v3.0 - INSTALLATION CHECK/GET VERSION

INT 21 3000 - VIRUS - "Jackal" - INSTALLATION CHECK

INT 21 3022 - StopPrg v2.0 - INSTALLATION CHECK

INT 21 30F1 - VIRUS - "Dutch-555"/"Quit 1992" - INSTALLATION CHECK

INT 21 30FF - DESQ??? - INSTALLATION CHECK

INT 21 31-- - DOS 2+ - TERMINATE AND STAY RESIDENT

INT 21 32-- - DOS 2+ - GET DOS DRIVE PARAMETER BLOCK FOR SPECIFIC DRIVE

INT 21 33-- - DOS 2+ - EXTENDED BREAK CHECKING

INT 21 3302 - DOS 3.x+ internal - GET AND SET EXTENDED CONTROL-BREAK CHECKING STATE

INT 21 3303 - DOS 4.0+ - UNUSED

INT 21 3304 - DOS 4.0+ - UNUSED

INT 21 3305 - DOS 4.0+ - GET BOOT DRIVE

INT 21 3306 - DOS 5+ - GET TRUE VERSION NUMBER

INT 21 3306 - CBIS POWERLAN - NETWORK REDIRECTOR - ???

INT 21 330F - VIRUS - "Burghofer" - INSTALLATION CHECK

INT 21 3341 - Diet Disk v1.0 - INSTALLATION CHECK

INT 21 33DA - VIRUS - "CoffeeShop" - INSTALLATION CHECK

INT 21 33E0 - VIRUS - "Oropax" - INSTALLATION CHECK

INT 21 34-- - DOS 2+ - GET ADDRESS OF INDOS FLAG

INT 21 35-- - DOS 2+ - GET INTERRUPT VECTOR

INT 21 3501 - FlashTek X-32VM - ALLOCATE PROTECTED-MODE SELECTOR

INT 21 3502 - FlashTek X-32VM - DEALLOCATE PROTECTED-MODE SELECTOR

INT 21 3503 - FlashTek X-32VM - SET SELECTOR BASE ADDRESS

INT 21 3504 - FlashTek X-32VM - GET SELECTOR BASE ADDRESS

INT 21 3505 - FlashTek X-32VM - SET SELECTOR LIMIT

INT 21 350A - FlashTek X-32VM - PHYSICAL ADDRESS MAPPING

INT 21 350B - FlashTek X-32VM - UPDATE AND RETURN AVAILABLE FREE MEMORY

INT 21 350C - FlashTek X-32VM - ALLOCATE A BLOCK OF MEMORY

INT 21 350D - FlashTek X-32VM - RESERVE BLOCK OF MEMORY FOR 32-BIT STACK

INT 21 357F - VIRUS - "Agiplan"/"Month 4-6" - INSTALLATION CHECK

INT 21 36-- - DOS 2+ - GET FREE DISK SPACE

INT 21 3700 - DOS 2+ - "SWITCHAR" - GET SWITCH CHARACTER

INT 21 3701 - DOS 2+ - "SWITCHAR" - SET SWITCH CHARACTER

INT 21 37-- - DOS 2.x and 3.3+ only - "AVAILDEV" - SPECIFY \DEV\ PREFIX USE

INT 21 37D0 - DIET v1.43e - TSR INSTALLATION CHECK

INT 21 37D1 - DIET v1.43e - GET DIET.EXE RESIDENT SEGMENT

INT 21 37D2 - DIET v1.43e - GET TSR CONTROL FLAGS

INT 21 37D3 - DIET v1.43e - SET TSR CONTROL FLAGS

INT 21 37D4 - DIET v1.43e - GET TSR OPTIONS

INT 21 37D5 - DIET v1.43e - SET TSR OPTIONS

INT 21 37D6 - DIET v1.43e - GET TEMPORARY DIRECTORY NAMES

INT 21 37D7 - DIET v1.43e - SET TEMPORARY DIRECTORY NAMES

INT 21 37DC - DIET v1.43e - SET ADDRESS OF EXTERNAL PROCEDURE

INT 21 37DD - DIET v1.43e - RELEASE EXTERNAL PROCEDURE

INT 21 37DE - DIET v1.43e - READ EMS STATUS

INT 21 37DF - DIET v1.43e - UNLOAD TSR

INT 21 38-- - DOS 2+ - GET COUNTRY-SPECIFIC INFORMATION

INT 21 38-- - DOS 3.0+ - SET COUNTRY CODE

INT 21 39-- - DOS 2+ - "MKDIR" - CREATE SUBDIRECTORY

INT 21 3A-- - DOS 2+ - "RMDIR" - REMOVE SUBDIRECTORY

INT 21 3B-- - DOS 2+ - "CHDIR" - SET CURRENT DIRECTORY

INT 21 3C-- - DOS 2+ - "CREAT" - CREATE OR TRUNCATE FILE

INT 21 3D-- - DOS 2+ - "OPEN" - OPEN EXISTING FILE

INT 21 3DFF - VIRUS - "JD-448" - INSTALLATION CHECK

INT 21 3E-- - DOS 2+ - "CLOSE" - CLOSE FILE

INT 21 3F-- - DOS 2+ - "READ" - READ FROM FILE OR DEVICE

INT 21 3F-- - Turbo Debug HARDWARE BREAKPOINTS - READ STATUS BLOCK

INT 21 3F-- - PC/TCP IPCUST.SYS - READ CONFIGURATION DATA

INT 21 3F-- - WORKGRP.SYS - GET ENTRY POINT

INT 21 3F-- - BW-TCP - GET DRIVER INFO

INT 21 3F-- - Trusted Access - NB.SYS - GET STATE

INT 21 3F-- - IFSHLP.SYS - GET ENTRY POINT

INT 21 40-- - DOS 2+ - "WRITE" - WRITE TO FILE OR DEVICE

INT 21 40-- - Turbo Debug HARDWARE BREAKPOINTS - SEND CMD TO HARDWARE BRKPNT DRIVER

INT 21 40-- - PC/TCP IPCUST.SYS - WRITE CONFIGURATION DATA

INT 21 40-- - Trusted Access - NB.SYS - SET STATE

INT 21 4000 - FARTBELL.EXE - INSTALLATION CHECK

INT 21 4001 - FARTBELL.EXE - FORCE NOISE

INT 21 41-- - DOS 2+ - "UNLINK" - DELETE FILE

INT 21 4101 - SoftLogic Data Guardian - ???

INT 21 42-- - DOS 2+ - "LSEEK" - SET CURRENT FILE POSITION

INT 21 4203 - VIRUS - "Shake" - INSTALLATION CHECK

INT 21 4243 - VIRUS - "Invader" - INSTALLATION CHECK

INT 21 4300 - DOS 2+ - GET FILE ATTRIBUTES

INT 21 4301 - DOS 2+ - "CHMOD" - SET FILE ATTRIBUTES

INT 21 4302 - DOS 7 (Chicago) - GET VOLUME INFORMATION

INT 21 4302 - DR-DOS 3.41+ internal - GET ACCESS RIGHTS

INT 21 4303 - DR-DOS 3.41+ internal - SET ACCESS RIGHTS AND PASSWORD

INT 21 4304 - DR-DOS 5.0-6.0 internal - GET ENCRYPTED PASSWORD

INT 21 4305 - DR-DOS 5.0-6.0 internal - SET EXTENDED FILE ATTRIBUTES

INT 21 4306 - DR-DOS 6.0 - GET FILE OWNER

INT 21 4307 - DR-DOS 6.0 - SET FILE OWNER

INT 21 4310 - Banyan VINES 2.1+ - GET EXTENDED FILE ATTRIBUTES

INT 21 4311 - Banyan VINES 2.1+ - SET EXTENDED FILE ATTRIBUTES

INT 21 4321 - Q87, Q387 - INSTALLATION CHECK

INT 21 4321 - Q87, Q387 - ENABLE EMULATOR

INT 21 4321 - Q87, Q387 - DISABLE EMULATOR

INT 21 4380 - Novell DOS 7 - UNDELETE PENDING DELETE FILE

INT 21 4381 - Novell DOS 7 - PURGE PENDING DELETE FILE

INT 21 4400 - DOS 2+ - IOCTL - GET DEVICE INFORMATION

INT 21 4401 - DOS 2+ - IOCTL - SET DEVICE INFORMATION

INT 21 4402 - DOS 2+ - IOCTL - READ FROM CHARACTER DEVICE CONTROL CHANNEL

INT 21 4402 - Network Driver Interface Specification (NDIS) 2.0.1 - PROTOCOL MANAGER

INT 21 4402 - IBM SYSTEM 36/38 WORKSTATION EMULATION - VDI.SYS - GET ???

INT 21 4402 - LASTBYTE.SYS v1.19 - IOCTL - GET ??? TABLE

INT 21 4402 - HIGHUMM.SYS v1.17+ - IOCTL - GET API ADDRESS

INT 21 4402 - SMARTDRV.SYS v3.x only - IOCTL - GET CACHE STATUS

INT 21 4402 - CD-ROM device driver - IOCTL INPUT

INT 21 4402 - Quarterdeck - QEMM-386 v5+ - GET API ENTRY POINT

INT 21 4402 - Quarterdeck - HOOKROM.SYS - GET HOOKED VECTOR TABLE

INT 21 4402 - Advanced SCSI Programming Interface (ASPI) - INTERFACE

INT 21 4402 - Qualitas 386MAX v6.00+ - IOCTL INPUT - GET STATE

INT 21 4402 - PGS1600.DEV - IOCTL - GET CONFIGURATION INFO

INT 21 4402 - PC/TCP IPCUST.SYS - RESET CONFIGURATION DATA READ POINTER

INT 21 4402 - WORKGRP.SYS - GET API ENTRY POINT

INT 21 4402 - 10NET v5.0 - 10BEUI.DOS - API

INT 21 4402 - 10NET v5.0 - 10MEMMGR.SYS - API

INT 21 4402 - Compaq AG1024.SYS - RGDI - GET DRIVER LOCATION

INT 21 4402 - FTPSOFT.DOS v3.1 - GET ???

INT 21 4402 - PenDOS PENDEV.SYS - GET ENTRY POINTS

INT 21 4402 - LAN Manager - TCPDRV.DOS - API

INT 21 4402 - PC Tools 9 CPRLOW.EXE - GET CODE AND DATA ADDRESSES

INT 21 4402 - Creative Technology CTMMSYS.SYS v1.00.01 - API

INT 21 4402 - Creative Technology CTSB2.SYS v1.01.01 - API

INT 21 4402 - Novell DOS 7 EMM386.EXE - GET STATE RECORD???

INT 21 4402 - Memory Managers - GET API ENTRY POINT

INT 21 4402 - Memory Managers - GET EMM IMPORT STRUCTURE ADDRESS

INT 21 4402 - Memory Managers - GET MEMORY MANAGER VERSION

INT 21 4402 - Microsoft EMM386.EXE v4.45 - GET MEMORY MANAGER INFORMATION

INT 21 4402 - IFSHLP.SYS - GET ENTRY POINT

INT 21 4403 - DOS 2+ - IOCTL - WRITE TO CHARACTER DEVICE CONTROL CHANNEL

INT 21 4403 - SMARTDRV.SYS v3.x only - IOCTL - CACHE CONTROL

INT 21 4403 - CD-ROM device driver - IOCTL OUTPUT

INT 21 4403 - Brian Antoine Seagate ST-01 SCSI.SYS - IOCTL - EXECUTE COMMANDS

INT 21 4403 - AI Architects - OS/x86??? - API

INT 21 4403 - PGS1600.DEV - IOCTL - SET CONFIGURATION???

INT 21 4403 - PC/TCP IPCUST.SYS - RESET CONFIGURATION DATA READ POINTER

INT 21 4403 - Compaq AG1024.SYS - CPQ_MGES - IOCTL OUTPUT

INT 21 4403 - Compaq AG1024.SYS - RGDI - IOCTL OUTPUT

INT 21 4403 - Qualitas 386MAX v6.01+ - TURN 386MAX OFF

INT 21 4403 - Qualitas 386MAX v6.01+ - TURN 386MAX ON

INT 21 4403 - Qualitas 386MAX v6.01+ - SET STATE

INT 21 4403 - Qualitas 386MAX v7.00+ - LIMIT AUTOMATIC ACTIVATION TO STD EMS CALLS

INT 21 4403 - Qualitas 386MAX v7.00+ - ALLOW AUTOMATIC ACTIVATION ON ANY INT 67

INT 21 4403 - PenDOS PENDEV.SYS - ???

INT 21 4404 - DOS 2+ - IOCTL - READ FROM BLOCK DEVICE CONTROL CHANNEL

INT 21 4404 - Stacker - GET DEVICE DRIVER ADDRESS AND SET VOLUME NUMBER

INT 21 4404 - Stacker - GET STACVOL FILE SECTORS

INT 21 4404 - DUBLDISK.SYS v2.6 - GET INFO

INT 21 4404 - DBLSPACE.BIN - IOCTL - FLUSH OR INVALIDATE INTERNAL CACHES

INT 21 4404 - DBLSPACE.BIN v6.2 - IOCTL - GET ??? FOR SPECIFIED DRIVE

INT 21 4404 - DoubleTools v1.0 - GET ???

INT 21 4404 - xDISK v3.31 - CONFIGURE

INT 21 4404 - COMBI-disk v1.13 - GET DATA RECORD

INT 21 4404 - SFS v1.00 - GET CONFIGURATION INFORMATION

INT 21 4405 - DOS 2+ - IOCTL - WRITE TO BLOCK DEVICE CONTROL CHANNEL

INT 21 4405 - Brian Antoine Seagate ST-01 SCSI.SYS - IOCTL - EXECUTE COMMANDS

INT 21 4405 - DBLSPACE.BIN - IOCTL - FLUSH OR INVALIDATE INTERNAL CACHES

INT 21 4405 - xDISK v3.31 - ???

INT 21 4405 - COMBI-disk v1.13 - CONTROL COMBI-disk

INT 21 4405 - SFS v1.00 - DRIVER CONTROL

INT 21 4406 - DOS 2+ - IOCTL - GET INPUT STATUS

INT 21 4407 - DOS 2+ - IOCTL - GET OUTPUT STATUS

INT 21 4408 - DOS 3.0+ - IOCTL - CHECK IF BLOCK DEVICE REMOVABLE

INT 21 4409 - DOS 3.1+ - IOCTL - CHECK IF BLOCK DEVICE REMOTE

INT 21 440A - DOS 3.1+ - IOCTL - CHECK IF HANDLE IS REMOTE

INT 21 440B - DOS 3.1+ - IOCTL - SET SHARING RETRY COUNT

INT 21 440C - DOS 3.2+ - IOCTL - GENERIC CHARACTER DEVICE REQUEST

INT 21 440C - Greg Shenaut ASPITAPE.SYS - INTERFACE

INT 21 440D - DOS 3.2+ - IOCTL - GENERIC BLOCK DEVICE REQUEST

INT 21 440E - DOS 3.2+ - IOCTL - GET LOGICAL DRIVE MAP

INT 21 440F - DOS 3.2+ - IOCTL - SET LOGICAL DRIVE MAP

INT 21 4410 - DOS 5+ - IOCTL - QUERY GENERIC IOCTL CAPABILITY (HANDLE)

INT 21 4410 - NewSpace - ENABLE DRIVER

INT 21 4411 - DOS 5+ - IOCTL - QUERY GENERIC IOCTL CAPABILITY (DRIVE)

INT 21 4411 - NewSpace - DISABLE DRIVER

INT 21 4412 - DR-DOS 5.0-6.0 - DETERMINE DOS TYPE

INT 21 4412 - NewSpace - INSTALLATION CHECK???

INT 21 4413 - NewSpace - GET ???

INT 21 4414 - DR-DOS 5.0-6.0 - SET GLOBAL PASSWORD

INT 21 4414 - NewSpace - DEBUGGING DUMP

INT 21 44-- - DR-DOS 5.0-6.0 - HISTORY BUFFER, SHARE, AND HILOAD CONTROL

INT 21 4451 - Concurrent DOS v3.2+ - INSTALLATION CHECK

INT 21 4452 - DR-DOS 3.41+ - DETERMINE DOS TYPE/GET DR-DOS VERSION

INT 21 4454 - DR-DOS 3.41+ - SET GLOBAL PASSWORD

INT 21 4456 - DR-DOS 5.0+ - HISTORY BUFFER CONTROL

INT 21 4457 - DR-DOS 5.0+ - SHARE/HILOAD CONTROL

INT 21 4457 - DR-DOS 6.0 - GET SHARE STATUS

INT 21 4458 - DR-DOS 5.0+ internal - GET POINTER TO INTERNAL VARIABLE TABLE

INT 21 4459 - DR MultiUser DOS 5.0 - API

INT 21 44E0 - Sun PC-NFS - API???

INT 21 44FF - NewSpace - ???

INT 21 45-- - DOS 2+ - "DUP" - DUPLICATE FILE HANDLE

INT 21 46-- - DOS 2+ - "DUP2", "FORCEDUP" - FORCE DUPLICATE FILE HANDLE

INT 21 47-- - DOS 2+ - "CWD" - GET CURRENT DIRECTORY

INT 21 48-- - DOS 2+ - ALLOCATE MEMORY

INT 21 49-- - DOS 2+ - FREE MEMORY

INT 21 4A-- - DOS 2+ - RESIZE MEMORY BLOCK

INT 21 4A-- - VIRUS???

INT 21 4A-- - VIRUS???

INT 21 4B-- - DOS 2+ - "EXEC" - LOAD AND/OR EXECUTE PROGRAM

INT 21 4B-- - ELRES v1.0 only - INSTALLATION CHECK

INT 21 4B04 - VIRUS - "MG", "699"/"Thirteen Minutes" - INSTALLATION CHECK

INT 21 4B05 - DOS 5+ - SET EXECUTION STATE

INT 21 4B20 - VIRUS - "Holocaust"/"Telefonica" - ???

INT 21 4B21 - VIRUS - "Holocaust"/"Telefonica" - ???

INT 21 4B25 - VIRUS - "1063"/"Mono" - INSTALLATION CHECK

INT 21 4B40 - VIRUS - "Plastique"/"AntiCad" - INSTALLATION CHECK

INT 21 4B41 - VIRUS - "Plastique"/"AntiCad" - ???

INT 21 4B4A - VIRUS - "Jabberwocky" - INSTALLATION CHECK

INT 21 4B4B - VIRUS - "Horse-2" - INSTALLATION CHECK

INT 21 4B4D - VIRUS - "Murphy-2", "Patricia"/"Smack" - INSTALLATION CHECK

INT 21 4B50 - VIRUS - "Plastique-2576"/"AntiCad-2576" - INSTALLATION CHECK

INT 21 4B53 - VIRUS - "Horse" - INSTALLATION CHECK

INT 21 4B53 - VIRUS - "One Half" - INSTALLATION CHECK

INT 21 4B55 - VIRUS - "Sparse" - INSTALLATION CHECK

INT 21 4B59 - VIRUS - "Murphy-1", "Murphy-4" - INSTALLATION CHECK

INT 21 4B5E - VIRUS - "Brothers" - INSTALLATION CHECK

INT 21 4B60 - VIRUS - "Plastique-2576"/"AntiCad-2576" - ???

INT 21 4B87 - VIRUS - "Shirley" - INSTALLATION CHECK

INT 21 4B95 - VIRUS - "Zherkov-1882" - INSTALLATION CHECK

INT 21 4BA7 - VIRUS - "1876"/"Dash-em" - INSTALLATION CHECK

INT 21 4BAA - VIRUS - "Nomenklatura" - INSTALLATION CHECK

INT 21 4BAF - VIRUS - "948"/"Screenplus1", "Magnitogorsk" - INSTALLATION CHECK

INT 21 4BDD - VIRUS - "Lozinsky"/"Zherkov" - INSTALLATION CHECK

INT 21 4BEE - F-DRIVER.SYS v1.14+ - GRAB INT 21

INT 21 4BF0 - DIET v1.10+ (Overlay Mode) - INSTALLATION CHECK

INT 21 4BF1 - DIET v1.10+ (Overlay Mode) - EXPAND PROGRAM???

INT 21 4BFE - VIRUS - "Hitchcock", "Dark Avenger-1028", "1193" - INSTALLATION CHECK

INT 21 4BFF - VIRUS - "USSR-707", "Justice", "Europe 92" - INSTALLATION CHECK

INT 21 4BFF - VIRUS - "Cascade" - INSTALLATION CHECK

INT 21 4C-- - DOS 2+ - "EXIT" - TERMINATE WITH RETURN CODE

INT 21 4C57 - Headroom - ???

INT 21 4D-- - DOS 2+ - GET RETURN CODE (ERRORLEVEL)

INT 21 4E-- - DOS 2+ - "FINDFIRST" - FIND FIRST MATCHING FILE

INT 21 4E-- - WILDUNIX.COM internal - INSTALLATION CHECK

INT 21 4F-- - DOS 2+ - "FINDNEXT" - FIND NEXT MATCHING FILE

INT 21 50-- - DOS 2+ internal - SET CURRENT PROCESS ID (SET PSP ADDRESS)

INT 21 51-- - DOS 2+ internal - GET CURRENT PROCESS ID (GET PSP ADDRESS)

INT 21 52-- - DOS 2+ internal - "SYSVARS" - GET LIST OF LISTS

INT 21 5252 - VIRUS - "516"/"Leapfrog" - INSTALLATION CHECK

INT 21 53-- - DOS 2+ internal - TRANSLATE BIOS PARAMETER BLOCK TO DRIVE PARAM BLOCK

INT 21 54-- - DOS 2+ - GET VERIFY FLAG

INT 21 55-- - DOS 2+ internal - CREATE CHILD PSP

INT 21 56-- - DOS 2+ - "RENAME" - RENAME FILE

INT 21 5643 - VIRUS - "PS-MPC.Gold" - INSTALLATION CHECK

INT 21 5700 - DOS 2+ - GET FILE'S DATE AND TIME

INT 21 5701 - DOS 2+ - SET FILE'S DATE AND TIME

INT 21 5702 - DOS 4.x only - GET EXTENDED ATTRIBUTES FOR FILE

INT 21 5702 - OS/2 v1.1+ Family API - DosQFileInfo

INT 21 5702 - OS/2 v1.1+ Compatibility Box Family API - DosQPathInfo

INT 21 5703 - DOS 4.x only - GET EXTENDED ATTRIBUTE PROPERTIES

INT 21 5703 - OS/2 v1.1+ Family API - DosSetFileInfo

INT 21 5703 - OS/2 v1.1+ Family API - DosSetPathInfo

INT 21 5704 - DOS 4.x only - SET EXTENDED ATTRIBUTES

INT 21 5757 - IBM Genie - Resident Manager - INSTALLATION CHECK

INT 21 5758 - Headroom - API

INT 21 58-- - DOS 2.11+ - GET OR SET MEMORY ALLOCATION STRATEGY

INT 21 58-- - DOS 5+ - GET OR SET UMB LINK STATE

INT 21 58CC - VIRUS - "1067"/"Headcrash" - INSTALLATION CHECK

INT 21 58DD - VIRUS - "1067"/"Headcrash" - GET ORIGINAL INT 21h VECTOR

INT 21 59-- - DOS 3.0+ - GET EXTENDED ERROR INFORMATION

INT 21 59-- - European MS-DOS 4.0 - GET HARD ERROR INFORMATION

INT 21 5A-- - DOS 3.0+ - CREATE TEMPORARY FILE

INT 21 5B-- - DOS 3.0+ - CREATE NEW FILE

INT 21 5C-- - DOS 3.0+ - "FLOCK" - RECORD LOCKING

INT 21 5D00 - DOS 3.1+ internal - SERVER FUNCTION CALL

INT 21 5D01 - DOS 3.1+ internal - COMMIT ALL FILES FOR SPECIFIED COMPUTER/PROCESS

INT 21 5D02 - DOS 3.1+ internal - SHARE.EXE - CLOSE FILE BY NAME

INT 21 5D03 - DOS 3.1+ internal - SHARE.EXE - CLOSE ALL FILES FOR GIVEN COMPUTER

INT 21 5D04 - DOS 3.1+ internal - SHARE.EXE - CLOSE ALL FILES FOR GIVEN PROCESS

INT 21 5D05 - DOS 3.1+ internal - SHARE.EXE - GET OPEN FILE LIST ENTRY

INT 21 5D06 - DOS 3.0+ internal - GET ADDRESS OF DOS SWAPPABLE DATA AREA

INT 21 5D07 - DOS 3.1+ network - GET REDIRECTED PRINTER MODE

INT 21 5D08 - DOS 3.1+ network - SET REDIRECTED PRINTER MODE

INT 21 5D09 - DOS 3.1+ network - FLUSH REDIRECTED PRINTER OUTPUT

INT 21 5D0A - DOS 3.1+ - SET EXTENDED ERROR INFORMATION

INT 21 5D0B - DOS 4.x only internal - GET DOS SWAPPABLE DATA AREAS

INT 21 5E00 - DOS 3.1+ network - GET MACHINE NAME

INT 21 5E00 - 10NET v5.0 - GET MACHINE NAME

INT 21 5E01 - DOS 3.1+ network - SET MACHINE NAME

INT 21 5E01 - 10NET v5.0 - GET LOCAL 10NET CONFIGURATION TABLE

INT 21 5E02 - DOS 3.1+ network - SET NETWORK PRINTER SETUP STRING

INT 21 5E03 - DOS 3.1+ network - GET NETWORK PRINTER SETUP STRING

INT 21 5E04 - DOS 3.1+ network - SET PRINTER MODE

INT 21 5E04 - 10NET v5.0 - INITIATE PRINT JOB

INT 21 5E05 - DOS 3.1+ network - GET PRINTER MODE

INT 21 5E05 - 10NET v5.0 - TERMINATE PRINT JOB

INT 21 5E06 - 10NET v5.0 - GET/SET 10NET WORKSTATION PRINTER SETUP STRUCTURE

INT 21 5F00 - DOS 3.1+ network - GET REDIRECTION MODE

INT 21 5F01 - DOS 3.1+ network - SET REDIRECTION MODE

INT 21 5F02 - DOS 3.1+ network - GET REDIRECTION LIST ENTRY

INT 21 5F03 - DOS 3.1+ network - REDIRECT DEVICE

INT 21 5F04 - DOS 3.1+ network - CANCEL REDIRECTION

INT 21 5F05 - DOS 4.0+ network - GET EXTENDED REDIRECTION LIST ENTRY

INT 21 5F05 - STARLITE architecture - MAP LOCAL DRIVE LETTER TO REMOTE FILE SYSTEM

INT 21 5F06 - Network - GET FULL REDIRECTION LIST

INT 21 5F06 - STARLITE architecture - UNMAP DRIVE LETTER

INT 21 5F07 - DOS 5+ - ENABLE DRIVE

INT 21 5F07 - STARLITE architecture - MAKE NAMED OBJECT AVAILABLE ON NETWORK

INT 21 5F08 - DOS 5+ - DISABLE DRIVE

INT 21 5F08 - STARLITE architecture - REMOVE GLOBAL NETWORK NAME OF OBJECT

INT 21 5F09 - STARLITE architecture - BIND TO NETWORK DEVICE

INT 21 5F0A - STARLITE architecture - DETACH FROM NETWORK DEVICE

INT 21 5F30 - LAN Manager Enhanced DOS - GET REDIRECTOR VERSION

INT 21 5F32 - Named Pipes - LOCAL DosQNmPipeInfo

INT 21 5F33 - Named Pipes - LOCAL DosQNmPHandState

INT 21 5F34 - Named Pipes - LOCAL DosSetNmPHandState

INT 21 5F35 - Named Pipes - LOCAL DosPeekNmPipe

INT 21 5F36 - Named Pipes - LOCAL DosTransactNmPipe

INT 21 5F37 - Named Pipes - DosCallNmPipe

INT 21 5F38 - Named Pipes - LOCAL DosWaitNmPipe - AWAIT AVAIL. OF PIPE INSTANCE

INT 21 5F39 - Named Pipes - LOCAL DosRawReadNmPipe

INT 21 5F3A - Named Pipes - LOCAL DosRawWriteNmPipe

INT 21 5F3B - LAN Manager Enhanced DOS - NetHandleSetInfo

INT 21 5F3C - LAN Manager Enhanced DOS - NetHandleGetInfo

INT 21 5F3D - LAN Manager Enhanced DOS - WRITE MAILSLOT???

INT 21 5F3E - LAN Manager Enhanced DOS - LOCAL NetSpecialSMB

INT 21 5F3F - LAN Manager Enhanced DOS - REMOTE API CALL

INT 21 5F40 - LAN Manager Enhanced DOS - LOCAL NetMessageBufferSend

INT 21 5F41 - LAN Manager Enhanced DOS - LOCAL NetServiceEnum

INT 21 5F42 - LAN Manager Enhanced DOS - LOCAL NetServiceControl

INT 21 5F43 - LAN Manager Enhanced DOS - LOCAL DosPrintJobGetId

INT 21 5F44 - LAN Manager Enhanced DOS - LOCAL NetWkstaGetInfo

INT 21 5F45 - LAN Manager Enhanced DOS - LOCAL NetWkstaSetInfo

INT 21 5F46 - LAN Manager Enhanced DOS - LOCAL NetUseEnum

INT 21 5F47 - LAN Manager Enhanced DOS - LOCAL NetUseAdd

INT 21 5F48 - LAN Manager Enhanced DOS - LOCAL NetUseDel

INT 21 5F49 - LAN Manager Enhanced DOS - NetUseGetInfo

INT 21 5F4A - LAN Manager Enhanced DOS - LOCAL NetRemoteCopy

INT 21 5F4B - LAN Manager Enhanced DOS - LOCAL NetRemoteMove

INT 21 5F4C - LAN Manager Enhanced DOS - LOCAL NetServerEnum

INT 21 5F4D - LAN Manager Enhanced DOS - DosMakeMailslot

INT 21 5F4E - LAN Manager Enhanced DOS - DosDeleteMailslot

INT 21 5F4F - LAN Manager Enhanced DOS - DosMailslotInfo

INT 21 5F50 - LAN Manager Enhanced DOS - DosReadMailslot

INT 21 5F51 - LAN Manager Enhanced DOS - DosPeekMailslot

INT 21 5F52 - LAN Manager Enhanced DOS - DosWriteMailslot

INT 21 5F53 - LAN Manager Enhanced DOS - NetServerEnum2

INT 21 5F55 - LAN Manager Enhanced DOS - KILL ALL CONNECTIONS???

INT 21 5F80 - LANtastic - GET LOGIN ENTRY

INT 21 5F81 - LANtastic - LOGIN TO SERVER

INT 21 5F82 - LANtastic - LOGOUT FROM SERVER

INT 21 5F83 - LANtastic - GET USERNAME ENTRY

INT 21 5F84 - LANtastic - GET INACTIVE SERVER ENTRY

INT 21 5F85 - LANtastic - CHANGE PASSWORD

INT 21 5F86 - LANtastic - DISABLE ACCOUNT

INT 21 5F87 - LANtastic v3+ - GET ACCOUNT

INT 21 5F88 - LANtastic v4.0+ - LOGOUT FROM ALL SERVERS

INT 21 5F97 - LANtastic - COPY FILE

INT 21 5F98 - LANtastic - SEND UNSOLICITED MESSAGE

INT 21 5F99 - LANtastic - GET LAST RECEIVED UNSOLICITED MESSAGE

INT 21 5F9A - LANtastic - GET MESSAGE PROCESSING FLAGS

INT 21 5F9B - LANtastic - SET MESSAGE PROCESSING FLAGS

INT 21 5F9C - LANtastic v3+ - POP UP LAST RECEIVED MESSAGE

INT 21 5F9D - LANtastic v4.1+ - GET REDIRECTOR CONTROL BITS

INT 21 5F9E - LANtastic v4.1+ - SET REDIRECTOR CONTROL BITS

INT 21 5FA0 - LANtastic - GET QUEUE ENTRY

INT 21 5FA1 - LANtastic - SET QUEUE ENTRY

INT 21 5FA2 - LANtastic - CONTROL QUEUE

INT 21 5FA3 - LANtastic v3+ - GET PRINTER STATUS

INT 21 5FA4 - LANtastic v3+ - GET STREAM INFO

INT 21 5FA5 - LANtastic v3+ - SET STREAM INFO

INT 21 5FA7 - LANtastic - CREATE USER AUDIT ENTRY

INT 21 5FA9 - LANtastic v4.1+ - SET EXTENDED QUEUE ENTRY

INT 21 5FB0 - LANtastic - GET ACTIVE USER INFORMATION

INT 21 5FB1 - LANtastic - GET SHARED DIRECTORY INFORMATION

INT 21 5FB2 - LANtastic v3+ - GET USERNAME FROM ACCOUNT FILE

INT 21 5FB3 - LANtastic v3+ - TRANSLATE PATH

INT 21 5FB4 - LANtastic v3+ - CREATE INDIRECT FILE

INT 21 5FB5 - LANtastic v3+ - GET INDIRECT FILE CONTENTS

INT 21 5FB6 - LANtastic v4.1+ - SET AUTO-LOGIN DEFAULTS

INT 21 5FB7 - LANtastic v4.1+ - GET AUTO-LOGIN DEFAULTS

INT 21 5FC0 - LANtastic - GET TIME FROM SERVER

INT 21 5FC8 - LANtastic v4.0+ - SCHEDULE SERVER SHUTDOWN

INT 21 5FC9 - LANtastic v4.0+ - CANCEL SERVER SHUTDOWN

INT 21 5FCA - LANtastic v4.0+ - STUFF SERVER KEYBOARD BUFFER

INT 21 5FCB - LANtastic v4.1+ - TERMINATE USER

INT 21 5FCC - LANtastic v4.1+ - GET/SET SERVER CONTROL BITS

INT 21 5FCD - LANtastic v4.1+ - FLUSH SERVER CACHES

INT 21 5FD0 - LANtastic - GET REDIRECTED PRINTER TIMEOUT

INT 21 5FD1 - LANtastic - SET REDIRECTED PRINTER TIMEOUT

INT 21 5FE0 - LANtastic - GET DOS SERVICE VECTOR

INT 21 5FE1 - LANtastic - SET DOS SERVICE VECTOR

INT 21 5FE2 - LANtastic - GET MESSAGE SERVICE VECTOR

INT 21 5FE3 - LANtastic - SET MESSAGE SERVICE VECTOR

INT 21 60-- - DOS 3.0+ - "TRUENAME" - CANONICALIZE FILENAME OR PATH

INT 21 61-- - DOS 3.0+ - UNUSED

INT 21 61-- - OS/2 v1.x FAPI - OS/2 FILE SYSTEM JOIN/SUBST

INT 21 62-- - DOS 3.0+ - GET CURRENT PSP ADDRESS

INT 21 6300 - DOS 2.25 only - GET LEAD BYTE TABLE ADDRESS

INT 21 6300 - Far East DOS 3.2+ - GET DOUBLE BYTE CHARACTER SET LEAD-BYTE TABLE

INT 21 6301 - DOS 2.25, Far East DOS 3.2+ - SET KOREAN (HANGEUL) INPUT MODE

INT 21 6302 - DOS 2.25, Far East DOS 3.2+ - GET KOREAN (HANGEUL) INPUT MODE

INT 21 6303 - VIRUS - "DOS IDLE" - INSTALLATION CHECK

INT 21 6304 - VIRUS - "Replicator" - INSTALLATION CHECK

INT 21 64-- - DOS 3.2+ internal - SET DEVICE DRIVER LOOKAHEAD FLAG

INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - ENABLE AUTOMATIC TITLE SWITCH

INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - SET SESSION TITLE

INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - GET SESSION TITLE

INT 21 64-- - OS/2 v2.1 Virtual DOS Machine - GET LASTDRIVE

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET SIZE OF PTDA JFT

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET SECOND SFT FLAGS WORD

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - UNLOAD DOSKRNL SYMBOLS & LOAD PROGR

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET WinOS2 CALL GATE ADDRESS

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET LOADING MESSAGE

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API support

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DOS32StartSession

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DosQFSAttach

INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DosForceDelete

INT 21 65-- - DOS 3.3+ - GET EXTENDED COUNTRY INFORMATION

INT 21 65-- - DOS 4.0+ - COUNTRY-DEPENDENT CHARACTER CAPITALIZATION

INT 21 6523 - DOS 4.0+ - DETERMINE IF CHARACTER REPRESENTS YES/NO RESPONSE

INT 21 65-- - DOS 4.0+ internal - COUNTRY-DEPENDENT FILENAME CAPITALIZATION

INT 21 6601 - DOS 3.3+ - GET GLOBAL CODE PAGE TABLE

INT 21 6602 - DOS 3.3+ - SET GLOBAL CODE PAGE TABLE

INT 21 67-- - DOS 3.3+ - SET HANDLE COUNT

INT 21 68-- - DOS 3.3+ - "FFLUSH" - COMMIT FILE

INT 21 69-- - DOS 4.0+ internal - GET/SET DISK SERIAL NUMBER

INT 21 69-- - DR-DOS 5.0 - NULL FUNCTION

INT 21 6969 - VIRUS - "Rape-747" - INSTALLATION CHECK

INT 21 69FF - CUBIT v4.00 - GET CUBIT INT 21 HANDLER

INT 21 69FF - CUBIT v4.00 - UNINSTALL

INT 21 6A-- - DOS 4.0+ - COMMIT FILE

INT 21 6B-- - DOS 4.0 internal - IFS IOCTL

INT 21 6B-- - DOS 5+ - NULL FUNCTION

INT 21 6C00 - DOS 4.0+ - EXTENDED OPEN/CREATE

INT 21 6C01 - OS/2 v2.0 - "DosOpen2"

INT 21 6D-- - DOS 5+ ROM - FIND FIRST ROM PROGRAM

INT 21 6D-- - OS/2 v1.x FAPI - "DosMkDir2"

INT 21 6D-- - Novell DOS 7 - NOP

INT 21 6E-- - DOS 5+ ROM - FIND NEXT ROM PROGRAM

INT 21 6E-- - OS/2 v1.x FAPI - "DosENumAttrib"

INT 21 6F-- - OS/2 v1.x FAPI - "DosQMaxEASize" - GET MAXIMUM SIZE OF EXTENDED ATTR

INT 21 6F00 - DOS 5+ ROM - GET ROM SCAN START ADDRESS

INT 21 6F01 - DOS 5+ ROM - SET ROM SCAN START ADDRESS

INT 21 6F02 - DOS 5+ ROM - GET EXCLUSION REGION LIST

INT 21 6F03 - DOS 5+ ROM - SET EXCLUSION REGION LIST

INT 21 70-- - MS-DOS 7 (Windows95) - ??? (country-specific?)

INT 21 7070 - PCW Weather Card interface - GET DATA SEGMENT

INT 21 7070 - PCW Weather Card interface - INSTALLATION CHECK

INT 21 71-- - MS-DOS 7 (Chicago) - LONG FILENAME FUNCTIONS

INT 21 714E - Windows95 - LONG FILENAME - FIND FIRST MATCHING FILE

INT 21 714F - Windows95 - LONG FILENAME - FIND NEXT MATCHING FILE

INT 21 7160 - Windows95 - LONG FILENAME - "TRUENAME" - CANONICALIZE FILENAME OR PATH

INT 21 71A0 - Windows95 - LONG FILENAME - GET VOLUME INFORMATION

INT 21 71A1 - Windows95 - LONG FILENAME - "FindClose" - TERMINATE DIRECTORY SEARCH

INT 21 72-- - MS-DOS 7 (Windows95) - ???

INT 21 73-- - MS-DOS 7 (Windows95) - DRIVE LOCKING ???

INT 21 76-- - VIRUS - "Klaeren"/"Hate" - INSTALLATION CHECK

INT 21 7700 - VIRUS - "Growing Block" - INSTALLATION CHECK

INT 21 7734 - SCROLLit v1.7 - INSTALLATION CHECK

INT 21 7761 - WATCH.COM v3.2+ - INSTALLATION CHECK

INT 21 7BCE - VIRUS - "Whisper"/"Taipan" - INSTALLATION CHECK???

INT 21 7F-- - VIRUS - "Squeaker" - INSTALLATION CHECK

INT 21 80-- - European MS-DOS 4.0 - "AEXEC" - EXECUTE PROGRAM IN BACKGROUND

INT 21 8080 - PCW Weather Card interface - UNINSTALL PCW.COM AND FREE MEMORY

INT 21 81-- - European MS-DOS 4.0 - "FREEZE" - STOP A PROCESS

INT 21 82-- - European MS-DOS 4.0 - "RESUME" - RESTART A PROCESS

INT 21 83-- - European MS-DOS 4.0 - "PARTITION" - GET/SET FOREGROUND PARTITION SIZE

INT 21 83-- - VIRUS - "SVC" - INSTALLATION CHECK

INT 21 84-- - VIRUS - "SVC 5.0" or "SVC 6.0" - INSTALLATION CHECK

INT 21 8400 - European MS-DOS 4.0 - "CREATMEM" - CREATE A SHARED MEMORY AREA

INT 21 8401 - European MS-DOS 4.0 - "GETMEM" - OBTAIN ACCESS TO SHARED MEMORY AREA

INT 21 8402 - European MS-DOS 4.0 - "RELEASEMEM" - FREE SHARED MEMORY AREA

INT 21 85-- - European MS-DOS 4.0 - ???

INT 21 86-- - European MS-DOS 4.0 - "SETFILETABLE" - INSTALL NEW FILE HANDLE TABLE

INT 21 87-- - European MS-DOS 4.0 - "GETPID" - GET PROCESS IDENTIFIER

INT 21 88-- - European MS-DOS 4.0 - ???

INT 21 89-- - European MS-DOS 4.0 - SLEEP

INT 21 89-- - VIRUS - "Vriest" - INSTALLATION CHECK

INT 21 8A-- - European MS-DOS 4.0 - "CWAIT" - WAIT FOR CHILD TO TERMINATE

INT 21 8B-- - European MS-DOS 4.0 - ???

INT 21 8C-- - European MS-DOS 4.0 - SET SIGNAL HANDLER

INT 21 8D-- - European MS-DOS 4.0 - SEND SIGNAL

INT 21 8E00 - European MS-DOS 4.0 - "SETPRI" - GET/SET PROCESS PRIORITY

INT 21 8F-- - European MS-DOS 4.0 - ???

INT 21 90-- - European MS-DOS 4.0 - ???

INT 21 90-- - VIRUS - "Carioca" - INSTALLATION CHECK

INT 21 91-- - European MS-DOS 4.0 - ???

INT 21 92-- - European MS-DOS 4.0 - ???

INT 21 93-- - European MS-DOS 4.0 - "PIPE" - CREATE A NEW PIPE

INT 21 94-- - European MS-DOS 4.0 - ???

INT 21 95-- - European MS-DOS 4.0 - HARD ERROR PROCESSING

INT 21 96-- - European MS-DOS 4.0 - ???

INT 21 97-- - European MS-DOS 4.0 - ???

INT 21 9753 - VIRUS - "Nina" - INSTALLATION CHECK

INT 21 98-- - European MS-DOS 4.0 - ???

INT 21 99-- - European MS-DOS 4.0 - "PBLOCK" - BLOCK A PROCESS

INT 21 9A-- - European MS-DOS 4.0 - "PRUN" - UNBLOCK A PROCESS

INT 21 9AD5 - VIRUS - "Massacre/Beavis" - INSTALLATION CHECK

INT 21 A0-- - Attachmate Extra! - GET 3270 DISPLAY STATE

INT 21 A1-- - Attachmate Extra! - SET 3270 DISPLAY STATE

INT 21 A1D5 - VIRUS - "789"/"Filehider" - INSTALLATION CHECK

INT 21 A2-- - Attachmate Extra! - SET HOST WINDOW STATE

INT 21 A3-- - Attachmate Extra! - SEND KEYSTROKES TO HOST WINDOW

INT 21 A4-- - Attachmate Extra! - GET HOST WINDOW BUFFER ADDRESS

INT 21 A5-- - Attachmate Extra! - GET HOST WINDOW CURSOR POSITION

INT 21 A55A - VIRUS - "Eddie-2" - INSTALLATION CHECK

INT 21 AA00 - VIRUS - "Blinker" - INSTALLATION CHECK

INT 21 AA03 - VIRUS - "Backtime" - INSTALLATION CHECK

INT 21 AB-- - VIRUS - "600" or "Voronezh"-family - INSTALLATION CHECK

INT 21 ABCD - VIRUS - "SuperVirus 2" - INSTALLATION CHECK

INT 21 AF-- - Attachmate Extra! - GET TRANSLATE TABLE ADDRESS

INT 21 B300 - Novell NetWare - CHECK LIP/PACKET SIGNING/IPX CHECKSUM SUPPORT???

INT 21 B301 - Novell NetWare - CHECK SIGNATURE LEVEL???

INT 21 B302 - Novell NetWare - START PACKET SIGNING

INT 21 B304 - Novell NetWare - SET SIGNATURE LEVEL

INT 21 B306 - Novell NetWare - RENEGOTIATE SECURITY LEVEL

INT 21 B4-- - Novell NetWare - "AttachHandle"

INT 21 B500 - Novell NetWare - VNETWARE.386 API - GET INSTANCE DATA

INT 21 B501 - Novell NetWare - VNETWARE.386 API - END VIRTUAL MACHINE

INT 21 B502 - Novell NetWare - VNETWARE.386 API - START VIRTUAL MACHINE

INT 21 B5-- - Novell NetWare shell 3.01 - TASK MODE CONTROL

INT 21 B505 - Novell NetWare - VNETWARE.386 API - SET VIRTUAL MACHINE ID

INT 21 B506 - Novell NetWare - VNETWARE.386 API - GET VIRTUAL MACH SUPPORT LEVEL

INT 21 B507 - Novell NetWare - NetWare Shell - GET NUMBER OF PACKET BURST BUFFERS

INT 21 B6-- - Novell NetWare - FILE SERVICES - EXTENDED FILE ATTRIBUTES

INT 21 B7-- - Novell NetWare - "HoldFileModeSet" (obsolete)

INT 21 B8-- - Attachmate Extra! - DISABLE HOST BUFFER UPDATES

INT 21 B800 - Novell NetWare - PRINT SERVICES - GET DEFAULT CAPTURE FLAGS

INT 21 B801 - Novell NetWare - PRINT SERVICES - SET DEFAULT CAPTURE FLAGS

INT 21 B802 - Novell NetWare - PRINT SERVICES - GET SPECIFIC CAPTURE FLAGS

INT 21 B803 - Novell NetWare - PRINT SERVICES - SET SPECIFIC CAPTURE FLAGS

INT 21 B804 - Novell NetWare - PRINT SERVICES - GET DEFAULT LOCAL PRINTER

INT 21 B805 - Novell NetWare - PRINT SERVICES - SET DEFAULT LOCAL PRINTER

INT 21 B806 - Novell NetWare - PRINT SERVICES - SET CAPTURE PRINT QUEUE

INT 21 B807 - Novell NetWare - PRINT SERVICES - SET CAPTURE PRINT JOB

INT 21 B808 - Novell NetWare - PRINT SERVICES - GET BANNER USER NAME

INT 21 B809 - Novell NetWare - PRINT SERVICES - SET BANNER USER NAME

INT 21 B9-- - Novell NetWare - "SpecialAttachableFunction"

INT 21 BA-- - Novell NetWare - "ReturnCommandComPointers"

INT 21 BB-- - Novell NetWare - WORKSTATION - SET END OF JOB STATUS

INT 21 BBBB - VIRUS - "Hey You" - INSTALLATION CHECK

INT 21 BC-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG PHYSICAL RECORD

INT 21 BD-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE PHYSICAL RECORD

INT 21 BE-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR PHYSICAL RECORD

INT 21 BE-- - VIRUS - "Datalock" - INSTALLATION CHECK

INT 21 BE00 - VIRUS - "USSR-1049" - INSTALLATION CHECK

INT 21 BF-- - Novell NetWare, Alloy NTNX - LOG/LOCK RECORD (FCB)

INT 21 C0-- - Novell NetWare, Alloy NTNX - RELEASE RECORD (FCB)

INT 21 C0-- - VIRUS - "Slow"/"Zerotime", "Solano" - INSTALLATION CHECK

INT 21 C1-- - Novell NetWare, Alloy NTNX - CLEAR RECORD (FCB)

INT 21 C1-- - VIRUS - "Solano" - ???

INT 21 C2-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK PHYSICAL RECORD SET

INT 21 C2-- - VIRUS - "Scott's Valley" - ???

INT 21 C3-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE PHYSICAL RECRD SET

INT 21 C301 - VIRUS - "905"/"Backfont" - INSTALLATION CHECK

INT 21 C4-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR PHYSICAL RECORD SET

INT 21 C500 - Novell NetWare - SYNCHRONIZATION SERVICES - OPEN SEMAPHORE

INT 21 C500 - VIRUS - "Sverdlov" - INSTALLATION CHECK

INT 21 C501 - Novell NetWare - SYNCHRONIZATION SERVICES - EXAMINE SEMAPHORE

INT 21 C502 - Novell NetWare - SYNCHRONIZATION SERVICES - WAIT ON SEMAPHORE

INT 21 C503 - Novell NetWare - SYNCHRONIZATION SERVICES - SIGNAL SEMAPHORE

INT 21 C504 - Novell NetWare - SYNCHRONIZATION SERVICES - CLOSE SEMAPHORE

INT 21 C6-- - Novell NetWare - SYNCHRONIZATION SERVICES - GET OR SET LOCK MODE

INT 21 C6-- - VIRUS - "Socha" - INSTALLATION CHECK

INT 21 C603 - VIRUS - "Yankee Doodle" or "MLTI" - INSTALLATION CHECK

INT 21 C700 - Novell NetWare - TRANSACTION TRACKING SYSTEM - BEGIN TRANSACTION

INT 21 C700 - VIRUS - "MH-757" - INSTALLATION CHECK

INT 21 C701 - Novell NetWare - TRANSACTION TRACKING SYSTEM - END TRANSACTION

INT 21 C702 - Novell NetWare - TRANSACTION TRACKING SYSTEM - INSTALLATION CHECK

INT 21 C703 - Novell NetWare - TRANSACTION TRACKING SYSTEM - ABORT TRANSACTION

INT 21 C704 - Novell NetWare - TRANSACTION TRACKING SYSTEM - TRANSACTION STATUS

INT 21 C705 - Novell NetWare - TRANSACTION TRACKING SYSTEM - GET APPLICTN THRESHOLDS

INT 21 C706 - Novell NetWare - TRANSACTION TRACKING SYSTEM - SET APPLICTN THRESHOLDS

INT 21 C707 - Novell NetWare - TRANSACTION TRACKING SYSTEM - GET WORKSTN THRESHOLDS

INT 21 C708 - Novell NetWare - TRANSACTION TRACKING SYSTEM - SET WORKSTN THRESHOLDS

INT 21 C8-- - Novell NetWare - BEGIN LOGICAL FILE LOCKING

INT 21 C9-- - Novell NetWare - END LOGICAL FILE LOCKING

INT 21 CA-- - Novell NetWare, Alloy NTNX - LOG/LOCK PERSONAL FILE (FCB)

INT 21 CA15 - VIRUS - "Piter" - ???

INT 21 CB-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK FILE SET

INT 21 CB-- - VIRUS - "Milous" - INSTALLATION CHECK

INT 21 CB02 - VIRUS - "Witcode" - INSTALLATION CHECK

INT 21 CC-- - Novell NetWare, Alloy NTNX - RELEASE FILE (FCB)

INT 21 CC-- - VIRUS - "Westwood" - INSTALLATION CHECK

INT 21 CD-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE FILE SET

INT 21 CD-- - VIRUS - "Westwood" - ???

INT 21 CE-- - Novell NetWare, Alloy NTNX - CLEAR FILE (FCB)

INT 21 CF-- - LANstep - ???

INT 21 CF-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR FILE SET

INT 21 D0-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG LOGICAL RECORD

INT 21 D000 - VIRUS - "Fellowship" - INSTALLATION CHECK

INT 21 D1-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK LOGICAL RECORD SET

INT 21 D2-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE LOGICAL RECORD

INT 21 D2-- - VIRUS???

INT 21 D3-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE LOGICAL RECORD SET

INT 21 D4-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR LOGICAL RECORD

INT 21 D5-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR LOGICAL RECORD SET

INT 21 D5-- - VIRUS - "Carfield" - ???

INT 21 D5AA - VIRUS - "Diamond-A", "Diamond-B" - INSTALLATION CHECK

INT 21 D5AA - VIRUS - "Dir" - INSTALLATION CHECK

INT 21 D6-- - Novell NetWare - WORKSTATION - END OF JOB

INT 21 D7-- - Novell NetWare - CONNECTION SERVICES - SYSTEM LOGOUT

INT 21 D8-- - Novell NetWare, Banyan VINES - ALLOCATE RESOURCE

INT 21 D9-- - Novell NetWare, Banyan VINES - DEALLOCATE RESOURCE

INT 21 DA-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFO WITH NUMBER

INT 21 DADA - VIRUS - "Gotcha" - INSTALLATION CHECK

INT 21 DAFE - VIRUS - "Plovdiv 1.3" - INSTALLATION CHECK

INT 21 DB-- - Novell NetWare - WORKSTATION - GET NUMBER OF LOCAL DRIVES

INT 21 DC-- - Novell NetWare - CONNECTION SERVICES - GET CONNECTION NUMBER

INT 21 DC-- - PCMag PCMANAGE/DCOMPRES - TURN ON/OFF

INT 21 DD-- - Novell NetWare - WORKSTATION - SET NetWare ERROR MODE

INT 21 DD-- - VIRUS - "Jerusalem"-family - RELOCATE VIRUS???

INT 21 DDEF - VIRUS- "GOLGI" - INSTALLATION CHECK

INT 21 DE-- - VIRUS - "Durban" - INSTALLATION CHECK

INT 21 DE-- - VIRUS - "April 1st EXE" - ???

INT 21 DE-- - Novell NetWare - MESSAGE SERVICES - SET BROADCAST MODE

INT 21 DE-- - Novell NetWare - MESSAGE SERVICES - GET BROADCAST MODE

INT 21 DE-- - Novell NetWare - SHELL TIMER INTERRUPT CHECKS

INT 21 DEAD - VIRUS - "90210" - INSTALLATION CHECK

INT 21 DEAD - VIRUS - "Shifting Objective" - RELOCATE CODE ???

INT 21 DEDE - VIRUS - "Brothers" - INSTALLATION CHECK

INT 21 DF-- - Novell NetWare - PRINT SERVICES - START LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - END LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - CANCEL LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - FLUSH LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - START SPECIFIC LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - END SPECIFIC LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - CANCEL SPECIFIC LPT CAPTURE

INT 21 DF-- - Novell NetWare - PRINT SERVICES - FLUSH SPECIFIC LPT CAPTURE

INT 21 DF00 - Software Carousel - INSTALLATION CHECK

INT 21 DF01 - Software Carousel - SWITCH TO ANOTHER TASK

INT 21 DF02 - Software Carousel - KILL PROGRAM IN MEMORY PARTITION

INT 21 DF03 - Software Carousel - GET PARTITION SIZE AND PROGRAM STATUS

INT 21 DF04 - Software Carousel - GET PARTITION NAME

INT 21 DF05 - Software Carousel - CHANGE PARTITION SIZE

INT 21 DF06 - Software Carousel - CHANGE PARTITION NAME

INT 21 DF07 - Software Carousel - SEND COMMAND TO MEMORY SECTION

INT 21 DF08 - Software Carousel - SELECTIVELY ENABLE/DISABLE MENU AND SWITCHING

INT 21 DF09 - Software Carousel - BOOT THE SYSTEM

INT 21 DF0A - Software Carousel - GET MEMORY SIZE/PARTITION NUMBER OF CURRENT TASK

INT 21 DF0B - Software Carousel - SET TASK SWITCH CALLBACK

INT 21 DF0C - Software Carousel - ENABLE DOS-CALL SAFETY NOTIFICATION

INT 21 E0-- - Digital Research DOS Plus - CALL BDOS

INT 21 E0-- - OS/286, OS/386 - INITIALIZE REAL PROCEDURE

INT 21 E0-- - DoubleDOS - MENU CONTROL

INT 21 E0-- - VIRUS - "Jerusalem", "Armagedon" - INSTALLATION CHECK

INT 21 E0-- - Novell NetWare, Alloy NTNX - PRINT SPOOLING

INT 21 E0-- - Novell NetWare - PRINT SERVICES - GET PRINTER STATUS

INT 21 E0-- - Novell NetWare - PRINT SERVICES - SPECIFY CAPTURE FILE

INT 21 E00F - VIRUS - "8-tunes" - INSTALLATION CHECK

INT 21 E1-- - OS/286, OS/386 - ISSUE REAL PROCEDURE CALL

INT 21 E1-- - DoubleDOS - CLEAR KEYBOARD BUFFER FOR CURRENT JOB

INT 21 E1-- - VIRUS - "Mendoza", "Fu Manchu" - INSTALLATION CHECK

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - SEND BROADCAST MESSAGE

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - GET BROADCAST MESSAGE

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - ENABLE/DISABLE BROADCAST MESSAGES

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - SEND PERSONAL MESSAGE

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - GET PERSONAL MESSAGE

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - OPEN MESSAGE PIPE

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - CLOSE MESSAGE PIPE

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - CHECK PIPE STATUS

INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - BROADCAST TO CONSOLE

INT 21 E2-- - OS/286, OS/386 - SET REAL PROCEDURE SIGNAL HANDLER

INT 21 E2-- - DoubleDOS - SEND CHARACTER TO KEYBOARD BUFFER OF OTHER JOB

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SET DIRECTORY HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET DIRECTORY PATH

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SCAN DIRECTORY INFORMATION

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET EFFECTIVE DIRECTORY RIGHTS

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - MODIFY MAXIMUM RIGHTS MASK

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME NUMBER

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME NAME

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - CREATE DIRECTORY

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DELETE DIRECTORY

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SCAN DIRECTORY FOR TRUSTEES

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ADD TRUSTEE TO DIRECTORY

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DELETE TRUSTEE FROM DIRECTORY

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - RENAME DIRECTORY

INT 21 E2-- - Novell NetWare - FILE SERVICES - PURGE ERASED FILES

INT 21 E2-- - Novell NetWare - FILE SERVICES - RESTORE ERASED FILE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC PERMANENT DIRECTORY HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC TEMPORARY DIRECTORY HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DEALLOCATE DIRECTORY HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFO WITH HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC SPECIAL TEMP DIR HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SAVE DIRECTORY HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - RESTORE DIRECTORY HANDLE

INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SET DIRECTORY INFORMATION

INT 21 E2-- - Novell NetWare - FILE SERVER - GET PATH FROM DIRECTORY ENTRY

INT 21 E3-- - OS/286, OS/386 - ISSUE REAL INTERRUPT

INT 21 E3-- - DoubleDOS - ADD CHARACTER TO KEYBOARD BUFFER OF CURRENT JOB

INT 21 E3-- - Novell NetWare - CONNECTION CONTROL

INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - ENTER LOGIN AREA

INT 21 E3-- - Novell NetWare - VERIFY NETWORK SERIAL NUMBER

INT 21 E3-- - Novell NetWare - MESSAGE SERVICES - LOG NETWORK MESSAGE

INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK UTILIZATION

INT 21 E3-- - Novell NetWare - FILE SERVICES - SCAN FILE INFORMATION

INT 21 E3-- - Novell NetWare - FILE SERVICES - SET FILE INFORMATION

INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER INFORMATION

INT 21 E3-- - Novell NetWare - GET NETWORK SERIAL NUMBER

INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET INTERNET ADDRESS

INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - LOGIN TO FILE SERVER

INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET OBJECT CONNECTION NUMBERS

INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET CONNECTION INFORMATION

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CREATE BINDERY OBJECT

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE BINDERY OBJECT

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - RENAME BINDERY OBJECT

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY OBJECT ID

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY OBJECT NAME

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - SCAN BINDERY OBJECT

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE BINDERY OBJECT SECURITY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CREATE PROPERTY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE PROPERTY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE PROPERTY SECURITY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - SCAN PROPERTY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - READ PROPERTY VALUE

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - WRITE PROPERTY VALUE

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - VERIFY BINDERY OBJECT PASSWORD

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE BINDERY OBJECT PASSWORD

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - ADD BINDERY OBJECT TO SET

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE BINDERY OBJECT FROM SET

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - IS BINDERY OBJECT IN SET

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CLOSE BINDERY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - OPEN BINDERY

INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY ACCESS LEVEL

INT 21 E3-- - Novell NetWare - DIRECTORY SERVICES - SCAN BINDERY OBJ TRUSTEE PATHS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CREATE QUEUE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - DESTROY QUEUE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE CURRENT STATUS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SET QUEUE CURRENT STATUS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CREATE QUEUE JOB AND FILE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CLOSE FILE AND START QUEUE JOB

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - REMOVE JOB FROM QUEUE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - GET QUEUE JOB LIST

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE JOB ENTRY

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE QUEUE JOB ENTRY

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE QUEUE JOB POSITION

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ATTACH QUEUE SERVER TO QUEUE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - DETACH QUEUE SERVER FROM QUEUE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SERVICE QUEUE JOB AND OPEN FILE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - FINISH SERVICING QUEUE JOB AND FILE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ABORT SERVICING QUEUE JOB AND FILE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE TO CLIENT RIGHTS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - RESTORE QUEUE SERVER RIGHTS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE SERVER CURRENT STATUS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SET QUEUE SERVER CURRENT STATUS

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - GET QUEUE JOB'S FILE SIZE

INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ABORT SERVICING QUEUE JOB

INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - GET ACCOUNT STATUS

INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT CHARGE

INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT HOLD

INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT NOTE

INT 21 E3-- - Novell NetWare - FILE SERVER - CHECK CONSOLE PRIVILEGES

INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER DESCRIPTION STRINGS

INT 21 E3-- - Novell NetWare - FILE SERVER - SET FILE SERVER DATE AND TIME

INT 21 E3-- - Novell NetWare - FILE SERVER - DISABLE FILE SERVER LOGIN

INT 21 E3-- - Novell NetWare - FILE SERVER - ENABLE FILE SERVER LOGIN

INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER LOGIN STATUS

INT 21 E3-- - Novell NetWare - FILE SERVICES - PURGE ALL ERASED FILES

INT 21 E3-- - Novell NetWare - FILE SERVER - DISABLE TRANSACTION TRACKING

INT 21 E3-- - Novell NetWare - FILE SERVER - ENABLE TRANSACTION TRACKING

INT 21 E3-- - Novell NetWare - FILE SERVER - SEND CONSOLE BROADCAST

INT 21 E3-- - Novell NetWare - FILE SERVER - CLEAR CONNECTION NUMBER

INT 21 E3-- - Novell NetWare - FILE SERVER - DOWN FILE SERVER

INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SYSTEM STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET TRANSACTION TRACKING STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK CACHE STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET DRIVE MAPPING TABLE

INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL DISK STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK CHANNEL STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S TASK INFORMATION

INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S OPEN FILES

INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTIONS USING A FILE

INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL RECORD LOCKS BY CONN&FILE

INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL RECORD LOCKS BY FILE

INT 21 E3-- - Novell NetWare - FILE SERVER - GET LOGICAL RECORDS BY CONNECTION

INT 21 E3-- - Novell NetWare - FILE SERVER - GET LOGICAL RECORD INFORMATION

INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S SEMAPHORES

INT 21 E3-- - Novell NetWare - FILE SERVER - GET SEMAPHORE INFORMATION

INT 21 E3-- - Novell NetWare - FILE SERVER - GET LAN DRIVER'S CONFIGURATION INFO

INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S USAGE STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET BINDERY OBJECT DISK SPACE LEFT

INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER LAN I/O STATISTICS

INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER MISC INFORMATION

INT 21 E3-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFORMATION

INT 21 E4-- - Novell NetWare - SET FILE ATTRIBUTES (FCB)

INT 21 E4-- - VIRUS - "Anarkia" - INSTALLATION CHECK

INT 21 E400 - DoubleDOS - INSTALLATION CHECK/PROGRAM STATUS

INT 21 E400 - OS/286, OS/386 - CHAIN TO REAL-MODE HANDLER

INT 21 E402 - OS/286, OS/386 - SET PROTECTED-MODE TASK GATE

INT 21 E403 - OS/286, OS/386 - REMOVE PROTECTED-MODE TASK GATE

INT 21 E5-- - Novell NetWare - UPDATE FILE SIZE (FCB)

INT 21 E5-- - DoubleDOS - OTHER PROGRAM STATUS

INT 21 E500 - OS/286, OS/386 - HEAP MANAGEMENT STRATEGY

INT 21 E501 - OS/286, OS/386 - FORCE HEAP COMPACTION

INT 21 E6-- - Novell NetWare - COPY FILE TO FILE (FCB)

INT 21 E6-- - OS/286, OS/386 - ISSUE REAL PROCEDURE SIGNAL FROM PROTECTED MODE

INT 21 E7-- - Novell NetWare - FILE SERVER - GET FILE SERVER DATE AND TIME

INT 21 E7-- - OS/286, OS/386 - CREATE CODE SEGMENT

INT 21 E7-- - VIRUS - "Spyer"/"Kiev" - INSTALLATION CHECK

INT 21 E8-- - Novell NetWare, Alloy NTNX - SET FCB RE-OPEN MODE

INT 21 E8-- - OS/286, OS/386 - SEGMENT CREATION

INT 21 E8-- - DoubleDOS - SET/RESET KEYBOARD CONTROL FLAGS

INT 21 E9-- - OS/286, OS/386 - CHANGE SEGMENTS

INT 21 E9-- - DoubleDOS - SET TIMESHARING PRIORITY

INT 21 E900 - Novell NetWare - DIRECTORY SERVICES - GET DIRECTORY HANDLE

INT 21 E905 - Novell NetWare shell 3.01 - MAP A FAKE ROOT DIRECTORY

INT 21 E906 - Novell NetWare shell 3.01 - DELETE FAKE ROOT DIRECTORY

INT 21 E907 - Novell NetWare shell 3.01 - GET RELATIVE DRIVE DEPTH

INT 21 E908 - Novell NetWare shell 3.01 - SET SHOW DOTS

INT 21 E909 - Novell NetWare - NetWare shell - CONVERT DOS FILE HANDLE TO NETWARE

INT 21 EA-- - Novell NetWare, Alloy NTNX - RETURN SHELL VERSION

INT 21 EA-- - DoubleDOS - TURN OFF TASK SWITCHING

INT 21 EA-- - OS/286, OS/386 - ALLOCATE HUGE SEGMENT

INT 21 EB-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG FILE

INT 21 EB-- - DoubleDOS - TURN ON TASK SWITCHING

INT 21 EB00 - OS/386 VMM - GET A PAGE TABLE ENTRY BY LINEAR ADDRESS

INT 21 EB02 - OS/386 VMM - GET A PAGE TABLE ENTRY BY 16-BIT SEGMENT:OFFSET

INT 21 EB03 - OS/386 VMM - FREE MAPPED PAGES

INT 21 EB04 - OS/386 VMM - GET A PAGE TABLE ENTRY BY 32-BIT SEGMENT:OFFSET

INT 21 EB05 - OS/386 VMM - MAP PAGES

INT 21 EB06 - OS/386 VMM - LOCK PAGES IN MEMORY

INT 21 EB07 - OS/386 VMM - UNLOCK MEMORY PAGES

INT 21 EC-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE FILE

INT 21 EC-- - DoubleDOS - GET VIRTUAL SCREEN ADDRESS

INT 21 EC-- - OS/286, OS/386 - BLOCK TRANSFER

INT 21 EC59 - VIRUS - "Terror" - INSTALLATION CHECK

INT 21 ED-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR FILE

INT 21 ED-- - OS/286, OS/386 - GET SEGMENT OR WINDOW DESCRIPTOR

INT 21 EE-- - Novell NetWare - CONNECTION SERVICES - GET PHYSICAL STATION ADDRESS

INT 21 EE-- - DoubleDOS - GIVE AWAY TIME TO OTHER TASKS

INT 21 EE-- - VIRUS - "Jerusalem-G", "Pregnant" - INSTALLATION CHECK

INT 21 EF00 - Novell NetWare - WORKSTATION - GET DRIVE HANDLE TABLE

INT 21 EF01 - Novell NetWare - WORKSTATION - GET DRIVE FLAG TABLE

INT 21 EF02 - Novell NetWare - WORKSTATION - GET DRIVE CONNECTION ID TABLE

INT 21 EF03 - Novell NetWare - WORKSTATION - GET CONNECTION ID TABLE

INT 21 EF04 - Novell NetWare - WORKSTATION - GET FILE SERVER NAME TABLE

INT 21 F0-- - DoubleDOS - MENU CONTROL

INT 21 F0-- - VIRUS - "Frere Jacques" - INSTALLATION CHECK

INT 21 F000 - Novell NetWare - WORKSTATION - SET PREFERRED CONNECTION ID

INT 21 F001 - Novell NetWare - WORKSTATION - GET PREFERRED CONNECTION ID

INT 21 F002 - Novell NetWare - WORKSTATION - GET DEFAULT CONNECTION ID

INT 21 F003 - Novell NetWare - PRINT SERVICES - GET LPT CAPTURE STATUS

INT 21 F004 - Novell NetWare - WORKSTATION - SET PRIMARY CONNECTION ID

INT 21 F005 - Novell NetWare - WORKSTATION - GET PRIMARY CONNECTION ID

INT 21 F1-- - Novell NetWare - CONNECTION SERVICES - FILE SERVER CONNECTION

INT 21 F1-- - DoubleDOS - CLEAR KEYBOARD BUFFER FOR CURRENT JOB

INT 21 F1-- - VIRUS - "F1-337" - ???

INT 21 F1E9 - VIRUS - "Tremor" - INSTALLATION CHECK

INT 21 F2-- - Novell NetWare v3.01+ shell interface - MULTIPLEXOR

INT 21 F2-- - DoubleDOS - SEND CHARACTER TO KEYBOARD BUFFER OF OTHER JOB

INT 21 F216 - Novell NetWare v3+ - ADD USER DISK SPACE RESTRICTION

INT 21 F216 - Novell NetWare v3+ - SET DIRECTORY DISK SPACE RESTRICTION

INT 21 F216 - Novell NetWare v3+ - SCAN FILE OR DIRECTORY FOR EXTENDED TRUSTEES

INT 21 F216 - Novell NetWare v3+ - ADD EXTENDED TRUSTEE TO DIRECTORY OR FILE

INT 21 F216 - Novell NetWare v3+ - GET OBJECT DISK RESTRICTIONS

INT 21 F216 - Novell NetWare v4 - GET EXTENDED VOLUME INFORMATION

INT 21 F217 - Novell NetWare v3+ - GET CONNECTION INFORMATION

INT 21 F217 - Novell NetWare v4 - CHANGE CONNECTION STATE

INT 21 F217 - Novell NetWare v4 - SET WATCHDOG DELAY INTERVAL

INT 21 F217 - Novell NetWare v4 - GET CONNECTION LIST

INT 21 F217 - Novell NetWare v2.2+ - GET VOLUME EXTENDED INFORMATION

INT 21 F217 - Novell NetWare v2.2+ - ADD OBJECT TO SET

INT 21 F217 - Novell NetWare v3+ - CLEAR CONNECTION NUMBER (LOGOUT STATION)

INT 21 F217 - Novell NetWare v3+ - GET CONNECTION'S OPEN FILES

INT 21 F217 - Novell NetWare v3+ - GET CONNECTIONS USING A FILE

INT 21 F217 - Novell NetWare v3+ - GET PHYSICAL RECORD LOCKS BY FILE

INT 21 F217 - Novell NetWare v3+ - GET SEMAPHORE INFORMATION

INT 21 F217 - Novell NetWare v3+ - MAP DIRECTORY NUMBER TO PATH

INT 21 F217 - Novell NetWare v3+ - CONVERT PATH TO DIRECTORY ENTRY

INT 21 F217 - Novell NetWare v4 - CLEAR CONNECTION NUMBER

INT 21 F244 - Novell NetWare - FILE SERVICES - ERASE FILES

INT 21 F257 - Novell NetWare v3+ - GET INFORMATION ABOUT FILE OR DIRECTORY

INT 21 F258 - Novell NetWare v4+ - GET VOLUME AUDITING STATISTICS

INT 21 F268 - Novell NetWare v4+ - GET TREE NAME

INT 21 F268 - Novell NetWare v4+ - GET BINDERY CONTEXT

INT 21 F268 - Novell NetWare v4+ - NDS LIST PARTITIONS

INT 21 F268 - Novell NetWare v4+ - NDS GET SERVER NAME AND ADDRESS

INT 21 F268 - Novell NetWare v4+ - NDS LOGOUT

INT 21 F268 - Novell NetWare v4+ - GET DS AUDITING STATISTICS

INT 21 F272 - Novell NetWare v4+ - GET FILE SERVER UTC TIME

INT 21 F27B - Novell NetWare v4+ - GET ROUTER INFO

INT 21 F27B - Novell NetWare v4+ - GET KNOWN NETWORKS INFO

INT 21 F2AA - VIRUS - "PcVrsDs" - INSTALLATION CHECK

INT 21 F3-- - Novell NetWare - FILE SERVICES - FILE SERVER FILE COPY

INT 21 F3-- - DoubleDOS - ADD CHARACTER TO KEYBOARD BUFFER OF CURRENT JOB

INT 21 F3-- - VIRUS - "Carfield" - INSTALLATION CHECK

INT 21 F400 - DoubleDOS - INSTALLATION CHECK/PROGRAM STATUS

INT 21 F5-- - DoubleDOS - OTHER PROGRAM STATUS

INT 21 F7-- - VIRUS - "GP1" - INSTALLATION CHECK

INT 21 F8-- - DOS v2.11-2.13 - SET OEM INT 21 HANDLER

INT 21 F8-- - DoubleDOS - SET/RESET KEYBOARD CONTROL FLAGS

INT 21 F9-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 F9-- - DoubleDOS - SET TIMESHARING PRIORITY

INT 21 F9-- - VIRUS - "Satans-Bug" - INSTALLATION CHECK

INT 21 FA-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 FA-- - DoubleDOS - TURN OFF TASK SWITCHING

INT 21 FA-- - PC Tools v7+ VDEFEND, VSAFE, VWATCH - API

INT 21 FB-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 FB-- - DoubleDOS - TURN ON TASK SWITCHING

INT 21 FB-- - VIRUS - "Cinderella" - INSTALLATION CHECK

INT 21 FB0A - VIRUS - "dBASE" - INSTALLATION CHECK

INT 21 FC-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 FC-- - DoubleDOS - GET VIRTUAL SCREEN ADDRESS

INT 21 FC-- - VIRUS - "Troi" - INSTALLATION CHECK

INT 21 FD-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 FD-- - VIRUS - "Border" - INSTALLATION CHECK

INT 21 FD12 - Gravis UltraSound - MegaEm/MEGA_EM - INSTALLATION CHECK

INT 21 FE-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 FE-- - DoubleDOS - GIVE AWAY TIME TO OTHER TASKS

INT 21 FE-- - VIRUS - "483" - INSTALLATION CHECK

INT 21 FE01 - VIRUS - "Flip" - INSTALLATION CHECK

INT 21 FE02 - VIRUS - "2468"/"Tequila" - INSTALLATION CHECK

INT 21 FE03 - VIRUS - "2468"/"Tequila" - DISPLAY VIRUS MESSAGE

INT 21 FEAD - VIRUS - "Shifting Objective" - INSTALLATION CHECK

INT 21 FEDC - PCMag PCMANAGE/DCOMPRES - INSTALLATION CHECK

INT 21 FEDC - VIRUS - "Black Monday" - INSTALLATION CHECK

INT 21 FEFE - VIRUS - "CIDER" - INSTALLATION CHECK

INT 21 FF-- - DOS v2.11-2.13 - OEM FUNCTION

INT 21 FF-- - CED (Command EDitor) - INSTALLABLE COMMANDS

INT 21 FF-- - DJ GO32.EXE 80386+ DOS extender - DOS EXTENSIONS

INT 21 FF-- - DOSED.COM - INSTALLATION CHECK

INT 21 FF-- - VIRUS - "Sunday", "Tumen 0.5", "Hero" - INSTALLATION CHECK

INT 21 FF-- - Rational Systems DOS/4GW - API

INT 21 FF-- - Rational Systems DOS/4GW - VERSION CHECK???

INT 21 FF-- - Rational Systems DOS/4GW - SET ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - GET ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - GET/SET ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - NOP

INT 21 FF-- - Rational Systems DOS/4GW - EXCHANGE ??? POINTERS

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF-- - Rational Systems DOS/4GW - GET ??? FUNCTIONS

INT 21 FF-- - Rational Systems DOS/4GW - GET ???

INT 21 FF-- - Rational Systems DOS/4GW - ???

INT 21 FF00 - TopWare Network OS v5.10+ - GET SYSTEM INFORMATION

INT 21 FF00 - Rational Systems DOS/4G - INSTALLATION CHECK

INT 21 FF04 - TopWare Network OS v5.10+ - GET/SET DEFAULT FILE PROTECTION ATTRIBS

INT 21 FF0F - FLU_SHOT+ v1.83 - INSTALLATION CHECK

INT 21 FF10 - VIRUS - "Twins" - INSTALLATION CHECK

INT 21 FF80 - TopWare Network OS v5.10+ - SEND MESSAGE

INT 21 FF82 - TopWare Network OS v5.10+ - GET STATION ADDRESS

INT 21 FF8C - TopWare Network OS v5.10+ - GET STATUS OF TopShow/Emulated FUNCTION

INT 21 FF8D - TopWare Network OS v5.10+ - CALL TopShow FUNCTION

INT 21 FF8E - TopWare Network OS v5.10+ - CANCEL TopShow FUNCTION

INT 21 FF91 - TopWare Network OS v5.10+ - GET FILE SERVER STATION NUMBER

INT 21 FF97 - TopWare Network OS v5.10+ - GET MAXIMUM STATION NUMBER (server only)

INT 21 FF98 - TopWare Network OS v5.10+ - GET MAXIMUM FILE NUMBER (server only)

INT 21 FF9A - TopWare Network OS v5.10+ - RECEIVE OF USER-DEFINED PACKETS

INT 21 FF9F - TopWare Network OS v5.10+ - ENABLE/DISABLE TopTerm SERVICE

INT 21 FFB0 - TopWare Network OS v5.10+ - GET SPOOLER PRINTING PRIORITY

INT 21 FFB1 - TopWare Network OS v5.10+ - SET SPOOLER PRINTING PRIORITY

INT 21 FFB3 - TopWare Network OS v5.10+ - GET DEFAULT START-OF-JOB FORMFEED STATUS

INT 21 FFB4 - TopWare Network OS v5.10+ - SET DEFAULT START-OF-JOB FORMFEED STATUS

INT 21 FFBB - TopWare Network OS v5.10+ - GET PRINTER SERVER STATION ADDRESS

INT 21 FFBC - TopWare Network OS v5.10+ - CANCEL TopShow FUNCTION

INT 21 FFBD - TopWare Network OS v5.10+ - GET CURRENT AUTOPRINT TIME

INT 21 FFBE - TopWare Network OS v5.10+ - SET AUTOPRINT TIME

INT 21 FFBF - TopWare Network OS v5.10+ - GET LOGON USER INFORMATION

INT 21 FFC0 - TopWare Network OS v5.10+ - GET DEFAULT END-OF-JOB FORMFEED STATUS

INT 21 FFC1 - TopWare Network OS v5.10+ - SET DEFAULT END-OF-JOB FORMFEED STATUS

INT 21 FFC2 - TopWare Network OS v5.10+ - GET DEFAULT COPIES OF SPOOLING FILE

INT 21 FFC3 - TopWare Network OS v5.10+ - GET SHARING STATUS OF PRINTER SERVER

INT 21 FFC4 - TopWare Network OS v5.10+ - GET/SET LPT PORT ON PRINT SERVER

INT 21 FFC6 - TopWare Network OS v5.10+ - SET DEFAULT PRINT FILE HEADER

INT 21 FFC7 - TopWare Network OS v5.10+ - SET DEFAULT PRINT COPIES

INT 21 FFC8 - TopWare Network OS v5.10+ - GET DEFAULT PRINT FILE HEADER STATUS

INT 21 FFC9 - TopWare Network OS v5.10+ - SET PRINTER SHARING

INT 21 FFCA - TopWare Network OS v5.10+ - MOVE FILE FROM ONE PRINT SERVER TO ANOTHER

INT 21 FFCB - TopWare Network OS v5.10+ - DELETE FILE FROM SPOOLING QUEUE

INT 21 FFCC - TopWare Network OS v5.10+ - GET PRINT SERVER'S SPOOLING QUEUE STATUS

INT 21 FFCD - TopWare Network OS v5.10+ - GET STATUS OF ALL PRINT SERVERS

INT 21 FFCF - TopWare Network OS v5.10+ - CALL TopLook FUNCTION

INT 21 FFD6 - TopWare Network OS v5.10+ - GET KEYCARD SERIAL NUMBER AND MAX USERS

INT 21 FFD7 - TopWare Network OS v5.10+ - GET NETWORK PROTECTION ATTRIBUTES STATUS

INT 21 FFE3 - TopWare Network OS v5.10+ - INITIATE ACCESS TO SPECIFIC PACKET TYPE

INT 21 FFE3 - TopWare Network OS v5.10+ - END ACCESS TO SPECIFIC PACKET TYPE

INT 21 FFE3 - TopWare Network OS v5.10+ - SEND PACKET

INT 21 FFE3 - TopWare Network OS v5.10+ - GET LOCAL NETWORK INTERFACE ADDRESS

INT 21 FFFE - VIRUS - "08/15"/"Many Fingers" - INSTALLATION CHECK

INT 21 FFFF - VIRUS - "Ontario", "Year 1992"/"B1M92" - INSTALLATION CHECK

INT 21 FFFF - VIRUS - "Revenge" - INSTALLATION CHECK

Interrupts


INT 22 - DOS 1+ - PROGRAM TERMINATION ADDRESS
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 22 - DOS 1+ - PROGRAM TERMINATION ADDRESS

INT 22 ---- - DOS 1+ - PROGRAM TERMINATION ADDRESS

INT 22 ---- - COMTROL HOSTESS i/ISA DEBUGGER - CHANGE FIRMWARE DEBUGGING PORT

Interrupts


INT 23 - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 23 - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER

INT 23 ---- - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER

INT 23 ---- - COMTROL HOSTESS i/ISA DEBUGGER - GET CONFIGURATION INFORMATION

Interrupts


INT 24 - DOS 1+ - CRITICAL ERROR HANDLER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 24 - DOS 1+ - CRITICAL ERROR HANDLER

INT 24 ---- - DOS 1+ - CRITICAL ERROR HANDLER

Interrupts


INT 25 - DOS 1+ - ABSOLUTE DISK READ
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 25 - DOS 1+ - ABSOLUTE DISK READ

INT 25 ---- - DOS 1+ - ABSOLUTE DISK READ (except partitions > 32M)

INT 25 ---- - DOS 3.31+ - ABSOLUTE DISK READ (>32M hard-disk partition)

INT 25 CDCD - Stacker - GET DEVICE DRIVER ADDRESS

INT 25 --FF - PC-CACHE.SYS - INSTALLATION CHECK

Interrupts


INT 26 - DOS 1+ - ABSOLUTE DISK WRITE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 26 - DOS 1+ - ABSOLUTE DISK WRITE

INT 26 ---- - DOS 1+ - ABSOLUTE DISK WRITE (except partitions > 32M)

INT 26 ---- - DOS 3.31+ - ABSOLUTE DISK WRITE (>32M hard-disk partition)

INT 26 ---- - COMTROL HOSTESS i/ISA DEBUGGER - ENTER/EXIT EXTENDED ADDRESSING MODE

Interrupts


INT 27 - DOS 1+ - TERMINATE AND STAY RESIDENT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 27 - DOS 1+ - TERMINATE AND STAY RESIDENT

INT 27 ---- - DOS 1+ - TERMINATE AND STAY RESIDENT

INT 27 ---- - COMTROL HOSTESS i/ISA DEBUGGER - INVOKE REMOTE TURBO DEBUGGER KERNEL

Interrupts


INT 28 - DOS 2+ - DOS IDLE INTERRUPT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 28 - DOS 2+ - DOS IDLE INTERRUPT

INT 28 ---- - DOS 2+ - DOS IDLE INTERRUPT

Interrupts


INT 29 - DOS 2+ - FAST CONSOLE OUTPUT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 29 - DOS 2+ - FAST CONSOLE OUTPUT

INT 29 ---- - DOS 2+ - FAST CONSOLE OUTPUT

Interrupts


INT 2A - NETBIOS
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 2A - NETBIOS

INT 2A 00-- - NETWORK - INSTALLATION CHECK

INT 2A 0000 - AT&T Starlan Extended NetBIOS (var length names) - INSTALLATION CHECK

INT 2A 01-- - NETWORK (Microsoft,LANtastic) - EXECUTE NETBIOS REQUEST,NO ERROR RETRY

INT 2A 02-- - NETWORK (Microsoft) - SET NET PRINTER MODE

INT 2A 0300 - NETWORK - CHECK DIRECT I/O

INT 2A 04-- - NETWORK - EXECUTE NetBIOS REQUEST

INT 2A 0500 - NETWORK - GET NETWORK RESOURCE AVAILABILITY

INT 2A 06-- - NETBIOS, LANtastic - NETWORK PRINT-STREAM CONTROL

INT 2A 07-- - PC Network v1.00 - RECEIVER.COM - ???

INT 2A 2001 - MS Networks or NETBIOS - ???

INT 2A 2002 - NETWORK - ???

INT 2A 2003 - NETWORK - ???

INT 2A 7802 - NETWORK - PC LAN PROG v1.31+ - GET LOGGED ON USER NAME

INT 2A 80-- - NETWORK - BEGIN DOS CRITICAL SECTION

INT 2A 81-- - NETWORK - END DOS CRITICAL SECTION

INT 2A 82-- - NETWORK - END DOS CRITICAL SECTIONS 0 THROUGH 7

INT 2A 84-- - NETWORK - KEYBOARD BUSY LOOP

INT 2A 86-- - PC Network v1.00 - RECEIVER.COM - ???

INT 2A 8700 - PRINT - BEGIN BACKGROUND PRINTING

INT 2A 8701 - PRINT - END BACKGROUND PRINTING

INT 2A 89-- - PC Network v1.00 - RECEIVER.COM - ???

INT 2A 90-- - IBM PC 3270 EMULATION PROGRAM - ???

INT 2A C2-- - Network - ???

INT 2A C4-- - PC Network v1.00 - RECEIVER.COM - ???

INT 2A D800 - Novell NetWare Lite - SERVER - SET ???

INT 2A D801 - Novell NetWare Lite - SERVER - RESET ???

INT 2A D850 - Novell NetWare Lite - CLIENT - INCREMENT ???

INT 2A D851 - Novell NetWare Lite - CLIENT - RESET ???

INT 2A D852 - Novell NetWare - DOS Requester v1.03 - ???

INT 2A D853 - Novell NetWare - DOS Requester v1.03 - ???

INT 2A E0-- - PC Network 1.00 - ???

INT 2A FF90 - PC/TCP PREDIR.EXE - ???

INT 2A FF91 - PC/TCP PREDIR.EXE - ???

INT 2A FF92 - PC/TCP PREDIR.EXE - INSTALLATION CHECK

INT 2A FF93 - PC/TCP PREDIR.EXE - ???

INT 2A FF94 - PC/TCP PREDIR.EXE - ???

INT 2A FF95 - PC/TCP PREDIR.EXE - GET CONFIGURATION STRINGS

INT 2A FF96 - PC/TCP PREDIR.EXE - SET PRINT JOB TERMINATION CONFIGURATION

INT 2A FF97 - PC/TCP PREDIR.EXE - GET PRINT JOB TERMINATION CONFIGURATION

Interrupts


INT 2B - DOS 2+ - RESERVED
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 2B - DOS 2+ - RESERVED

INT 2B ---- - DOS 2+ - RESERVED

Interrupts


INT 2C - DOS 2+ - RESERVED
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 2C - DOS 2+ - RESERVED

INT 2C ---- - DOS 2+ - RESERVED

INT 2C ---- - STARLITE architecture - KERNEL API

INT 2C ---- - Cloaking - CALL PROTECTED-MODE PASSALONG CHAIN

INT 2C 0000 - Cloaking - ALLOCATE GDT SELECTOR

INT 2C 0001 - Cloaking - FREE GDT SELECTOR

INT 2C 0002 - Cloaking - SET SEGMENT BASE ADDRESS

INT 2C 0003 - Cloaking - SET SEGMENT LIMIT

INT 2C 0004 - Cloaking - SET SEGMENT ACCESS MODE

INT 2C 0005 - Cloaking - SET SEGMENT EXTENDED ACCESS MODE

INT 2C 0006 - Cloaking - GET PROTECTED-MODE INTERRUPT VECTOR

INT 2C 0007 - Cloaking - SET PROTECTED-MODE INTERRUPT VECTOR

INT 2C 0008 - Cloaking - GET PASSALONG ADDRESS

INT 2C 0009 - Cloaking - SET PASSALONG ADDRESS

INT 2C 000A - Cloaking - GET BASE ADDRESS OF GDT SELECTOR

INT 2C 000B - Cloaking - GET SELECTOR LIMIT

INT 2C ---- - RM386 v6.00 - CLOAKING - RESERVED FOR CLOAKED BIOS USE UNDER WINDOWS

INT 2C 000F - Cloaking v1.01 - "Simulate_Shell_Event"

INT 2C 0011 - Cloaking v1.01 - "Switch_VMs_and_Call_back"

INT 2C 0012 - Cloaking v1.01 - "Query_Current_VM"

INT 2C 0013 - Cloaking v1.01 - "Issue_System_Modal_Message"

INT 2C 001D - Cloaking v1.01 - GET INT 2C API HANDLER ENTRY POINT

INT 2C 001E - Cloaking v1.01 - CLEAR CRITICAL SECTION

INT 2C 001F - Cloaking v1.01 - SET CRITICAL SECTION

INT 2C 0020 - Cloaking - GET SIZE OF PROTECTED-MODE STATE

INT 2C 0021 - Cloaking - SAVE PROTECTED-MODE STATE

INT 2C 0022 - Cloaking - RESTORE PROTECTED-MODE STATE

INT 2C 0023 - Cloaking - ISSUE PROTECTED-MODE XMS CALL

INT 2C 0024 - Cloaking - SET V86-MODE STACK

INT 2C 0025 - Cloaking - CALL V86-MODE PROCEDURE

INT 2C 0026 - Cloaking - CALL V86-MODE INTERRUPT HANDLER

INT 2C 0027 - Cloaking - CHAIN TO V86-MODE INTERRUPT HANDLER

INT 2C 0028 - Cloaking - GET ESP0 FROM TSS

INT 2C 0029 - Cloaking - SET SECONDARY STACK

INT 2C 002A - Cloaking - SET 8259 IRQ BASE VECTORS

INT 2C 002B - Cloaking - PROTECTED-MODE VIRTUAL DMA SERVICES

INT 2C 002C - Cloaking - GET PORT-TRAPPING PASSALONG

INT 2C 002D - Cloaking - SET PORT-TRAPPING PASSALONG

INT 2C 002E - Cloaking - TRAP I/O PORT

INT 2C 002F - Cloaking - UNTRAP I/O PORT

INT 2C 0030 - Cloaking - GET TRAPPING STATE OF SPECIFIED PORT

INT 2C 0031 - RM386 v6.00 - BUG

INT 2C 0031 - Cloaking v1.01 - ALLOCATE V86 CALLBACK

INT 2C 0032 - Cloaking v1.01 - FREE V86 CALLBACK

INT 2C 0033 - Cloaking v1.01 - REGISTER CLOAKING CLIENT

INT 2C 0034 - Cloaking v1.01 - UNREGISTER CLOAKING CLIENT

Interrupts


INT 2D - DOS 2+ - RESERVED
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 2D - DOS 2+ - RESERVED

INT 2D ---- - DOS 2+ - RESERVED

INT 2D ---- - ALTERNATE MULTIPLEX INTERRUPT SPECIFICATION (AMIS) [v3.5.1]

INT 2D --10 - RATSR 2.0+ - GET STATUS

INT 2D --10 - dLite 1.0+ - GET PARAMETER BLOCK ADDRESS

INT 2D --10 - Burnout Plus v3.00 - GET STATE/CONTROL INFORMATION

INT 2D --10 - Screen Thief v1.00 - FREE HIGH MEMORY BUFFERS

INT 2D --10 - RAMLIGHT v1.0 - GET MONITORING INFORMATION

INT 2D --10 - DTown Utilities v1.40+ - EXTENDED API INSTALLATION CHECK

INT 2D --11 - dLite 1.0+ - CHECK FOR dPressed FILE AND GET ORIGINAL SIZE

INT 2D --11 - DTown Utilities v1.40+ - UTILITY INSTALLATION CHECK

INT 2D --12 - dLite 1.0+ - CHECK FOR dPressed FILE AND GET COMPRESSED SIZE

INT 2D --20 - DTown Utilities v1.40+ - GET POP-UP HANDLER ADDRESS

INT 2D --21 - DTown Utilities v1.40+ - POP UP

INT 2D --50 - DTown Utilities v1.40+ - MEMORY VIEW SET ADDRESS

INT 2D --51 - DTown Utilities v1.40+ - MEMORY VIEW SET REFERENCE

INT 2D --DC - DAISY.SYS - BROADCAST: CHAIN RESCANNED

Interrupts


INT 2E - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 2E - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION

INT 2E ---- - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION

INT 2E ---- - Windows NT - NATIVE API

INT 2E ---- - 4DOS v2.x-3.03 SHELL2E.COM - UNINSTALL

Interrupts


INT 2F - Multiplex
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 2F - Multiplex

INT 2F ---- - Multiplex - NOTES

INT 2F ---- - BMB Compuscience Canada Utilities Interface - INSTALLATION CHECK

INT 2F ---- - Ross Wentworth's Turbo Pascal POPUP LIBRARY

INT 2F ---- - CiriSOFT Spanish University of Valladolid TSR's Interface

INT 2F 00-- - DOS 2.x only PRINT.COM - ???

INT 2F 00-- - PSPRINT - PRINT JOB CONTROL

INT 2F 0080 - DOS 3.1+ PRINT - GIVE PRINT A TIME SLICE

INT 2F 00D8 - Personal NetWare - VLM - ???

INT 2F 01-- - DOS 2.x only PRINT.COM - ???

INT 2F 0100 - DOS 3.0+ PRINT - INSTALLATION CHECK

INT 2F 0100 - PrintCache 3.1 PRINT.COM - INSTALLATION CHECK

INT 2F 0101 - DOS 3.0+ PRINT - SUBMIT FILE FOR PRINTING

INT 2F 0101 - PrintCache v3.1 PRINT.COM - SUBMIT FILE FOR PRINTING

INT 2F 0102 - DOS 3.0+ PRINT - REMOVE FILE FROM PRINT QUEUE

INT 2F 0103 - DOS 3.0+ PRINT - CANCEL ALL FILES IN PRINT QUEUE

INT 2F 0104 - DOS 3.0+ PRINT - FREEZE PRINT QUEUE TO READ JOB STATUS

INT 2F 0105 - DOS 3.0+ PRINT - RESTART PRINT QUEUE AFTER STATUS READ

INT 2F 0106 - DOS 3.3+ PRINT - GET PRINTER DEVICE

INT 2F 0107 - PrintCache v3.1 PRINT.COM - SET TRAILING FORM FEEDS

INT 2F 0200 - PC LAN PROGRAM REDIR/REDIRIFS internal - INSTALLATION CHECK

INT 2F 0201 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

INT 2F 0202 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

INT 2F 0203 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

INT 2F 0204 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

INT 2F ---- - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

INT 2F 0500 - DOS 3.0+ CRITICAL ERROR HANDLER - INSTALLATION CHECK

INT 2F 05-- - DOS 3.0+ CRITICAL ERROR HANDLER - EXPAND ERROR INTO STRING

INT 2F 0600 - DOS 3.0+ ASSIGN - INSTALLATION CHECK

INT 2F 0601 - DOS 3.0+ ASSIGN - GET DRIVE ASSIGNMENT TABLE

INT 2F 0800 - DRIVER.SYS support - INSTALLATION CHECK

INT 2F 0801 - DRIVER.SYS support - ADD NEW BLOCK DEVICE

INT 2F 0802 - DRIVER.SYS support - EXECUTE DEVICE DRIVER REQUEST

INT 2F 0803 - DOS 4.0+ DRIVER.SYS support - GET DRIVE DATA TABLE LIST

INT 2F 1000 - SHARE - INSTALLATION CHECK

INT 2F 1001 - DR-DOS 6.0 SHARE internal - SET ???

INT 2F 1040 - DOS 4 only SHARE internal - ???

INT 2F 1080 - DOS 4 only SHARE internal - TURN ON FILE SHARING CHECKS

INT 2F 1081 - DOS 4 only SHARE internal - TURN OFF FILE SHARING CHECKS

INT 2F 10FE - Novell DOS 7 DELWATCH.EXE - INSTALLATION CHECK

INT 2F 10FF - Multiplex - DR-DOS 5.0 - ???

INT 2F 1100 - NETWORK REDIRECTOR - INSTALLATION CHECK

INT 2F 1100 - MSCDEX (MS CD-ROM Extensions) - INSTALLATION CHECK

INT 2F 1101 - NETWORK REDIRECTOR - REMOVE REMOTE DIRECTORY

INT 2F 1102 - IFSFUNC.EXE (DOS 4.x only) - REMOVE REMOTE DIRECTORY

INT 2F 1103 - NETWORK REDIRECTOR - MAKE REMOTE DIRECTORY

INT 2F 1104 - IFSFUNC.EXE (DOS 4.x only) - MAKE REMOTE DIRECTORY

INT 2F 1105 - NETWORK REDIRECTOR - CHDIR

INT 2F 1106 - NETWORK REDIRECTOR - CLOSE REMOTE FILE

INT 2F 1107 - NETWORK REDIRECTOR - COMMIT REMOTE FILE

INT 2F 1108 - NETWORK REDIRECTOR - READ FROM REMOTE FILE

INT 2F 1109 - NETWORK REDIRECTOR - WRITE TO REMOTE FILE

INT 2F 110A - NETWORK REDIRECTOR (DOS 3.x only) - LOCK REGION OF FILE

INT 2F 110A - NETWORK REDIRECTOR (DOS 4.0+) - LOCK/UNLOCK REGION OF FILE

INT 2F 110B - NETWORK REDIRECTOR (DOS 3.x only) - UNLOCK REGION OF FILE

INT 2F 110C - NETWORK REDIRECTOR - GET DISK INFORMATION

INT 2F 110D - IFSFUNC.EXE (DOS 4.x only) - SET REMOTE FILE'S ATTRIBUTES

INT 2F 110E - NETWORK REDIRECTOR - SET REMOTE FILE'S ATTRIBUTES

INT 2F 110F - NETWORK REDIRECTOR - GET REMOTE FILE'S ATTRIBUTES AND SIZE

INT 2F 1110 - IFSFUNC.EXE (DOS 4.x only) - GET REMOTE FILE'S ATTRIBUTES AND SIZE

INT 2F 1111 - NETWORK REDIRECTOR - RENAME REMOTE FILE

INT 2F 1112 - IFSFUNC.EXE (DOS 4.x only) - RENAME REMOTE FILE

INT 2F 1113 - NETWORK REDIRECTOR - DELETE REMOTE FILE

INT 2F 1114 - IFSFUNC.EXE (DOS 4.x only) - DELETE REMOTE FILE

INT 2F 1115 - IFSFUNC.EXE (DOS 4.x only) - OPEN REMOTE FILE

INT 2F 1116 - NETWORK REDIRECTOR - OPEN EXISTING REMOTE FILE

INT 2F 1117 - NETWORK REDIRECTOR - CREATE/TRUNCATE REMOTE FILE

INT 2F 1118 - NETWORK REDIRECTOR - CREATE/TRUNCATE FILE WITHOUT CDS

INT 2F 1119 - NETWORK REDIRECTOR - FIND FIRST FILE WITHOUT CDS

INT 2F 111A - IFSFUNC.EXE (DOS 4.x only) - FIND NEXT FILE WITHOUT CDS

INT 2F 111B - NETWORK REDIRECTOR - FINDFIRST

INT 2F 111C - NETWORK REDIRECTOR - FINDNEXT

INT 2F 111D - NETWORK REDIRECTOR - CLOSE ALL REMOTE FILES FOR PROCESS (ABORT)

INT 2F 111E - NETWORK REDIRECTOR - DO REDIRECTION

INT 2F 111F - NETWORK REDIRECTOR - PRINTER SETUP

INT 2F 1120 - NETWORK REDIRECTOR - FLUSH ALL DISK BUFFERS

INT 2F 1121 - NETWORK REDIRECTOR - SEEK FROM END OF REMOTE FILE

INT 2F 1122 - NETWORK REDIRECTOR - PROCESS TERMINATION HOOK

INT 2F 1123 - NETWORK REDIRECTOR - QUALIFY REMOTE FILENAME

INT 2F 1124 - NETWORK REDIRECTOR - TURN OFF REMOTE PRINTER

INT 2F 1125 - NETWORK REDIRECTOR - REDIRECTED PRINTER MODE

INT 2F 1126 - NETWORK REDIRECTOR - REMOTE PRINTER ECHO ON/OFF

INT 2F 1127 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

INT 2F 1128 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

INT 2F 1129 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

INT 2F 112A - IFSFUNC.EXE (DOS 4.x only) - CLOSE ALL FILES FOR PROCESS

INT 2F 112B - IFSFUNC.EXE (DOS 4.x only) - GENERIC IOCTL

INT 2F 112C - NETWORK REDIRECTOR (DOS 4.0+) - "UPDATE_CB" - ???

INT 2F 112D - IFSFUNC.EXE (DOS 4.x only) - EXTENDED ATTRIBUTES

INT 2F 112E - NETWORK REDIRECTOR (DOS 4.0+) - EXTENDED OPEN/CREATE FILE

INT 2F 112F - IFSFUNC.EXE (DOS 4.x only) - IFS IOCTL

INT 2F 1130 - IFSFUNC.EXE (DOS 4.x only) - GET IFSFUNC SEGMENT

INT 2F 1180 - LAN Manager Enhanced DOS Services - ???

INT 2F 1182 - LAN Manager Enhanced DOS Services - INSTALL SERVICE

INT 2F 1184 - LAN Manager Enhanced DOS - ???

INT 2F 1186 - LAN Manager Enhanced DOS - DosReadAsynchNmPipe

INT 2F 118A - LAN Manager 2.0+ DOS Enhanced ENCRYPT.EXE - STREAM ENCRYPTION SERVICE

INT 2F 118B - LAN Manager Enhanced DOS - ???

INT 2F 118C - LAN Manager Enhanced DOS - ???

INT 2F 118E - LAN Manager Enhanced DOS - ???

INT 2F 118F - LAN Manager Enhanced DOS - DosWriteAsynchNmPipe

INT 2F 1190 - LAN Manager Enhanced DOS - DosReadAsynchNmPipe2

INT 2F 1191 - LAN Manager Enhanced DOS - DosWriteAsynchNmPipe2

INT 2F 1200 - DOS 3.0+ internal - INSTALLATION CHECK

INT 2F 1201 - DOS 3.0+ internal - CLOSE CURRENT FILE

INT 2F 1202 - DOS 3.0+ internal - GET INTERRUPT ADDRESS

INT 2F 1203 - DOS 3.0+ internal - GET DOS DATA SEGMENT

INT 2F 1204 - DOS 3.0+ internal - NORMALIZE PATH SEPARATOR

INT 2F 1205 - DOS 3.0+ internal - OUTPUT CHARACTER TO STANDARD OUTPUT

INT 2F 1206 - DOS 3.0+ internal - INVOKE CRITICAL ERROR

INT 2F 1207 - DOS 3.0+ internal - MAKE DISK BUFFER MOST-RECENTLY USED

INT 2F 1208 - DOS 3.0+ internal - DECREMENT SFT REFERENCE COUNT

INT 2F 1209 - DOS 3.0+ internal - FLUSH AND FREE DISK BUFFER

INT 2F 120A - DOS 3.0+ internal - PERFORM CRITICAL ERROR INTERRUPT

INT 2F 120B - DOS 3.0+ internal - SIGNAL SHARING VIOLATION TO USER

INT 2F 120C - DOS 3.0+ internal - OPEN DEVICE AND SET SFT OWNER/MODE

INT 2F 120D - DOS 3.0+ internal - GET DATE AND TIME

INT 2F 120E - DOS 3.0+ internal - MARK ALL DISK BUFFERS UNREFERENCED

INT 2F 120F - DOS 3.0+ internal - MAKE BUFFER MOST RECENTLY USED

INT 2F 1210 - DOS 3.0+ internal - FIND UNREFERENCED DISK BUFFER

INT 2F 1211 - DOS 3.0+ internal - NORMALIZE ASCIZ FILENAME

INT 2F 1212 - DOS 3.0+ internal - GET LENGTH OF ASCIZ STRING

INT 2F 1213 - DOS 3.0+ internal - UPPERCASE CHARACTER

INT 2F 1214 - DOS 3.0+ internal - COMPARE FAR POINTERS

INT 2F 1215 - DOS 3.0+ internal - FLUSH BUFFER

INT 2F 1216 - DOS 3.0+ internal - GET ADDRESS OF SYSTEM FILE TABLE ENTRY

INT 2F 1217 - DOS 3.0+ internal - GET CURRENT DIRECTORY STRUCTURE FOR DRIVE

INT 2F 1218 - DOS 3.0+ internal - GET CALLER'S REGISTERS

INT 2F 1219 - DOS 3.0+ internal - SET DRIVE???

INT 2F 121A - DOS 3.0+ internal - GET FILE'S DRIVE

INT 2F 121B - DOS 3.0+ internal - SET YEAR/LENGTH OF FEBRUARY

INT 2F 121C - DOS 3.0+ internal - CHECKSUM MEMORY

INT 2F 121D - DOS 3.0+ internal - SUM MEMORY

INT 2F 121E - DOS 3.0+ internal - COMPARE FILENAMES

INT 2F 121F - DOS 3.0+ internal - BUILD CURRENT DIRECTORY STRUCTURE

INT 2F 1220 - DOS 3.0+ internal - GET JOB FILE TABLE ENTRY

INT 2F 1221 - DOS 3.0+ internal - CANONICALIZE FILE NAME

INT 2F 1222 - DOS 3.0+ internal - SET EXTENDED ERROR INFO

INT 2F 1223 - DOS 3.0+ internal - CHECK IF CHARACTER DEVICE

INT 2F 1224 - DOS 3.0+ internal - SHARING RETRY DELAY

INT 2F 1225 - DOS 3.0+ internal - GET LENGTH OF ASCIZ STRING

INT 2F 1226 - DOS 3.3+ internal - OPEN FILE

INT 2F 1227 - DOS 3.3+ internal - CLOSE FILE

INT 2F 1228 - DOS 3.3+ internal - MOVE FILE POINTER

INT 2F 1229 - DOS 3.3+ internal - READ FROM FILE

INT 2F 122A - DOS 3.3+ internal - SET FASTOPEN ENTRY POINT

INT 2F 122B - DOS 3.3+ internal - IOCTL

INT 2F 122C - DOS 3.3+ internal - GET DEVICE CHAIN

INT 2F 122D - DOS 3.3+ internal - GET EXTENDED ERROR CODE

INT 2F 122E - DOS 4.0+ internal - GET OR SET ERROR TABLE ADDRESSES

INT 2F 122F - DOS 4.x internal - SET DOS VERSION NUMBER TO RETURN

INT 2F 12FF - DR-DOS 6, Novell DOS 7 - EMM386.EXE - VIDEO MEMORY SPACE CONTROL

INT 2F 12FF - Novell DOS 7 - SCRIPT.EXE - GET ???

INT 2F 12FF - Novell DOS 7 - EMM386.EXE - GET VERSION???

INT 2F 12FF - Novell DOS 7 - EMM386.EXE - ???

INT 2F 12FF - Novell DOS 7 - EMM386.EXE - CHECK IF MULTITASKING SUPPORT LOADED???

INT 2F 13-- - DOS 3.2+ - SET DISK INTERRUPT HANDLER

INT 2F 13-- - MS-NET - ???

INT 2F 1400 - NLSFUNC.COM - INSTALLATION CHECK

INT 2F 1400 - European MS-DOS 4.0 POPUP - "CheckPu" - INSTALLATION CHECK

INT 2F 1401 - NLSFUNC.COM - CHANGE CODE PAGE

INT 2F 1401 - European MS-DOS 4.0 POPUP - "PostPu" - OPEN/CLOSE POPUP SCREEN

INT 2F 1402 - NLSFUNC.COM - GET EXTENDED COUNTRY INFO

INT 2F 1402 - European MS-DOS 4.0 POPUP - "SavePu" - SAVE POPUP SCREEN

INT 2F 1403 - NLSFUNC.COM - SET CODE PAGE

INT 2F 1403 - European MS-DOS 4.0 POPUP - "RestorePu" - RESTORE SCREEN

INT 2F 1404 - NLSFUNC.COM - GET COUNTRY INFO

INT 2F 14FE - DR-DOS 5.0 NLSFUNC - GET EXTENDED COUNTRY INFORMATION

INT 2F 14FF - DR-DOS 5.0 NLSFUNC - PREPARE CODE PAGE

INT 2F 1500 - DOS 4.00 GRAPHICS.COM - INSTALLATION CHECK

INT 2F 1500 - CD-ROM - INSTALLATION CHECK

INT 2F 1500 - CDBLITZ v2.11 - INSTALLATION CHECK

INT 2F 1500 - CDBLITZ v2.11 - GET STATISTICS

INT 2F 1500 - CDBLITZ v2.11 - ENABLE CACHE

INT 2F 1500 - CDBLITZ v2.11 - DISABLE CACHE

INT 2F 1500 - CDBLITZ v2.11 - SET 'MAX' MODE (CACHE BOTH DIRECTORIES AND DATA)

INT 2F 1500 - CDBLITZ v2.11 - SET 'MIN' MODE (CACHE ONLY DIRECTORY ENTRIES)

INT 2F 1500 - CDBLITZ v2.11 - FLUSH CACHE

INT 2F 1500 - CDBLITZ v2.11 - GET CACHE STATISTICS

INT 2F 1500 - CDBLITZ v2.11 - UNINSTALL

INT 2F 1501 - CD-ROM - GET DRIVE DEVICE LIST

INT 2F 1502 - CD-ROM - GET COPYRIGHT FILE NAME

INT 2F 1503 - CD-ROM - GET ABSTRACT FILE NAME

INT 2F 1504 - CD-ROM - GET BIBLIOGRAPHIC DOC FILE NAME

INT 2F 1505 - CD-ROM - READ VTOC

INT 2F 1506 - CD-ROM - TURN DEBUGGING ON

INT 2F 1507 - CD-ROM - TURN DEBUGGING OFF

INT 2F 1508 - CD-ROM - ABSOLUTE DISK READ

INT 2F 1509 - CD-ROM - ABSOLUTE DISK WRITE

INT 2F 150A - CD-ROM - RESERVED

INT 2F 150B - CD-ROM v2.00+ - DRIVE CHECK

INT 2F 150C - CD-ROM v2.00+ - GET MSCDEX.EXE VERSION (VERSION CHECK)

INT 2F 150D - CD-ROM v2.00+ - GET CD-ROM DRIVE LETTERS

INT 2F 150E - CD-ROM v2.00+ - GET/SET VOLUME DESCRIPTOR PREFERENCE

INT 2F 150F - CD-ROM v2.00+ - GET DIRECTORY ENTRY

INT 2F 1510 - CD-ROM v2.10+ - SEND DEVICE DRIVER REQUEST

INT 2F 15FF - CD-ROM - CORELCDX - INSTALLATION CHECK

INT 2F 1600 - MS Windows - WINDOWS ENHANCED MODE INSTALLATION CHECK

INT 2F 1602 - MS Windows/386 2.x - GET API ENTRY POINT

INT 2F 1603 - MS Windows/386 - GET INSTANCE DATA

INT 2F 1605 - MS Windows - WINDOWS ENHANCED MODE & 286 DOSX INIT BROADCAST

INT 2F 1606 - MS Windows - WINDOWS ENHANCED MODE & 286 DOSX EXIT BROADCAST

INT 2F 1607 - MS Windows - VIRTUAL DEVICE CALL OUT API

INT 2F 1607 - MS Windows - "V86MMGR" VIRTUAL DEVICE API

INT 2F 1607 - MS Windows - "VMD" VIRTUAL MOUSE DEVICE API

INT 2F 1607 - MS Windows 3.1 - "BLOCKDEV" VIRTUAL HARD DISK DEVICE API

INT 2F 1607 - MS Windows - "VNETBIOS" VIRTUAL DEVICE API

INT 2F 1607 - MS Windows - "DOSMGR" VIRTUAL DEVICE API

INT 2F 1607 - MS Windows - "VMPoll" VIRTUAL DEVICE - IDLE CALLOUT

INT 2F 1607 - MS Windows - "PageFile" VIRTUAL DEVICE - GET LOCK BYTE

INT 2F 1607 - Rational Systems DOS/4GW - ???

INT 2F 1608 - MS Windows - WINDOWS ENHANCED MODE INIT COMPLETE BROADCAST

INT 2F 1609 - MS Windows - WINDOWS ENHANCED MODE BEGIN EXIT BROADCAST

INT 2F 160A - MS Windows 3.1 - IDENTIFY WINDOWS VERSION AND TYPE

INT 2F 160B - MS Windows 3.1 - IDENTIFY TSRs

INT 2F 160C - MS Windows 3.1 - DETECT ROMs

INT 2F 1610 - XMS v1.x only - GET DRIVER ADDRESS

INT 2F 1680 - MS Windows, DPMI, various - RELEASE CURRENT VIRTUAL MACHINE TIME-SLICE

INT 2F 1681 - MS Windows 3+ - BEGIN CRITICAL SECTION

INT 2F 1682 - MS Windows 3+ - END CRITICAL SECTION

INT 2F 1683 - MS Windows 3+ - GET CURRENT VIRTUAL MACHINE ID

INT 2F 1684 - MS Windows - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - VPICD - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - VTD - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - REBOOT - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - VMD - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - DOSMGR - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - SHELL - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - PAGEFILE - GET DEVICE API ENTRY POINT

INT 2F 1684 - Intel Plug-and-Play - CONFIGURATION MANAGER - GET ENTRY POINT

INT 2F 1684 - MS Windows - VADMAD - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - VSWITCHD - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - PHARLAPX - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - EDOS - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - WPS - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - POSTMSG - GET DEVICE API ENTRY POINT

INT 2F 1684 - MS Windows - VbillD - GET DEVICE API ENTRY POINT

INT 2F 1685 - MS Windows - SWITCH VMs AND CALLBACK

INT 2F 1686 - DOS Protected-Mode Interface - DETECT MODE

INT 2F 1687 - DOS Protected-Mode Interface - INSTALLATION CHECK

INT 2F 1688 - MS Windows 3.0, 386MAX v6.01 - GET ALIAS SELECTOR TO LDT

INT 2F 1689 - MS Windows 3.0+ - KERNEL IDLE CALL

INT 2F 168A - DPMI 0.9+ - GET VENDOR-SPECIFIC API ENTRY POINT

INT 2F 168B - MS Windows 3.1 - SET FOCUS TO SPECIFIED VIRTUAL MACHINE

INT 2F 168C - MS Windows 3.1 - RESTART COMMAND

INT 2F 1700 - MS Windows "WINOLDAP" - IDENTIFY WinOldAp VERSION

INT 2F 1701 - MS Windows "WINOLDAP" - OPEN CLIPBOARD

INT 2F 1702 - MS Windows "WINOLDAP" - EMPTY CLIPBOARD

INT 2F 1703 - MS Windows "WINOLDAP" - SET CLIPBOARD DATA

INT 2F 1704 - MS Windows "WINOLDAP" - GET CLIPBOARD DATA SIZE

INT 2F 1705 - MS Windows "WINOLDAP" - GET CLIPBOARD DATA

INT 2F 1708 - MS Windows "WINOLDAP" - CloseClipboard

INT 2F 1709 - MS Windows "WINOLDAP" - COMPACT CLIPBOARD

INT 2F 170A - MS Windows "WINOLDAP" - GET DEVICE CAPABILITIES

INT 2F 18-- - MS-Manager

INT 2F 1900 - DOS 4.x only SHELLB.COM - INSTALLATION CHECK

INT 2F 1901 - DOS 4.x only SHELLB.COM - SHELLC.EXE INTERFACE

INT 2F 1902 - DOS 4.x only SHELLB.COM - COMMAND.COM INTERFACE

INT 2F 1903 - DOS 4.x only SHELLB.COM - COMMAND.COM interface

INT 2F 1904 - DOS 4.x only SHELLB.COM - SHELLB transient to TSR intrface

INT 2F 1A00 - DOS 4.0+ ANSI.SYS - INSTALLATION CHECK

INT 2F 1A00 - ANSIPLUS.SYS v2.00+ - INSTALLATION CHECK

INT 2F 1A00 - AVATAR.SYS - INSTALLATION CHECK

INT 2F 1A01 - DOS 4.0+ ANSI.SYS internal - GET/SET DISPLAY INFORMATION

INT 2F 1A02 - DOS 4.0+ ANSI.SYS internal - MISCELLANEOUS REQUESTS

INT 2F 1A21 - AVATAR.SYS - SET DRIVER STATE

INT 2F 1A3C - AVATAR.SYS v0.11 - ???

INT 2F 1A3E - AVATAR.SYS v0.11 - ???

INT 2F 1A3F - AVATAR.SYS - QUERY DRIVER STATE

INT 2F 1A42 - AVATAR Serial Dispatcher - INSTALL IRQ3 HANDLER

INT 2F 1A43 - AVATAR Serial Dispatcher - INSTALL IRQ4 HANDLER

INT 2F 1A44 - AVATAR.SYS v0.11+ - GET DATA SEGMENT

INT 2F 1A52 - AVATAR.SYS v0.11 - GET ???

INT 2F 1A53 - AVATAR.SYS v0.11 - ???

INT 2F 1A62 - AVATAR Serial Dispatcher - UNINSTALL IRQ3 HANDLER

INT 2F 1A63 - AVATAR Serial Dispatcher - UNINSTALL IRQ4 HANDLER

INT 2F 1A72 - AVATAR.SYS v0.11 - GET ??? SIZE

INT 2F 1A7B - AVATAR.SYS v0.11 - ???

INT 2F 1A7D - AVATAR.SYS v0.11 - ???

INT 2F 1AA5 - ANSIPLUS v4.00+ - GET/SET ANSIPLUS CLIPBOARD

INT 2F 1AA6 - ANSIPLUS v4.00+ - ENABLE/DISABLE ANSIPLUS DRIVER

INT 2F 1AA7 - ANSIPLUS v4.00+ - ENABLE/DISABLE ANSIPLUS FEATURES

INT 2F 1AA8 - ANSIPLUS v3.10+ - GET NEXT ANSIPLUS SCROLLBACK LINE

INT 2F 1AA9 - ANSIPLUS v3.10+ - GET ANSIPLUS SCROLLBACK INFORMATION

INT 2F 1AAA - ANSIPLUS v3.01+ - GET/SET ANSIPLUS SCREEN SAVER BLANKING TIME

INT 2F 1AAB - ANSIPLUS v3.01+ - SET ANSIPLUS KEY REPEAT RATE

INT 2F 1AAC - ANSIPLUS v3.00+ - LOAD CHARACTER GENERATOR

INT 2F 1AAD - ANSIPLUS v2.00+ - ANSIPLUS DEVICE STATUS REPORT

INT 2F 1AAD - AVATAR.SYS v0.11 - ???

INT 2F 1AAC - ANSIPLUS v3.00+ - LOAD CHARACTER GENERATOR

INT 2F 1B00 - DOS 4+ XMA2EMS.SYS extension internal - INSTALLATION CHECK

INT 2F 1B-- - DOS 4+ XMA2EMS.SYS extension internal - GET HIDDEN FRAME INFORMATION

INT 2F 2300 - DR-DOS 5.0 GRAFTABL - INSTALLATION CHECK

INT 2F 23-- - DR-DOS 5.0 GRAFTABL - GET GRAPHICS DATA

INT 2F 2700 - DR-DOS 6.0 TaskMAX - INSTALLATION CHECK

INT 2F 2701 - DR-DOS 6.0 TaskMAX - GET STATUS

INT 2F 2702 - DR-DOS 6.0 TaskMAX - GET PER-TASK EMS LIMIT

INT 2F 2703 - DR-DOS 6.0 TaskMAX - SET PER-TASK EMS LIMIT

INT 2F 2704 - DR-DOS 6.0 TaskMAX - REGISTER/UNREGISTER TASK MANAGER

INT 2F 2705 - DR-DOS 6.0 TaskMAX - ENABLE/DISABLE DIRECT SWITCHING

INT 2F 2706 - DR-DOS 6.0 TaskMAX - SWITCH TO SPECIFIED TASK

INT 2F 2707 - DR-DOS 6.0 TaskMAX - CREATE NEW TASK

INT 2F 2708 - DR-DOS 6.0 TaskMAX - DELETE TASK

INT 2F 2709 - DR-DOS 6.0 TaskMAX - NAME TASK

INT 2F 270A - DR-DOS 6.0 TaskMAX - CONVERT TASK INDEX TO TASK ID

INT 2F 270B - DR-DOS 6.0 TaskMAX - CONVERT TASK ID TO TASK INDEX

INT 2F 270C - DR-DOS 6.0 TaskMAX - CHECK OPEN FILES

INT 2F 270D - DR-DOS 6.0 TaskMAX - CHECK IF TASK RUNNING PRIMARY COMMAND INTERPRETER

INT 2F 270E - DR-DOS 6.0 TaskMAX - GET/SET TEXT PASTE LEAD-IN

INT 2F 270F - DR-DOS 6.0 TaskMAX - GET/SET NUMERIC PASTE LEAD-IN

INT 2F 2710 - DR-DOS 6.0 TaskMAX - GET/SET PASTE LINE TERMINATOR STRING

INT 2F 2711 - DR-DOS 6.0 TaskMAX - GET/SET NUMERIC PASTE DECIMAL POINT

INT 2F 2712 - DR-DOS 6.0 TaskMAX - INITIATE EXPORTING TASK DATA

INT 2F 2713 - DR-DOS 6.0 TaskMAX - INITIATE PASTE OPERATION

INT 2F 2714 - DR-DOS 6.0 TaskMAX - GET SWAP SPACE INFO

INT 2F 2715 - DR-DOS 6.0 TaskMAX - SWITCH TO TASK MANAGER

INT 2F 2716 - DR-DOS 6.0 TaskMAX - GET PASTE BUFFER STATUS

INT 2F 2717 - DR-DOS 6.0 TaskMAX - PASTE DATA DIRECTLY TO APPLICATION BUFFER

INT 2F 2718 - DR-DOS 6.0 TaskMAX - COPY DATA DIRECTLY INTO PASTE BUFFER

INT 2F 2719 - Novell DOS 7 TaskMGR - NOP

INT 2F 271C - Novell DOS 7 TaskMGR - ???

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

INT 2F 2781 - Novell DOS 7 TaskMGR - BEGIN CRITICAL SECTION???

INT 2F 2782 - Novell DOS 7 TaskMGR - END CRITICAL SECTION???

INT 2F 2783 - Novell DOS 7 - EMM386.EXE - GET ???

INT 2F 278F - Novell DOS 7 TaskMGR - ??? API

INT 2F 2A-- - Gammafax DOS Dispatcher INTERFACE

INT 2F 2E00 - Novell DOS 7 - GRAFTABL - INSTALLATION CHECK

INT 2F 2E-- - Novell DOS 7 - GRAFTABL - GET FONT TABLE

INT 2F 3900 - Kingswood TSR INTERFACE - COMPATIBILITY MODE

INT 2F 39-- - Kingswood TSR INTERFACE - INSTALLATION CHECK

INT 2F 39-- - Kingswood TSR INTERFACE - REMOVAL CHECK

INT 2F 39-- - Kingswood TSR INTERFACE - APPLICATION-SPECIFIC FUNCTION CALLS

INT 2F 3901 - Kingswood TSR Windows - OPEN WINDOW

INT 2F 3901 - Kingswood TSR Windows - HIDE WINDOWS

INT 2F 3901 - Kingswood TSR Windows - SHOW WINDOWS

INT 2F 3901 - Kingswood TSR Windows - CLOSE WINDOW

INT 2F 3901 - Kingswood TSR Windows - SET WINDOW TITLE

INT 2F 3901 - Kingswood TSR Windows - POSITION CURSOR

INT 2F 3901 - Kingswood TSR Windows - DISPLAY STRING

INT 2F 3901 - Kingswood TSR Windows - SCROLL WINDOW

INT 2F 3901 - Kingswood TSR Windows - SOUND BEEPER

INT 2F 3901 - Kingswood TSR Windows - ADD OR REMOVE USER

INT 2F 3912 - Kingswood ANSI display driver - SET COMPATIBILITY MODE

INT 2F 3912 - Kingswood ANSI display driver - SET FLAGS

INT 2F 4000 - Windows 3.x (OS/2 2.x???) - GET VIRTUAL DEVICE DRIVER (VDD) CAPABLTIES

INT 2F 4001 - OS/2 compatibility box - SWITCHING DOS TO BACKGROUND

INT 2F 4002 - OS/2 compatibility box - SWITCHING DOS TO FOREGROUND

INT 2F 4003 - Windows 3.x - ENTERING VIDEO DRIVER CRITICAL SECTION

INT 2F 4004 - Windows 3.x - EXITING VIDEO DRIVER CRITICAL SECTION

INT 2F 4005 - Windows 3.x - SWITCHING DOS TO BACKGROUND

INT 2F 4006 - Windows 3.x - SWITCHING DOS TO FOREGROUND

INT 2F 4007 - Windows 3.x - ENABLE VDD TRAPPING OF VIDEO REGISTERS

INT 2F 4010 - OS/2 v2.0+ - INSTALLATION CHECK / GET VERSION

INT 2F 4040 - PharLap 286|DOS-Extender Lite v2.5 - ???

INT 2F 4100 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - INSTALLATION CHECK

INT 2F 4103 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - ???

INT 2F 4104 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - ???

INT 2F 42-- - LAN Manager 2.0 DOS Enhanced MSRV.EXE - MESSENGER SERVICE

INT 2F 4300 - EXTENDED MEMORY SPECIFICATION (XMS) v2+ - INSTALLATION CHECK

INT 2F 4308 - HIMEM.SYS v2.77+ - GET A20 HANDLER NUMBER

INT 2F 4309 - HIMEM.SYS v3.09+ - GET XMS HANDLE TABLE

INT 2F 4310 - EXTENDED MEMORY SPECIFICATION (XMS) v2+ - GET DRIVER ADDRESS

INT 2F 4310 - Cloaking - REAL-MODE API

INT 2F 4310 - Helix Netroom RM386 v6.00 - XMS EXTENSIONS

INT 2F 4310 - NEC PC-9800 - XMZ - PRIVATE API

INT 2F 4320 - HIMEM.SYS - Mach 20 SUPPORT

INT 2F 4330 - HIMEM.SYS v2.77+ - GET EXTERNAL A20 HANDLER ADDRESS

INT 2F 43E0 - DOS Protected Mode Services (DPMS) v1.0 - INSTALLATION CHECK

INT 2F 43E1 - DOS Protected Mode Services (DPMS) v1.0 - REGISTER CLIENT

INT 2F 43E2 - DOS Protected Mode Services (DPMS) v1.0 - ENABLE/DISABLE DPMS

INT 2F 43E3 - DOS Protected Mode Services (DPMS) v1.0 - DPMS STARTUP BROADCAST

INT 2F 43E4 - DOS Protected Mode Services (DPMS) v1.0 - DPMS EXIT BROADCAST

INT 2F 44-- - DOS Extender support???

INT 2F 4500 - Microsoft Profiler (PROF.COM/VPROD.386) - INSTALLATION CHECK

INT 2F 4501 - Microsoft Profiler (PROF.COM/VPROD.386) - SETUP PROFILER

INT 2F 4502 - Microsoft Profiler (PROF.COM/VPROD.386) - SET SAMPLING RATE

INT 2F 4503 - Microsoft Profiler (PROF.COM/VPROD.386) - START PROFILING

INT 2F 4504 - Microsoft Profiler (PROF.COM/VPROD.386) - STOP PROFILING

INT 2F 4505 - Microsoft Profiler (PROF.COM/VPROD.386) - CLEAR PROFILING DATA

INT 2F 4506 - Microsoft Profiler (PROF.COM/VPROD.386) - "ProfFlush"

INT 2F 4507 - Microsoft Profiler (PROF.COM/VPROD.386) - "ProfFinish"

INT 2F 4508 - Microsoft Profiler (PROF.COM/VPROD.386) - ALTERNATE SEGDEBUG IFACE

INT 2F 4601 - MS Windows WINOLDAP - SWITCHING ???

INT 2F 4602 - MS Windows WINOLDAP - SWITCHING ???

INT 2F 46-- - Windows/286 DOS Extender

INT 2F 4653 - F-PROT v1.x only - F-LOCK.EXE - API

INT 2F 4653 - F-PROT v1.x only - F-XCHK.EXE - API

INT 2F 4653 - F-PROT v1.x only - F-POPUP.EXE - API

INT 2F 4653 - F-PROT v1.x only - F-DLOCK.EXE - API

INT 2F 4680 - MS Windows v3.0 - INSTALLATION CHECK

INT 2F 47-- - ???

INT 2F 4800 - DOS 5+ DOSKEY - INSTALLATION CHECK

INT 2F 4800 - PCED v2.1 - INSTALLATION CHECK

INT 2F 4810 - DOS 5+ DOSKEY, PCED v2.1 - READ INPUT LINE FROM CONSOLE

INT 2F 48C0 - PCED v2.1 - PCED API

INT 2F 48C1 - PCED/VSTACK - INSTALLATION CHECK

INT 2F 48C2 - PCED/ATTRIB - INSTALLATION CHECK

INT 2F 48C3 - PCED/KEYDEF - INSTALLATION CHECK

INT 2F 48C4 - PCED/FLIST - INSTALLATION CHECK

INT 2F 48C5 - PCED/ASSOC - INSTALLATION CHECK

INT 2F 48C5 - PCED/ASSOC - VERSION CHECK

INT 2F 48C5 - PCED/ASSOC - ASSOCIATION TEST

INT 2F 49-- - ???

INT 2F 4A00 - DOS 5+ - FLOPPY-DISK LOGICAL DRIVE CHANGE NOTIFICATION

INT 2F 4A01 - DOS 5+ - QUERY FREE HMA SPACE

INT 2F 4A02 - DOS 5+ - ALLOCATE HMA SPACE

INT 2F 4A05 - DOS 5+ DOSSHELL - TASK SWITCHING API???

INT 2F 4A06 - DOS 5+ - DOS SUPERVISOR "REBOOT PANEL" - ADJUST MEMORY SIZE

INT 2F 4A07 - RESERVED FOR PROTMAN SUPPORT

INT 2F 4A10 - SMARTDRV v4.00+ - INSTALLATION CHECK AND HIT RATIOS

INT 2F 4A10 - Novell NWCACHE - ???

INT 2F 4A10 - SMARTDRV v4.00+ - FLUSH BUFFERS (COMMIT CACHE)

INT 2F 4A10 - Novell NWCACHE - ???

INT 2F 4A10 - SMARTDRV v4.00+ - RESET CACHE

INT 2F 4A10 - SMARTDRV v4.00+ - STATUS

INT 2F 4A10 - SMARTDRV v4.00+ - GET CACHE SIZE

INT 2F 4A10 - SMARTDRV v4.00+ - GET DOUBLE-BUFFER STATUS

INT 2F 4A10 - SMARTDRV v4.00+ - CHECK IF DRIVE CACHEABLE

INT 2F 4A10 - SMARTDRV v4.00+ - GET DEVICE DRIVER FOR DRIVE

INT 2F 4A10 - SMARTDRV v4.20+ - GET/SET FLUSH BEFORE PROMPT, CD-ROM SUPPORT

INT 2F 4A10 - SMARTDRV v4.00+ - GET ELEMENT STATUS TABLE

INT 2F 4A10 - SMARTDRV v4.00+ - SIGNAL SERIOUS ERROR

INT 2F 4A11 - DBLSPACE.BIN - "GetVersion" - INSTALLATION CHECK

INT 2F 4A11 - DBLSPACE.BIN - "GetDriveMapping" - GET DRIVE MAPPING

INT 2F 4A11 - DBLSPACE.BIN - "Swap Drive" - SWAP DRIVE LETTERS OF CVF AND HOST DRIVE

INT 2F 4A11 - DBLSPACE.BIN - "DSGetEntryPoints" - GET DEVICE DRIVER ENTRY POINTS

INT 2F 4A11 - DBLSPACE.BIN - "DSSetEntryPoints" - SET DEVICE DRIVER ENTRY POINTS

INT 2F 4A11 - DBLSPACE.BIN - "ActivateDrive" - MOUNT COMPRESSED DRIVE

INT 2F 4A11 - DBLSPACE.BIN - "DeactivateDrive" - UNMOUNT COMPRESSED DRIVE

INT 2F 4A11 - DBLSPACE.BIN - "GetDriveSpace" - GET SPACE AVAIL ON COMPRESSED DRIVE

INT 2F 4A11 - DBLSPACE.BIN - "GetFileFragmentSpace" - GET SIZE OF FRAGMENT HEAP

INT 2F 4A11 - DBLSPACE.BIN - "GetExtraInfo" - DETERMINE NUMBER OF DISK_UNIT STRUCTS

INT 2F 4A11 - DBLSPACE.BIN v6.2 - SET AUTOMOUNT DRIVES

INT 2F 4A11 - DBLSPACE.BIN v6.2 - GET AUTOMOUNT DRIVES

INT 2F 4A11 - DBLSPACE.BIN - RELOCATE

INT 2F 4A11 - DBLSPACE.BIN - GET RELOCATION SIZE

INT 2F 4A12 - Microsoft Realtime Compression Interface (MRCI) - RAM-BASED SERVER

INT 2F 4A12 - Stacker 4 LZS Compression Interface (LZSAPI)

INT 2F 4A13 - DBLSPACE.BIN - GET ??? ENTRY POINTS

INT 2F 4B-- - LAN Manager 2.0 DOS Enh NETWKSTA.EXE - NETWORK WORKSTATION REDIRECTOR

INT 2F 4B01 - DOS 5+ TASK SWITCHER - BUILD CALLOUT CHAIN

INT 2F 4B02 - DOS 5+ TASK SWITCHER - INSTALLATION CHECK

INT 2F 4B03 - DOS 5+ TASK SWITCHER - ALLOCATE SWITCHER ID

INT 2F 4B04 - DOS 5+ TASK SWITCHER - FREE SWITCHER ID

INT 2F 4B05 - DOS 5+ TASK SWITCHER - IDENTIFY INSTANCE DATA

INT 2F 4B06 - MS Windows - WIN.COM - GET ??? POINTER TO WIN.COM

INT 2F 4B20 - MS Windows 3 - WIN.COM - SET PROGRAM TO EXECUTE ON EXIT

INT 2F 4B80 - MS Windows - WSWAP.EXE - RESET INTERNAL VARIABLES

INT 2F 4C-- - Advanced Power Management

INT 2F 4D-- - ???

INT 2F 4E53 - SilverNET v2+ - INSTALLATION CHECK

INT 2F 4E53 - SilverNET - GET RUNTIME PARAMETER

INT 2F 4E53 - SilverNET - SET RUNTIME PARAMETERS

INT 2F 5100 - ODIHLP.EXE - INSTALLATION CHECK

INT 2F 5200 - JAM.SYS v1.10+ - "GetVersion" - INSTALLATION CHECK

INT 2F 5201 - JAM.SYS v1.10+ - "GetInfo" - GET COMPRESSED DRIVE INFORMATION

INT 2F 5202 - JAM.SYS v1.10+ - "Attach" - MOUNT COMPRESSED DRIVE

INT 2F 5203 - JAM.SYS v1.10+ - "Detach" - UNMOUNT COMPRESSED DRIVE

INT 2F 5204 - JAM.SYS v1.10+ - "Lock" - LOCK COMPRESSED DRIVE

INT 2F 5205 - JAM.SYS v1.10+ - "UnLock" - UNLOCK COMPRESSED DRIVE

INT 2F 5206 - JAM.SYS v1.10+ - "Read" - PHYSICAL READ DATA FROM JAM ARCHIVE

INT 2F 5207 - JAM.SYS v1.10+ - "Write" - PHYSICAL WRITE DATA TO JAM ARCHIVE

INT 2F 53-- - POWER.EXE - APM event broadcasting???

INT 2F 530B - ??? (MOUSEPWR.COM, others) - ???

INT 2F 5400 - POWER.EXE - INSTALLATION CHECK

INT 2F 5401 - POWER.EXE - GET/SET POWER STATUS

INT 2F 5402 - POWER.EXE - GET/SET IDLE DETECTION STRATEGY

INT 2F 5403 - POWER.EXE - GET/SET ADVANCED POWER MANAGEMENT SETTING

INT 2F 5453 - TesSeRact RAM-RESIDENT PROGRAM INTERFACE

INT 2F 5480 - POWER.EXE - GET/SET ???

INT 2F 5481 - POWER.EXE - GET STATISTICS

INT 2F 5482 - POWER.EXE - GET/SET APM POLLING FREQUENCY

INT 2F 548F - POWER.EXE - GET/SET ???

INT 2F 5500 - DOS 5+ - COMMAND.COM INTERFACE

INT 2F 5501 - DOS 5+ - ROM COMMAND.COM INTERFACE

INT 2F 5600 - INTERLNK - INSTALLATION CHECK

INT 2F 5601 - INTERLNK - CHECK IF REDIRECTED DRIVE

INT 2F 5602 - INTERLNK - GET ???

INT 2F 57-- - ???

INT 2F 5758 - Helix Multimedia Cloaking - CACHECLK - INSTALLATION CHECK

INT 2F 5D00 - PCMCIA - AWARD PCDISK - GET INFO FROM DRIVER ???

INT 2F 5D01 - PCMCIA - AWARD PCDISK - PUT INFO INTO DRIVER ???

INT 2F 60FF - IPLAY v1.00b - INSTALLATION CHECK

INT 2F 60FF - IPLAY v1.00b - GET DATA SEGMENT

INT 2F 6282 - PC Tools v7.0+ VDEFEND, VSAFE, VWATCH, DATAMON - SET ??? ADDRESS

INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT       - INSTALLATION CHECK

INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET OPTIONS

INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - SET OPTION??? FLAGS

INT 2F 6284 - PC Tools v8 DATAMON, v9+ DPROTECT - ???

INT 2F 6400 - SCRNSAV2.COM - INSTALLATION CHECK

INT 2F 7000 - License Service API - INSTALLATION CHECK

INT 2F 7001 - License Service API - REQUEST LICENSE

INT 2F 7002 - License Service API - RELEASE LICENSE

INT 2F 7003 - License Service API - UPDATE

INT 2F 7004 - License Service API - GET ERROR

INT 2F 7005 - License Service API - QUERY LICENSE

INT 2F 7041 - HP 200LX - KEY200 - INSTALLATION CHECK

INT 2F 7200 - SRDISK v1.30+ - INSTALLATION CHECK

INT 2F 7201 - SRDISK v2.02 - GET CODE/DATA SEGMENT

INT 2F 7A00 - Novell NetWare - LOW-LEVEL API (IPX) INSTALLATION CHECK

INT 2F 7A10 - Novell NetWare - TBMI v1.1+ - GET TBMI STATUS

INT 2F 7A11 - Novell NetWare - TBMI v1.1+ - GET INT2F HANDLERS

INT 2F 7A12 - Novell NetWare - TBMI v1.1+ - GET INT64 HANDLERS

INT 2F 7A13 - Novell NetWare - TBMI v1.1+ - GET INT7A HANDLERS

INT 2F 7A14 - Novell NetWare - TBMI v1.1+ - GET STATISTICS

INT 2F 7A15 - Novell NetWare - TBMI v1.1 only - RESET ???

INT 2F 7A16 - Novell NetWare - TBMI v1.1 only - ???

INT 2F 7A17 - Novell NetWare - TBMI v1.1 only - ???

INT 2F 7A18 - Novell NetWare - TASKID v1.0 - INSTALLATION CHECK

INT 2F 7A19 - Novell NetWare - TASKID v1.0 - GET INT 08 HANDLERS

INT 2F 7A1A - Novell NetWare - TASKID v1.0 - GET INT 2F HANDLERS

INT 2F 7A1B - Novell NetWare - TASKID v1.0 - GET DIAGNOSTICS INFORMATION

INT 2F 7A1C - Novell NetWare - TBMI v1.1+ - ???

INT 2F 7A1D - Novell NetWare - TBMI v1.1+ - ???

INT 2F 7A1E - Novell NetWare - TBMI v1.1+ - ???

INT 2F 7A20 - Novell NetWare - Adv NetWare 4.0 DOS Requester - GET VLM CALL ADDRESS

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM CallA ADDRESS

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM MULTIPLEX ADDRESS

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM PARSE API ADDRESS

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM MULTICAST CALLOUT

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM INT 24 ADDRESS

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

INT 2F 7A21 - Novell NetWare - DOS Requester - BROADCAST CALLBACK

INT 2F 7A22 - Novell NetWare - DOS Requester - BROADCAST/SFT3 INFORM

INT 2F 7A2F - Novell NetWare - IPXODI v2.12 - GET ???

INT 2F 7A2F - Personal NetWare - HRMIB - UNINSTALL

INT 2F 7A40 - Novell NetWare - TCP/IP Protocol Stack - INSTALLATION CHECK

INT 2F 7A41 - Novell NetWare - TCP/IP Protocol Stack - WINDOWS SUPPORT???

INT 2F 7A42 - Novell NetWare - TCPIP.EXE v4.1 - GET ??? ENTRY POINT

INT 2F 7A43 - Novell NetWare - TCPIP.EXE v4.1 - GET ???

INT 2F 7A44 - Novell NetWare - TCPIP.EXE v4.1 - SET ???

INT 2F 7A4C - Novell NetWare - TCPIP.EXE v4.1 - GET ???

INT 2F 7A4D - Novell NetWare - ???

INT 2F 7A4E - Novell LAN Workplace for DOS - RARPD.EXE - INSTALLATION CHECK

INT 2F 7A4F - Novell LAN Workplace for DOS - RARPD.EXE - UNINSTALL

INT 2F 7A4F - Novell NetWare - SNMP.EXE - INSTALLATION CHECK

INT 2F 7A4F - Novell NetWare - SNMP.EXE - ???

INT 2F 7A80 - Novell NetWare - SHELL 3.01d BROADCAST - ABNORMAL EXIT

INT 2F 7A81 - Novell NetWare - SHELL 3.01d BROADCAST - SET SHELL INT 21 HANDLER

INT 2F 7A85 - Novell NetWare - shell 3.01 - BROADCAST INFORM

INT 2F 7A90 - Novell NetWare - NETBIOS.EXE 3+ - INSTALLATION CHECK

INT 2F 7AA0 - Personal NetWare - HRMIB - ???

INT 2F 7AC1 - LAN HiJack - LHR - DISABLE???

INT 2F 7AC2 - LAN HiJack - LHR - SYNCHRONIZE SHIFT STATES???

INT 2F 7AC3 - LAN HiJack - LHR - CLEAR ??? FLAG

INT 2F 7AC8 - LAN HiJack - LHR - ENABLE FUNCTIONS

INT 2F 7AC9 - LAN HiJack - LHR - DISABLE FUNCTIONS

INT 2F 7ACA - LAN HiJack - LHJ - ???

INT 2F 7ACB - LAN HiJack - LHJ - ???

INT 2F 7ACC - LAN HiJack - LHJ - ???

INT 2F 7ACF - LAN HiJack - LHR - INSTALLATION CHECK

INT 2F 7AF0 - Novell NetWare - DOSNP.EXE v1.30G - INSTALLATION CHECK

INT 2F 7AF1 - Novell NetWare - Access Server Driver - INSTALLATION CHECK

INT 2F 7AFE - Novell NetWare - DOSNP.EXE - INSTALLATION CHECK

INT 2F 7AFF - Novell NetWare - TBMI v1.1+ - INSTALLATION CHECK / Windows SUPPORT

INT 2F 7AFF - Novell NetWare - TBMI v1.1+, shell v3.01d - INSTALLATION CHECK???

INT 2F 7F00 - Jim Harper's CD-ROM redirector SCSI driver - INSTALLATION CHECK

INT 2F 7F01 - Jim Harper's CD-ROM redirector SCSI driver - DO COMMAND

INT 2F 7F02 - Jim Harper's CD-ROM redirector SCSI driver - DO RESET

INT 2F 7F03 - Jim Harper's CD-ROM redirector SCSI driver - UNINSTALL

INT 2F 7F24 - Multiplex - ???

INT 2F 7F26 - Multiplex - ???

INT 2F 8000 - EASY-NET - INSTALLATION CHECK

INT 2F 8000 - Nanosoft, Inc. TurboNET server - INSTALLATION CHECK

INT 2F 8000 - CS_TSR specification - TSR INSTALLATION CHECK

INT 2F 8000 - FaxBIOS interface - INSTALLATION CHECK

INT 2F 8001 - Nanosoft, Inc. TurboNET server - ???

INT 2F 8001 - CS_TSR specification - GET HANDLE (TSR-SPECIFIC INSTALLATION CHECK)

INT 2F 8002 - CS_TSR specification - GET PROCESS BLOCK BY PROCESS HANDLE

INT 2F 8003 - CS_TSR specification - CUSTOM SUBFUNCTION

INT 2F 80FB - FaxBIOS interface - COMMAND SUBMISSION

INT 2F 8100 - Nanosoft, Inc. TurboNET redirector - INSTALLATION CHECK

INT 2F 8101 - Nanosoft, Inc. TurboNET redirector - ???

INT 2F 8102 - Nanosoft, Inc. TurboNET redirector - ???

INT 2F 8103 - Nanosoft, Inc. TurboNET redirector - GET MACHINE NAME???

INT 2F 8104 - Nanosoft, Inc. TurboNET redirector - ???

INT 2F 8105 - Nanosoft, Inc. TurboNET redirector - ???

INT 2F 8200 - RESPLAY - SAMPLE/PLAYBACK

INT 2F 8200 - Nanosoft, Inc. CAPDOS - INSTALLATION CHECK

INT 2F 8201 - RESPLAY - INSTALLATION CHECK

INT 2F 8201 - Nanosoft, Inc. CAPDOS - CLEAR QUEUE

INT 2F 8202 - RESPLAY - UNINSTALL

INT 2F 8202 - Nanosoft, Inc. CAPDOS - START COLLECTION

INT 2F 8203 - Nanosoft, Inc. CAPDOS - STOP COLLECTION

INT 2F 8204 - Nanosoft, Inc. CAPDOS - GET QUEUE PARAMETERS

INT 2F 8205 - Nanosoft, Inc. CAPDOS - GET QUEUE ITEM

INT 2F 8210 - RESPLAY - INITIALIZE

INT 2F 86-- - ???

INT 2F 8900 - WHOA!.COM - INSTALLATION CHECK

INT 2F 8901 - WHOA!.COM - UNINSTALL

INT 2F 8902 - WHOA!.COM - SET DELAY COUNT

INT 2F 9000 - RAID - INSTALLATION CHECK

INT 2F 9001 - RAID - GET ???

INT 2F 9002 - RAID - GET RESIDENT SEGMENT

INT 2F 9003 - RAID - UNINSTALL

INT 2F 9004 - RAID - GET ???

INT 2F 92-- - Network Courier E-Mail - API

INT 2F 9200 - PC Tools v8.0 DRIVEMAP - BUG

INT 2F 9201 - PC Tools v8.0 DRIVEMAP - CHECK IF MAPPED DRIVE

INT 2F 9202 - PC Tools v8.0 DRIVEMAP - UNINSTALL

INT 2F 9203 - PC Tools v8.0 DRIVEMAP - GET VERSION

INT 2F 9204 - PC Tools v8.0 DRIVEMAP - INSTALLATION CHECK

INT 2F 9205 - PC Tools v8.0 DRIVEMAP - SET ???

INT 2F 9206 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 9207 - PC Tools v8.0 DRIVEMAP - GET ???

INT 2F 9208 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 9209 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 920A - PC Tools v8.0 DRIVEMAP - ???

INT 2F 920B - PC Tools v8.0 DRIVEMAP - SET DRIVE MAPPING

INT 2F 920C - PC Tools v8.0 DRIVEMAP - ???

INT 2F 920D - PC Tools v8.0 DRIVEMAP - GET DRIVE TYPE

INT 2F 920E - PC Tools v8.0 DRIVEMAP - SET LPT MAPPING

INT 2F 920F - PC Tools v8.0 DRIVEMAP - GET ???

INT 2F 9210 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 9211 - PC Tools v8.0 DRIVEMAP - GET ???

INT 2F 9212 - PC Tools v8.0 DRIVEMAP - CRITICAL SECTION???

INT 2F 9213 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 9214 - PC Tools v8.0 DRIVEMAP - GET ???

INT 2F 9215 - PC Tools v8.0 DRIVEMAP - GET ???

INT 2F 9216 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 9217 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 9218 - PC Tools v8.0 DRIVEMAP - GET LPT TYPE???

INT 2F 9219 - PC Tools v8.0 DRIVEMAP - ???

INT 2F 921A - PC Tools v8.0 DRIVEMAP - ???

INT 2F 921B - PC Tools v8.0 DRIVEMAP - ???

INT 2F 921C - PC Tools v8.0 DRIVEMAP - ???

INT 2F 921D - PC Tools v8.0 DRIVEMAP - GET ???

INT 2F 921E - PC Tools v8.0 DRIVEMAP - ???

INT 2F 93-- - InnerMission v1.7+ - INSTALLATION CHECK

INT 2F 9400 - MICRO.EXE - INSTALLATION CHECK

INT 2F 9401 - MICRO.EXE - SET ??? FLAG

INT 2F 9402 - MICRO.EXE - ???

INT 2F 9403 - MICRO.EXE - SET ??? FLAG

INT 2F 9404 - MICRO.EXE - CLEAR ??? FLAG

INT 2F 96C7 - STRETCH - INSTALLATION CHECK

INT 2F 9C-- - Network Courier E-Mail OPERATOR.EXE - API

INT 2F 9E00 - INTMON v2.1 - INSTALLATION CHECK

INT 2F 9E01 - INTMON v2.1 - RESET

INT 2F 9E02 - INTMON v2.1 - DISPLAY CPU REGISTERS???

INT 2F 9E03 - INTMON v2.1 - HOOK INTERRUPT???

INT 2F 9F00 - INTCFG v2.1 - INSTALLATION CHECK

INT 2F 9F01 - INTCFG v2.1 - ???

INT 2F 9F30 - INTCFG v2.1 - GET ???

INT 2F 9F49 - INTCFG v2.1 - UNINSTALL

INT 2F A1-- - Ergo DOS extenders - INSTALLATION CHECK

INT 2F A189 - Biologic HRAMDEV.SYS - API

INT 2F A4E0 - Futurus Team - INSTALLATION CHECK

INT 2F A900 - METZTSR.COM - INSTALLATION CHECK

INT 2F A901 - METZTSR.COM - GET TIME OF LAST KEYBOARD ACTIVITY

INT 2F A902 - METZTSR.COM - SET METZ Ctrl-Alt-Del FLAG

INT 2F A903 - METZTSR.COM - GET METZ Ctrl-Alt-Del FLAG

INT 2F AA00 - VIDCLOCK.COM - INSTALLATION CHECK

INT 2F AB00 - Btrieve Multi-User - INSTALLATION CHECK

INT 2F AB01 - Btrieve Multi-User - EXECUTE Btrieve OPERATION

INT 2F AB02 - Btrieve Multi-User - GET NEW PROCESS ID

INT 2F AC00 - DOS 4.01+ GRAPHICS.COM - INSTALLATION CHECK

INT 2F AC00 - QRIP/TSR - GIVE CPU TO QRIP

INT 2F AC01 - QRIP/TSR - CHANGE INTERNAL FLAGS

INT 2F AC02 - QRIP/TSR - TURN OFF GRAPHICS SCREEN

INT 2F AC03 - QRIP/TSR - TURN ON GRAPHICS SCREEN

INT 2F AC04 - QRIP/TSR - OUTPUT STRING THROUGH QRIP

INT 2F AC05 - QRIP/TSR - OUTPUT NULL-TERMINATED STRING THROUGH QRIP

INT 2F AC06 - QRIP/TSR - RECEIVE CHARACTERS FROM QRIP

INT 2F AC07 - QRIP/TSR - GET FONT DIRECTORY

INT 2F AC08 - QRIP/TSR - GET ICON DIRECTORY

INT 2F AC09 - QRIP/TSR - OUTPUT STRING THROUGH QRIP

INT 2F AC0A - QRIP/TSR - OUTPUT NULL-TERMINATED STRING THROUGH QRIP

INT 2F AC0B - QRIP/TSR - EXECUTE RIP "END SCENE" COMMAND

INT 2F AC0C - QRIP/TSR - GET STRING TO BE SENT TO BBS

INT 2F AC0D - QRIP/TSR - SET PROTECTED SCREEN AREA

INT 2F AC0E - QRIP/TSR - WRITE ASCIZ STRING IN PROTECTED AREA

INT 2F AC0F - QRIP/TSR - SCROLL PROTECTED AREA

INT 2F AC10 - QRIP/TSR - SET OUTPUT COLOR FOR PROTECTED AREA

INT 2F AC11 - QRIP/TSR - CONVERT PROTECTED AREA TO ENTIRE SCREEN

INT 2F AC12 - QRIP/TSR - BEGIN POPUP-WINDOW MODE

INT 2F AC13 - QRIP/TSR - END POPUP-WINDOW MODE

INT 2F AC14 - QRIP/TSR - SAVE GRAPHICS SCREEN AND SWITCH TO TEXT MODE

INT 2F AC15 - QRIP/TSR - RESTORE GRAPHICS SCREEN

INT 2F AC16 - QRIP/TSR - REPORT MODE CHANGE TO QRIP

INT 2F AC17 - QRIP/TSR - CALL (EXECUTE) A RIP FILE

INT 2F AC18 - QRIP/TSR - SEND USER KEY TO QRIP

INT 2F AC19 - QRIP/TSR - HANGUP

INT 2F AC1A - QRIP/TSR - GET RIP_ENTER_BLOCK_MODE INFORMATION

INT 2F AC1B - QRIP/TSR - SET SYSTEM FONT SIZE

INT 2F ACF0 - QRIP/TSR - INSTALLATION CHECK

INT 2F ACFF - QRIP/TSR - UNINSTALL

INT 2F AD00 - DOS 3.3+ DISPLAY.SYS internal - INSTALLATION CHECK

INT 2F AD00 - DR-DOS 3.41,5.0 KEYB - INSTALLATION CHECK

INT 2F AD01 - DOS 3.3+ DISPLAY.SYS internal - SET ACTIVE CODE PAGE

INT 2F AD01 - DR-DOS 3.41,5.0 KEYB - GET CONFIGURATION

INT 2F AD02 - DOS 3.3+ DISPLAY.SYS internal - GET ACTIVE CODE PAGE

INT 2F AD03 - DOS 3.3+ DISPLAY.SYS internal - GET CODE PAGE INFORMATION

INT 2F AD04 - DOS 4.x only DISPLAY.SYS internal - ???

INT 2F AD10 - DOS 4.x DISPLAY.SYS internal - INSTALLATION CHECK???

INT 2F AD10 - DOS 5+ DISPLAY.SYS internal - ???

INT 2F AD40 - DOS 4.0+ - ???

INT 2F AD80 - DOS 3.3+ KEYB.COM internal - INSTALLATION CHECK

INT 2F AD81 - DOS 3.3+ KEYB.COM - SET KEYBOARD CODE PAGE

INT 2F AD82 - DOS 3.3+ KEYB.COM - SET KEYBOARD MAPPING

INT 2F AD83 - DOS 5+ KEYB.COM - GET KEYBOARD MAPPING

INT 2F AE00 - DOS 3.3+ internal - INSTALLABLE COMMAND - INSTALLATION CHECK

INT 2F AE01 - DOS 3.3+ internal - INSTALLABLE COMMAND - EXECUTE

INT 2F AF00 - ???

INT 2F AF02 - ???

INT 2F AF03 - ???

INT 2F AF04 - ???

INT 2F AF05 - ???

INT 2F AF12 - ???

INT 2F AF13 - ???

INT 2F AF30 - ???

INT 2F AFDE - Disk-Emu - INSTALLATION CHECK / VERSION CHECK

INT 2F B000 - DOS 3.3+ GRAFTABL.COM - INSTALLATION CHECK

INT 2F B001 - DOS 3.3+ GRAFTABL.COM - GET GRAPHICS FONT TABLE

INT 2F B400 - IBM PC3270 EMULATION PROG v3 - INSTALLATION CHECK

INT 2F B401 - IBM PC3270 EMULATION PROG v3 - GET HOST BUFFER ADDRESS

INT 2F B402 - IBM PC3270 EMULATION PROG v3 - ???

INT 2F B403 - IBM PC3270 EMULATION PROG v3 - ???

INT 2F B404 - IBM PC3270 EMULATION PROG v3 - ???

INT 2F B405 - IBM PC3270 EMULATION PROG v3 - ???

INT 2F B700 - APPEND - INSTALLATION CHECK

INT 2F B701 - APPEND v3.21 only - GET APPEND PATH

INT 2F B702 - APPEND - VERSION CHECK

INT 2F B703 - DOS 3.3, DOS 5.0 APPEND - HOOK INT 21

INT 2F B704 - DOS 3.3+ APPEND - GET APPEND PATH

INT 2F B706 - DOS 4.0+ APPEND - GET APPEND FUNCTION STATE

INT 2F B707 - DOS 4.0+ APPEND - SET APPEND FUNCTION STATE

INT 2F B710 - DOS 3.3+ APPEND - GET VERSION INFO

INT 2F B711 - DOS 4.0+ APPEND - SET RETURN FOUND NAME STATE

INT 2F B800 - NETWORK - INSTALLATION CHECK

INT 2F B800 - 10NET - INSTALLATION CHECK

INT 2F B803 - NETWORK - GET NETWORK EVENT POST HANDLER

INT 2F B804 - NETWORK - SET NETWORK EVENT POST HANDLER

INT 2F B807 - NETWORK - GET NetBIOS NAME NUMBER OF MACHINE NAME

INT 2F B808 - NETWORK - RELINK KEYBOARD HANDLER

INT 2F B809 - NETWORK - LANtastic, NetWare Lite - VERSION CHECK

INT 2F B809 - NETWORK - PC LAN Program - VERSION CHECK

INT 2F B80A - PC Network 1.00 - ???

INT 2F B80F - DOS LAN Requester - GET START PARAMETERS

INT 2F B900 - PC Network RECEIVER.COM - INSTALLATION CHECK

INT 2F B901 - PC Network RECEIVER.COM - GET RECEIVER.COM INT 2F HANDLER ADDRESS

INT 2F B903 - PC Network RECEIVER.COM - GET RECEIVER.COM POST ADDRESS

INT 2F B904 - PC Network RECEIVER.COM - SET RECEIVER.COM POST ADDRESS

INT 2F B905 - PC Network RECEIVER.COM - GET FILENAME

INT 2F B906 - PC Network RECEIVER.COM - SET FILENAME

INT 2F B908 - PC Network RECEIVER.COM - UNLINK KEYBOARD HANDLER

INT 2F BC00 - Windows 3.0, DOS 5+ EGA.SYS - INSTALLATION CHECK

INT 2F BC00 - MediaVision MVSOUND.SYS - INSTALLATION CHECK

INT 2F BC01 - MediaVision MVSOUND.SYS - GET VERSION

INT 2F BC02 - MediaVision MVSOUND.SYS - GET STATE TABLE POINTER

INT 2F BC03 - MediaVision MVSOUND.SYS - GET FUNCTION TABLE POINTER

INT 2F BC04 - MediaVision MVSOUND.SYS - GET DMA AND IRQ CHANNELS

INT 2F BC06 - MS Windows 3.0, DOS 5+ EGA.SYS - GET VERSION INFO

INT 2F BC06 - MediaVision MVSOUND.SYS - GET STATUS STRING

INT 2F BC0B - MediaVision MVSOUND.SYS - GET EXECUTABLE PATH

INT 2F BE00 - REDVIEW - INSTALLATION CHECK

INT 2F BF00 - PC LAN PROGRAM REDIRIFS.EXE internal - INSTALLATION CHECK

INT 2F BF01 - PC LAN PROGRAM REDIRIFS.EXE internal - ???

INT 2F BF80 - PC LAN PROG REDIR.SYS internal - SET REDIRIFS ENTRY POINT

INT 2F C0-- - MTEZ XpressFax Hardware TSR (CLASS2) - API

INT 2F C000 - Novell ODI Link Support Layer (LSL.COM) - INSTALLATION CHECK

INT 2F C000 - Novell NetWare Event Service Layer (NESL) 1.0 - INSTALLATION CHECK

INT 2F C000 - Novell NetWare Connect NETWARN - INSTALLATION CHECK

INT 2F C000 - FN32 32 character filename utilities - INSTALLATION CHECK

INT 2F C000 - QMR - INSTALLATION CHECK

INT 2F C000 - VGAsave v1.93 - INSTALLATION CHECK

INT 2F C000 - AD-DOS - INSTALLATION CHECK

INT 2F C000 - WANG_ER.COM - INSTALLATION CHECK

INT 2F C000 - ASPIHOOK.SYS - INSTALLATION CHECK

INT 2F C000 - PMEASURE.EXE - INSTALLATION CHECK

INT 2F C000 - PERSONAL MEASURE - HOOK MODULE INSTALLATION CHECK

INT 2F C000 - PrintCache v3.1 PCACHE.EXE - INSTALLATION CHECK

INT 2F C000 - Frank Kintrup TSR Utilities - INSTALLATION CHECK

INT 2F C000 - HP 100LX/200LX - PUSHKEYS - INSTALLATION CHECK

INT 2F C000 - DIMWIT - INSTALLATION CHECK

INT 2F C000 - MTEZ XpressFax Hardware TSR (CLASS2) - INSTALLATION CHECK

INT 2F C000 - TSENGP.COM - INSTALLATION CHECK

INT 2F C000 - LapLink RemoteAccess (LLRA) - INSTALLATION CHECK

INT 2F C001 - QMR - REQUEST HARDWARE RESET

INT 2F C001 - DIMWIT - GET CONFIGURATION DATA

INT 2F C001 - AD-DOS - GET RESIDENT CODE SEGMENT

INT 2F C001 - PrintCache v3.1 PCACHE.EXE - GET ENTRY POINTS

INT 2F C001 - Frank Kintrup TSR Utilities - CLOCK - DISABLE DISPLAY UPDATE

INT 2F C001 - HP 100LX/200LX - PUSHKEYS - INTERNAL - UNINSTALL

INT 2F C001 - PERSONAL MEASURE - PASS PARAMETERS TO HOOK MODULE(S)

INT 2F C002 - AD-DOS - CHECK FOR NEW INPUT

INT 2F C002 - QMR - DISABLE QMR

INT 2F C002 - PrintCache v3.1 PCACHE.EXE - GET BUFFER SIZE

INT 2F C002 - Frank Kintrup TSR Utilities - CLOCK - ENABLE DISPLAY UPDATE

INT 2F C002 - LapLink RemoteAccess (LLRA) - Core - ???

INT 2F C003 - AD-DOS - SET MINUTES TO WAIT

INT 2F C003 - QMR - ENABLE QMR

INT 2F C003 - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

INT 2F C004 - AD-DOS - GET MINUTES TO WAIT

INT 2F C004 - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

INT 2F C005 - AD-DOS - SET BLANKER STATUS

INT 2F C005 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C006 - AD-DOS - GET BLANKER STATUS

INT 2F C006 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C007 - AD-DOS - SET HOT KEY

INT 2F C007 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C008 - AD-DOS - GET CURRENT HOT KEY

INT 2F C008 - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

INT 2F C009 - AD-DOS - UNBLANK MONITOR

INT 2F C009 - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

INT 2F C00A - AD-DOS - ???

INT 2F C00A - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C00B - AD-DOS - ???

INT 2F C00B - PrintCache v3.1 PCACHE.EXE - NOP

INT 2F C00C - AD-DOS - SET ??? INTERNAL FLAG TO 01h

INT 2F C00C - PrintCache v3.1 PCACHE.EXE - GET ???

INT 2F C00D - PrintCache v3.1 PCACHE.EXE - SET ???

INT 2F C00E - AD-DOS - SET PASSWORD STATUS

INT 2F C00E - PrintCache v3.1 PCACHE.EXE - INSTALL ???

INT 2F C00F - AD-DOS - GET PASSWORD STATUS

INT 2F C00F - PrintCache v3.1 PCACHE.EXE - REMOVE ???

INT 2F C010 - PrintCache v3.1 PCACHE.EXE - GET ???

INT 2F C011 - PrintCache v3.1 PCACHE.EXE - GET ???

INT 2F C012 - PrintCache v3.1 PCACHE.EXE - GET ???

INT 2F C013 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C014 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C015 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C016 - PrintCache v3.1 PCACHE.EXE - INCREMENT ???

INT 2F C017 - PrintCache v3.1 PCACHE.EXE - DECREMENT ???

INT 2F C018 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C019 - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C01A - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

INT 2F C01B - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

INT 2F C01C - PrintCache v3.1 PCACHE.EXE - ???

INT 2F C01D - PrintCache v3.1 PCACHE.EXE - NOP

INT 2F C020 - AD-DOS - GET AND RESET VxD API STATUS

INT 2F C04E - Explosiv v2.00+ - NON-TSR EXECUTING CHECK

INT 2F C050 - Explosiv v2.00+ - INSTALLATION CHECK

INT 2F C052 - Explosiv v2.00+ - UNINSTALL

INT 2F C054 - Explosiv v2.x - GET ANIMATION DELAY FACTOR

INT 2F C054 - Explosiv v3.0+ - UPDATE PARAMETERS

INT 2F C055 - Explosiv v2.x - SET BLANKING INTERVAL

INT 2F C056 - Explosiv v2.x - SET ANIMATION DISPLAY TYPE

INT 2F C056 - Explosiv v3.0+ - ENABLE/DISABLE EXPLOSIV

INT 2F C057 - Explosiv v2.x - SET ANIMATION DELAY FACTOR

INT 2F C058 - Explosiv v2.x - SET ANIMATION PARAMETER

INT 2F C058 - Explosiv v3.0+ - LOAD NEW ANIMATION DISPLAY CODE

INT 2F C059 - Explosiv v2.x - DISABLE EXPLOSIV

INT 2F C05A - Explosiv v2.x - ENABLE EXPLOSIV

INT 2F C05B - Explosiv v2.x - CHANGE ANIMATION DISPLAY

INT 2F C05C - Explosiv v2.x - SET INT 10 CHECKING

INT 2F C0AE - HP 100LX/200LX - PUSHKEYS - INSTALLATION CHECK

INT 2F C0AF - HP 100LX/200LX - PUSHKEYS - INTERNAL - GET BUFFER ADDRESS

INT 2F C100 - Personal NetWare - STPIPX v1.00 - INSTALLATION CHECK

INT 2F C101 - Personal NetWare - STPIPX v1.00 - UNINSTALL

INT 2F C205 - LapLink RemoteAccess (LLRA) - Redirector - ???

INT 2F C2F0 - LapLink RemoteAccess (LLRA) - Redirector - ???

INT 2F C2F1 - LapLink RemoteAccess (LLRA) - Redirector - ???

INT 2F C300 - SETWPR.COM - INSTALLATION CHECK

INT 2F C300 - SpaceManager - INSTALLATION CHECK

INT 2F C300 - SpaceManager - INSTALLATION VERIFICATION

INT 2F C301 - SpaceManager - ???

INT 2F C301 - LapLink RemoteAccess (LLRA) - Compression - ???

INT 2F C302 - SpaceManager - ENABLE PROGRAM

INT 2F C302 - SETWPR.COM - SET WRITE-PROTECTION STATE

INT 2F C303 - SpaceManager - DISABLE PROGRAM

INT 2F C304 - SpaceManager - GET PER-DRIVE ENABLEMENT TABLE

INT 2F C305 - SpaceManager - FORTUNE.EXE - NOP

INT 2F C305 - SpaceManager - ???

INT 2F C306 - SpaceManager - CHECK WHETHER PROGRAM ENABLED

INT 2F C307 - SpaceManager - SELECTC - ???

INT 2F C308 - SpaceManager - SELECTC - ???

INT 2F C3F0 - LapLink RemoteAccess (LLRA) - Compression - ???

INT 2F C3F1 - LapLink RemoteAccess (LLRA) - Compression - ???

INT 2F C64C - Smart Prompt - INSTALLATION CHECK

INT 2F C700 - COLAP - INSTALLATION CHECK

INT 2F C900 - ThunderByte??? - INSTALLATION CHECK

INT 2F C987 - ThunderByte??? - DISINFECT FILE???

INT 2F C9FF - StackMan - INSTALLATION BROADCAST

INT 2F CA-- - FAXPLUS - FAX TSR

INT 2F CA00 - TBSCANX - INSTALLATION CHECK

INT 2F CA01 - TBSCANX - GET STATUS

INT 2F CA02 - TBSCANX - SET STATE

INT 2F CA03 - TBSCANX - SCAN BUFFER

INT 2F CA04 - TBSCANX - SCAN FILE

INT 2F CAFE - THELP v3.0 - INSTALLATION CHECK

INT 2F CB00 - Communicating Applications Specification - INSTALLATION CHECK

INT 2F CB00 - MTEZ XpressFax CASMGR - INSTALLATION CHECK

INT 2F CB01 - Communicating Applications Specification - SUBMIT A TASK

INT 2F CB02 - Communicating Applications Specification - ABORT CURRENT EVENT

INT 2F CB05 - Communicating Applications Specification - FIND FIRST QUEUE ENTRY

INT 2F CB06 - Communicating Applications Specification - FIND NEXT QUEUE ENTRY

INT 2F CB07 - Communicating Applications Specification - OPEN FILE

INT 2F CB08 - Communicating Applications Specification - DELETE FILE

INT 2F CB09 - Communicating Applications Specification - DELETE ALL FILES IN Q

INT 2F CB0A - Communicating Applications Specification - GET EVENT DATE

INT 2F CB0B - Communicating Applications Specification - SET TASK DATE

INT 2F CB0C - Communicating Applications Specification - GET EVENT TIME

INT 2F CB0D - Communicating Applications Specification - SET TASK TIME

INT 2F CB0E - Communicating Applications Specification - GET EXTERNAL DATA BLOCK

INT 2F CB0F - Communicating Applications Specification - GET/SET AUTORECEIVE

INT 2F CB10 - Communicating Applications Specification - GET CURRENT EVENT STATUS

INT 2F CB11 - Communicating Applications Specification - GET QUEUE STATUS

INT 2F CB11 - Communicating Applications Spec v1.2+ - GET NUMBER OF SEND EVENTS

INT 2F CB11 - Communicating Applications Spec v1.2+ - GET NUMBER OF RECEIVE EVENTS

INT 2F CB12 - Communicating Applications Specification - GET HARDWARE STATUS

INT 2F CB13 - Communicating Applications Specification - GET DIAGNOSTICS RESULTS

INT 2F CB13 - Communicating Applications Specification - START DIAGNOSTICS

INT 2F CB14 - Communicating Applications Specification - MOVE RECEIVED FILE

INT 2F CB15 - Communicating Applications Specification - SUBMIT FILE TO SEND

INT 2F CB16 - Communicating Applications Spec v1.2+ - UNLOAD RESIDENT MANAGER

INT 2F CB17 - Communicating Applications Spec v1.2+ - SET COVER PAGE STATUS

INT 2F CB80 - Intel SatisFAXtion CASMGR - ???

INT 2F CB81 - Intel SatisFAXtion CASMGR - ???

INT 2F CB82 - Intel SatisFAXtion CASMGR - ???

INT 2F CBDC - Comwave Microfax Specification - GET STATUS ARRAY

INT 2F CBDD - Comwave Microfax Specification - COMMAND SUBMISSION

INT 2F CC-- - PC-Kwik Programs - API

INT 2F CC00 - Tsoft NFSDRVR - INSTALLATION CHECK

INT 2F CC01 - Tsoft NFSDRVR - ???

INT 2F CC02 - Tsoft NFSDRVR - ???

INT 2F CC03 - Tsoft NFSDRVR - ???

INT 2F CC04 - Tsoft NFSDRVR - ???

INT 2F CC05 - Tsoft NFSDRVR - ???

INT 2F CC06 - Tsoft NFSDRVR - ???

INT 2F CD00 - Intel Image Processing Interface - INSTALLATION CHECK

INT 2F CD00 - LaserPort Interface - INSTALLATION CHECK

INT 2F CD00 - SWELL.EXE - INSTALLATION CHECK

INT 2F CD00 - Forte/Gravis ULTRAMID - INSTALLATION CHECK

INT 2F CD01 - Intel Image Processing Interface - SET DEVICE NAME

INT 2F CD01 - SWELL.EXE - SUSPEND ONCE

INT 2F CD02 - Intel Image Processing Interface - GET VERSION NUMBER

INT 2F CD02 - SWELL.EXE - SUSPEND

INT 2F CD03 - Intel Image Processing Interface - SELECT SCAN LINE

INT 2F CD03 - SWELL.EXE - ACTIVATE

INT 2F CD04 - Intel Image Processing Interface - MOVE BITMAP TO SCANLINE

INT 2F CD04 - SWELL.EXE - TURN OFF VERBOSE MODE

INT 2F CD05 - Intel Image Processing Interface - PRINT PAGE

INT 2F CD05 - SWELL.EXE - TURN ON VERBOSE MODE

INT 2F CD06 - Intel Image Processing Interface - CLEAR PAGE

INT 2F CD06 - SWELL.EXE - UNINSTALL

INT 2F CD07 - Intel Image Processing Interface - reserved

INT 2F CD07 - SWELL.EXE - GET INFO

INT 2F CD08 - Intel Image Processing Interface - SCREEN IMAGE

INT 2F CD08 - SWELL.EXE - UNUSED

INT 2F CD09 - Intel Image Processing Interface - LOAD SCREEN

INT 2F CD09 - SWELL.EXE - TURN OFF "BORLAND SUPPORT"

INT 2F CD0A - Intel Image Processing Interface - LOAD PALETTE

INT 2F CD0A - SWELL.EXE - TURN ON "BORLAND SUPPORT"

INT 2F CD0F - LaserPort Interface - EXECUTE FUNCTION

INT 2F CF00 - TEMPLEXX 1.0 - INSTALLATION CHECK

INT 2F D000 - MDEBUG display driver - GET DRIVER STATUS

INT 2F D000 - ZWmous - INSTALLATION CHECK

INT 2F D000 - Lotus CD/Networker - INSTALLATION CHECK

INT 2F D001 - MDEBUG display driver - INITIALIZE DRIVER

INT 2F D002 - MDEBUG display driver - SAVE GRAPHIC DATA

INT 2F D002 - Multiplex - Lotus CD/Networker GET DATA AREA

INT 2F D003 - MDEBUG display driver - RESTORE GRAPHIC DATA

INT 2F D004 - MDEBUG display driver - SHOW SAVED DATA

INT 2F D005 - MDEBUG display driver - SWITCH BACK TO TEXT SCREEN

INT 2F D0-- - MDEBUG display driver - RESERVED FUNCTION NUMBERS

INT 2F D0-- - MDEBUG display driver - USER DEFINED FUNCTION NUMBERS

INT 2F D100 - MDEBUG command driver - GET STATUS

INT 2F D101 - MDEBUG command driver - INITIALIZE DRIVER

INT 2F D102 - MDEBUG command driver - EXECUTE INTERPRETER COMMAND

INT 2F D103 - MDEBUG command driver - EXECUTE KEY IN THE MONITOR

INT 2F D104 - MDEBUG command driver - EXECUTE KEY IN THE INTERPRETER

INT 2F D1-- - MDEBUG command driver - RESERVED FUNCTIONS

INT 2F D110 - MDEBUG command driver - GET ADDRESS OF THE OLD INT 2F

INT 2F D111 - MDEBUG command driver - START DRIVER

INT 2F D112 - MDEBUG command driver - END DRIVER

INT 2F D1-- - MDEBUG command driver - RESERVED FUNCTIONS

INT 2F D1-- - MDEBUG command driver - USER DEFINED FUNCTIONS

INT 2F D200 - PCL-838.EXE - INSTALLATION CHECK

INT 2F D200 - Quarterdeck RPCI - INSTALLATION CHECK

INT 2F D201 - PCL-838.EXE - UNINSTALL

INT 2F D201 - Quarterdeck RPCI - GET QD HIMEM PRESENCE

INT 2F D201 - Quarterdeck RPCI - QEMM/QRAM v5.0+ - GET HIRAM MEMORY CHAIN

INT 2F D201 - Quarterdeck RPCI - MANIFEST v1.0+ - INSTALLATION CHECK

INT 2F D201 - Quarterdeck RPCI - DVDOS4GX.DVR - ???

INT 2F D201 - Quarterdeck RPCI - QEMM v5.0+ - INSTALLATION CHECK

INT 2F D201 - Quarterdeck RPCI - VIDRAM v5.0+ - INSTALLATION CHECK

INT 2F D202 - PCL-838.EXE - EXECUTE PCL838 COMMANDS

INT 2F D300 - TeleReplica - INSTALLATION CHECK

INT 2F D3CB - LapLink Quick Connect v6 - API

INT 2F D44D - 4DOS.COM v2.1+ - API

INT 2F D44E - 4DOS v3.0+ - AWAITING USER INPUT

INT 2F D44F - 4DOS v4.0+ - KSTACK.COM - INSTALLATION CHECK

INT 2F D44F - 4DOS v4.0+ - KSTACK.COM - PLACE KEYSTROKES INTO KEYSTACK

INT 2F D600 - HEART.COM - INSTALLATION CHECK

INT 2F D600 - VEDIT VSWAP - INSTALLATION CHECK

INT 2F D601 - VEDIT VSWAP - ???

INT 2F D602 - VEDIT VSWAP - EXEC PROGRAM WITH SWAP

INT 2F D701 - Banyan VINES v4+ - GET BANV INTERRUPT NUMBER

INT 2F D702 - Banyan VINES v4+ - PCPRINT interface

INT 2F D703 - Banyan VINES v4+ - MAIL interface

INT 2F D704 - Banyan VINES v4+ - Streettalk Directory Assistance interface

INT 2F D800 - Novell NetWare Lite - CLIENT.EXE - INSTALLATION CHECK

INT 2F D856 - Novell NetWare Lite v1.1 - SERVER - GET ???

INT 2F D880 - Novell NetWare Lite v1.0+ - SERVER - INSTALLATION CHECK

INT 2F D8C0 - Novell NLCACHE,NWCACHE - INSTALLATION CHECK

INT 2F DA00 - ZyXEL ZFAX - INSTALLATION CHECK

INT 2F DA01 - ZyXEL ZFAX - UNINSTALL

INT 2F DA02 - ZyXEL ZFAX - DISABLE

INT 2F DA03 - ZyXEL ZFAX - ENABLE

INT 2F DA55 - TRAP.COM - INSTALLATION CHECK

INT 2F DAB2 - Beame&Whiteside BWSNMP - INSTALLATION CHECK

INT 2F DB00 - ZyXEL ZFAX v2+ - INSTALLATION CHECK

INT 2F DB00 - WINGO.COM - INSTALLATION CHECK

INT 2F DB01 - ZyXEL ZFAX v2+ - UNINSTALL

INT 2F DB01 - WINGO.COM - SET CALLBACK FUNCTION POINTER

INT 2F DB02 - ZyXEL ZFAX v2.x - DISABLE

INT 2F DB02 - WINGO.COM - RESET CALLBACK FUNCTION POINTER

INT 2F DB03 - ZyXEL ZFAX v2.x - ENABLE

INT 2F DB03 - WINGO.COM - SET ??? FLAG

INT 2F DB04 - WINGO.COM - RESET ??? FLAG

INT 2F DB05 - WINGO.COM - GET ??? FLAG

INT 2F DB06 - WINGO.COM - CALL CALLBACK FUNCTION

INT 2F DB10 - ZyXEL ZFAX v3 - EXECUTE ZFAX MAIN MENU

INT 2F DB11 - ZyXEL ZFAX v3 - SEND FAX

INT 2F DB12 - ZyXEL ZFAX v3 - PRINT FAX

INT 2F DB13 - ZyXEL ZFAX v3 - CONVERT FAX

INT 2F DB14 - ZyXEL ZFAX v3 - VIEW FAX

INT 2F DB20 - ZyXEL ZFAX v3 - POLL FAX

INT 2F DB21 - ZyXEL ZFAX v3 - SEND VOICE

INT 2F DB22 - ZyXEL ZFAX v3 - CONVERT VOICE FILE

INT 2F DB23 - ZyXEL ZFAX v3 - RECORD VOICE FILE

INT 2F DB24 - ZyXEL ZFAX v3 - PLAY VOICE FILE

INT 2F DB25 - ZyXEL ZFAX v3 - ANSWER MODEM WITH VOICE SYSTEM

INT 2F DB26 - ZyXEL ZFAX v3 - DIAL PHONE

INT 2F DB27 - ZyXEL ZFAX v3 - RECEIVE FAX - ANSWER MODEM AND SET TO FAX MODE

INT 2F DB28 - ZyXEL ZFAX v3 - RECEIVE FAX DATA - ANSWER MODEM IN MULTI-AUDIO MODE

INT 2F DB31 - ZyXEL ZFAX v3 - SEND DATA - DIAL NUMBER AND UPLOAD FILE WITH ZMODEM

INT 2F DB40 - ZyXEL ZFAX v3 - INTERNAL TERMINAL

INT 2F DC00 - GOLD.COM - INSTALLATION CHECK

INT 2F DC01 - GOLD.COM - GET STATE

INT 2F DC02 - GOLD.COM - SET STATE

INT 2F DD-- - CappaCom programs - API

INT 2F DD-- - MIXFIX.EXE - API

INT 2F DD-- - xDISK v3.32+ - INSTALLATION CHECK

INT 2F DE00 - Novell Netware - RPRINTER, NPRINTER - INSTALLATION CHECK

INT 2F DE00 - DESQview v2.26+ External Device Interface - INSTALLATION CHECK

INT 2F DE01 - DESQview v2.26+ External Device Interface - DRIVER CUSTOM SUBFUNCTION

INT 2F DE01 - Quarterdeck QDPMI.SYS v1.0 - INSTALLATION CHECK

INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, Ralf Brown's XDI drivers

INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, DVTXDI.COM

INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, DVSIXDI.COM

INT 2F DE01 - DESQview v2.26+ XDI - DVXMS.DVR - ???

INT 2F DE02 - DESQview v2.26+ External Dev Interface - DV INITIALIZATION COMPLETE

INT 2F DE03 - DESQview v2.26+ External Dev Interface - DV TERMINATION

INT 2F DE04 - DESQview v2.26+ External Dev Interface - ADD PROCESS

INT 2F DE05 - DESQview v2.26+ External Dev Interface - REMOVE PROCESS

INT 2F DE06 - DESQview v2.26+ External Dev Interface - CREATE TASK

INT 2F DE07 - DESQview v2.26+ External Dev Interface - TERMINATE TASK

INT 2F DE08 - DESQview v2.26+ External Dev Interface - SAVE STATE

INT 2F DE09 - DESQview v2.26+ External Dev Interface - RESTORE STATE

INT 2F DE0A - DESQview v2.26+ External Dev Interface - CHANGE KEYBOARD FOCUS

INT 2F DE0B - DESQview v2.26+ External Dev Interface - DVP PROCESSING COMPLETE

INT 2F DE0C - DESQview v2.26+ External Dev Interface - SWAP OUT PROCESS

INT 2F DE0D - DESQview v2.26+ External Dev Interface - SWAP IN PROCESS

INT 2F DE0E - DESQview v2.26+ External Dev Interface - DVP START FAILED

INT 2F DE0F - DESQview v2.50+ External Dev Interface - INITIALIZE DV

INT 2F DE10 - DESQview v2.50+ External Dev Interface - FREE TASK

INT 2F DF00 - HyperWare programs - INSTALLATION CHECK

INT 2F DF00 - Quarterdeck TELTSR.COM - INSTALLATION CHECK

INT 2F DF01 - MSG.COM - INSTALLATION CHECK

INT 2F DF01 - HyperDisk v4.50+ - GET CURRENT CACHE STATE

INT 2F DF01 - Quarterdeck TELTSR.COM - CLOSE CONNECTION

INT 2F DF02 - HyperDisk v4.50+ - SET CACHE STATE

INT 2F DF02 - Quarterdeck TELTSR.COM - OPEN CONNECTION

INT 2F E000 - SETDRVER.COM v2.10+ - INSTALLATION CHECK

INT 2F E000 - StuffIt v3.21+ - INSTALLATION CHECK

INT 2F E001 - SETDRVER.COM v2.10+ - GET SETDRVER VERSION

INT 2F E002 - SETDRVER.COM v2.10+ - GET ORIGINAL DOS VERSION INFO

INT 2F E003 - SETDRVER.COM v2.10+ - RESET INTERNAL VARIABLES

INT 2F E004 - SETDRVER.COM v2.10+ - ENABLE TSR

INT 2F E005 - SETDRVER.COM v2.10+ - DISABLE TSR

INT 2F E006 - SETDRVER.COM v2.10+ - GET TSR STATUS

INT 2F E007 - SETDRVER.COM v2.10+ - GET TaskMAX STATUS AT INSTALLATION

INT 2F E0-- - SETDRVER.COM - RESERVED FOR FUTURE USE

INT 2F E100 - Phantom2 v1.1+ - INSTALLATION CHECK

INT 2F E101 - Phantom2 v1.1+ - FUNCTION REQUEST

INT 2F E102 - Phantom2 v1.1+ - UNINSTALL

INT 2F E103 - Phantom2 v2.8 - SET ??? FLAG

INT 2F E200 - SecureDevice - LOGIN TO DRIVE

INT 2F E201 - SecureDevice - GET INFORMATION

INT 2F E203 - SecureDevice - DESTROY PASSWORD (LOGOUT FROM DRIVE)

INT 2F E209 - SecureDevice - INSTALLATION CHECK

INT 2F E300 - ANARKEY.COM - INSTALLATION CHECK

INT 2F E300 - Blank - INSTALLATION CHECK

INT 2F E301 - ANARKEY.COM v2+ - GET ???

INT 2F E302 - ANARKEY.COM v3+ - ???

INT 2F E303 - ANARKEY.COM v3+ - ANARKMD API

INT 2F E304 - ANARKEY.COM v2+ - ???

INT 2F E305 - ANARKEY.COM v3+ - ENABLE/SUSPEND ANARKEY

INT 2F E306 - ANARKEY.COM v4.0 - GET ???

INT 2F E307 - ANARKEY.COM v4.0 - GET ???

INT 2F E44D - NDOS - API

INT 2F E44E - NDOS - AWAITING USER INPUT

INT 2F E44F - NDOS v4.0+ - KSTACK.COM - INSTALLATION CHECK

INT 2F E44F - NDOS v4.0+ - KSTACK.COM - PLACE KEYSTROKES INTO KEYSTACK

INT 2F E77E - CTDEMN - INSTALLATION CHECK

INT 2F ED00 - Phar Lap DOS EXTENDERS - INSTALLATION CHECK

INT 2F ED03 - Phar Lap 386/DOS-Extender v4.1 - GET EXTENDER ENTRY POINT

INT 2F ED10 - Pharlap DOS Extender - ???

INT 2F ED11 - Pharlap DOS Extender - FATAL EXIT TO REAL MODE ???

INT 2F ED58 - K5.COM - INSTALLATION CHECK

INT 2F ED80 - Phar Lap 286|DOS Extender Lite v2.5 - ???

INT 2F EDC8 - Novell ??? - INSTALLATION CHECK???

INT 2F EE00 - GRIDLOC.EXE - INSTALLATION CHECK

INT 2F EE00 - XVIEW - INSTALLATION CHECK

INT 2F EE00 - WEB v4.02 - INSTALLATION CHECK

INT 2F EE01 - XVIEW - POP UP GIVING TOPIC SEARCH KEYWORD

INT 2F EE02 - XVIEW - POP UP GIVING A PAGE NUMBER

INT 2F EE03 - XVIEW - POP UP GIVING FILENAME AND SEARCH TOPIC OR PAGE NUMBER

INT 2F EE04 - XVIEW - POP UP AND READ SCREEN FOR SEARCH TOPIC KEYWORD

INT 2F EE05 - XVIEW - POP UP TO MOST-RECENTLY VIEWED PAGE

INT 2F EE06 - XVIEW - WAIT FOR POP-DOWN AND GET EXIT CODE

INT 2F EE-- - WEB v4.02 - WEB MODULE INSTALLATION CHECK

INT 2F EEF0 - WEB v4.02 - WEB GENERAL NOTIFICATION

INT 2F F000 - 4MAP - INSTALLATION CHECK

INT 2F F001 - 4MAP - GET KEY MAPPINGS

INT 2F F002 - 4MAP - INSERT CHARACTER INTO ???

INT 2F F003 - 4MAP - INSERT CHARACTER INTO ???

INT 2F F1-- - MIN-MEM v2.11 - INSTALLATION CHECK

INT 2F F100 - DOS EXTENDER INSTALLATION CHECK

INT 2F F200 - WINX - INSTALLATION CHECK

INT 2F F201 - WINX - RETURN ADDRESS OF SERVER BUFFER

INT 2F F202 - WINX - SET SERVER'S WORKING DIRECTORY

INT 2F F203 - WINX - EXECUTE COMMAND

INT 2F F400 - FINDIRQ.COM - INSTALLATION CHECK

INT 2F F401 - PowerLAN - VERSION CHECK

INT 2F F401 - FINDIRQ.COM - GET HOOKED INTERRUPTS

INT 2F F700 - AUTOPARK.COM - INSTALLATION CHECK

INT 2F F701 - AUTOPARK.COM - SET PARKING DELAY

INT 2F F800 - SuperStor PRO 2XON.COM - INSTALLATION CHECK

INT 2F F801 - SuperStor PRO 2XON.COM - UNINSTALL

INT 2F FB-- - Multiplex - RESERVED BY BORLAND INTERNATIONAL

INT 2F FB-- - Conner Backup Exec AUTORES - API

INT 2F FB00 - AutoBraille v1.1A - INSTALLATION CHECK

INT 2F FB00 - Jot-It! v1.50 - INSTALLATION CHECK

INT 2F FB01 - AutoBraille v1.1A - ???

INT 2F FB01 - Jot-It! v1.50 - GET USER NAME

INT 2F FB02 - AutoBraille v1.1A - ???

INT 2F FB02 - Jot-It! v1.50 - GET MESSAGE DIRECTORY

INT 2F FB03 - AutoBraille v1.1A - GET NEXT ???

INT 2F FB03 - Jot-It! v1.50 - UNINSTALL

INT 2F FB-- - AutoBraille v1.1A - SET ???

INT 2F FB-- - AutoBraille v1.1A - SET ???

INT 2F FB-- - AutoBraille v1.1A - SET ???

INT 2F FB20 - AutoBraille v1.1A - SET ??? FLAGS

INT 2F FB21 - AutoBraille v1.1A - CLEAR ??? FLAGS

INT 2F FB22 - AutoBraille v1.1A - SET ???

INT 2F FB28 - AutoBraille v1.1A - ???

INT 2F FB29 - AutoBraille v1.1A - ???

INT 2F FB-- - AutoBraille v1.1A - SET ???

INT 2F FB35 - AutoBraille v1.1A - SET ???

INT 2F FB36 - AutoBraille v1.1A - SET ???

INT 2F FB37 - AutoBraille v1.1A - SET ???

INT 2F FB42 - Borland C++ DPMILOAD.EXE - INSTALLATION CHECK???

INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - ALLOCATE MEMORY

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ALLOCATE MEMORY

INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET AVAILABLE MEMORY

INT 2F FB42 - Borland C++ DPMILOAD.EXE - LOAD PROTECTED-MODE EXECUTABLE???

INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET ADDRESS OF ??? BY NAME

INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET ADDRESS OF ??? BY NUMBER

INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - FREE MEMORY BLOCK

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - FREE MEMORY BLOCK

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - RESIZE MEMORY BLOCK

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - INIT DPMI HOST AND SPAWN SUBSHELL

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - UNUSED

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - FREE DESCRIPTORS FOR MEMORY BLOCK???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SIMULATE REAL MODE INTERRUPT

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ADDRESS OF ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - REALLOCATE LDT DESCRPS TO MEMBLK???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - CONVERT SEGMENT TO SELECTOR

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - INSTALLATION CHECK

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - UNINSTALL

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ADDRESS OF ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - NULL FUNCTION???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET PROCESSOR EXCEPTION HANDLER VECT

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET PROCESSOR EXCEPTION HANDLER VECT

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - CONVERT SELECTOR TO SEGMENT NUMBER

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET PROTECTED-MODE INTERRUPT VECTOR

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET PROTECTED-MODE INTERRUPT VECTOR

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

INT 2F FB42 - ??? - CALLED BY Borland C++ 3.0 DPMILOAD.EXE

INT 2F FB42 - ??? - CALLED BY Borland C++ 3.0 DPMILOAD.EXE

INT 2F FB42 - Borland RTM.EXE 1.0 - INSTALLATION CHECK???

INT 2F FB42 - Borland RTM.EXE 1.0 - ???

INT 2F FB42 - Borland RTM.EXE 1.0 - ???

INT 2F FB43 - Borland C++ 3.0 DPMILOAD.EXE - NULL FUNCTION

INT 2F FB43 - Borland TDX - INSTALLATION CHECK

INT 2F FB64 - AutoBraille v1.1A - GET ???

INT 2F FBA1 - TKERNEL (Borland DOS extender) - INSTALLATION CHECK

INT 2F FBA1 - TKERNEL (Borland DOS extender) - GET ENTRY POINT

INT 2F FBA1 - TKERNEL (Borland DOS extender) - UNINSTALL

INT 2F FBFB - SoundBlaster speech driver - INSTALLATION CHECK

INT 2F FE00 - PC-NFS ??? - INSTALLATION CHECK

INT 2F FE00 - PC-NFS ??? - INSTALLATION CHECK

INT 2F FE00 - NORTON UTILITIES 5.0+ TSRs - INSTALLATION CHECK/STATUS REPORT

INT 2F FE00 - GO! v3.22+ - API

INT 2F FE01 - NORTON UTILITIES 5.0+ TSRs - ENABLE

INT 2F FE02 - NORTON UTILITIES 5.0+ TSRs - DISABLE

INT 2F FE03 - NORTON UTILITIES 5.0+ TSRs - FLUSH BUFFERS

INT 2F FE04 - NORTON UTILITIES 5.0+ DISKMON, FILESAVE / EP - internal - ???

INT 2F FE05 - NORTON UTILITIES 5.0+ DISKMON, FILESAVE / EP - internal - ???

INT 2F FE08 - PC-NFS ??? - GET ???

INT 2F FE10 - NORTON UTILITIES 6.0 NCACHE - REBOOT

INT 2F FEEF - RTS Control TSR - INSTALLATION CHECK

INT 2F FF00 - Topware Network Operating System - INSTALLATION CHECK

INT 2F FF01 - Topware Network Operating System - GET VERSION

INT 2F FF02 - TopWare Network OS v5.10+ - GET TopNet VERSION STRING

INT 2F FF10 - TopWare Network OS v5.10+ - TopTerm - INSTALLATION CHECK

INT 2F FF11 - TopWare Network OS v5.10+ - TopTerm - ENABLE KEYBOARD SERVICE

INT 2F FF12 - TopWare Network OS v5.10+ - TopTerm - DISABLE KEYBOARD SERVICE

INT 2F FF13 - TopWare Network OS v5.10+ - TopTerm - SET INSTALLATION FLAG

INT 2F FF14 - TopWare Network OS v5.10+ - START BACKGROUND RECEIVE VIDEO DATA

INT 2F FF15 - TopWare Network OS v5.10+ - END BACKGROUND RECEIVE VIDEO DATA

INT 2F FF16 - TopWare Network OS v5.10+ - SET CONTROL NUMBER OF "SHOW" SCREEN

INT 2F FF18 - TopWare Network OS v5.10+ - SEND FULL SCREEN OF DATA FOR TopShow

INT 2F FF23 - TopWare Network OS v5.10+ - CLOSE SPOOL FILES AND START PRINTING

INT 2F FF27 - TopWare Network OS v5.10+ - GET "SHOW" TYPE

Interrupts


INT 30 - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 30 - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction

INT 30 ---- - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction for CP/M-style calls

INT 30 ---- - QRIP/TSR - USED BY GRAPHICS LIBRARY

Interrupts


INT 31 - overwritten by CP/M jump instruction in INT 30
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 31 - overwritten by CP/M jump instruction in INT 30

INT 31 ---- - overwritten by CP/M jump instruction in INT 30

INT 31 ---- - VIRUS - "Vacsina" series - INSTALLATION CHECK (NOT A VECTOR!)

INT 31 0000 - DPMI 0.9+ - ALLOCATE LDT DESCRIPTORS

INT 31 0001 - DPMI 0.9+ - FREE LDT DESCRIPTOR

INT 31 0002 - DPMI 0.9+ - SEGMENT TO DESCRIPTOR

INT 31 0003 - DPMI 0.9+ - GET NEXT SELECTOR INCREMENT VALUE

INT 31 0004 - DPMI 0.9+ - LOCK SELECTOR

INT 31 0005 - DPMI 0.9+ - UNLOCK SELECTOR

INT 31 0006 - DPMI 0.9+ - GET SEGMENT BASE ADDRESS

INT 31 0007 - DPMI 0.9+ - SET SEGMENT BASE ADDRESS

INT 31 0008 - DPMI 0.9+ - SET SEGMENT LIMIT

INT 31 0009 - DPMI 0.9+ - SET DESCRIPTOR ACCESS RIGHTS

INT 31 000A - DPMI 0.9+ - CREATE ALIAS DESCRIPTOR

INT 31 000B - DPMI 0.9+ - GET DESCRIPTOR

INT 31 000C - DPMI 0.9+ - SET DESCRIPTOR

INT 31 000D - DPMI 0.9+ - ALLOCATE SPECIFIC LDT DESCRIPTOR

INT 31 000E - DPMI 1.0+ - GET MULTIPLE DESCRIPTORS

INT 31 000F - DPMI 1.0+ - SET MULTIPLE DESCRIPTORS

INT 31 0100 - DPMI 0.9+ - ALLOCATE DOS MEMORY BLOCK

INT 31 0101 - DPMI 0.9+ - FREE DOS MEMORY BLOCK

INT 31 0102 - DPMI 0.9+ - RESIZE DOS MEMORY BLOCK

INT 31 0200 - DPMI 0.9+ - GET REAL MODE INTERRUPT VECTOR

INT 31 0201 - DPMI 0.9+ - SET REAL MODE INTERRUPT VECTOR

INT 31 0202 - DPMI 0.9+ - GET PROCESSOR EXCEPTION HANDLER VECTOR

INT 31 0203 - DPMI 0.9+ - SET PROCESSOR EXCEPTION HANDLER VECTOR

INT 31 0204 - DPMI 0.9+ - GET PROTECTED MODE INTERRUPT VECTOR

INT 31 0205 - DPMI 0.9+ - SET PROTECTED MODE INTERRUPT VECTOR

INT 31 0210 - DPMI 1.0+ - GET PROTECTED MODE EXTENDED PROCESSOR EXCEPTION HANDLER

INT 31 0211 - DPMI 1.0+ - GET REAL MODE EXTENDED PROCESSOR EXCEPTION HANDLER

INT 31 0212 - DPMI 1.0+ - SET PROTECTED MODE EXTENDED PROCESSOR EXCEPTION HANDLER

INT 31 0213 - DPMI 1.0+ - SET REAL MODE EXTENDED PROCESSOR EXCEPTION HANDLER

INT 31 0300 - DPMI 0.9+ - SIMULATE REAL MODE INTERRUPT

INT 31 0301 - DPMI 0.9+ - CALL REAL MODE PROCEDURE WITH FAR RETURN FRAME

INT 31 0302 - DPMI 0.9+ - CALL REAL MODE PROCEDURE WITH IRET FRAME

INT 31 0303 - DPMI 0.9+ - ALLOCATE REAL MODE CALLBACK ADDRESS

INT 31 0304 - DPMI 0.9+ - FREE REAL MODE CALLBACK ADDRESS

INT 31 0305 - DPMI 0.9+ - GET STATE SAVE/RESTORE ADDRESSES

INT 31 0306 - DPMI 0.9+ - GET RAW MODE SWITCH ADDRESSES

INT 31 0400 - DPMI 0.9+ - GET DPMI VERSION

INT 31 0401 - DPMI 1.0+ - GET DPMI CAPABILITIES

INT 31 0500 - DPMI 0.9+ - GET FREE MEMORY INFORMATION

INT 31 0501 - DPMI 0.9+ - ALLOCATE MEMORY BLOCK

INT 31 0502 - DPMI 0.9+ - FREE MEMORY BLOCK

INT 31 0503 - DPMI 0.9+ - RESIZE MEMORY BLOCK

INT 31 0504 - DPMI 1.0+ - ALLOCATE LINEAR MEMORY BLOCK

INT 31 0505 - DPMI 1.0+ - RESIZE LINEAR MEMORY BLOCK

INT 31 0506 - DPMI 1.0+ - GET PAGE ATTRIBUTES

INT 31 0507 - DPMI 1.0+ - MODIFY PAGE ATTRIBUTES

INT 31 0508 - DPMI 1.0+ - MAP DEVICE IN MEMORY BLOCK

INT 31 0509 - DPMI 1.0+ - MAP CONVENTIONAL MEMORY IN MEMORY BLOCK

INT 31 050A - DPMI 1.0+ - GET MEMORY BLOCK SIZE AND BASE

INT 31 050B - DPMI 1.0+ - GET MEMORY INFORMATION

INT 31 0600 - DPMI 0.9+ - LOCK LINEAR REGION

INT 31 0601 - DPMI 0.9+ - UNLOCK LINEAR REGION

INT 31 0602 - DPMI 0.9+ - MARK REAL MODE REGION AS PAGEABLE

INT 31 0603 - DPMI 0.9+ - RELOCK REAL MODE REGION

INT 31 0604 - DPMI 0.9+ - GET PAGE SIZE

INT 31 0700 - DPMI 0.9+ - MARK PAGES AS PAGING CANDIDATES

INT 31 0701 - DPMI 0.9+ - DISCARD PAGES

INT 31 0702 - DPMI 0.9+ - MARK PAGE AS DEMAND PAGING CANDIDATE

INT 31 0703 - DPMI 0.9+ - DISCARD PAGE CONTENTS

INT 31 0800 - DPMI 0.9+ - PHYSICAL ADDRESS MAPPING

INT 31 0801 - DPMI 1.0+ - FREE PHYSICAL ADDRESS MAPPING

INT 31 0900 - DPMI 0.9+ - GET AND DISABLE VIRTUAL INTERRUPT STATE

INT 31 0901 - DPMI 0.9+ - GET AND ENABLE VIRTUAL INTERRUPT STATE

INT 31 0902 - DPMI 0.9+ - GET VIRTUAL INTERRUPT STATE

INT 31 0A00 - DPMI 0.9+ - GET VENDOR SPECIFIC API ENTRY POINT

INT 31 0B00 - DPMI 0.9+ - SET DEBUG WATCHPOINT

INT 31 0B01 - DPMI 0.9+ - CLEAR DEBUG WATCHPOINT

INT 31 0B02 - DPMI 0.9+ - GET STATE OF DEBUG WATCHPOINT

INT 31 0B03 - DPMI 0.9+ - RESET DEBUG WATCHPOINT

INT 31 0C00 - DPMI 1.0+ - INSTALL RESIDENT HANDLER INIT CALLBACK

INT 31 0C01 - DPMI 1.0+ - TERMINATE AND STAY RESIDENT

INT 31 0D00 - DPMI 1.0+ - ALLOCATE SHARED MEMORY

INT 31 0D01 - DPMI 1.0+ - FREE SHARED MEMORY

INT 31 0D02 - DPMI 1.0+ - SERIALIZE SHARED MEMORY

INT 31 0D03 - DPMI 1.0+ - FREE SERIALIZATION ON SHARED MEMORY

INT 31 0E00 - DPMI 1.0+ - GET COPROCESSOR STATUS

INT 31 0E01 - DPMI 1.0+ - SET EMULATION

INT 31 57-- - Netroom3 DPMI.EXE v3.00 - ???

INT 31 5702 - Netroom3 DPMI.EXE v3.00 - SWITCH TO PROTECTED MODE

INT 31 EE00 - DOS32 v3.0+ - GET DOS32 VERSION AND SELECTOR VALUES

INT 31 EE02 - DOS32 v3.0+ - GET DOS32 ADDRESS INFORMATION

INT 31 EE20 - DOS32 v3.0+ - GET REAL MODE CALL BACK ADDRESS WITH RETF STACK FRAME

INT 31 EE21 - DOS32 v3.0+ - GET REAL MODE CALL BACK ADDRESS WITH IRET STACK FRAME

INT 31 EE30 - DOS32 v3.0+ - TERMINATE AND STAY RESIDENT

INT 31 EE40 - DOS32 v3.0+ - UNDO PREVIOUS MEMORY ALLOCATION or DMA BUFFER

INT 31 EE41 - DOS32 v3.0+ - ALLOCATE 16KB DMA BLOCK

INT 31 EE42 - DOS32 v3.0+ - ALLOCATE MEMORY BLOCK

INT 31 FF00 - CauseWay - "Info" - GET SYSTEM SELECTORS/FLAGS

INT 31 FF01 - CauseWay - "IntXX" - SIMULATE REAL-MODE INTERRUPT

INT 31 FF02 - CauseWay - "FarCallReal" - SIMULATE REAL-MODE FAR CALL

INT 31 FF03 - CauseWay - "GetSel" - ALLOCATE NEW SELECTOR

INT 31 FF04 - CauseWay - "RelSel" - RELEASE A SELECTOR

INT 31 FF05 - CauseWay - "CodeSel" - CONVERT SELECTOR TO EXECUTABLE CODE SELECTOR

INT 31 FF06 - CauseWay - "AliasSel" - CREATE READ/WRITE DATA ALIAS SELECTOR

INT 31 FF07 - CauseWay - "GetSelDet" - GET SELECTOR BASE AND LIMIT

INT 31 FF08 - CauseWay - "GetSelDet32" - GET SELECTOR BASE AND LIMIT (32-bit)

INT 31 FF09 - CauseWay - "SetSelDet" - SET SELECTOR BASE AND LIMIT

INT 31 FF0A - CauseWay - "SetSelDet32" - SET SELECTOR BASE AND LIMIT (32-bit)

INT 31 FF0B - CauseWay - "GetMem" - ALLOCATE BLOCK OF MEMORY

INT 31 FF0C - CauseWay - "GetMem32" - ALLOCATE BLOCK OF MEMORY (32-bit)

INT 31 FF0D - CauseWay - "ResMem" - RESIZE MEMORY BLOCK

INT 31 FF0E - CauseWay - "ResMem32" - RESIZE MEMORY BLOCK (32-bit)

INT 31 FF0F - CauseWay - "RelMem" - RELEASE PREVIOUSLY ALLOCATED MEMORY

INT 31 FF10 - CauseWay - "GetMemLinear" - ALLOCATE MEMORY WITHOUT SELECTOR

INT 31 FF11 - CauseWay - "GetMemLinear32" - ALLOCATE MEMORY WITHOUT SELECTOR

INT 31 FF12 - CauseWay - "ResMemLinear" - RESIZE LINEAR MEMORY BLOCK

INT 31 FF13 - CauseWay - "ResMemLinear32" - RESIZE LINEAR MEMORY BLOCK (32-bit)

INT 31 FF14 - CauseWay - "RelMemLinear" - RELEASE LINEAR MEMORY BLOCK

INT 31 FF15 - CauseWay - "RelMemLinear32" - RELEASE LINEAR MEMORY BLOCK (32-bit)

INT 31 FF16 - CauseWay - "GetMemNear" - ALLOCATE APPLICATION-RELATIVE MEMORY

INT 31 FF17 - CauseWay - "ResMemNear" - RESIZE APPLICATION-RELATIVE MEMORY BLOCK

INT 31 FF18 - CauseWay - "RelMemNear" - RELEASE APPLICATION-RELATIVE MEMORY BLOCK

INT 31 FF19 - CauseWay - "Linear2Near" - CONVERT LINEAR TO APP-RELATIVE ADDRESS

INT 31 FF1A - CauseWay - "Near2Linear" - CONVERT APP-RELATIVE TO LINEAR ADDRESS

INT 31 FF1B - CauseWay - "LockMem" - LOCK REGION OF MEMORY

INT 31 FF1C - CauseWay - "LockMem32" - LOCK REGION OF MEMORY (32-bit)

INT 31 FF1D - CauseWay - "UnLockMem" - UNLOCK REGION OF MEMORY

INT 31 FF1E - CauseWay - "UnLockMem32" - UNLOCK REGION OF MEMORY (32-bit)

INT 31 FF1F - CauseWay - "LockMemNear" - LOCK APPLICATION-RELATIVE MEMORY REGION

INT 31 FF20 - CauseWay - "UnLockMemNear" - UNLOCK APP-RELATIVE MEMORY REGION

INT 31 FF21 - CauseWay - "GetMemDOS" - ALLOCATE CONVENTIONAL MEMORY

INT 31 FF22 - CauseWay - "ResMemDOS" - RESIZE CONVENTIONAL MEMORY BLOCK

INT 31 FF23 - CauseWay - "RelMemDOS" - RELEASE CONVENTIONAL MEMORY BLOCK

INT 31 FF24 - CauseWay - "ExecOverlay" - LOAD AND OPTIONALLY EXECUTE APP CODE

INT 31 FF25 - CauseWay - "GetDOSTrans" - GET DOS TRANSFER BUFFER

INT 31 FF26 - CauseWay - "SetDOSTrans" - SET DOS TRANSFER BUFFER

Interrupts


INT 32 - (no special use)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 32 - (no special use)

INT 32 ---- - VIRUS - reportedly used by "Tiny" Viruses

INT 32 ---- - VIRUS - "Plovdiv 1.3"/"Damage 1.3" - ORIGINAL INT 21h VECTOR

Interrupts


INT 33 - MS MOUSE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 33 - MS MOUSE

INT 33 0000 - MS MOUSE - RESET DRIVER AND READ STATUS

INT 33 0001 - MS MOUSE v1.0+ - SHOW MOUSE CURSOR

INT 33 0002 - MS MOUSE v1.0+ - HIDE MOUSE CURSOR

INT 33 0003 - MS MOUSE v1.0+ - RETURN POSITION AND BUTTON STATUS

INT 33 0004 - MS MOUSE v1.0+ - POSITION MOUSE CURSOR

INT 33 0005 - MS MOUSE v1.0+ - RETURN BUTTON PRESS DATA

INT 33 0006 - MS MOUSE v1.0+ - RETURN BUTTON RELEASE DATA

INT 33 0007 - MS MOUSE v1.0+ - DEFINE HORIZONTAL CURSOR RANGE

INT 33 0008 - MS MOUSE v1.0+ - DEFINE VERTICAL CURSOR RANGE

INT 33 0009 - MS MOUSE v3.0+ - DEFINE GRAPHICS CURSOR

INT 33 000A - MS MOUSE v3.0+ - DEFINE TEXT CURSOR

INT 33 000B - MS MOUSE v1.0+ - READ MOTION COUNTERS

INT 33 000C - MS MOUSE v1.0+ - DEFINE INTERRUPT SUBROUTINE PARAMETERS

INT 33 000D - MS MOUSE v1.0+ - LIGHT PEN EMULATION ON

INT 33 000E - MS MOUSE v1.0+ - LIGHT PEN EMULATION OFF

INT 33 000F - MS MOUSE v1.0+ - DEFINE MICKEY/PIXEL RATIO

INT 33 0010 - MS MOUSE v1.0+ - DEFINE SCREEN REGION FOR UPDATING

INT 33 0010 - Genius MOUSE - DEFINE SCREEN REGION FOR UPDATING

INT 33 0011 - Genius Mouse 9.06 - GET NUMBER OF BUTTONS

INT 33 0012 - MS MOUSE - SET LARGE GRAPHICS CURSOR BLOCK

INT 33 0013 - MS MOUSE v5.0+ - DEFINE DOUBLE-SPEED THRESHOLD

INT 33 0014 - MS MOUSE v3.0+ - EXCHANGE INTERRUPT SUBROUTINES

INT 33 0015 - MS MOUSE v6.0+ - RETURN DRIVER STORAGE REQUIREMENTS

INT 33 0016 - MS MOUSE v6.0+ - SAVE DRIVER STATE

INT 33 0017 - MS MOUSE v6.0+ - RESTORE DRIVER STATE

INT 33 0018 - MS MOUSE v6.0+ - SET ALTERNATE MOUSE USER HANDLER

INT 33 0019 - MS MOUSE v6.0+ - RETURN USER ALTERNATE INTERRUPT VECTOR

INT 33 001A - MS MOUSE v6.0+ - SET MOUSE SENSITIVITY

INT 33 001B - MS MOUSE v6.0+ - RETURN MOUSE SENSITIVITY

INT 33 001C - MS MOUSE v6.0+ - SET INTERRUPT RATE

INT 33 001D - MS MOUSE v6.0+ - DEFINE DISPLAY PAGE NUMBER

INT 33 001E - MS MOUSE v6.0+ - RETURN DISPLAY PAGE NUMBER

INT 33 001F - MS MOUSE v6.0+ - DISABLE MOUSE DRIVER

INT 33 0020 - MS MOUSE v6.0+ - ENABLE MOUSE DRIVER

INT 33 0021 - MS MOUSE v6.0+ - SOFTWARE RESET

INT 33 0022 - MS MOUSE v6.0+ - SET LANGUAGE FOR MESSAGES

INT 33 0023 - MS MOUSE v6.0+ - GET LANGUAGE FOR MESSAGES

INT 33 0024 - MS MOUSE v6.26+ - GET SOFTWARE VERSION, MOUSE TYPE, AND IRQ NUMBER

INT 33 0025 - MS MOUSE v6.26+ - GET GENERAL DRIVER INFORMATION

INT 33 0026 - MS MOUSE v6.26+ - GET MAXIMUM VIRTUAL COORDINATES

INT 33 0026 - Genius Mouse 9.06 - ???

INT 33 0027 - MS MOUSE v7.01+ - GET SCREEN/CURSOR MASKS AND MICKEY COUNTS

INT 33 0028 - MS MOUSE v7.0+ - SET VIDEO MODE

INT 33 0029 - MS MOUSE v7.0+ - ENUMERATE VIDEO MODES

INT 33 002A - MS MOUSE v7.02+ - GET CURSOR HOT SPOT

INT 33 002B - MS MOUSE v7.0+ - LOAD ACCELERATION PROFILES

INT 33 002C - MS MOUSE v7.0+ - GET ACCELERATION PROFILES

INT 33 002D - MS MOUSE v7.0+ - SELECT ACCELERATION PROFILE

INT 33 002E - MS MOUSE v8.10+ - SET ACCELERATION PROFILE NAMES

INT 33 002F - MS MOUSE v7.02+ - MOUSE HARDWARE RESET

INT 33 0030 - MS MOUSE v7.04+ - GET/SET BallPoint INFORMATION

INT 33 0031 - MS MOUSE v7.05+ - GET CURRENT MINIMUM/MAXIMUM VIRTUAL COORDINATES

INT 33 0032 - MS MOUSE v7.05+ - GET ACTIVE ADVANCED FUNCTIONS

INT 33 0033 - MS MOUSE v7.05+ - GET SWITCH SETTINGS AND ACCELERATION PROFILE DATA

INT 33 0034 - MS MOUSE v8.0+ - GET INITIALIZATION FILE

INT 33 0035 - MS MOUSE v8.10+ - LCD SCREEN LARGE POINTER SUPPORT

INT 33 0042 - PCMOUSE - GET MSMOUSE STORAGE REQUIREMENTS

INT 33 0043 - Mouse Systems MOUSE DRIVER v7.01+ - CONFIGURE MOUSE???

INT 33 0044 - Mouse Systems MOUSE DRIVER v7.01+ - TOGGLE IGNORE ACCELERATION CMDS

INT 33 0045 - Mouse Systems MOUSE DRIVER v7.01+ - TOGGLE RESOLUTION DOUBLING

INT 33 0047 - Mouse Systems MOUSE DRIVER v7.01+ - SET BUTTON ASSIGNMENTS

INT 33 0048 - Mouse Systems MOUSE DRIVER v7.01+ - GET ???

INT 33 004B - Z-NIX MOUSE DRIVER v7.04d - INSTALLATION CHECK

INT 33 004C - Mouse Systems MOUSE DRIVER v7.01+ - SET ??? FLAG

INT 33 004D - MS MOUSE - RETURN POINTER TO COPYRIGHT STRING

INT 33 004F - Mouse Systems MOUSE DRIVER v7.01+ - ENABLE MOUSE

INT 33 0050 - PCMOUSE - SAVE MSMOUSE STATE

INT 33 0052 - PCMOUSE - RESTORE MSMOUSE STATE

INT 33 0053 - Mouse Systems MOUSE DRIVER v7.01+ - DISABLE MOUSE

INT 33 0054 - Mouse Systems MOUSE DRIVER v7.01+ - SELECT ULTRARES ACCELERATION LEVEL

INT 33 0055 - Kraft Mouse - GET ???

INT 33 0058 - Mouse Systems MOUSE DRIVER v7.01+ - ???

INT 33 005A - Mouse Systems MOUSE DRIVER v7.01+ - SET ULTRARES ACCELERATIONS

INT 33 0061 - Mouse Systems MOUSE DRIVER v7.01+ - ???

INT 33 0067 - Mouse Systems MOUSE DRIVER v7.01+ - GET MOUSE BUTTONS???

INT 33 006A - ATI Mouse - INSTALLATION CHECK

INT 33 006C - TRUEDOX Mouse driver v4.01 - GET/SET HARDWARE PARAMETERS

INT 33 006C - Mouse Systems MOUSE DRIVER v7.01+ - CLEAR ??? FLAG

INT 33 006D - MS MOUSE - GET VERSION STRING

INT 33 0070 - Mouse Systems MOUSE DRIVER - POPUP.COM - INSTALLATION CHECK

INT 33 0072 - Mouse Systems MOUSE DRIVER v7.01+ - ???

INT 33 0073 - Mouse Systems MOUSE DRIVER v7.01+ - GET BUTTON ASSIGNMENTS

INT 33 00A0 - TRUEDOX Mouse driver - SET HARDWARE PC MODE (3 button)

INT 33 00A1 - TRUEDOX Mouse driver - SET HARDWARE MS MODE (2 button)

INT 33 00A6 - TRUEDOX Mouse driver - SET RESOLUTION

INT 33 0100 - GRTMOUSE v1.00+ - INSTALLATION CHECK

INT 33 0101 - GRTMOUSE v1.00+ - SET MOUSE CURSOR SHAPE

INT 33 0102 - GRTMOUSE v1.00+ - GET MOUSE CURSOR SHAPE

INT 33 0103 - GRTMOUSE v1.00+ - SET ACTIVE CHARACTERS

INT 33 0104 - GRTMOUSE v1.00+ - GET ACTIVE CHARACTERS

INT 33 012E - MS MOUSE v8.10+ - ???

INT 33 022E - MS MOUSE v8.10+ - ???

INT 33 0666 - TRUEDOX Mouse driver v4.01 - GET COPYRIGHT STRING

INT 33 136C - LOGITECH MOUSE v6.10+ - ???

INT 33 146C - LOGITECH MOUSE v6.10+ - GET/SET ???

INT 33 156C - LOGITECH MOUSE v6.10+ - GET SIGNATURE AND VERSION STRINGS

INT 33 166C - LOGITECH MOUSE v6.10+ - ???

INT 33 176C - LOGITECH MOUSE v6.10+ - ???

INT 33 186C - LOGITECH MOUSE v6.10+ - ???

INT 33 196C - LOGITECH MOUSE v6.10+ - ???

INT 33 1A6C - LOGITECH MOUSE v6.10+ - GET ???

INT 33 1B6C - LOGITECH MOUSE v6.10+ - SET ???

INT 33 1C6C - LOGITECH MOUSE v6.10+ - ???

INT 33 1D6C - LOGITECH MOUSE - GET COMPASS PARAMETER

INT 33 1E6C - LOGITECH MOUSE - SET COMPASS PARAMETER

INT 33 1F6C - LOGITECH MOUSE - GET BALLISTICS INFORMATION

INT 33 206C - LOGITECH MOUSE - SET LEFT OR RIGHT PARAMETER

INT 33 216C - LOGITECH MOUSE - GET LEFT OR RIGHT PARAMETER

INT 33 226C - LOGITECH MOUSE - REMOVE DRIVER FROM MEMORY

INT 33 236C - LOGITECH MOUSE - SET BALLISTICS INFORMATION

INT 33 246C - LOGITECH MOUSE - GET PARAMETERS AND RESET SERIAL MOUSE

INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET BAUD RATE (SERIAL MOUSE ONLY)

INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET EMULATION (SERIAL MOUSE ONLY)

INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET REPORT RATE (SERIAL MOUSE ONLY)

INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET MOUSE PORT (SERIAL MOUSE ONLY)

INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET MOUSE LOGICAL BUTTONS

INT 33 266C - LOGITECH MOUSE - GET VERSION???

INT 33 276C - LOGITECH MOUSE - ??? Tries MMSeries, Baud 2400

INT 33 3000 - Smooth Mouse Driver, PrecisePoint - INSTALLATION CHECK

INT 33 3001 - Smooth Mouse Driver, PrecisePoint - ENABLE SMOOTH MOUSE

INT 33 3002 - Smooth Mouse Driver, PrecisePoint - DISABLE SMOOTH MOUSE

INT 33 3003 - Smooth Mouse Driver, PrecisePoint - GET INFORMATION

INT 33 3004 - Smooth Mouse Driver, PrecisePoint - RESERVED FUTURE EXPANSION

INT 33 3005 - Smooth Mouse Driver, PrecisePoint - RESERVED FUTURE EXPANSION

INT 33 4F00 - LOGITECH MOUSE v6.10+ - GET ???

INT 33 4F01 - LOGITECH MOUSE v6.10+ - ???

INT 33 6F00 - Hewlett Packard - HP MOUSE DRIVER INSTALLATION CHECK

INT 33 8800 - InfoTrack IMOUSE.COM - UNHOOK MOUSE IRQ

INT 33 8800 - InfoTrack IMOUSE.COM - GET ACTIVE IRQ

INT 33 FFE6 - Switch-It v3.23 - GET ??? PROGRAM

INT 33 FFE7 - Switch-It v3.23 - GET ???

INT 33 FFE8 - Switch-It v3.23 - ???

INT 33 FFE9 - Switch-It v3.23 - SET ???

INT 33 FFEA - Switch-It v3.23 - SET ???

INT 33 FFEB - Switch-It v3.23 - SET ??? FLAG

INT 33 FFEC - Switch-It v3.23 - SET ???

INT 33 FFED - Switch-It v3.23 - GET ???

INT 33 FFEE - Switch-It v3.23 - GET ???

INT 33 FFEF - Switch-It v3.23 - GET ???

INT 33 FFF0 - Switch-It v3.23 - SET ???

INT 33 FFF1 - Switch-It v3.23 - GET CONFIGURATION FILE

INT 33 FFF2 - Switch-It v3.23 - SET ??? FLAG

INT 33 FFF3 - Switch-It v3.23 - GET ???

INT 33 FFF4 - Switch-It v3.23 - SET ???

INT 33 FFF5 - Switch-It v3.23 - GET ???

INT 33 FFF6 - Switch-It v3.23 - GET ???

INT 33 FFF7 - Switch-It v3.23 - GET ???

INT 33 FFF8 - Switch-It v3.23 - ???

INT 33 FFF9 - Switch-It v3.23 - NOP

INT 33 FFFA - Switch-It v3.23 - SET ???

INT 33 FFFB - Switch-It v3.23 - GET ???

INT 33 FFFC - Switch-It v3.23 - CLEAR ???

INT 33 FFFD - Switch-It v3.23 - GET MEMORY ADDRESSES???

INT 33 FFFE - Switch-It v3.23 - INSTALLATION CHECK

INT 33 FFFF - Switch-It v3.23 - ???

Interrupts


INT 34 - FLOATING POINT EMULATION - OPCODE D8h
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 34 - FLOATING POINT EMULATION - OPCODE D8h

INT 34 ---- - FLOATING POINT EMULATION - OPCODE D8h

Interrupts


INT 35 - FLOATING POINT EMULATION - OPCODE D9h
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 35 - FLOATING POINT EMULATION - OPCODE D9h

INT 35 ---- - FLOATING POINT EMULATION - OPCODE D9h

Interrupts


INT 36 - FLOATING POINT EMULATION - OPCODE DAh
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 36 - FLOATING POINT EMULATION - OPCODE DAh

INT 36 ---- - FLOATING POINT EMULATION - OPCODE DAh

Interrupts


INT 37 - FLOATING POINT EMULATION - OPCODE DBh
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 37 - FLOATING POINT EMULATION - OPCODE DBh

INT 37 ---- - FLOATING POINT EMULATION - OPCODE DBh

Interrupts


INT 38 - FLOATING POINT EMULATION - OPCODE DCh
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 38 - FLOATING POINT EMULATION - OPCODE DCh

INT 38 ---- - FLOATING POINT EMULATION - OPCODE DCh

INT 38 ---- - PC-MOS/386 v3.0 - API

Interrupts


INT 39 - FLOATING POINT EMULATION - OPCODE DDh
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 39 - FLOATING POINT EMULATION - OPCODE DDh

INT 39 ---- - FLOATING POINT EMULATION - OPCODE DDh

Interrupts


INT 3A - FLOATING POINT EMULATION - OPCODE DEh
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 3A - FLOATING POINT EMULATION - OPCODE DEh

INT 3A ---- - FLOATING POINT EMULATION - OPCODE DEh

Interrupts


INT 3B - FLOATING POINT EMULATION - OPCODE DFh
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 3B - FLOATING POINT EMULATION - OPCODE DFh

INT 3B ---- - FLOATING POINT EMULATION - OPCODE DFh

Interrupts


INT 3C - FLOATING POINT EMULATION - SEGMENT OVERRIDE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 3C - FLOATING POINT EMULATION - SEGMENT OVERRIDE

INT 3C ---- - FLOATING POINT EMULATION - INSTRUCTIONS WITH SEGMENT OVERRIDE

Interrupts


INT 3D - FLOATING POINT EMULATION - STANDALONE FWAIT
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 3D - FLOATING POINT EMULATION - STANDALONE FWAIT

INT 3D ---- - FLOATING POINT EMULATION - STANDALONE FWAIT

Interrupts


INT 3E - FLOATING POINT EMULATION - Borland "SHORTCUT" CALL
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 3E - FLOATING POINT EMULATION - Borland "SHORTCUT" CALL

INT 3E ---- - FLOATING POINT EMULATION - Borland LANGUAGES "SHORTCUT" CALL

Interrupts


INT 3F - Overlay manager interrupt (Microsoft/Borland)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 3F - Overlay manager interrupt (Microsoft/Borland)

INT 3F ---- - Overlay manager interrupt (Microsoft LINK.EXE, Borland TLINK VROOMM)

INT 3F ---- - Microsoft Dynamic Link Library manager

Interrupts


INT 40 - DISKETTE - RELOCATED ROM BIOS DISKETTE HANDLER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 40 - DISKETTE - RELOCATED ROM BIOS DISKETTE HANDLER

INT 40 ---- - DISKETTE - ROM BIOS DISKETTE HANDLER RELOCATED BY HARD DISK BIOS

INT 40 ---- - Z100 - Master 8259 - Parity error or S100 error

INT 40 ---- - Acorn BBC Master 512 - "OSFIND" - OPEN FILE

INT 40 ---- - TI Professional PC - IRQ0

Interrupts


INT 41 - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE; CPU - MS Windows
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 41 - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE; CPU - MS Windows

INT 41 ---- - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE

INT 41 ---- - Z100 - Master 8259 - Processor Swap

INT 41 ---- - TI Professional PC - IRQ1

INT 41 ---- - Acorn BBC Master 512 - "OSGBPB" - MULTI-BYTE GET/PUT

INT 41 0000 - MS Windows debugging kernel - OUTPUT CHARACTER FOR USER

INT 41 0001 - MS Windows debugging kernel - INPUT CHARACTER

INT 41 000D - MS Windows debugging kernel - TASK GOING OUT

INT 41 000E - MS Windows debugging kernel - TASK COMING IN

INT 41 0012 - MS Windows debugging kernel - "OutputDebugString"

INT 41 004F - MS Windows debugging kernel - DEBUGGER INSTALLATION CHECK

INT 41 0050 - MS Windows debugging kernel - "DefineDebugSegment"

INT 41 0051 - MS Windows debugging kernel - MOVE SEGMENT

INT 41 0052 - MS Windows debugging kernel - FREE SEGMENT

INT 41 0059 - MS Windows debugging kernel - LOAD TASK

INT 41 005C - MS Windows debugging kernel - FREE INITIAL SEGMENT

INT 41 0060 - MS Windows debugging kernel -  END OF SEGMENT LOAD

INT 41 0061 - MS Windows debugging kernel - END OF SEGMENT DISCARD

INT 41 0062 - MS Windows debugging kernel - APPLICATION TERMINATING

INT 41 0063 - MS Windows debugging kernel - ASYNCHRONOUS STOP (Ctrl-Alt-SysReq)

INT 41 0064 - MS Windows debugging kernel - DLL LOADED

INT 41 0065 - MS Windows debugging kernel - MODULE REMOVED

Interrupts


INT 42 - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 42 - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)

INT 42 ---- - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)

INT 42 ---- - Z100 - Master 8259 - Timer

INT 42 ---- - TI Professional PC - IRQ2

INT 42 ---- - Western Digital WD1002 SuperBIOS - INT 40 CASCADE

INT 42 ---- - Acorn BBS Master 512 - "OSBPUT" - WRITE SINGLE BYTE TO FILE

INT 42 7500 - Toshiba laptops - ???

INT 42 7501 - Toshiba laptop - GET ??? DATA

INT 42 7502 - Toshiba laptops - SET ??? DATA

INT 42 7503 - Toshiba laptops - GET DISPLAY STATUS

INT 42 7504 - Toshiba laptops - ???

Interrupts


INT 43 - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 43 - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)

INT 43 ---- - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)

INT 43 ---- - Z100 - Master 8259 - Slave 8259 input

INT 43 ---- - TI Professional PC - IRQ3 - TIMER1 25ms INTERVAL INTERRUPT

INT 43 ---- - Acorn BBC Master 512 - "OSBGET" - READ SINGLE BYTE FROM FILE

Interrupts


INT 44 - VIDEO DATA - CHARACTER FONT (PCjr); Novell NetWare
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 44 - VIDEO DATA - CHARACTER FONT (PCjr); Novell NetWare

INT 44 ---- - VIDEO DATA - ROM BIOS CHARACTER FONT, CHARACTERS 00h-7Fh (PCjr)

INT 44 ---- - Novell NetWare - HIGH-LEVEL LANGUAGE API

INT 44 ---- - IBM 3270-PC High Level Language API

INT 44 ---- - Z100 - Master 8259 - Serial A

INT 44 ---- - TI Professional PC - IRQ4

INT 44 ---- - VIRUS - "Lehigh" - ORIGINAL INT 21h VECTOR

INT 44 00-- - Acorn BBC Master 512 - "OSARGS" - GET/SET FILE PARAMS FOR OPEN FILE

INT 44 ---- - Acorn BBC Master 512 - "OSARGS" - GET/SET FILE PARAMS FOR OPEN FILE

Interrupts


INT 45 - Z100/Acorn
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 45 - Z100/Acorn

INT 45 ---- - Z100 - Master 8259 - Serial B

INT 45 ---- - TI Professional PC - IRQ5

INT 45 ---- - Acorn BBC Master 512 - "OSFILE" - READ/WRITE FILE OR DIRECTORY INFO

Interrupts


INT 46 - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 46 - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE

INT 46 ---- - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE

INT 46 ---- - Z100 - Master 8259 - Keyboard, Retrace, and Light Pen

INT 46 ---- - TI Professional PC - IRQ6

INT 46 ---- - Acorn BBC Master 512 - "OSRDCH" - GET CHARACTER FROM CUR INPUT STREAM

Interrupts


INT 47 - Z100/Acorn/Western Digital/SQL Base
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 47 - Z100/Acorn/Western Digital/SQL Base

INT 47 ---- - Z100 - Master 8259 - Printer

INT 47 ---- - TI Professional PC - IRQ7 - KEYBOARD USART

INT 47 ---- - Acorn BBC Master 512 - "OSWRCH" - WRITE CHARACTER TO CUR OUTPUT STREAM

INT 47 ---- - Western Digital WD1002-27X SuperBIOS - INT 40 CASCADE

INT 47 8000 - SQL Base - DATABASE ENGINE API

INT 47 8001 - SQL Base - GET VERSION NUMBER

Interrupts


INT 48 - KEYBOARD (PCjr) - Z100/Watstar/Acorn/Western Digital/Compaq
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 48 - KEYBOARD (PCjr) - Z100/Watstar/Acorn/Western Digital/Compaq

INT 48 ---- - KEYBOARD - CORDLESS KEYBOARD TRANSLATION (PCjr)

INT 48 ---- - Z100 - Slave 8259 - S100 vectored line 0

INT 48 ---- - Watstar PC Network data pointer 1

INT 48 ---- - TI Professional PC - SPEAKER DEVICE SERVICE ROUTINE

INT 48 ---- - Acorn BBC Master 512 - "OSNEWL" - SEND NEWLINE TO OUTPUT STREAM

INT 48 ---- - Western Digital WD1002-27X SuperBIOS - DRIVE DATA (NOT A VECTOR!)

INT 48 ---- - Compaq UILIB.EXE - API

INT 48 1A70 - Compaq UILIB.EXE - INSTALLATION CHECK

Interrupts


INT 49 - SYSTEM DATA (PCjr) - Z100/TI/Watstar/Acorn/MAGic
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 49 - SYSTEM DATA (PCjr) - Z100/TI/Watstar/Acorn/MAGic

INT 49 ---- - SYSTEM DATA - NON-KEYBOARD SCAN-CODE TRANSLATION TABLE (PCjr)

INT 49 ---- - Z100 - Slave 8259 - S100 vectored line 1

INT 49 ---- - TI Professional PC - CRT DEVICE SERVICE ROUTINE

INT 49 ---- - Watstar PC Network data pointer 2

INT 49 ---- - Acorn BBC Master 512 - "OSASCI" - WRITE CHARACTER TO CUR OUTPUT STREAM

INT 49 0001 - MAGic v1.16+ - TURN ON MAGNIFICATION

INT 49 0002 - MAGic v1.16+ - TURN OFF MAGNIFICATION

INT 49 0003 - MAGic v1.16+ - SHIFT MAGNIFIED WINDOW TO INCLUDE SPECIFIED LOCATION

INT 49 0004 - MAGic v1.16+ - REPOSITION MAGNIFIED WINDOW

INT 49 0005 - MAGic v1.16+ - GET POSITION OF MAGNIFIED WINDOW

INT 49 0006 - MAGic v1.16+ - GET SIZE OF FULL SCREEN

INT 49 0007 - MAGic v1.16+ - GET SIZE OF MAGNIFICATION WINDOW

INT 49 0008 - MAGic v1.23+ - SET TEXT MODE MAGNIFICATION SIZE

Interrupts


INT 4A - SYSTEM - USER ALARM HANDLER
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 4A - SYSTEM - USER ALARM HANDLER

INT 4A ---- - SYSTEM - USER ALARM HANDLER

INT 4A ---- - Z100 - Slave 8259 - S100 vectored line 2

INT 4A ---- - TI Professional PC - KEYBOARD DEVICE SERVICE ROUTINE

INT 4A ---- - Acorn BBC Master 512 - "OSWORD" - MISC FUNCTIONS USING CONTROL BLOCK

Interrupts


INT 4B - IBM SCSI interface; Virtual DMA Specification (VDS)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 4B - IBM SCSI interface; Virtual DMA Specification (VDS)

INT 4B ---- - Z100 - Slave 8259 - S100 vectored line 3

INT 4B ---- - TI Professional PC - PARALLEL PORT DEVICE SERVICE ROUTINE

INT 4B ---- - Common Access Method SCSI interface (draft revision 1.9)

INT 4B ---- - Acorn BBC Master 512 - "OSBYTE" - MISC FUNCTIONS USING REGISTER PARAMS

INT 4B 80-- - IBM SCSI interface

INT 4B 8102 - Virtual DMA Specification (VDS) - GET VERSION

INT 4B 8103 - Virtual DMA Specification - LOCK DMA REGION

INT 4B 8104 - Virtual DMA Specification - UNLOCK DMA REGION

INT 4B 8105 - Virtual DMA Specification - SCATTER/GATHER LOCK REGION

INT 4B 8106 - Virtual DMA Specification - SCATTER/GATHER UNLOCK REGION

INT 4B 8107 - Virtual DMA Specification - REQUEST DMA BUFFER

INT 4B 8108 - Virtual DMA Specification - RELEASE DMA BUFFFER

INT 4B 8109 - Virtual DMA Specification - COPY INTO DMA BUFFER

INT 4B 810A - Virtual DMA Specification - COPY OUT OF DMA BUFFER

INT 4B 810B - Virtual DMA Specification - DISABLE DMA TRANSLATION

INT 4B 810C - Virtual DMA Specification - ENABLE DMA TRANSLATION

INT 4B 810D - QEMM-386 - BUG

Interrupts


INT 4C - Z100/Acorn/TI
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 4C - Z100/Acorn/TI

INT 4C ---- - Z100 - Slave 8259 - S100 vectored line 4

INT 4C ---- - TI Professional PC - CLOCK/ANALOG INTERFACE

INT 4C ---- - Acorn BBC Master 512 - "OSCLI" - INTERPRET COMMAND LINE

Interrupts


INT 4D - Z100
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 4D - Z100

INT 4D ---- - Z100 - Slave 8259 - S100 vectored line 5

INT 4D 00-- - TI Professional PC - DISK - RESET DISK SYSTEM

INT 4D 01-- - TI Professional PC - DISK - GET STATUS OF LAST OPERATION

INT 4D 02-- - TI Professional PC - DISK - READ SECTOR(S) INTO MEMORY

INT 4D 03-- - TI Professional PC - DISK - WRITE SECTOR(S) FROM MEMORY

INT 4D 04-- - TI Professional PC - DISK - VERIFY DISK SECTOR CRC(S)

INT 4D 06-- - TI Professional PC - DISK - VERIFY DISK SECTOR(S)

INT 4D 07-- - TI Professional PC - DISK - GET RETRY STATUS OF LAST OPERATION

INT 4D 08-- - TI Professional PC - DISK - SET STANDARD DEVICE INTERFACE TABLE

INT 4D 09-- - TI Professional PC - DISK - SET DEVICE INTERFACE TABLE ADDRESS

INT 4D 0A-- - TI Professional PC - DISK - GET DEVICE INTERFACE TABLE ADDRESS

INT 4D 0B-- - TI Professional PC - DISK - TURN OFF ALL DRIVES

Interrupts


INT 4E - TI/Z100
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 4E - TI/Z100

INT 4E ---- - Z100 - Slave 8259 - S100 vectored line 6

INT 4E ---- - TI Professional PC - TIME-OF-DAY CLOCK DEVICE SERVICE ROUTINE

Interrupts


INT 4F - Common Access Method SCSI
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 4F - Common Access Method SCSI

INT 4F ---- - Z100 - Slave 8259 - S100 vectored line 7

INT 4F ---- - TI Professional PC - SYSTEM CONFIGURATION CALL

INT 4F 8100 - Common Access Method SCSI interface rev 2.3 - SEND CCB TO XPT/SIM

INT 4F 8200 - Common Access Method SCSI interface rev 2.3 - INSTALLATION CHECK

Interrupts


INT 50 - IRQ0 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 50 - IRQ0 relocated by software

INT 50 ---- - TIL Xpert AIM (X.25)

INT 50 ---- - IRQ0 relocated by DESQview

INT 50 ---- - IRQ0 relocated by IBM 3278 emulation control program

INT 50 ---- - IRQ0 relocated by OS/2 v1.x

INT 50 ---- - TI Professional PC - FATAL SOFTWARE ERROR TRAP

INT 50 0000 - Vanderaart TEXT WINDOWS, PC Thuis Shell - OPEN TEXT WINDOW

INT 50 0001 - Vanderaart TEXT WINDOWS, PC Thuis Shell - CLOSE TEXT WINDOW

INT 50 0002 - Vanderaart TEXT WINDOWS - PUT CHARACTER IN WINDOW

INT 50 0002 - PC Thuis Organizer Shell - PLOT TEXT

INT 50 0003 - Vanderaart TEXT WINDOWS - OUTPUT LINE TO WINDOW

INT 50 0003 - PC Thuis Organizer Shell - WRITE FILE

INT 50 0004 - Vanderaart TEXT WINDOWS - GET KEY

INT 50 0004 - PC Thuis Organizer Shell - READ FILE

INT 50 0005 - Vanderaart TEXT WINDOWS - CHANGE ATTRIBUTE

INT 50 0005 - PC Thuis Organizer Shell - PROMPT YES/NO

INT 50 0006 - Vanderaart TEXT WINDOWS - EDIT LINE IN WINDOW

INT 50 0006 - PC Thuis Organizer Shell - ALERT USER

INT 50 0007 - PC Thuis Organizer Shell - DO LINE

INT 50 0008 - PC Thuis Organizer Shell - DO MENU

INT 50 0009 - PC Thuis Organizer Shell - MESSAGE ON

INT 50 000A - PC Thuis Organizer Shell - MESSAGE OFF

INT 50 000B - PC Thuis Organizer Shell - CHANGE ATTRIBUTE

INT 50 000C - PC Thuis Organizer Shell - DO REQUEST

INT 50 000D - PC Thuis Organizer Shell - EDIT LINE

INT 50 000E - PC Thuis Organizer Shell - PLOT CHARACTER

INT 50 000F - PC Thuis Organizer Shell - EMPTY WINDOW

INT 50 0010 - PC Thuis Organizer Shell - TRACE MENU

INT 50 0011 - PC Thuis Organizer Shell - MOVE MEMORY

INT 50 0012 - PC Thuis Organizer Shell - COMPARE MEMORY

INT 50 0013 - PC Thuis Organizer Shell - GET KEY

INT 50 0014 - PC Thuis Organizer Shell - SCROLL WINDOW

INT 50 0015 - PC Thuis Organizer Shell - GET MEMORY HANDLE

Interrupts


INT 51 - IRQ1 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 51 - IRQ1 relocated by software

INT 51 ---- - IRQ1 relocated by DESQview

INT 51 ---- - IRQ1 relocated by IBM 3278 emulation control program

INT 51 ---- - IRQ1 relocated by OS/2 v1.x

INT 51 ---- - TI Professional PC - RESTART TIMING EVENT

Interrupts


INT 52 - IRQ2 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 52 - IRQ2 relocated by software

INT 52 ---- - IRQ2 relocated by DESQview

INT 52 ---- - IRQ2 relocated by IBM 3278 emulation control program, OS/2 v1.x

INT 52 ---- - TI Professional PC - CANCEL TIMING EVENT

Interrupts


INT 53 - IRQ3 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 53 - IRQ3 relocated by software

INT 53 ---- - IRQ3 relocated by DESQview

INT 53 ---- - IRQ3 relocated by IBM 3278 emulation control program, OS/2 v1.x

INT 53 ---- - TI Professional PC - SVC INTERFACE

INT 53 ---- - WEB??? - API

Interrupts


INT 54 - IRQ4 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 54 - IRQ4 relocated by software

INT 54 ---- - IRQ4 relocated by DESQview

INT 54 ---- - IRQ4 relocated by IBM 3278 emulation control program, OS/2 v1.x

INT 54 ---- - TI Professional PC - ACTIVATE TASK SUBROUTINE

INT 54 5400 - Toshiba PCMCIA2 - INSTALLATION CHECK

Interrupts


INT 55 - IRQ5 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 55 - IRQ5 relocated by software

INT 55 ---- - IRQ5 relocated by DESQview

INT 55 ---- - IRQ5 relocated by IBM 3278 emulation control program, OS/2 v1.x

INT 55 ---- - TI Professional PC - RESERVED FOR FUTURE USE

Interrupts


INT 56 - IRQ6 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 56 - IRQ6 relocated by software

INT 56 ---- - IRQ6 relocated by DESQview

INT 56 ---- - IRQ6 relocated by IBM 3278 emulation control program, OS/2 v1.x

INT 56 ---- - TI Professional PC - RESERVED FOR FUTURE USE

Interrupts


INT 57 - IRQ7 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 57 - IRQ7 relocated by software

INT 57 ---- - IRQ7 relocated by DESQview

INT 57 ---- - IRQ7 relocated by IBM 3278 emulation control program, OS/2 v1.x

INT 57 ---- - TI Professional PC - CRT MAPPING HOOK

Interrupts


INT 58 - IRQ8/0 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 58 - IRQ8/0 relocated by software

INT 58 ---- - IRQ8 relocated by DESQview 2.26+

INT 58 ---- - IRQ0 relocated by DoubleDOS

INT 58 ---- - TI Professional PC - SYSTEM TIMER 25ms HOOK

Interrupts


INT 59 - IRQ9/1 relocated by software; GSS Computer Graphics Interface
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 59 - IRQ9/1 relocated by software; GSS Computer Graphics Interface

INT 59 ---- - IRQ9 relocated by DESQview 2.26+

INT 59 ---- - IRQ1 relocated by DoubleDOS

INT 59 ---- - TI Professional PC - COMMON ROM HARDWARE INTERRUPT EXIT VECTOR

INT 59 ---- - GSS Computer Graphics Interface (GSS*CGI)

Interrupts


INT 5A - IRQ10/2 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 5A - IRQ10/2 relocated by software

INT 5A ---- - IRQ10 relocated by DESQview 2.26+

INT 5A ---- - IRQ2 relocated by DoubleDOS

INT 5A ---- - PC Cluster adapter BIOS entry address

INT 5A ---- - TI Professional PC - SYSTEM TIMER 100ms HOOK

Interrupts


INT 5B - IRQ11/3 relocated by software; Network
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 5B - IRQ11/3 relocated by software; Network

INT 5B ---- - IRQ11 relocated by DESQview 2.26+

INT 5B ---- - IRQ3 relocated by DoubleDOS

INT 5B ---- - PC cluster adapter - RELOCATED INT 19

INT 5B ---- - AT&T Starlan Extended NetBIOS (variable length names)

INT 5B ---- - Microsoft Network Transport Layer Interface

INT 5B ---- - used by Alloy NTNX

INT 5B ---- - ISOLAN Multi Protocol Software

INT 5B ---- - TI Professional PC - KEYBOARD MAPPING HOOK

INT 5B 5254 - SitBack v3.02R - GET ???

INT 5B 8485 - SitBack v3.02R - INSTALLATION CHECK

INT 5B 8485 - SitBack v3.02R - SET ??? FLAG AND GET ??? ADDRESS

INT 5B 8485 - SitBack v3.02R - CLEAR ??? FLAG

INT 5B 8485 - SitBack v3.02R - ???

INT 5B 8485 - SitBack v3.02R - ???

INT 5B 8485 - SitBack v3.02R - ???

INT 5B 8485 - SitBack v3.02R - ???

INT 5B 8485 - SitBack v3.02R - SET ??? FLAG

INT 5B 8485 - SitBack v3.02R - GET RESIDENT DATA SEGMENT

INT 5B 8485 - SitBack v3.02R - GET DTA

INT 5B 8485 - SitBack v3.02R - TOGGLE ???

Interrupts


INT 5C - IRQ12/4 relocated by software; Network Interface
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 5C - IRQ12/4 relocated by software; Network Interface

INT 5C ---- - IRQ12 relocated by DESQview 2.26+

INT 5C ---- - IRQ4 relocated by DoubleDOS

INT 5C ---- - NetBIOS INTERFACE

INT 5C ---- - TOPS INTERFACE

INT 5C ---- - ATALK.SYS - AppleTalk INTERFACE

INT 5C ---- - IBM 802.2 INTERFACE (LLC)

INT 5C ---- - TI Professional PC - KEYBOARD PAUSE KEY VECTOR

INT 5C ---- - $25 LAN - INSTALLATION CHECK

INT 5C 04-- - $25 LAN - CHECK IF CONNECTION ALIVE

Interrupts


INT 5D - IRQ13/5 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 5D - IRQ13/5 relocated by software

INT 5D ---- - IRQ13 relocated by DESQview 2.26+

INT 5D ---- - IRQ5 relocated by DoubleDOS

INT 5D ---- - TI Professional PC - KEYBOARD BREAK KEY VECTOR

Interrupts


INT 5E - IRQ14/6 relocated by software
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 5E - IRQ14/6 relocated by software

INT 5E ---- - IRQ14 relocated by DESQview 2.26+

INT 5E ---- - IRQ6 relocated by DoubleDOS

INT 5E ---- - TI Professional PC - KEYBOARD PRINT-SCREEN VECTOR

Interrupts


INT 5F - IRQ15/7 relocated by software; HP 95LX GRAPHICS PRIMITIVES
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 5F - IRQ15/7 relocated by software; HP 95LX GRAPHICS PRIMITIVES

INT 5F ---- - IRQ15 relocated by DESQview 2.26+

INT 5F ---- - IRQ7 relocated by DoubleDOS

INT 5F ---- - TI Professional PC - KEYBOARD QUEUEING VECTOR

INT 5F 00-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET VIDEO MODE

INT 5F 01-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET FILL MASK

INT 5F 02-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFO

INT 5F 03-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN

INT 5F 04-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET CLIP REGION

INT 5F 05-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW RECTANGLE

INT 5F 06-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW LINE

INT 5F 07-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PLOT POINT

INT 5F 08-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - MOVE PEN

INT 5F 09-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET PEN COLOR

INT 5F 0A-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE

INT 5F 0B-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LINE TYPE

INT 5F 0C-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET PIXEL

INT 5F 0D-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET IMAGE

INT 5F 0E-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PUT IMAGE

INT 5F 0F-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - WRITE TEXT

INT 5F 10-- - HP 100LX/200LX GRAPHICS PRIMITIVES - GET FONT POINTER

INT 5F 11-- - HP 100LX/200LX GRAPHICS PRIMITIVES - SET CURRENT FONT

Interrupts


INT 60 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 60 - reserved for user interrupt; multiple purposes

INT 60 ---- - reserved for user interrupt

INT 60 ---- - VIRUS - "Zero Bug" - INSTALLATION CHECK

INT 60 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

INT 60 ---- - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)

INT 60 ---- - Atari Portfolio - USER INTERFACE FUNCTIONS

INT 60 ---- - Nabbit v2.0 - (NOT A VECTOR!) - INSTALLATION CHECK

INT 60 ---- - Buffit v3.0 - (NOT A VECTOR!) - INSTALLATION CHECK

INT 60 ---- - PC-IPC API

INT 60 ---- - Tangram Arbiter - API

INT 60 ---- - Excelan LAN Workplace for DOS 3.5 - API

INT 60 ---- - TCPDRV 2.01 - TCP/IP Application Binary Interface (ABI)

INT 60 ---- - INTRSPY/CMDSPY v1.0 only - API

INT 60 ---- - PC/370 v4.2 - ???

INT 60 ---- - JPI TopSPEED Modula-2 v1 - PROCEDURE ENTRY TRAP

INT 60 ---- - FTP Packet Driver - PC/TCP Packet Driver Specification

INT 60 ---- - 3270-PC CONTROL PROGRAM - ???

INT 60 ---- - HP 95LX System Manager - WAIT FOR EVENT

INT 60 ---- - HP 95LX System Manager - CHECK FOR EVENT

INT 60 ---- - HP 95LX System Manager - "SH_STATUS"

INT 60 ---- - HP 95LX System Manager - LOTUS 1-2-3 BRIDGE SERVICES

INT 60 ---- - HP 95LX System Manager - FLUSH KEYBOARD BUFFER

INT 60 ---- - HP 95LX System Manager - YIELD CPU

INT 60 ---- - HP 95LX System Manager - "NO_FINI" - REFUSE TERMINATION REQUEST

INT 60 ---- - HP 95LX System Manager - SETUP MENU

INT 60 ---- - HP 95LX System Manager - DISPLAY OR REDISPLAY MENU

INT 60 ---- - HP 95LX System Manager - "MENU_ON" - ENABLE PROCESSING OF MENU

INT 60 ---- - HP 95LX System Manager - REMOVE MENU

INT 60 ---- - HP 95LX System Manager - LET SYSTEM MANAGER HANDLE MENU KEYSTROKE

INT 60 ---- - HP 95LX System Manager - INITIALIZE FILE SELECTION MENU

INT 60 ---- - HP 95LX System Manager - DISPLAY/REDISPLAY FILE SELECTION MENU

INT 60 ---- - HP 95LX System Manager - LET SYSMGR PROCESS FILE SEL MENU KEYSTROKE

INT 60 ---- - HP 95LX System Manager - REMOVE FILE SELECTION MENU

INT 60 ---- - HP 95LX System Manager - DISPLAY STRING

INT 60 ---- - HP 95LX System Manager - CLEAR PORTION OF SCREEN

INT 60 ---- - HP 95LX System Manager - SCROLL PORTION OF SCREEN

INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_XCHG"

INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRATTR"

INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRRVRT"

INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRINV"

INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_ROWS_COLS"

INT 60 ---- - HP 95LX System Manager - SET SCREEN (VIDEO???) MODE

INT 60 ---- - HP 95LX System Manager - GET SCREEN (VIDEO???) MODE

INT 60 ---- - HP 95LX System Manager - SET CURSOR POSITION

INT 60 ---- - HP 95LX System Manager - "EDIT_INIT"

INT 60 ---- - HP 95LX System Manager - EDIT ON TOP LINE

INT 60 ---- - HP 95LX System Manager - DISPLAY OR REDISPLAY EDIT FIELD

INT 60 ---- - HP 95LX System Manager - LET SYSTEM MANAGER PROCESS EDITING KEYSTROK

INT 60 ---- - HP 95LX System Manager - "MDIT_INI"

INT 60 ---- - HP 95LX System Manager - "MDIT_DIS"

INT 60 ---- - HP 95LX System Manager - "MDIT_KEY"

INT 60 ---- - HP 95LX System Manager - "MDIT_FIL"

INT 60 ---- - HP 95LX System Manager - "MDIT_MARK"

INT 60 ---- - HP 95LX System Manager - "MDIT_UNMARK"

INT 60 ---- - HP 95LX System Manager - "MDIT_CUTMARK"

INT 60 ---- - HP 95LX System Manager - "MDIT_INS_STR"

INT 60 ---- - HP 95LX System Manager - OPEN FILE

INT 60 ---- - HP 95LX System Manager - OPEN FILE IN READ-ONLY MODE

INT 60 ---- - HP 95LX System Manager - CREATE NEW FILE

INT 60 ---- - HP 95LX System Manager - CREATE OR TRUNCATE FILE

INT 60 ---- - HP 95LX System Manager - READ FROM FILE

INT 60 ---- - HP 95LX System Manager - WRITE TO FILE

INT 60 ---- - HP 95LX System Manager - SET FILE POSITION

INT 60 ---- - HP 95LX System Manager - GET FILE POSITION

INT 60 ---- - HP 95LX System Manager - CLOSE FILE

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_SETPAT"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_MATCH"

INT 60 ---- - HP 95LX System Manager - IDENTIFY FILENAME REFERENT

INT 60 ---- - HP 95LX System Manager - DELETE FILE

INT 60 ---- - HP 95LX System Manager - RENAME FILE

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GETDIR"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_SETDIR"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_VOLUME"

INT 60 ---- - HP 95LX System Manager - MAKE A SUBDIRECTORY

INT 60 ---- - HP 95LX System Manager - REMOVE A SUBDIRECTORY

INT 60 ---- - HP 95LX System Manager - GET DEFAULT DRIVE

INT 60 ---- - HP 95LX System Manager - SET DEFAULT DRIVE

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_FDATE"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GET_SYSDIR"

INT 60 ---- - HP 95LX System Manager - GET FILE ATTRIBUTES

INT 60 ---- - HP 95LX System Manager - SET FILE ATTRIBUTES

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_COMMON_OPEN"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_COPYDT"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GETFDT"

INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_PUTFDT"

INT 60 ---- - HP 95LX System Manager - PROCESS INITIALIZING

INT 60 ---- - HP 95LX System Manager - PROCESS TERMINATION

INT 60 ---- - HP 95LX System Manager - "M_LOCK" - PREVENT TASK SWITCHES

INT 60 ---- - HP 95LX System Manager - "M_UNLOCK" - ALLOW TASK SWITCHES

INT 60 ---- - HP 95LX System Manager - "M_SPAWN"

INT 60 ---- - HP 95LX System Manager - "M_APPCOUNT"

INT 60 ---- - HP 95LX System Manager - "M_REBOOT"

INT 60 ---- - HP 95LX System Manager - "M_SPAWNARG"

INT 60 ---- - HP 95LX System Manager - "M_REG_APP_NAME"

INT 60 ---- - HP 95LX System Manager - "M_APP_NAME"

INT 60 ---- - HP 95LX System Manager - OPEN CLIPBOARD

INT 60 ---- - HP 95LX System Manager - CLOSE CLIPBOARD

INT 60 ---- - HP 95LX System Manager - RESET CLIPBOARD

INT 60 ---- - HP 95LX System Manager - "M_NEW_REP" - START A NEW REPRESENTATION???

INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_FINI_REP"

INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_NAME"

INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_INDEX"

INT 60 ---- - HP 95LX System Manager - WRITE TO CLIPBOARD

INT 60 ---- - HP 95LX System Manager - READ FROM CLIPBOARD

INT 60 ---- - HP 95LX System Manager - BEEP

INT 60 ---- - HP 95LX System Manager - SOUND SERVICE "M_THUD"

INT 60 ---- - HP 95LX System Manager - MAKE A SOUND PATTERN

INT 60 ---- - HP 95LX System Manager - TURN OFF SOUND

INT 60 ---- - HP 95LX System Manager - ALLOCATE REGULAR MEMORY BLOCK

INT 60 ---- - HP 95LX System Manager - FREE REGULAR MEMORY BLOCK

INT 60 ---- - HP 95LX System Manager - ALLOCATE LARGE MEMORY BLOCK

INT 60 ---- - HP 95LX System Manager - FREE LARGE MEMORY BLOCK

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DTINFO"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GETDTM"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SETDTM"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_XALARM"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_ALARM"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_SW"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SW"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_SW"

INT 60 ---- - HP 95LX System Manager - "M_TELLTIME" - DISPLAY TIMESTAMP

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SETTINGS"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SET_SETTINGS"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_TIMER"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_TIMER"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_TIMER"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_TELL_ANYTIME"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVCE "M_GET_SETTINGS_ADDR"

INT 60 ---- - HP 95LX System Manager - PARSE DATE SPECIFICATION

INT 60 ---- - HP 95LX System Manager - PARSE TIME SPECIFICATION

INT 60 ---- - HP 95LX System Manager - SET DATE PARSING RULE

INT 60 ---- - HP 95LX System Manager - SET TIME PARSING RULE

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_POST_TIME"

INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DAY_TRIGGER"

INT 60 ---- - HP 95LX System Manager - OPEN PRINTER

INT 60 ---- - HP 95LX System Manager - CLOSE PRINTER

INT 60 ---- - HP 95LX System Manager - WRITE TO PRINTER

INT 60 ---- - HP 95LX System Manager - INITIALIZE PRINTER

INT 60 ---- - HP 95LX System Manager - "M_TRANS_PRINTER"

INT 60 ---- - HP 95LX System Manager - "M_FALL_PRINTER"

INT 60 ---- - HP 95LX System Manager - COMMUNICATIONS SERVICE "M_COMM_INIT"

INT 60 ---- - HP 95LX System Manager - OPEN COMMUNICATIONS CHANNEL

INT 60 ---- - HP 95LX System Manager - CLOSE COMMUNICATIONS CHANNEL

INT 60 ---- - HP 95LX System Manager - "M_COMM_GETMDM"

INT 60 ---- - HP 95LX System Manager - "M_COMM_ANSWER"

INT 60 ---- - HP 95LX System Manager - "M_COMM_DIAL"

INT 60 ---- - HP 95LX System Manager - RESET COMMUNICATIONS CHANNEL

INT 60 ---- - HP 95LX System Manager - "M_COMM_HANGUP"

INT 60 ---- - HP 95LX System Manager - SEND DATA OVER COMM CHANNEL

INT 60 ---- - HP 95LX System Manager - QUERY COMM CHANNEL TRANSMIT QUEUE

INT 60 ---- - HP 95LX System Manager - QUERY COMM CHANNEL RECEIVE QUEUE

INT 60 ---- - HP 95LX System Manager - RECEIVE DATA FROM COMM CHANNEL

INT 60 ---- - HP 95LX System Manager - "M_COMM_HAZCMD"

INT 60 ---- - HP 95LX System Manager - "M_COMM_COMAND"

INT 60 ---- - HP 95LX System Manager - "M_COMM_BREAK"

INT 60 ---- - HP 95LX System Manager - "M_COMM_FRCXON"

INT 60 ---- - HP 95LX System Manager - "M_COMM_FRCXOF"

INT 60 ---- - HP 95LX System Manager - "M_COMM_SETDTR"

INT 60 ---- - HP 95LX System Manager - "M_COMM_XMITNG"

INT 60 ---- - HP 95LX System Manager - "M_COMM_STATUS"

INT 60 ---- - HP 95LX System Manager - SET COMMUNICATIONS SETTINGS

INT 60 ---- - HP 95LX System Manager - GET COMMUNICATIONS SETTINGS

INT 60 ---- - HP 95LX System Manager - "M_COMM_CNFGUR"

INT 60 ---- - HP 95LX System Manager - "M_COMM_QRYERR"

INT 60 ---- - HP 95LX System Manager - "M_ERRMSG"

INT 60 ---- - HP 95LX System Manager - DRAW STANDARD TITLE BOX

INT 60 ---- - HP 95LX System Manager - "SHOWNAME"

INT 60 ---- - HP 95LX System Manager - DISPLAY TWO-LINE MESSAGE BOX

INT 60 ---- - HP 95LX System Manager - REMOVE MESSAGE BOX

INT 60 ---- - HP 95LX System Manager - "M_COM_TIMER_ADDR"

INT 60 ---- - HP 95LX System Manager - "M_COM_TIMER_COUNT_ADDR"

INT 60 ---- - HP 95LX System Manager - "M_SYS_RSRC_ADDR"

INT 60 ---- - HP 95LX System Manager - "M_BIOS_OUTSTR"

INT 60 ---- - HP 95LX System Manager - DISPLAY THREE-LINE MESSAGE BOX

INT 60 ---- - HP 95LX System Manager - DISABLE MACROS

INT 60 ---- - HP 95LX System Manager - ENABLE MACROS

INT 60 ---- - HP 95LX System Manager - "M_DATE_TIME_SEPS"

INT 60 ---- - HP 95LX System Manager - "M_FORM_FT"

INT 60 ---- - HP 95LX System Manager - "M_RAM_IV_INFO"

INT 60 ---- - HP 95LX System Manager - "M_DIRTY_SYNC" - FORCE SCREEN UPDATE

INT 60 ---- - HP 95LX System Manager - RESOURCE SERVICE "MAP_RESOURCE_FILE"

INT 60 ---- - HP 95LX System Manager - "GET_RESOURCE_PTR"

INT 60 ---- - HP 95LX System Manager - "GET_RSRC_TAB_PTR"

INT 60 ---- - HP 95LX System Manager - "INIT_SYSMGR_RSRCS"

INT 60 ---- - HP 95LX System Manager - INITIALIZE HELP SYSTEM

INT 60 ---- - HP 95LX System Manager - DISPLAY HELP

INT 60 ---- - HP 95LX System Manager - "M_HELP_KEY"

INT 60 ---- - HP 95LX System Manager - "M_HELP_TERM"

INT 60 ---- - HP 95LX System Manager - "M_ColInit"

INT 60 ---- - HP 95LX System Manager - "M_ColCpStr"

INT 60 ---- - HP 95LX System Manager - "M_ColLicsStr"

INT 60 ---- - HP 95LX System Manager - "M_ColLicsChar"

INT 60 ---- - HP 95LX System Manager - "M_ColToLower"

INT 60 ---- - HP 95LX System Manager - "M_ColCpSearch"

INT 60 ---- - HP 95LX System Manager - "M_ColToUpper"

INT 60 ---- - HP 95LX System Manager - "GrDispInit"

INT 60 ---- - HP 95LX System Manager - "GrDispClear"

INT 60 ---- - HP 95LX System Manager - "GrDispDot"

INT 60 ---- - HP 95LX System Manager - "GrDispDraw"

INT 60 ---- - HP 95LX System Manager - "GrDispFill"

INT 60 ---- - HP 95LX System Manager - "GrDispRead"

INT 60 ---- - HP 95LX System Manager - "GrDispString"

INT 60 ---- - HP 95LX System Manager - "GrDispPan"

INT 60 ---- - HP 95LX System Manager - "GrDispZoom"

INT 60 ---- - HP 95LX System Manager - "GrDispSave"

INT 60 ---- - HP 95LX System Manager - "GrDispRestore"

INT 60 ---- - HP 95LX System Manager - "GrDispCorner"

INT 60 ---- - HP 95LX System Manager - "CP_TO_LICS"

INT 60 00-- - SYS_PROF.EXE - PROFILER STATUS

INT 60 00-- - MDEBUG - GET STATUS

INT 60 0000 - RIFS - CLIENT - INSTALLATION CHECK

INT 60 0001 - RIFS - CLIENT - UNINSTALL

INT 60 0002 - RIFS - CLIENT - REMAP DRIVE

INT 60 0003 - RIFS - CLIENT - UNMAP DRIVE

INT 60 0004 - RIFS - CLIENT - UNMAP ALL DRIVES

INT 60 0005 - RIFS - CLIENT - GET TRANSLATION TABLE

INT 60 0006 - RIFS - CLIENT - GET STATISTICS TABLE

INT 60 0007 - RIFS - CLIENT - GET PORT TRANSLATION TABLE

INT 60 0008 - RIFS - SERVER - INSTALLATION CHECK

INT 60 0009 - RIFS - SERVER - UNINSTALL

INT 60 000A - RIFS - SERVER - GET STATISTICS TABLE

INT 60 000B - RIFS - SERVER - RESET

INT 60 01-- - MDEBUG - GET ADDRESS OF THE HELP REGISTERS

INT 60 01-- - SYS_PROF.EXE - TURN PROFILING OFF

INT 60 01FF - FTP Packet Driver - BASIC FUNC - GET DRIVER INFO

INT 60 02-- - MDEBUG - SET STATUS

INT 60 02-- - FTP Packet Driver - BASIC FUNC - ACCESS TYPE

INT 60 02-- - SYS_PROF.EXE - TURN PROFILING ON

INT 60 03-- - MDEBUG - POP UP

INT 60 03-- - FTP Packet Driver - BASIC FUNC - RELEASE TYPE

INT 60 03-- - SYS_PROF.EXE - GET ADDRESS OF PROFILING TABLE

INT 60 04-- - FTP Packet Driver - BASIC FUNC - SEND PACKET

INT 60 04-- - MDEBUG - POP UP

INT 60 04-- - SYS_PROF.EXE - CLEAR PROFILING TABLE

INT 60 05-- - FTP Packet Driver - BASIC FUNC - TERMINATE DRIVER FOR HANDLE

INT 60 05-- - MDEBUG - GET AND SET MDEBUG FLAGS

INT 60 06-- - FTP Packet Driver - BASIC FUNC - GET ADDRESS

INT 60 06-- - MDEBUG - GET PASSWORD STATUS

INT 60 07-- - FTP Packet Driver - BASIC FUNC - RESET INTERFACE

INT 60 07-- - MDEBUG v1.70+ - GET ACTIVE PART OF MDEBUG

INT 60 08-- - MDEBUG - UNUSED

INT 60 0A-- - FTP Packet Driver 1.09+ - HIGH-PERF FUNC - GET PARAMETERS

INT 60 0B-- - FTP Packet Driver 1.09 - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET

INT 60 0C-- - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET

INT 60 0C-- - Banyan VINES, 3com - GET STATION ADDRESS

INT 60 0D-- - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - DROP PACKET FROM QUEUE

INT 60 11-- - 3com, 10NET, Banyan VINES - LOCK AND WAIT

INT 60 12-- - 3com, 10NET, Banyan VINES - LOCK

INT 60 13-- - 3com, 10NET, Banyan VINES - UNLOCK

INT 60 14-- - FTP Packet Driver - EXTENDED FUNC - SET RECEIVE MODE

INT 60 15-- - FTP Packet Driver - EXTENDED FUNC - GET RECEIVE MODE

INT 60 16-- - FTP Packet Driver - EXTENDED FUNC - SET MULTICAST LIST

INT 60 17-- - FTP Packet Driver - EXTENDED FUNC - GET MULTICAST LIST

INT 60 18-- - FTP Packet Driver - EXTENDED FUNC - GET STATISTICS

INT 60 19-- - FTP Packet Driver - EXTENDED FUNC - SET NETWORK ADDRESS

INT 60 1A-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - SEND RAW BYTES

INT 60 1B-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - FLUSH RAW BYTES RECEIVED

INT 60 1C-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - FETCH RAW BYTES RECEIVED

INT 60 AD-- - AccessDOS - API

INT 60 E9-- - FTP Packet Driver - Crynwr Software - AUTOSELECT TRANSCEIVER

Interrupts


INT 61 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 61 - reserved for user interrupt; multiple purposes

INT 61 ---- - reserved for user interrupt

INT 61 ---- - Atari Portfolio - EXTENDED BIOS

INT 61 ---- - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)

INT 61 ---- - HP 95LX System Manager - LOAD DS

INT 61 ---- - JPI TopSPEED Modula-2 v1 - PROCEDURE EXIT TRAP

INT 61 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

INT 61 ---- - Sangoma CCIP (CCPOP 3270 resident module) INTERFACE

INT 61 ---- - VIRUS - "SEMTEX"/"Screen Trasher" - INT 21h SUBSTITUTE

INT 61 ---- - PC-Magazin - PAGE, SWAPx

INT 61 ---- - TCPOpen kernel - API

INT 61 ---- - XFS v1.76 - XFSKRNL.EXE - API

INT 61 ---- - FTP Software PC/TCP - TCP/IP TSR System Call interface

INT 61 00-- - PC/TCP kernel v2.05+ - GET DEBUG INFORMATION

INT 61 00-- - Banyan VINES - CALL A SERVICE

INT 61 0000 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ZOOM DISPLAY

INT 61 0001 - Banyan VINES - INTERNAL VINES SOCKET API (NEAR DATA)

INT 61 0001 - Banyan VINES - "Sosock" - OPEN COMMUNICATIONS SOCKET

INT 61 0001 - Banyan VINES - "Sosend" - INITIATE OUTPUT EVENT

INT 61 0001 - Banyan VINES - "Sorec" - RECEIVE INPUT EVENT NOTIFICATION

INT 61 0001 - Banyan VINES - "Soclose" - CLOSE A SOCKET

INT 61 0001 - Banyan VINES - "Sowait" - WAIT FOR ASYNCHRONOUS EVENT COMPLETION

INT 61 0001 - Banyan VINES - "Sosession" - REGISTER APPLICATION WITH COMM SERVICE

INT 61 0001 - Banyan VINES - "Soint" - SET USER COMPLETION FUNCTION

INT 61 0001 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - CENTER ZOOM WINDOW

INT 61 0002 - Banyan VINES - 3270 INTERFACE

INT 61 0002 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - END ZOOM

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INIT USER BUFFER PTR INFO

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SEND TO HOST

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - "CONTROL MONITOR"

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - "FLOW CONTROL DATA"

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - END ACTIVE SESSION

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SESSION PARAMETER

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET SESSION PARAMETER

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET TAB SETTINGS

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET TAB SETTINGS

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - REFRESH EMULATION SCREEN

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SUSPEND SESSION TEMPORARILY

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - RESUME SUSPENDED SESSION

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SCROLL LOCK CHECKING

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - EXIT EMULATION

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON CHAR FROM HOST

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START A SESSION

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP PRINTING

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET FILE TRANSFER PARAMETERS

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET CONNECTION INFORMATION

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP TRACING TRAFFIC

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON HOST MESSAGE

INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - RESET ERROR

INT 61 0003 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - REPORT ZOOM FACTOR

INT 61 0004 - Banyan VINES - FILE SERVICE CONTROL

INT 61 0004 - Banyan VINES - SET DRIVE CONNECTION

INT 61 0004 - Banyan VINES - GET DRIVE CONNECTION

INT 61 0004 - Banyan VINES - GET NETWORK DRIVE MAP

INT 61 0004 - Banyan VINES - SET USER NAME

INT 61 0004 - Banyan VINES - GET USER NAME

INT 61 0004 - Banyan VINES - TEST DRIVE CONNECTION

INT 61 0004 - Banyan VINES - GET CONNECTION DATA STRUCTURES

INT 61 0004 - Banyan VINES - GET SERVER SERIAL NUMBER

INT 61 0004 - Banyan VINES - SET ??? PARAMETER

INT 61 0004 - Banyan VINES - GET ??? DRIVE PARAMETER

INT 61 0004 - Banyan VINES - LOGOUT FROM VINES

INT 61 0004 - Banyan VINES - GET ACCESS RIGHTS LIST (ARL)

INT 61 0004 - Banyan VINES - SET ACCESS RIGHTS LIST (ARL)

INT 61 0004 - Banyan VINES - FILE SERVICE CONTROL - ???

INT 61 0004 - Banyan VINES - GET VALUE OF GLOBAL VARIABLE

INT 61 0004 - Banyan VINES - SET VALUE OF GLOBAL VARIABLE

INT 61 0004 - Banyan VINES - GET NUMBER OF OPEN FILES ON REMOTE DRIVE

INT 61 0004 - Banyan VINES - SET UNIDENTIFIED INTERNAL FLAG

INT 61 0004 - Banyan VINES - UNIDENTIFIED DRIVE SPECIFIC FUNCTION

INT 61 0004 - Banyan VINES - UNIDENTIFIED FUNCTION

INT 61 0004 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ENTER SPECIFY MODE

INT 61 0005 - Banyan VINES - PRINT SERVICE CONTROL

INT 61 0005 - OPTIMA 1024 VGA-Sync - QUERY ZOOM WINDOW

INT 61 0006 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM WINDOW

INT 61 0006 - Banyan VINES - GET ADDRESS OF GLOBAL VARIABLE

INT 61 0007 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY APPLICATION KEY

INT 61 0007 - Banyan VINES - RECONNECT TO STREETTALK

INT 61 0007 - Banyan VINES - GET MM PORT FOR A SERVICE

INT 61 0007 - Banyan VINES - GET PORTS FOR A SERVICE

INT 61 0007 - Banyan VINES - FIND A SERVICE

INT 61 0007 - Banyan VINES - SET PORTS FOR A SERVICE

INT 61 0007 - Banyan VINES - GET USER NAME

INT 61 0007 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING

INT 61 0007 - Banyan VINES - VERIFY EXISTENCE OF NAME AND RETURN CANONICAL FORM

INT 61 0007 - Banyan VINES - ENUMERATE StreetTalk NAMES

INT 61 0007 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING (SELECTED PORT)

INT 61 0007 - Banyan VINES - internal, OS/2 only - GET MANY PORTS FOR SERVICE

INT 61 0008 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM OFFSET

INT 61 0008 - Banyan VINES - TALKPORT SERVICE - GET HANDLER ADDRESS

INT 61 0008 - Banyan VINES - TALKPORT SERVICE - SET HANDLER ADDRESS

INT 61 0008 - Banyan VINES - TALKPORT SERVICE - POST MESSAGE ON LOCAL DISPLAY

INT 61 0008 - Banyan VINES - TALKPORT SERVICE - INTERCEPT VINES 25th-LINE MESSAGES

INT 61 0009 - Banyan VINES - NETBIOS CLIENT SERVICE

INT 61 000A - Banyan VINES - SECONDARY 3270 INTERFACE

INT 61 000B - Banyan VINES - SEMAPHORE SERVICE

INT 61 000C - Banyan VINES - 3270 KEYBOARD HANDLER

INT 61 000D - Banyan VINES - T3270 SERVICE FUNCTION

INT 61 000E - Banyan VINES - ENHANCED 3270 SERVICE

INT 61 000F - Banyan VINES - VINES SOCKET API (FAR DATA)

INT 61 000F - Banyan VINES - OPEN SOCKET

INT 61 000F - Banyan VINES - SEND MESSAGE ON A SOCKET

INT 61 000F - Banyan VINES - CLOSE SOCKET

INT 61 000F - Banyan VINES - GET PROCESS HANDLE

INT 61 0010 - Banyan VINES - INTERFACE TO NBNS

INT 61 01-- - Banyan VINES - CHECK SERVICE

INT 61 01-- - PC/TCP kernel v2.1+ - "net_config" - CONFIGURE RUNNING KERNEL

INT 61 02-- - Banyan VINES - GET REVISION NUMBER

INT 61 02-- - PC/TCP kernel v2.1+ - "get_kernel_info" - GET MISCELLAN LOCAL INFO

INT 61 03-- - Banyan VINES - INSTALL SERVICE HANDLER

INT 61 04-- - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE

INT 61 05-- - PC/TCP kernel v2.05+ - "get_addr" - GET INTERNET ADDRESS OF NET DESCR

INT 61 05-- - Banyan VINES - READ PCCONFIG BYTES

INT 61 06-- - PC/TCP kernel v2.05 - "net_info" - GET INTERFACE STATISTICS

INT 61 06-- - Banyan VINES - GET PCCONFIG BASE ADDRESS

INT 61 07-- - PC/TCP kernel v2.05+ - "net_globalize" - MAKE NET DESCRIPTOR GLOBAL

INT 61 07-- - Banyan VINES - GET VINES REVISION NUMBER (LONG)

INT 61 08-- - PC/TCP kernel v2.05+ - "net_release" - CLOSE A NETWORK DESCRIPTOR

INT 61 08-- - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE (LONG)

INT 61 09-- - PC/TCP kernel v2.05+ - "net_releaseall" - CLOSE ALL NON-GLOBAL DESCRS

INT 61 09-- - Banyan VINES - GET VALUE OF AN OS/2 BACKEND VARIABLE

INT 61 0A-- - PC/TCP kernel v2.05 - "net_send" - ???

INT 61 0A-- - Banyan VINES - SET VALUE OF AN OS/2 BACKEND VARIABLE

INT 61 0B-- - PC/TCP kernel v2.05 - "net_sendto" - ???

INT 61 0B-- - Banyan VINES - SET PCCONFIG IN BACKEND

INT 61 0C-- - PC/TCP kernel v2.05+ - "net_stat" - GET CONNECTION STATISTICS

INT 61 0D-- - PC/TCP kernel v2.05+ - "is_netnd" - CHECK IF NETWORK DESCRIPTOR VALID

INT 61 0E-- - PC/TCP kernel v2.05+ - "net_select" - DETECT READINESS OF NETWORK

INT 61 0F-- - PC/TCP kernel v2.05+ - "get_netversion" - GET SOFTWARE VERSION

INT 61 10-- - PC/TCP kernel v2.05+ - "net_shutdown" - UNINSTALL

INT 61 11-- - PC/TCP kernel v2.05+ - "disable_async" - DISABLE ASYNCHRONOUS HANDLERS

INT 61 12-- - PC/TCP kernel v2.05+ - "enable_async" - ENABLE ASYNCHRONOUS HANDLERS

INT 61 13-- - PC/TCP kernel v2.05 - "net_connect" - OPEN A NETWORK CONNECTION

INT 61 14-- - PC/TCP kernel v2.05 - "net_recv" - NO LONGER SUPPORTED

INT 61 15-- - PC/TCP kernel v2.05 - "net_recvfrom" - ???

INT 61 16-- - PC/TCP kernel v2.05+ - "net_peer" - GET DATA ON REMOTE PEER

INT 61 17-- - PC/TCP kernel v2.05+ - "net_reconfig" - RE-READ KERNEL CONFIGURATION

INT 61 18-- - PC/TCP kernel v2.05+ - "net_eof" - CLOSE TRANSMIT SIDE OF CONNECTION

INT 61 19-- - PC/TCP kernel v2.05+ - "net_abort" - RESET A NETWORK CONNECTION

INT 61 1A-- - PC/TCP kernel v2.05+ - "net_write" - WRITE TO THE NETWORK

INT 61 1B-- - PC/TCP kernel v2.05+ - "net_read" - READ FROM THE NETWORK

INT 61 1C-- - PC/TCP kernel v2.05+ - "net_writeto" - WRITE A DATAGRAM

INT 61 1D-- - PC/TCP kernel v2.05+ - "net_readfrom" - READ A DATAGRAM

INT 61 1E-- - PC/TCP kernel v2.05+ - "net_flush" - FLUSH PENDING DATA

INT 61 1F-- - PC/TCP kernel v2.05+ - "net_asynch" - SET UP ASYNCHRONOUS CALL-BACK

INT 61 20-- - PC/TCP kernel v2.05+ - "set_option" - SET AN OPTION ON A DESCRIPTOR

INT 61 21-- - PC/TCP kernel v2.05+ - "get_option" - GET OPTIONS APPLIED TO NET DESCR

INT 61 22-- - PC/TCP kernel v2.05+ - "net_getdesc" - ALLOCATE NETWORK DESCRIPTOR

INT 61 23-- - PC/TCP kernel v2.05+ - "net_listen" - LISTEN FOR INCOMING CONNECTIONS

INT 61 24-- - PC/TCP kernel v2.05+ - "net_abortall" - RESET ALL NETWORK CONNECTIONS

INT 61 25-- - PC/TCP kernel v2.05+ - "ad_res_name" - GET HOST NAME GIVEN ADDRESS

INT 61 26-- - PC/TCP kernel v2.05+ - "ad_htable" - GET HOST NAME FROM LOCAL TABLE

INT 61 27-- - PC/TCP kernel v2.05+ - "ad_domain" - GET HOST NAME FROM DNS

INT 61 28-- - PC/TCP kernel v2.05+ - "net_swap" - EXCHANGE TWO NETWORK DESCRIPTORS

INT 61 29-- - PC/TCP kernel v2.05+ - "net_getglobdesc" - ALLOCATE GLOBAL DESCRIPTOR

INT 61 2A-- - PC/TCP kernel v2.05+ - GET CONFIGURATION INFORMATION

INT 61 2B-- - PC/TCP kernel v2.02+ - "net_alarm" - SET TIMED ASYNCHRONOUS EVENT

INT 61 30-- - PC/TCP kernel v2.05+ - "icmp_ping" - SEND ICMP ECHO REQUEST (PING)

INT 61 ---- - PC/TCP kernel v2.05 - NOP for SLIP kernel

INT 61 32-- - PC/TCP kernel v2.3 - GET ???

INT 61 34-- - PC/TCP kernel v2.1+ - "icmp_destun" - ???

INT 61 50-- - PC/TCP kernel v2.05+ - "nm_prs_addr" - TRANSLATE NUMERICAL IP ADDRESS

INT 61 51-- - PC/TCP kernel v2.05+ - "nm_htable" - RESOLVE NAME USING HOST TABLE

INT 61 52-- - PC/TCP kernel v2.05+ - "nm_domain" - RESOLVE NAME USING DNS

INT 61 53-- - PC/TCP kernel v2.05- - "nm_ien116" - RESOLVE HOST NAME USING IEN116

INT 61 54-- - PC/TCP kernel v2.05+ - "nm_res_name" - RESOLVE HOST NAME

INT 61 55-- - PC/TCP kernel v2.3 - ???

INT 61 56-- - PC/TCP kernel v2.3 - ???

INT 61 57-- - PC/TCP kernel v2.3 - ???

INT 61 58-- - PC/TCP kernel v2.3 - ???

INT 61 59-- - PC/TCP kernel v2.3 - ???

INT 61 5A-- - PC/TCP kernel v2.3 - ???

INT 61 5B-- - PC/TCP kernel v2.3 - ???

INT 61 5C-- - PC/TCP kernel v2.3 - ???

INT 61 5D-- - PC/TCP kernel v2.3 - ???

INT 61 5E-- - PC/TCP kernel v2.3 - ???

INT 61 5F-- - PC/TCP kernel v2.3 - ???

Interrupts


INT 62 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 62 - reserved for user interrupt; multiple purposes

INT 62 ---- - reserved for user interrupt

INT 62 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

INT 62 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

INT 62 ---- - HP 95LX - USED BY CALCULATOR

INT 62 ---- - MS SQL Server/Sybase DBLIBRARY interface - ???

INT 62 ---- - MPAUSE - ???

INT 62 ---- - XFS v1.76 - FILTERED PACKET DRIVER API

INT 62 00-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET PHYSICAL HARDWARE ADDRESS

INT 62 0000 - FGDRIVER v3.03+ - "FG_ALLOCATE" - CREATE VIRTUAL VIDEO PAGE

INT 62 0001 - FGDRIVER v3.03+ - "FG_ALLOCCMS" - CREATE LOGICAL VIDEO PAGE (CONV)

INT 62 0002 - FGDRIVER v3.03+ - "FG_ALLOCEMS" - CREATE LOGICAL VIDEO PAGE (EMS)

INT 62 0003 - FGDRIVER v3.03+ - "FG_ALLOCXMS" - CREATE LOGICAL VIDEO PAGE (XMS)

INT 62 0004 - FGDRIVER 1.10,3.03+ - "FG_AUTOMODE" - GET VIDEO MODE W/MOST FEATURES

INT 62 0005 - FGDRIVER v3.03+ - "FG_BESTMODE" - GET BEST VIDEO MODE GIVEN RESOLUTN

INT 62 0006 - FGDRIVER v3.03+ - "FG_BOX" - DRAW UNFILLED RECTANGLE

INT 62 0007 - FGDRIVER v3.03+ - "FG_BOXDEPTH" - SET RECTANGLE BORDER WIDTH

INT 62 0008 - FGDRIVER v3.03+ - "FG_BOXX" - XOR HOLLOW RECTANGLE

INT 62 0009 - FGDRIVER v3.03+ - "FG_BUTTON" - GET JOYSTICK BUTTON STATE

INT 62 000A - FGDRIVER v3.03+ - "FG_CAPSLOCK" - GET STATE OF CAPSLOCK KEY

INT 62 000B - FGDRIVER v3.03+ - "FG_CHGATTR" - APPLY CURRENT TEXT ATTRIB TO CHARS

INT 62 000C - FGDRIVER v3.03+ - "FG_CHGTEXT" - DISPLAY STRING AT CURSOR POSITION

INT 62 000D - FGDRIVER v3.03+ - "FG_CIRCLE" - DRAW UNFILLED CIRCLE

INT 62 000E - FGDRIVER v3.03+ - "FG_CIRCLEF" - DRAW FILLED CIRCLE

INT 62 000F - FGDRIVER v4.02 - "FG_CLIPMAP" - DISPLAY CLIPPED IMAGE (MODE-INDEP)

INT 62 0010 - FGDRIVER v4.02 - "FG_CLIPMASK" - DISPLAY CLIPPED IMAGE (MASKING MAP)

INT 62 0011 - FGDRIVER v4.02 - "FG_CLPIMAGE" - DISPLAY CLIPPED IMAGE (BITMAP)

INT 62 0012 - FGDRIVER v4.02 - "FG_CLPRECT" - DRAW FILLED RECTANGLE IN SCREEN SPCE

INT 62 0013 - FGDRIVER v4.02 - "FG_COLORS" - GET SIMULTANEOUSLY-AVAILABLE COLORS

INT 62 0014 - FGDRIVER v4.02 - "FG_COPYPAGE" - TRANSFER VIDEO PAGE CONTENTS

INT 62 0015 - FGDRIVER v4.02 - "FG_CURSOR" - SPECIFY WHETHER TEXT CURSR IS VISIBLE

INT 62 0016 - FGDRIVER v4.02 - "FG_DASH" - DRAW DASHED LINE TO ABSOLUTE POSITION

INT 62 0017 - FGDRIVER v4.02 - "FG_DASHREL" - DRAW DASHED LINE TO RELATVE POSITION

INT 62 0018 - FGDRIVER v4.02 - "FG_DEFCOLOR" - ASSIGN COLOR VALUE TO COLOR INDEX

INT 62 0019 - FGDRIVER v4.02 - "FG_DEFPAGES" - DEF SRC/DEST PAGES FOR BLOCK XFERS

INT 62 001A - FGDRIVER v4.02 - "FG_DISPFILE" - DISPLAY STORED IMAGE

INT 62 001B - FGDRIVER v4.02 - "FG_DISPLAY" - DISPLAY IMAGE (STD PIXEL RUN FORMAT)

INT 62 001C - FGDRIVER v4.02 - "FG_DISPLAYP" - DISPLAY IMAGE (PACKED PIXEL RUNS)

INT 62 001D - FGDRIVER v4.02 - "FG_DRAW" - DRAW SOLID LINE TO ABSOLUTE POSITION

INT 62 001E - FGDRIVER v4.02 - "FG_DRAWMAP" - DISPLAY MODE-INDEPENDENT BIT MAP

INT 62 001F - FGDRIVER v4.02 - "FG_DRAWMASK" - DISPLAY IMAGE (MASKING MAP)

INT 62 0020 - FGDRIVER v4.02 - "FG_DRAWREL" - DRAW SOLID LINE TO RELATIVE POSITION

INT 62 0021 - FGDRIVER v4.02 - "FG_DRAWRELX" - XOR SOLID LINE TO RELATIVE POSITION

INT 62 0022 - FGDRIVER v4.02 - "FG_DRAWX" - XOR SOLID LINE TO ABSOLUTE POSITION

INT 62 0023 - FGDRIVER v4.02 - "FG_DRECT" - DRAW DITHERED RECTANGLE IN SCRN SPACE

INT 62 0024 - FGDRIVER v4.02 - "FG_DRWIMAGE" - DISPLAY BITMAPPED IMAGE

INT 62 0025 - FGDRIVER v4.02 - "FG_EGACHECK" - GET INFO ABOUT ACTIVE EGA DISPLAY

INT 62 0026 - FGDRIVER v4.02 - "FG_ELLIPSE" - DRAW UNFILLED ELLIPSE IN SCRN SPACE

INT 62 0027 - FGDRIVER v4.02 - "FG_ELLIPSEF" - DRAW FILLED ELLIPSE IN SCREEN SPACE

INT 62 0028 - FGDRIVER v4.02 - "FG_ERASE" - CLEAR THE ACTIVE VIDEO PAGE

INT 62 0029 - FGDRIVER v4.02 - "FG_FADEIN" - FADE IN HIDDEN PAGE

INT 62 002A - FGDRIVER v4.02 - "FG_FADEOUT" - FADE OUT TO CURRENT COLOR

INT 62 002B - FGDRIVER v4.02 - "FG_FILLPAGE" - FILL THE ACTIVE VIDEO PAGE

INT 62 002C - FGDRIVER v4.02 - "FG_FINDPAGE" - FIND AVAILABLE VIRTUAL/LOGICAL PAGE

INT 62 002D - FGDRIVER v4.02 - "FG_FLICDONE" - CLOSE FLIC FILE

INT 62 002E - FGDRIVER v4.02 - "FG_FLICHEAD" - READ FLI/FLC FILE HEADER

INT 62 002F - FGDRIVER v4.02 - "FG_FLICMODE" - GET OPTIMAL VIDEO MODE FOR FLI/FLC

INT 62 0030 - FGDRIVER v4.02 - "FG_FLICOPEN" - OPEN FLI/FLC FILE

INT 62 0031 - FGDRIVER v4.02 - "FG_FLICPLAY" - DISPLAY NEXT FRAME(S) IN FLI/FLC

INT 62 0032 - FGDRIVER v4.02 - "FG_FLICSIZE" - GET IMAGE SIZE

INT 62 0033 - FGDRIVER v4.02 - "FG_FLICSKIP" - SKIP FRAME(S) IN FLI/FLC FILE

INT 62 0034 - FGDRIVER v4.02 - "FG_FLIPMASK" - DISPLAY INV CLIPPED IMAGE (MASKMAP)

INT 62 0035 - FGDRIVER v4.02 - "FG_FLOOD" - FLOOD FILL ARBITRARY CLOSED REGION

INT 62 0036 - FGDRIVER v4.02 - "FG_FLPIMAGE" - DISPLAY INV CLIPPED IMAGE (BITMAP)

INT 62 0037 - FGDRIVER v4.02 - "FG_FONTSIZE" - SPECIFY FONT SIZE FOR TEXT OUTPUT

INT 62 0038 - FGDRIVER v4.02 - "FG_FREEPAGE" - FREE VIRTUAL OR LOGICAL VIDEO PAGE

INT 62 0039 - FGDRIVER v4.02 - "FG_GETADDR" - GET SEGMENT OF ACTIVE VIDEO PAGE

INT 62 003A - FGDRIVER v4.02 - "FG_GETATTR" - GET CHARACTER ATTRIB FOR POSITION

INT 62 003B - FGDRIVER v4.02 - "FG_GETBANKS" - GET SVGA READ AND WRITE BANKS

INT 62 003C - FGDRIVER v4.02 - "FG_GETBLOCK" - GRAB RECTANGLE OF DISPLAY

INT 62 003D - FGDRIVER v4.02 - "FG_GETCHAR" - GET CHARACTER FOR SCREEN POSITION

INT 62 003E - FGDRIVER v4.02 - "FG_GETCLIP" - GET CLIPPING REGION IN SCREEN SPACE

INT 62 003F - FGDRIVER v4.02 - "FG_GETCLOCK" - GET CLOCK TICKS SINCE MIDNIGHT

INT 62 0040 - FGDRIVER v4.02 - "FG_GETCOLOR" - GET CURRENT TEXT ATTRIBUTE

INT 62 0041 - FGDRIVER v4.02 - "FG_GETDACS" - GET VIDEO DAC CONTENTS

INT 62 0042 - FGDRIVER v4.02 - "FG_GETENTRY" - GET PAGE TYPE AND ADDRESS

INT 62 0043 - FGDRIVER v4.02 - "FG_GETHPAGE" - GET CURRENT HIDDEN VIDEO PAGE NUM

INT 62 0044 - FGDRIVER v4.02 - "FG_GETIMAGE" - STORE IMAGE AS BITMAP

INT 62 0045 - FGDRIVER v4.02 - "FG_GETINDEX" - GET COLOR VALUE FOR COLOR INDEX

INT 62 0046 - FGDRIVER v4.02 - "FG_GETKEY" - GET NEXT KEYSTROKE

INT 62 0047 - FGDRIVER v4.02 - "FG_GETLINES" - GET TEXT ROWS FOR CURR VIDEO MODE

INT 62 0048 - FGDRIVER v4.02 - "FG_GETMAP" - STORE IMAGE AS MODE-INDEPENDNT BITMAP

INT 62 0049 - FGDRIVER v4.02 - "FG_GETMAXX" - GET MAXIMUM COLUMN IN SCREEN SPACE

INT 62 004A - FGDRIVER v4.02 - "FG_GETMAXY" - GET MAXIMUM ROW IN SCREEN SPACE

INT 62 004B - FGDRIVER v4.02 - "FG_GETMODE" - GET CURRENT VIDEO MODE NUMBER

INT 62 004C - FGDRIVER v4.02 - "FG_GETPAGE" - GET ACTIVE VIDEO PAGE NUMBER

INT 62 004D - FGDRIVER v4.02 - "FG_GETPIXEL" - GET COLOR OF SPECIFIED PIXEL

INT 62 004E - FGDRIVER v4.02 - "FG_GETRGB" - GET VIDEO DAC REGISTER CONTENTS

INT 62 004F - FGDRIVER v4.02 - "FG_GETVIEW" - GET VIEWPORT EXTREME LIMITS

INT 62 0050 - FGDRIVER v4.02 - "FG_GETVPAGE" - GET VISIBLE VIDEO PAGE NUMBER

INT 62 0051 - FGDRIVER v4.02 - "FG_GETXBOX" - GET WIDTH OF VERTICAL BOX LINES

INT 62 0052 - FGDRIVER v4.02 - "FG_GETXJOY" - GET HORIZONTAL POSITION OF JOYSTICK

INT 62 0053 - FGDRIVER v4.02 - "FG_GETXJUST" - GET HORIZONTAL JUSTIFICATION

INT 62 0054 - FGDRIVER v4.02 - "FG_GETXPOS" - GET GRAPHICS CURSOR COLUMN

INT 62 0055 - FGDRIVER v4.02 - "FG_GETYBOX" - GET WIDTH OF HORIZONTAL BOX LINES

INT 62 0056 - FGDRIVER v4.02 - "FG_GETYJOY" - GET VERTICAL POSITION OF JOYSTICK

INT 62 0057 - FGDRIVER v4.02 - "FG_GETYJUST" - GET VERTICAL JUSTIFICATION

INT 62 0058 - FGDRIVER v4.02 - "FG_GETYPOS" - GET GRAPHICS CURSOR ROW

INT 62 0059 - FGDRIVER v4.02 - "FG_HUSH" - STOP ASYNCHRONOUS SOUND IMMEDIATELY

INT 62 005A - FGDRIVER v4.02 - "FG_HUSHNEXT" - STOP ASYNCHRONOUS SOUND

INT 62 005B - FGDRIVER v4.02 - "FG_IMAGEBUF" - SPECIFY TEMPORARY IMAGE BUFFER

INT 62 005C - FGDRIVER v4.02 - "FG_IMAGESIZ" - DETERMINE IMAGE STORAGE REQUIREMENT

INT 62 005D - FGDRIVER v4.02 - "FG_INITEMS" - INITIALIZE EXPANDED MEMORY USE

INT 62 005E - FGDRIVER v4.02 - "FG_INITJOY" - INITIALIZE JOYSTICK USE

INT 62 005F - FGDRIVER v4.02 - "FG_INITPM"??? - (NOT IMPLEMENTED)

INT 62 0060 - FGDRIVER v1.10 only - "FG_DISPPCX" - DISPLAY PCX FILE

INT 62 0060 - FGDRIVER v4.02 - "FG_INITXMS" - INITIALIZE EXTENDED MEMORY USE

INT 62 0061 - FDGRIVER v4.02 - "FG_INSIDE" - CHECK IF POINT INSIDE CONVEX POLYGON

INT 62 0062 - FGDRIVER v4.02 - "FG_INTJOY" - GET KEYCODES CORRESP TO JOYSTICK POS

INT 62 0063 - FGDRIVER v4.02 - "FG_INTKEY" - GET KEYSTROKE, NO WAIT

INT 62 0064 - FGDRIVER v4.02 - "FG_INVERT" - INVERT ORIENTATION OF BITMAP

INT 62 0065 - FGDRIVER v4.02 - "FG_JUSTIFY" - SET TEXT OUTPUT JUSTIFICATION

INT 62 0066 - FGDRIVER v4.02 - "FG_KBINIT" - ENABLE/DISABLE LOW-LEVEL KBD HANDLER

INT 62 0067 - FGDRIVER v4.02 - "FG_KBLAST" - GET MOST RECENT SCANCODE PROCESSED

INT 62 0068 - FGDRIVER v4.02 - "FG_KBRESET" - RESET LOW-LEVEL KEYBOARD HANDLER

INT 62 0069 - FGDRIVER v4.02 - "FG_KBTEST" - CHECK WHETHER SPECIFIED KEY PRESSED

INT 62 006A - FGDRIVER v4.02 - "FG_LOADPCX" - LOAD .PCX INTO ACTIVE VIRTUAL BUFFER

INT 62 006B - FGDRIVER v4.02 - "FG_LOCATE" - SET TEXT-MODE CURSOR POSITION

INT 62 006C - FGDRIVER v4.02 - "FG_MAKEPCX" - CREATE PCX FILE FROM SCREEN WINDOW

INT 62 006D - FGDRIVER v4.02 - "FG_MAKEPPR" - CREATE PACKED PIXEL RUN FILE

INT 62 006E - FGDRIVER v4.02 - "FG_MAKESPR" - CREATE STANDARD PIXEL RUN FILE

INT 62 006F - FGDRIVER v4.02 - "FG_MAPRGB" - MAP COLOR COMPONENTS INTO PALETTE VAL

INT 62 0070 - FGDRIVER v4.02 - "FG_MEASURE" - GET DELAY UNITS PER CLOCK TICK

INT 62 0071 - FGDRIVER v4.02 - "FG_MEMAVAIL" - QUERY AMOUNT OF FREE MEMORY

INT 62 0072 - FGDRIVER v4.02 - "FG_MEMORY" - GET SIZE OF VIDEO MEMORY

INT 62 0073 - FGDRIVER v4.02 - "FG_MOUSE256" - DEFINE 256-COLOR MOUSE CURSOR

INT 62 0074 - FGDRIVER v4.02 - "FG_MOUSEBUT" - GET MOUSE BUTTON PRESS/RELEASE CNTS

INT 62 0075 - FGDRIVER v4.02 - "FG_MOUSECUR" - SPECIFY TEXT-MODE MOUSE CURSOR

INT 62 0076 - FGDRIVER v4.02 - "FG_MOUSEFIN" - UNHOOK FASTGRAPH MOUSE HANDLER

INT 62 0077 - FGDRIVER v4.02 - "FG_MOUSEINI" - INITIALIZE MOUSE SUPPORT

INT 62 0078 - FGDRIVER v4.02 - "FG_MOUSELIM" - SPECIFY MOUSE CURSOR LIMITS

INT 62 0079 - FGDRIVER v4.02 - "FG_MOUSEMOV" - SET MOUSE CURSOR POSITION

INT 62 007A - FGDRIVER v4.02 - "FG_MOUSEPOS" - GET CURRENT MOUSE POSITION

INT 62 007B - FGDRIVER v4.02 - "FG_MOUSEPTR" - SPECIFY GRAPH-MODE MOUSE CURSOR

INT 62 007C - FGDRIVER v4.02 - "FG_MOUSESPD" - SET MOUSE CURSOR SPEED

INT 62 007D - FGDRIVER v4.02 - "FG_MOUSEVIS" - SET MOUSE CURSOR VISIBILITY

INT 62 007E - FGDRIVER v4.02 - "FG_MOVE" - SET GRAPHICS CURSOR POSITION

INT 62 007F - FGDRIVER v4.02 - "FG_MOVEREL" - ADJUST GRAPHICS CURSOR POSITION

INT 62 0080 - FGDRIVER v4.02 - "FG_MUSIC" - PLAY SERIES OF NOTES

INT 62 0081 - FGDRIVER v4.02 - "FG_MUSICB" - PLAY SERIES OF NOTES IN BACKGROUND

INT 62 0082 - FGDRIVER v4.02 - "FG_NUMLOCK" - GET STATE OF NUMLOCK KEY

INT 62 0083 - FGDRIVER v4.02 - "FG_PACK" - CONVERT PIXEL-PER-BYTE TO PACKED BITMAP

INT 62 0084 - FGDRIVER v4.02 - "FG_PAGESIZE" - GET VIDEO PAGE SIZE FOR CURR MODE

INT 62 0085 - FGDRIVER v4.02 - "FG_PAINT" - FLOOD CLOSED REGION WITH COLOR

INT 62 0086 - FGDRIVER v4.02 - "FG_PALETTE" - SET PALETTE / SET VIDEO DAC REGISTER

INT 62 0087 - FGDRIVER v4.02 - "FG_PALETTES" - SET ALL PALETTE REGISTERS

INT 62 0088 - FGDRIVER v4.02 - "FG_PAN" - SET SCREEN ORIGIN

INT 62 0089 - FGDRIVER v4.02 - "FG_PATTERN" - SPECIFY DISPLAY PATTERN FOR COLOR

INT 62 008A - FGDRIVER v4.02 - "FG_PCXHEAD" - GET PCX FILE HEADER

INT 62 008B - FGDRIVER v4.02 - "FG_PCXMODE" - GET OPTIMAL VIDEO MODE FOR DISPLAY

INT 62 008C - FGDRIVER v4.02 - "FG_PCXPAL" - GET PALETTE STORED IN PCX FILE

INT 62 008D - FGDRIVER v4.02 - "FG_PCXRANGE" - GET EXTENT OF PCX IMAGE

INT 62 008E - FGDRIVER v4.02 - "FG_PLAYING" - DETERMINE WHETHER ASYNC SOUND ACTIVE

INT 62 008F - FGDRIVER v4.02 - "FG_POINT" - DISPLAY A PIXEL

INT 62 0090 - FGDRIVER v4.02 - "FG_POINTX" - DISPLAY A PIXEL IN XOR MODE

INT 62 0091 - FGDRIVER v4.02 - "FG_POLYEDGE" - SPECIFY INCLUSION OF FINAL PIXELS

INT 62 0092 - FGDRIVER v4.02 - "FG_POLYFILL" - DRAW A FILLED CONVEX POLYGON

INT 62 0093 - FGDRIVER v4.02 - "FG_POLYGON" - DRAW AN UNFILLED POLYGON

INT 62 0094 - FGDRIVER v4.02 - "FG_POLYLINE" - DRAW AN UNFILLED POLYGON

INT 62 0095 - FGDRIVER v4.02 - "FG_POLYOFF" - DEFINE POLYGON DRAWING OFFSET

INT 62 0096 - FGDRIVER v4.02 - "FG_PRINT" - DISPLAY STRING OF HARDWARE CHARACTERS

INT 62 0097 - FGDRIVER v4.02 - "FG_PRINTC" - DISPLAY STRING OF HW CHARS (CLIPPED)

INT 62 0098 - FGDRIVER v4.02 - "FG_PUTBLOCK" - RESTORE RECTANGLE OF DISPLAY

INT 62 0099 - FGDRIVER v4.02 - "FG_PUTIMAGE" - DISPLAY MODE-SPECIFIC BITMAP IMAGE

INT 62 009A - FGDRIVER v4.02 - "FG_QUIET" - STOP CONTINUOUS SYNCHRONOUS SOUND

INT 62 009B - FGDRIVER v4.02 - "FG_RECT" - DRAW UNFILLED RECTANGLE IN SCREEN SPACE

INT 62 009C - FGDRIVER v4.02 - "FG_RESET" - ERASE SCREEN AND RESTORE SCREEN ATTR

INT 62 009D - FGDRIVER v4.02 - "FG_RESIZE" - SET GRAPHICS MODE VIDEO PAGE SIZE

INT 62 009E - FGDRIVER v4.02 - "FG_RESTORE" - COPY REGION FROM HIDDEN TO VIS PAGE

INT 62 009F - FGDRIVER v4.02 - "FG_RESUME" - RESTART ASYNCHRONOUS SOUND

INT 62 00A0 - FGDRIVER v4.02 - "FG_REVIMAGE" - DISPLAY REVERSED IMAGE (BITMAP)

INT 62 00A1 - FGDRIVER v4.02 - "FG_REVMASK" - DISPLAY REVERSED IMAGE (MASKING MAP)

INT 62 00A2 - FGDRIVER v4.02 - "FG_SAVE" - COPY REGION FROM VISIBLE TO HIDDEN PAGE

INT 62 00A3 - FGDRIVER v4.02 - "FG_SCALE" - SCALE BITMAP

INT 62 00A4 - FGDRIVER v4.02 - "FG_SCRLOCK" - GET STATE OF SCROLL LOCK KEY

INT 62 00A5 - FGDRIVER v4.02 - "FG_SCROLL" - VERTICALLY SCROLL SCREEN REGION

INT 62 00A6 - FGDRIVER v4.02 - "FG_SETATTR" - SET TEXT-MODE CHARACTER ATTRIBUTE

INT 62 00A7 - FGDRIVER v4.02 - "FG_SETBANKS" - SET SVGA READ AND WRITE BANKS

INT 62 00A8 - FGDRIVER v4.02 - "FG_SETCAPS" - SET STATE OF CAPSLOCK KEY

INT 62 00A9 - FGDRIVER v4.02 - "FG_SETCLIP" - SET CLIPPING REGION

INT 62 00AA - FGDRIVER v4.02 - "FG_SETCOLOR" - SET CURRENT COLOR

INT 62 00AB - FGDRIVER v4.02 - "FG_SETDACS" - SET VIDEO DAC CONTENTS

INT 62 00AC - FGDRIVER v4.02 - "FG_SETENTRY" - SET TYPE AND ADDRESS OF VIDEO PAGE

INT 62 00AD - FGDRIVER v4.02 - "FG_SETFUNC" - SET LOGICAL OPERATION FOR VIDEO OPS

INT 62 00AE - FGDRIVER v4.02 - "FG_SETHPAGE" - SET HIDDEN VIDEO PAGE

INT 62 00AF - FGDRIVER v4.02 - "FG_SETLINES" - SET TEXT ROWS ON SCREEN

INT 62 00B0 - FGDRIVER v4.02 - "FG_SETMODE" - SELECT VIDEO MODE AND INITIALIZE

INT 62 00B1 - FGDRIVER v4.02 - "FG_SETNUM" - SET STATE OF NUMLOCK KEY

INT 62 00B2 - FGDRIVER v4.02 - "FG_SETPAGE" - SET ACTIVE VIDEO PAGE

INT 62 00B3 - FGDRIVER v4.02 - "FG_SETRGB" - SET VIDEO DAC REGISTER CONTENTS

INT 62 00B4 - FGDRIVER v4.02 - UNUSED

INT 62 00B5 - FGDRIVER v4.02 - "FG_SETVIEW" - DEFINE VIEWPORT

INT 62 00B6 - FGDRIVER v4.02 - "FG_SETVPAGE" - SET VISIBLE VIDEO PAGE

INT 62 00B7 - FGDRIVER v4.02 - "FG_SHEAR" - SHEAR UNPACKED BITMAP

INT 62 00B8 - FGDRIVER v4.02 - "FG_SHOWFLIC" - DISPLAY IMAGE FROM FLI/FLC FILE

INT 62 00B9 - FGDRIVER v4.02 - "FG_SHOWPCX" - DISPLAY IMAGE FROM PCX FILE

INT 62 00BA - FGDRIVER v4.02 - "FG_SHOWPPR" - DISPLAY IMAGE FROM PPR FILE

INT 62 00BB - FGDRIVER v4.02 - "FG_SHOWSPR" - DISPLAY IMAGE FROM SPR FILE

INT 62 00BC - FGDRIVER v4.02 - "FG_SOUND" - MAKE SOUND FOR SPECIFIED DURATION

INT 62 00BD - FGDRIVER v4.02 - "FG_SOUNDS" - PLAY SOUNDS IN BACKGROUND

INT 62 00BE - FGDRIVER v4.02 - "FG_SPLIT" - ENABLE/DISABLE SPLIT SCREEN ENVIRONMNT

INT 62 00BF - FGDRIVER v4.02 - "FG_STALL" - PAUSE FOR SPECIFIED DURATION

INT 62 00C0 - FGDRIVER v4.02 - "FG_SUSPEND" - TEMPORARILY STOP ASYNCHRONOUS SOUND

INT 62 00C1 - FGDRIVER v4.02 - "FG_SVGAINIT" - INITIALIZE FASTGRAPH SVGA KERNEL

INT 62 00C2 - FGDRIVER v4.02 - "FG_SVGASTAT" - GET SVGA CHIPSET INFORMATION

INT 62 00C3 - FGDRIVER v4.02 - "FG_SVGAVER" - GET FASTGRAPH SVGA KERNEL VERSION

INT 62 00C4 - FGDRIVER v4.02 - "FG_TCDEFINE" - DEFINE TRANSPARENCY OF COLOR INDEX

INT 62 00C5 - FGDRIVER v4.02 - "FG_TCMASK" - SET TRANSPARENT COLORS

INT 62 00C6 - FGDRIVER v4.02 - "FG_TCXFER" - COPY REGION EXCLUDING TRANSPARENT

INT 62 00C7 - FGDRIVER v4.02 - "FG_TESTMODE" - CHECK IF VIDEO MODE AVAILABLE

INT 62 00C8 - FGDRIVER v4.02 - "FG_TEXT" - DISPLAY STRING OF CHARACTERS

INT 62 00C9 - FGDRIVER v4.02 - "FG_TEXTC" - DISPLAY STRING OF CHARACTERS (CLIPPED)

INT 62 00CA - FGDRIVER v4.02 - "FG_TRANSFER" - COPY REGION

INT 62 00CB - FGDRIVER v4.02 - "FG_UNPACK" - EXPAND MODE-SPECIFIC BITMAP

INT 62 00CC - FGDRIVER v4.02 - "FG_VBADDR" - GET ADDRESS OF VIRTUAL BUFFER

INT 62 00CD - FGDRIVER v4.02 - "FG_VBALLOC" - CREATE VIRTUAL BUFFER

INT 62 00CE - FGDRIVER v4.02 - "FG_VBCLOSE" - CLOSE ACTIVE VIRTUAL BUFFER

INT 62 00CF - FGDRIVER v4.02 - "FG_VBCOPY" - COPY RECT BETWEEN VIRTUAL BUFFERS

INT 62 00D0 - FGDRIVER v4.02 - "FG_VBCUT" - COPY RECT FROM VIDEO TO VIRTUAL BUFFER

INT 62 00D1 - FGDRIVER v4.02 - "FG_VBDEFINE" - CREATE VIRTUAL BUFFER

INT 62 00D2 - FGDRIVER v4.02 - "FG_VBFREE" - RELEASE VIRTUAL BUFFER

INT 62 00D3 - FGDRIVER v4.02 - "FG_VBHANDLE" - GET ACTIVE VIRTUAL BUFFER'S HANDLE

INT 62 00D4 - FGDRIVER v4.02 - "FG_VBINIT" - INITIALIZE VIRTUAL BUFFER ENVIRONMENT

INT 62 00D5 - FGDRIVER v4.02 - "FG_VBOPEN" - MAKE VIRTUAL BUFFER ACTIVE

INT 62 00D6 - FGDRIVER v4.02 - "FG_VBPASTE" - COPY RECT FROM VIRTUAL BUF TO VIDEO

INT 62 00D7 - FGDRIVER v4.02 - "FG_VBTCCOPY" - COPY RECTANGLE BETWEEN VIRTUAL BUFS

INT 62 00D8 - FGDRIVER v4.02 - "FG_VBTCXFER" - COPY RECTANGLE TO ACTIVE VIDEO PAGE

INT 62 00D9 - FGDRIVER v4.02 - "FG_VBUNDEF" - RELEASE HANDLE FOR VIRTUAL BUFFER

INT 62 00DA - FGDRIVER v4.02 - "FG_VGASTATE" - SAVE/RESTORE VGA CONTROLLER STATE

INT 62 00DB - FGDRIVER v4.02 - "FG_VOICE" - START SOUND

INT 62 00DC - FGDRIVER v4.02 - "FG_VOICES" - PLAY SOUNDS IN BACKGROUND

INT 62 00DD - FGDRIVER v4.02 - "FG_WAITFOR" - DELAY FOR SPECIFIED DURATION

INT 62 00DE - FGDRIVER v4.02 - "FG_WAITKEY" - FLUSH KEYBOARD BUFFER AND AWAIT KEY

INT 62 00DF - FGDRIVER v4.02 - "FG_WAITVR" - ENABLE/DISABLE VERTICAL RETRACE WAIT

INT 62 00E0 - FGDRIVER v4.02 - "FG_WHERE" - GET CURRENT CURSOR POSITION

INT 62 00E1 - FGDRIVER v4.02 - "FG_XALPHA" - CONVERT SCREEN COLUMN TO CHAR COLUMN

INT 62 00E2 - FGDRIVER v4.02 - "FG_XCONVERT" - CONVERT CHAR COLUMN TO SCREEN COL

INT 62 00E3 - FGDRIVER v4.02 - "FG_XVIEW" - CONVERT VIEWPORT COORDINATE

INT 62 00E4 - FGDRIVER v4.02 - "FG_YALPHA" - CONVERT SCREEN ROW TO CHARACTER ROW

INT 62 00E5 - FGDRIVER v4.02 - "FG_YCONVERT" - CONVERT CHARACTER ROW TO SCREEN ROW

INT 62 00E6 - FGDRIVER v4.02 - "FG_YVIEW" - TRANSLATE VERTICAL VIEWPORT COORDINATE

INT 62 01-- - Cswitch - GIVE UP REST OF TIME-SLICE

INT 62 01-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI

INT 62 02-- - Cswitch - WAIT FOR SEMAPHORE

INT 62 02-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - INITIALIZE

INT 62 03-- - Cswitch - CHECK SEMAPHORE

INT 62 03-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET REAL IP ADDRESS

INT 62 04-- - Cswitch - TRIGGER SEMAPHORE

INT 62 04-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???

INT 62 05-- - Cswitch - SLEEP

INT 62 05-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 06-- - Cswitch - SUSPEND

INT 62 06-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 07-- - Cswitch - SPAWN

INT 62 07-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 08-- - Cswitch - WAKE UP TASK

INT 62 08-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 08-- - MS SQL Server/Sybase DBLIBRARY interface - UNINSTALL/GET PSP ADDR

INT 62 09-- - Cswitch - SET PRIORITY

INT 62 09-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - HOOK TIMER INTERRUPT

INT 62 0A-- - Cswitch - TEST MESSAGE QUEUE

INT 62 0A-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - UNHOOK TIMER INTERRUPT

INT 62 0B-- - Cswitch - SEND MESSAGE

INT 62 0B-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ADD ???

INT 62 0C-- - Cswitch - READ MESSAGE

INT 62 0C-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - REMOVE ???

INT 62 0D-- - Cswitch - DON'T ALLOW TASK TO BE SWAPPED OUT

INT 62 0D-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI

INT 62 0E-- - Cswitch - ALLOW TASK TO BE SWAPPED OUT

INT 62 0E-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - BEGIN CRITICAL SECTION

INT 62 0F-- - Cswitch - LOAD AND RUN PROGRAM FROM DISK

INT 62 0F-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - END CRITICAL SECTION

INT 62 10-- - Cswitch - TERMINATE SPAWNED PROGRAM

INT 62 10-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - QUERY CRITICAL SECTION

INT 62 11-- - Cswitch - GET TCB INFORMATION

INT 62 11-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???

INT 62 12-- - Cswitch - GET TCB ADDRESS

INT 62 12-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET SOCKET NUMBER???

INT 62 13-- - Cswitch - CHECK STATUS OF PREVIOUS LOAD_TASK

INT 62 13-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 14-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 15-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET ???

INT 62 16-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 17-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

INT 62 18-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ALLOCATE AND MAP EMS FOR DRIVER

INT 62 47-- - PC Tools v7 COMMUTE - ???

INT 62 48-- - PC Tools v7 COMMUTE - ???

INT 62 49-- - PC Tools v7 COMMUTE - ???

INT 62 4A-- - PC Tools v7 COMMUTE - ???

INT 62 4B-- - PC Tools v7 COMMUTE - ???

INT 62 4C-- - PC Tools v7 COMMUTE - ???

INT 62 6262 - PC Tools v7 COMMUTE - INSTALLATION CHECK

INT 62 C0-- - GWBTSR - API

INT 62 FE-- - BW-TCP - ETHDRV.SYS - MAP EMS PAGE FRAME

Interrupts


INT 63 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 63 - reserved for user interrupt; multiple purposes

INT 63 ---- - reserved for user interrupt

INT 63 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

INT 63 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

INT 63 ---- - Oracle SQL Protected Mode Executive - ???

INT 63 ---- - 4+Power FLOPPY CONTROLLER - ORIGINAL INT 13/40

INT 63 ---- - Kofax KF9X00 image manipulation card interface

INT 63 ---- - DESQview/X - SOCKET API

INT 63 00-- - HP 100LX - MAP HIGH MEMORY

INT 63 00-- - BW-TCP - TCPIP.SYS - SET IP ADDRESS???

INT 63 01-- - HP 100LX - SAVE/RESTORE MEMORY MAP

INT 63 01-- - BW-TCP - TCPIP.SYS - ???

INT 63 02-- - BW-TCP - TCPIP.SYS - ???

INT 63 03-- - BW-TCP - TCPIP.SYS - GET IP ADDRESS

INT 63 04-- - BW-TCP - TCPIP.SYS - ???

INT 63 05-- - BW-TCP - TCPIP.SYS - ???

INT 63 06-- - BW-TCP - TCPIP.SYS - ???

INT 63 07-- - BW-TCP - TCPIP.SYS - ???

INT 63 08-- - BW-TCP - TCPIP.SYS - SET DEFAULT ??? HANDLER

INT 63 09-- - BW-TCP - TCPIP.SYS - INSTALL ??? HANDLERS

INT 63 0A-- - BW-TCP - TCPIP.SYS - DELETE ??? HANDLERS

INT 63 0B-- - BW-TCP - TCPIP.SYS - ???

INT 63 0C-- - BW-TCP - TCPIP.SYS - ???

INT 63 0D-- - BW-TCP - TCPIP.SYS - INSTALL DEFAULT ??? HANDLER

INT 63 0E-- - BW-TCP - TCPIP.SYS - CLOSE NETWORK DESCRIPTOR

INT 63 0F-- - BW-TCP - TCPIP.SYS - ???

INT 63 10-- - BW-TCP - TCPIP.SYS - ???

INT 63 11-- - BW-TCP - TCPIP.SYS - ???

INT 63 12-- - BW-TCP - TCPIP.SYS - LISTEN FOR INCOMING CONNECTIONS

INT 63 13-- - BW-TCP - TCPIP.SYS - NOP

INT 63 14-- - BW-TCP - TCPIP.SYS - OPEN NETWORK CONNECTION

INT 63 15-- - BW-TCP - TCPIP.SYS - ???

INT 63 16-- - BW-TCP - TCPIP.SYS - RESET NETWORK CONNECTION

INT 63 17-- - BW-TCP - TCPIP.SYS - ???

INT 63 18-- - BW-TCP - TCPIP.SYS - ???

INT 63 19-- - BW-TCP - TCPIP.SYS - WRITE TO THE NETWORK

INT 63 1A-- - BW-TCP - TCPIP.SYS - READ FROM THE NETWORK

INT 63 1B-- - BW-TCP - TCPIP.SYS - ???

INT 63 1C-- - BW-TCP - TCPIP.SYS - ???

INT 63 1D-- - BW-TCP - TCPIP.SYS - ???

INT 63 1E-- - BW-TCP - TCPIP.SYS - ???

INT 63 1F-- - BW-TCP - TCPIP.SYS - SET SOCKET ??? HANDLER

INT 63 20-- - BW-TCP - TCPIP.SYS - REMOVE SOCKET ??? HANDLER

INT 63 21-- - BW-TCP - TCPIP.SYS - ???

INT 63 22-- - BW-TCP - TCPIP.SYS - REMOVE ??? HANDLER

INT 63 23-- - BW-TCP - TCPIP.SYS - ???

INT 63 24-- - BW-TCP - TCPIP.SYS - GET SOCKET

INT 63 25-- - BW-TCP - TCPIP.SYS - GET INTERNET ADDRESS

INT 63 26-- - BW-TCP - TCPIP.SYS - SET INTERNET ADDRESS???

INT 63 27-- - BW-TCP - TCPIP.SYS - SET ???

INT 63 28-- - BW-TCP - TCPIP.SYS - ???

INT 63 29-- - BW-TCP - TCPIP.SYS - ???

Interrupts


INT 64 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 64 - reserved for user interrupt; multiple purposes

INT 64 ---- - reserved for user interrupt

INT 64 ---- - Adaptec controllers - DRIVE 1 DATA

INT 64 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

INT 64 ---- - Oracle SQL Protected Mode Executive - ???

INT 64 ---- - Novell NetWare to v2.0a - LOW-LEVEL API

INT 64 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

INT 64 ---- - Extended Batch Language v3.14+

INT 64 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

INT 64 01-- - BW-NFS - BWRPC - ???

INT 64 02-- - BW-NFS - BWRPC - ???

INT 64 03-- - BW-NFS - BWRPC - ADD ???

INT 64 04-- - BW-NFS - BWRPC - REMOVE ???

INT 64 05-- - BW-NFS - BWRPC - ???

INT 64 06-- - BW-NFS - BWRPC - ???

INT 64 07-- - BW-NFS - BWRPC - GET IP ADDRESS

INT 64 10-- - BW-NFS - BWRPC - CALL ETHDEV.SYS

INT 64 11-- - BW-NFS - BWRPC - NOP???

INT 64 FE-- - BW-NFS - BWRPC - MAP EMS PAGE FRAME

Interrupts


INT 65 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 65 - reserved for user interrupt; multiple purposes

INT 65 ---- - reserved for user interrupt

INT 65 ---- - Adaptec controllers - DRIVE 1 DATA

INT 65 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

INT 65 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

INT 65 ---- - FTP Software NDIS-Packet Driver adapter - POST PROCESSING INTERRUPT

INT 65 ---- - SD.COM v6.2

INT 65 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

INT 65 ---- - Ad Lib SOUND.COM - INTERFACE

INT 65 ---- - Ad Lib SOUND.COM - INITIALIZE (RESET)

INT 65 ---- - Ad Lib SOUND.COM - SET STATE

INT 65 ---- - Ad Lib SOUND.COM - GET STATE

INT 65 ---- - Ad Lib SOUND.COM - SET MODE

INT 65 ---- - Ad Lib SOUND.COM - GET MODE

INT 65 ---- - Ad Lib SOUND.COM - SET ACTIVE VOICE

INT 65 ---- - Ad Lib SOUND.COM - GET ACTIVE VOICE

INT 65 ---- - Media Vision FM.COM v4.1a+ - GET INTERNAL DATA STRUCTURES

INT 65 ---- - Media Vision FM.COM v4.1a+ - GET VOICE COUNT

INT 65 ---- - Media Vision FM.COM v4.1a+ - START BACKGROUND FM SOUNDS

INT 65 ---- - Media Vision FM.COM v4.1a+ - STOP BACKGROUND FM SOUNDS

INT 65 ---- - Media Vision FM.COM v4.1a+ - GET ???

INT 65 ---- - Media Vision FM.COM v4.1a+ - ???

INT 65 ---- - EZRECV v1.0 - API

Interrupts


INT 66 - reserved for user interrupt; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 66 - reserved for user interrupt; multiple purposes

INT 66 ---- - reserved for user interrupt

INT 66 ---- - Adaptec controllers - DRIVE 1 DATA

INT 66 ---- - TI Professional PC - SYSTEM INFORMATION (NOT A VECTOR!)

INT 66 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

INT 66 ---- - Nanosoft, Inc. TurboNET - NETWORK PROCESSING ???

INT 66 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

INT 66 ---- - Microsoft Windows VITD.386 Virtual Interval Timer

INT 66 ---- - Newkey v5.4 - INSTALLATION VECTOR

INT 66 ---- - PC-Magazin - INCA

INT 66 01-- - BitFax Scheduler - SET MODE???

INT 66 02-- - BitFax Scheduler - SET MODE???

INT 66 03-- - BitFax Scheduler - SCHEDULE FAX TRANSMISSIONS

INT 66 04-- - BitFax Scheduler - GET STATUS???

INT 66 05-- - BitFax Scheduler - CONVERT FILE AND SEND FAX

INT 66 06-- - BitFax Scheduler - SET MODE???

INT 66 0688 - IBMSND driver, DIGPAK - PLAY 8-BIT DIGITIZED SOUND

INT 66 0689 - IBMSND driver, DIGPAK - REPORT SOUND DRIVER STATUS

INT 66 068A - IBMSND driver, DIGPAK - PREFORMAT SOUND

INT 66 068B - IBMSND driver, DIGPAK - PLAY PREFORMATTED SOUND

INT 66 068C - IBMSND driver, DIGPAK - REPORT AUDIO DRIVER CAPABILITIES

INT 66 068D - IBMSND driver, DIGPAK - REPORT CURRENT SAMPLE ADDRESS

INT 66 068E - IBMSND driver, DIGPAK - SET CALLBACK ADDRESS

INT 66 068F - IBMSND driver, DIGPAK - STOP CURRENT SOUND

INT 66 0690 - IBMSND driver, DIGPAK - "SetAudioHardware" - SET UP HARDWARE INFO

INT 66 0691 - IBMSND driver, DIGPAK - REPORT CALLBACK ADDRESS

INT 66 0693 - DIGPAK - SET TIMER DIVISOR RATE

INT 66 0694 - DIGPAK - PLAY PREFORMATTED DATA

INT 66 0695 - DIGPAK - POST AUDIO PENDING

INT 66 0696 - DIGPAK - GET AUDIO PENDING STATUS

INT 66 0697 - DIGPAK - SET STEREO PANNING

INT 66 0698 - DIGPAK - SET PLAY MODE

INT 66 0699 - DIGPAK - GET ADDRESSES

INT 66 069A - DIGPAK - SET RECORD MODE

INT 66 069B - DIGPAK - STOP NEXT LOOP

INT 66 069C - DIGPAK - SET DMA BACKFILL MODE

INT 66 069D - DIGPAK - REPORT DMA COUNTER

INT 66 069E - DIGPAK - VERIFY DMA BLOCK

INT 66 069F - DIGPAK - SET PCM VOLUME

INT 66 06A0 - DIGPAK - SET DPMI MODE

INT 66 0700 - MIDPAK - UNINSTALL

INT 66 0701 - IBM Digitized Sound Package MIDI driver - GET DIGITIZED SOUND CAPABIL

INT 66 0702 - MIDPAK - PLAY SEQUENCE

INT 66 0703 - MIDPAK - SEGUE SEQUENCE

INT 66 0704 - MIDPAK - REGISTER XMIDI

INT 66 0705 - MIDPAK - STOP MIDI

INT 66 0706 - MIDPAK - REMAP CHANNEL

INT 66 0707 - MIDPAK - REPORT TRIGGER EVENT COUNTER

INT 66 0708 - MIDPAK - RESET EVENT TRIGGER COUNTER

INT 66 0709 - MIDPAK - MIDI SLEEP

INT 66 070A - MIDPAK - MIDI AWAKE

INT 66 070B - MIDPAK - RESUME PLAYING

INT 66 070C - MIDPAK - GET SEQUENCE STATUS

INT 66 070D - MIDPAK - REGISTER XMIDI FILE

INT 66 070E - MIDPAK - GET RELATIVE VOLUME

INT 66 070F - MIDPAK - SET RELATIVE VOLUME

INT 66 0710 - MIDPAK - LOAD MIDPAK DRIVER

INT 66 0711 - MIDPAK - POLL MIDPAK

INT 66 0712 - MIDPAK - GET MIDI CLOCK

INT 66 0713 - MIDPAK - GET TRIGGER COUNT ADDRESS

INT 66 0714 - MIDPAK - GET EVENT ID ADDRESS

INT 66 0716 - MIDPAK - REPORT SEQUENCE NUMBER

INT 66 10-- - PenDOS - TDMOUSE.EXE - GET ???

INT 66 11-- - PenDOS - TDMOUSE.EXE - SET ??? HANDLER

INT 66 12-- - PenDOS - TDMOUSE.EXE - INITIALIZE

INT 66 13-- - PenDOS - TDMOUSE.EXE - SHUTDOWN???

INT 66 14-- - PenDOS - TDMOUSE.EXE - ???

INT 66 15-- - PenDOS - TDMOUSE.EXE - SET ??? HANDLER

INT 66 16-- - PenDOS - TDMOUSE.EXE - UNUSED FUNCTIONS

INT 66 21-- - PenDOS - PINK - ???

INT 66 22-- - PenDOS - PINK - ???

INT 66 23-- - PenDOS - PINK - ???

INT 66 24-- - PenDOS - PINK - ???

INT 66 25-- - PenDOS - PINK - ???

INT 66 27-- - PenDOS - PINK - ???

INT 66 28-- - PenDOS - PINK - ???

INT 66 29-- - PenDOS - PINK - ???

INT 66 2A-- - PenDOS - PINK - ???

INT 66 2B-- - PenDOS - PINK - ???

INT 66 2F-- - PenDOS - PINK - INITIALIZE

INT 66 3345 - BitFax Scheduler - REMOVE TSR FROM MEMORY

INT 66 40-- - PenDOS - PKEYUS - GET VERSION

INT 66 41-- - PenDOS - PKEYUS - SET ???

INT 66 42-- - PenDOS - PKEYUS - ???

INT 66 43-- - PenDOS - PKEYUS - ???

INT 66 44-- - PenDOS - PKEYUS - UNUSED FUNCTIONS

INT 66 50-- - PenDOS - PMOUSE - SET ???

INT 66 51-- - PenDOS - PMOUSE - NOP

INT 66 52-- - PenDOS - PMOUSE - ???

INT 66 53-- - PenDOS - PMOUSE - UNUSED FUNCTIONS

INT 66 ---- - PenDOS - PMOUSE - ALTERNATE API

INT 66 AA02 - HelpTSR v2.10 - INSTALLATION CHECK

INT 66 C5-- - PenDOS - VLOAD - API

INT 66 FFFB - MicroHelp Stay-Res Plus - ???

INT 66 FFFE - MicroHelp Stay-Res/Stay-Res Plus - UNINSTALL

INT 66 FFFF - MicroHelp Stay-Res Plus - FIND PROGRAM NAME

Interrupts


INT 67 - reserved for user interrupt; LIM EMS; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 67 - reserved for user interrupt; LIM EMS; multiple purposes

INT 67 ---- - Adaptec controllers - DRIVE 1 DATA

INT 67 ---- - TI Professional PC - SYSTEM DATA (NOT A VECTOR!)

INT 67 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

INT 67 ---- - Sangoma CCPOP 3270 resident module

INT 67 ---- - CUCKOO.COM - INSTALLATION CHECK

INT 67 00-- - PC-NET, Alloy NTNX - LOCK SEMAPHORE AND WAIT

INT 67 01-- - PC-NET, Alloy NTNX - LOCK SEMAPHORE

INT 67 02-- - PC-NET, Alloy NTNX - UNLOCK SEMAPHORE

INT 67 1E-- - Qualitas 386MAX v7.00 - MEMLIMIT - INSTALLATION CHECK

INT 67 1F-- - Qualitas 386MAX v7.00 - MEMLIMIT - API

INT 67 3F-- - QEMM-386 v4.23+ - INSTALLATION CHECK

INT 67 40-- - LIM EMS - GET MANAGER STATUS

INT 67 41-- - LIM EMS - GET PAGE FRAME SEGMENT

INT 67 42-- - LIM EMS - GET NUMBER OF PAGES

INT 67 43-- - LIM EMS - GET HANDLE AND ALLOCATE MEMORY

INT 67 44-- - LIM EMS - MAP MEMORY

INT 67 45-- - LIM EMS - RELEASE HANDLE AND MEMORY

INT 67 46-- - LIM EMS - GET EMM VERSION

INT 67 47-- - LIM EMS - SAVE MAPPING CONTEXT

INT 67 48-- - LIM EMS - RESTORE MAPPING CONTEXT

INT 67 49-- - LIM EMS - reserved - GET I/O PORT ADDRESSES

INT 67 4A-- - LIM EMS - reserved - GET TRANSLATION ARRAY

INT 67 4B-- - LIM EMS - GET NUMBER OF EMM HANDLES

INT 67 4C-- - LIM EMS - GET PAGES OWNED BY HANDLE

INT 67 4D-- - LIM EMS - GET PAGES FOR ALL HANDLES

INT 67 4E-- - LIM EMS - GET OR SET PAGE MAP

INT 67 4F-- - LIM EMS 4.0 - GET/SET PARTIAL PAGE MAP

INT 67 50-- - LIM EMS 4.0 - MAP/UNMAP MULTIPLE HANDLE PAGES

INT 67 51-- - LIM EMS 4.0 - REALLOCATE PAGES

INT 67 52-- - LIM EMS 4.0 - GET/SET HANDLE ATTRIBUTES

INT 67 53-- - LIM EMS 4.0 - GET/SET HANDLE NAME

INT 67 54-- - LIM EMS 4.0 - GET HANDLE DIRECTORY

INT 67 55-- - LIM EMS 4.0 - ALTER PAGE MAP AND JUMP

INT 67 56-- - LIM EMS 4.0 - ALTER PAGE MAP AND CALL

INT 67 56FF - RM386 v6.00 - ???

INT 67 57-- - LIM EMS 4.0 - MOVE/EXCHANGE MEMORY REGION

INT 67 58-- - LIM EMS 4.0 - GET MAPPABLE PHYSICAL ADDRESS ARRAY

INT 67 5857 - NETROOM??? - ???

INT 67 59-- - LIM EMS 4.0 - GET EXPANDED MEMORY HARDWARE INFORMATION

INT 67 5A-- - LIM EMS 4.0 - ALLOCATE STANDARD/RAW PAGES

INT 67 5B-- - LIM EMS 4.0 - ALTERNATE MAP REGISTER SET

INT 67 5B-- - LIM EMS 4.0 - ALTERNATE MAP REGISTER SET - DMA REGISTERS

INT 67 5BE0 - MICEMM v4D, RM386 - GET LINEAR ADDRESS OF MEMORY

INT 67 5BE1 - RM386 v6.00+ - GET MEMORY MANAGER SIZE

INT 67 5BE2 - RM386 v6.00+ - GET INTERRUPT VECTORS

INT 67 5BF0 - MICEMM v4D, RM386 - INSTALLATION CHECK

INT 67 5BF1 - MICEMM v4D, RM386 - GET ADDRESS MAP

INT 67 5BF2 - RM386 - GET RM386 INTERNAL DATA

INT 67 5BF3 - RM386 - RETURN TO REAL MODE

INT 67 5BF4 - RM386 v6.00 - GET RM386 GLOBAL FLAGS

INT 67 5BF5 - RM386 v6.00 - GET RM386 EMS HANDLE COUNT

INT 67 5C-- - LIM EMS 4.0 - PREPARE EXPANDED MEMORY HARDWARE FOR WARM BOOT

INT 67 5D-- - LIM EMS 4.0 - ENABLE/DISABLE OS FUNCTION SET FUNCTIONS

INT 67 5D03 - Nanosoft MD386 - INTERNAL INITIALIZATION

INT 67 5D04 - Nanosoft MD386 - GET ALTERNATE MAP STRUCTURE

INT 67 5D05 - Nanosoft MD386 - GET INTERNAL HANDLE TABLE

INT 67 5DE0 - RM386 - DISABLE RM386

INT 67 5DE1 - RM386 - ENABLE RM386

INT 67 5DE2 - RM386 - GET PAGE TABLE

INT 67 5DE3 - RM386 - SET PAGE TABLE

INT 67 5DE4 - RM386 - SET WRITE-PROTECTION FOR PAGE IN FIRST MEGABYTE

INT 67 5DE5 - RM386 - MAP PHYSICAL PAGE TO PHYSICAL SEGMENT

INT 67 5DE6 - RM386 - MAP LOGICAL 4K PAGE TO PHYSICAL SEGMENT

INT 67 5DE7 - RM386 - SET PAGE TABLE BITS FOR RANGE OF PAGES

INT 67 5DE8 - RM386 - GET PARTIAL PAGE TABLE

INT 67 5DE9 - RM386 - SET PARTIAL PAGE TABLE

INT 67 5DEA - RM386 - V86-MODE I/O PORT TRAPPING CONTROL

INT 67 5DEB - RM386 - V86-MODE I/O TRAPPING PORT CONTROL

INT 67 5DFD - RM386 v6.00 - ???

INT 67 5DFE - RM386 v6.00 - ???

INT 67 5DFF - RM386 v6.00 - ???

INT 67 5E00 - Nanosoft MD386 - SET HARDWARE BREAKPOINT

INT 67 5E01 - Nanosoft MD386 - GET HARDWARE DEBUG REGISTER

INT 67 5E02 - Nanosoft MD386 - SET DEBUG EXCEPTION HANDLER

INT 67 5E03 - Nanosoft MD386 - ENABLE/DISABLE MEMORY WRITE PROTECTION

INT 67 5E04 - Nanosoft MD386 - GET DEBUG EXCEPTION

INT 67 5E05 - Nanosoft MD386 - IGNORE NEXT DEBUG EXCEPTION

INT 67 60-- - EEMS - GET PHYSICAL WINDOW ARRAY

INT 67 61-- - EEMS - GENERIC ACCELERATOR CARD SUPPORT

INT 67 68-- - EEMS - GET ADDRESSES OF ALL PAGE FRAMES IN SYSTEM

INT 67 69-- - EEMS - MAP PAGE INTO FRAME

INT 67 6A-- - EEMS - PAGE MAPPING

INT 67 6B-- - DESQview 2.42-2.53 - BUG

INT 67 DD-- - Quadtel QMAPS - API

INT 67 DE00 - Virtual Control Program Interface - INSTALLATION CHECK

INT 67 DE01 - Virtual Control Program Interface - GET PROTECTED MODE INTERFACE

INT 67 DE02 - Virtual Control Program Interface - GET MAX PHYSICAL MEMORY ADDRESS

INT 67 DE03 - Virtual Control Program Interface - GET NUMBER OF FREE 4K PAGES

INT 67 DE04 - Virtual Control Program Interface - ALLOCATE A 4K PAGE

INT 67 DE05 - Virtual Control Program Interface - FREE 4K PAGE

INT 67 DE06 - Virtual Control Program Interface - GET PHYS ADDR OF PAGE IN FIRST MB

INT 67 DE07 - Virtual Control Program Interface - READ CR0

INT 67 DE08 - Virtual Control Program Interface - READ DEBUG REGISTERS

INT 67 DE09 - Virtual Control Program Interface - SET DEBUG REGISTERS

INT 67 DE0A - Virtual Control Program Interface - GET 8259 INTERRUPT VECTOR MAPPINGS

INT 67 DE0B - Virtual Control Program Interface - SET 8259 INTERRUPT VECTOR MAPPINGS

INT 67 DE0C - Virtual Control Program Interface - SWITCH TO PROTECTED MODE

INT 67 DE0F - Netroom3 - ???

INT 67 EF-- - RM386 v6.00+ - EXECUTE XMS FUNCTION

INT 67 FFA5 - Microsoft EMM386.EXE v4.20+ - INSTALLATION CHECK

INT 67 FFA5 - Compaq CEMM v5.10+ - PRIVATE API

Interrupts


INT 68 - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 68 - multiple purposes

INT 68 ---- - Sangoma CCPOP 3270 resident module

INT 68 ---- - Novell NetWare LU6.2

INT 68 ---- - HP Vectra AT - IRQ16 - 8041 SERVICE REQUEST

INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DISPLAY

INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ATTACH PHYSICAL UNIT

INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ATTACH LOGICAL UNIT

INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DETACH LOGICAL UNIT

INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DETACH PHYSICAL UNIT

INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ACTIVATE DLC

INT 68 02-- - APPC/PC - CONNECTION CONTROL - ALLOCATE

INT 68 02-- - APPC/PC - CONNECTION CONTROL - CONFIRM

INT 68 02-- - APPC/PC - CONNECTION CONTROL - CONFIRMED

INT 68 02-- - APPC/PC - CONNECTION CONTROL - DEALLOCATE

INT 68 02-- - APPC/PC - CONNECTION CONTROL - FLUSH

INT 68 02-- - APPC/PC - CONNECTION CONTROL - GET ATTRIBUTES

INT 68 02-- - APPC/PC - CONNECTION CONTROL - GET CONVERSATION TYPE

INT 68 02-- - APPC/PC - CONNECTION CONTROL - POST ON RECEIPT

INT 68 02-- - APPC/PC - CONNECTION CONTROL - PREPARE TO RECEIVE

INT 68 02-- - APPC/PC - CONNECTION CONTROL - RECEIVE AND WAIT

INT 68 02-- - APPC/PC - CONNECTION CONTROL - RECEIVE IMMEDIATE

INT 68 02-- - APPC/PC - CONNECTION CONTROL - REQUEST TO SEND

INT 68 02-- - APPC/PC - CONNECTION CONTROL - SEND DATA

INT 68 02-- - APPC/PC - CONNECTION CONTROL - SEND ERROR

INT 68 02-- - APPC/PC - CONNECTION CONTROL - TEST

INT 68 02-- - APPC/PC - CONNECTION CONTROL - WAIT

INT 68 03-- - APPC/PC - TP STARTED

INT 68 03-- - APPC/PC - GET ALLOCATE

INT 68 03-- - APPC/PC - CHANGE LOGICAL UNIT

INT 68 04-- - APPC/PC - TRANSACTION PROCESSING

INT 68 05-- - APPC/PC - TRANSFER MESSAGE DATA

INT 68 06-- - APPC/PC - CHANGE NUMBER OF SESSIONS

INT 68 07-- - APPC/PC - PASSTHROUGH

INT 68 4300 - ??? - INSTALLATION CHECK???

INT 68 4400 - ???

INT 68 47-- - MS Windows debugging kernel - OUTPUT STRING

INT 68 FA-- - APPC/PC - ENABLE/DISABLE APPC

INT 68 FB-- - APPC/PC - CONVERT

INT 68 FC-- - APPC/PC - ENABLE/DISABLE MESSAGE TRACING

INT 68 FD-- - APPC/PC - ENABLE/DISABLE API VERB TRACING

INT 68 FE-- - APPC/PC - SET TRACE DESTINATION

INT 68 FF-- - APPC/PC - SET PASSTHROUGH

Interrupts


INT 69 - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 69 - multiple purposes

INT 69 ---- - Zenith AT BIOS - ???

INT 69 ---- - HP Vectra AT - IRQ17 - KEYBOARD OUTPUT-BUFFER-FULL SERVICE ROUTINE

INT 69 0100 - DECnet DOS CTERM - INSTALLATION CHECK

INT 69 0101 - DECnet DOS CTERM - SEND BYTE

INT 69 0102 - DECnet DOS CTERM - READ BYTE

INT 69 0103 - DECnet DOS CTERM - STATUS

INT 69 0104 - DECnet DOS CTERM - DECnet STATUS

INT 69 0105 - DECnet DOS CTERM - OPEN SESSION

INT 69 0106 - DECnet DOS CTERM - CLOSE SESSION

INT 69 010A - DECnet DOS CTERM - GET SESSION CONTROL BLOCK SIZE

INT 69 010B - DECnet DOS CTERM - GET DECnet SOCKET

INT 69 010F - DECnet DOS CTERM - DEINSTALL CTERM

INT 69 0A-- - DECnet DOS 2.1+ - DATA LINK LAYER

INT 69 4001 - 10NET v5.0 - SYSSVC.COM - ???

INT 69 4002 - 10NET v5.0 - SYSSVC.COM - ???

INT 69 4101 - 10NET v5.0 - SYSSVC.COM - ???

INT 69 4102 - 10NET v5.0 - SYSSVC.COM - ???

INT 69 4103 - 10NET v5.0 - SYSSVC.COM - ???

INT 69 4104 - 10NET v5.0 - SYSSVC.COM - ???

INT 69 42-- - 10NET v5.0 - SYSSVC.COM - ???

INT 69 43-- - 10NET v5.0 - SYSSVC.COM - ???

INT 69 44-- - 10NET v5.0 - SYSSVC.COM - ???

INT 69 49-- - 10NET v5.0 - SYSSVC.COM - BUG

INT 69 6996 - ISR.COM v1.00 - SPECIFY INTERRUPT HANDLER

INT 69 FF-- - 10NET v5.0 - SYSSVC.COM - SIGNAL SYSTEM ERROR

Interrupts


INT 6A - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 6A - multiple purposes

INT 6A ---- - OPTHELP.COM

INT 6A ---- - DECnet DOS - LOCAL AREA TRANSPORT PROGRAM

INT 6A ---- - HP Vectra AT - IRQ18 - RESERVED HARDWARE INTERRUPT

INT 6A 0000 - Super-TCP DOS TSR Kernel v3.57 - INSTALLATION CHECK

INT 6A 0001 - Super-TCP DOS TSR Kernel v3.57 - ???

INT 6A 0002 - Super-TCP DOS TSR Kernel v3.57 - ???

INT 6A 0003 - Super-TCP DOS TSR Kernel v3.57 - GET ??? DATA AREA

INT 6A 0004 - Super-TCP DOS TSR Kernel v3.57 - ALLOCATE ???

INT 6A 0005 - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ???

INT 6A 000F - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ALL ???

INT 6A 0010 - Super-TCP DOS TSR Kernel v3.57 - UNINSTALL

INT 6A 01-- - DECnet DOS LOCAL AREA TRANSPORT - SEND BYTE

INT 6A 02-- - DECnet DOS LOCAL AREA TRANSPORT - READ BYTE

INT 6A 03-- - DECnet DOS LOCAL AREA TRANSPORT - STATUS

INT 6A D0-- - DECnet DOS LOCAL AREA TRANSPORT - OPEN SESSION

INT 6A D000 - DECnet DOS LOCAL AREA TRANSPORT - CLOSE SESSION

INT 6A D100 - DECnet DOS LOCAL AREA TRANSPORT - SEND BREAK

INT 6A D300 - DECnet DOS LOCAL AREA TRANSPORT - RESET LAT COUNTERS

INT 6A D400 - DECnet DOS LOCAL AREA TRANSPORT - COPY LAT COUNTERS

INT 6A D500 - DECnet DOS LOCAL AREA TRANSPORT - GET NEXT LAT SERVICE NAME

INT 6A D600 - DECnet DOS LOCAL AREA TRANSPORT - LAT SERVICE TABLE RESET

Interrupts


INT 6B - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 6B - multiple purposes

INT 6B ---- - DECnet DOS - PORT DRIVER

INT 6B ---- - VIRUS - "Saddam" - ORIGINAL INT 21h VECTOR

INT 6B ---- - HP Vectra AT - IRQ19 - RESERVED HARDWARE INTERRUPT

INT 6B 0000 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED WRITE

INT 6B 0100 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED READ

INT 6B 02-- - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - INSTALL CHECK

INT 6B 0600 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - CONTROL

INT 6B 0700 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - GET STATUS

INT 6B 08-- - TelAPI - CHECK FOR BREAK SIGNAL

INT 6B 10-- - NPC NCSI EXTENDED SERIAL I/O - GET STATUS

INT 6B 11-- - NPC NCSI EXTENDED SERIAL I/O - ALLOCATE A VIRTUAL CIRCUIT

INT 6B 12-- - NPC NCSI EXTENDED SERIAL I/O - VIRTUAL CIRCUIT STATUS

INT 6B 13-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE REQUEST/REPLY SERVICE NAME

INT 6B 14-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE SERVICE ADDRESS

INT 6B 15-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE VIRTUAL CIRCUIT CONFIG

INT 6B 16-- - NPC NCSI EXTENDED SERIAL I/O - LOG AND/OR INITIALIZE VIRTUAL CIRCUIT

INT 6B 17-- - NPC NCSI EXTENDED SERIAL I/O - DISCONNECT A VIRTUAL CIRCUIT

INT 6B 18-- - NPC NCSI EXTENDED SERIAL I/O - WRITE DATA ON A VIRTUAL CIRCUIT

INT 6B 19-- - NPC NCSI EXTENDED SERIAL I/O - READ DATA ON A VIRTUAL CIRCUIT

INT 6B 1A-- - NPC NCSI EXTENDED SERIAL I/O - RECEIVE STATUS

INT 6B 1B-- - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT STATUS

INT 6B 1C-- - NPC NCSI EXTENDED SERIAL I/O - CLEAR RECEIVE BUFFER

INT 6B 1D-- - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT BUFFER CONTROL

INT 6B 1E-- - NPC NCSI EXTENDED SERIAL I/O - ISSUE CONTROL REQUEST

INT 6B 1F-- - NPC NCSI EXTENDED SERIAL I/O - EXTERNAL STATUS

INT 6B 20-- - Connection Manager CLIENT.EXE - ???

INT 6B 21-- - NPC NCSI EXTENDED SERIAL I/O - QUERY NAME SERVICE

INT 6B 6B-- - Tandy SCHOOLMATE PLUS - API

Interrupts


INT 6C - CONVERTIBLE; DOS 3.2; DECnet DOS network scheduler
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 6C - CONVERTIBLE; DOS 3.2; DECnet DOS network scheduler

INT 6C ---- - system resume vector (CONVERTIBLE)

INT 6C ---- - DOS 3.2 Realtime Clock update

INT 6C ---- - DECnet DOS network scheduler

INT 6C ---- - HP Vectra AT - IRQ20 - HP-HIL CONTROLLER INTERRUPT

Interrupts


INT 6D - VGA - internal
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 6D - VGA - internal

INT 6D ---- - VIDEO - many VGA - VIDEO BIOS ENTRY POINT

INT 6D ---- - Trident SVGA - VIDEO BIOS HANDLER

INT 6D ---- - DECnet DOS (before 2.1) - DATA LINK LAYER PROGRAM

INT 6D ---- - HP Vectra AT - IRQ21 - RESERVED HARDWARE INTERRUPT

Interrupts


INT 6E - DECnet DOS - DECnet NETWORK PROCESS API
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 6E - DECnet DOS - DECnet NETWORK PROCESS API

INT 6E ---- - DECnet DOS - DECnet NETWORK PROCESS API

INT 6E ---- - HP Vectra AT - IRQ22 - RESERVED HARDWARE INTERRUPT

Interrupts


INT 6F - Novell NetWare; 10NET; MS Windows 3.0
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 6F - Novell NetWare; 10NET; MS Windows 3.0

INT 6F ---- - Novell NetWare - PCOX API (3270 PC terminal interface)

INT 6F 00-- - 10NET - LOGIN

INT 6F 00-- - HP Vectra EX-BIOS - "F_ISR" (internal) - RESPOND TO LOGICAL ISR

INT 6F 01-- - 10NET - LOGOFF

INT 6F 02-- - 10NET - STATUS OF NODE

INT 6F 0200 - HP Vectra EX-BIOS - "F_SYSTEM SF_INIT" - START INITIALIZING DRIVER

INT 6F 0202 - HP Vectra EX-BIOS - "F_SYSTEM SF_START" - COMPLETE DRIVER INITIALIZ.

INT 6F 0204 - MS Windows 3.0 - DOS APPLICATION SWITCH HOOK

INT 6F 0204 - HP Vectra EX-BIOS - "F_SYSTEM SF_REPORT_STATE" - GET DRIVER STATE

INT 6F 0206 - HP Vectra EX-BIOS - "F_SYSTEM SF_VERSION_DESC" - GET DRIVER VERSION

INT 6F 0208 - HP Vectra EX-BIOS - "F_SYSTEM SF_DEF_ATTR" - RESET TO DEFAULT ATTR

INT 6F 020A - HP Vectra EX-BIOS - "F_SYSTEM SF_GET_ATTR" - GET CURRENT ATTRIBUTES

INT 6F 020C - HP Vectra EX-BIOS - "F_SYSTEM SF_SET_ATTR" - SET DEVICE ATTRIBUTES

INT 6F 020E - HP Vectra EX-BIOS - "F_SYSTEM SF_OPEN" - RESERVE DRIVER FOR ACCESS

INT 6F 0210 - HP Vectra EX-BIOS - "F_SYSTEM SF_CLOSE" - RELEASE DRIVER

INT 6F 0212 - HP Vectra EX-BIOS - "F_SYSTEM SF_TIMEOUT" - REPORT REQUESTED TIMEOUT

INT 6F 0214 - HP Vectra EX-BIOS - "F_SYSTEM SF_INTERVAL" - 60 HZ INTERVAL EXPIRED

INT 6F 0216 - HP Vectra EX-BIOS - "F_SYSTEM SF_TEST" - PERFORM HARDWARE TEST

INT 6F 03-- - 10NET - GET ADDRESS OF CONFIGURATION TABLE

INT 6F 04-- - 10NET - SEND

INT 6F 04-- - HP Vectra EX-BIOS - "F_INS_BASEHPVT" - GET HP_VECTOR_TABLE ADDRESS

INT 6F 04-- - HP Vectra EX-BIOS - "F_TRACK_INIT" - RESET TRACKING DRIVER TO DEFAULTS

INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_LOCK" - RESERVE SUB-ADDRESSES

INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_SVC" - UNMASK 8041 SVC INT

INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DEF_LINKS" - SET DEFAULT PARENTS

INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_ID_HP" - INSTALLATION CHECK

INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - INIT INT 33 HANDLER

INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_UNLOCK" - RELEASE SUB-ADDRESSES

INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_SVC" - MASK 8041 SVC INT

INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_GET_LINKS" - GET DRIVER LINK FIELDS

INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_INFO" - GET DISPLAY INFO

INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - FORCE INT 33 INIT

INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_ON" - GRAPHICS CURSOR ON

INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_KBD" - UNMASK 8041 OBF INT

INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_LINKS" - SET DRIVER LINK FIELDS

INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_INFO" - SET EXT-CTRL INFO

INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_OFF" - GRAPHICS CURSOR OFF

INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_KBD" - MASK 8041 OBF INT

INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_MOD_INFO" - SET EXT-CTRL REG

INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_RECONFIGURE" - RECONFIG LINK

INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_EVENT" - SET EVENT HANDLER

INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_HPHIL" - UNMASK HP-HIL INT

INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_RES" - GET VIDMODE RESOLUTN

INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_PROMPTS" - WRITE PROMPT

INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_ON" - ENABLE EVENT HANDLER

INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_HPHIL" - MASK HP-HIL INT

INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_MODE" - SET VIDEO MODE

INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_INTR" - CREATE INTERVAL ENTRY

INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_ACK" - ACKNOWLEDGE DEVICE

INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_OFF" - DISABLE EVENT HANDLER

INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_DELET_INTR" - DELETE INTERVAL ENTRY

INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPEAT" - SET KEY REPEAT RATE

INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_ON" - ENABLE CLIPPING

INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABL_INTR" - START INTERRUPT SRVICE

INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_DISABLE_REPEAT" - KEY REPT OFF

INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_OFF" - DISABLE CLIPPING

INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISBL_INTR" - END INTERRUPT SERVICE

INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_SELF_TEST" - PERFORM SELFTEST

INT 6F 0412 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_RAMSW" - SET RAM SWITCH IN 8041

INT 6F 0412 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_STATUS" - GET DEVSTATUS

INT 6F 0414 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_RAMSW" - CLEAR 8041 RAM SWITCH

INT 6F 0414 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_NAME" - GET DEV NAME

INT 6F 0416 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_CRTSW" - SET CRT TO MULTIMODE

INT 6F 0416 - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_REPEAT" - SET TYPEMATIC

INT 6F 0418 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_CRTSW" - SET CRT TO MONOCHROME

INT 6F 0418 - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_LED" - SET KEYBOARD LEDS

INT 6F 041A - HP Vectra EX-BIOS - "F_IO_CTRL SF_PASS_THRU" - SEND DATA BYTE TO 8041

INT 6F 05-- - 10NET - RECEIVE

INT 6F 06-- - HP Vectra EX-BIOS - "F_PUT_BYTE" - WRITE A BYTE OF DATA TO DEVICE

INT 6F 06-- - HP Vectra EX-BIOS - "F_SAMPLE" - POLL CURRENT ABSOLUTE POSITION

INT 6F 06-- - HP Vectra EX-BIOS - "F_INS_XCHGFIX" - EXCH VALUES WITH FIXED VECTOR

INT 6F 06-- - HP Vectra EX-BIOS - "F_INQUIRE" - GET DRIVER PHYSICAL DESCRIBE RECORD

INT 6F 06-- - HP Vectra EX-BIOS - "F_TRACK_ON" - ENABLE CURSOR TRACKING

INT 6F 07-- - 10NET - LOCK HANDLE

INT 6F 08-- - 10NET - UNLOCK HANDLE

INT 6F 08-- - HP Vectra EX-BIOS - "F_GET_BYTE" - READ A BYTE OF DATA FROM DEVICE

INT 6F 08-- - HP Vectra EX-BIOS - "F_INS_XCHGRSVD" - EXCH VALUES WITH RESRVED VECTOR

INT 6F 08-- - HP Vectra EX-BIOS - "F_INQUIRE_ALL" - GET DRIVER STATUS TABLE

INT 6F 08-- - HP Vectra EX-BIOS - "F_TRACK_OFF" - DISABLE CURSOR TRACKING

INT 6F 09-- - 10NET - SUBMIT

INT 6F 0A-- - 10NET - CHAT

INT 6F 0A-- - HP Vectra EX-BIOS - "F_PUT_BUFFER" - WRITE A BUFFER TO DEVICE

INT 6F 0A-- - HP Vectra EX-BIOS - "F_PUT_BLOCK" - WRITE BLOCKS TO DEVICE

INT 6F 0A-- - HP Vectra EX-BIOS - "F_INS_XCHGFREE" - EXCH VALUES WITH FREE VECTOR

INT 6F 0A-- - HP Vectra EX-BIOS - "F_INQUIRE_FIRST" - GET PHYSICAL DRIVER VECTOR

INT 6F 0A-- - HP Vectra EX-BIOS - "F_DEF_MASKS" - DEFINE GRAPHICS CURSOR MASKS

INT 6F 0B-- - 10NET - LOCK SEMAPHORE, RETURN IMMEDIATELY

INT 6F 0C-- - 10NET - UNLOCK SEMAPHORE

INT 6F 0C-- - HP Vectra EX-BIOS - "F_GET_BUFFER" - READ A BUFFER OF DATA FROM DEVICE

INT 6F 0C-- - HP Vectra EX-BIOS - "F_GET_BLOCK" - READ BLOCKS OF DATA FROM DEVICE

INT 6F 0C-- - HP Vectra EX-BIOS - "F_INS_FIXOWNDS" - INSTALL VALUES IN FIXED VECTOR

INT 6F 0C-- - HP Vectra EX-BIOS - "F_INQUIRE_ENTRY" - GET GID DRIVER ENTRY POINT

INT 6F 0C-- - HP Vectra EX-BIOS - "F_SET_LIMITS_X" - SET HORIZONTAL TRACKING LIMITS

INT 6F 0D-- - 10NET - "WHO" - ENUMERATE USERS ON NETWORK

INT 6F 0E-- - 10NET - SPOOL/PRINT

INT 6F 0E-- - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE WORD OF DATA TO DEVICE

INT 6F 0E-- - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE A WORD OF DATA

INT 6F 0E-- - HP Vectra EX-BIOS - "F_INS_FIXGETDS" - INSTALL VALUES IN FIXED VECTOR

INT 6F 0E-- - HP Vectra EX-BIOS - "F_SET_LIMITS_Y" - SET VERTICAL TRACKING LIMITS

INT 6F 0F-- - 10NET v5.0 - "RM LOCK" - ???

INT 6F 10-- - 10NET - ATTACH/DETACH PRINTER

INT 6F 0E-- - HP Vectra EX-BIOS - "F_GET_WORD" - READ WORD OF DATA FROM DEVICE

INT 6F 10-- - HP Vectra EX-BIOS - "F_INS_FIXGLBDS" - INSTALL VALUES IN FIXED VECTOR

INT 6F 10-- - HP Vectra EX-BIOS - "F_PUT_SPRITE" - DISPLAY GRAPHICS CURSOR SPRITE

INT 6F 11-- - 10NET - LOCK FCB

INT 6F 12-- - 10NET - UNLOCK FCB

INT 6F 12-- - HP Vectra EX-BIOS - "F_INS_FREEOWNDS" - INSTALL VALUES IN FREE VECTOR

INT 6F 12-- - HP Vectra EX-BIOS - "F_REMOVE_SPRITE" - REMOVE GRAPHICS CURSOR SPRITE

INT 6F 13-- - 10NET v3.3+ - GET REMOTE CONFIGURATION TABLE ADDRESS

INT 6F 14-- - 10NET v3.3+ - GET REMOTE MEMORY

INT 6F 14-- - HP Vectra EX-BIOS - "F_INS_FREEGETDS" - INSTALL VALUES IN FREE VECTOR

INT 6F 1501 - 10NET v3.3+ - GET SHARED DEVICE ENTRY

INT 6F 1502 - 10NET v3.3+ - SET SHARED DEVICE ENTRY

INT 6F 1503 - 10NET v3.3+ - DELETE SHARED DEVICE ENTRY

INT 6F 16-- - 10NET v5.0 - "GL WHO" - ???

INT 6F 16-- - HP Vectra EX-BIOS - "F_INS_FREEGLBDS" - INSTALL VALUES IN FREE VECTOR

INT 6F 17-- - 10NET v3.3+ - MOUNT

INT 6F 18-- - 10NET v3.3+ - UNMOUNT

INT 6F 18-- - HP Vectra EX-BIOS - "F_INS_FIND" - FIND DRIVER BY ATTRIBUTES

INT 6F 19-- - 10NET v5.0 - AUDIT

INT 6F 1A-- - 10NET v5.0 - "BULL" - ???

INT 6F 1B-- - 10NET v5.0 - "GMOUNT" - ???

INT 6F 1C-- - 10NET v5.0 - "GLOGIN" - GET LOGIN LIST

INT 6F 1D-- - 10NET v5.0 - "TABDATA" - ???

INT 6F 1E-- - 10NET v5.0 - "SCHED" - ???

INT 6F 1E-- - HP Vectra EX-BIOS - "F_RAM_GET" - GET EX-BIOS FREE RAM AREA

INT 6F 1F-- - 10NET v5.0 - "WHOAMI" - ???

INT 6F 20-- - 10NET v5.0 - ???

INT 6F 20-- - HP Vectra EX-BIOS - "F_RAM_RET" - RESERVE EX-BIOS MEMORY

INT 6F 21-- - 10NET v5.0 - ???

INT 6F 22-- - 10NET v5.0 - ???

INT 6F 22-- - HP Vectra EX-BIOS - "F_CMOS_GET" - READ CMOS MEMORY

INT 6F 24-- - HP Vectra EX-BIOS - "F_CMOS_RET" - WRITE CMOS MEMORY

INT 6F 2A-- - HP Vectra EX-BIOS - "F_YIELD" - GIVE UP CPU TO OTHER TASKS

INT 6F 30-- - HP Vectra EX-BIOS - "F_SND_CLICK_ENABLE" - TURN ON KEYCLICKS

INT 6F 32-- - HP Vectra EX-BIOS - "F_SND_CLICK_DISABLE" - TURN OFF KEYCLICKS

INT 6F 34-- - HP Vectra EX-BIOS - "F_SND_CLICK" - GENERATE KEYCLICK

INT 6F 36-- - HP Vectra EX-BIOS - "F_SND_BEEP_ENABLE" - ENABLE BEEPS

INT 6F 38-- - HP Vectra EX-BIOS - "F_SND_BEEP_DISABLE" - DISABLE BEEPS

INT 6F 3A-- - HP Vectra EX-BIOS - "F_SND_BEEP" - SOUND BEEP WITH CURRENT VALUES

INT 6F 3C-- - HP Vectra EX-BIOS - "F_SND_SET_BEEP" - SET BEEP FREQUENCY AND DURATION

INT 6F 3E-- - HP Vectra EX-BIOS - "F_SND_TONE" - SOUND TONE WITH FREQ AND DURATION

INT 6F 40-- - HP Vectra EX-BIOS - "F_STR_GET_FREE_INDEX" - FIND FREE STRING INDEX

INT 6F 42-- - HP Vectra EX-BIOS - "F_STR_DEL_BUCKET" - DEL HEADER FROM BUCKET LIST

INT 6F 44-- - HP Vectra EX-BIOS - "F_STR_PUT_BUCKET" - ADD HEADER TO BUCKET HDR LIST

INT 6F 46-- - HP Vectra EX-BIOS - "F_STR_GET_STRING" - FIND STRING IN BUCKET LIST

INT 6F 48-- - HP Vectra EX-BIOS - "F_STR_GET_INDEX" - GET INDEX FOR STRING

INT 6F 80-- - 10NET v5.0 - LOGIN

INT 6F 81-- - 10NET v5.0 - LOGOUT

INT 6F 8A-- - 10NET v5.0 - CHAT

INT 6F 8D-- - 10NET v5.0 - "WHO" - ENUMERATE USERS ON NETWORK

INT 6F 9501 - 10NET v5.0 - GET SHARED DEVICE ENTRY

INT 6F 9502 - 10NET v5.0 - SET SHARED DEVICE ENTRY

INT 6F 9503 - 10NET v5.0 - DELETE SHARED DEVICE

INT 6F 9504 - 10NET v5.0 - ENUMERATE USERS OF SHARED DEVICE

INT 6F 99-- - 10NET v5.0 - AUDIT

INT 6F 9C-- - 10NET v5.0 - GET LOGIN LIST

Interrupts


INT 70 - IRQ8 - CMOS REAL-TIME CLOCK
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 70 - IRQ8 - CMOS REAL-TIME CLOCK

INT 70 ---- - IRQ8 - CMOS REAL-TIME CLOCK

INT 70 ---- - VIRUS - "Stupid" - ORIGINAL INT 21h VECTOR

Interrupts


INT 71 - IRQ9 - REDIRECTED TO INT 0A BY BIOS
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 71 - IRQ9 - REDIRECTED TO INT 0A BY BIOS

INT 71 ---- - IRQ9 - REDIRECTED TO INT 0A BY BIOS

Interrupts


INT 72 - IRQ10 - RESERVED
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 72 - IRQ10 - RESERVED

INT 72 ---- - IRQ10 - RESERVED

Interrupts


INT 73 - IRQ11 - RESERVED
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 73 - IRQ11 - RESERVED

INT 73 ---- - IRQ11 - RESERVED

Interrupts


INT 74 - IRQ12 - POINTING DEVICE (PS)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 74 - IRQ12 - POINTING DEVICE (PS)

INT 74 ---- - IRQ12 - POINTING DEVICE (PS)

Interrupts


INT 75 - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 75 - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)

INT 75 ---- - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)

Interrupts


INT 76 - IRQ14 - HARD DISK CONTROLLER (AT and later)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 76 - IRQ14 - HARD DISK CONTROLLER (AT and later)

INT 76 ---- - IRQ14 - HARD DISK CONTROLLER OPERATION COMPLETE (AT and later)

Interrupts


INT 77 - IRQ15 - RESERVED (AT,PS); POWER CONSERVATION (Compaq)
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 77 - IRQ15 - RESERVED (AT,PS); POWER CONSERVATION (Compaq)

INT 77 ---- - IRQ15 - RESERVED (AT,PS)

INT 77 ---- - IRQ15 - POWER CONSERVATION (Compaq SLT/286)

Interrupts


INT 78 - DOS extenders; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 78 - DOS extenders; multiple purposes

INT 78 ---- - UofSalford DBOS DOS extender - API

INT 78 ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ0

INT 78 ---- - AutoCAD Device Interface - PLOTTER - SEND COMMAND

INT 78 ---- - ADP-60 IDE controller - ORIGINAL INT 13

INT 78 ---- - ULTRAMID - API

INT 78 00-- - TARGA.DEV - CMC International SCSI device driver - SET I/O PORT

INT 78 --00 - HugeRealMode Server - ENABLE A20

INT 78 --01 - HugeRealMode Server - DISABLE A20

INT 78 --02 - HugeRealMode Server - QUERY A20 STATE

INT 78 --03 - HugeRealMode Server - ENABLE TWO-STAGE INTERRUPT MODEL

INT 78 --04 - HugeRealMode Server - DISABLE TWO-STAGE INTERRUPT MODEL

INT 78 --05 - HugeRealMode Server - GET SEGMENT ADDRESS OF SERVER-MANAGEMENT RANGE

INT 78 --06 - HugeRealMode Server - ALLOCATE MEMORY

INT 78 --07 - HugeRealMode Server - DEALLOCATE MEMORY

INT 78 --08 - HugeRealMode Server - MODIFY ALLOCATED MEMORY SIZE

INT 78 --09 - HugeRealMode Server - LOAD .XMF-FILE

INT 78 --0A - HugeRealMode Server - SET SEGMENT LIMITS

INT 78 --0B - HugeRealMode Server - TRANSFER MEMORY FROM DOS TO XMS

INT 78 --0C - HugeRealMode Server - TRANSFER MEMORY FROM XMS TO DOS

INT 78 00-- - HugeRealMode Driver - API

INT 78 01-- - TARGA.DEV - GET I/O PORT

INT 78 02-- - TARGA.DEV - SET DMA CHANNEL

INT 78 03-- - TARGA.DEV - GET DMA CHANNEL

INT 78 04-- - TARGA.DEV - SET SCSI DEVICE NUMBER

INT 78 05-- - TARGA.DEV - GET SCSI DEVICE NUMBER

INT 78 06-- - TARGA.DEV - SET/CLEAR EARLY RETURN MODE

INT 78 08-- - TARGA.DEV - INTERFACE BOARD SELF-TEST

INT 78 09-- - TARGA.DEV - RESET SCSI BUS

INT 78 10-- - TARGA.DEV - SEND SCSI COMMAND

INT 78 11-- - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (PROGRAMMED I/O)

INT 78 12-- - TARGA.DEV - SEND SCSI COMMAND AND DATA (PROGRAMMED I/O)

INT 78 13-- - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (DMA)

INT 78 14-- - TARGA.DEV - SEND SCSI COMMAND AND DATA (DMA)

INT 78 15-- - TARGA.DEV - FINISH DATA TRANSFER (DMA)

Interrupts


INT 79 - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 79 - multiple purposes

INT 79 ---- - AVATAR.SYS - FAST GET KEYSTROKE

INT 79 ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ1

INT 79 ---- - ADP-60 IDE adapter - ???

INT 79 ---- - DBOS DOS Extender

INT 79 0001 - AutoCAD Device Interface - DIGITIZER - INITIALIZE

INT 79 0002 - AutoCAD Device Interface - DIGITIZER - TERMINATE

INT 79 0003 - AutoCAD Device Interface - DIGITIZER - GET DIGITIZER STATUS

Interrupts


INT 7A - Novell NetWare; IBM 3270; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 7A - Novell NetWare; IBM 3270; multiple purposes

INT 7A ---- - Topware Network Operating System - ???

INT 7A ---- - X.PC Packet software interface

INT 7A ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ2

INT 7A ---- - PRINDIR - API (moved to INT 7C)

INT 7A ---- - Novell NetWare - LOW-LEVEL API - Notes

INT 7A ---- - Novell NetWare - IPX Driver - OPEN SOCKET

INT 7A ---- - Novell NetWare - IPX Driver - CLOSE SOCKET

INT 7A ---- - Novell NetWare - IPX Driver - GET LOCAL TARGET

INT 7A ---- - Novell NetWare - IPX Driver - SEND PACKET

INT 7A ---- - Novell NetWare - IPX Driver - LISTEN FOR PACKET

INT 7A ---- - Novell NetWare - IPX Driver - SCHEDULE IPX EVENT

INT 7A ---- - Novell NetWare - IPX Driver - CANCEL EVENT

INT 7A ---- - Novell NetWare - IPX Driver - SCHEDULE SPECIAL EVENT

INT 7A ---- - Novell NetWare - IPX Driver - GET INTERVAL MARKER

INT 7A ---- - Novell NetWare - IPX Driver - GET INTERNETWORK ADDRESS

INT 7A ---- - Novell NetWare - IPX Driver - RELINQUISH CONTROL

INT 7A ---- - Novell NetWare - IPX Driver - DISCONNECT FROM TARGET

INT 7A ---- - Novell NetWare - IPX Driver - internal - INITIALIZE NETWORK ADDRESS

INT 7A ---- - Novell NetWare - IPX Driver - internal - IPX GET PACKET SIZE

INT 7A ---- - Novell NetWare - IPX Driver - internal - TERMINATE SOCKETS

INT 7A ---- - Novell NetWare - IPX Driver - INTERNAL - SEND PACKET

INT 7A ---- - Novell NetWare - SPX Driver - INSTALLATION CHECK

INT 7A ---- - Novell NetWare - SPX Driver - ESTABLISH SPX CONNECTION

INT 7A ---- - Novell NetWare - SPX Driver - LISTEN FOR SPX CONNECTION

INT 7A ---- - Novell NetWare - SPX Driver - TERMINATE SPX CONNECTION

INT 7A ---- - Novell NetWare - SPX Driver - ABORT SPX CONNECTION

INT 7A ---- - Novell NetWare - SPX Driver - GET SPX CONNECTION STATUS

INT 7A ---- - Novell NetWare - SPX Driver - SEND SPX PACKET

INT 7A ---- - Novell NetWare - SPX Driver - LISTEN FOR SPX PACKET

INT 7A ---- - Novell NetWare - IPX Driver - internal - ADD DIAGNOSTIC ELEMENT

INT 7A ---- - Novell NetWare - IPX Driver - internal - CANCEL DIAGNOSTIC ELEMENT

INT 7A ---- - Novell NetWare - IPX Driver - internal - GET DRIVER PACKT SIZE LIMIT

INT 7A ---- - Novell NetWare - IPX Driver - INTERNAL

INT 7A ---- - Novell NetWare - NetWare Access Server - GET ???

INT 7A ---- - Novell NetWare - NetWare Access Server - GET ??? ECB AND SOCKET

INT 7A ---- - Novell NetWare - NetWare Access Server - GET ??? ECB

INT 7A ---- - Novell NetWare - IPXODI v2.12+ - GET IPX FLAGS

INT 7A ---- - Novell NetWare - IPXODI v2.12+ - SEND WITH CHECKSUM

INT 7A ---- - Novell NetWare - IPXODI v2.12+ - IPX GENERATE CHECKSUM

INT 7A ---- - Novell NetWare - IPXODI v2.12+ - IPX VERIFY CHECKSUM

INT 7A ---- - Novell NetWare - IPXODI v2.12+ - OPEN LOOK-AHEAD SOCKET

INT 7A ---- - Novell NetWare - IPXODI v2.20+ - SET INTERNETWORK ADDRESS

INT 7A 0001 - AutoCAD Device Interface - DISPLAY - INITIALIZE (INIT1)

INT 7A 0200 - AutoCAD Device Interface - RENDERING DEVICE - INITIALIZE (RDLINKUP)

INT 7A 04-- - IBM 3270 Workstation Program API - CREATE A QUEUE

INT 7A 06-- - IBM 3270 Workstation Program API - DELETE A QUEUE

INT 7A 07D0 - AutoCAD Device Interface - Compaq VGADI41.EXE - GET ENTRY POINT

INT 7A 09-- - IBM 3270 Workstation Program API - SESSION SERVICES

INT 7A 09-- - IBM 3270 Workstation Program API - KEYBOARD SERVICES

INT 7A 09-- - IBM 3270 Workstation Program API - WINDOW SERVICES

INT 7A 09-- - IBM 3270 Workstation Program API - PRESENTATION SPACE SERVICES

INT 7A 09-- - IBM 3270 Workstation Program API - 3270 EMULATION

INT 7A 09-- - IBM 3270 Workstation Program API - OPERATOR INFORMATION AREA

INT 7A 09-- - IBM 3270 Workstation Program API - TRANSLATE DATA

INT 7A 09-- - IBM 3270 Workstation Program API - COPY SERVICE

INT 7A 09-- - IBM 3270 Workstation Program API - Multi-DOS

INT 7A 09-- - IBM 3270 Workstation Program API - HOST SERVICES

INT 7A 13-- - IBM 3270 Workstation Program API - GET DATA FROM A QUEUE

INT 7A 7A-- - Canon IX-30F Image Scanner SI3.SYS - INTERFACE

INT 7A 81-- - IBM 3270 Workstation Program API - RESOLVE A GATE NAME

INT 7A 83-- - IBM 3270 Workstation Program API - GET COMPLETION RESULTS

INT 7A FDCB - IBM Personal Communications/3270 - INSTALLATION CHECK

INT 7A FE01 - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION

INT 7A FE02 - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION

INT 7A FF01 - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION

INT 7A FF02 - IBM PC3270 EMUL PROG v3 - INTERNAL API TERMINATION

INT 7A FF03 - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION

INT 7A FF04 - IBM PC3270 EMUL PROG v3 - INTERNAL ???

Interrupts


INT 7B - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 7B - multiple purposes

INT 7B ---- - Btrieve API (single user)

INT 7B ---- - Eicon Access API (3270/5250 gateways)

INT 7B ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ3

INT 7B ---- - AutoCAD Device Interface - PRINTER/PLOTTER - SEND PLOTTING DATA

INT 7B ---- - MCI Express v2.11+ - DRIVER.EXE - ???

INT 7B ---- - Novell XQL - XQL PRIMITIVES MANAGER API

INT 7B 8001 - AutoCAD Device Interface - PRINTER/PLOTTER - BEGIN PLOT

INT 7B 8002 - AutoCAD Device Interface - PRINTER/PLOTTER - END PLOT

INT 7B 8003 - AutoCAD Device Interface - PRINTER/PLOTTER - ABORT PLOT

Interrupts


INT 7C - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 7C - multiple purposes

INT 7C ---- - IBM REXX88PC command language

INT 7C ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ4

INT 7C ---- - PRINDIR v8.02+ - API

INT 7C ---- - AutoShade v2 - RENDERING HARDCOPY DRIVER

INT 7C ---- - SK-UPPS/SK-PASSPORT Data Link Interface (DLI) API

INT 7C 0000 - SK-UPPS Data Link Interface API - GET DRIVER VERSION

INT 7C 0001 - SK-UPPS Data Link Interface API - DOWN DRIVER

INT 7C 0002 - SK-UPPS Data Link Interface API - GET DRIVER STATUS

INT 7C 0003 - SK-UPPS Data Link Interface API - CHANGE DRIVER ADDRESS

INT 7C 0004 - SK-UPPS Data Link Interface API - REQUEST BUFFER

INT 7C 0005 - SK-UPPS Data Link Interface API - RELEASE BUFFER

INT 7C 0006 - SK-UPPS Data Link Interface API - TRANSMIT FRAME

INT 7C 0007 - SK-UPPS Data Link Interface API - REGISTER PROTOCOL

INT 7C 0008 - SK-UPPS Data Link Interface API - DISABLE PROTOCOL

INT 7C 0009 - SK-UPPS Data Link Interface API - REGISTER MULTICAST

INT 7C 000A - SK-UPPS Data Link Interface API - DISABLE MULTICAST

INT 7C 000B - SK-UPPS Data Link Interface API - GET PROTOCOL LIST

INT 7C 000C - SK-UPPS Data Link Interface API - GET PROTOCOL STATUS

INT 7C 000D - SK-UPPS Data Link Interface API - GET DRIVER STATISTICS

INT 7C 000E - SK-UPPS Data Link Interface API - DLI 2.5+ - GET DRIVER INFO

INT 7C 000F - SK-UPPS Data Link Interface API - FEED BACK BUFFER

INT 7C 0010 - SK-UPPS Data Link Interface API - CLIENT HOOK

INT 7C 0011 - SK-UPPS Data Link Interface API - CLIENT UNHOOK

INT 7C 0012 - SK-UPPS Data Link Interface API - SYNC REQUEST BUFFER

INT 7C 0013 - SK-UPPS Data Link Interface API - TRANSMIT FRAME RELEASE

INT 7C 0014 - SK-UPPS Data Link Interface API - GET MULTICAST LIST

INT 7C 0015 - SK-UPPS Data Link Interface API - DLI 2.6+ - GET MEDIA STATISTICS

INT 7C 0016 - SK-UPPS Data Link Interface API - DLI 2.8+ - DRIVER I/O CONTROL

INT 7C 0017 - SK-UPPS Data Link Interface API - DLI 2.8+ - INTERRUPT REQUEST

Interrupts


INT 7D - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 7D - multiple purposes

INT 7D ---- - [obsoleted proposal] - ALTERNATE MULTIPLEX INTERRUPT

INT 7D ---- - YTERM 1.4 - CLOCK SUPPORT

INT 7D ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ5

INT 7D ---- - HyperPAD v2.2 - API ACCESS

INT 7D ---- - IBM DOS 6.1 E.EXE - ???

INT 7D 00-- - SCSILink - RESET SCSI BUS

INT 7D 01-- - SCSILink - CONNECT TO TARGET

INT 7D 02-- - SCSILink - SEND COMMAND

INT 7D 03-- - SCSILink - SET TIMEOUT

INT 7D 04-- - SCSILink - GET ERROR STRING

INT 7D 05-- - SCSILink - GET ADDRESS

INT 7D 06-- - SCSILink - PUT DATA

INT 7D 07-- - SCSILink - GET DATA

INT 7D 08-- - SCSILink - TERMINATE SESSION

INT 7D 09-- - SCSILink - POLL REQUEST

Interrupts


INT 7E - RESERVED FOR DIP, Ltd. ROM LIBRARY; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 7E - RESERVED FOR DIP, Ltd. ROM LIBRARY; multiple purposes

INT 7E ---- - RESERVED FOR DIP, Ltd. ROM LIBRARY

INT 7E ---- - YTERM 1.4 - ???

INT 7E ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ6

INT 7E 00-- - MaxSBOS v0.21 - GET ???

INT 7E 00F6 - SBOS v3.82 - SET ???

INT 7E 00F7 - SBOS v3.82 - GET ???

INT 7E 00F9 - SBOS v3.82 - SET ???

INT 7E 00FB - SBOS v3.82 - SET ???

INT 7E 00FF - SBOS v3.82 - SET ???

INT 7E 00FE - SBOS v3.82 - UNINSTALL

INT 7E 00FF - SBOS v3.82 - SET INTERRUPT FOR ???

INT 7E 01-- - MaxSBOS v0.21 - ???

INT 7E 02-- - MaxSBOS v0.21 - ???

INT 7E 03-- - MaxSBOS v0.21 - NOP

INT 7E 5857 - XLOAD - INSTALLATION CHECK

INT 7E 5857 - XLOAD - GET ???

INT 7E 5857 - XLOAD - GET XLOAD MEMORY SIZE

Interrupts


INT 7F - multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 7F - multiple purposes

INT 7F ---- - Halo88 - API

INT 7F ---- - CONVERGENT TECHNOLOGIES ClusterShare CTOS ACCESS VECTOR

INT 7F ---- - Telebit ACS SERIAL I/O

INT 7F ---- - Non-dedicated NetWare 2.x File Server - ENTER CONSOLE MODE

INT 7F ---- - YTERM - ???

INT 7F ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ7

INT 7F ---- - Canon IXHND2 Scanner Interface

INT 7F ---- - SBS WinRun 1.00 - TRANSMITTER ENTRY POINT

INT 7F ---- - Alloy 386/MultiWare (MW386), Novell-Type Network Executive (NTNX)

INT 7F ---- - Alloy NetWare Support Kit (ANSK) v2.2+ - INSTALLATION CHECK

INT 7F 00-- - Alloy NTNX, MW386 - SEMAPHORE LOCK AND WAIT

INT 7F 00-- - MultiLink Advanced v1.0+ - ENQUEUE SYSTEM RESOURCE

INT 7F 00-- - G8BPQ v4.07+ - GET NODE/SWITCH VERSION AND DESCRIPTION

INT 7F 01-- - Alloy NTNX, MW386 - SEMAPHORE LOCK

INT 7F 01-- - MultiLink Advanced v1.0+ - DEQUEUE SYSTEM RESOURCE

INT 7F 01-- - TIGA Communications Driver v2.05 - GET ENTRY POINTS

INT 7F 01-- - G8BPQ v4.00+ - HOST MODE - SET APPLICATION FLAGS AND MASK

INT 7F 0104 - HLLAPI (IBM 3270 High-Level Language API)/LLAPI (Rabbit Low Level API)

INT 7F 0105 - IBM 8514/A Adapter Interface (HDILOAD.EXE)

INT 7F 0105 - IBM XGA Adapter Interface (XGAAIDOS.SYS)

INT 7F 0106 - HDILOAD Mach32 Adapter Interface - UNINSTALL

INT 7F 02-- - Alloy NTNX, MW386 - RELEASE SEMAPHORE

INT 7F 02-- - MultiLink Advanced v1.0+ - RELEASE CPU

INT 7F 02-- - G8BPQ v4.00+ - HOST MODE - SEND FRAME

INT 7F 0200 - Btrieve Multi-User - GIVE UP TIME???

INT 7F 03-- - Alloy ANSK, NTNX, MW386 - GET USER NUMBER

INT 7F 03-- - G8BPQ v4.00+ - HOST MODE - RECEIVE FRAME

INT 7F 04-- - Alloy NTNX, MW386 - GET NUMBER OF USERS

INT 7F 04-- - G8BPQ v4.00+ - HOST MODE - GET STREAM STATUS

INT 7F 05-- - Alloy NTNX (Host) - LOCK/UNLOCK SYSTEM, SPOOLER CONTROL

INT 7F 05-- - Alloy NTNX (Slave), MW386 - GET USER PARAMETERS

INT 7F 05-- - G8BPQ v4.00+ - HOST MODE - ACKNOWLEDGE STREAM STATUS CHANGE

INT 7F 06-- - Alloy NTNX (Host) - GET SHARED DRIVE INFO

INT 7F 06-- - Alloy NTNX (Slave) - ALLOCATE FREE CLUSTER ON SHARED DRIVE

INT 7F 06-- - G8BPQ v4.00+ - HOST MODE - SESSION CONTROL

INT 7F 07-- - Alloy NTNX, MW386 - GET LIST OF SHARED DRIVES

INT 7F 07-- - G8BPQ v4.00+ - HOST MODE - GET BUFFER COUNTS FOR STREAM

INT 7F 08-- - Alloy NTNX (Host) - GET INTERRUPT VECTORS

INT 7F 08-- - Alloy NTNX - SET MESSAGE DISPLAY TIMEOUT

INT 7F 08-- - G8BPQ v4.00+ - HOST MODE - PORT CONTROL/INFORMATION

INT 7F 09-- - MultiLink Advanced v1.0+ - SET TASK PRIORITY

INT 7F 09-- - G8BPQ - proposed addition - GET NODE/APPLICATION CALLSIGN AND ALIAS

INT 7F 09-- - Alloy NTNX - ENABLE/DISABLE MUD FILE CHECKING

INT 7F 09-- - Alloy NTNX - SWITCH HOST TO DEDICATED MODE

INT 7F 09-- - Alloy NTNX,MW386 - GET ALTERNATE INTERRUPT

INT 7F 0A-- - Alloy NTNX - GET SYSTEM FLAGS

INT 7F 0A-- - G8BPQ v4.00+ - HOST MODE - TRANSMIT RAW (KISS) FRAME

INT 7F 0A-- - MultiLink Advanced v1.0+ - SET KEYBOARD TEST STATUS

INT 7F 0B-- - Alloy NTNX (Host) - SET/RESET GRAPHICS DOS ON SLAVE

INT 7F 0B-- - G8BPQ v4.00+ - HOST MODE - RECEIVE TRACE (RAW DATA) FRAME

INT 7F 0C-- - G8BPQ v4.00+ - HOST MODE - UPDATE SWITCH INFORMATION

INT 7F 0D00 - G8BPQ v4.07+ - HOST MODE - GET AVAILABLE STREAM

INT 7F 0D-- - G8BPQ v4.07+ - HOST MODE - ALLOCATE/DEALLOCATE STREAM

INT 7F 0F-- - G8BPQ v4.00+ - HOST MODE - GET TIME MARKER

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - OPEN CHANNEL

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - CLOSE CHANNEL

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK CHANNEL

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK CHANNEL

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - RELEASE BUFFER

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - CLOSE ALL CHANNELS

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK ALL OPEN CHANNELS

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK ALL LOCKED IDLE CHANNELS

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK MULTIPLE CHANNELS

INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK MULTIPLE CHANNELS

INT 7F 11-- - Alloy NTNX, MW386 - SEND DATAGRAM

INT 7F 12-- - Alloy NTNX, MW386 - ACKNOWLEDGE DATAGRAM

INT 7F 1234 - TIGA Communications Driver v2.05 - UNINSTALL

INT 7F 13-- - Alloy NTNX, MW386 - RESET USER DATAGRAMS

INT 7F 14-- - Alloy NTNX, MW386 -  SET RECEIVE ISR

INT 7F 14-- - Alloy NTNX, MW386 - SET ACKNOWLEDGE ISR

INT 7F 14-- - Alloy NTNX, MW386 - SET CHANNEL BUFFER POINTER

INT 7F 14-- - Alloy NTNX, MW386 - GET RECEIVE ISR

INT 7F 14-- - Alloy NTNX, MW386 - GET ACKNOWLEDGE ISR

INT 7F 14-- - Alloy NTNX (Host), MW386 - GET BUSY POINTER

INT 7F 15-- - Alloy NTNX, MW386 - GET CHANNEL STATUS

INT 7F 15-- - Alloy NTNX, MW386 - GET NEXT FULL CHANNEL

INT 7F 15-- - Alloy NTNX, MW386 - GET MAXIMUM NUMBER OF CHANNELS

INT 7F 15-- - Alloy NTNX, MW386 - GET MAXIMUM PACKET SIZE

INT 7F 15-- - Alloy NTNX, MW386 - GET AND CLEAR ACKNOWLEDGE STATUS

INT 7F 16-- - Alloy NTNX, MW386 - DIRECT MEMORY TRANSFER

INT 7F 21-- - Alloy NTNX, MW386 - SEND MESSAGE OR COMMAND TO USER(S)

INT 7F 22-- - Alloy NTNX - GET MESSAGE

INT 7F 24-- - Alloy NTNX, MW386 - ATTACH OR RELEASE DRIVE FOR LOW-LEVEL WRITE ACCESS

INT 7F 24-- - Alloy NTNX - ATTACH/RELEASE HOST PROCESSOR

INT 7F 25-- - Alloy ANSK, NTNX, MW386 - GET NETWORK EXECUTIVE VERSION

INT 7F 25-- - Alloy ANSK, NTNX, MW386 - GET NETWORK EXECUTIVE TYPE

INT 7F 2525 - TIGA Communications Driver v2.05 - ???

INT 7F 26-- - Alloy NTNX, MW386 - GET NTNX FILE MODE

INT 7F 26-- - Alloy NTNX - SET FILE I/O CHECKING LEVEL

INT 7F 26-- - Alloy NTNX - CANCEL FLUSH ON WRITE

INT 7F 30-- - Alloy MW386 - GET PORT INFORMATION

INT 7F 31-- - Alloy MW386 v1.x only - CHECK PORT ASSIGNMENT

INT 7F 37-- - Alloy NTNX (Host) - GET SEMAPHORE TABLE

INT 7F 37-- - Alloy ANSK, NTNX (Slave) - DUMP STRING TO TERMINAL

INT 7F 38-- - Alloy NTNX (Slave), MW386 - SET NEW TERMINAL DRIVER

INT 7F 39-- - Alloy MW386 - SET TERMINAL DRIVER FOR ANOTHER USER

INT 7F 3A-- - Alloy MW386 - GET TERMINAL PARAMETERS

INT 7F 3B-- - Alloy MW386 - SET TERMINAL PARAMETERS

INT 7F 3C-- - Alloy MW386 - ENABLE/DISABLE AUTOBAUD DETECT

INT 7F 3D-- - Alloy MW386 - POST TERMINAL CONFIGURATION CHANGES

INT 7F 41-- - Alloy NTNX - LOCK FILE FOR USER

INT 7F 41-- - Alloy MW386 - LOCK SEMAPHORE FOR USER

INT 7F 4150 - Voyetra - AAPISG - API

INT 7F 42-- - Alloy NTNX - UNLOCK FILE FOR USER

INT 7F 42-- - Alloy MW386 - UNLOCK SEMAPHORE FOR USER

INT 7F 4321 - TIGA Communications Driver v2.05 - INSTALLATION CHECK

INT 7F 4331 - Voyetra - VAPISG - API

INT 7F 4E-- - Alloy MW386 v2+ - SET ERROR MODE

INT 7F 4F-- - Alloy MW386 v2+ - SET FCB MODE

INT 7F 5555 - TIGA Communications Driver v2.05 - ???

INT 7F 564D - Voyetra Multimedia Player - VMP.EXE API

INT 7F 5658 - Voyetra - VAPISG - API

INT 7F 81-- - Alloy NTNX - ATTACH DEVICE FOR USER

INT 7F 82-- - Alloy NTNX - RELEASE DEVICE FOR USER

INT 7F A0-- - Alloy MW386 - GET USER NAME

INT 7F A1-- - Alloy MW386 - GET MACHINE, USER, AND PROCESS NUMBER

INT 7F A2-- - Alloy MW386 - GET USER PRIVILEGE LEVEL

INT 7F A3-- - Alloy MW386 - GET USER LOGIN STATE

INT 7F A4-- - Alloy MW386 - VERIFY USER PASSWORD

INT 7F A500 - Alloy MW386 - GET USER STATUS

INT 7F A501 - Alloy MW386 - SET USER STATUS

INT 7F ABCD - IBM 8516 Touch Screen Device Driver - GET API ENTRY

INT 7F B0-- - Alloy NTNX, MW386 - RELEASE ALL SEMAPHORES FOR USER

INT 7F B1-- - Alloy NTNX, MW386 - RELEASE NORMAL SEMAPHORES FOR USER

INT 7F B2-- - Alloy NTNX - RELEASE MESSAGES FOR USER

INT 7F B3-- - Alloy NTNX - RELEASE FILES FOR USER

INT 7F B4-- - Alloy NTNX - RELEASE DEVICES FOR USER

INT 7F C3-- - Alloy MW386 - WRITE BYTE TO TERMINAL AUX PORT

INT 7F C5-- - Alloy MW386 - CHANGE CONSOLE MODE

INT 7F C6-- - Alloy MW386 - WRITE BYTE TO CONSOLE PORT

INT 7F C7-- - Alloy MW386 - READ CONSOLE DATA BYTE

INT 7F C8-- - Alloy MW386 - READ CONSOLE DATA INTO BUFFER

INT 7F CF-- - Alloy NTNX - REBOOT USER PROCESSOR

INT 7F D6-- - Alloy MW386 - RESET NETWORK EXECUTIVE

INT 7F D7-- - Alloy MW386 - POST EVENT

INT 7F D8-- - Alloy MW386 - FLUSH DISK BUFFERS

INT 7F DB-- - Alloy MW386 v2+ - GET MW386 INVOCATION DRIVE

INT 7F E0-- - Alloy MW386 - CREATE DOS TASK

INT 7F E1-- - Alloy MW386 - GET DOS TASK PID FROM CREATE ID

INT 7F E2-- - Alloy MW386 - SWITCH TO NEW DOS TASK

INT 7F E3-- - Alloy MW386 - CHANGE NAME OF DOS TASK

INT 7F E4-- - Alloy MW386 - GET TASK NAME FROM PROCESS NUMBER

INT 7F E5-- - Alloy MW386 - GET PROCESS NUMBER FROM TASK NAME

INT 7F E6-- - Alloy MW386 - GET NUMBER OF AVAILABLE USER TASKS

INT 7F E7-- - Alloy MW386 - REMOVE DOS TASK

INT 7F E8-- - Alloy MW386 - DOS TASK DELAY

INT 7F F0-- - Alloy MW386 - RESTRICT DIRECTORY TO GROUP

INT 7F F1-- - Alloy MW386 - ASSIGN DIRECTORY TO GROUP

INT 7F F2-- - Alloy MW386 - READ RESTRICTED DIRECTORY ENTRY

INT 7F F3-- - Alloy MW386 - READ RESTRICTED DIRECTORY ENTRY FOR GROUP

INT 7F F8-- - Alloy MW386 - ASSIGN USER TO GROUP

INT 7F F9-- - Alloy MW386 - REMOVE USER FROM GROUP

INT 7F FA-- - Alloy MW386 - GET USER GROUP LIST

INT 7F FB-- - Alloy MW386 - ASSIGN GROUP NAME

INT 7F FC-- - Alloy MW386 - GET GROUP NAME

Interrupts


INT 80 - reserved for BASIC; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 80 - reserved for BASIC; multiple purposes

INT 80 ---- - Q-PRO4 - ???

INT 80 ---- - reserved for BASIC

INT 80 ---- - Phar Lap 386|DOS-Extender - RELOCATED PRINT-SCREEN

INT 80 ---- - BusLogic BT-946C PCI SCSI Adapter - SCRATCHPAD RAM (NOT A VECTOR!)

INT 80 ---- - SBSIM - "STARTSND" - START SOUND ON SPECIFIED DRIVER

INT 80 ---- - SBSIM - "PLAYSND" - PLAY MUSIC/VOICE ON SELECTED DRIVER

INT 80 ---- - SBSIM - "STOPSND" - STOP MUSIC/VOICE ON SELECTED DRIVER

INT 80 ---- - SBSIM - "PAUSESND" - TEMPORARILY PAUSE PLAYBACK ON SELECTED DRIVER

INT 80 ---- - SBSIM - "RESUMESND" - RESTART PLAYBACK ON SELECTED DRIVER

INT 80 ---- - SBSIM - "GETSNDSTAT" - GET DRIVER'S STATUS

INT 80 ---- - SoundBlaster SBFM driver - GET VERSION

INT 80 ---- - SBSIM - "QUERYVERSION" - GET VERSION

INT 80 ---- - SoundBlaster SBFM driver - SET MUSIC STATUS BYTE ADDRESS

INT 80 ---- - SBSIM - "QUERYDRIVERS" - CHECK DRIVERS INSTALLED

INT 80 ---- - SoundBlaster SBFM driver - SET INSTRUMENT TABLE

INT 80 ---- - SBSIM - GETADDRESS" - GET SELECTED DRIVER'S ENTRY POINT

INT 80 ---- - SoundBlaster SBFM driver - SET SYSTEM CLOCK RATE

INT 80 ---- - SoundBlaster SBFM driver - SET DRIVER CLOCK RATE

INT 80 ---- - SoundBlaster SBFM driver - TRANSPOSE MUSIC

INT 80 ---- - SBSIM - "GETBUFFERINFO" - GET DRIVER'S BUFFER ADDRESS

INT 80 ---- - SoundBlaster SBFM driver - PLAY MUSIC

INT 80 ---- - SoundBlaster SBFM driver - STOP MUSIC

INT 80 ---- - SoundBlaster SBFM driver - RESET DRIVER

INT 80 ---- - SoundBlaster SBFM driver - PAUSE MUSIC

INT 80 ---- - SoundBlaster SBFM driver - RESUME MUSIC

INT 80 ---- - SoundBlaster SBFM driver - SET USER-DEF TRAP FOR SYSTEM-EXCLUSIVE CMDS

INT 80 ---- - SBSIM - "GETVOLUME" - GET SOURCE'S VOLUME

INT 80 ---- - SBSIM - "SETVOLUME" - SET SOURCE'S VOLUME

INT 80 01-- - QPC Software PKTINT.COM - INITIALIZE

INT 80 02-- - QPC Software PKTINT.COM - GET BUFFER ADDRESSES

INT 80 03-- - QPC Software PKTINT.COM - GET ENTRY POINT

INT 80 04-- - QPC Software PKTINT.COM - ENABLE???

INT 80 05-- - QPC Software PKTINT.COM - GET RECEIVE STATISTICS

INT 80 06-- - QPC Software PKTINT.COM - REMOVE RECEIVED PACKET

Interrupts


INT 81 - reserved for BASIC
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 81 - reserved for BASIC

INT 81 ---- - reserved for BASIC

INT 81 ---- - IBM TOKEN RING ADAPTER - ???

INT 81 ---- - BusLogic BT-946C PCI SCSI Adapter - SCRATCHPAD RAM (NOT A VECTOR!)

INT 81 ---- - AMI WinBIOS - SECOND HARD DRIVE AUTODETECTION

INT 81 0200 - Gravis UltraSound - MegaEm - PROCESS COMMAND LINE

INT 81 0202 - Gravis UltraSound - MegaEm - ???

INT 81 0300 - Gravis UltraSound - MegaEm - LOAD SAMPLE ???

INT 81 0400 - Gravis UltraSound - MegaEm - ???

INT 81 2010 - Gravis UltraSound - MEGA_EM v3.0+ - ???

INT 81 2011 - Gravis UltraSound - MEGA_EM v3.0+ - ???

INT 81 2012 - Gravis UltraSound - MEGA_EM v3.0+ - ???

INT 81 2015 - Gravis UltraSound - MEGA_EM v3.0+ - ???

Interrupts


INT 82 - reserved for BASIC
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 82 - reserved for BASIC

INT 82 ---- - reserved for BASIC

INT 82 ---- - IBM TOKEN RING ADAPTER - ???

Interrupts


INT 83 - reserved for BASIC
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 83 - reserved for BASIC

INT 83 ---- - reserved for BASIC

INT 83 00-- - JM Pro Tracker v5.0 - ???

INT 83 01-- - JM Pro Tracker v5.0 - ???

INT 83 02-- - JM Pro Tracker v5.0 - ???

INT 83 03-- - JM Pro Tracker v5.0 - ???

INT 83 04-- - JM Pro Tracker v5.0 - SET DMA BUFFER???

INT 83 05-- - JM Pro Tracker v5.0 - SET ??? BUFFER

INT 83 06-- - JM Pro Tracker v5.0 - SET ??? BUFFER

INT 83 07-- - JM Pro Tracker v5.0 - SET ??? BUFFER

INT 83 08-- - JM Pro Tracker v5.0 - START PLAYING???

INT 83 09-- - JM Pro Tracker v5.0 - PAUSE???

INT 83 0A-- - JM Pro Tracker v5.0 - RESUME???

INT 83 0B-- - JM Pro Tracker v5.0 - ???

INT 83 0C-- - JM Pro Tracker v5.0 - ???

INT 83 0D-- - JM Pro Tracker v5.0 - ???

INT 83 0E-- - JM Pro Tracker v5.0 - ???

INT 83 0F-- - JM Pro Tracker v5.0 - ???

INT 83 10-- - JM Pro Tracker v5.0 - ???

INT 83 11-- - JM Pro Tracker v5.0 - ???

INT 83 12-- - JM Pro Tracker v5.0 - CLEAR ???

INT 83 13-- - JM Pro Tracker v5.0 - ???

INT 83 14-- - JM Pro Tracker v5.0 - ???

INT 83 15-- - JM Pro Tracker v5.0 - GET ???

INT 83 16-- - JM Pro Tracker v5.0 - ???

INT 83 17-- - JM Pro Tracker v5.0 - UNHOOK API INTERRUPT

INT 83 18-- - JM Pro Tracker v5.0 - SET BUFFERS

Interrupts


INT 84 - reserved for BASIC
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 84 - reserved for BASIC

INT 84 ---- - reserved for BASIC

Interrupts


INT 85 - reserved for BASIC
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 85 - reserved for BASIC

INT 85 ---- - reserved for BASIC

Interrupts


INT 86 - IBM ROM BASIC - used while in interpreter; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 86 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 86 ---- - NetBIOS - ORIGINAL INT 18

INT 86 ---- - IBM ROM BASIC - used while in interpreter

INT 86 ---- - APL*PLUS/PC - Terminate APL session and return to DOS

Interrupts


INT 87 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 87 - IBM ROM BASIC - used while in interpreter

INT 87 ---- - IBM ROM BASIC - used while in interpreter

INT 87 ---- - APL*PLUS/PC - ???

INT 87 ---- - VIRUS - "ZeroHunt" - VIRAL CODE (NOT A VECTOR!)

Interrupts


INT 88 - IBM ROM BASIC - used while in interpreter; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 88 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 88 ---- - IBM ROM BASIC - used while in interpreter

INT 88 --00 - APL*PLUS/PC - CREATE OBJECT OF ARBITRARY RANK OR SHAPE

INT 88 --01 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE

INT 88 --02 - APL*PLUS/PC - CREATE INTEGER SCALAR/VECTOR/MATRIX <64K IN SIZE

INT 88 --08 - APL*PLUS/PC - CREATE FLOATING POINT SCALAR/VECTOR/MATRIX <64K IN SIZE

INT 88 --F5 - APL*PLUS/PC - FORCE OBJECT INTO REAL WORKSPACE FROM VIRTUAL

INT 88 --F6 - APL*PLUS/PC - MAKE NAME IMMUNE FROM OUTSWAPPING

INT 88 --F7 - APL*PLUS/PC - MAKE NAME ELIGIBLE FOR OUTSWAPPING

INT 88 --F8 - APL*PLUS/PC - REPORT WHETHER NAME IS ELIGIBLE FOR OUTSWAPPING

INT 88 --F9 - APL*PLUS/PC - DETERMINE NAME STATUS

INT 88 --FC - APL*PLUS/PC - DETERMINE IF MEMORY AVAIL WITHOUT GARBAGE COLLECTION

INT 88 --FD - APL*PLUS/PC - PERFORM GARBAGE COLLECTION AND RETURN AVAILABLE MEMORY

INT 88 --FE - APL*PLUS/PC - CREATE NAME

INT 88 --FF - APL*PLUS/PC - DETERMINE NAME STATUS

Interrupts


INT 89 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 89 - IBM ROM BASIC - used while in interpreter

INT 89 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 8A - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 8A - IBM ROM BASIC - used while in interpreter

INT 8A ---- - IBM ROM BASIC - used while in interpreter

INT 8A ---- - APL*PLUS/PC - PRINT SCREEN

Interrupts


INT 8B - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 8B - IBM ROM BASIC - used while in interpreter

INT 8B ---- - IBM ROM BASIC - used while in interpreter

INT 8B ---- - APL*PLUS/PC - BEEP

INT 8B ---- - VIRUS - "ZeroHunt" - INSTALLATION CHECK (NOT A VECTOR!)

Interrupts


INT 8C - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 8C - IBM ROM BASIC - used while in interpreter

INT 8C ---- - IBM ROM BASIC - used while in interpreter

INT 8C ---- - APL*PLUS/PC - CLEAR SCREEN MEMORY

Interrupts


INT 8D - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 8D - IBM ROM BASIC - used while in interpreter

INT 8D ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 8E - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 8E - IBM ROM BASIC - used while in interpreter

INT 8E ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 8F - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 8F - IBM ROM BASIC - used while in interpreter

INT 8F ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 90 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 90 - IBM ROM BASIC - used while in interpreter

INT 90 ---- - IBM ROM BASIC - used while in interpreter

INT 90 ---- - APL*PLUS/PC - USED BY PORT 10 PRINTER DRIVER

Interrupts


INT 91 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 91 - IBM ROM BASIC - used while in interpreter

INT 91 ---- - IBM ROM BASIC - used while in interpreter

INT 91 ---- - IBM TOKEN RING ADAPTER - ???

Interrupts


INT 92 - IBM ROM BASIC - used while in interpreter; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 92 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 92 ---- - IBM ROM BASIC - used while in interpreter

INT 92 ---- - Sangoma X.25 INTERFACE PROGRAM

INT 92 E1-- - Da Vinci eMail Dispatcher INTERFACE

INT 92 E100 - Da Vinci eMail Dispatcher - "NetInitStart"

INT 92 E101 - Da Vinci eMail Dispatcher - "NetInitCheck"

INT 92 E102 - Da Vinci eMail Dispatcher - "NetCheckDriver"

INT 92 E103 - Da Vinci eMail Dispatcher - "NetTerminate"

INT 92 E104 - Da Vinci eMail Dispatcher - "NetWhereIs"

INT 92 E105 - Da Vinci eMail Dispatcher - "NetOpen"

INT 92 E106 - Da Vinci eMail Dispatcher - "NetRead"

INT 92 E107 - Da Vinci eMail Dispatcher - "NetGetError"

INT 92 E108 - Da Vinci eMail Dispatcher - "NetWrite"

INT 92 E109 - Da Vinci eMail Dispatcher - "NetErrorFix" (UNUSED)

INT 92 E10A - Da Vinci eMail Dispatcher - "NetClose"

INT 92 E10B - Da Vinci eMail Dispatcher - "NetCheckQueue"

INT 92 E10C - Da Vinci eMail Dispatcher - "NetReadQueue"

INT 92 E10D - Da Vinci eMail Dispatcher - "NetSubmitName"

INT 92 E10E - Da Vinci eMail Dispatcher - "NetRemoveName"

INT 92 E10F - Da Vinci eMail Dispatcher - IS ANYONE THERE? QUERY

INT 92 E110 - Da Vinci eMail Dispatcher - "NetGetAltRoute"

INT 92 E111 - Da Vinci eMail Dispatcher - "NetDeleteAltRoutes"

INT 92 E112 - Da Vinci eMail Dispatcher - "NetChangePassword"

INT 92 E113 - Da Vinci eMail Dispatcher - "NetSetAltRoute"

INT 92 E175 - Da Vinci eMail Dispatcher - BECOME MICRO TSR

INT 92 E180 - Da Vinci eMail Dispatcher - INSTALLATION CHECK

Interrupts


INT 93 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 93 - IBM ROM BASIC - used while in interpreter

INT 93 ---- - IBM ROM BASIC - used while in interpreter

INT 93 ---- - IBM TOKEN RING ADAPTER - ???

Interrupts


INT 94 - IBM ROM BASIC - used while in interpreter; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 94 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT 94 ---- - IBM ROM BASIC - used while in interpreter

INT 94 ---- - PCM driver - INITIALIZE SOUND

INT 94 ---- - PCM driver - INITIALIZE PCM

INT 94 ---- - PCM driver - INITIALIZE PCM INFO

INT 94 ---- - PCM driver - INITIALIZE DMA BUFFER

INT 94 ---- - PCM driver - INITIALIZE USER FUNCTION

INT 94 ---- - PCM driver - BEGIN AUDIO PLAY

INT 94 ---- - PCM driver - BEGIN AUDIO RECORD

INT 94 ---- - PCM driver - PAUSE AUDIO PLAY/RECORD

INT 94 ---- - PCM driver - RESUME AUDIO PLAY/RECORD

INT 94 ---- - PCM driver - STOP AUDIO PLAY/RECORD

INT 94 ---- - PCM driver - UNHOOK INTERRUPTS AND TURN OFF DMA

INT 94 ---- - PCM driver - FIND VALID DMA BUFFER IN HUGE MEMORY BLOCK

INT 94 ---- - Media Vision PCM.COM - GET STATUS

INT 94 ---- - Media Vision PCM.COM - GET INTERNAL DMA BUFFER ADDRESS

INT 94 ---- - Media Vision PCM.COM - GET INTERNAL DMA BUFFER SIZE AND DIVISIONS

INT 94 ---- - Media Vision PCM.COM - CHECK BOARD ADDRESS

INT 94 ---- - Media Vision PCM.COM - GET INTERNAL NOTE BUFFER

INT 94 ---- - Media Vision PCM.COM - SINGLE-STEP QUEUE

INT 94 ---- - Media Vision PCM.COM - INITIALIZE

INT 94 ---- - Media Vision PCM.COM - LOAD SOUND FOR LATER PLAY THROUGH KEYBOARD

INT 94 ---- - Media Vision PCM.COM - GET INTERNAL SOUND USAGE

INT 94 ---- - Media Vision PCM.COM - GET DATA FOR SPECIFIED SOUND

INT 94 ---- - Media Vision PCM.COM - GET/SET INTERNAL DMA BUFFER

INT 94 ---- - Media Vision PCM.COM - SIMULATE DOUBLE-SHIFT HOTKEY

INT 94 --01 - Media Vision PCM.COM - CTRL-G INTERCEPT

INT 94 --02 - Media Vision PCM.COM - DOUBLE-SHIFT-HOTKEY SOUND FEATURE

INT 94 --04 - Media Vision PCM.COM - RANDOM SOUND FEATURE

INT 94 --08 - Media Vision PCM.COM - NO ACTIVITY FEATURE

INT 94 --10 - Media Vision PCM.COM - TIMER CONTROL

INT 94 ---- - Media Vision PCM.COM - GET INFO

Interrupts


INT 95 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 95 - IBM ROM BASIC - used while in interpreter

INT 95 ---- - IBM ROM BASIC - used while in interpreter

INT 95 ---- - APL*PLUS/PC - DETERMINE R= SPACE

Interrupts


INT 96 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 96 - IBM ROM BASIC - used while in interpreter

INT 96 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 97 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 97 - IBM ROM BASIC - used while in interpreter

INT 97 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 98 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 98 - IBM ROM BASIC - used while in interpreter

INT 98 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 99 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 99 - IBM ROM BASIC - used while in interpreter

INT 99 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 9A - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 9A - IBM ROM BASIC - used while in interpreter

INT 9A ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 9B - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 9B - IBM ROM BASIC - used while in interpreter

INT 9B ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT 9C - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 9C - IBM ROM BASIC - used while in interpreter

INT 9C ---- - IBM ROM BASIC - used while in interpreter

INT 9C ---- - VIRUS - "INT13" - ORIGINAL INT 13h VECTOR

Interrupts


INT 9D - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 9D - IBM ROM BASIC - used while in interpreter

INT 9D ---- - IBM ROM BASIC - used while in interpreter

INT 9D ---- - VIRUS - "INT13" - ROM INT 13h ENTRY POINT

Interrupts


INT 9E - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 9E - IBM ROM BASIC - used while in interpreter

INT 9E ---- - IBM ROM BASIC - used while in interpreter

INT 9E ---- - VIRUS - "INT13" - ORIGINAL INT 21h VECTOR

Interrupts


INT 9F - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT 9F - IBM ROM BASIC - used while in interpreter

INT 9F ---- - IBM ROM BASIC - used while in interpreter

INT 9F ---- - VIRUS - "INT13" - STORAGE FOR USER INT 13h VECTOR

Interrupts


INT A0 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A0 - IBM ROM BASIC - used while in interpreter

INT A0 ---- - IBM ROM BASIC - used while in interpreter

INT A0 ---- - APL*PLUS/PC - USED BY APL/GSS*CGI GRAPHICS INTERFACE

Interrupts


INT A1 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A1 - IBM ROM BASIC - used while in interpreter

INT A1 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A2 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A2 - IBM ROM BASIC - used while in interpreter

INT A2 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A3 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A3 - IBM ROM BASIC - used while in interpreter

INT A3 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A4 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A4 - IBM ROM BASIC - used while in interpreter

INT A4 ---- - IBM ROM BASIC - used while in interpreter

INT A4 ---- - Right Hand Man - API

Interrupts


INT A5 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A5 - IBM ROM BASIC - used while in interpreter

INT A5 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A6 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A6 - IBM ROM BASIC - used while in interpreter

INT A6 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A7 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A7 - IBM ROM BASIC - used while in interpreter

INT A7 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A8 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A8 - IBM ROM BASIC - used while in interpreter

INT A8 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT A9 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT A9 - IBM ROM BASIC - used while in interpreter

INT A9 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT AA - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT AA - IBM ROM BASIC - used while in interpreter

INT AA ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT AB - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT AB - IBM ROM BASIC - used while in interpreter

INT AB ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT AC - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT AC - IBM ROM BASIC - used while in interpreter

INT AC ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT AD - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT AD - IBM ROM BASIC - used while in interpreter

INT AD ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT AE - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT AE - IBM ROM BASIC - used while in interpreter

INT AE ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT AF - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT AF - IBM ROM BASIC - used while in interpreter

INT AF ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT B0 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B0 - IBM ROM BASIC - used while in interpreter

INT B0 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT B1 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B1 - IBM ROM BASIC - used while in interpreter

INT B1 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT B2 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B2 - IBM ROM BASIC - used while in interpreter

INT B2 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT B3 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B3 - IBM ROM BASIC - used while in interpreter

INT B3 ---- - IBM ROM BASIC - used while in interpreter

INT B3 70-- - ZIPKEY - GET VERSION

INT B3 71-- - ZIPKEY - CONVERT TWO-LETTER ABBREVIATION TO STATE CODE

INT B3 72-- - ZIPKEY - CONVERT STATE CODE TO TWO-LETTER ABBREVIATION

INT B3 73-- - ZIPKEY - CONVERT STATE CODE TO STATE NAME

INT B3 74-- - ZIPKEY - CONVERT ZIPCODE TO ASCII DIGITS

INT B3 75-- - ZIPKEY - LOOK UP STATE CODE FOR ZIPCODE

INT B3 76-- - ZIPKEY - LOOK UP CITY AND STATE FOR ZIPCODE

INT B3 77-- - ZIPKEY - PLAY BACK EXIT KEY FOR ENTRY WITH GIVEN ZIPCODE

INT B3 78-- - ZIPKEY - LOOK UP ZIPCODES FOR A GIVEN STATE AND CITY

INT B3 79-- - ZIPKEY - LOOK UP ZIPCODES FOR A GIVEN CITY

INT B3 7A-- - ZIPKEY - FETCH AN ENTRY FROM A PREVIOUS LOOKUP

INT B3 7B-- - ZIPKEY - GET VALUES NEEDED TO SAVE ZIPKEY CONTEXT

INT B3 7C-- - ZIPKEY - RESTORE ZIPKEY CONTEXT

INT B3 7D-- - ZIPKEY - REQUEST POP UP

INT B3 7E-- - ZIPKEY - GET NAME OF PRIMARY CITY FOR A ZIPCODE REGION

INT B3 7F-- - ZIPKEY - ENABLE/DISABLE HOTKEYS

INT B3 80-- - ZIPKEY v2.0+ - DETERMINE STATE FOR AREA CODE

Interrupts


INT B4 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B4 - IBM ROM BASIC - used while in interpreter

INT B4 ---- - IBM ROM BASIC - used while in interpreter

INT B4 ---- - StackMan - REQUEST NEW STACK

Interrupts


INT B5 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B5 - IBM ROM BASIC - used while in interpreter

INT B5 ---- - IBM ROM BASIC - used while in interpreter

INT B5 ---- - StackMan - RESTORE ORIGINAL STACK

INT B5 ---- - Netroom NETSWAP4 - ???

Interrupts


INT B6 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B6 - IBM ROM BASIC - used while in interpreter

INT B6 ---- - IBM ROM BASIC - used while in interpreter

INT B6 ---- - (NOT A VECTOR!) - USED BY TBFENCE

Interrupts


INT B7 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B7 - IBM ROM BASIC - used while in interpreter

INT B7 ---- - IBM ROM BASIC - used while in interpreter

INT B7 ---- - TBFENCE - ???

Interrupts


INT B8 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B8 - IBM ROM BASIC - used while in interpreter

INT B8 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT B9 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT B9 - IBM ROM BASIC - used while in interpreter

INT B9 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT BA - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT BA - IBM ROM BASIC - used while in interpreter

INT BA ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT BB - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT BB - IBM ROM BASIC - used while in interpreter

INT BB ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT BC - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT BC - IBM ROM BASIC - used while in interpreter

INT BC ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT BD - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT BD - IBM ROM BASIC - used while in interpreter

INT BD ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT BE - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT BE - IBM ROM BASIC - used while in interpreter

INT BE ---- - IBM ROM BASIC - used while in interpreter

INT BE ---- - DESQview/X - ???

Interrupts


INT BF - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT BF - IBM ROM BASIC - used while in interpreter

INT BF ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT C0 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C0 - IBM ROM BASIC - used while in interpreter

INT C0 ---- - IBM ROM BASIC - used while in interpreter

INT C0 ---- - AMI BIOS - DRIVE 0 DATA

Interrupts


INT C1 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C1 - IBM ROM BASIC - used while in interpreter

INT C1 ---- - IBM ROM BASIC - used while in interpreter

INT C1 ---- - AMI BIOS - DRIVE 0 DATA

Interrupts


INT C2 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C2 - IBM ROM BASIC - used while in interpreter

INT C2 ---- - IBM ROM BASIC - used while in interpreter

INT C2 ---- - AMI BIOS - DRIVE 0 DATA

Interrupts


INT C3 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C3 - IBM ROM BASIC - used while in interpreter

INT C3 ---- - IBM ROM BASIC - used while in interpreter

INT C3 ---- - AMI BIOS - DRIVE 0 DATA

Interrupts


INT C4 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C4 - IBM ROM BASIC - used while in interpreter

INT C4 ---- - IBM ROM BASIC - used while in interpreter

INT C4 ---- - AMI BIOS - DRIVE 1 DATA

Interrupts


INT C5 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C5 - IBM ROM BASIC - used while in interpreter

INT C5 ---- - IBM ROM BASIC - used while in interpreter

INT C5 ---- - AMI BIOS - DRIVE 1 DATA

Interrupts


INT C6 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C6 - IBM ROM BASIC - used while in interpreter

INT C6 ---- - IBM ROM BASIC - used while in interpreter

INT C6 ---- - APL*PLUS/PC - IDENTICAL TO INT 86

INT C6 ---- - AMI BIOS - DRIVE 1 DATA

Interrupts


INT C7 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C7 - IBM ROM BASIC - used while in interpreter

INT C7 ---- - IBM ROM BASIC - used while in interpreter

INT C7 ---- - APL*PLUS/PC - ???

INT C7 ---- - AMI BIOS - DRIVE 1 DATA

Interrupts


INT C8 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C8 - IBM ROM BASIC - used while in interpreter

INT C8 ---- - IBM ROM BASIC - used while in interpreter

INT C8 ---- - APL*PLUS/PC - IDENTICAL TO INT 88

Interrupts


INT C9 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT C9 - IBM ROM BASIC - used while in interpreter

INT C9 ---- - IBM ROM BASIC - used while in interpreter

INT C9 ---- - APL*PLUS/PC - ???

Interrupts


INT CA - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT CA - IBM ROM BASIC - used while in interpreter

INT CA ---- - IBM ROM BASIC - used while in interpreter

INT CA ---- - APL*PLUS/PC - PRINT SCREEN

Interrupts


INT CB - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT CB - IBM ROM BASIC - used while in interpreter

INT CB ---- - IBM ROM BASIC - used while in interpreter

INT CB ---- - APL*PLUS/PC - BEEP

Interrupts


INT CC - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT CC - IBM ROM BASIC - used while in interpreter

INT CC ---- - IBM ROM BASIC - used while in interpreter

INT CC ---- - APL*PLUS/PC - CLEAR SCREEN MEMORY

Interrupts


INT CD - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT CD - IBM ROM BASIC - used while in interpreter

INT CD ---- - IBM ROM BASIC - used while in interpreter

INT CD ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT CE - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT CE - IBM ROM BASIC - used while in interpreter

INT CE ---- - IBM ROM BASIC - used while in interpreter

INT CE ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT CF - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT CF - IBM ROM BASIC - used while in interpreter

INT CF ---- - IBM ROM BASIC - used while in interpreter

INT CF ---- - APL*PLUS/PC - DEFAULT LOW-RESOLUTION TIMER FOR QUAD MF FUNCTION

Interrupts


INT D0 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D0 - IBM ROM BASIC - used while in interpreter

INT D0 ---- - IBM ROM BASIC - used while in interpreter

INT D0 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D0 ---- - [not a vector!] - NJFRERAM SIGNATURE VECTOR

Interrupts


INT D1 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D1 - IBM ROM BASIC - used while in interpreter

INT D1 ---- - IBM ROM BASIC - used while in interpreter

INT D1 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT D2 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D2 - IBM ROM BASIC - used while in interpreter

INT D2 ---- - IBM ROM BASIC - used while in interpreter

INT D2 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT D3 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D3 - IBM ROM BASIC - used while in interpreter

INT D3 ---- - IBM ROM BASIC - used while in interpreter

INT D3 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D3 ---- - VIRUS - "Antiexe" - RELOCATED INT 13

Interrupts


INT D4 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D4 - IBM ROM BASIC - used while in interpreter

INT D4 ---- - IBM ROM BASIC - used while in interpreter

INT D4 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D4 00-- - PC-MOS/386 v5.01 - OBSOLETE FUNCTIONS

INT D4 02-- - PC-MOS/386 v3.0+ - GET SYSTEM CONTROL BLOCK POINTER

INT D4 03-- - PC-MOS/386 v5.01 - GET/SET EXTENDED DIRECTORY INFORMATION

INT D4 04-- - PC-MOS/386 v3.0+ - GET TASK CONTROL BLOCK

INT D4 07-- - PC-MOS/386 v3.0+ - WAIT FOR EVENT

INT D4 10-- - PC-MOS/386 v3.0+ - ENTER/LEAVE NATIVE 386 EXECUTION MODE

INT D4 11-- - PC-MOS/386 v3.0+ - ALLOCATE NATIVE MODE MEMORY BLOCK

INT D4 12-- - PC-MOS/386 v3.0+ - FREE NATIVE MODE MEMORY BLOCK

INT D4 13-- - PC-MOS/386 v5.01 - GET ALIAS FOR SELECTOR (NATIVE MODE ONLY)

INT D4 16-- - PC-MOS/386 v5.01 - SET/CLEAR IRQ RESERVATION

INT D4 19-- - PC-MOS/386 v5.01 - GET TASK ID

INT D4 1A-- - PC-MOS/386 v5.01 - GET/SET TASK PRIORITY

INT D4 1B-- - PC-MOS/386 v5.01 - GET/SET TIME SLICE

INT D4 1C-- - PC-MOS/386 v5.01 - GET/SET KEYBOARD MODE

INT D4 1D-- - PC-MOS/386 v5.01 - GET CURRENT PROGRAM NAME

INT D4 1E-- - PC-MOS/386 v5.01 - GET CURRENT USERNAME AND SECURITY CLASS

INT D4 1F-- - PC-MOS/386 v5.01 - GET TASK PARTITION INFORMATION

INT D4 20-- - PC-MOS/386 v5.01 - GET PORT AND BAUDRATE INFORMATION

INT D4 21-- - PC-MOS/386 v5.01 - REMOVE A TASK

INT D4 22-- - PC-MOS/386 v5.01 - ADD A TASK TO THE SYSTEM

INT D4 23-- - PC-MOS/386 v5.01 - CHANGE TERMINAL DRIVER

INT D4 24-- - PC-MOS/386 v5.01 - GET OPERATING SYSTEM SERIAL NUMBER

INT D4 25-- - PC-MOS/386 v5.01 - IDENTIFY LOAD ADDRESS OF DEVICE DRIVER LOCATION

INT D4 26-- - PC-MOS/386 v5.01 - GET SYSTEM CONTROL BLOCK SEGMENT/SELECTOR

INT D4 27-- - PC-MOS/386 v5.01 - GET TASK CONTROL BLOCK SEGMENT/SELECTOR

INT D4 28-- - PC-MOS/386 v5.01 - GET CONTROL BLOCK DATA FROM SCB OR TCB

INT D4 29-- - PC-MOS/386 v5.01 - WRITE CONTROL BLOCK DATA INTO SCB OR TCB

INT D4 2A-- - PC-MOS/386 v5.01 - SWAP CONTROL BLOCK DATA OF SCB OR TCB

INT D4 2C-- - PC-MOS/386 v5.01 - GET/SET SPOOLER PARAMETERS

INT D4 2D-- - PC-MOS/386 v5.01 - GET MAXIMUM TASK SIZE

Interrupts


INT D5 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D5 - IBM ROM BASIC - used while in interpreter

INT D5 ---- - IBM ROM BASIC - used while in interpreter

INT D5 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT D6 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D6 - IBM ROM BASIC - used while in interpreter

INT D6 ---- - IBM ROM BASIC - used while in interpreter

INT D6 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT D7 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D7 - IBM ROM BASIC - used while in interpreter

INT D7 ---- - IBM ROM BASIC - used while in interpreter

INT D7 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Interrupts


INT D8 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D8 - IBM ROM BASIC - used while in interpreter

INT D8 ---- - IBM ROM BASIC - used while in interpreter

INT D8 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D8 ---- - Screen Thief v1.00 - RELOCATED IRQ0

Interrupts


INT D9 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT D9 - IBM ROM BASIC - used while in interpreter

INT D9 ---- - IBM ROM BASIC - used while in interpreter

INT D9 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D9 ---- - Screen Thief v1.00 - RELOCATED IRQ1

Interrupts


INT DA - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT DA - IBM ROM BASIC - used while in interpreter

INT DA ---- - IBM ROM BASIC - used while in interpreter

INT DA ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT DA ---- - Screen Thief v1.00 - RELOCATED IRQ2

Interrupts


INT DB - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT DB - IBM ROM BASIC - used while in interpreter

INT DB ---- - IBM ROM BASIC - used while in interpreter

INT DB ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT DB ---- - Screen Thief v1.00 - RELOCATED IRQ3

Interrupts


INT DC - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT DC - IBM ROM BASIC - used while in interpreter

INT DC ---- - PC/370 v4.1- - API

INT DC ---- - IBM ROM BASIC - used while in interpreter

INT DC ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT DC ---- - Screen Thief v1.00 - RELOCATED IRQ4

Interrupts


INT DD - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT DD - IBM ROM BASIC - used while in interpreter

INT DD ---- - IBM ROM BASIC - used while in interpreter

INT DD ---- - STSC APL*PLUS/PC v9.0 - PLACE KEYSTROKE EVENTS IN INPUT BUFFER

INT DD ---- - Screen Thief v1.00 - RELOCATED IRQ5

Interrupts


INT DE - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT DE - IBM ROM BASIC - used while in interpreter

INT DE ---- - IBM ROM BASIC - used while in interpreter

INT DE ---- - APL*PLUS/PC - ???

INT DE ---- - Screen Thief v1.00 - RELOCATED IRQ6

Interrupts


INT DF - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT DF - IBM ROM BASIC - used while in interpreter

INT DF ---- - Victor 9000/Sirius 1 - SuperBIOS

INT DF ---- - IBM ROM BASIC - used while in interpreter

INT DF ---- - APL*PLUS/PC - SAME AS INT 10

INT DF ---- - Screen Thief v1.00 - RELOCATED IRQ7

Interrupts


INT E0 - IBM ROM BASIC - used while in interpreter; multiple purposes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E0 - IBM ROM BASIC - used while in interpreter; multiple purposes

INT E0 ---- - IBM ROM BASIC - used while in interpreter

INT E0 ---- - APL*PLUS/PC - RESTIME HIGH-RESOLUTION TIMER FOR QUAD MF FUNCTION

INT E0 ---- - VIRUS - "Micro-128" - ???

INT E0 ---- - DeskMate (Tandy) - DESK EXECUTIVE API

INT E0 ---- - CP/M-86, Concurrent CP/M, DR Multiuser DOS - FUNCTION CALLS

INT E0 ---- - DR Multiuser DOS - "A_READ" - READ CHARACTER FROM AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_WRITE" - WRITE CHARACTER TO AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_STATIN" - GET INPUT STATUS OF AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_STATOUT" - GET OUTPUT STATUS OF AUX DEVICE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "S_MEMORY" - RESERVE MEMORY IN GLOBAL AREA

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_MAKE" - CREATE MESSAGE QUEUE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_OPEN" - OPEN MESSAGE QUEUE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_READ" - READ MESSAGE QUEUE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_CREAD" - CONDITIONALLY READ MSG QUEUE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_WRITE" - WRITE MESSAGE QUEUE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_CWRITE" - CONDITIONALLY WRITE MSG QUEUE

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "P_DISPATCH" - CALL DISPATCHER

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "P_PRIORITY" - SET PROCESS PRIORITY

INT E0 ---- - ConcCP/M,DR Multiuser DOS - "C_DETACH" - DETACH FROM DEFAULT CONSOLE

INT E0 ---- - DR Multiuser DOS - "A_ATTACH" - ATTACH AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_DETACH" - DETACH FROM AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_CATTACH" - CONDITIONALLY ATTACH TO AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_SET" - SET DEFAULT AUX DEVICE NUMBER

INT E0 ---- - DR Multiuser DOS - "A_GET" - GET DEFAULT AUX DEVICE NUMBER

INT E0 ---- - DR Multiuser DOS - "A_READBLK" - READ STRING FROM AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_WRITEBLK" - WRITE STRING TO AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "A_CONFIG" - GET/SET AUX DEVICE PARAMETERS

INT E0 ---- - DR Multiuser DOS - "A_CONTROL" - GET/SET AUX CONTROL PARAMETERS

INT E0 ---- - DR Multiuser DOS - "A_BREAK" - SEND BREAK TO AUX DEVICE

INT E0 ---- - DR Multiuser DOS - "P_DELAY" - DELAY EXECUTION

INT E0 0000 - PCROBOTS v1.41 - "SWAPTASK" - END CURRENT ROBOT'S TURN

INT E0 0001 - PCROBOTS v1.41 - "MOVEMENT" - START MOVING

INT E0 0002 - PCROBOTS v1.41 - "SCAN" - SCAN FOR OTHER ROBOTS IN THE GIVEN DIRECTION

INT E0 0003 - PCROBOTS v1.41 - "SHOOT" - FIRE A SHELL AT ANOTHER ROBOT

INT E0 0010 - PCROBOTS v1.41 - "GETXY" - GET ROBOT'S CURRENT POSITION

INT E0 0011 - PCROBOTS v1.41 - "TRANSMIT" - SEND DATA TO ANOTHER ROBOT

INT E0 0012 - PCROBOTS v1.41 - "RECEIVE" - GET DATA FROM OTHER ROBOTS

INT E0 0013 - PCROBOTS v1.41 - "DAMAGE" - DETERMINE HOW MUCH DAMAGE SUSTAINED

INT E0 0014 - PCROBOTS v1.41 - "SPEED" - DETERMINE HOW FAST ROBOT IS MOVING

INT E0 0015 - PCROBOTS v1.41 - "BATTERY" - DETERMINE HOW MUCH BATTERY POWER LEFT

INT E0 0016 - PCROBOTS v1.41 - "TICKS" - DETERMINE HOW LONG SINCE GAME STARTED

INT E0 0017 - PCROBOTS v1.41 - "L_SIN" - GET SCALED SINE OF AN ANGLE

INT E0 0018 - PCROBOTS v1.41 - "L_COS" - GET SCALED COSINE OF AN ANGLE

INT E0 0019 - PCROBOTS v1.41 - "L_TAN" - GET SCALED TANGENT OF AN ANGLE

INT E0 001A - PCROBOTS v1.41 - "L_ATAN" - GET ANGLE GIVEN SCALED TANGENT

INT E0 001B - PCROBOTS v1.41 - "SQRT" - DETERMINE SQUARE ROOT OF A NUMBER

INT E0 001C - PCROBOTS v1.41 - "SET_PATTERN" - SPECIFY ROBOT'S DISPLAY IMAGE

INT E0 001D - PCROBOTS v1.41 - "DEBUG_FLAG" - SET/CLEAR MARKERS NEXT TO ROBOT'S NAME

INT E0 001E - PCROBOTS v1.41 - "BUY_ARMOUR" - BUY OR SELL ARMOR FOR ROBOT

INT E0 001F - PCROBOTS v1.41 - "BUY_SHELLS" - BUY ADDITIONAL CANNON SHELLS

INT E0 0020 - PCROBOTS v1.41 - "SHELLS LEFT" - DETERMINE HOW MANY SHELLS ROBOT HAS

INT E0 0021 - PCROBOTS v1.41 - "GET LOCAL MAP"

INT E0 0022 - PCROBOTS v1.41 - "INVISIBILITY" - CONTROL ROBOT'S INVISIBILITY DEVICE

INT E0 0023 - PCROBOTS v1.41 - "GET_SHELL_STATUS" - FIND OUT WHAT HAPPENED TO SHELL

INT E0 0024 - PCROBOTS v1.41 - "IS_INVISIBLE" - DETERMINE WHETHER ROBOT IS INVISIBLE

INT E0 0025 - PCROBOTS v1.41 - "L_ATAN2" - GET ARCTANGENT

INT E0 0026 - PCROBOTS v1.41 - "GET_ROBOT_ID" - DETERMINE CURRENT ROBOT'S IDENTIFIER

INT E0 0027 - PCROBOTS v1.41 - "REGISTER_IFF" - REGISTER FRIEND/FOE IDENT STRING

INT E0 0028 - PCROBOTS v1.41 - "CHECK_IFF" - QUERY FRIEND/FOE IDENTIFICATION STRING

INT E0 0029 - PCROBOTS v1.41 - "REGISTER_NAME" - SPECIFY ROBOT'S NAME

INT E0 002A - PCROBOTS v1.41 - "FIND_NAME" - SEARCH FOR ROBOT WITH GIVEN NAME

INT E0 002B - PCROBOTS v1.41 - "GET_TEAM_ID" - DETERMINE TEAM MEMBERSHIP OF ROBOT

INT E0 002C - PCROBOTS v1.41 - "GET_ASHELL_STATUS" - FIND OUT WHAT HAPPENED TO SHELL

INT E0 002D - PCROBOTS v1.41 - "REGISTER_X" - SELECT AUTOMATIC X POSITION UPDATES

INT E0 002E - PCROBOTS v1.41 - "REGISTER_Y" - SELECT AUTOMATIC Y POSITION UPDATES

INT E0 0080 - PCROBOTS v1.41 - "CONFIGURE" - CUSTOMIZE ROBOT

Interrupts


INT E1 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E1 - IBM ROM BASIC - used while in interpreter

INT E1 ---- - IBM ROM BASIC - used while in interpreter

INT E1 ---- - PC Cluster Disk Server Information (NOT A VECTOR!)

INT E1 ---- - MP/M-86, - ALTERNATE CP/M-86 FUNCTION CALLS

INT E1 ---- - DeskMate (Tandy) - TASK DATA SEGMENTS (NOT A VECTOR!)

Interrupts


INT E2 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E2 - IBM ROM BASIC - used while in interpreter

INT E2 ---- - IBM ROM BASIC - used while in interpreter

INT E2 ---- - PC Cluster Program - RELOCATED INT 1C

Interrupts


INT E3 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E3 - IBM ROM BASIC - used while in interpreter

INT E3 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT E4 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E4 - IBM ROM BASIC - used while in interpreter

INT E4 0005 - Logitech Modula v2.0 - MonitorEntry

INT E4 0006 - Logitech Modula v2.0 - MonitorExit

INT E4 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT E5 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E5 - IBM ROM BASIC - used while in interpreter

INT E5 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT E6 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E6 - IBM ROM BASIC - used while in interpreter

INT E6 ---- - IBM ROM BASIC - used while in interpreter

INT E6 00-- - Linux DOSEMU - INSTALLATION CHECK

INT E6 01-- - Linux DOSEMU - REGISTER DUMP

INT E6 02-- - Linux DOSEMU - SET I/O PORT PERMISSIONS

INT E6 05-- - Linux DOSEMU - STARTUP BANNER

INT E6 12-- - Linux DOSEMU - SET "HOGTHRESHOLD"

INT E6 22-- - Linux DOSEMU - GET EMS STATUS

INT E6 30-- - Linux DOSEMU - SET BOOTDISK FLAG

INT E6 50-- - Linux DOSEMU - EXECUTE UNIX COMMAND

INT E6 51-- - Linux DOSEMU - EXECUTE DOS COMMAND FROM UNIX

INT E6 80-- - Linux DOSEMU - GET CURRENT UNIX DIRECTORY

INT E6 81-- - Linux DOSEMU - CHANGE CURRENT UNIX DIRECTORY

INT E6 FF-- - Linux DOSEMU - TERMINATE

Interrupts


INT E7 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E7 - IBM ROM BASIC - used while in interpreter

INT E7 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT E8 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E8 - IBM ROM BASIC - used while in interpreter

INT E8 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT E9 - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT E9 - IBM ROM BASIC - used while in interpreter

INT E9 ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT EA - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT EA - IBM ROM BASIC - used while in interpreter

INT EA ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT EB - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT EB - IBM ROM BASIC - used while in interpreter

INT EB ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT EC - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT EC - IBM ROM BASIC - used while in interpreter

INT EC ---- - IBM ROM BASIC - used while in interpreter

INT EC ---- - used by Alloy NTNX

INT EC ---- - Exact - RUNTIME INTERFACE MULTIPLEXOR

Interrupts


INT ED - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT ED - IBM ROM BASIC - used while in interpreter

INT ED ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT EE - IBM ROM BASIC - used while in interpreter
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT EE - IBM ROM BASIC - used while in interpreter

INT EE ---- - IBM ROM BASIC - used while in interpreter

Interrupts


INT EF - BASIC - ORIGINAL INT 09 VECTOR
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT EF - BASIC - ORIGINAL INT 09 VECTOR

INT EF ---- - BASIC - ORIGINAL INT 09 VECTOR

INT EF ---- - GEM - INTERFACE

Interrupts


INT F0 - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F0 - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR

INT F0 ---- - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR

Interrupts


INT F1 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F1 - reserved for user interrupt

INT F1 ---- - reserved for user interrupt

INT F1 ---- - SPEECH.COM - CONVERT TEXT STRING TO SPEECH

INT F1 ---- - Andy C. McGuire SPEECH.COM/SAY.COM

INT F1 ---- - AQUEDUCT, PIPELINE - GET DATA AREA ADDRESS

INT F1 ---- - NetWare Remote Boot - INSTALLATION CHECK (NOT A VECTOR!)

INT F1 ---- - VIRUS - "Violetta" - ???

INT F1 01-- - Common ISDN API (CAPI) v1.1 - "API-REGISTER" - INITIALIZE CAPI

INT F1 --01 - Common ISDN API (CAPI) v2.0 - "CAPI_REGISTER" - INITIALIZE CAPI

INT F1 02-- - Common ISDN API (CAPI) v1.1 - "API-RELEASE" - UNREGISTER FROM CAPI

INT F1 --02 - Common ISDN API (CAPI) v2.0 - "CAPI_RELEASE" - UNREGISTER FROM CAPI

INT F1 03-- - Common ISDN API (CAPI) v1.1 - "API-PUT-MESSAGE"

INT F1 --03 - Common ISDN API (CAPI) v2.0 - "CAPI_PUT_MESSAGE"

INT F1 04-- - Common ISDN API (CAPI) v1.1 - "API-GET-MESSAGE"

INT F1 --04 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_MESSAGE"

INT F1 05-- - Common ISDN API (CAPI) v1.1 - "API-SET-SIGNAL" - SIGNAL HANDLING

INT F1 --05 - Common ISDN API (CAPI) v2.0 - "CAPI_SET_SIGNAL" - SIGNAL HANDLING

INT F1 06-- - Common ISDN API (CAPI) v1.1 - "API-DEINSTALL" - UNINSTALL

INT F1 F0-- - Common ISDN API (CAPI) v1.1 - "API-GET-MANUFACTURER"

INT F1 --F0 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_MANUFACTURER"

INT F1 F1-- - Common ISDN API (CAPI) v1.1 - "API-GET-VERSION"

INT F1 --F1 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_VERSION"

INT F1 F2-- - Common ISDN API (CAPI) v1.1 - "API-GET-SERIAL-NUMBER"

INT F1 --F2 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_SERIAL_NUMBER"

INT F1 --F3 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_PROFILE" - GET CAPABILITIES

INT F1 FF-- - Common ISDN API (CAPI) v1.1 - "API-MANUFACTURER" - VENDOR-SPECIFIC

INT F1 --FF - Common ISDN API (CAPI) v2.0 - "CAPI_MANUFACTURER" - VENDOR-SPECIFIC

Interrupts


INT F2 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F2 - reserved for user interrupt

INT F2 ---- - reserved for user interrupt

INT F2 ---- - Andy C. McGuire SPEECH.COM/SAY.COM

INT F2 ---- - NetWare Remote Boot - ORIGINAL INT 13

INT F2 ---- - ICCTSR 1.0 - ImageCapture COLOR Developer's Kit - API

Interrupts


INT F3 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F3 - reserved for user interrupt

INT F3 ---- - reserved for user interrupt

INT F3 ---- - SoundBlaster - POINTER TO ECHO VALUE

INT F3 ---- - ICCTSR 1.0 - HANDSHAKE ID VECTOR

INT F3 ---- - NetWare Remote Boot - BOOT ROM'S INT 13 HANDLER

Interrupts


INT F4 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F4 - reserved for user interrupt

INT F4 ---- - reserved for user interrupt

INT F4 ---- - DoubleDOS - GIVE UP REST OF CURRENT CLOCK TICK AND ALL OF NEXT TICK

INT F4 ---- - NetWare Remote Boot - ???

Interrupts


INT F5 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F5 - reserved for user interrupt

INT F5 ---- - reserved for user interrupt

INT F5 ---- - DoubleDOS - ???

Interrupts


INT F6 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F6 - reserved for user interrupt

INT F6 ---- - reserved for user interrupt

INT F6 ---- - DoubleDOS - ???

Interrupts


INT F7 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F7 - reserved for user interrupt

INT F7 ---- - reserved for user interrupt

INT F7 ---- - DoubleDOS - ???

INT F7 00-- - FSBBS 2.0 - CONFIGURATION RECORD

INT F7 01-- - FSBBS 2.0 - USER RECORD

INT F7 02-- - FSBBS 2.0 - GET ACCOUNT NAME

INT F7 03-- - FSBBS 2.0 - TERMINAL NUMBER

INT F7 04-- - FSBBS 2.0 - PASSDATA BUFFER

INT F7 05-- - FSBBS 2.0 - TIMER FUNCTIONS

INT F7 06-- - FSBBS 2.0 - FUNCTION AVAILABILITY

INT F7 07-- - FSBBS 2.0 - DUMP FUNCTIONS

Interrupts


INT F8 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F8 - reserved for user interrupt

INT F8 ---- - reserved for user interrupt

INT F8 ---- - Sanyo MBC-550 - IRQ0 - 100 HZ INTERRUPT

INT F8 ---- - DoubleDOS - ???

Interrupts


INT F9 - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT F9 - reserved for user interrupt

INT F9 ---- - reserved for user interrupt

INT F9 ---- - DoubleDOS - ???

INT F9 ---- - Sanyo MBC-550 - IRQ1 - ???

Interrupts


INT FA - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT FA - reserved for user interrupt

INT FA ---- - reserved for user interrupt

INT FA ---- - Sanyo MBC-550 - IRQ2 - SERIAL PORT USART INTERRUPT

INT FA ---- - DoubleDOS - TURN OFF TIMESHARING

Interrupts


INT FB - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT FB - reserved for user interrupt

INT FB ---- - reserved for user interrupt

INT FB ---- - Sanyo MBC-550 - IRQ3 - KEYBOARD USART RECEIVE INTERRUPT

INT FB ---- - DoubleDOS - TURN ON TIMESHARING

Interrupts


INT FC - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT FC - reserved for user interrupt

INT FC ---- - reserved for user interrupt

INT FC ---- - DoubleDOS - GET CURRENT SCREEN BUFFER ADDRESS

INT FC ---- - Sanyo MBC-550 - IRQ4 - ???

Interrupts


INT FD - reserved for user interrupt
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT FD - reserved for user interrupt

INT FD ---- - reserved for user interrupt

INT FD ---- - DoubleDOS - ???

INT FD ---- - Sanyo MBC-550 - IRQ5 - ???

INT FD ---- - TFPCX - INSTALLATION CHECK

INT FD 01-- - TFPCX - TEST FOR CHARACTER WAITING

INT FD 02-- - TFPCX - GET CHARACTER

INT FD 03-- - TFPCX - OUTPUT CHARACTER

INT FD FE-- - TFPCX - GET VERSION

Interrupts


INT FE - AT/XT286/PS50+ - destroyed by return from protected mode
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT FE - AT/XT286/PS50+ - destroyed by return from protected mode

INT FE ---- - AT/XT286/PS50+ - destroyed by return from protected mode

INT FE ---- - DoubleDOS - GIVE UP TIME

INT FE ---- - Turbo Debugger 8086 v2.5+ - OVERLAY MANAGER

INT FE ---- - Sanyo MBC-550 - IRQ6 - ???

Interrupts


INT FF - AT/XT286/PS50+ - destroyed by return from protected mode
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

INT FF - AT/XT286/PS50+ - destroyed by return from protected mode

INT FF ---- - AT/XT286/PS50+ - destroyed by return from protected mode

INT FF ---- - Z100 - WARM BOOT

INT FF ---- - Sanyo MBC-550 - IRQ7 - ???

INT FF ---- - QEMM-386.SYS v6.0+ - internal

INT FF ---- - VIRUS - "Violetta" - ???

INT FF ---- - PC/FORTH - GRAPHICS API - VIDEO STATUS CHANGE

INT FF ---- - PC/FORTH - GRAPHICS API

Interrupts


Notes
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Notes

Admin

FILELIST

CONTACT_INFO


FILELIST
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

FILELIST

Category: ! - note

Please redistribute the following files unmodified as a group, in a quartet of

archives named INTER47A through INTER47D (preferably the original authenticated

PKZIP archives):

INTERRUP.1ST	the read-me file, containing credits, availability info

INTERRUP.A	INT 00 through INT 13/2F  \

INTERRUP.B	INT 13/30 through INT 15/4F\

INTERRUP.C	INT 15/50 through INT 1A/5F \

INTERRUP.D	INT 1A through INT 21/43     \	 total 1856 pages at

INTERRUP.E	INT 21/44 through INT 21/5F   \	 60 lines per page,

INTERRUP.F	INT 21/60 through INT 21/FE    > 1979 with INTPRINT -p

INTERRUP.G	INT 21/FF through INT 2F/42   /	 (7400 entries)

INTERRUP.H	INT 2F/43 through INT 2F/CF  /	 (2734 tables)

INTERRUP.I	INT 2F/D0 through INT 5A    /

INTERRUP.J	INT 5B through INT 61	   /

INTERRUP.K	INT 62 through INT 6E	  /

INTERRUP.L	INT 6F through INT 7F	 /

INTERRUP.M	INT 80 through INT FF   /

INTERRUP.PRI	a brief introduction to interrupts

INTPRINT.COM	a simple formatter that also generates a list summary

INTPRINT.DOC	instructions for INTPRINT

OVERVIEW.LST	brief listing of major uses of each interrupt

86BUGS.LST	a listing of CPU bugs and undocumented features

CMOS.LST	a description of the CMOS RAM data bytes

FARCALL.LST	APIs available through FAR CALLs

GLOSSARY.LST	a glossary of terms, abbreviations, and acronyms

MEMORY.LST	format of the BIOS data area

OPCODES.LST	a listing of recent and undocumented CPU instructions

PORTS.LST	a listing of I/O ports

CATEGORY.KEY	descriptions of divider-line category letters

COMBINE.BAT	combine the pieces of the list into a single file

The following files should be distributed in an archive called INTER47E:

86BUGSnn.ZIP	programs to test for CPU bugs

INT.*	invoke interrupts from commandline

INT2GUID.*	convert list into TurboPower GUIDE or POPHELP database

INT2HLP.ZIP	convert list into QuickHelp database

INT2QH.*	program to convert list into QuickHelp database

INTHLP??.ZIP	Interrupt Helper viewer for the interrupt list

INTHELP.*	convert list into TurboPower GUIDE database

INTLIST.E	Epsilon extension for handling list

INTPRINT.C	source code for INTPRINT

RB2NG???.ZIP	convert list into Norton Guides database

INTERVUE.EXE	indexed interrupt list browser

INTLIST.ICO	Windows icon for INTERVUE

IV.BAT	wrapper for INTERVUE

Finally, the following should be distributed in an archive called INTER47F:

INT2WHLP.ZIP	convert list into Windows Help database

HINTSRCH.ZIP	WinHelp DLL for full-text searches of interrupt list

WH_ED*.ZIP	WinHelp-file editor

Notes


CONTACT_INFO

Category: ! - note

If you notice any mistakes or omissions, please let me know!  It is only with

YOUR help that the list can continue to grow at the current rate.  Please send

all changes to me rather than distributing a modified version of the list.

Please read the file INTERRUP.1ST before asking me any questions.  You may find

that they have already been addressed.

 Ralf Brown

Internet: ralf@telerama.lm.com

UUCP: {uunet,harvard}!telerama.lm.com!ralf

FIDO: Ralf Brown 1:129/26.1

or post a message to me in the DR_DEBUG echo (I probably won't see it

unless you address it to me)

CIS:  >INTERNET:ralf@telerama.lm.com

I reply to all e-mail submissions and inquiries, but some of my replies bounce

because of bad return paths.  If you don't get a response from me within a

reasonable period of time, send it again with a better return path (starting at

harvard or ucbvax for UUCP, from the Internet for others).

Notes


Note

Category: ! - note

See INTERRUP.1ST for the key to system abbreviations and a list of the

trademarks mentioned here.

Notes


DISCLAIMER

Category: ! - note

DISCLAIMER:  THIS MATERIAL IS PROVIDED "AS IS".	 I verify the information

contained in this list to the best of my ability, but I cannot be held

responsible for any problems caused by use or misuse of the information,

especially for those functions not officially documented.  If it is marked

"internal" or undocumented, you should check it carefully to make sure it

works the same way in your version of the software (and please let me know

whether or not it works the same way).	Information marked with "???" is

known to be incomplete or guesswork.

Notes


FLAGS

Category: ! - note

The use of -> instead of = signifies that the indicated register or register

pair contains a pointer to the specified item, rather than the item itself.

One or more letters may follow the interrupt number; they have the following

meanings:  U - undocumented function, u - partially documented function,

P - available only in protected mode, R - available only in real or V86 mode,

C - callout or callback (usually hooked rather than called),

O - obsolete (no longer present in current versions)

Notes


CATEGORIES

Category: ! - note

The ninth column of the divider line preceding an entry usually contains a

classification code (the entry has not been classified if that character is

a dash).  The codes currently in use are:

A - applications, a - access software (screen readers, etc),

B - BIOS, b - vendor-specific BIOS extensions,

C - CPU-generated, c - caches/spoolers,

D - DOS kernel, d - disk I/O enhancements,

E - DOS extenders, e - electronic mail, F - FAX,

f - file manipulation, G - debuggers/debugging tools, g - games,

H - hardware, h - vendor-specific hardware,

I - IBM workstation/terminal emulators, i - system info/monitoring,

J - Japanese, j - joke programs,

K - keyboard enhancers, k - file/disk compression,

l - shells/command interpreters,

M - mouse/pointing device, m - memory management,

N - network, n - non-traditional input devices,

O - other operating systems,

P - printer enhancements, p - power management,

Q - DESQview/TopView and Quarterdeck programs,

R - remote control/file access, r - runtime support,

S - serial I/O, s - sound/speech,

T - DOS-based task switchers/multitaskers, t - TSR libraries

U - resident utilities, u - emulators,

V - video, v - virus/antivirus,

W - MS Windows, X - expansion bus BIOSes,

y - security, * - reserved (and not otherwise classified)

Notes


INT 00 ---- - CPU-generated - DIVIDE ERROR

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	generated if the divisor of a DIV or IDIV instruction is zero or the

  quotient overflows the result register; DX and AX will be unchanged.

Notes:	on an 8086/8088, the return address points to the following instruction

on an 80286+, the return address points to the divide instruction

an 8086/8088 will generate this interrupt if the result of a division

  is 80h (byte) or 8000h (word)

SeeAlso: INT 04

INT 00


INT 00 ---- - Zenith - ROM DEBUGGER

Category: G - debuggers/debugging tools

Inp.:

Desc:	invokes the ROM Debugger when at the BIOS level; equivalent to

  pressing Ctrl-Alt-Ins on booting.

Note:	since DOS revectors INT 00, it is necessary to restore this vector to

  its original ROM BIOS value in order to invoke the debugger once DOS

  loads

SeeAlso: INT 03"Columbia"

INT 00


INT 01 ---- - CPU-generated - SINGLE STEP

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	generated after each instruction if TF (trap flag) is set; TF is

  cleared on invoking the single-step interrupt handler

Notes:	interrupts are prioritized such that external interrupts are invoked

  after the INT 01 pushes CS:IP/FLAGS and clears TF, but before the

  first instruction of the handler executes

used by debuggers for single-instruction execution tracing, such as

  MS-DOS DEBUG's T command

SeeAlso: INT 03

INT 01


INT 01 ---- - CPU-generated (80386+) - DEBUGGING EXCEPTIONS

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	generated by the CPU on various occurrences which may be of interest

  to a debugger program

Note:	events which may trigger the interrupt:

  Instruction address breakpoint fault - will return to execute inst

  Data address breakpoint trap - will return to following instruction

  General detect fault, debug registers in use

  Task-switch breakpoint trap

  undocumented 386/486 opcode F1h - will return to following instruc

SeeAlso: INT 03

INT 01


INT 02 ---- - external hardware - NON-MASKABLE INTERRUPT

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	generated by the CPU when the input to the NMI pin is asserted

Notes:	return address points to start of interrupted instruction on 80286+

on the 80286+, further NMIs are disabled until the next IRET

  instruction, but one additional NMI is remembered by the hardware

  and will be serviced after the IRET instruction reenables NMIs

maskable interrupts may interrupt the NMI handler if interrupts are

  enabled

although the Intel documentation states that this interrupt is

  typically used for power-failure procedures, it has many other uses

  on IBM-compatible machines:

Memory parity error: all except Jr, CONV, and some machines

  without memory parity

Breakout switch on hardware debuggers

Coprocessor interrupt: all except Jr and CONV

Keyboard interrupt: Jr, CONV

I/O channel check: CONV, PS50+

Disk-controller power-on request: CONV

System suspend: CONV

Real-time clock: CONV

System watch-dog timer, time-out interrupt: PS50+

DMA timer time-out interrupt: PS50+

Low battery: HP 95LX

Module pulled: HP 95LX

INT 02


INT 03 ---- - CPU-generated - BREAKPOINT

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	generated by the one-byte breakpoint instruction (opcode CCh)

Notes:	used by debuggers to implement breakpoints, such as MS-DOS DEBUG's G

  command

also used by Turbo Pascal versions 1,2,3 when {$U+} specified

return address points to byte following the breakpoint instruction

called by Novell DOS 7 EMM386 after displaying an exception error

  message (GPF, illegal opcodes, etc.) and before waiting for user

  input

called by QEMM-386 if the user presses 'I' (undocumented) when prompted

  after an exception error message

SeeAlso: INT 01

INT 03


INT 03 ---- - Columbia PCs (desktop,VP portables) - ROM DEBUGGER

Category: G - debuggers/debugging tools

Inp.:

Desc:	invokes the ROM Debugger if INT 03 has not been revectored; equivalent

  to pressing Esc on booting.

SeeAlso: INT 00"Zenith",INT 03"Realia"

INT 03


INT 03 ---- - Realia COBOL - DEBUGGER SUPPORT

Category: G - debuggers/debugging tools

Inp.:

Note:	Realia COBOL checks for a signature eight bytes prior to the interrupt

  handler when it starts up

BUG:	if the offset of the INT 03 vector is less than 8, the compiler and

  all executables generated by it will crash the system

SeeAlso: INT 03"Columbia"

INT 03


INT 03 ---- - Watcom WVIDEO, Watcom WD - OUTPUT DEBUGGING MESSAGE

undocumented function

Category: G - debuggers/debugging tools

Inp.:

STACK:	DWORD	selector

DWORD	offset of ASCIZ message to display

Notes:	the INT 03h instruction which invokes the debugger must be followed by

  a JMP SHORT and the signature string "WVIDEO"

to check whether this interface is available, define a public byte

  variable named ___WD_Present, which the debugger will set to 01h

  before running the program

SeeAlso: AX=0910h

INT 03


INT 03 ---- - DTown Utilities - POP UP

Category: U - resident utilities

Inp.:

Program: DTown Software Development's DTown Utilities contains various tools

  which are useful to programmers, such as a memory viewer and

  disassembler

Note:	DTU pops up on INT 03 (if not hooked by a debugger) to allow the

  user to inspect memory or code when the machine crashes; various

  memory managers will invoke INT 03 when displaying a CPU exception

  error message (either automatically or when the user presses a

  particular key)

INT 03


INT 03 0910 - Soft-ICE - BACK DOOR COMMANDS - DISPLAY STRING IN Soft-ICE WINDOW

Category: G - debuggers/debugging tools

Inp.:

AX = 0910h

SI = magic value 4647h ('FG')

DI = magic value 4A4Dh ('JM')

DS:DX -> ASCIZ string to display (max 100 bytes, 0Dh OK)

Program: Soft-ICE is a debugger by Nu-Mega Technologies, Inc.

SeeAlso: INT 03"WVIDEO"

INT 03


INT 03 0911 - Soft-ICE - BACK DOOR COMMANDS - EXECUTE Soft-ICE COMMAND

Category: G - debuggers/debugging tools

Inp.:

AX = 0911h

SI = magic value 4647h ('FG')

DI = magic value 4A4Dh ('JM')

DS:DX -> ASCIZ command string (max 100 bytes, 0Dh OK)

INT 03


INT 03 0912 - Soft-ICE - BACK DOOR COMMANDS - GET BREAKPOINT INFORMATION

Category: G - debuggers/debugging tools

Inp.:

AX = 0912h

SI = magic value 4647h ('FG')

DI = magic value 4A4Dh ('JM')

Return: BH = entry number of last breakpoint set

BL = type of last breakpoint set (see #0001)

DH = entry number of last breakpoint to be triggered

DL = type of last triggered breakpoint (see #0001)

Program: Soft-ICE is a debugger by Nu-Mega Technologies, Inc.

SeeAlso: AX=0913h,AX=0914h

INT 03


INT 03 0913 - Soft-ICE v2.5x - BACK DOOR COMMANDS - SET Soft-ICE BREAKPOINT

Category: G - debuggers/debugging tools

Inp.:

AX = 0913h

SI = magic value 4647h ('FG')

DI = magic value 4A4Dh ('JM')

DS:DX -> breakpoint structure (see #0002)

Return: AX = status

    00h successful

BX = breakpoint number

    03h breakpoint table full

    06h memory limit error

    07h I/O limit error

    09h range limit error

    16h duplicate breakpoint

SeeAlso: AX=0912h,AX=0914h

INT 03


INT 03 0914 - Soft-ICE v2.5x - BACK DOOR COMMANDS - REMOVE Soft-ICE BREAKPOINT

Category: G - debuggers/debugging tools

Inp.:

AX = 0914h

SI = magic value 4647h ('FG')

DI = magic value 4A4Dh ('JM')

BX = breakpoint number (returned by AX=0913h)

Return: BX = ???

Program: Soft-ICE is a debugger by Nu-Mega Technologies, Inc.

SeeAlso: AX=0912h,AX=0913h

INT 03


INT 04 ---- - CPU-generated - INTO DETECTED OVERFLOW

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	the INTO instruction will generate this interrupt if OF (Overflow Flag)

  is set; otherwise, INTO is effectively a NOP

Note:	may be used for convenient overflow testing (to prevent errors from

  propagating) instead of JO or a JNO/JMP combination

SeeAlso: INT 00

INT 04


INT 05 ---- - PRINT SCREEN

Category: B - BIOS

Inp.:

Desc:	dump the current text screen to the first printer

Notes:	normally invoked by the INT 09 handler when PrtSc key is pressed, but

  may be invoked directly by applications

byte at 0050h:0000h contains status used by default handler

  00h not active

  01h PrtSc in progress

  FFh last PrtSc encountered error

default handler is at F000h:FF54h in IBM PC and 100%-compatible BIOSes

BUG:	some old BIOSes/applications appear to destroy BP on return

SeeAlso: INT 10/AH=12h/BL=20h,INT 5E"TI Professional",INT 80"Phar Lap"

INT 05


INT 05 ---- - CPU-generated (80186+) - BOUND RANGE EXCEEDED

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	generated by BOUND instruction when the value to be tested is less than

  the indicated lower bound or greater than the indicated upper bound.

Note:	returning from this interrupt re-executes the failing BOUND instruction

INT 05


INT 05 454A - PSPS v2.01 - EJECT PAGE

undocumented function

Category: P - printer enhancements

Inp.:

AX = 454Ah ('EJ')

Program: PSPS is shareware PostScript PrintScreen utility by A.N.D.

  Technologies

Note:	sends a ^D to the current printer

SeeAlso: AX=4E57h,AX=5053h,AX=554Eh

INT 05


INT 05 4E57 - PSPS v2.01 - SET PARAMETERS

undocumented function

Category: P - printer enhancements

Inp.:

AX = 4E57h ('NW')

ES:SI -> 11-byte buffer containing new settings

Return: buffer filled

SeeAlso: AX=454Ah,AX=5053h,INT 17/AH=63h

INT 05


INT 05 5053 - PSPS v2.01 - GET PARAMETERS

undocumented function

Category: P - printer enhancements

Inp.:

AX = 5053h ('PS')

ES:SI -> 11-byte buffer for settings

Return: buffer filled

SeeAlso: AX=4E57h,AX=554Eh,INT 17/AH=64h

INT 05


INT 05 554E - PSPS v2.01 - UNINSTALL

undocumented function

Category: P - printer enhancements

Inp.:

AX = 554Eh ('UN')

Program: PSPS is shareware PostScript PrintScreen utility by A.N.D.

  Technologies

SeeAlso: AX=454Ah,AX=4E57h,INT 17/AH=62h

INT 05


INT 06 ---- - CPU-generated (80286+) - INVALID OPCODE

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	this interrupt is generated when the CPU attempts to execute an

  invalid opcode (most protected-mode instructions are considered

  invalid in real mode) or a BOUND, LDS, LES, or LIDT instruction

  which specifies a register rather than a memory address

Notes:	return address points to beginning of invalid instruction

with proper programming, this interrupt may be used to emulate

  instructions which do not exist; many 386 BIOSes emulate the 80286

  undocumented LOADALL instruction which was removed from the 80386+

generated by the 80386+ when the LOCK prefix is used with instructions

  other than BTS, BTR, BTC, XCHG, XADD (486), CMPXCHG (486), INC, DEC,

  NOT, NEG, ADD, ADC, SUB, SBB, AND, OR, or XOR, or any instruction

  not accessing memory.

SeeAlso: INT 0C"CPU",INT 0D"CPU"

INT 06


INT 06 ---- - HP 95LX - SLEEP/WAKEUP

callout or callback (usually hooked rather than called)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	this interrupt is called just before going into light or deep

  (shutdown) sleep and just after returning from light or deep sleep

SeeAlso: INT 0B"HP 95LX",INT 15/AX=4DD4h,INT 15/AH=4Eh

INT 06


INT 06 ---- - no-name clone - GRAPHICS CHARACTER TABLE (NOT A VECTOR!)

undocumented function

Category: V - video

Inp.:

Desc:	points at graphics data for characters 00h-7Fh of the current font

SeeAlso: INT 43"EGA",INT 44"VIDEO"

INT 06


INT 07 ---- - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	this interrupt is automatically called if a coprocessor instruction is

  encountered when no coprocessor is installed

Note:	can be used to emulate a numeric coprocessor in software

SeeAlso: INT 09"MATH UNIT PROTECTION"

INT 07


INT 08 ---- - IRQ0 - SYSTEM TIMER

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	generated 18.2 times per second by channel 0 of the 8254 system timer,

  this interrupt is used to keep the time-of-day clock updated

Notes:	programs which need to be invoked regularly should use INT 1C unless

  they need to reprogram the timer while still keeping the time-of-day

  clock running at the proper rate

default handler is at F000h:FEA5h in IBM PC and 100%-compatible BIOSes

may be masked by setting bit 0 on I/O port 21h

SeeAlso: INT 1C,INT 4A,INT 50"DESQview",INT 58"DoubleDOS",INT 70,INT 78"GO32"

SeeAlso: INT D8"Screen Thief"

INT 08


INT 08 ---- - CPU-generated (80286+) - DOUBLE EXCEPTION DETECTED

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	called when multiple exceptions occur on one instruction, or an

  exception occurs in an exception handler

Notes:	called in protected mode if an interrupt above the defined limit of

  the interrupt vector table occurs

return address points at beginning of instruction with errors or the

  beginning of the instruction which was about to execute when the

  external interrupt caused the exception

if an exception occurs in the double fault handler, the CPU goes into

  SHUTDOWN mode (which circuitry in the PC/AT converts to a reset);

  this "triple fault" is a faster way of returning to real mode on

  many 80286 machines than the standard keyboard controller reset

INT 08


INT 09 ---- - IRQ1 - KEYBOARD DATA READY

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	this interrupt is generated when data is received from the keyboard.

  This is normally a scan code (from either a keypress *or* a key

  release), but may also be an ACK or NAK of a command on AT-class

  keyboards.

Notes:	this IRQ may be masked by setting bit 1 on I/O port 21h

if the BIOS supports an enhanced (101/102-key) keyboard, it calls

  INT 15/AH=4Fh after reading the scan code (see #0005) from the

  keyboard and before further processing; all further processing uses

  the scan code returned from INT 15/AH=4Fh

the default interrupt handler is at F000h:E987h in 100%-compatible

  BIOSes

the interrupt handler performs the following actions for certain

  special keystrokes:

    Ctrl-Break	 clear keyboard buffer, place word 0000h in buffer,

 invoke INT 1B, and set flag at 0040h:0071h

    SysReq	 invoke INT 15/AH=85h (SysReq is often labeled SysRq)

    Ctrl-Numlock place system in a tight wait loop until next INT 09

    Ctrl-Alt-Del jump to BIOS startup code (either F000h:FFF0h or the

   destination of the jump at that address)

    Shift-PrtSc	 invoke INT 05

    Ctrl-Alt-Plus (HP Vectra) enable keyclick

    Ctrl-Alt-Plus (many clones) set clock speed to high

    Ctrl-Alt-Minus (HP Vectra) reduce keyclick volume

    Ctrl-Alt-Minus (many clones) set clock speed to low

    Ctrl-Alt-SysReq (HP Vectra) generate hard reset

DRDOS hooks this interrupt to control the cursor shape (underscore/

  half block) for overwrite/insert mode

DR Multiuser DOS hooks this interrupt for cursor shape control and to

  control whether Ctrl-Alt-Del reboots the current session or the

  entire system

SeeAlso: INT 05,INT 0B"HP 95LX",INT 15/AH=4Fh,INT 15/AH=85h,INT 16,INT 1B

SeeAlso: INT 2F/AX=A901h,INT 4A"TI Professional",INT 51"DESQview"

SeeAlso: INT 59"DoubleDOS",INT 79"GO32"

INT 09


INT 09 ---- - CPU-generated (80286,80386) - PROCESSOR EXTENSION PROTECTION ERROR

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	called if the coprocessor attempts to access memory outside a segment

  boundary; it may occur at an arbitrary time after the coprocessor

  instruction was issued

Notes:	until the condition is cleared or the coprocessor is reset, the only

  coprocessor instruction which may be used is FNINIT; WAIT or other

  coprocessor instructions will cause a deadlock because the

  coprocessor is still busy waiting for data

for the 486+, a coprocessor protection error generates an INT 0D

SeeAlso: INT 07"CPU"

INT 09


INT 09 ---- - internal hardware - RESERVED BY Intel (80486)

available only in protected mode

Category: * - reserved (and not otherwise classified)

Inp.:

Note:	this exception has been moved to INT 0D

SeeAlso: INT 09"MATH",INT 0D

INT 09


INT 0A ---- - IRQ2 - LPT2 (PC), VERTICAL RETRACE INTERRUPT (EGA,VGA)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Notes:	the TOPS and PCnet adapters use this interrupt request line by default

DOS 3.2 revectors IRQ2 to a stack-switching routine

on ATs and above, the physical data line for IRQ2 is labeled IRQ9 and

  connects to the slave 8259.  The BIOS redirects the interrupt for

  IRQ9 back here.

under DESQview, only the INT 15h vector and BASIC segment address (the

  word at 0000h:0510h) may be assumed to be valid for the handler's

  process

many VGA boards do not implement the vertical retrace interrupt,

  including the IBM VGA Adapter where the traces are either cut or

  removed

SeeAlso: INT 52"DESQview",INT 5A"DoubleDOS",INT 71,INT 7A"GO32"

INT 0A


INT 0A ---- - IRQ2 - Tandy 1000-series HARD DISK

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Notes:	this interrupt may be masked by setting bit 2 on I/O port 21h

the Tandy 1000, 1000A, and 1000HD use IRQ2 for the hard disk; the

  1000EX, HX, RLX, RLX-HD, RLX-B, RLX-HD-B use IRQ5 instead; the

  1000RL, RL-HD, SL, SL/2, TL, TL/2, and TL/3 are jumper-selectable

  for either IRQ2 or IRQ5 (default IRQ5); the 1000SX and TX are

  DIP-switch selectable for IRQ2 or IRQ5 (default IRQ2); the RSX and

  RSX-HD use IRQ14.  Tandy systems which use IRQ2 for the hard disk

  interrupt use IRQ5 for vertical retrace.

SeeAlso: INT 52"DESQview",INT 5A"DoubleDOS",INT 71

INT 0A


INT 0A ---- - IRQ2 - ROLAND MPU MIDI INTERFACE

Category: H - hardware

Inp.:

Note:	newer Roland cards and MIDI interfaces by other manufacturers use

  a jumper-selectable IRQ, but software and hardware generally defaults

  to IRQ2

SeeAlso: INT 52"DESQview",INT 5A"DoubleDOS",INT 71,INT 7A"GO32"

INT 0A


INT 0A ---- - CPU-generated (80286+) - INVALID TASK STATE SEGMENT

callout or callback (usually hooked rather than called)

available only in protected mode

Category: C - CPU-generated

Inp.:

Desc:	automatically called during a task switch if the new TSS specified by

  the task gate is invalid for any of the following reasons:

TSS limit is less than 43 (80286) or 103 (80386/80486)

LDT selector invalid or segment not present

null SS selector, or SS selector outside LDT/GDT limit

stack segment is read-only

stack segment DPL differs from new CPL, or RPL <> CPL

CS selector is outside LDT/GDT limit or not code

non-conforming code segment's DPL differs from CPL

conforming code segment's DPL > CPL

DS/ES selectors outside LDT/GDT limit or not readable segments

Note:	the handler must use a task gate in order to have a valid TSS under

  which to execute; it must also reset the busy bit in the new TSS

SeeAlso: INT 0B"CPU"

INT 0A


INT 0B ---- - IRQ3 - SERIAL COMMUNICATIONS (COM2)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	automatically asserted by the UART when COM2 needs attention, if the

  UART has been programmed to generate interrupts

Notes:	the TOPS and PCnet adapters use this interrupt request line as an

  alternate

on PS/2s, COM2 through COM8 share this interrupt; on many PC's, COM4

  shares this interrupt

may be masked by setting bit 3 on I/O port 21h

SeeAlso: INT 0C"COM1",INT 53"DESQview",INT 5B"DoubleDOS",INT 7B"GO32"

INT 0B


INT 0B ---- - CPU-generated (80286+) - SEGMENT NOT PRESENT

callout or callback (usually hooked rather than called)

available only in protected mode

Category: C - CPU-generated

Inp.:

Desc:	generated when loading a segment register if the segment descriptor

  indicates that the segment is not currently in memory, unless the

  segment is an LDT (see INT 0A"CPU") or stack segment (see

  INT 0C"CPU") needed by a task switch

Note:	may be used to implement virtual memory by loading in segments as they

  are accessed, clearing the "not present" bit after loading

SeeAlso: INT 0A"CPU",INT 0E"hardware"

INT 0B


INT 0B ---- - HP 95LX - LOW-LEVEL KEYBOARD HANDLER

Category: h - vendor-specific hardware

Inp.:

Desc:	this is the lowest-level keyboard handler on an HP 95LX palmtop

Note:	debounces key, places the keycode in I/O register 60h, and calls INT 09

SeeAlso: INT 09,INT 0D"HP 95LX",INT 15/AX=4DD4h

INT 0B


INT 0C ---- - IRQ4 - SERIAL COMMUNICATIONS (COM1)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	automatically asserted by the UART when COM1 needs attention, if the

  UART has been programmed to generate interrupts

BUG:	this vector is modified but not restored by Direct Access v4.0, and

  may be left dangling by other programs written with the same version

  of compiled BASIC

Notes:	on many PC's, COM3 shares this interrupt

may be masked by setting bit 4 on I/O port 21h

SeeAlso: INT 0B"COM2",INT 54"DESQview",INT 5C"DoubleDOS",INT 7C"GO32"

INT 0C


INT 0C ---- - CPU-generated (80286+) - STACK FAULT

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	this interrupt is generated in protected mode on a stack overflow or

  underflow, or if an inter-level transition or task switch references

  a stack segment marked "not present"; it is generated in real mode

  on accessing a word operand at SS:FFFFh

Note:	the 80286 will shut down in real mode if SP=1 before a push.  On the

  PC AT and compatibles, external circuitry generates a reset on

  shutdown.

SeeAlso: INT 0B"CPU",INT 0D"CPU"

INT 0C


INT 0C ---- - IBM SYSTEM 36/38 WORKSTATION EMULATION - API POINTER

Category: I - IBM workstation/terminal emulators

Inp.:

Desc:	the IBM System 36/38 emulator may be invoked through a private API,

  whose entry point address (see #0006) is offset 100h in the segment

  pointed at by this vector

INT 0C


INT 0D ---- - IRQ5 - FIXED DISK (PC,XT), LPT2 (AT), reserved (PS/2)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Notes:	under DESQview, only the INT 15h vector and BASIC segment address (the

  word at 0000h:0510h) may be assumed to be valid for the handler's

  process

the Tandy 1000, 1000A, and 1000HD use IRQ2 for the hard disk; the

  1000EX, HX, RLX, RLX-HD, RLX-B, RLX-HD-B use IRQ5 instead; the

  1000RL, RL-HD, SL, SL/2, TL, TL/2, and TL/3 are jumper-selectable

  for either IRQ2 or IRQ5 (default IRQ5); the 1000SX and TX are

  DIP-switch selectable for IRQ2 or IRQ5 (default IRQ2); the RSX and

  RSX-HD use IRQ14.  Tandy systems which use IRQ2 for the hard disk

  interrupt use IRQ5 for vertical retrace.

may be masked by setting bit 5 on I/O port 21h

SeeAlso: INT 0E"IRQ6",INT 0F"IRQ7",INT 55"DESQview",INT 5D"DoubleDOS"

SeeAlso: INT 7D"GO32"

INT 0D


INT 0D ---- - IRQ5 - Tandy 1000 60 Hz RAM REFRESH

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	used to ensure that the dynamic RAM retains its contents in earlier

  1000-series models; later models use normal DMA for RAM refresh

  (some early models have no DMA unless it is added via an expansion

  card)

SeeAlso: INT 55

INT 0D


INT 0D ---- - HP 95LX - INFRARED INTERRUPT

Category: h - vendor-specific hardware

Inp.:

Desc:	this interrupt is used to perform communications over the infrared

  data link

SeeAlso: INT 0B"HP 95LX",INT 0E"HP 95LX",INT 15/AX=4DD4h

INT 0D


INT 0D ---- - CPU-generated (80286+) - GENERAL PROTECTION VIOLATION

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	the CPU generates this interrupt when it detects a protection violation

  which does not fit under any other category having a separate

  interrupt

Notes:	called in real mode when

    an instruction accesses a memory operand extending beyond offset

      FFFFh (i.e. WORD at FFFFh or DWORD at FFFDh or higher) in segment

      CS, DS, ES, FG, or GS

    a PUSH MEM or POP MEM instruction contains an invalid bit encoding

      in the second byte

    an instruction exceeds the maximum length allowed (10 bytes for

      80286, 15 bytes for 80386/80486)

    an instruction wraps from offset FFFFh to offset 0000h

called in protected mode on protection violations not covered by INT 06

  through INT 0C, including

    segment limit violations

    write to read-only segments

    accesses using null DS or ES selectors

    accesses to segments with privilege greater than CPL

    wrong descriptor type

called on 80486 protected-mode floating-point protection fault

SeeAlso: INT 09"80486",INT 0C"STACK"

INT 0D


INT 0E ---- - IRQ6 - DISKETTE CONTROLLER

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	this interrupt is generated by the floppy disk controller on

  completion of an operation

Notes:	default handler is at F000h:EF57h in IBM PC and 100%-compatible BIOSes

may be masked by setting bit 6 on I/O port 21h

SeeAlso: INT 0D"IRQ5",INT 56"DESQview",INT 5E"DoubleDOS",INT 7E"GO32"

INT 0E


INT 0E ---- - CPU-generated (80386+ native mode) - PAGE FAULT

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	this interrupt is generated in protected and virtual-86 modes on

  attempting to access a 4K memory page whose page table entry has

  the "present" bit cleared

Note:	used to implement virtual memory

SeeAlso: INT 0B"hardware"

INT 0E


INT 0E ---- - HP 95LX - EXTERNAL CARD INTERRUPT

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0D"HP 95LX",INT 0F"HP 95LX",INT 15/AX=4DD4h

INT 0E


INT 0F ---- - IRQ7 - PARALLEL PRINTER

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	this interrupt is generated by the LPT1 printer adapter when the

  printer becomes ready

Notes:	most printer adapters do not reliably generate this interrupt

the 8259 interrupt controller generates an interrupt corresponding to

  IRQ7 when an error condition occurs

SeeAlso: INT 0D"LPT2",INT 57"DESQview",INT 5F"DoubleDOS",INT 7F"GO32"

INT 0F


INT 0F ---- - HP 95LX - REAL-TIME CLOCK

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0E"HP 95LX",INT 15/AX=4DD4h,INT 70

INT 0F


INT 10 ---- - CPU-generated (80286+) - COPROCESSOR ERROR

callout or callback (usually hooked rather than called)

Category: C - CPU-generated

Inp.:

Desc:	this interrupt is generated by the CPU when the -ERROR pin is asserted

  by the coprocessor

Note:	AT's and clones usually wire the coprocessor to use IRQ13, but not all

  get it right

SeeAlso: INT 09"hardware",INT 75

INT 10


INT 10 00-- - VIDEO - SET VIDEO MODE

Category: V - video

Inp.:

AH = 00h

AL = desired video mode (see #0009)

Return: AL = video mode flag (Phoenix, AMI BIOS)

    20h mode > 7

    30h modes 0-5 and 7

    3Fh mode 6

AL = CRT controller mode byte (Phoenix 386 BIOS v1.10)

Desc:	specify the display mode for the currently active display adapter

Notes:	IBM standard modes do not clear the screen if the high bit of AL is set

  (EGA or higher only)

the Tseng ET4000 chipset is used by the Orchid Prodesigner II, Diamond

  SpeedSTAR VGA, Groundhog Graphics Shadow VGA, Boca Super X VGA,

  Everex EV-673

the installation check for Ahead adapters is the signature "AHEAD" at

  C000h:0025h

the installation check for Paradise adapters is the signature "VGA=" at

  C000h:007Dh

the installation check for Oak Tech OTI-037/057/067/077 chipsets is the

  signature "OAK VGA" at C000h:0008h

the installation check for ATI adapters is the signature "761295520" at

  C000h:0031h; the byte at C000h:0043h indicates the chipset revision:

31h for 18800

32h for 18800-1

33h for 18800-2

34h for 18800-4

35h for 18800-5

  the two bytes at C000h:0040h indicate the adapter type

"22" EGA Wonder

"31" VGA Wonder

"32" EGA Wonder800+

  the byte at C000h:0042h contains feature flags

bit 1: mouse port present

bit 4: programmable video clock

  the byte at C000h:0044h contains additional feature flags if chipset

    byte > 30h (see #0008)

the installation check for Genoa video adapters is the signature

  77h XXh 99h 66h at C000h:NNNNh, where NNNNh is stored at C000h:0037h

  and XXh is

00h for Genoa 6200/6300

11h for Genoa 6400/6600

22h for Genoa 6100

33h for Genoa 5100/5200

55h for Genoa 5300/5400

  for SuperEGA BIOS v2.41+, C000h:0057h contains the product level

  for SuperEGA BIOS v3.0+, C000h:0070h contains the signature

    "EXTMODE", indicating support for extended modes

SeeAlso: AX=0070h,AX=007Eh,AX=10E0h,AX=10F0h,AH=40h,AX=6F05h,AH=FFh"GO32"

SeeAlso: INT 33/AX=0028h,INT 5F/AH=00h,INT 62/AX=0001h

Index:	installation check;Tseng ET4000|installation check;Ahead video cards

Index:	installation check;Oak Technologies|installation check;ATI video cards

Index:	installation check;Paradise video|installation check;Genoa video cards

INT 10


INT 10 0070 - VIDEO - Everex Micro Enhancer EGA/Viewpoint VGA - EXTENDED MODE SET

Category: V - video

Inp.:

AX = 0070h

BL = mode (see #0010)

Desc:	specify a proprietary display mode on the Everex Micro Enhancer or

  Viewpoint video adapters

SeeAlso: AH=00h,AX=6F05h,AX=7000h/BX=0004h,AH=FFh"GO32"

INT 10


INT 10 007E - VIDEO - Paradise VGA, AT&T VDC600 - SET SPECIAL MODE

Category: V - video

Inp.:

AX = 007Eh

BX = horizontal dimension of the mode desired

CX = vertical dimension of the mode desired

    (both BX/CX in pixels for graphics modes, rows for alpha modes)

DX = number of colors of the mode desired (0000h for monochrome modes)

Return: BH = 7Eh if successful (Paradise VGA)

AL = 7Eh if successful (AT&T VDC600)

Desc:	specify a display mode by resolution rather than mode number

SeeAlso: AH=00h,AX=0070h,AX=007Fh,AX=6F05h,AH=FFh"GO32"

Index:	video modes;Paradise|video modes;AT&T

INT 10


INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - SET VGA OPERATION

Category: V - video

Inp.:

AX = 007Fh

BH = 00h

Return: AL = 7Fh if successful (AT&T VDC600)

BH = status (Paradise/Dell)

    00h invalid function

    7Fh successful

SeeAlso: AX=007Fh/BH=01h,AX=007Fh/BH=02h

INT 10


INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - SET NON-VGA OPERATION

Category: V - video

Inp.:

AX = 007Fh

BH = 01h

Return: AL = 7Fh if successful (AT&T VDC600)

BH = status (Paradise/Dell)

    00h invalid function

    7Fh successful

Note:	color modes (0,1,2,3,4,5,6) will set non-VGA CGA operation, monochrome

  mode 7 will set non-VGA MDA/Hercules operation

SeeAlso: AX=007Fh/BH=00h,AX=007Fh/BH=02h

INT 10


INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - QUERY MODE STATUS

Category: V - video

Inp.:

AX = 007Fh

BH = 02h

Return: AL = 7Fh if successful (AT&T VDC600)

BH = status (Paradise/Dell)

    00h invalid function

    7Fh successful

---if successful---

BL = 00h if operating in VGA mode, 01h if non-VGA mode

CH = total video RAM size in 64k byte units

CL = video RAM used by the current mode

Note:	under Novell DOS 7 TaskMgr Multitasker, this call always returns 0K

  video memory in CX

SeeAlso: AX=007Fh/BH=00h,AX=007Fh/BH=01h

INT 10


INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - EXTENDED FUNCTIONS

Category: V - video

Inp.:

AX = 007Fh

BH = function

    03h	 lock current mode

allows current mode (VGA or non-VGA) to survive re-boot

    04h	 enter MDA mode

    05h	 enter CGA mode

    06h	 enter monochrome VGA mode (also switches to video mode 7)

    07h	 enter color VGA mode (also switches to video mode 3)

    0Ah,0Bh,0Ch,0Dh,0Eh,0Fh  WRITE PARADISE REGISTERS 0,1,2,3,4,5

(port 03CEh indices 0Ah,0Bh,0Ch,0Dh,0Eh,0Fh)

BL = value to set in the paradise register

    1Ah,1Bh,1Ch,1Dh,1Eh,1Fh READ PARADISE REGISTERS 0,1,2,3,4,5

(port 03CEh indices 0Ah,0Bh,0Ch,0Dh,0Eh,0Fh)

Return: BL = value of the paradise register

BH = 7Fh if successful

    29h-2Fh ??? (Paradise VGA for Dell, 7/24/91)

Return: AL = 7Fh if successful (AT&T VDC600)

BH = status (Paradise/Dell)

    00h invalid function

    7Fh successful

Desc:	set emulation mode or access proprietary extended data registers

SeeAlso: AX=007Eh,AH=FF"Oak"

INT 10


INT 10 007F - Paradise VGA - ???

Category: V - video

Inp.:

AX = 007Fh

BH = 60h

BL = ??? (00h-13h)

???

Return: BH = status (00h failed or not supported, 7Fh successful)

???

Note:	this function is supported by the 5/14/93 ROM for the Dell 486D

INT 10


INT 10 007F - Paradise VGA - ???

Category: V - video

Inp.:

AX = 007Fh

BH = 61h

ES:DI -> buffer for list of ??? (see #0011)

Return: BH = status (00h failed or not supported, 7Fh successful)

???

Note:	this function is supported by the 5/14/93 ROM for the Dell 486D

INT 10


INT 10 007F - Paradise VGA - ???

Category: V - video

Inp.:

AX = 007Fh

BX = A500h

???

Return: BH = status (00h failed or not supported, 7Fh successful)

???

Note:	this function is supported by the 5/14/93 ROM for the Dell 486D

INT 10


INT 10 007F - Paradise VGA - ???

Category: V - video

Inp.:

AX = 007Fh

BH = A5h

BL = ???

    bits 3-0: ??? (0-4)

    bits 5,4: ???

???

Return: BH = status (00h failed or not supported, 7Fh successful)

???

Note:	this function is supported by the 5/14/93 ROM for the Dell 486D

INT 10


INT 10 007F - Paradise VGA - ???

Category: V - video

Inp.:

AX = 007Fh

BH = A6h

???

Return: BH = status (00h failed or not supported, 7Fh successful)

???

Note:	this function is supported by the 5/14/93 ROM for the Dell 486D

INT 10


INT 10 01-- - VIDEO - SET TEXT-MODE CURSOR SHAPE

Category: V - video

Inp.:

AH = 01h

CH = cursor start and options (see #0012)

CL = bottom scan line containing cursor (bits 0-4)

Desc:	specify the starting and ending scan lines to be occupied by the

  hardware cursor in text modes

Notes:	buggy on EGA systems--BIOS remaps cursor shape in 43 line modes, but

  returns unmapped cursor shape

UltraVision scales size to the current font height by assuming 14-line

  monochrome and 8-line color fonts; this call is not valid if cursor

  emulation has been disabled

applications which wish to change the cursor by programming the

  hardware directly on EGA or above should call INT 10/AX=1130h or

  read 0040h:0085h first to determine the current font height

on some adapters, setting the end line greater than the number of lines

  in the font will result in the cursor extending to the top of the

  next character cell on the right

BUG:	AMI 386 BIOS and AST Premier 386 BIOS will lock up the system if AL

  is not equal to the current video mode

SeeAlso: AH=03h,AX=CD05h,AH=12h/BL=34h,#2469

INT 10


INT 10 02-- - VIDEO - SET CURSOR POSITION

Category: V - video

Inp.:

AH = 02h

BH = page number

    0-3 in modes 2&3

    0-7 in modes 0&1

    0 in graphics modes

DH = row (00h is top)

DL = column (00h is left)

SeeAlso: AH=03h,AH=05h,INT 60/DI=030Bh,MEM 0040h:0050h

INT 10


INT 10 03-- - VIDEO - GET CURSOR POSITION AND SIZE

Category: V - video

Inp.:

AH = 03h

BH = page number

    0-3 in modes 2&3

    0-7 in modes 0&1

    0 in graphics modes

Return: AX = 0000h (Phoenix BIOS)

CH = start scan line

CL = end scan line

DH = row (00h is top)

DL = column (00h is left)

Notes:	a separate cursor is maintained for each of up to 8 display pages

many ROM BIOSes incorrectly return the default size for a color display

  (start 06h, end 07h) when a monochrome display is attached

SeeAlso: AH=01h,AH=02h,AH=12h/BL=34h,MEM 0040h:0050h,MEM 0040h:0060h

INT 10


INT 10 04-- - VIDEO - READ LIGHT PEN POSITION (except VGA)

Category: V - video

Inp.:

AH = 04h

Return: AH = light pen trigger flag

    00h not down/triggered

    01h down/triggered

DH,DL = row,column of character light pen is on

CH = pixel row (graphics modes 04h-06h)

CX = pixel row (graphics modes with >200 rows)

BX = pixel column

Desc:	determine the current position and status of the light pen (if

  present)

Notes:	on a CGA, returned column numbers are always multiples of 2 (320-

  column modes) or 4 (640-column modes)

returned row numbers are only accurate to two lines

INT 10


INT 10 04-- - HUNTER 16 - GET CURSOR ADDRESS

Category: V - video

Inp.:

AH = 04h

BH = page

Return: DH = row (0..24)

DL = column (0..79)

CH = cursor pixel Y-address (0..199)

CL = cursor pixel X-address (0..639)

Notes:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

pixel coordinates are for the lower left corner of the character cell

  containing the cursor

SeeAlso: AH=60h"HUNTER"

INT 10


INT 10 05-- - VIDEO -  SELECT ACTIVE DISPLAY PAGE

Category: V - video

Inp.:

AH = 05h

AL = new page number (00h to number of pages - 1) (see #0009)

Desc:	specify which of possibly multiple display pages will be visible

Note:	to determine whether the requested page actually exists, use AH=0Fh

  to query the current page after making this call

SeeAlso: AH=0Fh,AH=43h,AH=45h,MEM 0040h:0062h

INT 10


INT 10 05-- - VIDEO - PCjr, Tandy 1000 - MANIPULATE CRT/CPU PAGE REGISTERS

Category: V - video

Inp.:

AH = 05h

AL = subfunction

    80h read CRT and CPU page registers

Return: BH = CRT page register

BL = CPU page register

    81h set CPU page register

BL = CPU page

    82h set CRT page register

BH = CRT page

    83h set both CPU and CRT page registers

BL = CPU page

BH = CRT page

Notes:	the CPU page determines which 16K block of the first 128K of physical

  memory will be mapped at B800h by the hardware

the CRT page determines the start address of the memory used by the

  video controller

INT 10


INT 10 05-- - VIDEO - Corona/Cordata BIOS v4.10+ - GRAPHICS BITMAP BUFFER

Category: V - video

Inp.:

AH = 05h

AL = function

    00h set address of graphics bitmap buffer (video modes 60h,61h)

BX = segment of buffer

    0Fh get address of graphics bitmap buffer (video modes 60h,61h)

Return: DX = segment of graphics bitmap buffer

INT 10


INT 10 06-- - VIDEO - SCROLL UP WINDOW

Category: V - video

Inp.:

AH = 06h

AL = number of lines by which to scroll up (00h = clear entire window)

BH = attribute used to write blank lines at bottom of window

CH,CL = row,column of window's upper left corner

DH,DL = row,column of window's lower right corner

Note:	affects only the currently active page (see AH=05h)

BUGS:	some implementations (including the original IBM PC) have a bug which

  destroys BP

the Trident TVGA8900CL (BIOS dated 9/8/92) clears DS to 0000h when

  scrolling in an SVGA mode (800x600 or higher)

SeeAlso: AH=07h,AH=72h,AH=73h,AX=7F07h,INT 50/AX=0014h

INT 10


INT 10 07-- - VIDEO - SCROLL DOWN WINDOW

Category: V - video

Inp.:

AH = 07h

AL = number of lines by which to scroll down (00h=clear entire window)

BH = attribute used to write blank lines at top of window

CH,CL = row,column of window's upper left corner

DH,DL = row,column of window's lower right corner

Note:	affects only the currently active page (see AH=05h)

BUGS:	some implementations (including the original IBM PC) have a bug which

  destroys BP

the Trident TVGA8900CL (BIOS dated 9/8/92) clears DS to 0000h when

  scrolling in an SVGA mode (800x600 or higher)

SeeAlso: AH=06h,AH=72h,AH=73h,INT 50/AX=0014h

INT 10


INT 10 08-- - VIDEO - READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION

Category: V - video

Inp.:

AH = 08h

BH = page number (00h to number of pages - 1) (see #0009)

Return: AH = character's attribute (text mode only) (see #0013)

AL = character

Notes:	for monochrome displays, a foreground of 1 with background 0 is

  underlined

the blink bit may be reprogrammed to enable intense background colors

  using AX=1003h or by programming the CRT controller

the foreground intensity bit (3) can be programmed to switch between

  character sets A and B on EGA and VGA cards, thus enabling 512

  simultaneous characters on screen.  In this case the bit's usual

  function (intensity) is regularly turned off.

in graphics modes, only characters drawn with white foreground pixels

  are matched by the pattern-comparison routine

SeeAlso: AH=09h,AX=1003h,AX=1103h,AH=12h/BL=37h,AX=5001h

INT 10


INT 10 09-- - VIDEO - WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION

Category: V - video

Inp.:

AH = 09h

AL = character to display

BH = page number (00h to number of pages - 1) (see #0009)

    background color in 256-color graphics modes (ET4000)

BL = attribute (text mode) or color (graphics mode)

    if bit 7 set in <256-color graphics mode, character is XOR'ed

      onto screen

CX = number of times to write character

Notes:	all characters are displayed, including CR, LF, and BS

replication count in CX may produce an unpredictable result in graphics

  modes if it is greater than the number of positions remaining in the

  current row

SeeAlso: AH=08h,AH=0Ah,AH=4Bh"GRAFIX",INT 17/AH=60h,INT 1F,INT 43,INT 44

INT 10


INT 10 0A-- - VIDEO - WRITE CHARACTER ONLY AT CURSOR POSITION

Category: V - video

Inp.:

AH = 0Ah

AL = character to display

BH = page number (00h to number of pages - 1) (see #0009)

    background color in 256-color graphics modes (ET4000)

BL = attribute (PCjr, Tandy 1000 only) or color (graphics mode)

    if bit 7 set in <256-color graphics mode, character is XOR'ed

      onto screen

CX = number of times to write character

Notes:	all characters are displayed, including CR, LF, and BS

replication count in CX may produce an unpredictable result in graphics

  modes if it is greater than the number of positions remaining in the

  current row

SeeAlso: AH=08h,AH=09h,AH=4Bh,INT 17/AH=60h,INT 1F,INT 43,INT 44

INT 10


INT 10 0B-- - VIDEO - SET BACKGROUND/BORDER COLOR

Category: V - video

Inp.:

AH = 0Bh

BH = 00h

BL = background/border color (border only in text modes)

SeeAlso: AH=0Bh/BH=01h

INT 10


INT 10 0B-- - VIDEO - SET PALETTE

Category: V - video

Inp.:

AH = 0Bh

BH = 01h

BL = palette ID

    00h background, green, red, and brown/yellow

    01h background, cyan, magenta, and white

Note:	this call was only valid in 320x200 graphics on the CGA, but newer

  cards support it in many or all graphics modes

SeeAlso: AH=0Bh/BH=00h,MEM 0040h:0066h

INT 10


INT 10 0C-- - VIDEO - WRITE GRAPHICS PIXEL

Category: V - video

Inp.:

AH = 0Ch

BH = page number

AL = pixel color

    if bit 7 set, value is XOR'ed onto screen except in 256-color modes

CX = column

DX = row

Desc:	set a single pixel on the display in graphics modes

Notes:	valid only in graphics modes

BH is ignored if the current video mode supports only one page

SeeAlso: AH=0Dh,AH=46h

INT 10


INT 10 0D-- - VIDEO - READ GRAPHICS PIXEL

Category: V - video

Inp.:

AH = 0Dh

BH = page number

CX = column

DX = row

Return: AL = pixel color

Desc:	determine the current color of the specified pixel in grahics modes

Notes:	valid only in graphics modes

BH is ignored if the current video mode supports only one page

SeeAlso: AH=0Ch,AH=47h

INT 10


INT 10 0E-- - VIDEO - TELETYPE OUTPUT

Category: V - video

Inp.:

AH = 0Eh

AL = character to write

BH = page number

BL = foreground color (graphics modes only)

Desc:	display a character on the screen, advancing the cursor and scrolling

  the screen as necessary

Notes:	characters 07h (BEL), 08h (BS), 0Ah (LF), and 0Dh (CR) are interpreted

  and do the expected things

IBM PC ROMs dated 4/24/81 and 10/19/81 require that BH be the same as

  the current active page

SeeAlso: AH=02h,AH=0Ah

INT 10


INT 10 0E-- - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

CX = ABCDh

BP = ABCDh

AL = character to write

BH = page number

BL = foreground color (text modes as well as graphics modes)

Program: V20-XT-BIOS is a ROM BIOS replacement with extensions by Peter

  Koehlmann / c't magazine

Desc:	display a character on the screen, advancing the cursor and scrolling

  the screen as necessary

Notes:	characters 07h (BEL), 08h (BS), 0Ah (LF), and 0Dh (CR) are interpreted

  and do the expected things

SeeAlso: INT 15/AH=84h"V20-XT-BIOS"

INT 10


INT 10 0F-- - VIDEO - GET CURRENT VIDEO MODE

Category: V - video

Inp.:

AH = 0Fh

Return: AH = number of character columns

AL = display mode (see #0009 at AH=00h)

BH = active page (see AH=05h)

Notes:	if mode was set with bit 7 set ("no blanking"), the returned mode will

  also have bit 7 set

EGA, VGA, and UltraVision return either AL=03h (color) or AL=07h

  (monochrome) in all extended-row text modes

HP 200LX returns AL=07h (monochrome) if mode was set to AL=21h

  and always 80 resp. 40 columns in all text modes regardless of

  current zoom setting (see AH=D0h)

when using a Hercules Graphics Card, additional checks are necessary:

    mode 05h: if WORD 0040h:0063h is 03B4h, may be in graphics page 1

  (as set by DOSSHELL and other Microsoft software)

    mode 06h: if WORD 0040h:0063h is 03B4h, may be in graphics page 0

  (as set by DOSSHELL and other Microsoft software)

    mode 07h: if BYTE 0040h:0065h bit 1 is set, Hercules card is in

  graphics mode, with bit 7 indicating the page (mode set by

  Hercules driver for Borland Turbo C)

SeeAlso: AH=00h,AH=05h,AX=10F2h/BL=00h,AX=1130h,AX=CD04h

INT 10


INT 10 0F56 - VUIMAGE DISPLAY DRIVER (v2.20 and below)

Category: V - video

Inp.:

AX = 0F56h

BX = 4756h

CX = 4944h

DL = function

    01h installation check

Return: AX = 5649h

BX = 4443h

CX = 5647h

DH = 01h

    02h get first video mode's parameters

Return: AX = BIOS mode number

BX = width in pixels

CX = height in pixels

DX = number of colors

    03h get next video mode's parameters

Return: as for DL=02h

    04h display line???

ES:DI -> record (see #0015)

???

Return: ???

Program: VUIMAGE is a shareware GIF/TIFF image viewer by Offe Enterprises

Note:	the use of TSR display drivers was discontinued after v2.20

Index:	installation check;VUIMAGE display driver

INT 10


INT 10 0F-- - FRIEZE v7.41+ - INSTALLATION CHECK

Category: V - video

Inp.:

AH = 0Fh

SI = F123h

DI = 321Fh

Return: AH = number of character columns

AL = display mode (see #0009 at AH=00h)

BH = active page (see AH=05h)

SI = DI = F345h if installed

Notes:	if mode was set with bit 7 set ("no blanking"), the returned mode will

  also have bit 7 set

EGA, VGA, and UltraVision return either AL=03h (color) or AL=07h

  (monochrome) in all extended-row text modes

SeeAlso: AH=0Fh"VIDEO",AH=4Bh"FRIEZE"

INT 10


INT 10 10-- - BIOS Window Extension v1.1 - SET WINDOW COORDINATES

Category: V - video

Inp.:

AH = 10h

CH,CL = row,column of upper left corner of window

DH,DL = row,column of lower right corner of window

Return: AL = status

    00h successful

    01h failed

AH destroyed

Program: BWE is a TSR by John J. Seal published in May 1986 Dr. Dobb's Journal

Note:	when a window has been set, all output via AH=0Eh is restricted to

  the specified window

SeeAlso: AH=11h"Window",AH=12h"Window"

INT 10


INT 10 10-- - VIDEO - Eagle PC2 BIOS Rev. C - SET SCROLL SPEED

Category: V - video

Inp.:

AH = 10h

AL = speed

    00h fast

    01h slow (scrolling only moves characters during vertical retrace)

Return: AH = previous speed

INT 10


INT 10 1000 - VIDEO - SET SINGLE PALETTE REGISTER (PCjr,Tandy,EGA,MCGA,VGA)

Category: V - video

Inp.:

AX = 1000h

BL = palette register number (00h-0Fh)

   = attribute register number (undocumented) (see #0016)

BH = color or attribute register value

Notes:	on MCGA, only BX = 0712h is supported

under UltraVision, the palette locking status (see AX=CD01h)

  determines the outcome

SeeAlso: AX=1002h,AX=1007h,AX=CD01h

INT 10


INT 10 1001 - VIDEO - SET BORDER (OVERSCAN) COLOR (PCjr,Tandy,EGA,VGA)

Category: V - video

Inp.:

AX = 1001h

BH = border color (00h-3Fh)

BUG:	the original IBM VGA BIOS incorrectly updates the parameter save area

  and places the border color at offset 11h of the palette table

  rather than offset 10h

Note:	under UltraVision, the palette locking status (see AX=CD01h)

  determines the outcome

SeeAlso: AX=1002h,AX=1008h,AX=CD01h

INT 10


INT 10 1002 - VIDEO - SET ALL PALETTE REGISTERS (PCjr,Tandy,EGA,VGA)

Category: V - video

Inp.:

AX = 1002h

ES:DX -> palette register list (see #0017)

BH = 00h to avoid problems on some adapters

Note:	under UltraVision, the palette locking status (see AX=CD01h)

  determines the outcome

SeeAlso: AX=1000h,AX=1001h,AX=1009h,AX=CD01h

INT 10


INT 10 1003 - VIDEO - TOGGLE INTENSITY/BLINKING BIT (Jr, PS, TANDY 1000, EGA, VGA)

Category: V - video

Inp.:

AX = 1003h

BL = new state

    00h background intensity enabled

    01h blink enabled

BH = 00h to avoid problems on some adapters

Notes:	although there is no function to get the current status on adapters

  prior to the VGA, bit 5 of 0040h:0065h indicates the state; on the

  VGA, use AH=1Bh and check offset 2Dh of the returned data (see #0037)

when configured for a monochrome display, the Boca Research Multi-EGA

  with ROM v M1.1 Type D has its screen disrupted if BH is not clear

this call is reported to be "Get Cursor Position" on the Tandy

  1000SL/TL

SeeAlso: AH=08h,AH=1Bh

INT 10


INT 10 1007 - VIDEO - GET INDIVIDUAL PALETTE REGISTER (VGA,UltraVision v2+)

Category: V - video

Inp.:

AX = 1007h

BL = palette or attribute (undoc) register number (see #0016)

Return: BH = palette or attribute register value

Note:	UltraVision v2+ supports this function even on color EGA systems in

  video modes 00h-03h, 10h, and 12h; direct programming of the palette

  registers will cause incorrect results because the EGA registers are

  write-only.  To guard against older versions or unsupported video

  modes, programs which expect to use this function on EGA systems

  should set BH to FFh on entry.

SeeAlso: AX=1000h,AX=1009h

INT 10


INT 10 1008 - VIDEO - READ OVERSCAN (BORDER COLOR) REGISTER (VGA,UltraVision v2+)

Category: V - video

Inp.:

AX = 1008h

Return: BH = border color (00h-3Fh)

Note:	(see AX=1007h)

SeeAlso: AX=1001h

INT 10


INT 10 1009 - VIDEO - READ ALL PALETTE REGISTERS AND OVERSCAN REGISTER (VGA)

Category: V - video

Inp.:

AX = 1009h

ES:DX -> 17-byte buffer for palette register list (see #0017)

Note:	UltraVision v2+ supports this function even on color EGA systems in

  video modes 00h-03h, 10h, and 12h; direct programming of the palette

  registers will cause incorrect results because the EGA registers are

  write-only.  To guard against older versions or unsupported video

  modes, programs which expect to use this function on EGA systems

  should set the ES:DX buffer to FFh before calling.

SeeAlso: AX=1002h,AX=1007h,AX=CD02h

INT 10


INT 10 1010 - VIDEO - SET INDIVIDUAL DAC REGISTER (VGA/MCGA)

Category: V - video

Inp.:

AX = 1010h

BX = register number

CH = new value for green (0-63)

CL = new value for blue (0-63)

DH = new value for red (0-63)

SeeAlso: AX=1012h,AX=1015h

INT 10


INT 10 1012 - VIDEO - SET BLOCK OF DAC REGISTERS (VGA/MCGA)

Category: V - video

Inp.:

AX = 1012h

BX = starting color register

CX = number of registers to set

ES:DX -> table of 3*CX bytes where each 3 byte group represents one

 byte each of red, green and blue (0-63)

SeeAlso: AX=1010h,AX=1017h,INT 62/AX=00A5h

INT 10


INT 10 1013 - VIDEO - SELECT VIDEO DAC COLOR PAGE (VGA)

Category: V - video

Inp.:

AX = 1013h

BL = subfunction

    00h select paging mode

BH = 00h select 4 blocks of 64

BH = 01h select 16 blocks of 16

    01h select page

BH = page number (00h to 03h) or (00h to 0Fh)

Note:	this function is not valid in mode 13h

SeeAlso: AX=101Ah

INT 10


INT 10 1015 - VIDEO - READ INDIVIDUAL DAC REGISTER (VGA/MCGA)

Category: V - video

Inp.:

AX = 1015h

BL = palette register number

Return: DH = red value

CH = green value

CL = blue value

AX destroyed by some BIOSes

      (e.g. Tseng ET4000 BIOS v8.00n always returns AX=00C9h)

SeeAlso: AX=1010h,AX=1017h

INT 10


INT 10 1017 - VIDEO - READ BLOCK OF DAC REGISTERS (VGA/MCGA)

Category: V - video

Inp.:

AX = 1017h

BX = starting palette register

CX = number of palette registers to read

ES:DX -> buffer (3 * CX bytes in size) (see also AX=1012h)

Return: buffer filled with CX red, green and blue triples

SeeAlso: AX=1012h,AX=1015h,INT 62/AX=00A4h

INT 10


INT 10 1018 - VIDEO - SET PEL MASK (VGA/MCGA)

undocumented function

Category: V - video

Inp.:

AX = 1018h

BL = new PEL value

SeeAlso: AX=1019h

INT 10


INT 10 1019 - VIDEO - READ PEL MASK (VGA/MCGA)

undocumented function

Category: V - video

Inp.:

AX = 1019h

Return: BL = value read

SeeAlso: AX=1018h

INT 10


INT 10 101A - VIDEO - GET VIDEO DAC COLOR-PAGE STATE (VGA)

Category: V - video

Inp.:

AX = 101Ah

Return: BL = paging mode

    00h four pages of 64

    01h sixteen pages of 16

BH = current page

SeeAlso: AX=1013h

INT 10


INT 10 101B - VIDEO - PERFORM GRAY-SCALE SUMMING (VGA/MCGA)

Category: V - video

Inp.:

AX = 101Bh

BX = starting palette register

CX = number of registers to convert

Desc:	convert the RGB values of one or more palette registers such that the

  resulting values are grays with the same intensities as the original

  colors

SeeAlso: AH=12h/BL=33h

INT 10


INT 10 10E0 - VIDEO - Diamond Speedstar 24 - SET 24-BIT GRAPHICS MODE

Category: V - video

Inp.:

AX = 10E0h

BL = video mode (see also #0009 at AH=00h)

    2Eh = 640x480

Return: ???

SeeAlso: AH=00h,AX=10F0h

INT 10


INT 10 10F0 - VIDEO - Tseng ET-4000 BIOS - SET HiColor GRAPHICS MODE

Category: V - video

Inp.:

AX = 10F0h

BL = video mode (see also #0009 at AH=00h)

    13h = 320x200x32K

    2Dh = 640x350x32K

    2Eh = 640x480x32K

    2Fh = 640x400x32K

    30h = 800x600x32K

    3Eh = 640x480x16M (Genoa 7900)

    FFh Tseng 24-bit color mode

BH = mode

    2Dh = 640x480

    2Eh = 640x480x16M

    2Fh = 640x400

    30h = 800x600

    38h = 1024x768??? (Tseng ET4000/W32i)

Return: AL = 10h if supported

AH = status

    00h if successful

    other on error

Desc:	switch the display into a graphics mode with 15 or more bits per pixel

Note:	the Tseng HiColor BIOS extensions are supported by:

  Diamond Computer Systems	SpeedStar HiColor VGA

  Everex Systems	HC VGA

  Focus Information Systems	2theMax 4000

  Cardinal Technologies	VGA732

  Orchid ProDesigner IIs	Genoa 7900

SeeAlso: AH=00h,AX=10E0h,AX=10F1h,AX=10F2h

Index:	video modes;Tseng Hi-Color

INT 10


INT 10 10F1 - VIDEO - Tseng ET-4000 BIOS - GET DAC TYPE

Category: V - video

Inp.:

AX = 10F1h

Return: AL = 10h if supported

BL = type of digital/analog converter (see #0018)

Desc:	determine which type of digital-to-analog converter is installed on the

  display board

SeeAlso: AX=10F0h,AX=10F2h

INT 10


INT 10 10F2 - VIDEO - Tseng ET-4000 BIOS - CHECK IF HiColor MODE/SET HiColor MODE

partially documented function

Category: V - video

Inp.:

AX = 10F2h

BL = function

    00h get current HiColor mode

    01h set 15-bit HiColor mode

    02h set 16-bit HiColor mode

Return: AX = 0010h if supported

BL = video mode type

    00h not in HiColor mode

    01h 15-bit RGB mode

    02h 16-bit RGB mode

    03h 24-bit RGB mode

Desc:	determine whether the display is in a graphics mode with 15 or more

  bits per pixel color resolution

Note:	set (BL=01h/02h) only works if already in a HiColor mode

SeeAlso: AH=0Fh,AX=10F0h,AX=10F1h

INT 10


INT 10 11-- - BIOS Window Extension v1.1 - GET WINDOW COORDINATES

Category: V - video

Inp.:

AH = 11h

Return: CH,CL = row,column of upper left corner

DH,DL = row,column of lower right corner

Desc:	determine the portion of the display to which output is restricted

Program: BWE is a TSR by John J. Seal published in May 1986 Dr. Dobb's Journal

SeeAlso: AH=10h"Window",AH=12h"Window"

INT 10


INT 10 11-- - VIDEO - TEXT-MODE CHARACTER GENERATOR FUNCTIONS (PS, EGA, VGA)

Category: V - video

Inp.:

AH = 11h

The following functions will cause a mode set, completely resetting

the video environment, but without clearing the video buffer

AL = 00h, 10h: load user-specified patterns

    ES:BP -> user table

    CX	  = count of patterns to store

    DX	  = character offset into map 2 block

    BL	  = block to load in map 2

    BH	  = number of bytes per character pattern

AL = 01h, 11h: load ROM monochrome patterns (8 by 14)

    BL	  = block to load

AL = 02h, 12h: load ROM 8 by 8 double-dot patterns

    BL	  = block to load

AL = 03h: set block specifier (allows dual character sets on screen)

    BL	  = block specifier (see #0019)

AL = 04h, 14h: load ROM 8x16 character set (VGA)

    BL	= block to load

Notes:	The routines called with AL=1xh are designed to be called only

  immediately after a mode set and are similar to the routines called

  with AL=0xh, except that:

      Page 0 must be active.

      Bytes/character is recalculated.

      Max character rows is recalculated.

      CRT buffer length is recalculated.

      CRTC registers are reprogrammed as follows:

     R09 = bytes/char-1 ; max scan line (mode 7 only)

     R0A = bytes/char-2 ; cursor start

     R0B = 0	; cursor end

     R12 = ((rows+1)*(bytes/char))-1 ; vertical display end

     R14 = bytes/char	; underline loc

   (*** BUG: should be 1 less ***)

the current block specifiers may be determined with INT 10/AH=1Bh,

  looking at offsets 2Bh and 2Ch of the returned data (VGA only)

  (see AH=1Bh,#0037)

SeeAlso: AH=1Bh,AX=CD10h

INT 10


INT 10 11-- - VIDEO - Realtek RTVGA - TEXT-MODE CHARACTER GENERATOR FUNCTIONS

Category: V - video

Inp.:

AH = 11h

AL = 07h load user-specified paterns and recalculate mode parms

 parameters are the same as for AL = 10h

AL = 08h load monochrome patterns (8x14) and recalculate mode parms

 parameters are the same as for AL = 11h

AL = 09h load ROM 8 by 8 double-dot patterns and recalculate mode parms

 parameters are the same as for AL = 12h

AL = 0Bh load ROM 8x16 character set (VGA) and recalculate mode parms

 parameters are the same as for AL = 14h

Note:	these functions should only be called under the same conditions as

  AL=1xh (see entry above)

SeeAlso: AH=11h

INT 10


INT 10 110F - VIDEO - Realtek RTVGA - SET USER 8x8 GRAPHICS CHARACTERS

Category: V - video

Inp.:

AX = 110Fh

ES:BP -> user table for INT 1F

Note:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

SeeAlso: AX=1110h,AX=1111h,AX=1112h,AX=1120h

INT 10


INT 10 1110 - VIDEO - Realtek RTVGA - SET USER GRAPHICS CHARACTERS

Category: V - video

Inp.:

AX = 1110h

ES:BP -> user table

CX = bytes per character

BL = row specifier

    00h user set

DL = number of rows

    01h 14 rows

    02h 25 rows

    03h 43 rows

Note:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

SeeAlso: AX=110Fh,AX=1112h,AX=1121h

INT 10


INT 10 1111 - VIDEO - Realtek RTVGA - SET ROM 8x14 GRAPHICS CHARACTERS

Category: V - video

Inp.:

AX = 1111h

BL = row specifier (see AX=1121h)

Note:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

SeeAlso: AX=110Fh,AX=1110h,AX=1122h

INT 10


INT 10 1112 - VIDEO - Realtek RTVGA - SET ROM 8x8 DOUBLE-DOT CHARACTERS

Category: V - video

Inp.:

AX = 1112h

BL = row specifier (see AX=1121h)

Note:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

SeeAlso: AX=110Fh,AX=1110h,AX=1111h,AX=1123h

INT 10


INT 10 1120 - VIDEO - GRAPH-MODE CHARGEN - SET USER 8x8 GRAPHICS CHARS (PS,EGA,VGA)

Category: V - video

Inp.:

AX = 1120h

ES:BP -> user table for INT 1F

Note:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

SeeAlso: AX=1121h,AX=1122h,AX=1123h,AX=1124h,AX=1125h,INT 1F,INT 43

INT 10


INT 10 1121 - VIDEO - GRAPH-MODE CHARGEN - SET USER GRAPHICS CHARACTERS (PS,EGA,VGA)

Category: V - video

Inp.:

AX = 1121h

ES:BP -> user table

CX = bytes per character

BL = row specifier

    00h user set

DL = number of rows

    01h 14 rows

    02h 25 rows

    03h 43 rows

Note:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

SeeAlso: AX=1120h,AX=1122h,AX=1123h,AX=1124h,AX=1129h,INT 1F,INT 43

INT 10


INT 10 1122 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x14 GRAPHICS CHARS (PS,EGA,VGA)

Category: V - video

Inp.:

AX = 1122h

BL = row specifier (see AX=1121h)

Notes:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

UltraVision v2+ sets INT 43 to the appropriate font on this call

SeeAlso: AX=1111h,AX=1120h,AX=1121h,AX=1123h,AX=1124h,AX=1129h,INT 1F,INT 43

INT 10


INT 10 1123 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x8 DOUBLE-DOT CHARS (PS,EGA,VGA)

Category: V - video

Inp.:

AX = 1123h

BL = row specifier (see AX=1121h)

Notes:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

UltraVision v2+ sets INT 43 to the appropriate font on this call

SeeAlso: AX=1112h,AX=1120h,AX=1121h,AX=1122h,AX=1124h,AX=1129h,INT 1F,INT 43

INT 10


INT 10 1124 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPHICS CHARS (VGA,MCGA)

Category: V - video

Inp.:

AX = 1124h

BL = row specifier (see AX=1121h)

Notes:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

UltraVision v2+ sets INT 43 to the appropriate font on this call

SeeAlso: AX=1120h,AX=1121h,AX=1122h,AX=1123h,AX=1129h,INT 1F,INT 43

INT 10


INT 10 1129 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPH CHARS (Compaq Systempro)

Category: V - video

Inp.:

AX = 1129h

BL = row specifier (see AX=1121h)

Notes:	this function is meant to be called immediately after a mode set;

  results are unpredictable at other times

UltraVision v2+ sets INT 43 to the appropriate font on this call

SeeAlso: AX=1120h,AX=1121h,AX=1122h,AX=1123h,AX=1124h,INT 1F, INT 43

INT 10


INT 10 1130 - VIDEO - GET FONT INFORMATION (EGA, MCGA, VGA)

Category: V - video

Inp.:

AX = 1130h

BH = pointer specifier

    00h INT 1Fh pointer

    01h INT 43h pointer

    02h ROM 8x14 character font pointer

    03h ROM 8x8 double dot font pointer

    04h ROM 8x8 double dot font (high 128 characters)

    05h ROM alpha alternate (9 by 14) pointer (EGA,VGA)

    06h ROM 8x16 font (MCGA, VGA)

    07h ROM alternate 9x16 font (VGA only) (see #0020)

    11h (UltraVision v2+) 8x20 font (VGA) or 8x19 font (autosync EGA)

    12h (UltraVision v2+) 8x10 font (VGA) or 8x11 font (autosync EGA)

Return: ES:BP = specified pointer

CX    = bytes/character of on-screen font (not the requested font!)

DL    = highest character row on screen

Note:	for UltraVision v2+, the 9xN alternate fonts follow the corresponding

  8xN font at ES:BP+256N

BUG:	the IBM EGA and some other EGA cards return in DL the number of rows on

  screen rather than the highest row number (which is one less).

SeeAlso: AX=1100h,AX=1120h,INT 1F,INT 43

INT 10


INT 10 1130 - M10_SCR.COM v3.5+ - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 1130h

BX = 4D4Fh

Return: CX = 4F4Dh if installed

    ES:BP -> M10_SCR INT 10 handler

Program: M10_SCR is a shareware extended text mode and font driver by

  I.V. Morozov

SeeAlso: INT 16/AX=4D4Fh

INT 10


INT 10 12-- - BIOS Window Extension v1.1 - GET BLANKING ATTRIBUTE

Category: V - video

Inp.:

AH = 12h

Return: BH = attribute to use on blanked lines when scrolling

Program: BWE is a TSR by John J. Seal published in May 1986 Dr. Dobb's Journal

SeeAlso: AH=11h"Window",AH=12h"Window"

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS, EGA, VGA, MCGA) - GET EGA INFO

Category: V - video

Inp.:

AH = 12h

BL = 10h

Return: BH = video state

    00h color mode in effect (I/O port 3Dxh)

    01h mono mode in effect (I/O port 3Bxh)

BL = installed memory (00h = 64K, 01h = 128K, 02h = 192K, 03h = 256K)

CH = feature connector bits (see #0021)

CL = switch settings (see #0022,#0023)

AH destroyed (at least by Tseng ET4000 BIOS v8.00n)

Note:	one possible check for the presence of an EGA or later display card

  is to call this function with BH=FFh; if not present, BH will be

  unchanged on return

another installation check is used by Athena Digital's HGCIBM, which

  sets CX to FFFFh on calling and checks whether it has been changed

  on return

Index:	installation check;EGA

INT 10


INT 10 12-- - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET BIOS INFO

Category: V - video

Inp.:

AH = 12h

BL = 11h

Return: AL = 12h if function supported

    BL = ??? (10h)

    ES:BP -> BIOS info structure (see #0024)

SeeAlso: AH=12h/BL=12h"TRIDENT"

INT 10


INT 10 12-- - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET VIDEO RAM SIZE

Category: V - video

Inp.:

AH = 12h

BL = 12h

Return: AL = 12h if function supported

    AH = number of 256K banks of RAM installed

SeeAlso: AH=12h/BL=11h"TRIDENT"

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS,EGA,VGA,MCGA) - ALTERNATE PRTSC

Category: V - video

Inp.:

AH = 12h

BL = 20h  select alternate print screen routine

Desc:	installs a PrtSc routine from the video card's BIOS to replace the

  default PrtSc handler from the ROM BIOS, which usually does not

  understand screen heights other than 25 lines

Note:	some adapters disable print-screen instead of enhancing it

SeeAlso: INT 05

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 12h

BL = 2Eh

Note:	due to an omitted end-of-list marker, these versions of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - SELECT VERTICAL RESOLUTION

Category: V - video

Inp.:

AH = 12h

BL = 30h

AL = vertical resolution

     00h 200 scan lines

     01h 350 scan lines

     02h 400 scan lines

Return: AL = 12h if function supported

Desc:	specify the number of scan lines used to display text modes

Note:	the specified resolution will take effect on the next mode set

SeeAlso: AH=00h

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - PALETTE LOADING

Category: V - video

Inp.:

AH = 12h

BL = 31h

AL = new state

    00h enable default palette loading

    01h disable default palette loading

Return: AL = 12h if function supported

Desc:	specify whether a default palette should be loaded when the display

  mode is set

SeeAlso: AH=00h

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - VIDEO ADDRESSING

Category: V - video

Inp.:

AH = 12h

BL = 32h

AL = new state

    00h enable video addressing

    01h disable video addressing

Return: AL = 12h if function supported

Desc:	specify whether the CPU should have access to video memory and the

  display adapters I/O registers

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - GRAY-SCALE SUMMING

Category: V - video

Inp.:

AH = 12h

BL = 33h

AL = new state

    00h enable gray scale summing

    01h disable gray scale summing

Return: AL = 12h if function supported

Desc:	specify whether or not colors should be converted to gray scale when

  palette or color registers are loaded

SeeAlso: AX=101Bh,AX=BF06h,AX=BF08h

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - CURSOR EMULATION

Category: V - video

Inp.:

AH = 12h

BL = 34h

AL = new state

    00h enable alphanumeric cursor emulation

    01h disable alphanumeric cursor emulation

Return: AL = 12h if function supported

Desc:	specify whether the BIOS should automatically remap cursor start/end

  according to the current character height in text modes

SeeAlso: AH=01h,AH=03h

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS) - DISPLAY-SWITCH INTERFACE

Category: V - video

Inp.:

AH = 12h

BL = 35h

AL = subfunction

    00h initial adapter video off

    01h initial planar video on

    02h switch active video off

    03h switch inactive video on

    80h *UNDOCUMENTED* set system board video active flag

ES:DX -> buffer for 128 byte save area (if AL = 00h-03h)

Return: AL = 12h if function supported

Desc:	switch between two video adapters which may otherwise have address

  conflicts

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS, VGA) - VIDEO REFRESH CONTROL

Category: V - video

Inp.:

AH = 12h

BL = 36h

AL = new state

    00h enable refresh

    01h disable refresh

Return: AL = 12h if function supported

Desc:	specify whether the contents of video memory should be displayed on

  the screen; disabling refresh effectively blanks the screen

Note:	when display refresh is disabled, the entire screen displays the color

  specified by the DAC color register 00h; thus to actually blank the

  screen, the application must first ensure that that register has been

  set to black

BUG:	GEM/VIEWMAX ET3000 and ET4000 drivers dated 6/23/88 do not correctly

  reenable refresh after the screen has been blanked due to inactivity,

  resulting in a total loss of video synchronization

SeeAlso: AX=BF05h

INT 10


INT 10 12-- - VIDEO - XGA - MAINFRAME INTERACTIVE SUPPORT

Category: V - video

Inp.:

AH = 12h

BL = 37h

AL = text attribute type (00h normal VGA, 01h mainframe type)

Return: AL = 12h if supported

SeeAlso: #0025,AH=08h

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v8.00 (06/07/91) - BUG

Category: V - video

Inp.:

AH = 12h

BL = 53h

Note:	due to an omitted end-of-list marker, this version of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v8.00 (06/07/91) - BUG

Category: V - video

Inp.:

AH = 12h

BL = 57h

Note:	due to an omitted end-of-list marker, this version of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - VIDEO - ALTERNATE FUNC SELECT (ATI,Tatung,Taxan) - ENHANCED FEATURES

Category: V - video

Inp.:

AH = 12h

BH = 55h

BL = subfunction

    00h disable enhanced features

    01h enable enhanced features

    02h get status

Return: AL = status flags (see #0026)

    03h disable register trapping (CGA emulation)

    04h enable register trapping

    05h program video mode

ES:BP -> video mode table (see #0027)

    06h get mode table

AL = video mode

Return: ES:BP -> table suitable for mode AL

  (and subfunc BL=05h) (see #0027)

BP = FFFFh on error

SI = 0000h (ATI Mach32)

Note:	the ATI Mouse driver (MOUSE.COM/MOUSE.SYS) uses subfunction 06h to get

  the mode table for mode 03h, and then looks for a signature string

  beginning within 32 bytes of the offset specified by the word at

  ES:000Ch

SeeAlso: AH=FFh"Oak"

Index:	installation check;ATI video adapters

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 12h

BL = 74h

Note:	due to an omitted end-of-list marker, these versions of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 12h

BL = 80h

Note:	due to an omitted end-of-list marker, these versions of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - Cirrus Logic BIOS - INQUIRE VGA TYPE

Category: V - video

Inp.:

AH = 12h

BL = 80h

Return: AX = controller type in bits 13-0 (see #0028)

    bit 14: ???

    bit 15: ???

BL = silicon revision number (bit 7 set if not available)

SeeAlso: AH=12h/BL=81h,AH=12h/BL=82h,AH=12h/BL=85h,AH=12h/BL=9Ah,AH=12h/BL=A1h

INT 10


INT 10 12-- - Cirrus Logic BIOS - GET BIOS VERSION NUMBER

Category: V - video

Inp.:

AH = 12h

BL = 81h

Return: AH = BIOS major version

AL = BIOS minor version

SeeAlso: AH=12h/BL=80h,AH=12h/BL=82h

INT 10


INT 10 12-- - Cirrus Logic BIOS - GET DESIGN REVISION CODE

Category: V - video

Inp.:

AH = 12h

BL = 82h

Return: AL = chip revision

AH = ??? (AFh for v1.01)

SeeAlso: AH=12h/BL=80h,AH=12h/BL=81h

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - INQUIRE OPTIONS

Category: V - video

Inp.:

AH = 12h

BL = 84h

Return: AX = user options word (see #0029)

SeeAlso: AH=12h/BL=89h,AH=12h/BL=8Ah,AH=12h/BL=8Bh,AH=12h/BL=8Ch,AH=12h/BL=8Fh

SeeAlso: AH=12h/BL=90h,AH=12h/BL=9Ah

INT 10


INT 10 12-- - Cirrus Logic BIOS - GET INSTALLED MEMORY

Category: V - video

Inp.:

AH = 12h

BL = 85h

Return: AL = number of 64K banks of video memory

SeeAlso: AH=12h/BL=80h,AH=12h/BL=93h

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - EN/DISABLE REVERSE VIDEO MODE

Category: V - video

Inp.:

AH = 12h

BL = 89h

AL = new state (00h enabled, 01h disabled)

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Ah,AH=12h/BL=8Bh

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET FRAME COLOR

Category: V - video

Inp.:

AH = 12h

BL = 8Ah

AL = new gray-scale color (00h = black to 0Fh = white)

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=8Fh

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE BOLD MODE

Category: V - video

Inp.:

AH = 12h

BL = 8Bh

AL = new state (00h enabled, 01h disabled)

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=8Ch,AH=12h/BL=8Fh

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET AUTOMAP/EMULATE ATTRIBUTES

Category: V - video

Inp.:

AH = 12h

BL = 8Ch

AL = new state

    00h enable automap

    01h disable automap and emulate attributes

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Bh

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE EXPAND MODE

Category: V - video

Inp.:

AH = 12h

BL = 8Fh

AL = new state (00h enabled, 01h disabled)

Note:	when expand mode is enabled, the vertical dimension is enlarged to

  full screen

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=8Bh,AH=12h/BL=90h

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET CENTERING MODE

Category: V - video

Inp.:

AH = 12h

BL = 90h

AL = new position

    00h centered

    01h from top

    02h from bottom

    03h from top

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Fh

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET 720-DOT FIXUP MODE

Category: V - video

Inp.:

AH = 12h

BL = 91h

AL = new mode

    00h display MGA mode from left of screen (default)

    01h display MGA from right

    02h skip every ninth pixel

    03h OR every 8th and 9th pixel

SeeAlso: AH=12h/BL=84h,AH=12h/BL=8Ah,AH=12h/BL=90h

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SWITCH DISPLAY

Category: V - video

Inp.:

AH = 12h

BL = 92h

AL = new display (00h LCD, 01h external monitor)

Note:	the deselected display is disabled

SeeAlso: AH=12h/BL=84h,AH=12h/BL=89h,AH=12h/BL=90h,AH=12h/BL=94h

INT 10


INT 10 12-- - Cirrus Logic BIOS - FORCE 8-BIT OR 16-BIT OPERATION

Category: V - video

Inp.:

AH = 12h

BL = 93h

AL = new I/O width (00h = 16 bits, 01h = 8 bits)

SeeAlso: AH=12h/BL=9Ah

INT 10


INT 10 12-- - Cirrus Logic BIOS v3.02 - POWER CONSERVATION

Category: V - video

Inp.:

AH = 12h

BL = 94h

AL = new state (00h wake up monitor, 01h shut down display)

Note:	AL=01h is reported not to work properly on the LCD panel

SeeAlso: AH=12h/BL=84h,AH=12h/BL=92h

INT 10


INT 10 12-- - Cirrus Logic BIOS - GET USER OPTIONS

Category: V - video

Inp.:

AH = 12h

BL = 9Ah

Return: AX = options word 1 (see #0030)

CX = options word 2 (see #0031)

SeeAlso: AH=12h/BL=80h,AH=12h/BL=84h,AH=12h/BL=93h,AH=12h/BL=A0h

SeeAlso: AH=12h/BL=A3h,AH=12h/BL=A4h

INT 10


INT 10 12-- - Cirrus Logic BIOS - GET VIDEO MODE AVAILABILITY

Category: V - video

Inp.:

AH = 12h

BL = A0h

AL = video mode number (00h-7Fh)

Return: AH bit 0: video mode supported

BX = offset of BIOS subroutine to fixup standard video parameters

(call subroutine with DS:SI and ES:DI as returned by this call)

DS:SI -> standard video parameters or FFFFh:FFFFh

ES:DI -> supplemental video parameters or FFFFh:FFFFh

SeeAlso: AH=00h,AH=12h/BL=9Ah,AH=12h/BL=A1h

INT 10


INT 10 12-- - Cirrus Logic BIOS - READ MONITOR TYPE AND ID FROM 15-PIN CONNECTOR

Category: V - video

Inp.:

AH = 12h

BL = A1h

Return: BH = monitor ID (see #0032)

BL = monitor type (00h color, 01h grayscale, 02h no display)

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A2h

INT 10


INT 10 12-- - Cirrus Logic BIOS - SET MONITOR HORIZONTAL RETRACE FREQUENCY

Category: V - video

Inp.:

AH = 12h

BL = A2h

AL = retrace rate

    00h standard VGA (31.5 kHz)

    01h 8514-compatible (31.5 kHz and 35.5 kHz interlaced)

    02h SuperVGA (31.5-35.1 kHz)

    03h extended SuperVGA (31.5-35.5 kHz)

    04h multi-frequency (31.5-37.8 kHz)

    05h extended multi-frequency (31.5-48.0 kHz)

    06h super multi-frequency (31.5-56.0 kHz)

    07h extended super multi-frequency (31.5-64.0 kHz)

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A0h,AH=12h/BL=A4h

INT 10


INT 10 12-- - Cirrus Logic BIOS - SET VGA REFRESH

Category: V - video

Inp.:

AH = 12h

BL = A3h

AL = refresh rate for 640x480 (00h normal, 01h high)

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A4h

INT 10


INT 10 12-- - Cirrus Logic BIOS - SET MONITOR TYPE

Category: V - video

Inp.:

AH = 12h

BL = A4h

AL bits 3-0 = maximum vertical resolution

(0 = 480 scanlines, 1 = 600, 2 = 768, 3 = 1024, other reserved)

AL bits 7-4 = vertical refresh at 640x480

(0 = 60Hz, 1 = 72Hz, other reserved)

BH bits 3-0 = vertical refresh at 800x600

(0 = 56Hz, 1 = 60Hz, 2 = 72Hz, other reserved)

BH bits 7-4 = vertical refresh at 1024x768

(0=87Hz-int, 1=60Hz, 2=70Hz, 3=72Hz, 4=76Hz, other reserved)

CH bits 4-7 = vertical refresh at 1280x1024

(0=87Hz-int, 1=60Hz, 2=70Hz, other reserved)

SeeAlso: AH=12h/BL=9Ah,AH=12h/BL=A3h

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 12h

BL = BEh

Note:	due to an omitted end-of-list marker, these versions of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 12h

BL = C6h

Note:	due to an omitted end-of-list marker, these versions of the BIOS will

  crash the system on this function

INT 10


INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 12h

BL = F0h

Note:	due to an omitted end-of-list marker, these versions of the BIOS will

  crash the system on this function

INT 10


INT 10 13-- - VIDEO - WRITE STRING (AT and later,EGA)

Category: V - video

Inp.:

AH = 13h

AL = write mode

   bit 0: update cursor after writing

   bit 1: string contains alternating characters and attributes

   bits 2-7: reserved (0)

BH = page number

BL = attribute if string contains only characters

CX = number of characters in string

DH,DL = row,column at which to start writing

ES:BP -> string to write

Notes:	recognizes CR, LF, BS, and bell; for the ET4000 BIOS, scrolling,

  backspace, and CR only take place in the active page

also available PC or XT with EGA or higher

HP 95LX only supports write mode 00h

BUG:	on the IBM VGA Adapter, any scrolling which may occur is performed on

  the active page rather than the requested page

SeeAlso: AH=09h,AH=0Ah,AH=13h"DOS/V"

INT 10


INT 10 13-- - DOS/V - READ/WRITE DOUBLE-BYTE CHARACTER SET CHARACTERS/ATTRIBUTES

Category: J - Japanese

Inp.:

AH = 13h

AL = function

    10h read characters and standard attributes

    11h read characters and extended attributes

    12h write characters and standard attributes

    13h write characters and extended attributes

BH = 00h

CX = number of characters to transfer

DH,DL = row,column at which to start transfer

ES:BP -> buffer for/containing characters and attributes (see #0033)

Return: ES:BP buffer filled if reading

Program: DOS/V is a Japanese-language version of MS-DOS which can run on

  standard (non-Japanese) ATs and compatible equipped with a VGA or

  newer video adapter

Notes:	subfunctions 11h and 13h are only valid when DOS/V is using video

  mode 73h

the cursor position is not changed by these functions

extended attributes consist of three bytes; the first is the standard

  character attribute byte, the second is as described below, and the

  third is always zero in current versions

SeeAlso: AH=00h,AH=13h"VIDEO"

INT 10


INT 10 1400 - VIDEO - LOAD USER-SPECIFIED LCD CHARACTER FONT (CONV,Compaq Port 386)

Category: V - video

Inp.:

AX = 1400h

ES:DI -> character font

BH = number of bytes per character

    08h or 10h (Compaq)

BL = 00h load main font (block 0)

     01h load alternate font (block 1)

CX = number of characters to store

DX = character offset into RAM font area

SeeAlso: AH=11h,AX=1401h

INT 10


INT 10 1401 - VIDEO - LOAD SYSTEM ROM DEFAULT LCD CHARACTER FONT (CONV,CP386)

Category: V - video

Inp.:

AX = 1401h

BL = font to load

    00h main font (block 0)

    01h alternate font (block 1)

SeeAlso: AH=11h,AX=1400h

INT 10


INT 10 1402 - VIDEO - SET MAPPING OF LCD HIGH INTENSITY ATTRIBUTES (CONV,CP386)

Category: V - video

Inp.:

AX = 1402h

BL = function

    00h ignore high intensity attribute

    01h map high intensity to reverse video

    02h map high intensity to underscore

    03h map high intensity to selected alternate font

    B0h half intensity (Compaq)

    B1h toggle active intensity bit interpretation (CP386)

INT 10


INT 10 15-- - VIDEO - GET PHYSICAL DISPLAY PARAMETERS (CONVERTIBLE)

Category: V - video

Inp.:

AH = 15h

Return: AX = alternate display adapter type (see #0034)

ES:DI -> parameter table (see #0035)

SeeAlso: AH=1Bh

INT 10


INT 10 15-- - VIDEO - SET SUPERIMPOSE MODE (Sperry PC)

Category: V - video

Inp.:

AH = 15h

AL = superimpose mode

    00h show graphics screen

    01h show text screen

    02h show text screen superimposed on graphics screen

INT 10


INT 10 18-- - VIDEO - DOS/V - GET/SET FONT PATTERN

Category: J - Japanese

Inp.:

AH = 18h

AL = function

    00h get font pattern

    01h set font pattern

BX = 0000h

CL = character size in bytes (01h,02h)

CH = 00h

DH = character width in pixels

DL = character height in pixels

ES:DI -> buffer for/containing font image

Return: AL = status (00h successful, else error)

ES:DI buffer filled for function 00h if successful

Note:	the supported font sizes are 8x16 single-byte, 8x19 single-byte,

  16x16 double-byte, and 24x24 double-byte

SeeAlso: AH=19h,INT 16/AH=14h

INT 10


INT 10 19-- - Japanese VIDEO - DOUBLE-BYTE CHARACTER SET SHIFT INFORMATION

Category: V - video

Inp.:

AH = 19h

???

Return: ???

SeeAlso: AH=18h,INT 16/AH=14h

INT 10


INT 10 1A00 - VIDEO - GET DISPLAY COMBINATION CODE (PS,VGA/MCGA)

Category: V - video

Inp.:

AX = 1A00h

Return: AL = 1Ah if function was supported

    BL = active display code (see #0036)

    BH = alternate display code (see #0036)

Notes:	this function is commonly used to check for the presence of a VGA

this function is supported on the ATI EGA Wonder with certain

  undocumented configuration switch settings, even though the EGA

  Wonder does not support VGA graphics; to distinguish this case,

  call AX=1C00h with CX nonzero, which the EGA Wonder does not support

SeeAlso: AH=12h/BL=35h,AX=1A01h,AH=1Bh

Index:	installation check;VGA

INT 10


INT 10 1A01 - VIDEO - SET DISPLAY COMBINATION CODE (PS,VGA/MCGA)

Category: V - video

Inp.:

AX = 1A01h

BL = active display code (see #0036)

BH = alternate display code

Return: AL = 1Ah if function was supported

SeeAlso: AH=12h/BL=35h,AX=1A00h

INT 10


INT 10 1B-- - VIDEO - FUNCTIONALITY/STATE INFORMATION (PS,VGA/MCGA)

Category: V - video

Inp.:

AH = 1Bh

BX = implementation type

    0000h return funtionality/state information

ES:DI -> 64-byte buffer for state information (see #0037)

Return: AL = 1Bh if function supported

    ES:DI buffer filled with state information

BUG:	Trident 8900 (BIOS D3.0 11/12/91) and Trident 9000 (C3.0 10/25/91)

  do not correctly set the fields at offsets 27h and 29h of the

  state information

SeeAlso: AH=15h,AX=1A00h,AX=1F01h

INT 10


INT 10 1C-- - VIDEO - SAVE/RESTORE VIDEO STATE (PS50+,VGA)

Category: V - video

Inp.:

AH = 1Ch

AL = function

    00h return state buffer size

Return: BX = number of 64-byte blocks needed

    01h save video state

ES:BX -> buffer

    02h restore video state

ES:BX -> buffer containing previously saved state

CX = requested states (see #0043)

Return: AL = 1Ch if function supported

Notes:	many BIOSes corrupt the video registers when saving the state, so a

  program should restore the state immediately after saving it (the

  saved data is uncorrupted)

the BIOS data area consists of the 96 bytes from 0040h:0049h-00A8h

this function is not supported when DOS/V is running

INT 10


INT 10 1D-- - VIDEO - DOS/V - SHIFT STATUS LINE CONTROL

Category: J - Japanese

Inp.:

AH = 1Dh

AL = function

    00h enable shift status line(s)

BX = number of lines to reserve at bottom of screen (usu. 1)

    01h disable shift status line

BX = number of lines reserved at bottom of screen (usually 1)

    02h get number of status lines

Return: BX = number of lines reserved for shift status

SeeAlso: AH=19h

INT 10


INT 10 1D-- - SpeedSTAR Plus BIOS v4.23+ - SET SYNC PARAMETERS

Category: V - video

Inp.:

AH = 1Dh

AL = video mode

ES = caller's segment

Return: nothing

Note:	the caller's segment contains at offset 5Ch (FCB field in PSP)

  or 100h a table with sync parameters (see #0046) (BIOS looks at both

  offsets)

INT 10


INT 10 1D-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

Category: V - video

Inp.:

AH = 1Dh

Note:	these versions of the BIOS jump to a random location on this function

  due to a fencepost error

INT 10


INT 10 1F00 - VIDEO - XGA - GET DMQS (Display Mode Query and Set) DATA LENGTH

Category: V - video

Inp.:

AX = 1F00h

Return: AL = 1Fh if supported

    BX = number of bytes of DMQS data

Note:	not supported on the original IBM XGA, only on XGA-NI (non-interlaced)

  and later models.

SeeAlso: AX=1F01h

INT 10


INT 10 1F01 - VIDEO - XGA - READ DMQS DATA

Category: V - video

Inp.:

AX = 1F01h

ES:DI -> user buffer for return data (call AX=1F00h for size)

Return: AL = 1Fh if function supported

user buffer filled with DMQS data (see #0047)

Note:	not supported on the original IBM XGA, only on XGA-NI (non-interlaced)

  and later models.

SeeAlso: AH=1Bh,AX=1F00h,AX=3000h

INT 10


INT 10 3000 - VIDEO - LOCATE 3270PC CONFIGURATION TABLE (INSTALLATION CHECK)

Category: V - video

Inp.:

AX = 3000h

CX = 0000h

DX = 0000h

Return: CX:DX -> 3270PC configuration table (see #0048)

CX:DX = 0000h:0000h if 3270PC Control Program not active

SeeAlso: AX=1F01h

INT 10


INT 10 3800 - Tinytalk Personal v1.09f+ - GET CONFIGURATION INFO

Category: a - access software (screen readers, etc)

Inp.:

AX = 3800h

Return: ES:DI -> configuration info (see #0052)

Program: Tinytalk is a shareware screen reader by OMS Development/Eric Bohlman

Notes:	this call is also used as the installation check by verifying that the

  returned ES:DI points at valid configuration info

Tinytalk v1.09f ignores AL and always returns the configuration info;

  v1.10 adds several subfunctions selected with AL

SeeAlso: AX=3801h,AX=3803h,AX=3806h,AH=39h,INT 14/AX=F0F1h

SeeAlso: INT 2F/FB00h"AutoBraille"

Index:	installation check;Tinytalk Personal

INT 10


INT 10 3801 - Tinytalk Personal v1.10 - ???

Category: a - access software (screen readers, etc)

Inp.:

AX = 3801h

DL = ???

Return: ???

SeeAlso: AX=3800h,AX=3802h

INT 10


INT 10 3802 - Tinytalk Personal v1.10 - ???

Category: a - access software (screen readers, etc)

Inp.:

AX = 3802h

DL = ???

Return: ???

SeeAlso: AX=3800h,AX=3801h

INT 10


INT 10 3803 - Tinytalk Personal v1.10 - GET ???

Category: a - access software (screen readers, etc)

Inp.:

AX = 3803h

Return: AL = ???

SeeAlso: AX=3800h,AX=3804h,AX=3805h

INT 10


INT 10 3804 - Tinytalk Personal v1.10 - GET ???

Category: a - access software (screen readers, etc)

Inp.:

AX = 3804h

Return: AX = ???

SeeAlso: AX=3800h,AX=3803h,AX=3805h

INT 10


INT 10 3805 - Tinytalk Personal v1.10 - GET ???

Category: a - access software (screen readers, etc)

Inp.:

AX = 3805h

Return: AL = ???

SeeAlso: AX=3800h,AX=3803h,AX=3804h

INT 10


INT 10 3806 - Tinytalk Personal v1.10 - ???

Category: a - access software (screen readers, etc)

Inp.:

AX = 3806h

ES:DX -> ASCIZ ???

Return: ???

SeeAlso: AX=3800h

INT 10


INT 10 39-- - Tinytalk Personal v1.10 - ???

Category: a - access software (screen readers, etc)

Inp.:

AH = 39h

Program: Tinytalk is a shareware screen reader by OMS Development/Eric Bohlman

Note:	this function was a NOP in TTDEMO.EXE, but may be implemented in other

  variants of Tinytalk

INT 10


INT 10 40-- - VIDEO - SET GRAPHICS MODE (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 40h

Desc:	switch the Hercules Graphics Card into graphics mode (720x348)

SeeAlso: AH=00h,AH=41h

Index:	video modes;Hercules

INT 10


INT 10 41-- - VIDEO - SET TEXT MODE (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 41h

Desc:	switch the Hercules Graphics Card into text mode

SeeAlso: AH=00h,AH=40h

Index:	video modes;Hercules

INT 10


INT 10 42-- - VIDEO - CLEAR CURRENT PAGE (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 42h

SeeAlso: AH=45h

INT 10


INT 10 43-- - VIDEO - SELECT DRAWING PAGE (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 43h

AL = page number (0,1)

Desc:	specify which of the two pages of video memory is to be used for

  output

SeeAlso: AH=05h,AH=44h,AH=45h

INT 10


INT 10 44-- - VIDEO - SELECT DRAWING FUNCTION (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 44h

AL = drawing function

    00h clear pixels

    01h set pixels

    02h invert pixels

Desc:	specify how graphics output will change the display

SeeAlso: AH=45h,AH=46h,AH=4Ch,AH=4Dh

INT 10


INT 10 45-- - VIDEO - SELECT PAGE TO DISPLAY (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 45h

AL = page number (0,1)

Desc:	specify which of the two pages of video memory is visible on screen

SeeAlso: AH=05h,AH=42h,AH=43h

INT 10


INT 10 46-- - VIDEO - DRAW ONE PIXEL (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 46h

DI = x (0-719)

BP = y (0-347)

Note:	function 44h determines operation and function 43h which page to use

SeeAlso: AH=0Ch,AH=47h,AH=49h,AH=4Ch,AH=4Dh

INT 10


INT 10 47-- - VIDEO - FIND PIXEL VALUE (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 47h

DI = x (0-719)

BP = y (0-347)

Return: AL = 00h pixel clear

AL = 01h pixel set

Note:	function 43h specifies which page is used

SeeAlso: AH=0Dh,AH=46h

INT 10


INT 10 48-- - VIDEO - MOVE TO POINT (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 48h

DI = x (0-719)

BP = y (0-347)

Desc:	specify the location from which to start the next graphics output

SeeAlso: AH=49h

INT 10


INT 10 49-- - VIDEO - DRAW TO POINT (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 49h

DI = x (0-719)

BP = y (0-347)

Note:	function 48h or 49h specify first point, 44h operation and 43h page to

  use

SeeAlso: AH=43h,AH=44h,AH=48h,AH=4Ch,AH=4Dh

INT 10


INT 10 4A-- - VIDEO - BLOCK FILL (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 4Ah

DI = x coordinate of lower left corner

BP = y coordinate of lower left corner

BX = height in pixels

CX = width in pixels

Desc:	draw a solid rectangle of the specified size at the given location

SeeAlso: AH=4Eh

INT 10


INT 10 4B-- - VIDEO - DISPLAY CHARACTER (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 4Bh

AL = character to display

DI = x (0-719)

BP = y (0-347)

Note:	unlike the other BIOS character functions character position is

  specified in pixels rather than rows and columns

SeeAlso: AH=09h,AH=0Ah

INT 10


INT 10 4B-- - FRIEZE - API

Category: - - (none)

Inp.:

AH = 4Bh

CL = function

    00h (v6.x-) print window

AL = mode

    00h character

    01h normal

    02h sideways

    01h load window

ES:BX -> ASCIZ filename from which to read

    02h save window

ES:BX -> ASCIZ filename to which to write

    03h set print width

AL = width in 1/4 inches

    04h set print height

AL = height in 1/4 inches

    05h reserved

    06h set left margin

AL = printout margin in 1/4 inches

    07h set window size

ES:BX -> four-WORD structure with Xmin, Ymin, Xmax, Ymax

    08h reserved

    09h set patterns

ES:BX -> 16-BYTE vector of screen->printer color correspondnces

    0Ah get patterns

ES:BX -> 16-BYTE buffer for color correspondences

    0Bh set mode

AL = mode

    0Ch (v7.41) ???

AL = ???

    00h ??? (calls original INT 05)

    else ???

    0Dh (v7.41) ???

AL = ???

    00h ??? (calls original INT 05)

    else ???

    0Eh (v7.41) ???

???

    0Fh get window

ES:BX -> four-WORD buffer for Xmin, Ymin, Xmax, Ymax

    10h set print options

ES:BX -> printer options in same format as FRIEZE cmdline

    11h initialize

ES:BX -> three-WORD array from CARDS.DAT for HRes, VRes, code

    12h (v7.41) ???

???

    13h (v7.41) ???

???

    14h get version

Return: AH = major version (00h if FRIEZE version before 7)

AL = minor version

    15h set parameters

ES:BX -> parameter table (see #0054)

    16h get parameters

ES:BX -> buffer for parameter table (see #0054)

    17h get printer resolution

ES:BX -> 12-WORD table for six horizontal/vertical resol pairs

    18h (v8.0 only) reserved

    50h (v7.41) get ???

Return: AX = ???

    51h (v7.41) get ???

Return: ES = ??? (seen 2348h)

AX = ??? (seen 8432h)

Return: AX = status (see #0053)

SeeAlso: AH=0Fh/SI=F123h

INT 10


INT 10 4C-- - VIDEO - DRAW ARC (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 4Ch

AL = quadrant (1 = upper right, 2 = upper left, etc)

DI = x coordinate of center

BP = y coordinate of center

BX = radius

SeeAlso: AH=49h,AH=4Dh

INT 10


INT 10 4D-- - VIDEO - DRAW CIRCLE (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 4Dh

DI = x of center

BP = y of center

BX = radius

SeeAlso: AH=49h,AH=4Ch

INT 10


INT 10 4E-- - VIDEO - FILL AREA (Hercules GRAFIX)

Category: V - video

Inp.:

AH = 4Eh

DI = x coordinate of an interior point

BP = y coordinate of an interior point

Desc:	fill a convex polygonal area bounded by a contiguous line of the

  opposite color with the border color

Note:	the first fill makes the figure solid, the second erases it

SeeAlso: AH=4Ah

INT 10


INT 10 4E00 - VESA XGA BIOS Extensions - GET XGA ENVIRONMENT INFORMATION

Category: V - video

Inp.:

AX = 4E00h

ES:DI -> 256-byte buffer for XGA information (see #0055)

Return: AL = 4Eh if function supported

    AH = status

00h successful

else error code

Desc:	determine whether VESA XGA extensions are present and the capabilities

  supported by the display adapter

SeeAlso: AX=4E01h,AX=4E02h,AX=4F00h

Index:	installation check;VESA XGA

INT 10


INT 10 4E01 - VESA XGA BIOS Extensions - RETURN XGA SUBSYSTEM INFORMATION

Category: V - video

Inp.:

AX = 4E01h

DX = XGA handle (0 to number of XGAs-1)

ES:DI -> 256-byte buffer for subsystem information (see #0057)

Return: AL = 4Eh if function supported

AH = status

    00h	 function successful

    else error code

SeeAlso: AX=4E00h,AX=4E02h

INT 10


INT 10 4E02 - VESA XGA BIOS Extensions - RETURN XGA MODE INFORMATION

Category: V - video

Inp.:

AX = 4E02h

CX = Video mode

DX = XGA handle

ES:DI -> 256 byte buffer for mode information (see #0059)

Return: AL = 4Eh if function supported

AH = status

    00h	 function successful

    else error code

SeeAlso: AX=4E00h,AX=4E01h

INT 10


INT 10 4E03 - VESA XGA BIOS Extensions - SET XGA VIDEO MODE

Category: V - video

Inp.:

AX = 4E03h

BX = video mode

CX = other command flags

     bit 0  If clear the feature connector is set to the default state

DX = XGA handle

ES:DI -> 256 byte buffer

Return: AL = 4Eh if function supported

AH = status

    00h	 function successful

    else error code

SeeAlso: AH=00h,AX=4E04h,AX=4F02h

INT 10


INT 10 4E04 - VESA XGA BIOS Extensions - RETURN CURRENT VIDEO MODE

Category: V - video

Inp.:

AX = 4E04h

DX = XGA handle

Return: AL = 4Eh if function supported

AH = status

    00h	 function successful

BX??? = current mode

    else error code

SeeAlso: AH=0Fh,AX=4E03h,AX=4F03h

INT 10


INT 10 4E05 - VESA XGA BIOS Extensions - SET FEATURE CONNECTOR STATE

Category: V - video

Inp.:

AX = 4E05h

BX = Feature Connector State (see #0062)

DX = XGA handle

Return: AL = 4Eh if function supported

AH = status

    00h	 function successful

    else error code

SeeAlso: AX=4E00h,AX=4E06h

INT 10


INT 10 4E06 - VESA XGA BIOS Extensions - RETURN FEATURE CONNECTOR STATE

Category: V - video

Inp.:

AX = 4E06h

DX = XGA handle

Return: AL = 4Eh if function supported

AH = status

    00h	 function successful

    else error code

BX = Feature Connector State (see #0062)

SeeAlso: AX=4E00h,AX=4E05h

INT 10


INT 10 4F00 - VESA SuperVGA BIOS (VBE) - GET SuperVGA INFORMATION

Category: V - video

Inp.:

AX = 4F00h

ES:DI -> buffer for SuperVGA information (see #0063)

Return: AL = 4Fh if function supported

AH = status

    00h successful

ES:DI buffer filled

    01h failed

    ---VBE v2.0---

    02h function not supported by current hardware configuration

    03h function invalid in current video mode

Desc:	determine whether VESA BIOS extensions are present and the capabilities

  supported by the display adapter

SeeAlso: AX=4E00h,AX=4F01h,AX=7F00h,AX=A00Ch

Index:	installation check;VESA SuperVGA

INT 10


INT 10 4F01 - VESA SuperVGA BIOS - GET SuperVGA MODE INFORMATION

Category: V - video

Inp.:

AX = 4F01h

CX = SuperVGA video mode

ES:DI -> 256-byte buffer for mode information (see #0065)

Return: AL = 4Fh if function supported

AH = status

    00h successful

ES:DI buffer filled

    01h failed

Desc:	determine the attributes of the specified video mode

SeeAlso: AX=4F00h,AX=4F02h

INT 10


INT 10 4F02 - VESA SuperVGA BIOS - SET SuperVGA VIDEO MODE

Category: V - video

Inp.:

AX = 4F02h

BX = mode (see #0069,#0070)

    bit 15 set means don't clear video memory

    bit 14 set means enable linear framebuffer mode (VBE v2.0+)

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

SeeAlso: AX=4E03h,AX=4F01h,AX=4F03h

INT 10


INT 10 4F03 - VESA SuperVGA BIOS - GET CURRENT VIDEO MODE

Category: V - video

Inp.:

AX = 4F03h

Return: AL = 4Fh if function supported

AH = status

    00h successful

BX = video mode (see #0069,#0070)

    bit 14: linear frame buffer enabled (VBE v2.0+)

    bit 15: don't clear video memory

    01h failed

SeeAlso: AH=0Fh,AX=4E04h,AX=4F02h

INT 10


INT 10 4F04 - VESA SuperVGA BIOS - SAVE/RESTORE SuperVGA VIDEO STATE

Category: V - video

Inp.:

AX = 4F04h

DL = subfunction

    00h get state buffer size

Return: BX = number of 64-byte blocks needed

    01h save video states

ES:BX -> buffer

    02h restore video states

ES:BX -> buffer

CX = states to save/restore (see #0071)

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

INT 10


INT 10 4F05 - VESA SuperVGA BIOS - CPU VIDEO MEMORY CONTROL

Category: V - video

Inp.:

AX = 4F05h

BH = subfunction

    00h select video memory window

DX = window address in video memory (in granularity units)

    01h get video memory window

Return: DX = window address in video memory (in gran. units)

BL = window number

    00h window A

    01h window B

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

SeeAlso: AX=4F01h,AX=4F06h,AX=4F07h,AX=7000h/BX=0004h

INT 10


INT 10 4F06 - VESA SuperVGA BIOS v1.1+ - GET/SET LOGICAL SCAN LINE LENGTH (PIXELS)

Category: V - video

Inp.:

AX = 4F06h

BL = function

    00h set scan line length

CX = desired width in pixels

    01h get scan line length

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

BX = bytes per scan line

CX = number of pixels per scan line

DX = maximum number of scan lines

Notes:	if the desired width is not achievable, the next larger width will be

  set

the scan line may be wider than the visible area of the screen

this function is valid in text modes, provided that pixel values are

  multiplied by the character cell width/height

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h/BL=02h,AX=4F06h/BL=03h,AX=4F07h

INT 10


INT 10 4F06 - VESA SuperVGA BIOS v2.0+ - SET LOGICAL SCAN LINE LENGTH (BYTES)

Category: V - video

Inp.:

AX = 4F06h

BL = 02h

CX = desired scanline width in bytes

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

BX = bytes per scan line

CX = number of pixels per scan line

DX = maximum number of scan lines

Notes:	if the desired width is not achievable, the next larger width will be

  set

the scan line may be wider than the visible area of the screen

this function is valid in text modes, provided that pixel values are

  multiplied by the character cell width/height

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h,AX=4F06h/BL=03h,AX=4F07h

INT 10


INT 10 4F06 - VESA SuperVGA BIOS v2.0+ - GET MAXIMUM SCAN LINE LENGTH

Category: V - video

Inp.:

AX = 4F06h

BL = 03h

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

BX = maximum bytes per scan line

CX = maximum number of pixels per scan line

Notes:	this function is valid in text modes, provided that pixel values are

  multiplied by the character cell width/height

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h,AX=4F06h/BL=02h,AX=4F07h

INT 10


INT 10 4F07 - VESA SuperVGA BIOS v1.1+ - GET/SET DISPLAY START

Category: V - video

Inp.:

AX = 4F07h

BL = function

    00h,80h set display start

CX = leftmost displayed pixel in scan line

DX = first displayed scan line

    01h get display start

Return: BH = 00h

CX = leftmost displayed pixel in scan line

DX = first displayed scan line

BH = 00h (reserved)

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

Notes:	this function is valid in text modes, provided that values are

  multiplied by the character cell width/height

subfunction 80h waits until vertical retrace before changing the

  display start address (VBE v2.0+)

SeeAlso: AX=4F01h,AX=4F05h,AX=4F06h

INT 10


INT 10 4F08 - VESA SuperVGA BIOS v1.2+ - GET/SET DAC PALETTE CONTROL

Category: V - video

Inp.:

AX = 4F08h

BL = function

    00h set DAC palette width

BH = desired number of bits per primary color

    01h get DAC palette width

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

BH = current number of bits per primary (06h = standard VGA)

INT 10


INT 10 4F09 - VESA SuperVGA BIOS v2.0+ - GET/SET PALETTE ENTRIES

Category: V - video

Inp.:

AX = 4F09h

BL = function

    00h set palette

    01h get palette

    02h set secondary palette data

    03h get secondary palette data

    80h set palette during vertical retrace

CX = number of entries to change

DX = starting palette index

ES:DI -> palette buffer (see #0072)

Return: AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

INT 10


INT 10 4F0A - VESA SuperVGA BIOS v2.0+ - GET PROTECTED-MODE CODE

Category: V - video

Inp.:

AX = 4F0Ah

BX = function to be copied (see #0073)

Return: AL = 4Fh if function supported

AH = status

    00h successful

CX = number of bytes to copy

ES:DI -> code for requested function

    01h failed

INT 10


INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - GET CAPABILITIES

Category: p - power management

Inp.:

AX = 4F10h

BL = 00h

ES:DI = 0000h:0000h (reserved for future use)

Return: AL = 4Fh if function supported (installed)

AH = call status

    00h successful

    else failed

---if successful---

BL = VBE/PM version (bits 7-4: major, bits 3-0: minor)

BH = supported states (see #0074)

ES:DI unchanged

Index:	installation check;VESA VBE/Power Management

SeeAlso: AX=4F10h/BL=01h,AX=4F10h/BL=02h

INT 10


INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - SET DISPLAY POWER STATE

Category: p - power management

Inp.:

AX = 4F10h

BL = 01h

BH = new state (see #0075)

Return: AL = 4Fh if function supported

AH = call status

    00h successful

    else failed

SeeAlso: AX=4F10h/BL=00h,AX=4F10h/BL=02h,AX=A00Ch

INT 10


INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - GET DISPLAY POWER STATE

Category: p - power management

Inp.:

AX = 4F10h

BL = 02h

Return: AL = 4Fh if function supported

AH = call status

    00h successful

       BH = current power state (see #0075)

    else failed

SeeAlso: AX=4F10h/BL=00h,AX=4F10h/BL=01h

INT 10


INT 10 4F13 - VESA Audio Interface - VBE/AI INSTALLATION CHECK

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0000h

Return:	AL = 4Fh if function supported

    AH = status

00h successful

    BX = version (0010h for 1.00 -- note nonstandard value!)

01h failed

SeeAlso: AX=4F13h/BX=0001h,AX=4F13h/BX=0005h

INT 10


INT 10 4F13 - VESA Audio Interface - LOCATE DEVICE

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0001h

CX = 0000h ???

DX = type of device

    0001h Wave device

    0002h MIDI device

    0003h Volume device

Return:	AL = 4Fh if function supported

AH = status

    00h successful

CX = handle [returned 1 for DX=1 and 3, and 2 for DX=2]

    01h failed

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0002h

INT 10


INT 10 4F13 - VESA Audio Interface - QUERY DEVICE

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0002h

CX = handle

DX = query

    0001h return length of GeneralDeviceClass

    0002h return copy	of GeneralDeviceClass (see #0076)

    0003h return length of Volume Info Structure

    0004h return copy	of Volume Info Structure (see #0086)

    0005h return length of Volume Services Structure

    0006h return copy	of Volume Services Structure (see #0088)

    0007h-000Fh reserved

    0010h-FFFFh device-specific

SI:DI -> buffer (functions 0002h,0004h,0006h)

Return:	AL = 4Fh if function supported

AH = status

    00h successful

SI:DI = length (functions 1,3,5)

SI:DI buffer filled (functions 2,4,6)

    01h failed

Note:	functions 0003h to 0006h are only supported for the Volume device

INT 10


INT 10 4F13 - VESA Audio Interface - OPEN DEVICE

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0003h

CX = handle

DX = API set (16/32-bit)

SI = segment ???

Return:	AL = 4Fh if function supported

AH = status

    00h successful

SI:CX -> memory ???

    01h failed

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0002h,AX=4F13h/BX=0004h

INT 10


INT 10 4F13 - VESA Audio Interface - CLOSE DEVICE

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0004h

CX = handle

Return:	AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0003h,AX=4F13h/BX=0005h

INT 10


INT 10 4F13 - VESA Audio Interface - UNINSTALL DRIVER

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0005h

Return:	AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0006h

INT 10


INT 10 4F13 - VESA Audio Interface - DRIVER CHAIN/UNCHAIN

Category: s - sound/speech

Inp.:

AX = 4F13h

BX = 0006h

Return:	AL = 4Fh if function supported

AH = status

    00h successful

    01h failed

SeeAlso: AX=4F13h/BX=0000h,AX=4F13h/BX=0005h

INT 10


INT 10 4F4D - VESA - VIDEO CURSOR INTERFACE REQUEST

Category: V - video

Inp.:

AX = 4F4Dh

BX = number of bytes available for VCI use

DS:0000h -> buffer for VCI

ES:DI -> VCI driver callback function

Return: AL = 4Fh if supported

    AH = status

00h successful

    BX = number of bytes used by VCI

    ES:DI -> VCI request handler

01h failed

Desc:	allow the VESA BIOS Extensions to cooperate with a pointing-device

  (typically mouse) driver

INT 10


INT 10 4FFF - VESA SuperVGA BIOS - Everex - TURN VESA ON/OFF

Category: V - video

Inp.:

AX = 4FFFh

DL = new state (00h off, 01h on)

Return: AX = 0000h if successful

INT 10


INT 10 4FFF - Diamond Stealth 24 - SET/RESET DUAL DISPLAY MODE

Category: V - video

Inp.:

AX = 4FFFh

BX = dual display mode

    00h reset

    01h set dual display, 32KB VGA test

    02h set dual display, 64KB VGA test

Return: AX = 4F00h if successful

    BX = number of scanlines off screen for test mode

INT 10


INT 10 50-- - SCROLOCK.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AH = 50h

Return: BX = 1954h if installed

    AL = 00h if inactive, nonzero if active

Program: SCROLOCK is a utility supplied with System Enhancement Associates' ARC

SeeAlso: AH=51h

INT 10


INT 10 5000 - VIDEO - AX PC - SET SCREEN COUNTRY CODE

Category: J - Japanese

Inp.:

AX = 5000h

BX = country code

    0001h USA (English), 0051h Japan

Return: AL = status

    00h successful

    01h bad country code

    02h other error

SeeAlso: AX=5001h,INT 16/AX=5000h

INT 10


INT 10 5001 - VIDEO - AX PC - GET SCREEN COUNTRY CODE

Category: J - Japanese

Inp.:

AX = 5001h

Return: AL = status

    00h successful

BX = country code

    02h error

SeeAlso: AH=00h,AX=5000h,INT 16/AX=5001h,INT 21/AH=38h

INT 10


INT 10 5049 - VIDEO - SCREENR v1.55+ - API

Category: V - video

Inp.:

AX = 5049h ('PI')

BX = function

    0000h installation check

    0001h lock mode

    0002h unlock mode

    0003h lock palette

    0004h unlock palette

Return: AX = 0000h if installed

    BX = TSR version (BH=major,BL=minor)

    CL = mode locking status

00h mode not locked

01h mode locked: INT 10/AH=00h disabled

    CH = palette locking status

00h palette not locked

01h palette locked, the following functions are disabled:

AX=1000h, AX=1001h, AX=1002h, AX=1010h, AX=1012h

Program: SCREENR is a TSR supplied with Patrick Ibbetson's SCREEN display

  utility.

Index:	installation check;SCREENR

INT 10


INT 10 51-- - SCROLOCK.COM - ENABLE/DISABLE

Category: U - resident utilities

Inp.:

AH = 51h

AL = state

    00h disable

    nonzero enable

Program: SCROLOCK is a utility supplied with System Enhancement Associates' ARC

SeeAlso: AH=50h"SCROLOCK"

INT 10


INT 10 5100 - VIDEO - AX PC - REGISTER EXTERNAL CHARACTER

Category: J - Japanese

Inp.:

AX = 5100h

BH = character width in bits (10h)

BL = character height (10h)

DX = character code (DH = F0h-F3h, DL=40h-7Eh,80h-FCh)

ES:BP -> character bitmap

Return: AL = status (00h successful, 01h failed)

SeeAlso: AX=5101h,INT 1F

INT 10


INT 10 5101 - VIDEO - AX PC - READ CHARACTER

Category: J - Japanese

Inp.:

AX = 5101h

BH = character width in bits

BL = character height

DX = character code (DH = 00h if 8-bit character)

ES:BP -> buffer for character bitmap

Return: AL = status (00h successful, 01h failed)

SeeAlso: AH=09h,AX=5100h

INT 10


INT 10 5200 - VIDEO - AX PC - SET VIRTUAL TEXT RAM BUFFER

Category: J - Japanese

Inp.:

AX = 5200h

BX = segment of buffer

SeeAlso: AX=5201h

INT 10


INT 10 5201 - VIDEO - AX PC - GET VIRTUAL TEXT RAM BUFFER

Category: J - Japanese

Inp.:

AX = 5201h

Return: BX = segment of buffer or 0000h if failed

SeeAlso: AX=8300h,AH=FEh

INT 10


INT 10 53-- - Show Partner F/X v3.6 - START PRESENTATION

Category: - - (none)

Inp.:

AH = 53h

DS:DX -> ASCIZ name of presentation file (no path, extension forced to

.PR2)

Return: ???

SeeAlso: AH=55h

INT 10


INT 10 55-- - Show Partner F/X v3.6 - UNINSTALL

Category: - - (none)

Inp.:

AH = 55h

Return: FXSHOW.EXE removed from memory

SeeAlso: AH=53h

INT 10


INT 10 5555 - VIDEO - ATI EGA/VGA Wonder Super Switch - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 5555h

Return: AX = AAAAh    if installed

BX:CX -> ??? routine in SMS.COM resident portion

      -> data area (see #0089) in VCONFIG

Program: Super Switch (SMS.COM) is a video mode switch program supplied with

  ATI EGA Wonder. It also maps video mode 08h to 27h or 23h.

SeeAlso: INT 10/AH=00h,INT 14/AX=AA01h,INT 2F/AX=6400h

Index:	screen saver;ATI Wonder SMS.COM

INT 10


INT 10 5F00 - Chips & Technologies Extended BIOS - RETURN CHIP INFORMATION

Category: V - video

Inp.:

AX = 5F00h

Return: AL = 5Fh function supported

    BL = chip type (see #0090)

    BH = video memory size (00h 256KB, 01h 512KB, 02h 1MB)

    CX = miscellaneous information (see #0091)

SeeAlso: AX=5F01h

INT 10


INT 10 5F00 - VIDEO - Realtek RTVGA - RETURN CHIP VERSION

Category: V - video

Inp.:

AX = 5F00h

Return: AH = 00h, if successful

AL = chip version (the same value that VTEST.EXE reads)

    00h RTG3103???

    01h RTG31030/RTG3105

    02h RTG3106???

    3Fh non-Realtek chip

BUG:	in v3.C10, AX=5F00h on return due to improper stack restoration code

SeeAlso: AX=5F01h"RTVGA"

INT 10


INT 10 5F01 - Chips & Technologies Extended BIOS - SET PREPROGRAMMED EMULATION

Category: V - video

Inp.:

AX = 5F01h

BL = emulation type (see #0092)

Return: AL = 5Fh if function supported

    AH = status

00h unsuccessful

01h successful

SeeAlso: AX=5F00h,AX=5F02h,AH=FFh"Oak"

INT 10


INT 10 5F01 - VIDEO - Realtek RTVGA - WRITE RTVGA BIOS STRING TO DESTINATION

Category: V - video

Inp.:

AX = 5F01h

ES:DI -> zero-filled buffer for BIOS ID string

Return: AH = 00h if successful

ES:DI -> ASCII signature "REALTEK VGA BIOS Version 3C.10"

BUG:	in v3.C10, AX=5F01h on return due to improper stack restoration code

SeeAlso: AX=5F00h"RTVGA",AX=5F02h"RTVGA"

INT 10


INT 10 5F02 - Chips & Technologies Extended BIOS - AUTO EMULATION CONTROL

Category: V - video

Inp.:

AX = 5F02h

BL = new state of autmatic emulation (00h enabled, 01h disabled)

Return: AL = 5Fh if function supported

    AH = status

00h unsuccessful

01h successful

SeeAlso: AX=5F01h,AX=5F03h

INT 10


INT 10 5F02 - VIDEO - Realtek RTVGA - RETURN RTVGA ON-BOARD MEMORY SIZE

Category: V - video

Inp.:

AX = 5F02h

Return: AH = 00h, if successful

AL = on-board memory size

     (00h = 256K, 01h = 512K, 02h = 768K, 03h = 1024K)

BUG:	in v3.C10, AX=5F02h on return due to improper stack restoration code

SeeAlso: AX=5F01h"RTVGA",AX=5F03h"RTVGA"

INT 10


INT 10 5F03 - VIDEO - Realtek RTVGA - SET ???

Category: V - video

Inp.:

AX = 5F03h

BL = 0-3 (???)

Return: AH = 00h if successful

BUG:	in v3.C10, AX=5F03h on return due to improper stack restoration code

SeeAlso: AX=5F02h"RTVGA"

INT 10


INT 10 5F03 - Chips & Technologies Extended BIOS - SET POWER-ON VIDEO CONDITIONS

Category: V - video

Inp.:

AX = 5F03h

BL = configuration

    00h power-up display mode

CL = display mode

CH = mode (see #0093)

    01h power-up emulation mode

CL = emulation mode (see #0092)

CH = permanence (00h reset after next boot, 01h until changed)

Return: AL = 5Fh if function supported

    AH = status

00h unsuccessful

01h successful

SeeAlso: AX=5F02h,AX=5F03h/BL=01h,AX=5F90h

INT 10


INT 10 5F03 - Chips & Technologies Extended BIOS - SET POWER-ON EMULATION MODE

Category: V - video

Inp.:

AX = 5F03h

BL = 01h

CL = emulation mode

CH = mode

    bit 7 persistence (0 reset on next boot, 1 until changed)

Return: AL = 5Fh if function supported

    AH = status

00h unsuccessful

01h successful

SeeAlso: AX=5F02h,AX=5F03h/BL=00h,AX=5F90h

INT 10


INT 10 5F10 - Chips & Technologies Extended BIOS - ???

Category: V - video

Inp.:

AX = 5F10h

DX = ???

Return: DX = ???

INT 10


INT 10 5F50 - Chips & Technologies Extended BIOS - GET LAPTOP DISPLAY STATUS

Category: V - video

Inp.:

AX = 5F50h

Return: DL = display status (see #2710)

Note:	this call can be used on Toshiba laptops since ~1995 instead of

  INT 42/AX=7503h which is no longer supported with the F655xx chips

SeeAlso: INT 42/AX=7503h

INT 10


INT 10 5F51 - Chips & Technologies Extended BIOS - SET DISPLAY STATUS ???

Category: V - video

Inp.:

AX = 5F51h

BX = ???

Return: nothing

INT 10


INT 10 5F5E - Chips & Technologies Extended BIOS - SET ???

Category: V - video

Inp.:

AX = 5F5Eh

BL = 00h or 01h

Return: nothing

INT 10


INT 10 5F-- - Chips & Technologies Extended BIOS - SAVE/RESTORE SUPERVGA STATE

Category: V - video

Inp.:

AH = 5Fh

AL = subfunction

    90h determine size of save buffer

    91h save state

    92h restore state

CX = state mask (see #0094)

ES:BX -> save buffer (subfunctions 91h,92h only)

Return: AL = 5Fh if function supported

    ---subfunction 90h---

BX = number of 64-byte blocks required

    ---subfunction 92h---

buffer at ES:BX filled

SeeAlso: AH=1Ch,AX=5F03h

INT 10


INT 10 60-- - HUNTER 16 - SET GRAPHICS FONT

Category: V - video

Inp.:

AH = 60h

AL = new font

    bit 7    output characters in reverse video

    bits 0-6 font number (see #0108 at AH=77h)

Return: BH = cell width

BL = cell height

Desc:	select the font to use for output in mode 6; this can be used to mix

  fonts on the screen

Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

SeeAlso: AH=04h"HUNTER",AH=73h"HUNTER",AH=77h"HUNTER"

INT 10


INT 10 61-- - HUNTER 16 - MOVE CURSOR TO GRAPHICS CO-ORDINATES

Category: V - video

Inp.:

AH = 61h

CX = column

DX = row

Note:	this function is only valid in graphics modes

SeeAlso: AH=62h

INT 10


INT 10 62-- - HUNTER 16 - GET CURSOR POSITION IN GRAPHICS CO-ORDINATES

Category: V - video

Inp.:

AH = 62h

Return: CX = column

DX = row

Note:	this function is only valid in graphics modes

SeeAlso: AH=61h

INT 10


INT 10 63-- - HUNTER 16 - SET CONTRAST

Category: V - video

Inp.:

AH = 63h

AL = contrast (0..127)

Desc:	set the LCD screen contrast to improve visibility

SeeAlso: AH=64h,AH=75h

INT 10


INT 10 64-- - HUNTER 16 - SET BACKLIGHT LEVEL

Category: V - video

Inp.:

AH = 64h

AL = level (0..15)

Desc:	set the LCD backlight level to improve visibility in bad lighting

SeeAlso: AH=63h,AH=65h,AH=74h,AH=78h"HUNTER",INT 15/AH=74h

INT 10


INT 10 6500 - HUNTER 16 - GET BACKLIGHT TIMEOUT

Category: V - video

Inp.:

AX = 6500h

Return: BX = timeout in seconds (0-300)

Desc:	returns the time after which the backlight will turn off

SeeAlso: AH=63h,AH=64h,AX=6501h,INT 15/AH=74h

INT 10


INT 10 6501 - HUNTER 16 - SET BACKLIGHT TIMEOUT

Category: V - video

Inp.:

AX = 6501h

BX = timeout in seconds (0-300)

Desc:	set the idle time after which the backlight will turn off

SeeAlso: AH=64h,AX=6500h

INT 10


INT 10 66-- - HUNTER 16 - SPLIT DISPLAY

Category: V - video

Inp.:

AH = 66h

AL = control bits (see #0095)

BH = top row of lower section of LCD (0..7)

BL = top row of lower section of the virtual screen (0..24)

Desc:	split the LCD screen horizontally into two parts; each part may be

  individually scrollable or fixed.

Note:	the Hunter 16 has a 240x64 LCD display which serves as a window into

  a 640x200 virtual screen

INT 10


INT 10 6A00 - Direct Graphics Interface Standard (DGIS) - INQUIRE AVAILABLE DEVICES

Category: V - video

Inp.:

AX = 6A00h

BX = 0000h

CX = 0000h

DX = buffer length (may be 0)

ES:DI -> buffer

Return: BX = number of bytes stored in buffer

CX = bytes required for all descriptions (0 if no DGIS)

Note:	buffer contains descriptions and addresses of DGIS-compatible

  display(s) and printer(s)

SeeAlso: AX=6A02h

INT 10


INT 10 6A01 - Direct Graphics Interface Standard (DGIS) - REDIRECT CHARACTER OUTPUT

Category: V - video

Inp.:

AX = 6A01h

CX = 0000h

ES:DI = address of device to send INT 10 output to

Return: CX = 0000h  output could not be redirected

     else INT 10h output now routed to requested display

SeeAlso: AX=6A02h

INT 10


INT 10 6A02 - DGIS - INQUIRE INT 10 OUTPUT DEVICE

Category: V - video

Inp.:

AX = 6A02h

ES:DI = 0000h:0000h

Return: ES:DI = 0000h:0000h  if current display is non-DGIS

else address of the current DGIS INT 10 display

SeeAlso: AX=6A00h,AX=6A01h

INT 10


INT 10 6E00 - Paradise VGA internal - GET ???

Category: V - video

Inp.:

AX = 6E00h

Return: BX = 5744h ('WD') if supported

    DH:AH:AL = last three ASCII digits of ROM serial number

    CL = ???

    CH = ???

SeeAlso: AX=6E04h,AX=6E05h

INT 10


INT 10 6E04 - Paradise VGA internal - GET SCREEN SIZE AND ???

Category: V - video

Inp.:

AX = 6E04h

Return: BX = screen width (columns)

CX = screen height (lines)

AH = ??? (05h or FFh)

AL = ??? (04h or video mode)

SeeAlso: AX=6E00h,AX=6E05h

INT 10


INT 10 6E05 - Paradise VGA internal - SET MODE

Category: V - video

Inp.:

AX = 6E05h

BL = mode

Note:	like AH=00h, AL=BL.

SeeAlso: AH=00h,AX=6E00h,AX=6E04h,AX=6F05h

INT 10


INT 10 6F00 - HP Vectra EX-BIOS - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 6F00h

BX <> 4850h (usually set to 0000h for simplicity)

Return: BX = 4850h ('HP') indicates HP Extended BIOS video functions present

AX destroyed

SeeAlso: AX=6F00h"Video7",AX=6F01h,AX=6F02h,AX=6F03h,AX=6F04h,AX=6F05h

SeeAlso: INT 14/AX=6F00h,INT 16/AX=6F00h,INT 17/AX=6F00h,INT 33/AX=6F00h

INT 10


INT 10 6F00 - VIDEO - Video7 VGA,VEGA VGA - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 6F00h

BX = 0000h

Return: BX = 5637h ('V7') indicates Video7 VGA/VEGA VGA extensions are present

SeeAlso: AX=6F01h,AX=6F02h,AX=6F03h,AX=6F04h,AX=6F05h

INT 10


INT 10 6F01 - VIDEO - Video7 VGA,VEGA VGA,HP EX-BIOS - GET MONITOR INFO

Category: V - video

Inp.:

AX = 6F01h

Return: AL = monitor type code (HP,VEGA VGA only) (see #0096)

AH = status register information (see #0097)

CL = current value of Extended Control register (HP Ext BIOS, and only

if AL=41h) (see #0098)

Notes:	bits 0-3 are the same as the EGA/VGA status register bits 0-3

supported by original HP Vectra AT and by ES/QS/RS series Vectras

INT 10


INT 10 6F02 - HP Vectra EX-BIOS - SET MONITOR INFO

Category: V - video

Inp.:

AX = 6F02h

BL = new value for extended control register (see #0098)

Return: AX,BL destroyed

Notes:	this function is only valid when an HP MultiMode Video Display Adapter

  is installed

the Extended Control register is at I/O address 3DDh

SeeAlso: AX=6F01h,AX=6F03h

INT 10


INT 10 6F03 - HP Vectra EX-BIOS - MODIFY MONITOR INFO

Category: V - video

Inp.:

AX = 6F03h

BH = exclude mask (set bits are not modified)

BL = new values for bits indicated by BH (see #0098)

Return: AX destroyed

Notes:	this function is only valid when an HP MultiMode Video Display Adapter

  is installed

supported by original HP Vectra AT and by ES/QS/RS series Vectras

SeeAlso: AX=6F01h,AX=6F02h

INT 10


INT 10 6F04 - VIDEO - Video7 VGA,VEGA VGA,HP Vectra - GET MODE AND SCREEN RESOLUTION

Category: V - video

Inp.:

AX = 6F04h

Return: AL = current video mode (see #0099)

BX = horizontal columns (text) or pixels (graphics)

CX = vertical columns (text) or pixels (graphics)

SeeAlso: AX=6F05h

INT 10


INT 10 6F05 - VIDEO - Video7 VGA,VEGA EXTENDED EGA/VGA,HP Vectra - SET VIDEO MODE

Category: V - video

Inp.:

AX = 6F05h

BL = mode (see #0099)

Return: AX,BL destroyed

Notes:	also supported by the HP Vectra Extended BIOS on the original

  HP Vectra AT and by ES/QS/RS series Vectras

on the HP Vectra, this function rather than AH=00h must be used to

  return to an IBM-standard mode after setting an HP-specified mode

  from 08h to 0Fh.

SeeAlso: AH=00h,AX=0070h,AX=007Eh,AX=6F04h

INT 10


INT 10 6F06 - VIDEO - Video7 VGA,VEGA VGA - SELECT AUTOSWITCH MODE

Category: V - video

Inp.:

AX = 6F06h

BL = Autoswitch mode select

     00h select EGA/VGA-only modes

     01h select Autoswitched VGA/EGA/CGA/MGA modes

     02h select 'bootup' CGA/MGA modes

BH = enable/disable (00h enable, 01h = disable selection)

INT 10


INT 10 6F07 - VIDEO -  Video7 VGA,VEGA VGA - GET VIDEO MEMORY CONFIGURATION

Category: V - video

Inp.:

AX = 6F07h

Return: AL = 6Fh

AH = memory configuration

    bits 0-6 = number of 256K blocks of video memory

    bit 7    = DRAM/VRAM (0: DRAM, 1: VRAM)

BH = chip revision (SR8F) (S/C Chip in VEGA VGA)

BL = chip revision (SR8E) (G/A Chip in VEGA VGA)

CX = 0000h

SeeAlso: AH=12h/BL=10h

INT 10


INT 10 70-- - VIDEO - TANDY 2000 only - GET ADDRESS OF VIDEO RAM

Category: V - video

Inp.:

AH = 70h

Return: AX:BX -> WORD containing green plane's offset

AX:CX -> WORD containing green plane's segment

AX:DX -> WORD containing segment of red (offset 0) and blue (offset

4000) planes

SeeAlso: AH=71h

INT 10


INT 10 70-- - HUNTER 16 - DRAW ELLIPSE/CIRCLE

Category: V - video

Inp.:

AH = 70h

DS:BX -> control block (see #0100)

Desc:	Draws a circle or ellipse. Only valid in graphics modes.

Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

SeeAlso: AH=71h"HUNTER"

INT 10


INT 10 7000 - Everex Extended Video BIOS - RETURN EMULATION STATUS

Category: V - video

Inp.:

AX = 7000h

BX = 0000h

Return: AL = 70h if Trident-based Everex card

CL = monitor type (see #0101)

CH = feature bits (see #0102)

DX = video board info

    bits 4-15: board ID model (see #0103)

    bits 0-3:  board ID revision

DI = BCD BIOS version number

SeeAlso: AX=5F01h,AH=FF"Oak"

INT 10


INT 10 7000 - Everex Extended Video BIOS - GET PAGING FUNCTION POINTER FOR CURR MODE

Category: V - video

Inp.:

AX = 7000h

BX = 0004h

Return: ES:DI -> FAR paging function (call with DL = page to set)

Note:	the word preceding ES:DI is the length of the function in bytes, and

  the last byte of the function is a FAR return instruction.

SeeAlso: AX=4F05h,AX=7000h/BX=0000h,AX=7000h/BX=0005h

INT 10


INT 10 7000 - Everex Extended Video BIOS - GET SUPPORTED MODE INFO

Category: V - video

Inp.:

AX = 7000h

BX = 0005h

CL = maximum number of modes to get info for

CH = mode type to get info for (see #0104)

DL = monitor type to get info for

ES:DI -> buffer for mode info (see #0105)

Return: CL = total number of modes fitting criteria

CH = size of each info record

SeeAlso: AX=7000h/BX=0000h,AX=7000h/BX=0004h

INT 10


INT 10 71-- - VIDEO - TANDY 2000 only - GET ADDRESS OF INCRAM

Category: V - video

Inp.:

AH = 71h

Return: AX:BX -> WORD containing segment address of INCRAM

AX:CX -> WORD containing offset of INCRAM

SeeAlso: AH=70h"TANDY"

INT 10


INT 10 71-- - HUNTER 16 - DRAW LINE/BOX

Category: V - video

Inp.:

AH = 71h

DS:BX -> control block (see #0107)

Desc:	Draws a line or box. Only valid in graphics modes.

SeeAlso: AH=70h"HUNTER"

INT 10


INT 10 72-- - VIDEO - TANDY 2000 only - SCROLL RIGHT PART OR ALL OF SCREEN

Category: V - video

Inp.:

AH = 72h

AL = number of columns to shift scroll area, 00h to clear entire area

BH = new attributes for blanked columns at left

CH,CL = row, column of upper left corner of scroll area

DH,DL = row, column of lower right corner of scroll area

SeeAlso: AH=06h,AH=07h,AH=73h"TANDY",INT 15/AH=12h/BH=05h

INT 10


INT 10 72-- - HUNTER 16 - SELECT TEXT-MODE INVERSE VIDEO MECHANISM

Category: V - video

Inp.:

AH = 72h

AL = mechanism to use

    00h do not use inverse video

    01h emulate MDA. Display attribute 07h is normal video and 70h is

inverse video.

    02h use inverse video if background is non-black.

    03h use inverse video for high intensity text.

    04h use inverse video for text with background intensity greater

than foreground intensity.

    05h use inverse video for text with background color other than

black or high intensity foreground.

SeeAlso: AH=70h"HUNTER",AH=71h"HUNTER"

INT 10


INT 10 73-- - VIDEO - TANDY 2000 only - SCROLL LEFT PART OR ALL OF SCREEN

Category: V - video

Inp.:

AH = 73h

AL = number of columns to shift scroll area, 00h to clear entire area

BH = new attributes for blanked columns at right

CH,CL = row, column of upper left corner of scroll area

DH,DL = row, column of lower right corner of scroll area

SeeAlso: AH=06h,AH=07h,AH=72h"TANDY",INT 15/AH=12h/BH=05h

INT 10


INT 10 73-- - HUNTER 16 - SELECT TEXT FONT

Category: V - video

Inp.:

AH = 73h

AL = new font

      00h  7x7 in a 8x8 cell

      01h  5x7 in a 6x8 cell

      06h  3x5 in a 4x6 cell

Retuen: BH = cell width

BL = cell height

SeeAlso: AH=60h"HUNTER",AH=77h"HUNTER"

INT 10


INT 10 74-- - HUNTER 16 - SET LCD WINDOWS POSITION

Category: V - video

Inp.:

AH = 74h

DH = row (0..24)

DL = column (0..79)

Desc:	set the position in the virtual screen being displayed in the LCD

  screen. If Split Screen (INT 10/AH=66h) is used, this call sets the

  position for the window which has the cursor.

SeeAlso: AH=66h"HUNTER",AH=75h,AH=76h

INT 10


INT 10 75-- - HUNTER 16 - SET ZOOM

Category: V - video

Inp.:

AH = 75h

AL = new Zoom state (00h off, nonzero on)

SeeAlso: AH=74h,AH=76h

INT 10


INT 10 76-- - HUNTER 16 - LOOKING KEYS

Category: V - video

Inp.:

AH = 76h

AL = Action

     00h home the window

     01h move up one line

     02h move down one line

     03h move left one character

     04h move right one character

     05h flip window to other side of virtual screen

Desc:	moves the displayed screen around the virtual screen

SeeAlso: AH=74h,AH=75h

INT 10


INT 10 77-- - HUNTER 16 - GET GRAPHICS FONT

Category: V - video

Inp.:

AH = 77h

Return: AL = font number (see #0108)

SeeAlso: AH=60h"HUNTER",AH=73h"HUNTER"

INT 10


INT 10 78-- - HUNTER 16 - TURN BACKLIGHT ON/OFF

Category: V - video

Inp.:

AH = 78h

AL = new state of backlight (00h on, 01h off)

SeeAlso: AH=64h,INT 15/AH=74h

INT 10


INT 10 7F-- - Paradise SVGA - WD90C24 INSTALLATION CHECK

Category: V - video

Inp.:

AH = 7Fh

Return: AX = 1234h if WD90C24 chip installed

INT 10


INT 10 7F00 - SOLLEX SuperVGA - GET EXTENSIONS INFO

Category: V - video

Inp.:

AX = 7F00h

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

    ES:DI -> info structure (see #0109)

01h failed

Program: the SOLLEX (Smos videO controLLer EXtensions) SuperVGA functions are

  an extension to the VESA SuperVGA BIOS Extensions (see AX=4F00h) by

  Seiko Epson Corporation intended to provided a standardized interface

  to SuperVGA functionality not addressed by the VESA standard

SeeAlso: AX=4F00h

INT 10


INT 10 7F00 - Diamond Stealth 24 - GET S3 INFORMATION BLOCK

Category: V - video

Inp.:

AX = 7F00h

BX = 4000h

Return: AX = 007Fh if supported

    DX:BX -> DAC set mode routine

SeeAlso: AX=7F00h/BX=4001h,AX=7F00h/BX=4002h

INT 10


INT 10 7F00 - Diamond Stealth 24 - GET LINEAR ADDRESS

Category: V - video

Inp.:

AX = 7F00h

BX = 4001h

Return: AX = 007Fh if supported

    CX = current linear address base (high word)

SeeAlso: AX=7F00h/BX=4000h,AX=7F00h/BX=4002h

INT 10


INT 10 7F00 - Diamond Stealth 24 - SET LINEAR ADDRESS

Category: V - video

Inp.:

AX = 7F00h

BX = 4002h

CX = new linear address base (high word)

Return: AX = 007Fh if supported

SeeAlso: AX=7F00h/BX=4000h,AX=7F00h/BX=4001h

INT 10


INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - SET ADAPTER

Category: V - video

Inp.:

AX = 7F01h

BL = 00h

CX = adapter request (see #0113)

Return:	AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

Note:	initializes video hardware to a particular standard

SeeAlso: AX=7F00h,AX=7F01h/BL=01h,AX=7F01h/BL=02h

INT 10


INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - GET ADAPTER

Category: V - video

Inp.:

AX = 7F01h

BL = 01h

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

    BX = adapter type (see #0113)

    DX = display type (see #0114)

SeeAlso: AX=7F00h,AX=7F01h/BL=00h,AX=7F01h/BL=02h

INT 10


INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - DETERMINE ADAPTER SUPPORT

Category: V - video

Inp.:

AX = 7F01h

BL = 02h

CX = adapter request (see #0113)

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h requested setting can successfully be made

01h requested setting not available in this configuration

SeeAlso: AX=7F00h,AX=7F01h/BL=00h

INT 10


INT 10 7F02 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - SET DISPLAY OUTPUT

Category: V - video

Inp.:

AX = 7F02h

BL = 00h

CX = display output setting (see #0115)

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

SeeAlso: AX=7F00h,AX=7F02h/BL=00h

INT 10


INT 10 7F02 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - GET DISPLAY OUTPUT

Category: V - video

Inp.:

AX = 7F02h

BL = 01h

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

    BX = display output setting (see #0115)

    CX = displays attached (see #0116)

01h failed

SeeAlso: AX=7F00h,AX=7F02h/BL=00h

INT 10


INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GET SUPPORT INFO

Category: V - video

Inp.:

AX = 7F03h

BL = 00h

CX = support type

0000h VGA, 0001h EGA, 0002h CGA, 0003h MDA, 0004h extensions,

0005h-0012h reserved for SOLLEX, 0013h Hercules,

0014h-001Fh reserved for SOLLEX, 0020h-00FFh reserved for OEM

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

    CX = size of video support code

    DX = segment of physical video support (0000h if no ROM)

    ES = segment of active video support

    ES:DI -> information block (DI = 0000h if none available)

01h failed

SeeAlso: AX=7F03h/BL=01h

INT 10


INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - INITIALIZE VIDEO SUPPORT

Category: V - video

Inp.:

AX = 7F03h

BL = 01h

CX = support request

ES = segment of support code

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

Note:	initializes the indicated video support by calling ES:0003h; this

  function may be used to switch the active video support back to

  ROM after AX=7F03h/BL=02h

SeeAlso: AX=7F03h/BL=00h

INT 10


INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GO RAM RESIDENT

Category: V - video

Inp.:

AX = 7F03h

BL = 02h

CX = support request

ES = destination segment

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

SeeAlso: AX=7F00h,AX=7F03h/BL=01h

INT 10


INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - SET POWER STATE

Category: V - video

Inp.:

AX = 7F04h

BL = 00h

CX = new power state

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

Note:	higher values progressively reduce the operations available on the

  video adapter while yielding increasing power savings

SeeAlso: AX=7F00h,AX=7F04h/BL=01h

INT 10


INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - GET POWER STATE

Category: V - video

Inp.:

AX = 7F04h

BL = 01h

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

    CX = current power state

    DX = maximum state

01h failed

SeeAlso: AX=7F00h,AX=7F04h/BL=00h

INT 10


INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - SET TIMEOUT RESET

Category: V - video

Inp.:

AX = 7F04h

BL = 02h

CX = timeout reset

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

SeeAlso: AX=7F00h,AX=7F04h/BL=03h

INT 10


INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - GET TIMEOUT RESET

Category: V - video

Inp.:

AX = 7F04h

BL = 03h

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

    BX = time increment

    CX = current timeout reset

    DX = maximum timeout reset

    ES:DI -> timeout reset table (array of bytes)

01h failed

Note:	the timeout period is computed as (BYTE ES:[DI+CX]) * BX timer ticks

SeeAlso: AX=7F00h,AX=7F04h/BL=02h

INT 10


INT 10 7F05 - SOLLEX SuperVGA - LOAD REGISTER

Category: V - video

Inp.:

AX = 7F05h

ES:DI -> register value table (see #0117)

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

SeeAlso: AH=F1h,AH=F3h,AH=F5h

INT 10


INT 10 7F06 - SOLLEX SuperVGA - MULTIPLE FONT CONTROL

Category: V - video

Inp.:

AX = 7F06h

BL = subfunction

    00h set multiple font state

CX = new state (00h off, 01h on)

    01h get multiple font state

Return: BL = current state (00h off, 01h on)

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

SeeAlso: AH=11h

INT 10


INT 10 7F07 - SOLLEX SuperVGA - FILL VIDEO RAM

Category: V - video

Inp.:

AX = 7F07h

BL = how much to fill

   00h regen size

   01h all video memory

CX = pattern to write (normally 0720h for text modes and 0000h for gr)

Return: AL <> 7Fh if not supported

AL = 7Fh if supported

    AH = status

00h successful

01h failed

SeeAlso: AH=06h

INT 10


INT 10 80-- - CU Writer v1.4 - GET OPTION

Category: A - applications

Inp.:

AH = 80h

AL = desired option

Return: ???

Program: CU Writer is a public-domain Thai-English word processor from

  Chulalongkorn University, Bangkok

SeeAlso: AH=81h"CU Writer"

INT 10


INT 10 80-- - VIDEO - DESQview 2.0x only - internal - SET ??? HANDLER

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 80h

DX = 4456h ('DV')

ES:DI -> FAR subroutine to be called on ???

Return: DS = segment of DESQview data structure for video buffer

Note:	this function is probably meant for internal use only, due to the magic

  value required in DX

the subroutine seems to be called when the DESQview menu is accessed;

  on entry, AL = 03h or 04h

INT 10


INT 10 81-- - CU Writer v1.4 - SET OPTION

Category: A - applications

Inp.:

AH = 81h

???

Return: ???

SeeAlso: AH=80h"CU Writer"

INT 10


INT 10 81-- - VIDEO - DESQview 2.0x only - internal - GET ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 81h

DX = 4456h ('DV')

Return: ES = segment of DESQview data structure for video buffer

    BYTE ES:[0] = current window number in DV 2.0x

Note:	this function is probably meant for internal use only, due to the magic

  value required in DX

SeeAlso: AH=82h"DESQview"

INT 10


INT 10 82-- - VIDEO - DESQview 2.0x only - internal - GET CURRENT WINDOW INFO

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 82h

DX = 4456h ('DV')

Return: DS = segment in DESQview for data structure

     in DV 2.00,

  BYTE DS:[0] = window number

  WORD DS:[1] = segment of other data structure

  WORD DS:[3] = segment of window's object handle

ES = segment of DESQview data structure for video buffer

AL = current window number

AH = ???

BL = direct screen writes

    00h program does not do direct writes

    01h program does direct writes, so shadow buffer not usable

BH = ???

CL = current video mode

CH = ???

Note:	this function is probably meant for internal use only, due to the magic

  value required in DX

SeeAlso: AH=81h"DESQview"

INT 10


INT 10 8200 - VIDEO - AX PC - GET/SET SCROLL MODE

Category: J - Japanese

Inp.:

AX = 8200h

BL = new scroll mode or FFh to get current mode

    00h dynamic, 01h software

Return: AL = scroll mode (current mode if BL=FFh, previous mode otherwise)

SeeAlso: AH=06h,AH=07h

INT 10


INT 10 8300 - VIDEO - AX PC - GET VIDEO RAM ADDRESS

Category: J - Japanese

Inp.:

AX = 8300h

Return: AX = offset of video RAM

ES:BX -> virtual text RAM buffer

SeeAlso: AX=5201h

INT 10


INT 10 8B-- - Alloy MW386 - FORCE WORKSTATION SCREEN UPDATE

Category: N - network

Inp.:

AH = 8Bh

SeeAlso: AH=92h,AH=93h

INT 10


INT 10 90-- - Alloy MW386 - GET PHYSICAL WORKSTATION DISPLAY MODE

Category: N - network

Inp.:

AH = 90h

Return: AL = current video mode (see #0009 at AH=00h)

SeeAlso: AH=91h

INT 10


INT 10 91-- - Alloy MW386 - GET PHYSICAL WORKSTATION ADAPTER TYPE

Category: N - network

Inp.:

AH = 91h

Return: AL = video adapter type (see #0118)

Note:	types less than 80h do not imply that the current user is on the host

SeeAlso: AH=90h

INT 10


INT 10 92-- - Alloy MW386 - INHIBIT WORKSTATION SCREEN UPDATES

Category: N - network

Inp.:

AH = 92h

Note:	the terminal will be updated even when screen updates are inhibited if

  TTY output is used

SeeAlso: AH=8Bh

INT 10


INT 10 93-- - Alloy MW386 - REDRAW SCREEN

Category: N - network

Inp.:

AH = 93h

SeeAlso: AH=8Bh,AH=FFh

INT 10


INT 10 A0-- - CU Writer v1.4 - SET PIXEL WRITE MODE

Category: A - applications

Inp.:

AH = A0h

???

Return: ???

Program: CU Writer is a public-domain Thai-English word processor from

  Chulalongkorn University, Bangkok

SeeAlso: AH=80h"CU Writer",AH=B0h

INT 10


INT 10 A0-- - ATI Mach64 BIOS - Display Power Management Signalling API???

Category: p - power management

Inp.:

AH = A0h

AL = function (00h-13h)

???

Return: AH = status

    00h successful

    01h failed

???

SeeAlso: AX=4F10h/BL=00h

INT 10


INT 10 A004 - PhoenixVIEW/LC - VIDEO DISPLAY TYPE

Category: V - video

Inp.:

AX = A004h

???

Return: ???

Desc:	configure display parameters

SeeAlso: AX=A01Bh"PhoenixVIEW/LC"

INT 10


INT 10 A00C - ATI Mach64 BIOS - SET SLEEP MODE

Category: p - power management

Inp.:

AX = A00Ch

CL = new state

    01h standby

    02h suspend

    03h off

Return: AH = status

    00h successful

    01h failed

SeeAlso: AX=4F00h,AX=4F10h/BL=01h

INT 10


INT 10 A01B - PhoenixVIEW/LC - CRT MONITOR DETECTION

Category: V - video

Inp.:

AX = A01Bh

???

Return: ???

Desc:	determine whether an external display is currently attached

SeeAlso: AX=A004h"PhoenixVIEW/LC"

INT 10


INT 10 B0-- - CU Writer v1.4 - PUT PIXEL

Category: A - applications

Inp.:

AH = B0h

???

Return: ???

SeeAlso: AH=A0h"CU Writer",AH=B1h,AH=B2h,AH=B3h,AH=B4h,AH=B5h,AH=D0h

INT 10


INT 10 B1-- - CU Writer v1.4 - MOVE TO

Category: A - applications

Inp.:

AH = B1h

???

Return: ???

SeeAlso: AH=B0h,AH=B2h,AH=C0h"CU Writer"

INT 10


INT 10 B2-- - CU Writer v1.4 - DRAW LINE TO

Category: A - applications

Inp.:

AH = B2h

???

Return: ???

SeeAlso: AH=B0h,AH=B1h,AH=B3h,AH=B4h,AH=B5h

INT 10


INT 10 B3-- - CU Writer v1.4 - FLOOD FILL

Category: A - applications

Inp.:

AH = B3h

???

Return: ???

SeeAlso: AH=B2h,AH=B5h

INT 10


INT 10 B4-- - CU Writer v1.4 - DRAW RECTANGLE

Category: A - applications

Inp.:

AH = B4h

???

Return: ???

SeeAlso: AH=B0h,AH=B2h,AH=B3h,AH=B5h

INT 10


INT 10 B5-- - CU Writer v1.4 - DRAW FILLED RECTANGLE

Category: A - applications

Inp.:

AH = B5h

???

Return: ???

SeeAlso: AH=B0h,AH=B2h,AH=B3h,AH=B4h

INT 10


INT 10 BD44 - Compaq QVision - ???

undocumented function

Category: V - video

Inp.:

AX = BD44h

???

Return: ???

Note:	called by Compaq's MTX132.COM, which places the QVision in 132-column

  mode

INT 10


INT 10 BF-- - Athena Digital HGCIBM.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AH = BFh

CX = 0000h (???)

Return: CX = 0202h

DL = ??? (internal data, possibly version number)

INT 10


INT 10 BF00 - VIDEO - Compaq Extensions - SELECT EXTERNAL MONITOR

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF00h

Desc:	specify that the external monitor become the active monitor

Note:	all registers preserved and the internal monitor is blanked

SeeAlso: AX=BF01h,AX=BF12h

INT 10


INT 10 BF01 - VIDEO - Compaq Extensions - SELECT INTERNAL MONITOR

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF01h

Desc:	specify that the internal monitor become the active monitor

Note:	all registers preserved and the external monitor is blanked

SeeAlso: AX=BF00h,AX=BF12h

INT 10


INT 10 BF02 - VIDEO - Compaq Extensions - SET MASTER MODE OF CURRENT CONTROLLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF02h

BH = master mode

    04h CGA

    05h EGA

    07h MDA

SeeAlso: AX=BF03h

INT 10


INT 10 BF03 - VIDEO - Compaq Extensions - GET ENVIRONMENT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF03h

BX = 0000h

Return: BH = active monitor

    (00h = external, 01h = internal, 03h both, 04h neither)

BL = master mode (see #0119)

CH = ASIC type and version

    00h (reserved, very early Compaq VGCs)

    31h if QVision VGA

CL = switchable VDU modes supported (see #0120)

DH = internal monitor type (see #0121)

DL = external monitor type (see #0121)

SeeAlso: AX=1A00h,AX=BF00h,AX=BF01h,AX=BF02h,AX=BF11h

INT 10


INT 10 BF04 - VIDEO - Compaq Extensions - SET MODE SWITCH DELAY

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF04h

BH = new state of delay (00h enabled, 01h disabled)

Note:	the 04/08/93 sytem ROM appears to use BL instead of BH; a future

  version of the list will provide more definite information

SeeAlso: AX=BF05h

INT 10


INT 10 BF05 - VIDEO - Compaq Extensions - ENABLE/DISABLE DISPLAY

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF05h

BH = new state of video

    00h off

    01h on

Note:	the 04/08/93 sytem ROM appears to use BL instead of BH; a future

  version of the list will provide more definite information

SeeAlso: AH=12h/BL=36h,AX=BF04h

INT 10


INT 10 BF06 - VIDEO - Compaq SLT/286 - READ GRAY SCALE TABLE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF06h

CL = address to be read from gray scale table

Return: AL = bit 3-0 - Value read from gray scale table

CL = address to be read from gray scale table

SeeAlso: AH=12h/BL=33h,AX=BF07h

INT 10


INT 10 BF07 - VIDEO - Compaq SLT/286 - WRITE GRAY SCALE TABLE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF07h

CH = value to write to gray scale table

CL = address to be written to gray scale table

SeeAlso: AX=BF06h,AX=BF08h

INT 10


INT 10 BF08 - VIDEO - Compaq SLT/286 - WRITE COLOR MIX REGISTERS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF08h

CH = bits 7-4 green weight

     bits 3-0 blue weight

CL = bits 7-4 unused

     bits 3-0 red weight

SeeAlso: AH=12h/BH=33h,AX=BF07h

INT 10


INT 10 BF09 - VIDEO - Compaq Extensions - TURN ON REVERSE VIDEO

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF09h

Return: CF clear

Notes:	sets bit 6 of port 03CEh index 81h; in some cases also sets index 84h

  to 6Fh and index 83h to 04h

supported by at least the QVision board and the LTE Lite ROM BIOS

SeeAlso: AX=BF0Ah,AX=BF0Bh

INT 10


INT 10 BF0A - VIDEO - Compaq Extensions - TURN OFF REVERSE VIDEO

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF0Ah

Return: CF clear

Notes:	clears bit 6 of port 03CEh index 81h; in some cases also sets index 84h

  to 80h and index 83h to FBh

supported by at least the QVision board and the LTE Lite ROM BIOS

SeeAlso: AX=BF09h,AX=BF0Bh

INT 10


INT 10 BF0B - VIDEO - Compaq Extensions - CHECK WHETHER VIDEO REVERSED

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF0Bh

Return: CF clear

AX = state (0000h normal video, 0001h reverse video)

Note:	supported by at least the QVision board and the LTE Lite ROM BIOS

SeeAlso: AX=BF09h,AX=BF0Ah

INT 10


INT 10 BF0C - VIDEO - Compaq Extensions - SET DAC 6-BIT MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF0Ch

Return: CF clear

Desc:	specify that video DAC registers use only six bits of color info

Note:	supported by at least the QVision board and the SystemPro XL ROM BIOS

SeeAlso: AX=BF0Dh,AX=BF0Eh

INT 10


INT 10 BF0D - VIDEO - Compaq Extensions - SET DAC 8-BIT MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF0Dh

Return: CF clear

Desc:	specify that video DAC registers use all eight bits of color info

Note:	supported by at least the QVision board and the SystemPro XL ROM BIOS

SeeAlso: AX=BF0Ch,AX=BF0Eh

INT 10


INT 10 BF0E - VIDEO - Compaq Extensions - CHECK DAC 6-BIT/8-BIT mode

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF0Eh

Return: CF clear

AL = DAC mode

    00h in 6-bit mode

    01h in 8-bit mode

Note:	supported by at least the QVision board and the SystemPro XL ROM BIOS

SeeAlso: AX=BF0Ch,AX=BF0Dh

INT 10


INT 10 BF0F - VIDEO - Compaq Extensions - SET HIGH ADRESS MAP REGISTER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF0Fh

BX = high address map location in megabytes, or

    0000h to disable high address map, or

    FFFFh to let ROM configure high address map

Return: CF clear

AX = previous value of high address map register

Notes:	supported by at least the QVision board and the SystemPro XL and LTE

  Lite ROM BIOSes

SeeAlso: AX=BF10h

INT 10


INT 10 BF10 - VIDEO - Compaq Extensions - GET HIGH ADDRESS MAP REGISTER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF10h

Return: CF clear

AX = current value of high address map register

Notes:	supported by at least the QVision board and the SystemPro XL and LTE

  Lite ROM BIOSes

the Compaq QVision documentation (October 1993) says the value is

  returned in BX, but this appears to be one of many typos

SeeAlso: AX=BF0Fh

INT 10


INT 10 BF11 - VIDEO - Compaq Extensions - GET EXTENDED ENVIRONMENT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF11h

Return: AL = BFh if supported

    CF clear

    ES:DI -> ASCII signature "COMPAQ"

    ES:SI -> advanced functionality table (see #0122)

Note:	supported by at least the QVision board and the LTE Lite and ProSignia

  ROM BIOSes

SeeAlso: AX=1A00h,AX=BF03h

INT 10


INT 10 BF12 - VIDEO - Compaq Extensions - NEW ACTIVE MONITOR

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF12h

BH reserved

BL = function mask (see #0123)

Return: CF clear

Notes:	this function is a NOP if the VGA subsystem is inactive or the current

  Display Combination Code is 10h or higher

supported by at least the QVision board and the LTE Lite and ProSignia

  ROM BIOSes

SeeAlso: AX=BF01h,AX=BF02h

INT 10


INT 10 BF13 - VIDEO - Compaq QVision - GAMMA CORRECTION

Category: b - vendor-specific BIOS extensions

Inp.:

AX = BF13h

BL = subfunction

    00h load gamma correction table for true-color mode

DS = BIOS data segment

    01h set palette RAM bypass

BH = 00h

Return:	nothing

Note:	these functions must be called after a video mode set, and are in

  effect only for the current video mode

INT 10


INT 10 BFA0 - VIDEO - Compaq ADAPT.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AX = BFA0h

BX = ADADh

Return: AX = BDBDh if newer ADAPT.COM installed

    BX = BCD version (BH = major, BL = minor)

    CL = ???

    CH = ???

    DL = ???

AX = ADADh if older version of ADAPT.COM installed

Program: ADAPT is Compaq's Advanced Display Attribute Programming Tool, an

  optionally-resident utility for setting display colors and cursor

  size; when resident, it also includes a screen blanker

SeeAlso: AX=BFA1h,AX=BFA2h,AX=DFA5h

Index:	screen saver;ADAPT

INT 10


INT 10 BFA1 - VIDEO - Compaq ADAPT.COM - GET ???

Category: V - video

Inp.:

AX = BFA1h

Return: AX = BDBEh if supported

    CH = current value of ???

    DL = current value of ???

SeeAlso: AX=BFA0h,AX=BFA2h

INT 10


INT 10 BFA2 - VIDEO - Compaq ADAPT.COM - SET ???

Category: V - video

Inp.:

AX = BFA2h

CH = new value for ???

DL = new value for ???

Return: AX = BDBEh if supported

SeeAlso: AX=BFA0h,AX=BFA1h

INT 10


INT 10 C0-- - CU Writer v1.4 - GO TO TEXT ROW AND COLUMN

Category: A - applications

Inp.:

AH = C0h

???

Return: ???

SeeAlso: AH=B1h,AH=C1h,AH=C2h,AH=C3h,AH=C4h

INT 10


INT 10 C1-- - CU Writer v1.4 - OUTPUT TEXT

Category: A - applications

Inp.:

AH = C1h

???

Return: ???

SeeAlso: AH=C0h,AH=C2h,AH=C3h,AH=C4h

INT 10


INT 10 C2-- - CU Writer v1.4 - REVERSE TEXT

Category: A - applications

Inp.:

AH = C2h

???

Return: ???

SeeAlso: AH=C0h,AH=C1h,AH=C3h,AH=C4h

INT 10


INT 10 C3-- - CU Writer v1.4 - TEXT BAR

Category: A - applications

Inp.:

AH = C3h

???

Return: ???

SeeAlso: AH=C0h,AH=C1h,AH=C4h

INT 10


INT 10 C4-- - CU Writer v1.4 - TEXT MENU

Category: A - applications

Inp.:

AH = C4h

???

Return: ???

SeeAlso: AH=C0h,AH=C1h,AH=C3h,AH=D0h

INT 10


INT 10 CB00 - UNCHAIN - SAVE CURRENT VGA REGISTERS

Category: V - video

Inp.:

AX = CB00h

Note:	combined with AX=CB06h, this function permits the use of video mode

  13h together with the VGA's unchained mode

SeeAlso: AX=CB06h,AX=CBFFh

INT 10


INT 10 CB01 - UNCHAIN - UPDATE PAGE 1 OFFSET

Category: V - video

Inp.:

AX = CB01h

BX = offset of page 1

Desc:	inform UNCHAIN of the location of video page 1 in video memory; the

  default is 0000h

SeeAlso: AX=CB02h,AX=CB03h,AX=CB04h,AX=CBFFh

INT 10


INT 10 CB02 - UNCHAIN - UPDATE PAGE 2 OFFSET

Category: V - video

Inp.:

AX = CB02h

BX = offset of page 2

Desc:	inform UNCHAIN of the location of video page 2 in video memory; the

  default is 3E80h (16000, for 320x200)

SeeAlso: AX=CB00h,AX=CB01h,AX=CB03h,AX=CB04h

INT 10


INT 10 CB03 - UNCHAIN - UPDATE PAGE 3 OFFSET

Category: V - video

Inp.:

AX = CB03h

BX = offset of page 3

Desc:	inform UNCHAIN of the location of video page 3 in video memory; the

  default is 7D00h (32000, for 320x200)

SeeAlso: AX=CB01h,AX=CB02h,AX=CB04h

INT 10


INT 10 CB04 - UNCHAIN - UPDATE PAGE 4 OFFSET

Category: V - video

Inp.:

AX = CB04h

BX = offset of page 4

Desc:	inform UNCHAIN of the location of video page 4 in video memory; the

  default is BB80h (48000, for 320x200)

SeeAlso: AX=CB01h,AX=CB02h,AX=CB03h,AX=CB05h

INT 10


INT 10 CB05 - UNCHAIN - SAVE PALETTE

Category: V - video

Inp.:

AX = CB05h

SeeAlso: AX=CB00h,AX=CB06h

INT 10


INT 10 CB06 - UNCHAIN - RESTORE VGA REGISTERS

Category: V - video

Inp.:

AX = CB06h

SeeAlso: AX=CB00h,AX=CB05h,AX=CBFFh

INT 10


INT 10 CBFF - UNCHAIN - INSTALLATION CHECK

Category: V - video

Inp.:

AX = CBFFh

Return: AX = CCBBh if installed

Program: UNCHAIN is a TSR by Colin Buckley which permits use of Borland

  development tools with Mode X video in the absence of a second

  monitor

SeeAlso: AX=CB00h,AX=CB01h,AX=CB06h

INT 10


INT 10 CC00 - VIDEO - UltraVision - GET STATUS (INSTALLATION CHECK)

Category: V - video

Inp.:

AX = CC00h

SI = magic value 0000h (if checking version)

Return: CX = product signature

    ABCDh UltraVision

    5546h ('UF') UltraFont

AL = Ultravision extensions

    00h enabled

    FFh disabled

AH = card designator

BX:00F0h -> palette values (for compatibility with NEWFONT)

DX = support for high resolution modes

    00h not active

    01h active

SI = UltraVision version number (v1.2+), high byte=major,low byte=minor

    unchanged for versions <1.2

Note:	UltraFont is a simplified version of UltraVision for Toshiba;

  only the signature in CX and the status in AL will be returned

SeeAlso: AX=CC01h,AX=CC02h

INT 10


INT 10 CC01 - VIDEO - UltraVision - DISABLE EXTENSIONS

Category: V - video

Inp.:

AX = CC01h

Notes:	subsequent BIOS calls will be passed through to previous handler

should be followed immediately by mode set to restore normal EGA/VGA

  state

SeeAlso: AX=CC02h

INT 10


INT 10 CC02 - VIDEO - UltraVision - ENABLE EXTENSIONS

Category: V - video

Inp.:

AX = CC02h

Note:	should be followed immediately by mode set to restore previous

  UltraVision state

SeeAlso: AX=CC01h

INT 10


INT 10 CD00 - VIDEO - UltraVision - LOAD ULTRAVISION PALETTE (color EGA,VGA)

Category: V - video

Inp.:

AX = CD00h

CL = palette table number (01h-07h for v1.x, 01h-0Fh for v2+)

DS:DX -> 16-byte palette register list (colors for registers 00h-0Fh)

Notes:	if palette locking is in effect for the current mode, the new colors

  will be displayed immediately; otherwise, the system reverts to the

  default palette

palette table 0 is reserved for the default palette and cannot be set

UltraVision always sets the border color to black

SeeAlso: AX=CD01h,AX=CD02h

INT 10


INT 10 CD01 - VIDEO - UltraVision - SET PALETTE LOCKING STATUS (color EGA,VGA)

Category: V - video

Inp.:

AX = CD01h

CL = palette locking value

    00h none

    01h text modes only (02h,03h)

    FFh all modes (all standard color text and graphics modes)

Notes:	intended for video modes with 16 or fewer colors

SeeAlso: AX=1000h,AX=1002h,AX=CD00h,AX=CD03h

INT 10


INT 10 CD02 - VIDEO - UltraVision - GET ULTRAVISION PALETTE (EGA,VGA)

Category: V - video

Inp.:

AX = CD02h

Return: CL = palette table number

DS:DX -> 17-byte palette register list (see #0124)

DS:SI -> current font names table (see #0125,#0126)

Note:	only the font names are valid on monochrome EGA systems

SeeAlso: AX=1009h,AX=CD00h

INT 10


INT 10 CD03 - VIDEO - UltraVision - GET PALETTE LOCKING STATUS (color EGA,VGA)

Category: V - video

Inp.:

AX = CD03h

Return: CL = palette locking value

    00h none

    01h text modes only

    FFh all modes

SeeAlso: AX=CD01h

INT 10


INT 10 CD04 - VIDEO - UltraVision - GET UltraVision TEXT MODE (EGA,VGA)

Category: V - video

Inp.:

AX = CD04h

Return: AL = mode number (see #0127)

SeeAlso: AH=0Fh,AX=CC00h,AH=CDh

INT 10


INT 10 CD05 - VIDEO - UltraVision - SET CURSOR TYPE (EGA,VGA)

Category: V - video

Inp.:

AX = CD05h

CL = type

    00h line cursor

    FFh box cursor

Note:	sets default cursor type for text-based programs

SeeAlso: AH=01h,AX=CD06h

INT 10


INT 10 CD06 - VIDEO - UltraVision - GET CURSOR TYPE (EGA,VGA)

Category: V - video

Inp.:

AX = CD06h

Return: CL = type

    00h line cursor

    FFh box cursor

SeeAlso: AH=03h,AX=CD05h

INT 10


INT 10 CD07 - VIDEO - UltraVision v1.2+ - SET UNDERLINE STATUS (EGA,VGA)

Category: V - video

Inp.:

AX = CD07h

CL = hardware underline status (see #0128)

BL = foreground color for normal text (FFh = current)

BH = foreground color for bright text (FFh = current)

Return: CL = hardware underline status

BL = current foreground color for normal text

BH = current foreground color for bright text

Notes:	when underline or strikeout is enabled in color text modes, the

  specified colors will be assigned temporarily to colors 01h and 09h,

  allowing affected text to match non-underlined text.	The color

  remapping uses values from the current onscreen palette regardless

  of the palette locking status (see AX=CD01h)

specify the standard colors (BL=01h,BH=09h) to enable underline or

  strikeout without color remapping

SeeAlso: AX=CD08h

INT 10


INT 10 CD08 - VIDEO - UltraVision v1.2+ - GET UNDERLINE STATUS (EGA,VGA)

Category: V - video

Inp.:

AX = CD08h

Return: CL = hardware underline status (see #0128)

BL = foreground color for normal text

BH = foreground color for bright text

Note:	only CL is valid on monochrome EGA systems

SeeAlso: AX=CD07h

INT 10


INT 10 CD10 - VIDEO - UltraVision - LOAD USER FONT (EGA,VGA)

Category: V - video

Inp.:

AX = CD10h

BH = bytes per character (08h,0Ah,0Bh,0Eh,13h,14h)

CX = ABCDh load 9xN alternate font (v2+)

   else number of characters to load

DX = character offset into font table

DS:SI -> 8-byte ASCII font name

ES:BP -> font definitions

Return: AX = FFFFh if invalid font parameters

Notes:	loads the designated characters into UltraVision's resident font area

should be followed by a video mode set to reload character generator

SeeAlso: AX=1100h

INT 10


INT 10 CD-- - VIDEO - UltraVision - SET ULTRAVISION TEXT MODE (EGA,VGA)

Category: V - video

Inp.:

AH = CDh

AL = text mode number (see #0127)

Return: AX = CDCDh if invalid mode

SeeAlso: AX=CD04h

INT 10


INT 10 D0-- - CU Writer v1.4 - LOAD PICTURE

Category: A - applications

Inp.:

AH = D0h

???

Return: ???

SeeAlso: AH=B0h"CU Writer",AH=C4h

INT 10


INT 10 D0-- - HP 100LX/200LX - SET ZOOM MODE

undocumented function

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

obsolete (no longer present in current versions)

Category: V - video

Inp.:

AH = D0h

AL = zoom mode

    02h 80x25 mono

    03h 80x25 color

    80h 64x18 mono

    81h 64x18 color

    82h 40x25 mono

    83h 40x25 color

    84h 40x16 mono

    85h 40x16 color

Note:	zoom mode can only be changed within zoom modes of the same color

  scheme; if needed, set to mono/color with AH=00h,AL=02h/03h; with

  mono video modes AL=07h or AL=21h only 80x25 and 40x16 will work

the current zoom mode is stored in the BIOS data area at 0040h:009Fh

SeeAlso: AH=D1h,AH=D4h

INT 10


INT 10 D1-- - HP 100LX/200LX - INTERNAL - ???

undocumented function

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

obsolete (no longer present in current versions)

Category: V - video

Inp.:

AH = D1h

AL = 01h

Return: ???

Note:	called by AH=D0h

SeeAlso: AH=D0h,AH=D4h

INT 10


INT 10 D4-- - HP 100LX/200LX - INTERNAL - ???

undocumented function

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

obsolete (no longer present in current versions)

Category: V - video

Inp.:

AH = D4h

AL = 29h

Return: ???

Note:	called by AH=D0h

SeeAlso: AH=D0h,AH=D1h

INT 10


INT 10 D5-- - Netroom SCRNCLK - ???

Category: V - video

Inp.:

AH = D5h

???

Return: ???

Program: SCRNCLK is a "cloaked" screen accelerator included with Netroom

INT 10


INT 10 DFA5 - VIDEO - Compaq ADAPT.COM - GET ??? DATA AREA

undocumented function

Category: V - video

Inp.:

AX = DFA5h

Return: AX = BDBFh if supported

    ES:DI -> ??? data area

    BX = ES

SeeAlso: AX=BFA0h

INT 10


INT 10 EF-- - VIDEO - MSHERC.COM - GET VIDEO ADAPTER TYPE AND MODE

Category: V - video

Inp.:

AH = EFh

Return: DL = video adapter type

    00h original Hercules

    01h Hercules Plus	 (port 03BAh reads x001xxxxx)

    02h Hercules InColor (port 03BAh reads x101xxxxx)

    FFh not a Hercules-compatible card (port 03BAh bit 7 not pulsing)

DH = memory mode byte

    00h "half" mode

    01h "full" mode

    FFh not a Hercules-compatible card

Program: MSHERC.COM is a support program for the Microsoft Quick languages

  which makes their graphics libraries compatible with a Hercules card

  by adding video modes 08h and 88h, and supporting text in the new

  graphics modes.

Notes:	while in mode 08h or 88h, INT 10 supports the Hercules card much like

  a CGA.

MSHERC performs an installation check by setting DL=FFh and testing

  whether it has been changed on return, which causes it to reinstall

  itself when no HGC is present (or HGC emulation has temporarily been

  disabled); a better installation check would be to use DX=80FFh and

  check whether DX has been changed

reportedly returns DH=00h on some not-entirely-Hercules-compatible

  cards

Index:	installation check;MSHERC

INT 10


INT 10 F0-- - EGA Register Interface Library - READ ONE REGISTER

Category: V - video

Inp.:

AH = F0h

BL = register number

BH = 00h

DX = group index (see #0129)

Return: BL = data

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AH=F1h,AH=F2h,INT 2F/AX=BC00h

INT 10


INT 10 F1-- - EGA Register Interface Library - WRITE ONE REGISTER

Category: V - video

Inp.:

AH = F1h

DX = group index (see #0129)

    if single register:

BL = value to write

    otherwise

BL = register number

BH = value to write

Return: BL = data

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AX=7F05h,AH=F0h,AH=F3h

INT 10


INT 10 F2-- - EGA Register Interface Library - READ REGISTER RANGE

Category: V - video

Inp.:

AH = F2h

CH = starting register number

CL = number of registers (>1)

DX = group index (00h,08h,10h,18h) (see #0129)

ES:BX -> buffer, CL bytes

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AH=F0h,AH=F3h

INT 10


INT 10 F3-- - EGA Register Interface Library - WRITE REGISTER RANGE

Category: V - video

Inp.:

AH = F3h

CH = starting register

CL = number of registers (>1)

DX = group index (00h,08h,10h,18h) (see #0129)

ES:BX -> buffer, CL bytes

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AX=7F05h,AH=F1h,AH=F2h

INT 10


INT 10 F4-- - EGA Register Interface Library - READ REGISTER SET

Category: V - video

Inp.:

AH = F4h

CX = number of registers to read (>1)

ES:BX -> table of register records (see #0130)

Return: register values in table filled in

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AH=F0h,AH=F2h,AH=F5h

INT 10


INT 10 F5-- - EGA Register Interface Library - WRITE REGISTER SET

Category: V - video

Inp.:

AH = F5h

CX = number of registers to write (>1)

ES:BX -> table of records (see #0130)

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AX=7F05h,AH=F1h,AH=F3h,AH=F4h

INT 10


INT 10 F6-- - EGA Register Interface Library - REVERT TO DEFAULT REGISTERS

Category: V - video

Inp.:

AH = F6h

Note:	provided by the Microsoft Mouse driver, OS/2 compatibility box, and

  others

SeeAlso: AH=F7h

INT 10


INT 10 F7-- - EGA Register Interface Library - DEFINE DEFAULT REGISTER TABLE

Category: V - video

Inp.:

AH = F7h

DX = port number

   Pointer/data chips

      00h CRTC (3B4h mono modes, 3D4h color modes)

      08h Sequencer 3C4h

      10h Graphics Controller 3CEh

      18h Attribute Controller 3C0h

   Single registers

      20h Miscellaneous Output register 3C2h

      28h Feature Control register (3BAh mono modes, 3DAh color modes)

      30h Graphics 1 Position register 3CCh

      38h Graphics 2 Position register 3CAh

ES:BX -> table of one-byte entries, one byte to be written to each

 register

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AH=F6h

INT 10


INT 10 FA-- - EGA Register Interface Library - INTERROGATE DRIVER

Category: V - video

Inp.:

AH = FAh

BX = 0000h

Return: BX = 0000h if RIL driver not present

ES:BX -> EGA Register Interface version number, if present:

    byte 0 = major release number

    byte 1 = minor release number

Note:	the RIL is provided by EGA.SYS, the Microsoft Mouse driver, the OS/2

  compatibility box, and others

SeeAlso: AH=F6h,INT 2F/AX=BC00h

INT 10


INT 10 FA-- - FASTBUFF.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AH = FAh

Return: AX = 00FAh if installed

    ES = segment of resident code

Program: FASTBUFF.COM is a keyboard speedup/screen blanking utility by David

  Steiner

Index:	screen saver;FASTBUFF

INT 10


INT 10 FE-- - TopView - GET SHADOW BUFFER

Category: V - video

Inp.:

AH = FEh

ES:DI -> assumed video buffer

B800h:0000h color text/CGA graphics, B000h:0000h mono text,

  or A000h:0000h EGA/VGA graphics (RSIS environments only)

Return: ES:DI -> actual video buffer for calling process

Desc:	Determine the address of the virtual screen to which the program

  should write instead of the actual video memory; this permits

  programs to be multitasked without interfering with each other's

  output, and allows memory managers to move the video memory to

  permit larger programs to be loaded.

Notes:	if no multitasker or RSIS-compliant environment is installed, ES:DI is

  returned unchanged; RSIS is the Relocated Screen Interface

  Specification

for display pages other than 0, use AH=05h and AH=0Fh to determine

  whether a particular page exists

TopView requires a call to AH=FFh to notify it that the screen has

  changed; DESQview will check for changes itself until the first call

  to AH=FFh

SeeAlso: AH=05h,AX=5201h,AH=FFh,INT 15/AX=1024h,INT 21/AH=2Bh"DESQview"

SeeAlso: INT 21/AH=ECh"DoubleDOS"

INT 10


INT 10 FF-- - TopView - UPDATE SCREEN FROM SHADOW BUFFER

Category: V - video

Inp.:

AH = FFh

CX = number of consecutive changed characters

ES:DI -> first changed character in shadow buffer

Notes:	avoid CX=0000h

DESQview will discontinue the automatic screen updating initiated by

  AH=FEh after this call

not supported (ignored) by DESQview/X 1.0x

SeeAlso: AH=93h,AH=FEh

INT 10


INT 10 FF-- - DJ GO32.EXE 80386+ DOS extender - VIDEO EXTENSIONS

Category: E - DOS extenders

Inp.:

AH = FFh

AL = video mode (see #0131)

Program: GO32.EXE is a DOS extender included as part of the 80386 port of the

  GNU C/C++ compiler by DJ Delorie and distributed as DJGPP

SeeAlso: AH=00h,INT 21/AH=FFh"GO32"

INT 10


INT 10 FF-- - VIDEO - Oak VGA BIOS v1.02+ - SET EMULATION

Category: V - video

Inp.:

AH = FFh

AL = emulation

    43h ('C') CGA emulation

    45h ('E') EGA emulation

    4Dh ('M') Hercules emulation

    56h ('V') VGA emulation

ES:DI -> signature string "Calamity"

Return: VGA switched to suggested mode

SeeAlso: AH=00h,AX=007Fh,AX=5F01h

INT 10


INT 10 FF00 - CARBON COPY PLUS v5.0 - CHECK IF CC CONNECTED TO CCHELP

Category: R - remote control/file access

Inp.:

AX = FF00h

Return: BL = state

    00h not connected

    01h connected

SeeAlso: AX=FF01h,AX=FF02h

INT 10


INT 10 FF01 - CARBON COPY PLUS v5.0 - DISCONNECT AND RESET LINE

Category: R - remote control/file access

Inp.:

AX = FF01h

SeeAlso: AX=FF00h,AX=FF02h

INT 10


INT 10 FF02 - CARBON COPY PLUS v5.0 - GET LAST PHONE NUMBER DIALED

Category: R - remote control/file access

Inp.:

AX = FF02h

Return: ES:DI -> ASCIZ phone number

SeeAlso: AX=FF00h,AX=FF01h

INT 10


INT 11 ---- - CPU-generated (80486+) - ALIGNMENT CHECK

Category: C - CPU-generated

Inp.:

Desc:	automatically generated by the CPU when the AC flag is set, the current

  privilege level is 3, and a misaligned memory access (WORD not on an

  even address or DWORD not on a multiple of 4) is made

Note:	not all V86 monitors allow the AC flag to be set, such as Turbo

  Debugger 386

INT 11


INT 11 ---- - BIOS - GET EQUIPMENT LIST

Category: B - BIOS

Inp.:

Return: (E)AX = BIOS equipment list word (see #0132)

Note:	since older BIOSes do not know of the existence of EAX, the high word

  of EAX should be cleared before this call if any of the high bits

  will be tested

INT 11


INT 11 ---- - Columbia Data Products Standard Device Level Protocol (SDLP) 1.6

Category: d - disk I/O enhancements

Inp.:

SI = 6A6Ah

AH = command (see #0133)

AL = SCSI Addressing (see #0134)

Return: CF clear if successful

    DI = 6A6Ah if AH=01h on entry (maybe for all functions???)

    AH = ??? for command 01h

CF set on error

    AL = error code

SeeAlso: INT 21/AX=4402h"ASPI"

INT 11


INT 11 0225 - Blank-It Screen Blanker - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 0225h

BX = 6900h

Return: BL = 23h

ES:DI -> ASCIZ "BLNKIT"

Program: Blank-It is a resident screen blanker by Rhode Island Soft Systems,

  Inc.

SeeAlso: AX=0225h/BX=6902h,AX=0225h/BX=6908h,AX=0225h/BX=6909h,INT 14/AX=AA01h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - SET TIMEOUT FOR SCREEN BLANKING

Category: V - video

Inp.:

AX = 0225h

BX = 6901h

CX = timeout in timer ticks (18.2/second) or 0000h to disable timeout

     largest value is 59 minutes (FBACh or 64428)

Return: CF clear if successful

    DI = 6A6Ah (possibly also 6A6Ah for all following functions)

    AH = ???

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6904h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - ENABLE THE SOFTWARE

Category: V - video

Inp.:

AX = 0225h

BX = 6902h

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6903h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - DISABLE THE SOFTWARE

Category: V - video

Inp.:

AX = 0225h

BX = 6903h

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6902h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - GET BLANKING TIMEOUT

Category: V - video

Inp.:

AX = 0225h

BX = 6904h

Return: CF clear if successful

    BX = timeout (see BX=6901h)

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6901h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - ENABLE WINDOWS COMPATIBILITY MODE

Category: V - video

Inp.:

AX = 0225h

BX = 6905h

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6906h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - DISABLE WINDOWS COMPATIBILITY MODE

Category: V - video

Inp.:

AX = 0225h

BX = 6906h

Return: CF clear if successful

CF set on error

    AL = error code

Program: Blank-It is a resident screen blanker by Rhode Island Soft Systems,

  Inc.

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6905h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - UNBLANK THE SCREEN

Category: V - video

Inp.:

AX = 0225h

BX = 6907h

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6908h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - BLANK THE SCREEN

Category: V - video

Inp.:

AX = 0225h

BX = 6908h

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AX=0225h/BX=6900h,AX=0225h/BX=6907h

Index:	screen saver;Blank-It

INT 11


INT 11 0225 - Blank-It Screen Blanker - SET HOTKEY FOR MANUAL BLANKING

Category: V - video

Inp.:

AX = 0225h

BX = 6909h

CL = key scan code (see #0135)

Return: CF clear if successful

CF set on error

    AL = error code

Program: Blank-It is a resident screen blanker by Rhode Island Soft Systems,

  Inc.

SeeAlso: AX=0225h/BX=6900h

Index:	screen saver;Blank-It|hotkeys;Blank-It

INT 11


INT 11 05D7 - Borland C++ IDE - INSTALLED CALLOUT

callout or callback (usually hooked rather than called)

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 05D7h

BX = product ID (0088h)

Note:	called by the BC++ IDE when an application calls

  INT 12/AX=05D7h/BX=05D7h

SeeAlso: INT 12/AX=05D7h/BX=05D7h

Index:	installation check;Borland C++ IDE

INT 11


INT 11 77-- - RainbowFAX v1.3 - SFENGINE API - OPERATIONAL CONTROL

Category: F - FAX

Inp.:

AH = 77h

AL = subfunction

    01h request SFENGINE start

Return: AX = 0001h

    02h check if SFENGINE started

Return: AX = 0000h or 0001h

    03h request SFENGINE stop

Return: AX = 0001h

    04h check if SFENGINE stopped

Return: AX = 0000h or 0001h

    05h installation check

Return: AX = 0001h

    06h uninstall???

BX:DX -> return address for successful uninstall???

Return: (at caller's address)

AX = 0000h

    else

Return: AX = FFFFh

Return: ES:DX -> ASCIZ signature string "SFAX ENGINE V1.0"

followed by internal data area???

SeeAlso: AH=78h,AH=79h,AH=7Ah,AH=7Ch

Index:	installation check;RainbowFAX|installation check;SFENGINE

Index:	uninstall;RainbowFAX|uninstall;SFENGINE

INT 11


INT 11 78-- - RainbowFAX v1.3 - SFENGINE API - ???

Category: F - FAX

Inp.:

AH = 78h

AL = subfunction

    7801h set ???

BX = new state for ???

    0000h ???

    else ???

Return: AX = 0001h

    7802h set ???

BX = ???

CX = ???

Return: AX = 0001h

    7803h set ???

BX = new state for ???

    0000h ???

    else ???

Return: AX = 0001h

    78XXh invalid subfunction

Return: AX = FFFFh

SeeAlso: AH=77h,AH=79h,AH=7Ah,AH=7Ch

INT 11


INT 11 79-- - RainbowFAX v1.3 - SFENGINE API - ???

Category: F - FAX

Inp.:

AH = 79h

AL = subfunction

    01h set ??? flag

Return: AX = previous state (0000h already set, 0001h clear)

    02h clear ??? flag (see subfunc 01h)

Return: AX = 0001h

    03h set ??? flag (different from subfn 02h or 04h)

Return: AX = 0001h

    04h clear ??? flag (different from subfn 02h or 03h)

Return: AX = 0001h

    else

Return: AX = FFFFh

SeeAlso: AH=77h,AH=78h,AH=7Ah,AH=7Ch

INT 11


INT 11 7A-- - RainbowFAX v1.3 - SFENGINE API - ???

Category: F - FAX

Inp.:

AH = 7Ah

AL = subfunction

    01h set ??? flag

Return: AX = previous state (0000h already set, 0001h clear)

    02h clear ??? flag

Return: AX = 0001h

    03h set ??? flag (different from subfn 02h)

Return: AX = 0001h

    else

Return: AX = FFFFh

SeeAlso: AH=77h,AH=78h,AH=79h,AH=7Ch

INT 11


INT 11 7C-- - RainbowFAX v1.3 - SFENGINE API - ???

Category: F - FAX

Inp.:

AH = 7Ch

AL = subfunction

    01h set ??? flag (see also subfn 02h)

Return: AX = 0001h

    02h clear ??? flag (see also subfn 01h)

Return: AX = 0001h

    else

Return: AX = FFFFh

SeeAlso: AH=77h,AH=78h,AH=79h,AH=7Ah

INT 11


INT 11 BC-- - BNU FOSSIL - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AH = BCh

DX = 1954h

Return: AX = 1954h

ES:DX -> entry point of driver (instead of INT 14)

SeeAlso: INT 14/AH=04h"FOSSIL"

INT 11


INT 11 FF-- - WD7000 SDLP interface - EXECUTE GENERIC SCSI COMMAND

Category: d - disk I/O enhancements

Inp.:

AH = FFh

SI = 6A6Ah

AL = SCSI Addressing (see #0136)

CX = bytes of data to be transmitted (max FFF0h)

DH = 00h

DL = length of SCSI Command Descriptor Block

DS:DI -> SCSI Command Descriptor Block

ES:BX -> data buffer

Return: CF set on error

    AL = error code

CF clear if successful

Note:	because of busmaster operations with WD7000FASST avoid accessing

  video memory directly; check 386 memory manager for VDS support.

  The WD7000XTAT works with programmed IO and does not have this

  limitation.

SeeAlso: INT 21/AX=4402h"ASPI",INT 2F/AX=7F01h

INT 11


INT 11 FFFE - BACK&FORTH (before v1.62) API

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFEh

CX = FFFEh

BX = function

    00h installation check

Return: AX = installation state

    0001h BNFHIGH and BNFLOW both loaded

    0003h only BNFHIGH loaded

    else neither loaded

    01h ???

Return: DX:AX -> ???

    02h ???

    03h ???

    04h ???

    05h ??? switches current PSP segment and stack if BNFLOW has not

    yet announced itself installed

    06h ???

Return: AX = ???

SeeAlso: INT 12/AX=FFFEh

Index:	installation check;BACK&FORTH

INT 11


INT 12 ---- - BIOS - GET MEMORY SIZE

Category: B - BIOS

Inp.:

Return: AX = kilobytes of contiguous memory starting at absolute address 00000h

Note:	this call returns the contents of the word at 0040h:0013h; in PC and

  XT, this value is set from the switches on the motherboard

SeeAlso: INT 11,INT 2F/AX=4A06h

INT 12


INT 12 ---- - KEYBUI v2.0+ - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

CX = 1806h

Return: AX = kilobytes of contiguous memory starting at absolute address 00000h

CX = 1960h if installed

Program: KEYBUI is a resident keyboard driver by Johan Zwiekhorst which allows

  accented characters and box drawing on standard QWERTY keyboards; it

  also provides break-to-DOS and screen blanking capabilities

SeeAlso: INT 14/AX=AA01h

Index:	screen saver;KEYBUI

INT 12


INT 12 ---- - PARKER v2.0+ - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

CX = 1807h

Return: AX = kilobytes of contiguous memory starting at absolute address 00000h

CX = 1961h if installed

Program: PARKER is an optionally-resident hard disk parking program by Johan

  Zwiekhorst

INT 12


INT 12 05D7 - Borland C++ IDE - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 05D7h (1495d)

BX = 05D7h

Note:	the BC++ IDE will call INT 11/AX=05D7h/BX=0088h if it is loaded

SeeAlso: INT 11/AX=05D7h/BX=0088h

INT 12


INT 12 4350 - CPI-standard virus - "FRIEND" CHECK

callout or callback (usually hooked rather than called)

Category: v - virus/antivirus

Inp.:

AX = 4350h

BX = 4920h

CX = AB46h

DX = 554Eh

Return: if friendly (not to be infected)

    CX:DX -> ASCIZ identity code (changes yearly)

SeeAlso: AX=EC00h"VIRUS",INT 13/AX=5001h,INT 21/AX=0B56h

INT 12


INT 12 FFFE - Back&Forth v1.62+ - API

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFEh

CX = FFFEh

BX = function

    00h installation check

Return: AX = 0001h installed

     else  not loaded

    01h (reserved)

    02h build program ID list (shareware Back&Forth)

ES:DI -> buffer of at least 100 bytes, to be filled with words

Return: AX = number of programs defined

ES:DI buffer filled with AX words

    02h get memory statistics (Back&Forth Professional)

Return: AX = available swap memory, KBytes

BX = maximum task size, KBytes

DX = fixed overhead per task, excluding video/macro

      storage

    03h switch to specified task (task need not be open yet)

DX = two-letter program ID

Return: AX = status

    0000h if task undefined

    0001h task switch will occur when safe

    04h (reserved)

    05h (reserved)

    06h get version (documented only for Back&Forth Professional)

Return: AX = version * 100 (v1.71 = 00ABh)

    07h spawn program (Back&Forth Professional only???)

ES:DI -> BF_SPAWN record (see #0138)

Return: AX = status

    0000h if no task handles free

    0001h spawn will occur when safe

    08h get open tasks (documented only for Back&Forth Professional)

ES:DI -> task info buffer (see #0137,#0139)

Return: AX = number of open tasks (max 20)

Note:	the supplied buffer must be large enough to hold 21

  task entries

    09h (reserved)

    ---Back&Forth Professional---

    0Ah get active clipboard filename

Return: DX:AX -> ASCIZ clipboard filename

    0Bh get active task number

AX = active task number (00h-13h)

BX = number of tasks allocated

DX = maximum number of tasks

    0Ch (reserved)

    0Dh (reserved)

    0Eh (reserved)

    0Fh stuff string into keyboard buffer

ES:DI -> ASCIZ string to be stuffed

Return: nothing

    10h check if in graphics mode

Return: AX = state

    0000h color text mode

    0004h mono text mode

    FFFFh graphics mode

    11h get Back&Forth Professional user number

Return: AX = user number (0000h-00FFh)

    12h switch task by task number

DX = task number

Return: AX = status

    0000h attempted to switch to active task

    0001h task switch will occur when safe

    FFFFh invalid task number

    13h delete (kill) task

DX = task number

Return: AX = status

    0000h attempted to delete the active task

    0001h successfully deleted

    FFFFh invalid task number

Note:	the active task number will change if the deleted task

  was lower in the task list than the active task

    14h get next available task handle

Return:	AX = next available task handle

    FFFFh if task table is full

Program: Back & Forth is a task switcher by Progressive Solutions, Inc.

SeeAlso: INT 11/AX=FFFEh

Index:	installation check;BACK&FORTH

INT 12


INT 13 00-- - DISK - RESET DISK SYSTEM

Category: B - BIOS

Inp.:

AH = 00h

DL = drive (if bit 7 is set both hard disks and floppy disks reset)

Return: AH = status (see #0140)

CF clear if successful (returned AH=00h)

CF set on error

Note:	forces controller to recalibrate drive heads (seek to track 0)

for PS/2 35SX, 35LS, 40SX and L40SX, as well as many other systems,

  both the master drive and the slave drive respond to the Reset

  function that is issued to either drive

SeeAlso: AH=0Dh,AH=11h,INT 21/AH=0Dh,INT 4D/AH=00h"TI Professional"

INT 13


INT 13 01-- - DISK - GET STATUS OF LAST OPERATION

Category: B - BIOS

Inp.:

AH = 01h

DL = drive (bit 7 set for hard disk)

Return: CF clear if successful (returned status 00h)

CF set on error

AH = status of previous operation (see #0140)

Note:	some BIOSes return the status in AL; the PS/2 Model 30/286 returns the

  status in both AH and AL

SeeAlso: AH=00h,INT 4D/AH=01h,MEM 0040h:0074h

INT 13


INT 13 02-- - DISK - READ SECTOR(S) INTO MEMORY

Category: B - BIOS

Inp.:

AH = 02h

AL = number of sectors to read (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> data buffer

Return: CF set on error

    if AH = 11h (corrected ECC error), AL = burst length

CF clear if successful

AH = status (see #0140)

AL = number of sectors transferred

Notes:	errors on a floppy may be due to the motor failing to spin up quickly

  enough; the read should be retried at least three times, resetting

  the disk with AH=00h between attempts

most BIOSes support "multitrack" reads, where the value in AL

  exceeds the number of sectors remaining on the track, in which

  case any additional sectors are read beginning at sector 1 on

  the following head in the same cylinder; the CONFIG.SYS command

  MULTITRACK can be used to force DOS to split disk accesses which

  would wrap across a track boundary into two separate calls

the IBM AT BIOS and many other BIOSes use only the low four bits of

  DH (head number) since the WD-1003 controller which is the standard

  AT controller (and the controller that IDE emulates) only supports

  16 heads

AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more

  than 1024 cylinders by placing bits 10 and 11 of the cylinder number

  into bits 6 and 7 of DH

SeeAlso: AH=03h,AH=0Ah,AH=06h"V10DISK.SYS",AH=21h"PS/1",INT 4D/AH=02h

INT 13


INT 13 03-- - DISK - WRITE DISK SECTOR(S)

Category: B - BIOS

Inp.:

AH = 03h

AL = number of sectors to write (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> data buffer

Return: CF set on error

CF clear if successful

AH = status (see #0140)

AL = number of sectors transferred

Notes:	errors on a floppy may be due to the motor failing to spin up quickly

  enough; the write should be retried at least three times, resetting

  the disk with AH=00h between attempts

most BIOSes support "multitrack" writes, where the value in AL

  exceeds the number of sectors remaining on the track, in which

  case any additional sectors are written beginning at sector 1 on

  the following head in the same cylinder; the CONFIG.SYS command

  MULTITRACK can be used to force DOS to split disk accesses which

  would wrap across a track boundary into two separate calls

the IBM AT BIOS and many other BIOSes use only the low four bits of

  DH (head number) since the WD-1003 controller which is the standard

  AT controller (and the controller that IDE emulates) only supports

  16 heads

AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more

  than 1024 cylinders by placing bits 10 and 11 of the cylinder number

  into bits 6 and 7 of DH

SeeAlso: AH=02h,AH=0Bh,AH=07h"V10DISK.SYS",AH=22h"PS/1",INT 4D/AH=03h

INT 13


INT 13 04-- - DISK - VERIFY DISK SECTOR(S)

Category: B - BIOS

Inp.:

AH = 04h

AL = number of sectors to verify (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> data buffer (PC,XT,AT with BIOS prior to 11/15/85)

Return: CF set on error

CF clear if successful

AH = status (see #0140)

AL = number of sectors verified

Notes:	errors on a floppy may be due to the motor failing to spin up quickly

  enough; the write should be retried at least three times, resetting

  the disk with AH=00h between attempts

this function does not compare the disk with memory, it merely

  checks whether the sector's stored CRC matches the data's actual CRC

the IBM AT BIOS and many other BIOSes use only the low four bits of

  DH (head number) since the WD-1003 controller which is the standard

  AT controller (and the controller that IDE emulates) only supports

  16 heads

AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more

  than 1024 cylinders by placing bits 10 and 11 of the cylinder number

  into bits 6 and 7 of DH

SeeAlso: AH=02h,INT 4D/AH=04h,INT 4D/AH=06h

INT 13


INT 13 05-- - FLOPPY - FORMAT TRACK

Category: B - BIOS

Inp.:

AH = 05h

AL = number of sectors to format

CH = track number

DH = head number

DL = drive number

ES:BX -> address field buffer (see #0141)

Return: CF set on error

CF clear if successful

AH = status (see #0140)

Notes:	on AT or higher, call AH=17h first

the number of sectors per track is read from the diskette parameter

  table pointed at by INT 1E

SeeAlso: AH=05h"FIXED",AH=17h,AH=18h,INT 1E

INT 13


INT 13 05-- - FIXED DISK - FORMAT TRACK

Category: B - BIOS

Inp.:

AH = 05h

AL = interleave value (XT-type controllers only)

ES:BX -> 512-byte format buffer

the first 2*(sectors/track) bytes contain F,N for each sector

   F = sector type

00h for good sector

20h to unassign from alternate location

40h to assign to alternate location

80h for bad sector

   N = sector number

CH = cylinder number (bits 8,9 in high bits of CL)

CL = high bits of cylinder number (bits 7,6)

DH = head

DL = drive

Return: CF set on error

CF clear if successful

AH = status code (see #0140)

Notes:	AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more

  than 1024 cylinders by placing bits 10 and 11 of the cylinder number

  into bits 6 and 7 of DH

for XT-type controllers on an AT or higher, AH=0Fh should be called

  first

the IBM AT BIOS and many other BIOSes use only the low four bits of

  DH (head number) since the WD-1003 controller which is the standard

  AT controller (and the controller that IDE emulates) only supports

  16 heads

not all controller support sector types 20h and 40h

SeeAlso: AH=05h"FLOPPY",AH=06h"FIXED",AH=07h"FIXED",AH=0Fh,AH=18h,AH=1Ah

INT 13


INT 13 05-- - Future Domain SCSI BIOS - SEND SCSI MODE SELECT COMMAND

Category: d - disk I/O enhancements

Inp.:

AH = 05h

DL = hard drive ID

ES:BX -> mode select data (see #0142)

Return: CF set on error

CF clear if successful

AH = status code (see #0140)

Notes:	this function can be called before AH=07h"SCSI" or AH=06h"SCSI" to

  format a SCSI disk with the desired parameters

the mode select data below is from the SCSI-1 specification

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=06h"SCSI",AH=07h"SCSI",INT 4F/AX=8100h

INT 13


INT 13 057F - 2M - FORMAT TRACK

Category: B - BIOS

Inp.:

AX = 057Fh

SI = 324Dh ("2M")

CH = track number

DH = head number

DL = drive number

ES:BX -> boot sector of future 2M diskette

Return:	CF set on error

CF clear if successful

AH = status (see #0140)

Program: 2M is a TSR developed by Ciriaco Garcia de Celis to support

  non standard diskettes with 820-902/1476-1558K (5.25 DD/HD)

  and 984-1066/1804-1886K/3608-3772K (3.5 DD/HD/ED)

Notes:	it is not necessary to call AH=17h/AH=18h first (will be ignored)

the diskette format must always begin on cylinder 0 head 0

the boot sector can be obtained from an already-formatted 2M diskette

  (by calling AH=02h with head number 00h in 2M v1.x and with head

  number 80h for 2M v2+)

the installation check for 2M must search for a "CiriSOFT:2M:1.3" or

  "CiriSOFT:2MX:3.0" or similar (recomended ":2M:", ":2MX:", or ":2MB:"

  substrings) in CiriSOFT TSR interface

since 2M v2.0, the BOOT sector is emulated using the first physical

  sector of FAT2; the second-sixth physical sectors of FAT2 in HD or ED

  diskettes store the SuperBOOT code. To skip the FAT2 emulation (using

  FAT1) of 2M, in order to read the SuperBOOT code, head number must be

  80h-81h instead 0-1 (bit 7 active) in standard read/write functions.

  This lets diskcopy programs format 2M target diskettes copying

  SuperBOOT code. If the target diskette is already 2MF formatted

  (containing boot code) this trick it is not necessary.

when using STV technology (offset 65 of boot sector equal to 1) it is

  necessary to write the full track before formatting (except track 0

  side 0) to complete the format and skip future CRC errors on read; in

  track 0 side 1 the head used must be 81h instead 1. Diskcopy programs

  may do a format-write-verify sequential phases to improve performance

SeeAlso: AH=05h"FLOPPY",INT 2F"CiriSOFT TSR interface"

INT 13


INT 13 06-- - FIXED DISK - FORMAT TRACK AND SET BAD SECTOR FLAGS (XT,PORT)

Category: B - BIOS

Inp.:

AH = 06h

AL = interleave value

CH = cylinder number (bits 8,9 in high bits of CL)

CL = sector number

DH = head

DL = drive

Return: AH = status code (see #0140)

Note:	AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more

  than 1024 cylinders by placing bits 10 and 11 of the cylinder number

  into bits 6 and 7 of DH

SeeAlso: AH=05h"FIXED",AH=07h"FIXED"

INT 13


INT 13 06-- - Future Domain SCSI BIOS - FORMAT DRIVE WITH BAD SECTOR MAPPING

Category: d - disk I/O enhancements

Inp.:

AH = 06h

AL = interleave

     (0 = default, 1 = consecutive sectors, 2 - 255 = vendor unique)

DL = hard drive ID

DH = defect list info (see #0143)

ES:BX -> defect table A, B or C (see #0144,#0145,#0146)

Return: CF set on error

CF clear if successful

AH = status code (see #0140)

Notes:	block addresses must be in ascending order (for table B, cylinder is

  most significant, byte from index least significant; for table C,

  cylinder is most significant, sector number least significant)

table B defect bytes from index of FFFFFFFFh indicates that the entire

  track shall be reassigned

table C defect sector number of FFFFFFFFh indicates that the entire

  track shall be reassigned

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=05h"SCSI",AH=06h"FIXED",AH=07h"SCSI"

INT 13


INT 13 06-- - Adaptec AHA-154xA/Bustek BT-542 BIOS - IDENTIFY SCSI DEVICES

Category: d - disk I/O enhancements

Inp.:

AH = 06h

Return: AH = status code (see #0140)

CF clear if successful

    AL = first drive supported

(80h nonconcurrent operation, 81h concurrent operation)

CF set on error

Desc:	determine the number of the first supported SCSI drive

Note:	the return value is 80h when two SCSI drives are supported, 81h if

  only one SCSI drive is installed

SeeAlso: AH=08h

INT 13


INT 13 06-- - V10DISK.SYS - READ DELETED SECTORS

Category: d - disk I/O enhancements

Inp.:

AH = 06h

AL = number of sectors

CH = cylinder number (bits 8,9 in high bits of CL)

CL = sector number

DH = head

DL = drive

ES:BX -> buffer

Return: AH = status code (see #0140)

Program: V10DISK.SYS is a driver for the Flagstaff Engineering 8" floppies

SeeAlso: AH=02h,AH=07h"V10DISK.SYS"

INT 13


INT 13 07-- - FIXED DISK - FORMAT DRIVE STARTING AT GIVEN TRACK (XT,PORT)

Category: B - BIOS

Inp.:

AH = 07h

AL = interleave value (XT only)

ES:BX = 512-byte format buffer (see AH=05h)

CH = cylinder number (bits 8,9 in high bits of CL)

CL = sector number

DH = head

DL = drive

Return: AH = status code (see #0140)

Note:	AWARD AT BIOS and AMI 386sx BIOS have been extended to handle more

  than 1024 cylinders by placing bits 10 and 11 of the cylinder number

  into bits 6 and 7 of DH

SeeAlso: AH=05h"FIXED",AH=06h"FIXED",AH=1Ah

INT 13


INT 13 07-- - Future Domain SCSI BIOS - FORMAT DRIVE

Category: d - disk I/O enhancements

Inp.:

AH = 07h

AL = interleave (0 = default, 1 = consecutive sectors,

       2 - 255 = vendor unique)

DL = hard drive ID

Return: CF set on error

CF clear if successful

AH = status code (see #0140)

SeeAlso: AH=05h"SCSI",AH=06h"SCSI",AH=07h"FIXED"

INT 13


INT 13 07-- - V10DISK.SYS - WRITE DELETED SECTORS

Category: d - disk I/O enhancements

Inp.:

AH = 07h

AL = number of sectors

CH = cylinder number (bits 8,9 in high bits of CL)

CL = sector number

DH = head

DL = drive

ES:BX -> buffer

Return: AH = status code (see #0140)

Program: V10DISK.SYS is a driver for the Flagstaff Engineering 8" floppies

SeeAlso: AH=03h,AH=06h"V10DISK.SYS"

INT 13


INT 13 08-- - DISK - GET DRIVE PARAMETERS (PC,XT286,CONV,PS,ESDI,SCSI)

Category: B - BIOS

Inp.:

AH = 08h

DL = drive (bit 7 set for hard disk)

Return: CF set on error

    AH = status (07h) (see #0140)

CF clear if successful

    AH = 00h

    BL = drive type (AT/PS2 floppies only) (see #0148)

    CH = low eight bits of maximum cylinder number

    CL = maximum sector number (bits 5-0)

 high two bits of maximum cylinder number (bits 7-6)

    DH = maximum head number

    DL = number of drives

    ES:DI -> drive parameter table (floppies only)

Notes:	may return successful even though specified drive is greater than the

  number of attached drives of that type (floppy/hard); check DL to

  ensure validity

for systems predating the IBM AT, this call is only valid for hard

  disks, as it is implemented by the hard disk BIOS rather than the

  ROM BIOS

Toshiba laptops with HardRAM return DL=02h when called with DL=80h,

  but fail on DL=81h.  The BIOS data at 40h:75h correctly reports 01h.

may indicate only two drives present even if more are attached; to

  ensure a correct count, one can use AH=15h to scan through possible

  drives

for BIOSes which reserve the last cylinder for testing purposes, the

  cylinder count is automatically decremented

SeeAlso: AH=06h"Adaptec",AH=13h"SyQuest",AH=48h,AH=15h,INT 1E,INT 41

INT 13


INT 13 08-- - V10DISK.SYS - SET FORMAT

Category: d - disk I/O enhancements

Inp.:

AH = 08h

AL = number of sectors

CH = cylinder number (bits 8,9 in high bits of CL)

CL = sector number

DH = head

DL = drive

Return: AH = status code (see #0140)

Program: V10DISK.SYS is a driver for the Flagstaff Engineering 8" floppies

Note:	details not available

SeeAlso: AH=03h,AH=06h"V10DISK.SYS"

INT 13


INT 13 0800 - SecureDrive - INSTALLATION CHECK

Category: y - security

Inp.:

AX = 08000h

DL = F0h

Return: AX = EDCBh for version 1.0-1.2

AX = EDCCh for version 1.3

CX = code segment

DX = data address within code segment

Program: SecureDrive by Mike Ingle <mikeingle@delphi.com> allows you to create

  an encrypted partition on your harddisk.

INT 13


INT 13 09-- - HARD DISK - INITIALIZE CONTROLLER WITH DRIVE PARAMETERS (AT,PS)

Category: B - BIOS

Inp.:

AH = 09h

DL = drive (80h for first, 81h for second)

Return: CF clear if successful

CF set on error

AH = status (see #0140)

Notes:	on the PC and XT, this function uses the parameter table pointed at by

  INT 41

on the AT and later, this function uses the parameter table pointed at

  by INT 41 if DL=80h, and the parameter table pointed at by INT 46 if

  DL=81h

SeeAlso: INT 41,INT 46

INT 13


INT 13 0A-- - HARD DISK - READ LONG SECTOR(S) (AT and later)

Category: B - BIOS

Inp.:

AH = 0Ah

AL = number of sectors

CH = low eight bits of cylinder number

CL = sector number (bits 5-0)

     high two bits of cylinder number (bits 7-6)

DH = head number

DL = drive number (80h = first, 81h = second)

ES:BX -> data buffer

Return: CF clear if successful

CF set on error

AH = status (see #0140)

AL = number of sectors transferred

Notes:	this function reads in four to seven bytes of error-correcting code

  along with each sector's worth of information

data errors are not automatically corrected, and the read is aborted

  after the first sector with an ECC error

used for diagnostics only on PS/2 systems

SeeAlso: AH=02h,AH=0Bh

INT 13


INT 13 0B-- - HARD DISK - WRITE LONG SECTOR(S) (AT and later)

Category: B - BIOS

Inp.:

AH = 0Bh

AL = number of sectors

CH = low eight bits of cylinder number

CL = sector number (bits 5-0)

     high two bits of cylinder number (bits 7-6)

DH = head number

DL = drive number (80h = first, 81h = second)

ES:BX -> data buffer

Return: CF clear if successful

CF set on error

AH = status (see #0140)

AL = number of sectors transferred

Notes:	each sector's worth of data must be followed by four to seven bytes of

  error-correction information

used for diagnostics only on PS/2 systems

SeeAlso: AH=03h,AH=0Ah

INT 13


INT 13 0C-- - HARD DISK - SEEK TO CYLINDER

Category: B - BIOS

Inp.:

AH = 0Ch

CH = low eight bits of cylinder number

CL = sector number (bits 5-0)

    high two bits of cylinder number (bits 7-6)

DH = head number

DL = drive number (80h = first, 81h = second hard disk)

Return: CF set on error

CF clear if successful

AH = status (see #0140)

SeeAlso: AH=00h,AH=02h,AH=0Ah,AH=47h

INT 13


INT 13 0D-- - HARD DISK - RESET HARD DISKS

Category: d - disk I/O enhancements

Inp.:

AH = 0Dh

DL = drive number (80h = first, 81h = second hard disk)

Return: CF set on error

CF clear if successful

AH = status (see #0140)

Notes:	reinitializes the hard disk controller, resets the specified drive's

  parameters, and recalibrates the drive's heads (seek to track 0)

for PS/2 35SX, 35LS, 40SX and L40SX, as well as many other systems,

  both the master drive and the slave drive respond to the Reset

  function that is issued to either drive

not for PS/2 ESDI drives

SeeAlso: AH=00h,INT 21/AH=0Dh

INT 13


INT 13 0E-- - HARD DISK - READ SECTOR BUFFER (XT only)

Category: B - BIOS

Inp.:

AH = 0Eh

DL = drive number (80h = first, 81h = second hard disk)

ES:BX -> buffer

Return: CF set on error

CF clear if successful

AH = status code (see #0140)

Notes:	transfers controller's sector buffer.  No data is read from the drive

used for diagnostics only on PS/2 systems

SeeAlso: AH=0Ah

INT 13


INT 13 0F-- - HARD DISK - WRITE SECTOR BUFFER (XT only)

Category: B - BIOS

Inp.:

AH = 0Fh

DL = drive number (80h = first, 81h = second hard disk)

ES:BX -> buffer

Return: CF set on error

CF clear if successful

AH = status code (see #0140)

Notes:	does not write data to the drive

should be called before formatting to initialize an XT-type

  controller's sector buffer

used for diagnostics only on PS/2 systems

SeeAlso: AH=0Bh

INT 13


INT 13 10-- - HARD DISK - CHECK IF DRIVE READY

Category: B - BIOS

Inp.:

AH = 10h

DL = drive number (80h = first, 81h = second hard disk)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

INT 13


INT 13 11-- - HARD DISK - RECALIBRATE DRIVE

Category: B - BIOS

Inp.:

AH = 11h

DL = drive number (80h = first, 81h = second hard disk)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

Note:	causes hard disk controller to seek the specified drive to cylinder 0

SeeAlso: AH=00h,AH=0Ch,AH=19h"FIXED DISK"

INT 13


INT 13 12-- - HARD DISK - CONTROLLER RAM DIAGNOSTIC (XT,PS)

Category: B - BIOS

Inp.:

AH = 12h

DL = drive number (80h = first, 81h = second hard disk)

Return: CF set on error

CF clear if successful

AH = status code (see #0140 at AH=01h)

AL = 00h

SeeAlso: AH=13h,AH=14h

INT 13


INT 13 12-- - Future Domain SCSI CONTROLLER - STOP SCSI DISK

Category: d - disk I/O enhancements

Inp.:

AH = 12h

DL = hard drive ID

Return: CF set on error

CF clear if successful

AH = status code (see #0140 at AH=01h)

Notes:	available at least on the TMC-870 8-bit SCSI controller BIOS v6.0A

if the given drive is a SCSI device, the SCSI Stop Unit command is sent

  and either "Disk prepared for shipping" or "Disk Stop command failed"

  is displayed

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

INT 13


INT 13 12-- - SyQuest - START/STOP SCSI DISK

Category: d - disk I/O enhancements

Inp.:

AH = 12h

AL = subfunction

    00h start disk

    01h stop disk

CX = wait flag

    00h wait for ready

    01h don't wait for ready

DL = hard drive ID (bit 7 for hard disks must be set)

Return: CF set on error

CF clear if successful

AH = status

    00h successful

    01h invalid function request

    80h timeout

SeeAlso: AH=12h"Future Domain",AH=13h"SyQuest"

INT 13


INT 13 13-- - HARD DISK - DRIVE DIAGNOSTIC (XT,PS)

Category: B - BIOS

Inp.:

AH = 13h

DL = drive number (80h = first, 81h = second hard disk)

Return: CF set on error

CF clear if successful

AH = status code (see #0140 at AH=01h)

AL = 00h

SeeAlso: AH=12h"HARD DISK",AH=14h"HARD DISK"

INT 13


INT 13 13-- - SyQuest - READ DRIVE PARAMATERS (for DOS 5+)

Category: d - disk I/O enhancements

Inp.:

AH = 13h

DL = drive ID (bit 7 set for hard disks)

Return: CF set on error

    AH = status (07h) (see #0140 at AH=01h)

CF clear if successful

    AH = 00h

    BL = drive type (AT/PS2 floppies only) (see #0148)

    CH = low eight bits of maximum cylinder number

    CL = maximum sector number (bits 5-0)

 high two bits of maximum cylinder number (bits 7-6)

    DH = maximum head number

    DL = number of drives

    ES:DI -> drive parameter table (floppies only)

Notes:	the return values are identical to the standard INT 13/AH=08h, but the

  number of drives is not limited to 2, so

scanning all possible drive numbers with the Read DASD Type call

  (AH=15h) should generally be preferred to determine the number of

  drives attached to the system.

SeeAlso: AH=08h,AH=12h"SyQuest",AH=15h,AH=59h"SyQuest"

INT 13


INT 13 14-- - HARD DISK - CONTROLLER INTERNAL DIAGNOSTIC

Category: B - BIOS

Inp.:

AH = 14h

Return: CF set on error

CF clear if successful

AH = status code (see #0140 at AH=01h)

AL = 00h

SeeAlso: AH=12h,AH=13h

INT 13


INT 13 15-- - DISK - GET DISK TYPE (XT 1/10/86 or later,XT286,AT,PS)

Category: B - BIOS

Inp.:

AH = 15h

DL = drive number (bit 7 set for hard disk)

Return: CF clear if successful

    AH = type code

00h no such drive

01h floppy without change-line support

02h floppy with change-line support

03h hard disk

    CX:DX = number of 512-byte sectors

CF set on error

    AH = status (see #0140 at AH=01h)

Note:	SyQuest can report type 01h or 02h for 'hard disks', since its media

  is removable

SeeAlso: AH=08h,AH=16h,AH=17h,AH=19h"SCSI"

INT 13


INT 13 16-- - FLOPPY DISK - DETECT DISK CHANGE (XT 1/10/86 or later,XT286,AT,PS)

Category: B - BIOS

Inp.:

AH = 16h

DL = drive number (00h-7Fh)

Return: CF clear if change line inactive

    AH = 00h (disk not changed)

CF set if change line active

    AH = status

01h invalid command (SyQuest)

06h change line active or not supported

80h drive not ready or not present

Notes:	call AH=15h first to determine whether the drive supports a change

  line

this call also clears the media-change status, so that a disk change

  is only reported once

SeeAlso: AH=15h,AH=49h

INT 13


INT 13 17-- - FLOPPY DISK - SET DISK TYPE FOR FORMAT (AT,PS)

Category: B - BIOS

Inp.:

AH = 17h

AL = format type

    01h = 320/360K disk in 360K drive

    02h = 320/360K disk in 1.2M drive

    03h = 1.2M disk in 1.2M drive

    04h = 720K disk in 720K or 1.44M drive

DL = drive number

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

Note:	this function does not handle 1.44M drives; use AH=18h instead

SeeAlso: AH=15h,AH=18h

INT 13


INT 13 1700 - Future Domain SCSI CONTROLLER - GET INQUIRY INFO FROM SCSI DEVICE

Category: d - disk I/O enhancements

Inp.:

AX = 1700h

CL = length of buffer

DL = hard drive ID

ES:BX -> buffer for info (see #0149)

Return: CF clear if successful

    CH = number of bytes returned in buffer???

CF set on error

    AH = status code (see #0140 at AH=01h)

Notes:	this function is not available with 8-bit controller ROM versions < 7.0

information block bytes 5-n are vendor-specific in older SCSI devices

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=18h"SCSI",AH=1Bh"SCSI"

INT 13


INT 13 18-- - DISK - SET MEDIA TYPE FOR FORMAT (AT model 3x9,XT2,XT286,PS)

Category: B - BIOS

Inp.:

AH = 18h

DL = drive number

CH = lower 8 bits of highest cylinder number (number of cylinders - 1)

CL = sectors per track (bits 0-5)

     top 2 bits of highest cylinder number (bits 6,7)

Return: AH = status

    00h requested combination supported

    01h function not available

    0Ch not supported or drive type unknown

    80h there is no disk in the drive

ES:DI -> 11-byte parameter table (see #0572 at INT 1E)

SeeAlso: AH=05h,AH=07h,AH=17h

INT 13


INT 13 18-- - Future Domain SCSI BIOS - GET SCSI CONTROLLER INFORMATION

Category: d - disk I/O enhancements

Inp.:

AH = 18h

DL = hard drive ID

Return: CF set on error

    AH = status code (see #0140 at AH=01h)

CF clear if successful

    AX = 4321h (magic number)

    CX = controller family code (see #0155)

    ---if family code=0200h

DH = number of exclusively ROM-controlled SCSI devices

DL = canonical SCSI device number for specified drive

    ---if family code <> 0200h

BH = number of exclusively ROM-controlled SCSI devices

BL = canonical SCSI device number for specified drive

Notes:	also sets an internal flag (non-resettable) which prevents some

  controller messages from being displayed, allows writes to

  removable devices (use caution!), and enables the INT 13 interface

  for more than one drive (i.e. DL >= 81h) in at least some ROM

  versions

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=05h"SCSI",AX=1700h"SCSI",AH=1Bh"SCSI",INT 4F/AX=8100h

INT 13


INT 13 18-- - XDF.COM - API

Category: B - BIOS

Inp.:

AH = 18h

CX = D2C9h ("R"+80h, "I"+80h = Roger Ivey)

DX = 0

BX = function

    0000h installation check

  Return: AH =	 0Ch

  CX = 7269h ("ri" = Roger Ivey)

  ES = segment of driver

  CF set

    2F64h ("/d") disable the driver

  Return: AH =	 0Ch

  ES:BX = pointer to activation flag (it is set to 0:

  set it to 1 to enable the driver again)

  CX = 7269h

  CF set

    2F75h ("/u") unload the driver (restore interrupts & free memory)

  Return: AH =	 0Ch

  DL =	 55h ("U") if successful

     =	  0h	   if fails

  CX = 7269h

  ES = segment of driver

  CF set

  AL, BX, DH, and DI destroyed

Program: XDF is a TSR provided with PC-DOS 7.0 to support XDF 1.84M disks,

  developed by Roger D. Ivey

Note:	After disabling or enabling the driver, a disk change must be performed

  or simulated to reset the driver.

INT 13


INT 13 19-- - FIXED DISK - PARK HEADS ON ESDI DRIVE (XT286,PS)

Category: B - BIOS

Inp.:

AH = 19h

DL = drive

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

SeeAlso: AH=11h

INT 13


INT 13 19-- - Future Domain SCSI CONTROLLER - REINITIALIZE DRIVE

Category: d - disk I/O enhancements

Inp.:

AH = 19h

DL = hard drive ID

Return: CF set on error

    AH = status code (see #0140 at AH=01h)

CF clear if successful

    AH = disk type (03h = fixed disk)

    CX:DX = number of 512-byte sectors

Notes:	sends SCSI Read Capacity command to get number of logical blocks and

  adjusts the result for 512-byte sectors

displays either "Error in Read Capacity Command" or "nnn Bytes per

  sector" (nnn=256 or 512, the only sizes supported in the translation

  code)

should probably be called when a removable device has its media changed

returns the same values as AH=15h

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=15h,AH=1Ah,INT 4F/AX=8100h

INT 13


INT 13 1A-- - ESDI FIXED DISK - FORMAT UNIT (PS)

Category: d - disk I/O enhancements

Inp.:

AH = 1Ah

AL = defect table entry count

CL = format modifiers (see #0156)

DL = drive (80h,81h)

ES:BX -> defect table (see #0157), ignored if AL=00h

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

Note:	if periodic interrupt selected, INT 15/AH=0Fh is called after each

  cylinder is formatted

SeeAlso: AH=07h,INT 15/AH=0Fh

INT 13


INT 13 1A-- - Future Domain SCSI CONTROLLER - GET SCSI PARTIAL MEDIUM CAPACITY

Category: d - disk I/O enhancements

Inp.:

AH = 1Ah

CH = track (bits 8,9 in high bits of CL)

CL = sector (01h to number of sectors/track for drive)

DH = head

DL = hard drive ID

Return: CF set on error

AH = status code (see #0140 at AH=01h)

CX:DX = logical block number of last quickly-accessible block after

given block

Notes:	sends SCSI Read Capacity command with the PMI bit set to obtain the

  logical block address of the last block after which a substantial

  delay in data transfer will be encountered (usually the last block

  on the current cylinder).  No translation to 512 byte sectors is

  performed on the result if data is stored on the disk in other than

  512 byte sectors.

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=15h,AH=19h"SCSI"

INT 13


INT 13 1B-- - ESDI FIXED DISK - GET MANUFACTURING HEADER

Category: d - disk I/O enhancements

Inp.:

AH = 1Bh

AL = number of sectors to read

DL = drive

ES:BX -> buffer for manufacturing header (defect list)

Return: CF set on error

CF clear if successful

AH = status

Note:	manufacturing header format (Defect Map Record format) can be found

  in IBM 70MB, 115MB Fixed Disk Drives Technical Reference

the first sector read contains the manufacturing header with the number

  of defect entries and the beginning of the defect map; the remaining

  sectors contain the remainder of the defect map

INT 13


INT 13 1B-- - Future Domain SCSI CONTROLLER - GET POINTER TO SCSI DISK INFO BLOCK

Category: d - disk I/O enhancements

Inp.:

AH = 1Bh

DL = hard drive ID

Return: CF set on error

    AH = status code (see #0140 at AH=01h)

CF clear if successful

    ES:BX -> SCSI disk information block (see #0158)

Notes:	also sets a non-resettable flag which prevents some controller messages

  from being displayed

the TMC-950 does not support any Future Domain BIOS calls; instead,

  it provides a full CAM implementation (see INT 4F/AX=8100h)

SeeAlso: AH=18h"SCSI",AH=1Ch"SCSI"

INT 13


INT 13 1C-- - Future Domain SCSI CONTROLLER - GET POINTER TO FREE CONTROLLER RAM

Category: d - disk I/O enhancements

Inp.:

AH = 1Ch

DL = hard drive ID (any valid SCSI hard disk)

Return: CF set on error

    AH = status code (see #0140 at AH=01h)

CF clear if successful

    ES:BX -> first byte of free RAM on controller

Notes:	the Future Domain TMC-870 contains 1024 bytes of RAM at offsets 1800h

  to 1BFFh on-board the controller for storing drive information and

  controller status; ES:BX points to the first byte available for other

  uses

ES contains the segment at which the controller resides; the

  controller's two memory-mapped I/O ports are at offsets 1C00h, 1E00h

SeeAlso: AH=1Bh"SCSI"

INT 13


INT 13 1C-- - ESDI FIXED DISK - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AH = 1Ch

AL = subfunction (01h-06h)

DL = drive (80h,81h)

???

Return: ???

Note:	these functions perform a controller command 0612h without DMA

INT 13


INT 13 1C08 - ESDI FIXED DISK - GET COMMAND COMPLETION STATUS

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C08h

DL = drive (80h,81h)

ES:BX -> buffer for Command Complete Status Block (see #0160)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

SeeAlso: AX=1C09h,AX=1C0Ah

INT 13


INT 13 1C09 - ESDI FIXED DISK - GET DEVICE STATUS

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C09h

DL = drive (80h,81h)

ES:BX -> buffer for Device Status Block (see #0165)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

SeeAlso: AX=1C08h,AX=1C0Ah

INT 13


INT 13 1C0A - ESDI FIXED DISK - GET DEVICE CONFIGURATION

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C0Ah

DL = drive (80h,81h)

ES:BX -> buffer for Drive Configuration Status Block (see #0166)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

Note:	device configuration format can be found in IBM ESDI Fixed Disk Drive

  Adapter/A Technical Reference

SeeAlso: AX=1C08h,AX=1C0Bh,AX=1C0Ch

INT 13


INT 13 1C0B - ESDI FIXED DISK - GET ADAPTER CONFIGURATION

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C0Bh

ES:BX -> buffer for Controller Configuration Status Block (see #0167)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

SeeAlso: AX=1C0Ch

INT 13


INT 13 1C0C - ESDI FIXED DISK - GET POS INFORMATION

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C0Ch

ES:BX -> buffer for POS Information Status Block (see #0168)

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

SeeAlso: AX=1C0Bh

INT 13


INT 13 1C0D - ESDI FIXED DISK - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C0Dh

DL = drive (80h,81h)

???

Return: ???

Note:	invokes controller command 0614h without DMA

SeeAlso: AH=1Ch"ESDI",AX=1C0Fh

INT 13


INT 13 1C0E - ESDI FIXED DISK - TRANSLATE RBA TO ABA

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C0Eh

CH = low 8 bits of cylinder number

CL = sector number, high two bits of cylinder number in bits 6 and 7

DH = head number

DL = drive number (80h,81h)

ES:BX -> ABA number

Return: CF set on error

CF clear if successful

AH = status (see #0140 at AH=01h)

Note:	ABA (absolute block address) format can be found in IBM ESDI Adapter

  Technical Reference by using its Device Configuration Status Block

INT 13


INT 13 1C0F - ESDI FIXED DISK - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C0Fh

DL = drive (80h,81h)

???

Return: ???

Note:	invokes controller command 0614h without DMA

SeeAlso: AH=1Ch"ESDI",AX=1C0Dh,AX=1C12h

INT 13


INT 13 1C12 - ESDI FIXED DISK - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1C12h

DL = drive (80h,81h)

???

Return: ???

Note:	invokes controller command 0612h without DMA

SeeAlso: AH=1Ch"ESDI",AX=1C0Fh

INT 13


INT 13 1D-- - IBMCACHE.SYS - CACHE STATUS

Category: c - caches/spoolers

Inp.:

AH = 1Dh

AL = subfunction

    01h get status record

DL = drive???

Return: ES:BX -> status record (see #0169)

CF set on error

    AH = error code

    02h set cache status

ES:BX -> status record (see #0169)

DL = drive???

Return: CF set on error

INT 13


INT 13 1F-- - SyQuest - DOOR LATCH/DOOR BUTTON DETECT

Category: d - disk I/O enhancements

Inp.:

AH = 1Fh

AL = subfunction

    00h allow media removal

    01h prevent media removal (lock door)

DL = drive ID (bit 7 set for hard disks)

Return:	CF clear if successful

    AH = 00h

CF set on error

    AH = error code

00h successful

01h invalid function request

80h timeout

DDh media change requested

SeeAlso: AH=12h"SyQuest",AH=13h"SyQuest",AH=59h"SyQuest"

INT 13


INT 13 20-- - DISK - ??? (Western Digital "Super BIOS")

Category: d - disk I/O enhancements

Inp.:

AH = 20h

???

Return: ???

Notes:	returns some kind of status related to whether the drive contains its

  default media type

QEMM v6.00 calls INT 13/AX=2000h/DL=81h in some cases

INT 13


INT 13 20-- - Compaq DESKPRO/i - GET CURRENT MEDIA FORMAT

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 20h

DL = drive number (00h,01h)

Return: CF clear if successful

    AL = media type (see #0171)

CF set on error

    AH = error code

31h no such drive

32h incorrect drive type stored in CMOS

Note:	this function is supported by the 3/8/93 ROM BIOS, but only partially

  (AL is always 00h when successful) by the 8/3/93 version

INT 13


INT 13 20-- - QUICKCACHE II v4.20 - DISMOUNT

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 20h

AL = drive (00h = A:, etc. or 7Fh for all removable drives???

   or FFh for all drives)

Return: AX = status (0000h successful)

Program: QUICKCACHE II is a shareware disk cache by P.R. Glassel and

  Associates, Inc.

Desc:	flush any dirty buffers for the specified drive(s) and then discard

  those sector buffers

SeeAlso: AH=21h"QUICKCACHE",AH=22h"QUICKCACHE",AH=28h

INT 13


INT 13 21-- - HARD DISK - PS/1 and newer PS/2 - READ MULTIPLE DISK SECTORS

Category: d - disk I/O enhancements

Inp.:

AH = 21h

AL = number of sectors to write

CH = low byte of 12-bit cylinder number

CL = starting sector (bits 0-5) and bits 8-9 of cylinder (bits 6-7)

DH = head number (bits 0-5) and bits 10-11 of cylinder (bits 6-7)

DL = drive number (80h,81h)

ES:BX -> buffer for data to be read

Return: CF clear if successful

    ES:BX buffer filled

CF set on error

AH = status (see #0140 at AH=01h)

Desc:	read from the disk using the Multiple Block mode available on newer

  IDE drives and some hard disk controllers, which generates an

  interrupt only after the end of transferring a group of sectors

  rather than after each sector

Notes:	must call AH=24h"PS/1" before using this function

input values in CL and DH are not range-checked

the byte at address 0040h:0074h is set to the status of the operation

SeeAlso: AH=02h,AH=22h"PS/1",AH=23h"PS/1",AH=24h"PS/1"

INT 13


INT 13 21-- - QUICKCACHE II v4.20 - FLUSH CACHE

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 21h

Return: AX = status (0000h successful)

Desc:	immediately write all dirty sectors back to disk

SeeAlso: AH=25h"QUICKCACHE",AH=2Eh,AH=2Fh

INT 13


INT 13 22-- - HARD DISK - PS/1 and newer PS/2 - WRITE MULTIPLE DISK SECTORS

Category: d - disk I/O enhancements

Inp.:

AH = 22h

AL = number of sectors to write

CH = low byte of 12-bit cylinder number

CL = starting sector (bits 0-5) and bits 8-9 of cylinder (bits 6-7)

DH = head number (bits 0-5) and bits 10-11 of cylinder (bits 6-7)

DL = drive number (80h,81h)

ES:BX -> buffer containing data to be written

Return: CF clear if successful

CF set on error

AH = status (see #0140 at AH=01h)

Desc:	write to the disk using the Multiple Block mode available on newer

  IDE drives and some hard disk controllers, which generates an

  interrupt only after the end of transferring a group of sectors

  rather than after each sector

Notes:	must call AH=24h"PS/1" before using this function

input values in CL and DH are not range-checked

the byte at address 0040h:0074h is set to the status of the operation

SeeAlso: AH=03h,AH=21h"PS/1",AH=23h"PS/1",AH=24h"PS/1"

INT 13


INT 13 22-- - QUICKCACHE II v4.20 - ENABLE/DISABLE CACHE

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 22h

AL = new state (00h disabled, 01h enabled)

Return: AX = status (0000h successful)

Note:	enables/disables caching of all drives

SeeAlso: AH=2Ch,AH=2Dh,AH=32h,AH=33h,AH=A3h,AH=A4h

INT 13


INT 13 23-- - HARD DISK - PS/1 and newer PS/2 - SET CONTROLLER FEATURES REGISTER

undocumented function

Category: d - disk I/O enhancements

Inp.:

AH = 23h

AL = feature number (see #0172)

DL = drive number (80h,81h)

???

Return: CF clear if successful

CF set on error

AH = status (see #0140 at AH=01h)

SeeAlso: AH=21h"PS/1",AH=22h"PS/1",AH=24h"PS/1",AH=25h"PS/1"

INT 13


INT 13 23-- - QUICKCACHE II v4.20 - GET ??? ADDRESS

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 23h

Return: AX = status (0000h successful)

ES = segment of ??? data

INT 13


INT 13 24-- - HARD DISK - PS/1 and newer PS/2 - SET MULTIPLE MODE

Category: d - disk I/O enhancements

Inp.:

AH = 24h

AL = number of sectors per block (2,4,8,16)

DL = drive number (80h,81h)

Return: CF clear if successful

CF set onerror

AH = status (see #0140 at AH=01h)

Desc:	specify how many sectors the controller should transfer as a group

  between operation-complete interrupts when using the Read Multiple

  and Write Multiple functions (AH=21h,AH=22h)

Notes:	set the number of sectors to 0 to disable multiple-transfer mode

the maximum value for the block size depends on the fixed disk

  drive type.  The value is stored in byte 15h of the fixed disk

  drive parameter table that is created by POST.

the byte at address 0040h:0074h is set to status of operation.

SeeAlso: AH=21h"PS/1",AH=22h"PS/1",AH=23h"PS/1",AH=25h"PS/1"

INT 13


INT 13 24-- - QUICKCACHE II v4.20 - SET SECTORS

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 24h

BX = new number of sector buffers in cache

Return: AX = status

    0000h successful

    0001h failed--size adjusted

    8000h cache cannot be resized while enabled

SeeAlso: AH=36h

INT 13


INT 13 25-- - HARD DISK - PS/1 and newer PS/2 - IDENTIFY DRIVE

Category: d - disk I/O enhancements

Inp.:

AH = 25h

DL = drive number (80h,81h)

ES:BX-> 512 byte buffer for reply packet

Return:	CF clear if successful

CF set on error

AH = status (see #0140 at AH=01h)

buffer filled with ATA/IDE-style drive information block (see #0173)

Desc:	retrieves the 256 words of drive data stored on an IDE hard disk

Note:	the byte at address 0040h:0074h is set to the status of the operation

SeeAlso: AH=23h"PS/1"

INT 13


INT 13 25-- - QUICKCACHE II v4.20 - SET FLUSH INTERVAL

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 25h

BX = interval

Return: AX = status (0000h successful)

Desc:	specify how often the cache should write dirty buffers to disk when

  buffered writes are enabled

SeeAlso: AH=21h"QUICKCACHE",AH=2Ch,AH=2Eh

INT 13


INT 13 26-- - QUICKCACHE II v4.20 - UNINSTALL

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 26h

Return: AX = status

    0000h successful

    0001h-00FFh interrupt vector which was hooked by another TSR

SeeAlso: AH=27h

INT 13


INT 13 27-- - QUICKCACHE II v4.20 - INSTALLATION CHECK

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 27h

BX = 0000h

Return: AX = 0000h if installed

BX nonzero if installed

    BH = major version

    BL = binary minor version

Program: QUICKCACHE II is a shareware disk cache by P.R. Glassel and

  Associates, Inc.

SeeAlso: AH=26h,AH=A0h,INT 16/AX=FFA5h/CX=1111h

INT 13


INT 13 28-- - QUICKCACHE II v4.20 - SET AUTOMATIC DISMOUNT

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 28h

AL = new state (00h disabled, 01h enabled)

Return: AX = status (0000h successful)

SeeAlso: AH=20h"QUICKCACHE"

INT 13


INT 13 29-- - QUICKCACHE II v4.20 - NOP

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 29h

Return: AX = 0000h

INT 13


INT 13 2A-- - QUICKCACHE II v4.20 - SET BUFFER SIZE

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 2Ah

AL = buffer size (1-30)

Return: AX = status (0000h successful)

Desc:	specify the number of cache sector buffers to dedicate to buffered read

  and write operations

SeeAlso: AH=2Ch,AH=2Dh,AH=39h,AH=3Ah

INT 13


INT 13 2B-- - QUICKCACHE II v4.20 - DRIVE ACCESS SOUNDS

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 2Bh

AL = new state (00h disabled, 01h enabled)

Return: AX = status (0000h successful)

INT 13


INT 13 2C-- - QUICKCACHE II v4.20 - SET BUFFERED WRITES

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 2Ch

AL = new state (00h disabled, 01h enabled)

Return: AX = status (0000h successful)

Desc:	specify whether the cache should delay disk writes

Note:	this function enables or disables delayed writes for all drives; use

  AH=38h to change a single drive

SeeAlso: AH=25h"QUICKCACHE",AH=2Dh,AH=2Eh,AH=38h

INT 13


INT 13 2D-- - QUICKCACHE II v4.20 - SET BUFFERED READ

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 2Dh

AL = new state (00h disabled, 01h enabled)

Return: AX = status (0000h successful)

Desc:	specify whether the cache should attempt to read ahead of actual

  requests

Note:	this function enables or disables read-ahead for all drives; use AH=37h

  to change a single drive

SeeAlso: AH=2Ch,AH=37h

INT 13


INT 13 2E-- - QUICKCACHE II v4.20 - SET FLUSH COUNT

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 2Eh

BX = flush count

Return: AX = status (0000h successful)

Desc:	specify how many dirty sectors the cache should write after each flush

  interval (see AH=25h"QUICKCACHE") when buffered writes are enabled

SeeAlso: AH=21h"QUICKCACHE",AH=25h"QUICKCACHE",AH=2Ch

INT 13


INT 13 2F-- - QUICKCACHE II v4.20 - FORCE IMMEDIATE INCREMENTAL FLUSH

Category: c - caches/spoolers

Inp.:

AH = 2Fh

Return: AX = status (0000h successful)

Desc:	immediately flush up to "flushcount" dirty sectors to disk as if the

  flush interval had expired

SeeAlso: AH=21h"QUICKCACHE"

INT 13


INT 13 30-- - QUICKCACHE II v4.20 - GET INFO

partially documented function

Category: c - caches/spoolers

Inp.:

AH = 30h

AL = what to get

    00h system info (see #0175)

    01h drive info (see #0176)

    02h access frequency (array of 30 words)

    03h drive index

(array of 32 bytes indicating BIOS drive for DOS drive)

DS:DX -> buffer for info

Return: AX = status (0000h successful, 8000h invalid info specifier)

Program: QUICKCACHE II is a shareware disk cache by P.R. Glassel and

  Associates, Inc.


INT 13 31-- - QUICKCACHE II v4.20 - RESERVE MEMORY

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 31h

BX = number of paragraphs of conventional memory to reserve for apps

Return: AX = status (0000h successful)


INT 13 32-- - QUICKCACHE II v4.20 - ENABLE CACHING FOR SPECIFIC DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 32h

AL = drive number (00h=A:)

Return: AX = status (0000h successful)

SeeAlso: AH=22h"QUICKCACHE",AH=33h


INT 13 33-- - QUICKCACHE II v4.20 - DISABLE CACHING FOR SPECIFIC DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 33h

AL = drive number (00h=A:)

Return: AX = status (0000h successful)

SeeAlso: AH=22h"QUICKCACHE",AH=32h


INT 13 34-- - QUICKCACHE II v4.20 - SECTOR LOCKING

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 34h

AL = function

    00h end sector locking/unlocking

    01h lock all accessed sectors into cache

    02h unlock all accessed sectors and discard from cache

Return: AX = status (0000h successful)

SeeAlso: AH=20h"QUICKCACHE",AH=35h


INT 13 35-- - QUICKCACHE II v4.20 - SET LOCK POOL SIZE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 35h

BX = number of sectors in lock pool

Return: AX = status (0000h successful)

Desc:	specify the number of cache sector buffers which may be dedicated to

  data locked into the cache

SeeAlso: AH=34h


INT 13 36-- - QUICKCACHE II v4.20 - SET TRACE BUFFER SIZE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 36h

AL = new size of trace buffer

Return: AX = status (0000h successful)

Note:	called with AL=05h during an INT 13/AH=24h"QUICKCACHE" call

SeeAlso: AH=24h"QUICKCACHE"


INT 13 37-- - QUICKCACHE II v4.20 - SET BUFFERED READS FOR SPECIFIC DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 37h

AL = new state (00h disabled, else enabled)

DL = drive number (00h = A:)

Return: AX = status (0000h successful)

SeeAlso: AH=2Dh,AH=38h


INT 13 38-- - QUICKCACHE II v4.20 - SET BUFFERED WRITES FOR SPECIFIC DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 38h

AL = new state (00h disabled, else enabled)

DL = drive number (00h = A:)

Return: AX = status (0000h successful)

SeeAlso: AH=2Ch,AH=37h


INT 13 39-- - QUICKCACHE II v4.20 - SET READ BUFFER SIZE FOR SPECIFIC DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 39h

AL = new size of read buffer

DL = drive number (00h = A:)

Return: AX = status (0000h successful)

Program: QUICKCACHE II is a shareware disk cache by P.R. Glassel and

  Associates, Inc.

SeeAlso: AH=2Ah,AH=3Ah


INT 13 3A-- - QUICKCACHE II v4.20 - SET WRITE BUFFER SIZE FOR SPECIFIC DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 3Ah

AL = new size of write buffer

DL = drive number (00h = A:)

Return: AX = status (0000h successful)

SeeAlso: AH=2Ah,AH=39h


INT 13 3B-- - QUICKCACHE II v4.20 - ENABLE/DISABLE ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 3Bh

AL = new state of ??? (01h enabled, else disabled)

Return: AX = status (0000h successful)

Note:	is affected by the flag reported at offset 05h of the system info

  returned by AH=30h, and sets the flag at offset 06h

SeeAlso: AH=3Ch


INT 13 3C-- - QUICKCACHE II v4.20 - ENABLE/DISABLE ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 3Ch

AL = new state of ??? (01h enabled, else disabled)

Return: AX = status (0000h successful)

Note:	is affected by the flag reported at offset 05h of the system info

  returned by AH=30h, and sets the flag at offset 07h

SeeAlso: AH=3Bh


INT 13 3D-- - QUICKCACHE II v4.20 - ENABLE/DISABLE CYLINDER FLUSH FOR DRIVE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 3Dh

AL = new state (01h enabled, else disabled)

DL = drive number (00h = A:)

Return: AX = status (0000h successful)


INT 13 3E-- - QUICKCACHE II v4.20 - SET SINGLE-SECTOR BONUS

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 3Eh

AL = new value for bonus

Return: AX = status (0000h successful)

Desc:	specify the bonus score to give to single-sector transfers in order to

  keep those sectors in the cache longer


INT 13 3F-- - QUICKCACHE II v4.20 - SET BONUS THRESHOLD

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 3Fh

AL = new value for bonus threshold

Return: AX = status (0000h successful)


INT 13 40-- - QUICKCACHE II v4.20 - SET "sticky_max"

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 40h

AL = new value for "sticky_max"

Return: AX = status (0000h successful)

SeeAlso: AH=41h"QUICKCACHE"


INT 13 41-- - IBM/MS INT 13 Extensions - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AH = 41h

BX = 55AAh

DL = drive (80h-FFh)

Return:	CF set on error (not supported)

    AH = 01h (invalid function)

CF clear if successful

    BX = AA55h if installed

    AH = major version of extensions (01h = 1.x, 20h = 2.0)

    AL = internal use

    CX = API subset support bitmap (see #0177)

    DH = extension version (v2.0+ ??? -- not present in 1.x)

Note:	the Phoenix Enhanced Disk Drive Specification v1.0 uses version 2.0 of

  the INT 13 Extensions API

SeeAlso: AH=42h"INT 13 Ext",AH=48h"INT 13 Ext"


INT 13 41-- - QUICKCACHE II v4.20 - SAVE/RESTORE ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 41h

AL = direction

    01h save to file

    else restore from file

ES:DI -> 1024-byte buffer for ???

Return: AX = status (0000h successful, 8000h failed)

Program: QUICKCACHE II is a shareware disk cache by P.R. Glassel and

  Associates, Inc.

SeeAlso: AH=40h"QUICKCACHE"


INT 13 42-- - IBM/MS INT 13 Extensions - EXTENDED READ

Category: d - disk I/O enhancements

Inp.:

AH = 42h

DL = drive number

DS:SI -> disk address packet (see #0178)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (see #0140)

    disk address packet's block count field set to number of blocks

      successfully transferred

SeeAlso: AH=41h"INT 13 Ext",AH=43h"INT 13 Ext"


INT 13 4257 - Beame&Whiteside BWLPD - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 4257h ("BW")

DX = 1234h

Return: BX = 414Ch if installed

Program: BWLPD is the printer daemon from the BW-NFS package

SeeAlso: INT 62/AH=00h"ETHDEV"


INT 13 43-- - IBM/MS INT 13 Extensions - EXTENDED WRITE

Category: d - disk I/O enhancements

Inp.:

AH = 43h

AL = write flags

   bit 0: verify write

   bits 7-1 reserved (0)

DL = drive number

DS:SI -> disk address packet (see #0178)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (see #0140)

    disk address packet's block count field set to number of blocks

      successfully transferred

Note:	the BIOS returns CF set/AH=01h (invalid function) if verify is

  requested but not supported

SeeAlso: AH=41h"INT 13 Ext",AH=42h"INT 13 Ext",AH=44h


INT 13 44-- - IBM/MS INT 13 Extensions - VERIFY SECTORS

Category: d - disk I/O enhancements

Inp.:

AH = 44h

DL = drive number

DS:SI -> disk address packet (see #0178)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (see #0140)

    disk address packet's block count field set to number of blocks

      successfully verified

SeeAlso: AH=41h"INT 13 Ext",AH=42h"INT 13 Ext",AH=47h


INT 13 45-- - IBM/MS INT 13 Extensions - LOCK/UNLOCK DRIVE

Category: d - disk I/O enhancements

Inp.:

AH = 45h

AL = operation

    00h lock media in drive

    01h unlock media

    02h check lock status

DL = drive number

Return: CF clear if successful

    AH = 00h

    AL = lock state (00h = unlocked)

CF set on error

    AH = error code (see #0140)

Notes:	this function is required to be supported for any removable drives

  numbered 80h or higher

up to 255 locks may be placed on a drive, and the media will not

  be physically unlocked until all locks have been removed

SeeAlso: AH=41h"INT 13 Ext",AH=46h,AH=49h,INT 15/AH=52h"Phoenix"


INT 13 46-- - IBM/MS INT 13 Extensions - EJECT MEDIA

Category: d - disk I/O enhancements

Inp.:

AH = 46h

AL = 00h (reserved)

DL = drive number

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (see #0140)

SeeAlso: AH=49h,INT 15/AH=52h"Phoenix"


INT 13 47-- - IBM/MS INT 13 Extensions - EXTENDED SEEK

Category: d - disk I/O enhancements

Inp.:

AH = 47h

DL = drive number

DS:SI -> disk address packet (see #0178)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (see #0140)

SeeAlso: AH=0Ch,AH=42h"INT 13 Ext"


INT 13 48-- - IBM/MS INT 13 Extensions - GET DRIVE PARAMETERS

Category: d - disk I/O enhancements

Inp.:

AH = 48h

DL = drive (80h-FFh)

DS:SI -> buffer for drive parameters (see #0179)

Return: CF clear if successful

    DS:SI buffer filled

CF set on error

    AH = error code (see #0140)

SeeAlso: AH=08h,AH=41h,AH=49h


INT 13 49-- - IBM/MS INT 13 Extensions - EXTENDED MEDIA CHANGE

Category: d - disk I/O enhancements

Inp.:

AH = 49h

DL = drive number

Return: CF clear if media has not changed

    AH = 00h

CF set if media may have changed

    AH = 06h (see #0140)

Note:	unlike AH=16h, any drive number may be specified

SeeAlso: AH=16h,AH=41h"INT 13 Ext",AH=46h


INT 13 5001 - VIRUS - "Andropinis" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 5001h

Return: AX = 0150h if resident

SeeAlso: AX=FD50h"VIRUS",INT 21/AX=0B56h


INT 13 5342 - ScanBoot - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 5342h ("SB")

CX = 0001h

DX = 0000h

Return: CF clear if ScanBoot installed

   AX = 0000h

   CX = serial number ("SW" if shareware release)

   DX = version

   BX,SI,ES destroyed

Program: ScanBoot is a virus-detection TSR by PanSoft


INT 13 5501 - Seagate ST01/ST02 - Inquiry

Category: d - disk I/O enhancements

Inp.:

AX = 5501h

DH = number of bytes to transfer

DL = drive ID (80h, 81h, ...)

ES:BX -> buffer for results

Return:	ES:BX buffer filled with the Inquiry results

Notes:	the ST01/ST02 BIOS does not return any success/failure indication,

  so all commands must be assumed to have been successful

the ST01/ST02 BIOS always maps its drives after the previous BIOS

  drives without changing the BIOS drive count at 0040h:0075h

this command is identical to the SCSI Inquiry command


INT 13 5502 - Seagate ST01/ST02 - RESERVED

Category: d - disk I/O enhancements

Inp.:

AX = 5502h


INT 13 5503 - Seagate ST01/ST01 - Set Device Type Qualifier (DTQ)

Category: d - disk I/O enhancements

Inp.:

AX = 5503h

DH = DTQ byte (see #0185)

DL = drive ID (80h, 81h, ...)

Return:	nothing


INT 13 5504 - Seagate - ??? - RETURN IDENTIFICATION

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 5504h

DX = drive (bit 7 set for hard disk)

Return: CF clear if successful

    AX = 4321h if ST01/ST02h

    AX = 4322h if ??? Seagate controller

CF set on error

SeeAlso: AX=5505h,AX=5514h


INT 13 5504 - Seagate ST01/ST02 - RETURN IDENTIFICATION

Category: d - disk I/O enhancements

Inp.:

AX = 5504h

DL = drive ID (80h, 81h, ...)

Return:	AX = 4321h

BL = selected drive number (00h, 01h)

BH = number of drives attached to Host Adapter (max. 2)


INT 13 5505 - Seagate - ??? - PARK HEADS

Category: d - disk I/O enhancements

Inp.:

AX = 5505h

DX = drive (bit 7 set for hard disk)

Return: CF clear if successful

CF set on error

SeeAlso: AX=5504h,AX=5515h


INT 13 5505 - Seagate ST01/ST02 - PARK HEADS

Category: d - disk I/O enhancements

Inp.:

AX = 5505h

DL = drive ID (80h, 81h, ...)

DH = subfunction

    00h park heads (SCSI Stop command)

    01h un-park heads (SCSI Start command)

Return:	nothing


INT 13 5506 - Seagate ST01/ST02 - SCSI Bus Parity

Category: d - disk I/O enhancements

Inp.:

AX = 5506h

DL = drive ID (80h, 81h, ...)

DH = subfunction

    00h disable parity check

    01h enable parity check

    02h return current parity setting

Return:	AL = status

    00h parity checking disabled

    01h parity checking enabled


INT 13 5507 - Seagate ST01/ST02 - RESERVED FUNCTIONS

Category: d - disk I/O enhancements

Inp.:

AX = 5507h to 550Dh

Note:	officially listed as "reserved"


INT 13 5514 - Seagate - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 5514h

DX = drive (bit 7 set for hard disk)

Return: CF clear if successful

CF set on error

AX = return value (FEBEh,FEBFh,FEDAh,FEDBh)

SeeAlso: AX=5504h,AX=5515h


INT 13 5515 - Seagate - PARK HEADS???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 5515h

DX = drive (bit 7 set for hard disk)

Return: CF clear if successful

CF set on error

Note:	appears to be identical to AX=5505h

SeeAlso: AX=5504h,AX=5505h


INT 13 59-- - SyQuest - Generic SCSI pass through

Category: d - disk I/O enhancements

Inp.:

AH = 59h

CX = HOST_ID, 0-based

DX = 80h

ES:BX pointer to SCSI structure (see #0186)

Return: CF clear

AH = 95h

SeeAlso: AH=12h"SyQuest",AH=13h"SyQuest",AH=1Fh"SyQuest"


INT 13 70-- - Priam EDVR.SYS DISK PARTITIONING SOFTWARE???

Category: d - disk I/O enhancements

Inp.:

AH = 70h

???

Return: ???

Note:	Priam's EDISK.EXE (FDISK replacement) and EFMT.EXE (low-level

  formatting program) make this call, presumably to EDVR.SYS (the

  partitioning driver)

SeeAlso: AH=ADh


INT 13 75-- - ???

Category: - - (none)

Inp.:

AH = 75h

???

Return: AH = ???

???

Note:	intercepted by PC-Cache (v5.1 only)


INT 13 76-- - ???

Category: - - (none)

Inp.:

AH = 76h

???

Return: AH = ???

???

Note:	intercepted by PC-Cache (v5.1 only)


INT 13 7B00 - NOW! v3.05 - GET INFORMATION

Category: c - caches/spoolers

Inp.:

AX = 7B00h

CX:DX -> 1F8h-byte buffer for information record (see #0188)

Return: AX = 0000h

BX = segment of main resident code

ES = ???

Program: NOW! is a disk cache by Vertisoft Systems, Inc.

SeeAlso: AX=7B02h,AH=EFh


INT 13 7B01 - NOW! v3.05 - ???

Category: c - caches/spoolers

Inp.:

AX = 7B01h

Return: DX = segment of ???

SeeAlso: AX=7B00h


INT 13 7B02 - NOW! v3.05 - SET INFORMATION

Category: c - caches/spoolers

Inp.:

AX = 7B02h

BX = segment of ??? (10h above a PSP)

CX:DX -> 1F8h-byte information record (see #0188)

Return: ???

Program: NOW! is a disk cache by Vertisoft Systems, Inc.

Note:	NOW! grabs the INT 24h value from the PSP reached via the segment in

  BX

SeeAlso: AX=7B00h


INT 13 7B03 - NOW! v3.05 - ???

Category: c - caches/spoolers

Inp.:

AX = 7B03h

???

Return: ???

SeeAlso: AX=7B00h,AX=7B04h


INT 13 7B04 - NOW! v3.05 - ???

Category: c - caches/spoolers

Inp.:

AX = 7B04h

???

Return: ???

SeeAlso: AX=7B03h


INT 13 7B05 - NOW! v3.05 - GET DISK ACCESSES???

Category: c - caches/spoolers

Inp.:

AX = 7B05h

Return: BX:AX = number of physical accesses???

DX:CX = total disk accesses???

SeeAlso: AX=7B00h,AX=7B06h


INT 13 7B06 - NOW! v3.05 - GET ???

Category: c - caches/spoolers

Inp.:

AX = 7B06h

BX = ???

Return: AX = 0000h

BX = ???

SeeAlso: AX=7B05h,AX=7B07h


INT 13 7B07 - NOW! v3.05 - GET ???

Category: c - caches/spoolers

Inp.:

AX = 7B07h

Return: AX = ???

BX = ???

CX = ???

DX = ???

SeeAlso: AX=7B06h


INT 13 7B08 - NOW! v3.05 - ???

Category: c - caches/spoolers

Inp.:

AX = 7B08h

CX = ??? (default 00h)

Return: ???

SeeAlso: AX=7B00h


INT 13 80-- - FAST! v4.02+ - API

Category: c - caches/spoolers

Inp.:

AH = 80h

CX = 6572h

DX = 1970h

ES:BX -> request packet (see #0190)

AL = function number (see #0189)

Return: AH = status (except function 06h)

    00h if successful

    01h invalid function

    05h not supported by the installed variant

CF clear if successful

CF set on error

AL may be destroyed

Program: FAST! is a disk cache by Future Computing Systems and marketed by BLOC

  Publishing Corp.

SeeAlso: AX=8001h,AX=8006h,AX=8007h

Index:	hotkeys;FAST!


INT 13 8001 - FAST! v4.02+ - GET CACHE INFORMATION

Category: c - caches/spoolers

Inp.:

AX = 8001h

CX = 6572h

DX = 1970h

ES:BX -> request packet (see #0192)

Return: AH = 00h if successful

SeeAlso: AH=80h,AX=8006h


INT 13 8006 - FAST! v4.02+ - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AX = 8006h

CX = 6572h

DX = 1970h

ES:BX -> request packet (see #0195)

Return: AX = 1965h if installed

SeeAlso: AH=80h,AX=8001h,AX=8007h


INT 13 8007 - FAST! v4.02+ - UNHOOK INTERRUPTS

Category: c - caches/spoolers

Inp.:

AX = 8007h

CX = 6572h

DX = 1970h

ES:BX -> request packet (see #0196)

Return: AX = 1965h if installed

SeeAlso: AH=80h,AX=8006h

Index:	uninstall;FAST!


INT 13 81-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = 81h

SI = 4358h

???

Return: ???

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call (PC-Cache v5.1 corresponds

  to PC-Kwik v3.20 and PC-Cache v5.5 to PC-Kwik v3.27)

returns immediately in PC-Cache v5.x

Index:	PC-Cache|Qualitas Qcache


INT 13 82-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = 82h

SI = 4358h

???

Return: AL = ???

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call

SeeAlso: AH=84h

Index:	PC-Cache|Qualitas Qcache


INT 13 83-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = 83h

SI = 4358h

AL = ???

ES:BX -> ???

???

Return: ???

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call

SeeAlso: AH=85h

Index:	PC-Cache|Qualitas Qcache


INT 13 84-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = 84h

SI = 4358h

AL = ???

???

Return: AL = ???

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call

SeeAlso: AH=82h

Index:	PC-Cache|Qualitas Qcache


INT 13 85-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = 85h

SI = 4358h

AL = ???

DL = ???

???

Return: ???

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call (PC-Cache v5.1 corresponds

  to PC-Kwik v3.20)

SeeAlso: AH=83h

Index:	PC-Cache|Qualitas Qcache


INT 13 86-- - Super PC-Kwik v4.00+ - ???

Category: c - caches/spoolers

Inp.:

AH = 86h

SI = 4358h

???

Return: ???

Note:	Qualitas Qcache v4.00 is an OEM version of Super PC-Kwik v4.00, and

  thus supports this call

Index:	Qualitas Qcache


INT 13 87-- - Super PC-Kwik v4.00+ - ???

Category: c - caches/spoolers

Inp.:

AH = 87h

SI = 4358h

???

Return: AH = status??? (00h)

CX = ???

DX = ??? (0000h)

Note:	Qualitas Qcache v4.00 is an OEM version of Super PC-Kwik v4.00, and

  thus supports this call

Index:	Qualitas Qcache


INT 13 88-- - Super PC-Kwik v4.00+ - ???

Category: c - caches/spoolers

Inp.:

AH = 88h

SI = 4358h

???

Return: AH = status??? (00h)

CX = ???

DX = ??? (0000h)

Note:	Qualitas Qcache v4.00 is an OEM version of Super PC-Kwik v4.00, and

  thus supports this call

Index:	Qualitas Qcache


INT 13 89-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 89h

SI = 4358h

???

Return: ???


INT 13 8A-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 8Ah

SI = 4358h

???

Return: ???


INT 13 8EED - HyperDisk v4.01+ - ???

Category: c - caches/spoolers

Inp.:

AX = 8EEDh

???

Return: ???

Program: HyperDisk is a shareware disk cache by HyperWare (Roger Cross)

SeeAlso: AX=8EEEh,AX=8EEFh,AH=EEh,INT 2F/AH=DFh


INT 13 8EEE - HyperDisk v4.01+ - ???

Category: c - caches/spoolers

Inp.:

AX = 8EEEh

Return: CF set

AX = CS of HyperDisk resident code

???

Note:	identical to AX=8EEFh in HYPERDKX v4.21-4.30

SeeAlso: AX=8EEDh,AX=8EEFh,AH=EEh


INT 13 8EEF - HyperDisk v4.01+ - ???

Category: c - caches/spoolers

Inp.:

AX = 8EEFh

Return: CF set

AX = CS of HyperDisk resident code

???

Note:	identical to AX=8EEEh in HYPERDKX v4.21-4.30

SeeAlso: AX=8EEDh,AX=8EEEh,AH=EEh


INT 13 92-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 92h

SI = 4358h

???

Return: AH = status??? (00h)

DL = ???

SeeAlso: AH=93h


INT 13 93-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 93h

SI = 4358h

???

Return: AH = status??? (00h)

AL = ???

SeeAlso: AH=92h


INT 13 94-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 94h

SI = 4358h

???

Return: ???


INT 13 95-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 95h

SI = 4358h

???

Return: AH = status??? (00h)

DX = ???


INT 13 96-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 96h

SI = 4358h

AL = ??? (01h)

BX = ??? (0790h)

DL = ???

Return: AH = status??? (00h)

DX = ???


INT 13 97-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 97h

SI = 4358h

???

Return: ???


INT 13 98-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 98h

SI = 4358h

???

Return: ???


INT 13 99-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 99h

SI = 4358h

???

Return: ???


INT 13 9A-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 9Ah

SI = 4358h

???

Return: ???


INT 13 9B-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 9Bh

SI = 4358h

???

Return: ???


INT 13 9C-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 9Ch

SI = 4358h

???

Return: ???

Note:	functions 9Ch and 9Dh are the only ones which are fully reentrant; all

  other PC-Kwik API calls (INT 13/81h-B0h) return AX=0200h and CF clear

  if a previous call is still in progress


INT 13 9D-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = 9Dh

SI = 4358h

???

Return: ???


INT 13 A0-- - Super PC-Kwik v3.20+ - GET RESIDENT CODE SEGMENT

Category: c - caches/spoolers

Inp.:

AH = A0h

SI = 4358h

Return: AX = segment of resident code

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call (note that PC-Cache v5.5

  corresponds to PC-Kwik v3.27)

SeeAlso: INT 16/AX=FFA5h/CX=1111h

Index:	PC-Cache|Qualitas Qcache


INT 13 A1-- - Super PC-Kwik v3.20+ - FLUSH CACHE

Category: c - caches/spoolers

Inp.:

AH = A1h

SI = 4358h

Return: CF clear

AH = 00h (v5.10)

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call (note that PC-Cache v5.1

  corresponds to PC-Kwik v3.20)

SeeAlso: INT 16/AX=FFA5h/CX=FFFFh

Index:	PC-Cache|Qualitas Qcache


INT 13 A2-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = A2h

SI = 4358h

???

Return: ???

Note:	PC Tools PC-Cache 5.x and Qualitas Qcache 4.00 are OEM versions of

  Super PC-Kwik, and thus support this call (note that PC-Cache v5.1

  corresponds to PC-Kwik v3.20)

Index:	PC-Cache|Qualitas Qcache


INT 13 A3-- - Super PC-Kwik v5.10+ - DISABLE CACHE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A3h

SI = 4358h

Return: CF clear

SeeAlso: AH=A4h


INT 13 A4-- - Super PC-Kwik v5.10+ - ENABLE CACHE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A4h

SI = 4358h

Return: CF clear

SeeAlso: AH=A3h


INT 13 A5-- - Super PC-Kwik v5.10+ - PROGRAM TERMINATION NOTIFICATION

callout or callback (usually hooked rather than called)

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A5h

SI = 4358h

Return: AX = ???

SI = ???

Notes:	called and used internally by Super PC-Kwik when a program terminates

  via INT 21/AH=00h, INT 21/AH=31h, or INT 21/AH=4Ch

this call is not supported by Qualitas Qcache 4.00

Index:	PC-Cache

SeeAlso: AH=A6h,AH=A9h,INT 21/AH=00h,INT 21/AH=31h,INT 21/AH=4Ch


INT 13 A6-- - Super PC-Kwik v5.10+ - PROGRAM LOAD NOTIFICATION

callout or callback (usually hooked rather than called)

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A6h

SI = 4358h

DS:DX -> ASCIZ program name

ES:BX -> EXEC data block (see #0803 at INT 21/AH=4Bh)

Return: ???

Note:	called and used internally by Super PC-Kwik when a program is loaded

  with INT 21/AX=4B00h

SeeAlso: AH=A5h,AH=A9h,INT 21/AH=4Bh


INT 13 A7-- - Super PC-Kwik 5.1 - ???

callout or callback (usually hooked rather than called)

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A7h

SI = 4358h

Return: ???

Note:	called and used internally by Super PC-Kwik on some INT 21 calls

SeeAlso: AH=A5h,AH=A6h,AH=A8h


INT 13 A759 - Novell DOS 7 - SDRes v27.03 - ???

undocumented function

Category: v - virus/antivirus

Inp.:

AX = A759h

Return: AX = 59A7h if installed

    DX:BX -> ??? data

Program: SDRes is the resident portion of the Search&Destroy antiviral by

  Fifth Generation Systems, as bundled with Novell DOS 7

SeeAlso: INT 21/AH=0Eh/DL=ADh


INT 13 A8-- - Super PC-Kwik 5.1 - ???

callout or callback (usually hooked rather than called)

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A8h

SI = 4358h

Return: ???

Note:	called and used internally by Super PC-Kwik on some INT 21 calls

SeeAlso: AH=A5h,AH=A6h,AH=A7h


INT 13 A9-- - Super PC-Kwik 5.1 - EXITCODE RETRIEVAL NOTIFICATION

callout or callback (usually hooked rather than called)

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A9h

SI = 4358h

Return: ???

Note:	called and used internally by Super PC-Kwik when an application issues

  INT 21/AH=4Dh

SeeAlso: AH=A5h,AH=A6h,INT 21/AH=4Dh


INT 13 AA-- - Super PC-Kwik v4+ - ???

Category: c - caches/spoolers

Inp.:

AH = AAh

SI = 4358h

???

Return: ???

Note:	Qualitas Qcache is an OEM version of Super PC-Kwik, and thus supports

  this call


INT 13 AB-- - Super PC-Kwik v4+ - ???

Category: c - caches/spoolers

Inp.:

AH = ABh

SI = 4358h

???

Return: ???

Note:	Qualitas Qcache is an OEM version of Super PC-Kwik, and thus supports

  this call


INT 13 AC-- - Super PC-Kwik v4+ - ???

Category: c - caches/spoolers

Inp.:

AH = ACh

SI = 4358h

???

Return: ???

Note:	Qualitas Qcache is an OEM version of Super PC-Kwik, and thus supports

  this call


INT 13 AD-- - Priam HARD DISK CONTROLLER???

Category: d - disk I/O enhancements

Inp.:

AH = ADh

???

Return: ???

Note:	this call is made from Priam's EFMT.EXE (low-level formatter), probably

  to check the ROM type on the controller for their hard disk kits

SeeAlso: AH=70h


INT 13 AD-- - Super PC-Kwik v4+ - ???

Category: c - caches/spoolers

Inp.:

AH = ADh

SI = 4358h

???

Return: ???

Note:	Qualitas Qcache is an OEM version of Super PC-Kwik, and thus supports

  this call


INT 13 AE-- - Super PC-Kwik v5.10+ - ???

Category: c - caches/spoolers

Inp.:

AH = AEh

SI = 4358h

???

Return: ???


INT 13 B0-- - Super PC-Kwik v3.20+ - ???

Category: c - caches/spoolers

Inp.:

AH = B0h

SI = 4358h

???

Return: ???

Note:	PC Tools PC-Cache 5.x is an OEM version of Super PC-Kwik, and thus

  supports this call; Qualitas Qcache does not support it

Index:	PC-Cache


INT 13 EC00 - VIRUS - "Tiso" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = EC00h

Return: CF clear if installed

SeeAlso: AH=F2h,INT 12/AX=4350h/BX=4920h


INT 13 EE-- - SWBIOS - SET 1024-CYLINDER FLAG

Category: d - disk I/O enhancements

Inp.:

AH = EEh

DL = drive number (80h, 81h)

Return: CF clear

   AH = 00h

Program: SWBIOS is a TSR by Ontrack Computer Systems

Desc:	the following INT 13 call will add 1024 to the specified cylinder

  number to get the actual cylinder number desired

Notes:	the flag is cleared by all INT 13 calls except AH=EEh and AH=EFh

Disk Manager also supports these calls

this function is also supported by HyperDisk v4.01+ and PC-Cache v5.5+,

  in order to allow caching of drives using SWBIOS to access more than

  1024 cylinders

for software which supports that call, this function is equivalent to

  calling AH=EFh with CX=0400h

SeeAlso: AH=F9h,AH=FEh,INT 16/AX=FFA5h/CX=1111h,INT 2F/AH=DFh

Index:	PC-Cache;huge disks|Disk Manager


INT 13 EF-- - Ontrack Drive Rocket - SET CYLINDER OFFSET

Category: c - caches/spoolers

Inp.:

AH = EFh

CX = cylinder offset for next INT 13 call

DL = drive number (80h, 81h)

Return: CF clear

    AH = 00h

Program: Drive Rocket is a drive accelerator by Ontrack Computer Systems for

  IDE drives supporting the read multiple and write multiple commands

Desc:	the following INT 13 call will add the number given by this call to

  the specified cylinder to get the actual cylinder number, then reset

  the offset to zero

Note:	this function is also supported by the NOW! disk cache, and presumably

  newer versions of SWBIOS and Disk Manager

for software which supports this call, AH=EEh is equivalent to calling

  this function with CX=0400h

the cylinder offset is reset to 0 by all INT 13 called except AH=EEh

  and AH=EFh

SeeAlso: AX=7B00h


INT 13 F2-- - VIRUS - "Neuroquila" - INSTALLATION CHECK

Category: V - video

Inp.:

AH = F2h

Return: CF ??? if installed

SeeAlso: AX=EC00h,INT 12/AX=4350h/BX=4920h,INT 21/AX=0B56h


INT 13 F9-- - SWBIOS - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AH = F9h

DL = drive number (80h,81h)

Return: CF clear

    DX = configuration word

bit 15 set if other SWBIOS extensions available

CF set on error

Program: SWBIOS is a TSR by Ontrack Computer Systems

Note:	Disk Manager also supports these calls

SeeAlso: AH=EEh

Index:	Disk Manager


INT 13 FA-- - PC Tools v8+ VSAFE, VWATCH - API

Category: v - virus/antivirus

Inp.:

AH = FAh

DX = 5945h

AL = function (00h-07h)

Return: varies by function

if not installed:

    CF set

AH = 01h

Note:	this API is identical to the ones on INT 16/AH=FAh and INT 21/AH=FAh,

  so it is listed in its entirety under INT 16/AX=FA00h and following

SeeAlso: INT 16/AX=FA00h


INT 13 FD50 - VIRUS - "Predator" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FD50h

Return: AX = 50FDh if resident

SeeAlso: AX=5001h"VIRUS",INT 16/AH=DDh"VIRUS"


INT 13 FE-- - SWBIOS - GET EXTENDED CYLINDER COUNT

Category: d - disk I/O enhancements

Inp.:

AH = FEh

DL = drive number (80h, 81h)

Return: CF clear

DX = number of cylinders beyond 1024 on drive

Program: SWBIOS is a TSR by Ontrack Computer Systems

Notes:	standard INT 13/AH=08h will return a cylinder count truncated to 1024

BIOS without this extension would return count modulo 1024

Disk Manager also supports these calls

SeeAlso: AH=EEh


INT 13 FFFF - UNIQUE UX Turbo Utility - SET TURBO MODE

Category: U - resident utilities

Inp.:

AX = FFFFh

BH = AAh

BL = subfunction

    00h installation check

Return: AX = 1234h if installed

    01h turn on Turbo mode

    02h turn off Turbo mode

    03h set Turbo mode according to hardware switch

    04h set disk access to Turbo mode

    05h set disk access to Normal mode

SeeAlso: INT 15/AH=DFh

Index:	installation check;UNIQUE UX Turbo Utility


INT 14 ---- - SERIAL - Digiboard DigiCHANNEL PC/X* Extender INT 14 (XAPCM232.SYS)

Category: S - serial I/O

Inp.:

Note:	the installation check for this driver is to determine whether the

  "~DOSXAM~" character device exists

Index:	installation check;Digiboard DigiCHANNEL

INT 14


INT 14 00-- - SERIAL - INITIALIZE PORT

Category: S - serial I/O

Inp.:

AH = 00h

AL = port parameters (see #0197)

DX = port number (00h-03h) (04h-43h for Digiboard XAPCM232.SYS)

Return: AH = line status (see #0201)

    FFh if error on Digiboard XAPCM232.SYS

AL = modem status (see #0202)

Notes:	default handler is at F000h:E739h in IBM PC and 100% compatible BIOSes

since the PCjr supports a maximum of 4800 bps, attempting to set 9600

  bps will result in 4800 bps

various network and serial-port drivers support the standard BIOS

  functions with interrupt-driven I/O instead of the BIOS's polled I/O

the 04/08/93 Compaq system ROM uses only the low two bits of DX

SeeAlso: AH=04h"SERIAL",AH=04h"MultiDOS",AH=05h"SERIAL",AH=57h

SeeAlso: AX=8000h"ARTICOM",AH=81h"COMM-DRV",AH=82h"COURIERS",AH=8Ch

INT 14


INT 14 00-- - FOSSIL (Fido/Opus/Seadog Standard Interface Level) - INITIALIZE

Category: S - serial I/O

Inp.:

AH = 00h

AL = initializing parameters

    7 - 6 - 5	   4 - 3     2	  1 - 0

    -BAUD RATE-	   PARITY   STOP   WORD

    BITS  LENGTH

    000 19200 bd   00 none  0: 1  00: 5

    001 38400 bd   01 odd   1: 2  01: 6

    010	  300 bd   11 even	  10: 7

    011	  600 bd	  11: 8

    100	 1200 bd

    101	 2400 bd

    110	 4800 bd

    111	 9600 bd (4800 on PCjr)

DX = port number (0-3 or FFh if only performing non-I/O setup)

Return: AH = RS-232 status code bits (see #0198)

AL = modem status bits

    bit 3: always 1

    bit 7: DCD - carrier detect

SeeAlso: #0197,AH=05h"FOSSIL",AH=81h"COMM-DRV",AH=82h"COURIERS"

INT 14


INT 14 00-- - MBBIOS - INITIALIZE PORT

Category: S - serial I/O

Inp.:

AH = 00h

AL = port parameters (see #0199)

DX = port number

Return: AH = line status (see #0201)

AL = modem status (see #0202)

Note:	MBBIOS was written by H. Roy Engehausen

SeeAlso: AH=04h"MBBIOS",AH=05h"MBBIOS",AH=09h"MBBIOS"

INT 14


INT 14 00-- - Connection Manager - MODIFY DEFAULT CONNECTION PARAMETERS

Category: N - network

Inp.:

AH = 00h

DX = FFFFh

ES:DI -> vector string specifying new parameters

Return: AH = return code (00h,03h) (see #0200)

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

Note:	if DX is 0-3 on entry, Connection Manager emulates the standard BIOS

  function, but redirects the port over the network; if DX is any other

  value, the call is chained

SeeAlso: AH=04h/DX=FFFFh,AH=08h/DX=FFFFh,AH=0Ah/DX=FFFFh

INT 14


INT 14 01-- - SERIAL - WRITE CHARACTER TO PORT

Category: S - serial I/O

Inp.:

AH = 01h

AL = character to write

DX = port number (00h-03h) (04h-43h for Digiboard XAPCM232.SYS)

Return: AH bit 7 clear if successful

AH bit 7 set on error

AH bits 6-0 = port status (see #0201)

Notes:	various network and serial-port drivers support the standard BIOS

  functions with interrupt-driven I/O instead of the BIOS's polled I/O

the 04/08/93 Compaq system ROM uses only the low two bits of DX

SeeAlso: AH=02h,AH=0Bh"FOSSIL",AX=8000h"ARTICOM",AH=89h

INT 14


INT 14 01-- - Connection Manager - SEND CHARACTER

Category: N - network

Inp.:

AH = 01h

DX = FFFFh

BH = character to send

Return: AH = return code (00h-02h,06h) (see #0200)

Notes:	if DX is 0-3 on entry, Connection Manager emulates the standard BIOS

  function, but redirects the port over the network; if DX is any other

  value, the call is chained

this function is provided primarily for compatibility; AH=06h/DX=FFFFh

  is the preferred function because it provides better performance

SeeAlso: AH=02h/DX=FFFFh,AH=06h/DX=FFFFh,AH=09h/DX=FFFFh

INT 14


INT 14 02-- - SERIAL - READ CHARACTER FROM PORT

Category: S - serial I/O

Inp.:

AH = 02h

AL = 00h (ArtiCom)

DX = port number (00h-03h (04h-43h for Digiboard XAPCM232.SYS))

Return: AH = line status (see #0201)

AL = received character if AH bit 7 clear

Notes:	will timeout if DSR is not asserted, even if function 03h returns

  data ready

various network and serial-port drivers support the standard BIOS

  functions with interrupt-driven I/O instead of the BIOS's polled I/O

the 04/08/93 Compaq system ROM uses only the low two bits of DX

SeeAlso: AH=01h,AH=02h"FOSSIL",AH=84h,AH=FCh

INT 14


INT 14 02-- - FOSSIL - RECEIVE CHARACTER WITH WAIT

Category: S - serial I/O

Inp.:

AH = 02h

DX = port number (0-3)

Return: AL = character received

AH = 00h

SeeAlso: AH=01h,AH=02h"SERIAL"

INT 14


INT 14 02-- - Connection Manager - RECEIVE CHARACTER

Category: N - network

Inp.:

AH = 02h

DX = FFFFh

BH = character to send

Return: AH = return code (00h-02h,04h,FFh) (see #0200)

BH = line status (see #0201)

AL = received character (if any)

Notes:	if DX is 0-3 on entry, Connection Manager emulates the standard BIOS

  function, but redirects the port over the network; if DX is any other

  value, the call is chained

this function is provided primarily for compatibility; AH=07h/DX=FFFFh

  is the preferred function because it provides better performance

SeeAlso: AH=02h/DX=FFFFh,AH=03h/DX=FFFFh,AH=06h/DX=FFFFh

INT 14


INT 14 03-- - SERIAL - GET PORT STATUS

Category: S - serial I/O

Inp.:

AH = 03h

AL = 00h (ArtiCom)

DX = port number (00h-03h) (04h-43h for Digiboard XAPCM232.SYS)

Return: AH = line status (see #0201)

AL = modem status (see #0202)

AX = 9E00h if disconnected (ArtiCom)

Note:	the 04/08/93 Compaq system ROM uses only the low two bits of DX

SeeAlso: AH=00h,AH=07h"MultiDOS",AX=8000h"ARTICOM",AH=81h"COURIERS",AX=FD02h

INT 14


INT 14 03-- - Connection Manager - RETURN COMMUNICATION PORT STATUS

Category: N - network

Inp.:

AH = 03h

DX = FFFFh

AL = connection ID

Return: AH = return code (00h-02h) (see #0200)

BH = line status (see #0203)

BL = modem status (see #0202) (only bits 4,5,7; all others zero)

Notes:	if DX is 0-3 on entry, Connection Manager emulates the standard BIOS

  function, but redirects the port over the network; if DX is any other

  value, the call is chained

SeeAlso: AH=00h/DX=FFFFh,AH=04h/DX=FFFFh,AH=0Ah/DX=FFFFh

INT 14


INT 14 04-- - SERIAL - EXTENDED INITIALIZE (CONVERTIBLE,PS)

Category: S - serial I/O

Inp.:

AH = 04h

AL = break status

    00h if break

    01h if no break

BH = parity (see #0204)

BL = number of stop bits

    00h one stop bit

    01h two stop bits (1.5 if 5 bit word length)

CH = word length (see #0205)

CL = bps rate (see #0206)

DX = port number

Return: AX = port status code (see #0201,#0202)

SeeAlso: AH=00h,AH=1Eh,AX=8000h"ARTICOM"

INT 14


INT 14 04-- - FOSSIL - INITIALIZE DRIVER

Category: S - serial I/O

Inp.:

AH = 04h

DX = port number

optionally BX=4F50h

   ES:CX -> byte to be set upon ^C

Return: AX = 1954h (if successful)

BL = maximum function number supported (excluding 7Eh and above)

BH = revision of FOSSIL specification supported

DTR is raised

Note:	the word at offset 6 in the interrupt handler contains 1954h, and the

  following byte contains the maximum function number supported; this

  can serve as an installation check

SeeAlso: AH=05h"FOSSIL",AH=1Ch,INT 11/AH=BCh

Index:	installation check;FOSSIL

INT 14


INT 14 04-- - MultiDOS Plus IODRV - INITIALIZE PORT

Category: S - serial I/O

Inp.:

AH = 04h

Return: port initialized; if Hayes-compatible modem, a connection has been

  established

Note:	the port number is stored at offset BEh in the Task Control Block

  (see #0345 at INT 15/AH=13h"MultiDOS")

SeeAlso: AH=00h,AH=05h"MultiDOS",AH=20h"MultiDOS",INT 15/AH=13h"MultiDOS"

INT 14


INT 14 04-- - Digiboard DigiCHANNEL PC/X* - CHANGE BAUD RATE

Category: S - serial I/O

Inp.:

AH = 04h

AL = initializing parameters (see #0207)

BX = baud rate

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    FFh error

SeeAlso: AH=05h"Digiboard"

INT 14


INT 14 04-- - MBBIOS - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AH = 04h

DX = port number

Return: AX = AA55h if installed on specified port

SeeAlso: AH=00h"MBBIOS",AH=09h"MBBIOS"

INT 14


INT 14 04-- - Connection Manager - OPEN COMMUNICATION

Category: N - network

Inp.:

AH = 04h

DX = FFFFh

ES:DI -> Connection Request protocol vector (see #0208)

Return: AH = return code

    00h successful

AL = connection ID

BH = connection type

    00h direct connection or no dialing

    01h Connection Server dialed phone

    01h no response from Connection Server

    03h invalid request

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

Desc:	initiate a connection to the Connection Server listed in the current

  Client parameter set

Notes:	if DX is 0-3 on entry, Connection Manager emulates the standard BIOS

  function, but redirects the port over the network; if DX is any other

  value, the call is chained

all subvectors of the Connection Request vector are optional; if

  missing, default values are provided by the default connection

  parameter set

SeeAlso: AH=00h/DX=FFFFh,AH=05h/DX=FFFFh,AH=06h/DX=FFFFh,AH=07h/DX=FFFFh

SeeAlso: AH=0Ah/DX=FFFFh,AH=0Ch/DX=FFFFh

INT 14


INT 14 0400 - Microsoft Systems Journal TSRCOMM INT14 - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = 0400h

Return: AX = 0FF0h

SeeAlso: AX=0401h,AX=0408h

INT 14


INT 14 0401 - Microsoft Systems Journal TSRCOMM INT14 - INITIALIZE MODE

Category: S - serial I/O

Inp.:

AX = 0401h

CX = mode

SeeAlso: AX=0400h,AX=0402h

INT 14


INT 14 0402 - Microsoft Systems Journal TSRCOMM INT14 - EXTENDED INITIALIZE

Category: S - serial I/O

Inp.:

AX = 0402h

CL = parameters

SeeAlso: AX=0400h,AX=0401h

INT 14


INT 14 0403 - Microsoft Systems Journal TSRCOMM INT14 - SET TIMEOUT

Category: S - serial I/O

Inp.:

AX = 0403h

CX = timeout

SeeAlso: AX=0400h

INT 14


INT 14 0404 - Microsoft Systems Journal TSRCOMM INT14 - CLEAR THE RECEIVE BUFFER

Category: S - serial I/O

Inp.:

AX = 0404h

SeeAlso: AX=0400h,AX=0405h,AX=0406h

INT 14


INT 14 0405 - Microsoft Systems Journal TSRCOMM INT14 - GET RECEIVE BUFFER COUNT

Category: S - serial I/O

Inp.:

AX = 0405h

Return: AX = number of characters in buffer

SeeAlso: AX=0400h,AX=0404h,AX=0407h

INT 14


INT 14 0406 - Microsoft Systems Journal TSRCOMM INT14 - CLEAR THE TRANSMIT BUFFER

Category: S - serial I/O

Inp.:

AX = 0406h

SeeAlso: AX=0400h,AX=0404h,AX=0407h

INT 14


INT 14 0407 - Microsoft Systems Journal TSRCOMM INT14 - GET TRANSMIT BUFFER COUNT

Category: S - serial I/O

Inp.:

AX = 0407h

Return: AX = number of characters in the buffer

SeeAlso: AX=0400h,AX=0405h,AX=0406h

INT 14


INT 14 0408 - Microsoft Systems Journal TSRCOMM INT14 - UNINSTALL

Category: S - serial I/O

Inp.:

AX = 0408h

SeeAlso: AX=0400h

INT 14


INT 14 05-- - SERIAL - EXTENDED COMMUNICATION PORT CONTROL (CONVERTIBLE,PS)

Category: S - serial I/O

Inp.:

AH = 05h

AL = function

    00h read modem control register

      Return: BL = modem control register (see #0231)

      AH = status

    01h write modem control register

      BL = modem control register (see #0231)

      Return: AX = status

DX = port number

Note:	also supported by ArtiCom

SeeAlso: AH=00h,AH=1Fh,AX=8000h"ARTICOM",AH=FBh

INT 14


INT 14 05-- - FOSSIL - DEINITIALIZE DRIVER

Category: S - serial I/O

Inp.:

AH = 05h

DX = port number

Return: none

DTR is not affected

SeeAlso: AH=00h,AH=04h"FOSSIL",AH=1Dh,AH=8Dh

INT 14


INT 14 05-- - MultiDOS Plus IODRV - READ CHARACTER FROM PORT

Category: S - serial I/O

Inp.:

AH = 05h

AL = timeout in seconds (00h = never)

Return: AL = status

    00h successful

AH = character read

    01h read error

    02h timed out

    other modem status (CTS, DSR) changed

Note:	the port number is stored at offset BEh in the Task Control Block

SeeAlso: AH=02h,AH=04h"MultiDOS",AH=06h"MultiDOS",AH=22h"MultiDOS"

SeeAlso: INT 15/AH=13h"MultiDOS"

INT 14


INT 14 05-- - Digiboard DigiCHANNEL PC/X* - CHANGE PROTOCOL

Category: S - serial I/O

Inp.:

AH = 05h

AL = protocol (see #0232)

BH = new XOFF character (00h = current)

BL = new XON character (00h = current)

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    FFh error

SeeAlso: AH=04h"Digiboard"

INT 14


INT 14 05-- - MBBIOS - DROP DTR AND RTS

Category: S - serial I/O

Inp.:

AH = 05h

DX = port number

Return: none

SeeAlso: AH=00h"MBBIOS",AH=06h"MBBIOS",AH=06h"FOSSIL"

INT 14


INT 14 05-- - PC-MOS/386 v5.01 $serial.sys v5.04 - CHANGE PORT PROTOCOL

Category: S - serial I/O

Inp.:

AH = 05h

AL = new port protocol (see #0233)

BH = new XOFF character

BL = new XON character

DX = port number

Return: AH = FFh if invalid protocol

SeeAlso: AH=00h,AH=04h"SERIAL",AH=06h"PC-MOS"

INT 14


INT 14 05-- - Connection Manager - CLOSE COMMUNICATION

Category: N - network

Inp.:

AH = 05h

DX = FFFFh

AL = connection ID

Return: AH = return code

    00h successful

    01h no such connection

    02h invalid connection ID

AL = correct connection ID

Desc:	terminate existing connection to allow another one to be established

Note:	if DX is 0-3 on entry, Connection Manager emulates the standard BIOS

  function, but redirects the port over the network; if DX is any other

  value, the call is chained

SeeAlso: AH=04h/DX=FFFFh,AH=0Dh/DX=FFFFh

INT 14


INT 14 06-- - FOSSIL - RAISE/LOWER DTR

Category: S - serial I/O

Inp.:

AH = 06h

DX = port

AL = DTR state to be set

    00h = lower

    01h = raise

SeeAlso: AH=05h"MBBIOS",AH=1Ah

INT 14


INT 14 06-- - MultiDOS Plus IODRV - WRITE CHARACTER TO PORT

Category: S - serial I/O

Inp.:

AH = 06h

AL = character

Return: AL = status

    00h successful

Notes:	the port number is stored at offset BEh in the Task Control Block

if output queue is full, the calling task is blocked until the

  character can be stored

SeeAlso: AH=01h,AH=04h"MultiDOS",AH=05h"MultiDOS",AH=21h"MultiDOS"

SeeAlso: INT 15/AH=13h"MultiDOS"

INT 14


INT 14 06-- - MBBIOS - RAISE DTR AND RTS

Category: S - serial I/O

Inp.:

AH = 06h

DX = port number

Return: none

SeeAlso: AH=05h"MBBIOS",AH=07h"MBBIOS"

INT 14


INT 14 06-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DRIVER 'ID' FUNCTION

Category: S - serial I/O

Inp.:

AH = 06h

DX = port number

Return: AH bit 7 set

AL = number of highest function supported by driver

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

SeeAlso: AH=18h"PC-MOS"

INT 14


INT 14 06-- - TelAPI - WRITE BLOCK

Category: N - network

Inp.:

AH = 06h

CX = number of characters to write

DX = port number

ES:DI -> buffer containing data

Return: AX = number of characters actually sent??? (negative on error)

CX = ???

SeeAlso: AH=07h"TelAPI",AH=E0h"TelAPI"

INT 14


INT 14 06-- - Connection Manager - SEND CHARACTER BLOCK

Category: N - network

Inp.:

AH = 06h

DX = FFFFh

AL = connection ID

CX = number of characters to send

ES:DI -> buffer containing data to be sent

Return: AH = return code (see #0200)

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=04h/DX=FFFFh,AH=07h/DX=FFFFh,AH=09h/DX=FFFFh

INT 14


INT 14 07-- - FOSSIL - RETURN TIMER TICK PARAMETERS

Category: S - serial I/O

Inp.:

AH = 07h

Return: AL = timer tick interrupt number

AH = ticks per second on interrupt number in AL

DX = approximate number of milliseconds per tick

SeeAlso: AH=16h

INT 14


INT 14 07-- - MultiDOS Plus IODRV - GET PORT STATUS

Category: S - serial I/O

Inp.:

AH = 07h

Return: CL = modem status (see #0202)

CH = character at head of input queue (if any)

DX = number of characters in input queue

Note:	the port number is stored at offset BEh in the Task Control Block

SeeAlso: AH=03h,AH=05h"MultiDOS",AH=08h"MultiDOS",AH=09h"MultiDOS"

SeeAlso: AH=23h"MultiDOS",INT 15/AH=13h"MultiDOS"

INT 14


INT 14 07-- - MBBIOS - SEND BREAK

Category: S - serial I/O

Inp.:

AH = 07h

DX = port number

Return: none

SeeAlso: AH=06h"MBBIOS",AH=FAh"EBIOS"

INT 14


INT 14 07-- - PC-MOS/386 v5.01 $serial.sys v5.04 - SEND RS-232 BREAK

Category: S - serial I/O

Inp.:

AH = 07h

BX = duration of break in clock ticks

DX = port number

Return: nothing

INT 14


INT 14 07-- - TelAPI - READ BLOCK

Category: N - network

Inp.:

AH = 07h

CX = number of characters to read

DX = port number

ES:DI -> buffer for data

Return: AX = number of characters actually read??? (negative on error)

CX = ???

SeeAlso: AH=06h"TelAPI",AH=E0h"TelAPI"

INT 14


INT 14 07-- - Connection Manager - RECEIVE CHARACTER BLOCK

Category: N - network

Inp.:

AH = 07h

DX = FFFFh

AL = connection ID

BL = flag

    00h wait for data

    nonzero do not wait if no data avaiable

CX = size of receive buffer

ES:DI -> buffer for received characters

Return: AH = return code (00h-02h,04h,FFh) (see #0200)

BH = line status (see #0203)

CX = number of characters received

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=01h/DX=FFFFh,AH=04h/DX=FFFFh,AH=06h/DX=FFFFh

INT 14


INT 14 08-- - FOSSIL - FLUSH OUTPUT BUFFER WAITING TILL ALL OUTPUT IS DONE

Category: S - serial I/O

Inp.:

AH = 08h

DX = port number

SeeAlso: AH=09h"FOSSIL"

INT 14


INT 14 08-- - MultiDOS Plus 4.0 IODRV - GET AND RESET PORT LINE STATUS

Category: S - serial I/O

Inp.:

AH = 08h

Return: AL = line status (see #0201)

AH destroyed

Notes:	the port number is stored at offset BEh in the Task Control Block

on every line status change, the line status is ORed with the line

  status accumulator; this function returns the accumulator and clears

  it

SeeAlso: AH=03h,AH=04h"MultiDOS",AH=07h"MultiDOS",INT 15/AH=13h"MultiDOS"

INT 14


INT 14 08-- - Digiboard DigiCHANNEL PC/X* - ALTERNATE STATUS CHECK

Category: S - serial I/O

Inp.:

AH = 08h

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = RS232 status bits (see #0201 at AH=03h)

ZF set if no characters queued

ZF clear if character available

    AL = next character

SeeAlso: AH=03h,AH=08h"PC-MOS",AH=09h"Digiboard",AH=14h"Digiboard"

INT 14


INT 14 08-- - MBBIOS - NON-DESTRUCTIVE READ

Category: S - serial I/O

Inp.:

AH = 08h

DX = port number

Return: AL = character (if AH bit 0 set)

AH = status (see #0201)

SeeAlso: AH=0Bh"MBBIOS",AH=0Ch"FOSSIL"

INT 14


INT 14 08-- - PC-MOS/386 v5.01 $serial.sys v5.04 - INPUT STATUS CHECK

Category: S - serial I/O

Inp.:

AH = 08h

DX = port number

Return: CF set if carrier loss detected

ZF set if input buffer empty

ZF clear if characters available

    AL = next character dequeued

INT 14


INT 14 08-- - Connection Manager - RETURN DEFAULT CONNECTION PARAMETERS

Category: N - network

Inp.:

AH = 08h

DX = FFFFh

CX = size of buffer for parameters or 0000h to get length

ES:DI -> buffer for parameter vector (see #0208)

Return: AH = return code

    00h successful

CX = number of bytes required (if CX=0000h on entry)

CX = number of bytes omitted for lack of space (if CX nonzero)

    nonzero invalid request

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=00h/DX=FFFFh,AH=0Fh/DX=FFFFh

INT 14


INT 14 09-- - FOSSIL - PURGE OUTPUT BUFFER THROWING AWAY ALL PENDING OUTPUT

Category: S - serial I/O

Inp.:

AH = 09h

DX = port number

SeeAlso: AH=08h"FOSSIL",AH=0Ah"FOSSIL",AH=88h

INT 14


INT 14 09-- - MultiDOS Plus IODRV - RESET PORT STATUS

Category: S - serial I/O

Inp.:

AH = 09h

Return: modem status byte cleared

Note:	the port number is stored at offset BEh in the Task Control Block

SeeAlso: AH=04h"MultiDOS",AH=07h"MultiDOS",INT 15/AH=13h"MultiDOS"

INT 14


INT 14 09-- - Digiboard DigiCHANNEL PC/X* - CLEAR BUFFERS

Category: S - serial I/O

Inp.:

AH = 09h

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    FFh error

SeeAlso: AH=08h"Digiboard",AH=0Ah"Digiboard",AH=10h"Digiboard"

INT 14


INT 14 09-- - MBBIOS - GET/SET OPTIONS

Category: S - serial I/O

Inp.:

AH = 09h

AL = option byte (see #0234)

DX = port number???

Return: AL = old option byte

SeeAlso: AH=00h"MBBIOS",AH=04h"MBBIOS",AH=10h"FOSSIL"

INT 14


INT 14 09-- - PC-MOS/386 v5.01 $serial.sys v5.04 - RESET I/O BUFFER POINTERS

Category: S - serial I/O

Inp.:

AH = 09h

DX = port number

Return: nothing

SeeAlso: AH=13h"PC-MOS"

INT 14


INT 14 09-- - Connection Manager - SEND BREAK

Category: N - network

Inp.:

AH = 09h

DX = FFFFh

AL = connection ID

Return: AH = return code (00h-02h) (see #0200 at AH=00h/DX=FFFFh)

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=02h/DX=FFFFh,AH=03h/DX=FFFFh

INT 14


INT 14 0A-- - FOSSIL - PURGE INPUT BUFFER THROWING AWAY ALL PENDING INPUT

Category: S - serial I/O

Inp.:

AH = 0Ah

DX = port number

SeeAlso: AH=09h"FOSSIL",AH=85h

INT 14


INT 14 0A-- - Digiboard DigiCHANNEL PC/X* - INPUT QUEUE CHECK

Category: S - serial I/O

Inp.:

AH = 0Ah

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AX = number of characters available in buffer

Note:	this function is also supported by the PC-MOS/386 v5.01 $serial.sys

SeeAlso: AH=09h"Digiboard",AH=0Dh"Digiboard"

INT 14


INT 14 0A-- - MBBIOS - WRITE BUFFER

Category: S - serial I/O

Inp.:

AH = 0Ah

CX = count

ES:DI -> buffer (see #0235)

Return: AX = status (see #0201,#0202)

CX = unsent character count

DI updated

Note:	the PACCOM version of MBBIOS does not use CX or ES:DI; instead, ES

  contains the segment of a buffer containing the packet to be sent,

  which by default will be freed once the packet has been sent.	 Use

  AH=0Ch"MBBIOS" to allocate the buffer.

SeeAlso: AH=01h,AH=0Bh"MBBIOS",AH=0Ch"MBBIOS",AH=19h"FOSSIL"

INT 14


INT 14 0A-- - Connection Manager - MODIFY ACTIVE CONNECTION PARAMETERS

Category: N - network

Inp.:

AH = 0Ah

DX = FFFFh

ES:DI -> vector string containing new parameters (see #0208)

Return: AH = return code (00h-03h,06h) (see #0200)

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

Note:	any subvectors valid for the Change Parameters command replace the

  existing values in the current set

SeeAlso: AH=00h/DX=FFFFh,AH=0Fh/DX=FFFFh

INT 14


INT 14 0B-- - FOSSIL - TRANSMIT NO WAIT

Category: S - serial I/O

Inp.:

AH = 0Bh

AL = character

DX = port number

Return: AX = result

    0000h character not accepted

    0001h character accepted

SeeAlso: AH=01h

INT 14


INT 14 0B-- - MBBIOS - READ BUFFER

Category: S - serial I/O

Inp.:

AH = 0Bh

CX = size of buffer

ES:DI -> buffer

Return: AH = composite line status (see #0201) formed by ORing all statuses

  on receive interrupts; bit 0 set if additional characters

  available

AL = composite modem status (see #0202) formed by ORing all statuses

CX = number of characters actually read

DI updated

Note:	the PACCOM version of MBBIOS does not use CX or ES:DI on call,

  instead returning ES set to the segment of the buffer containing a

  received packet, or 0000h if no packets available; the buffer may

  be freed with AH=0Ch"MBBIOS"

SeeAlso: AH=02h,AH=08h"MBBIOS",AH=0Ah"MBBIOS",AH=0Ch"MBBIOS",AH=18h"FOSSIL"

INT 14


INT 14 0B-- - Connection Manager - PREPARE FOR INBOUND CONNECTION

Category: N - network

Inp.:

AH = 0Bh

DX = FFFFh

AL = service name

    00h use parameter file or default

    01h use specified name

ES:DI -> 16-byte blank-padded name

BH = connection notification

    00h program awaiting connection, don't notify user

    01h notify user on connecting

BL = connection type

    00h connection will use Connection Manager API

Return: AH = return code (00h-02h) (see #0200 at AH=00h/DX=FFFFh)

AL = connection ID if AH=00h

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=04h/DX=FFFFh,AH=0Ch/DX=FFFFh,AH=10h/DX=FFFFh

INT 14


INT 14 0C-- - FOSSIL - NON-DESTRUCTIVE READ AHEAD

Category: S - serial I/O

Inp.:

AH = 0Ch

DX = port number

Return: AX = FFFFh character not available

AX = 00xxh character xx available

SeeAlso: AH=08h"MBBIOS",AH=20h"FOSSIL"

INT 14


INT 14 0C-- - MBBIOS PACCOM support - BUFFER MANAGEMENT

Category: S - serial I/O

Inp.:

AH = 0Ch

ES = segment of buffer to free, or 0000h to allocate new buffer

Return: ES = segment of allocated buffer (if ES=0000h on entry)

Note:	the PACCOM version of MBBIOS uses only ES as buffer address for

  AH=0Ah and AH=0Bh

SeeAlso: AH=0Ah"MBBIOS",AH=0Bh"MBBIOS"

INT 14


INT 14 0C-- - Connection Manager - TEST FOR INBOUND CONNECTION REQUEST

Category: N - network

Inp.:

AH = 0Ch

DX = FFFFh

AL = connection ID from AH=0Bh/DX=FFFFh

Return: AH = return code (00h-03h) (see also #0200 at AH=00h/DX=FFFFh)

    03h not prepared for inbound connection

AL = connection ID (if AH=00h) or correct connection ID (if AH=02h)

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=03h/DX=FFFFh,AH=04h/DX=FFFFh,AH=0Bh/DX=FFFFh

INT 14


INT 14 0D-- - FOSSIL - KEYBOARD READ WITHOUT WAIT

Category: S - serial I/O

Inp.:

AH = 0Dh

Return: AX = result

    FFFFh character not available

    xxyyh standard IBM-style scan code

SeeAlso: AH=0Eh

INT 14


INT 14 0D-- - Digiboard DigiCHANNEL PC/X* - GET POINTER TO CH_KEY_RDY FLAG

Category: S - serial I/O

Inp.:

AH = 0Dh

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: ES:BX -> CH_KEY_RDY flag (see #0236)

SeeAlso: AH=0Ah"Digiboard"

INT 14


INT 14 0D-- - MBBIOS PACCOM support - SET TXD

Category: S - serial I/O

Inp.:

AH = 0Dh

AL = new setting (FFh = 1.0)

Desc:	specify the time from RTS to start or packet

SeeAlso: AX=0D00h,AH=0Eh"MBBIOS",AH=0Fh"MBBIOS"

INT 14


INT 14 0D-- - Connection Manager - TERMINATE CONNECTION CLIENT ACTIVITY

Category: N - network

Inp.:

AH = 0Dh

DX = FFFFh

Return: AH = return code

    00h successful

    nonzero operation not terminated

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

Desc:	end all Connection Client TSR activity to allow it to be removed from

  memory

SeeAlso: AH=05h/DX=FFFFh,AH=6Fh/BX=FFFFh

INT 14


INT 14 0D00 - MBBIOS - GET AVAILABLE BYTES

Category: S - serial I/O

Inp.:

AX = 0D00h

Return: AX = bytes in transmit buffer

CX = bytes in receive buffer

SeeAlso: AH=0Ah"MBBIOS",AH=0Bh"MBBIOS"

INT 14


INT 14 0D01 - MBBIOS - LOWER ALL MODEM CONTROL SIGNALS

Category: S - serial I/O

Inp.:

AX = 0D01h

Note:	this function lowers DTR, RTS, etc.

SeeAlso: AX=0D02h

INT 14


INT 14 0D02 - MBBIOS - RAISE ALL MODEM CONTROL SIGNALS

Category: S - serial I/O

Inp.:

AX = 0D02h

Note:	this function raises DTR, RTS, etc.

SeeAlso: AX=0D01h

INT 14


INT 14 0D03 - MBBIOS - SET HANDSHAKE BYTE

Category: S - serial I/O

Inp.:

AX = 0D03h

CL = new handshake byte

Return: CL = previous handshake byte

Note:	this function lowers DTR, RTS, etc.

INT 14


INT 14 0E-- - FOSSIL - KEYBOARD READ WITH WAIT

Category: S - serial I/O

Inp.:

AH = 0Eh

Return: AX = xxyyh standard IBM-style scan code

SeeAlso: AH=0Dh"FOSSIL"

INT 14


INT 14 0E-- - Digiboard DigiCHANNEL PC/X* - WRITE STRING

Category: S - serial I/O

Inp.:

AH = 0Eh

CX = number of characters to write

ES:BX -> string

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AX = number of characters actually written

ZF clear if successful

ZF set on error

SeeAlso: AH=0Fh"Digiboard"

INT 14


INT 14 0E-- - MBBIOS PACCOM support - SET PERSISTENCE

Category: S - serial I/O

Inp.:

AH = 0Eh

AL = new setting (FFh = 1.0)

Desc:	specify the time from end of DCD to RTS

SeeAlso: AH=0Dh"MBBIOS",AH=0Fh"MBBIOS"

INT 14


INT 14 0E-- - Connection Manager - SET HARDWARE FLOW STATE

Category: N - network

Inp.:

AH = 0Eh

DX = FFFFh

AL = connection ID from AH=04h/DX=FFFFh

BL = RTS state (00h off, 01h on)

Return: AH = return code (00h-03h) (see also #0200 at AH=00h/DX=FFFFh)

    03h invalid request (BL not 00h or 01h)

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=03h/DX=FFFFh,AH=0Ah/DX=FFFFh

INT 14


INT 14 0F-- - FOSSIL - ENABLE/DISABLE FLOW CONTROL

Category: S - serial I/O

Inp.:

AH = 0Fh

AL = bit mask describing requested flow control (see #0237)

DX = port number

SeeAlso: AH=09h"MBBIOS",AH=10h"FOSSIL"

INT 14


INT 14 0F-- - Digiboard DigiCHANNEL PC/X* - READ STRING

Category: S - serial I/O

Inp.:

AH = 0Fh

CX = number of characters to read

ES:BX -> buffer

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AX = number of characters read

ZF clear if successful

ZF set on error (line status or wrong number of characters)

SeeAlso: AH=0Eh"Digiboard"

INT 14


INT 14 0F-- - MBBIOS PACCOM support - SET SLOT TIME

Category: S - serial I/O

Inp.:

AH = 0Fh

AL = new setting in clock ticks

Desc:	specify the time from end of DCD to RTS

SeeAlso: AH=0Dh"MBBIOS",AH=0Eh"MBBIOS",AH=10h"MBBIOS"

INT 14


INT 14 0F-- - Connection Manager - RETURN ACTIVE CONNECTION PARAMETERS

Category: N - network

Inp.:

AH = 0Fh

DX = FFFFh

AL = connection ID

CX = size of buffer or 0000h to get length of returned vector

ES:DI -> buffer for connection parameter vector (see #0208)

Return: AH = return code (00h-02h,06h) (see #0200 at AH=00h/DX=FFFFh)

CX = number of bytes which could not be returned because the given

      buffer was too small

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

SeeAlso: AH=08h/DX=FFFFh,AH=0Ah/DX=FFFFh

INT 14


INT 14 10-- - FOSSIL - EXTENDED ^C/^K CHECKING AND TRANSMIT ON/OFF

Category: S - serial I/O

Inp.:

AH = 10h

AL = bit mask

    bit 0: enable/disable ^C/^K checking

    bit 1: enable/disable the transmitter

DX = port number

SeeAlso: AH=0Fh"FOSSIL"

INT 14


INT 14 10-- - Digiboard DigiCHANNEL PC/X* - CLEAR RECEIVE BUFFER

Category: S - serial I/O

Inp.:

AH = 10h

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    FFh error

SeeAlso: AH=09h"Digiboard",AH=11h"Digiboard"

INT 14


INT 14 10-- - MBBIOS PACCOM support - SET CRC WAIT

Category: S - serial I/O

Inp.:

AH = 10h

AL = new setting in clock ticks (should be at least 5 character times)

Desc:	specify the time from start of last character to dropping RTS

SeeAlso: AH=0Dh"MBBIOS",AH=0Fh"MBBIOS"

INT 14


INT 14 10-- - Connection Manager - QUERY SERVICE NAMES

Category: N - network

Inp.:

AH = 10h

DX = FFFFh

CL = subfunction

    00h search first

    01h search next

ES:DI -> pattern buffer (see #0238)

Return: AH = return code (00h,01h,03h,06h) (see also #0200 at AH=00h/DX=FFFFh)

    01h no (more) matching names

    03h invalid request

ES:DI buffer filled with reply buffer (see #0238) containing matched

  name if AH=00h

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

Desc:	obtain the names of groups and lines available for connection requests,

  and the names of active Connection Servers

SeeAlso: AH=04h/DX=FFFFh,AH=0Bh/DX=FFFFh

INT 14


INT 14 11-- - FOSSIL - SET CURRENT CURSOR LOCATION

Category: S - serial I/O

Inp.:

AH = 11h

DH = row

DL = column

Note:	this is the same as INT 10/AH=02h

SeeAlso: AH=12h"FOSSIL"

INT 14


INT 14 11-- - Digiboard DigiCHANNEL PC/X* - CLEAR TRANSMIT BUFFER

Category: S - serial I/O

Inp.:

AH = 11h

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    FFh error

SeeAlso: AH=09h"Digiboard",AH=10h"Digiboard"

INT 14


INT 14 11-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DISABLE PORT

Category: S - serial I/O

Inp.:

AH = 11h

DX = port number

Return: AL = status

    00h successful

    01h IRQ for port is shared

    02h IRQ was reserved

SeeAlso: AH=04h,AH=05h,AH=12h"PC-MOS"

INT 14


INT 14 12-- - FOSSIL - READ CURRENT CURSOR LOCATION

Category: S - serial I/O

Inp.:

AH = 12h

Return: DH = row

DL = column

Note:	this is the same as INT 10/AH=03h

SeeAlso: AH=11h"FOSSIL"

INT 14


INT 14 12-- - Digiboard DigiCHANNEL PC/X* - GET TRANSMIT BUFFER FREE SPACE

Category: S - serial I/O

Inp.:

AH = 12h

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AX = number of bytes free

SeeAlso: AH=0Ah"Digiboard",AH=14h"Digiboard"

INT 14


INT 14 12-- - PC-MOS/386 v5.01 $serial.sys v5.04 - GET CURRENT PORT PARAMETERS

Category: S - serial I/O

Inp.:

AH = 12h

DX = port number

Return: AH = status

    FFh port number invalid

AL = line parameters (see #0201)

AH = flow control configuration (see #0233 at AH=05h"PC-MOS")

CX:BX = bps rate

DL = XOFF character or 00h for none

DH = XON character or 00h for none

INT 14


INT 14 13-- - FOSSIL - SINGLE CHARACTER ANSI WRITE TO SCREEN

Category: S - serial I/O

Inp.:

AH = 13h

AL = character

Note:	should not be called if it is unsafe to call DOS

SeeAlso: AH=15h

INT 14


INT 14 13-- - PC-MOS/386 v5.01 $serial.sys v5.04 - REGISTER A PORT WITH A TERMINAL

Category: S - serial I/O

Inp.:

AH = 13h

DX = port number

Return: AH = status

    FFh port number invalid

    else

ES:BX -> BYTE flag (00h buffer empty, FFh buffer contains data)

SeeAlso: AH=17h"PC-MOS"

INT 14


INT 14 14-- - FOSSIL - ENABLE OR DISABLE WATCHDOG PROCESSING

Category: S - serial I/O

Inp.:

AH = 14h

AL = 01h enable watchdog

     00h disable watchdog

DX = port number

SeeAlso: INT 21/AH=2Bh/CX=6269h/DX=742Dh

INT 14


INT 14 14-- - PC-MOS/386 v5.01 $serial.sys v5.04 - OUTPUT STRING

Category: S - serial I/O

Inp.:

AH = 14h

CX = number of characters in string

DX = port number

ES:BX -> string to be sent

SI = timeout in timer ticks or 0000h for default

Return: AX = number of bytes actually sent

ZF clear if successful

ZF set on timeout

SeeAlso: AH=01h,AH=15h"PC-MOS"

INT 14


INT 14 14-- - Digiboard - GET NUMBER OF BOARDS INSTALLED

Category: S - serial I/O

Inp.:

AH = 14h

Return: AX = number of boards installed

SeeAlso: AH=08h"Digiboard",AH=15h"Digiboard"

INT 14


INT 14 15-- - FOSSIL - WRITE CHARACTER TO SCREEN USING BIOS SUPPORT ROUTINES

Category: S - serial I/O

Inp.:

AH = 15h

AL = character

SeeAlso: AH=13h"FOSSIL"

INT 14


INT 14 15-- - PC-MOS/386 v5.01 $serial.sys v5.04 - INPUT STRING

Category: S - serial I/O

Inp.:

AH = 15h

CX = size of buffer

DX = port number

ES:BX -> buffer for received characters

SI = timeout in clock ticks or 0000h for default

Return: AX = number of characters actually read

ZF set on timeout (no data available)

SeeAlso: AH=02h,AH=14h"PC-MOS",AH=16h"PC-MOS"

INT 14


INT 14 15-- - Digiboard - ENABLE/DISABLE MEMORY

Category: S - serial I/O

Inp.:

AH = 15h

AL = new state (00h disabled, 01h enabled)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=14h"Digiboard",AH=16h"Digiboard"

INT 14


INT 14 16-- - FOSSIL - INSERT/DELETE FUNCTION FROM TIMER TICK CHAIN

Category: S - serial I/O

Inp.:

AH = 16h

AL = function

    00h = delete

    01h = add

ES:DX -> routine to call

Return: AX = status

    0000h successful

    0001h unsuccessful

SeeAlso: AH=07h"FOSSIL"

INT 14


INT 14 16-- - PC-MOS/386 v5.01 $serial.sys v5.04 - LINK TO ANOTHER SERIAL DRIVER

Category: S - serial I/O

Inp.:

AH = 16h

ES:BX -> calling driver's INT 14 entry point

Return: nothing

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

INT 14


INT 14 16-- - Digiboard DigiCHANNEL PC/X* - CCB COMMAND

Category: S - serial I/O

Inp.:

AH = 16h

AL = CCB command number (see #0239) (see also following entries)

BL = byte 2

BH = byte 3

CL = byte 1 (for all channel functions except 4Eh and 4Fh)

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AX=1646h,AH=18h"Digiboard"

INT 14


INT 14 1646 - Digiboard - CCB COMMAND - SET INTERRUPT TO HOST MASK

Category: S - serial I/O

Inp.:

AX = 1646h

BL = bits to set

BH = bits to clear

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=1647h

INT 14


INT 14 1647 - Digiboard - CCB COMMAND - SET BAUD/DATABITS/STOPBITS/PARITY

Category: S - serial I/O

Inp.:

AX = 1647h

BL = baud

BH = datatype

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=1646h,AX=1649h

INT 14


INT 14 1649 - Digiboard - CCB COMMAND - SET MODEM LINES

Category: S - serial I/O

Inp.:

AX = 1649h

BL = bits to set

BH = bits to clear

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=1647h

INT 14


INT 14 164A - Digiboard - CCB COMMAND - SET BREAK COUNT

Category: S - serial I/O

Inp.:

AX = 164Ah

BL = break count

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=1649h,AX=164Bh

INT 14


INT 14 164B - Digiboard - CCB COMMAND - SET HANDSHAKE

Category: S - serial I/O

Inp.:

AX = 164Bh

BL = bits to set

BH = bits to clear

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=1649h,AX=164Ch

INT 14


INT 14 164C - Digiboard - CCB COMMAND - SET XON/XOFF CHARACTERS

Category: S - serial I/O

Inp.:

AX = 164Ch

BL = XON character

BH = XOFF character

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=164Bh,AX=164Dh

INT 14


INT 14 164D - Digiboard - CCB COMMAND - SET TRANSMIT MID-WATER MARK

Category: S - serial I/O

Inp.:

AX = 164Dh

BX = new mid-water mark

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=164Ch,AX=164Eh,AX=164Fh

INT 14


INT 14 164E - Digiboard - CCB COMMAND - IRQ POLLING TIMER TO HOST

Category: S - serial I/O

Inp.:

AX = 164Eh

BL = ticks

BH = ???

CL = mode

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=164Dh

INT 14


INT 14 164F - Digiboard - CCB COMMAND - BUFFER SET ALL

Category: S - serial I/O

Inp.:

AX = 164Fh

BL = size

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=164Dh

INT 14


INT 14 1653 - Digiboard - CCB COMMAND - SPECIAL CHARACTER INTERRUPT

Category: S - serial I/O

Inp.:

AX = 1653h

BL = enable/disable

BH = special character

CL = byte 1

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h error

    FFh error

SeeAlso: AH=16h"Digiboard",AX=1646h

INT 14


INT 14 17-- - FOSSIL - REBOOT SYSTEM

Category: S - serial I/O

Inp.:

AH = 17h

AL = method

    00h = cold boot

    01h = warm boot

SeeAlso: INT 16/AX=E0FFh,INT 19,INT 60/DI=0606h

INT 14


INT 14 17-- - PC-MOS/386 v5.01 $serial.sys v5.04 - WRITE MODEM CONTROL REGISTER

Category: S - serial I/O

Inp.:

AH = 17h

AL = new value for UART's modem control register

DX = port number

Return: nothing

INT 14


INT 14 18-- - FOSSIL - READ BLOCK

Category: S - serial I/O

Inp.:

AH = 18h

CX = maximum number of characters to transfer

DX = port number

ES:DI -> user buffer

Return: AX = number of characters transferred

SeeAlso: AH=19h"FOSSIL",AH=83h"COURIERS",AX=FF02h,INT 6B/AX=0100h

INT 14


INT 14 18-- - Digiboard DigiCHANNEL PC/X* - SEND BIOS COMMAND

Category: S - serial I/O

Inp.:

AH = 18h

ES:BX -> 16-byte command string

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    80h timeout

AL = mailbox status

    00h no errors

    8Xh BIOS error

ES:BX buffer filled in with mailbox string

ZF clear if no errors

ZF set if either status byte contains an error code

SeeAlso: AH=16h"Digiboard"

INT 14


INT 14 18-- - PC-MOS/386 v5.01 $serial.sys v5.04 - GET DRIVER DESCRIPTION

Category: S - serial I/O

Inp.:

AH = 18h

DX = port number

Return: DS:BX -> 40-byte buffer containing a string identifying the serial

driver

SeeAlso: AH=06h"PC-MOS"

INT 14


INT 14 19-- - FOSSIL - WRITE BLOCK

Category: S - serial I/O

Inp.:

AH = 19h

CX = maximum number of characters to transfer

DX = port number

ES:DI -> user buffer

Return: AX = number of characters transferred

SeeAlso: AH=18h"FOSSIL",AH=86h,INT 6B/AX=0000h

INT 14


INT 14 19-- - Digiboard DigiCHANNEL PC/X* - SPECIAL CHARACTER INTERRUPT

Category: S - serial I/O

Inp.:

AH = 19h

BL = flag

    00h disable special character interrupt

    FFh enable interrupt

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: AH = status

    00h successful

    FFh failed

SeeAlso: AH=1Ah"Digiboard"

INT 14


INT 14 19-- - PC-MOS/386 v5.01 $serial.sys v5.04 - SELECTIVE BUFFER FLUSH

Category: S - serial I/O

Inp.:

AH = 19h

AL = what to flush

    bit 0: input buffer

    bit 1: output buffer

DX = port number

Return: nothing

SeeAlso: AH=09h"PC-MOS"

INT 14


INT 14 1A-- - FOSSIL - BREAK BEGIN OR END

Category: S - serial I/O

Inp.:

AH = 1Ah

AL = 00h stop sending 'break'

     01h start sending 'break'

DX = port number

SeeAlso: AH=06h"FOSSIL",AH=8Ah,AH=FAh

INT 14


INT 14 1A-- - Digiboard DigiCHANNEL PC/X - SPECIAL CHARACTER FLAG/COUNTER

Category: S - serial I/O

Inp.:

AH = 1Ah

BX = subfunction

    00h return pointer to special character flag byte

    01h return pointer to special character counter word

DX = port number (00h-03h) (04h-43h for XAPCM232.SYS)

Return: ES:BX -> special character flag or counter

Notes:	flag is FFh if one or more special characters are in the receive

  buffer; it is 00h and the counter is invalid if no special characters

  are in the receive buffer

counter (if valid) contains the number of characters in the receive

  buffer up to and including the last-received special character

INT 14


INT 14 1B-- - FOSSIL - RETURN INFORMATION ABOUT THE DRIVER

Category: S - serial I/O

Inp.:

AH = 1Bh

DX = port number

CX = size of user buffer

ES:DI -> user buffer for driver info (see #0240)

Return: AX = number of characters transferred

CX = 3058h ("0X") (X00 FOSSIL only)

DX = 2030h (" 0") (X00 FOSSIL only)

INT 14


INT 14 1C-- - X00 FOSSIL - ACTIVATE PORT

Category: S - serial I/O

Inp.:

AH = 1Ch

DX = port number

Return: AX = 1954h if successful

BL = maximum function number supported (not including 7Eh and above)

BH = revision of FOSSIL specification supported

Note:	this is a duplicate of AH=04h, so that AH=04h may be made compatible

  with the PS/2 BIOS in a future release

SeeAlso: AH=04h"FOSSIL",AH=1Dh

INT 14


INT 14 1D-- - X00 FOSSIL - DEACTIVATE PORT

Category: S - serial I/O

Inp.:

AH = 1Dh

DX = port number

Return: none

Notes:	this is a duplicate of AH=05h, so that AH=05h may be made compatible

  with the PS/2 BIOS in a future release

ignored if the port was never activated with AH=04h or AH=1Ch

SeeAlso: AH=05h"FOSSIL",AH=1Ch

INT 14


INT 14 1E-- - X00 FOSSIL - EXTENDED LINE CONTROL INITIALIZATION

Category: S - serial I/O

Inp.:

AH = 1Eh

AL = break status

    00h if break

    01h if no break

BH = parity (see #0241)

BL = number of stop bits

    00h one stop bit

    01h two stop bits (1.5 if 5 bit word length)

CH = word length (see #0242)

CL = bps rate (see #0243)

DX = port number

Return: AX = port status code (see #0201,#0202)

Notes:	this function is intended to exactly emulate the PS/2 BIOS AH=04h call

if the port was locked at X00 load time, the appropriate parameters are

  ignored

SeeAlso: AH=00h,AH=04h"SERIAL I/O"

INT 14


INT 14 1E-- - HUNTER 16 - READ COMMS PARAMETERS

Category: S - serial I/O

Inp.:

AH = 1Eh

CX = channel number (00h COM1, 01h COM2, ...)

DS:BX -> buffer for communications parameters (see #0244)

Return: DS:BX buffer filled

Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

SeeAlso: AH=20h"HUNTER"

INT 14


INT 14 1F-- - X00 FOSSIL - EXTENDED SERIAL PORT STATUS/CONTROL

Category: S - serial I/O

Inp.:

AH = 1Fh

AL = 00h read modem control register

      Return: BL = modem control register (see #0246)

      AH = status

AL = 01h write modem control register

      BL = modem control register (see #0246)

      Return: AX = status

DX = port number

Notes:	this function is intended to exactly emulate the PS/2 BIOS AH=05h call

X00 forces BL bit 3 set (interrupts cannot be disabled)

SeeAlso: AH=00h,AH=05h"SERIAL I/O"

INT 14


INT 14 20-- - X00 FOSSIL - DESTRUCTIVE READ WITH NO WAIT

Category: S - serial I/O

Inp.:

AH = 20h

DX = port number

Return: AH = 00h if character was available

    AL = next character (removed from receive buffer)

AX = FFFFh if no character available

SeeAlso: AH=0Ch,AH=21h"X00"

INT 14


INT 14 20-- - Alloy MW386 - ATTACH LOGICAL COMMUNICATIONS PORT TO PHYSICAL PORT

Category: S - serial I/O

Inp.:

AH = 20h

AL = logical port (01h COM1, 02h COM2)

DX = physical port number

Return: AX = status

    0000h successful

    FFFFh failed

SeeAlso: AH=21h"Alloy",AH=22h"Alloy",AH=23h"Alloy",INT 17/AH=8Bh"Alloy"

INT 14


INT 14 20-- - MultiDOS Plus - INITIALIZE PORT

Category: S - serial I/O

Inp.:

AH = 20h

AL = port parameters (see #0197 at AH=00h"SERIAL")

DX = port number (0-3)

Return: AH = status

    00h successful

    41h no such port

    64h monitor mode already active

SeeAlso: AH=00h"SERIAL",AH=04h"MultiDOS",AH=21h"MultiDOS",AH=23h"MultiDOS"

INT 14


INT 14 20-- - PC-MOS/386 v5.01 $serial.sys v5.04 - CHECK OUTPUT QUEUE

Category: S - serial I/O

Inp.:

AH = 20h

DX = port number

Return: AX = number of bytes in output buffer

SeeAlso: AH=0Ah"PC-MOS"

INT 14


INT 14 20-- - HUNTER 16 - SELECT COMMS PARAMETERS

Category: S - serial I/O

Inp.:

AH = 20h

CX = channel number (00h COM1, 01h COM2, ...)

DS:BX -> buffer with communications parameter (see #0244)

Return: AX = status

    0000h successful

    0001h invalid parameter

SeeAlso: AH=1Eh"HUNTER",AH=21h"HUNTER"

INT 14


INT 14 21-- - X00 FOSSIL - STUFF RECEIVE BUFFER

Category: S - serial I/O

Inp.:

AH = 21h

AL = character

DX = port number

Notes:	the given character is inserted at the end of the receive buffer as if

  it had just arrived from the serial port; all normal receive

  processing (XON/XOFF, ^C/^K) is performed on the character

fully re-entrant

SeeAlso: AH=20h"X00"

INT 14


INT 14 21-- - Alloy MW386 v1.x only - RELEASE PHYSICAL COMMUNICATIONS PORT

Category: S - serial I/O

Inp.:

AH = 21h

DX = physical port number

Return: AX = status

    0000h successful

    FFFFh failed

SeeAlso: AH=20h"Alloy",AH=22h"Alloy"

INT 14


INT 14 21-- - MultiDOS Plus - TRANSMIT CHARACTER

Category: S - serial I/O

Inp.:

AH = 21h

AL = character to send

DX = port number

Return: AH = status (see #0247)

Note:	monitor mode must have been turned on with AH=24h before calling

SeeAlso: AH=20h"MultiDOS",AH=22h"MultiDOS",AH=24h"MultiDOS"

INT 14


INT 14 21-- - PC-MOS/386 v5.01 $serial.sys v5.04 - OUTPUT CHARACTER, WITH TIMEOUT

Category: S - serial I/O

Inp.:

AH = 21h

AL = char to send

DX = port number

SI = timeout in timer ticks (0000h = default)

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

SeeAlso: AH=01h,AH=0Eh"PC/MOS",AH=22h"PC-MOS"

INT 14


INT 14 21-- - HUNTER 16 - EXTENDED CONTROL

Category: S - serial I/O

Inp.:

AH = 21h

AL = command

    01h force transmission of buffer

    02h clear transmit buffer

    03h clear receive buffer

DX = port (00h COM1, 01h COM2)

Return: AH = extended status

Desc:	executes the command on the selected port

SeeAlso: AH=1Eh"HUNTER",AH=20h"HUNTER",AH=22h"HUNTER",AH=24h"HUNTER"

INT 14


INT 14 22-- - Alloy MW386 v2+ - RELEASE LOGICAL COMMUNICATIONS PORT

Category: S - serial I/O

Inp.:

AH = 22h

AL = logical port (01h COM1, 02h COM2)

Return: AX = status (0000h successful)

SeeAlso: AH=20h"Alloy",AH=21h"Alloy"

INT 14


INT 14 22-- - MultiDOS Plus - RECEIVE CHARACTER

Category: S - serial I/O

Inp.:

AH = 22h

DX = port number

Return: AH = status (see also AH=21h"MultiDOS")

    00h successful

AL = character

    3Dh framing and parity error

    3Eh overrun error

    3Fh framing error

    40h parity error

    96h ring buffer overflow

Note:	if no character is available, this function waits until a character

  arrives or an implementation-dependent timeout elapses

SeeAlso: AH=20h"MultiDOS",AH=21h"MultiDOS",AH=27h

INT 14


INT 14 22-- - PC-MOS/386 v5.01 $serial.sys v5.04 - RECEIVE CHARACTER, WITH TIMEOUT

Category: S - serial I/O

Inp.:

AH = 22h

DX = port number

SI = timeout in timer ticks (0000h = default)

Return: AH = port status (see also #0201 at AH=03h)

     bit 7 = 1 indicates time-out

AL = character received

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

SeeAlso: AH=02h,AH=0Fh"PC-MOS",AH=21h"PC-MOS"

INT 14


INT 14 22-- - HUNTER 16 - EXTENDED STATUS

Category: S - serial I/O

Inp.:

AH = 22h

DX = port (00h COM1, 01h COM2)

Return: AH = extended status

BX = number of characters in input buffer

CX = number of characters in output buffer

Desc:	returns the most recent Extended Status code for the port

SeeAlso: AH=21h"HUNTER"

INT 14


INT 14 23-- - Alloy MW386 v2+ - GET PORT NUMBER FROM LOGICAL PORT ID

Category: S - serial I/O

Inp.:

AH = 23h

AL = logical port (01h COM1, 02h COM2)

DH = user ID

DL = process ID (DH,DL both FFh for current task)

Return: AL = MW386 port mode (see #0248)

CX = MW386 port number

DH = owner's user ID

DL = owner's task ID

SeeAlso: AH=20h"Alloy",INT 17/AH=8Bh"Alloy"

INT 14


INT 14 23-- - MultiDOS Plus - GET PORT STATUS

Category: S - serial I/O

Inp.:

AH = 23h

DX = port number

Return: AH = line status (see #0201 at AH=03h)

AL = modem status (see #0202 at AH=03h)

SeeAlso: AH=03h,AH=07h"MultiDOS",AH=20h"MultiDOS"

INT 14


INT 14 23-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DECLARE PORT OWNERSHIP

Category: S - serial I/O

Inp.:

AH = 23h

DX = port number

BX = TCB segment/selector address of owner task

Return: nothing

SeeAlso: AH=0Dh"PC-MOS"

INT 14


INT 14 23-- - HUNTER 16 - CONTROL HANDSHAKE LINES

Category: S - serial I/O

Inp.:

AH = 23h

BH = handshake line to set (00h RTS, 01h DTR)

BL = new level (00h low, 01h high)

Desc:	sets the handshake lines of COM1 to the desired level

SeeAlso: AH=21h"HUNTER",AH=24h"HUNTER"

INT 14


INT 14 24-- - Alloy MW386 v2+ - CHANGE PHYSICAL PORT PARAMETERS

Category: S - serial I/O

Inp.:

AH = 24h

CX = physical I/O port number

DS:DX -> configuration table (see #0249)

Return: AH = 00h

Note:	invalid port numbers are merely ignored

SeeAlso: INT 17/AH=96h

INT 14


INT 14 24-- - MultiDOS Plus - SET MONITOR MODE

Category: S - serial I/O

Inp.:

AH = 24h

AL = port status storage

    00h single status for entire receive buffer

    01h separate status kept for each byte in receive buffer

DX = port number

Return: AH = status

    00h successful

    3Ah invalid status storage specified

    41h no such port

    64h monitor mode already active

Note:	in monitor mode, MultiDOS redirects all BIOS video output to a serial

  port

SeeAlso: AH=20h"MultiDOS",AH=25h

INT 14


INT 14 24-- - PC-MOS/386 v5.01 $serial.sys v5.04 - ???

Category: S - serial I/O

Inp.:

AH = 24h

Return: ???

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

INT 14


INT 14 24-- - HUNTER 16 - CONTROL CTS HANDSHAKING

Category: S - serial I/O

Inp.:

AH = 24h

AL = new CTS handshake state for COM1 (00h disabled, 01h enabled)

SeeAlso: AH=23h"HUNTER",AH=25h"HUNTER",AH=26h"HUNTER"

INT 14


INT 14 25-- - MultiDOS Plus - CLEAR BUFFERS

Category: S - serial I/O

Inp.:

AH = 25h

AL = function

    00h only clear buffers

    01h clear buffers and deactivate

DX = port number

Return: AH = status

    00h successful

    3Ah invalid function

    41h no such port

    42h monitor mode not active

SeeAlso: AH=20h"MultiDOS",AH=24h"MultiDOS"

INT 14


INT 14 25-- - HUNTER 16 - CONTROL RS232 DRIVERS

Category: S - serial I/O

Inp.:

AH = 25h

AL = new state of RS232 drivers (00h off, 01h on)

Note:	this function can be used to save power by turning off the RS232

  drivers.  It can also be used to turn on the RS232 drivers before

  connecting to a remote system to avoid "garbage" while the drivers

  turn on.

SeeAlso: AH=23h"HUNTER",AH=24h"HUNTER",AH=26h"HUNTER"

INT 14


INT 14 26-- - HUNTER 16 - CONTROL RI POWER UP

Category: S - serial I/O

Inp.:

AH = 26h

AL = 00h enable RI power up

    else disable RI power up

Desc:	control whether the Ring Indicator handshake can power up the Hunter

INT 14


INT 14 27-- - MultiDOS Plus - GET BUFFER CHARACTER COUNT

Category: S - serial I/O

Inp.:

AH = 27h

DX = port number

Return: AH = status

    00h successful

    41h no such port

    42h monitor mode not active

AL = number of characters in receive buffer

INT 14


INT 14 27-- - HUNTER 16 - GET INSTALLED PROTOCOLS COUNT

Category: S - serial I/O

Inp.:

AH = 27h

AL = number of extended protocols installed (since last call)

Return: AL = total number installed, including new ones

Desc:	Returns the number of extended communication protocols installed

SeeAlso: AH=25h"HUNTER",AH=28h"HUNTER"

INT 14


INT 14 28-- - HUNTER 16 - GET PROTOCOL NAME

Category: S - serial I/O

Inp.:

AH = 28h

AL = protocol handle

DS:BX -> 8 character buffer for protocol name

Return:	AH = status

    00h successful

DS:BX buffer filled with the protocol name

    FFh failed

SeeAlso: AH=27h"HUNTER",AH=29h"HUNTER"

INT 14


INT 14 29-- - HUNTER 16 - GET PROTOCOL HANDLE

Category: S - serial I/O

Inp.:

AH = 29h

DS:BX -> buffer containing the protocol name

Return: AH = status

    00h successful

AL = handle

    FFh failed

SeeAlso: AH=28h"HUNTER",AH=2Ah"HUNTER"

INT 14


INT 14 2A-- - HUNTER 16 - EXTENDED PROTOCOL MENU

Category: S - serial I/O

Inp.:

AH = 2Ah

AL = protocol handle

Return: AH = status

    00h successful

    FFh failed

AL = menu handle

SeeAlso: AH=29h"HUNTER",AH=2Bh"HUNTER"

INT 14


INT 14 2B-- - HUNTER 16 - GET EXTENDED PROTOCOL PARAMETERS

Category: S - serial I/O

Inp.:

AH = 2Bh

AL = protocol handle

DS:BX -> buffer for extended protocol parameters

Return: AH = status

    00h successful

DS:BX buffer filled with extended parameters

    FFh failed

SeeAlso: AH=2Ah"HUNTER"

INT 14


INT 14 2C00 - HUNTER 16 - GET DTR

Category: S - serial I/O

Inp.:

AX = 2C00h

Return: AH = 00h

BL = current state

    00h	 normal DTR operation

    else DTR is forced high

Desc:	Indicates whether the DTR signal on COM1 is forced high

Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

SeeAlso: AH=2Ch"SET DTR"

INT 14


INT 14 2C-- - HUNTER 16 - SET DTR

Category: S - serial I/O

Inp.:

AH = 2Ch

AL nonzero

BL = new state

    00h	 normal operation

    else force DTR high

Return: AH = 00h

Desc:	determine whether the DTR signal on COM1 should be forced high

SeeAlso: AX=2C00h

INT 14


INT 14 36-- - ComShare - INSTALLATION CHECK

Category: N - network

Inp.:

AH = 36h

Return: AX = 4353h ('CS') if installed

    BX = bitmap of installed ports (bit 0: COM1 is gateway, etc.)

    CX reserved for future use

    WORD DX:[0100h] = ComShare version number

Program: The ComShare System is a modem-sharing program for NetBIOS and

  NetWare-based networks by NashaKala Corporation

Note:	ComShare supports the standard BIOS INT 14h calls with a slight

  change in the interpretation of speed values (see #0206 at AH=04h)

SeeAlso: AH=00h,AH=04h,AX=F4FFh

INT 14


INT 14 56-- - BWCOM14 - INSTALLATION CHECK

undocumented function

Category: S - serial I/O

Inp.:

AH = 56h

Return: CX = 0001h if installed

Program: BWCOM14 is a network serial port emulator (simulating a Hayes modem

  connected to the serial port) distributed as part of the

  Beame&Whiteside BW-NFS package

SeeAlso: AH=57h,AH=58h,INT 2F/AX=DF00h/BX=5445h

INT 14


INT 14 57-- - BWCOM14 - INITIALIZE

undocumented function

Category: S - serial I/O

Inp.:

AH = 57h

DL = port number

Return: AL = initialization status (00h successful, 01h already initialized)

CX = port status (0001h port redirected, 0002h and FFFFh failed)

Note:	after this call, all invocations of INT 14/AH=00h-03h for the specified

  port will be handled by BWCOM14 until AH=58h is called

SeeAlso: AH=00h"SERIAL",AH=56h,AH=58h

INT 14


INT 14 58-- - BWCOM14 - SHUTDOWN

undocumented function

Category: S - serial I/O

Inp.:

AH = 58h

Return: CX = status (0001h successful, 0002h not initialized)

Note:	after this call, BWCOM14 will no longer redirect the COM port

SeeAlso: AH=56h,AH=57h

INT 14


INT 14 6F-- - Connection Manager - ???

undocumented function

Category: N - network

Inp.:

AH = 6Fh

BX = FFFEh

???

Return: ???

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

INT 14


INT 14 6F-- - Connection Manager - INSTALLATION CHECK

Category: N - network

Inp.:

AH = 6Fh

BX = FFFFh

Return: DX:BX -> Connection Manager Communication Table if installed

BX = FFFFh if not installed

SeeAlso: AH=0Dh/DX=FFFFh

INT 14


INT 14 6F00 - HP Vectra EX-BIOS - "F14_INQUIRE" - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = 6F00h

BX <> 4850h (usually set to 0000h for simplicity)

Return: BX = 4850h ("HP") if HP Extended BIOS serial port extensions available

AX destroyed

Note:	supported by original HP Vectra AT and by ES/QS/RS series Vectras

SeeAlso: AX=6F01h,AX=6F02h,AX=6F03h,AX=6F04h,INT 10/AX=6F00h,INT 14/AX=6F00h

SeeAlso: INT 17/AX=6F00h,INT 33/AX=6F00h

INT 14


INT 14 6F01 - HP Vectra EX-BIOS - "F14_EXINIT" - INITIALIZE SERIAL PORT

Category: S - serial I/O

Inp.:

AX = 6F01h

BX = port attributes (see #0251)

DX = port number (0-3)

Return: AH = line status (see #0201)

AL = modem status (see #0202)

Note:	supported by original HP Vectra AT and by ES/QS/RS series Vectras

SeeAlso: AX=6F00h

INT 14


INT 14 6F02 - HP Vectra EX-BIOS - "F14_PUT_BUFFER" - TRANSMIT BUFFER

Category: S - serial I/O

Inp.:

AX = 6F02h

CX = number of characters in buffer

DX = port number (0-3)

ES:DI -> buffer containing characters

Return: AH = line status (see #0201)

AL = modem status (see #0202)

CX = number of bytes actually sent

ES:DI -> next byte to be transferred (unchanged if all bytes sent)

Desc:	send characters from the specified buffer until all characters have

  been sent or an error/timeout is encountered

Note:	supported by original HP Vectra AT and by ES/QS/RS series Vectras

SeeAlso: AX=6F00h,AX=6F03h,AX=6F04h,INT 17/AX=6F02h

INT 14


INT 14 6F03 - HP Vectra EX-BIOS - "F14_GET_BUFFER" - READ DATA INTO BUFFER

Category: S - serial I/O

Inp.:

AX = 6F03h

CX = size of buffer

DX = port number (0-3)

ES:DI -> buffer for received characters

Return: AH = line status (see #0201)

---on error (AH bit 7 set)---

   AL = 00h

   ES:DI -> next byte to be transferred

---if successful---

   AL = last byte read

   ES:DI unchanged

CX = number of bytes read

Desc:	read characters into the specified buffer until the buffer is filled

  or a timeout occurs

Notes:	supported by original HP Vectra AT and by ES/QS/RS series Vectras

polls the Data Set Ready modem status and Data Ready line status bits

  to determine when characters are available

SeeAlso: AX=6F00h,AX=6F02h,AX=6F04h

INT 14


INT 14 6F04 - HP Vectra EX-BIOS - "F14_TRM_BUFFER" - READ UNTIL TERMINATOR

Category: S - serial I/O

Inp.:

AX = 6F04h

BL = lowest termination character

BH = highest termination character

CX = size of buffer

DX = port number (0-3)

ES:DI -> buffer for received characters

Return: AH = line status (see #0201)

---on error (AH bit 7 set)---

   AL = 00h

   ES:DI -> next byte to be transferred

---if successful---

   AL = last byte read

   ES:DI unchanged

CX = number of bytes read

Desc:	read characters into the specified buffer until the buffer is filled,

  a character in the specified range is received, or a timeout occurs

Notes:	supported by original HP Vectra AT and by ES/QS/RS series Vectras

polls the Data Set Ready modem status and Data Ready line status bits

  to determine when characters are available

SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h

INT 14


INT 14 7E-- - FOSSIL - INSTALL AN EXTERNAL APPLICATION FUNCTION

Category: S - serial I/O

Inp.:

AH = 7Eh

AL = code assigned to external application (80h-BFh)

    80h reserved for communications FOSSIL

    81h video FOSSIL

    82h reserved for keyboard FOSSIL

    83h reserved for system FOSSIL

ES:DX -> entry point

Return: AX = 1954h

BL = code assigned to application (same as input AL)

DH = 00h failed

     01h successful

SeeAlso: AH=7Fh,AH=80h"FOSSIL",AX=8100h,AH=82h"FOSSIL",AH=83h"FOSSIL"

INT 14


INT 14 7F-- - FOSSIL - REMOVE AN EXTERNAL APPLICATION FUNCTION

Category: S - serial I/O

Inp.:

AH = 7Fh

AL = code assigned to external application

ES:DX -> entry point

Return: AX = 1954h

BL = code assigned to application (same as input AL)

DH = 00h failed

     01h successful

SeeAlso: AH=7Eh

INT 14


INT 14 80-- - COMMUNICATIONS FOSSIL

Category: S - serial I/O

Inp.:

AH = 80h

SeeAlso: AH=7Eh

INT 14


INT 14 80-- - COURIERS.COM - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AH = 80h

Return: AH = E8h if loaded

Program: COURIERS is a TSR utility by PC Magazine

INT 14


INT 14 8000 - ARTICOM - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = 8000h

Return: AL = FFh if installed

    BH = major version

    BL = minor version

Program: ArtiCom is an asynchronous communications driver by Artisoft which

  works on top of NetBIOS and allows modem/serial-port sharing by

  programs using INT 14 for serial I/O.

Note:	ArtiCom supports 32 simultaneous COM ports using multiport cards and

  drivers

SeeAlso: AH=00h,AH=01h,AH=02h,AH=03h,AH=04h,AH=05h,AX=8001h,AX=8002h

INT 14


INT 14 8000 - COMM-DRV v14.0 - READ PORT METRICS - GET ERROR CODE AND BUFFER STATUS

Category: S - serial I/O

Inp.:

AX = 8000h

DX = port number

Return: AX = code for last error (see #0252)

BX = number of characters in output buffer

CX = nubmer of characters in input buffer

DX = state flag (see #0253)

Program: COMM-DRV is a universal serial communications driver by Willies'

  Computer Software Company, which supports standard INT 14 and

  FOSSIL calls as well as its own interfaces

SeeAlso: AX=8001h"COMM-DRV",AX=8002h"COMM-DRV",AX=8003h"COMM-DRV"

INT 14


INT 14 8001 - ARTICOM - UNLOAD ASYNCHRONOUS REDIRECTOR FROM MEMORY

Category: S - serial I/O

Inp.:

AX = 8001h

Return: AX = error code, if error (see #0255)

SeeAlso: AX=8000h"ARTICOM",AX=8002h"ARTICOM",AX=8003h"ARTICOM"

Index:	uninstall;ARTICOM

INT 14


INT 14 8001 - COMM-DRV v14.0 - READ PORT METRICS - GET PORT PARAMETERS

Category: S - serial I/O

Inp.:

AX = 8001h

DX = port number

Return: BX:DI -> Port Control Block (see #0262)

SeeAlso: AX=8000h"COMM-DRV",AX=8002h"COMM-DRV",AX=8003h"COMM-DRV"

INT 14


INT 14 8002 - ARTICOM - GET ASYNCHRONOUS REDIRECTOR STATUS

Category: S - serial I/O

Inp.:

AX = 8002h

ES:DI -> buffer for redirector status structure (see #0254)

Return: AX = error code, if error (see #0255)

SeeAlso: AX=8000h"ARTICOM",AX=8003h"ARTICOM"

INT 14


INT 14 8002 - COMM-DRV v14.0 - READ PORT METRICS - GET PORT PARAMETERS

Category: S - serial I/O

Inp.:

AX = 8002h

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

    BX:DI -> Port Control Block (see #0262) (modifyable portion only)

SeeAlso: AX=8000h"COMM-DRV",AX=8001h"COMM-DRV",AX=8003h"COMM-DRV"

INT 14


INT 14 8003 - ARTICOM - TRANSLATE ERROR CODE TO ERROR STRING

Category: S - serial I/O

Inp.:

AX = 8003h

CX = error number to translate (see #0255)

Return: ES:DI -> ASCIZ error text or 0000h:0000h if unable to translate

SeeAlso: AX=8000h

INT 14


INT 14 8003 - COMM-DRV v14.0 - READ PORT METRICS - GET I/O BUFFER SIZES

Category: S - serial I/O

Inp.:

AX = 8003h

DX = port number

Return: AX = number of characters in input buffer

BX = input buffer size

CX = number of characters in output buffer

DX = output buffer size

SeeAlso: AX=8000h"COMM-DRV",AX=8001h"COMM-DRV",AX=8002h"COMM-DRV"

INT 14


INT 14 8004 - ARTICOM - ATTACH ASYNCHRONOUS RESOURCE

Category: S - serial I/O

Inp.:

AX = 8004h

DX = port to redirect (COM1=0, COM2=1, ...)

CH = attach type

CL = adapter to use for attach, 0FFh to search all

ES:DI -> attachment structure (see #0256)

Return: AX = error code, if error (see #0255)

Note:	The wildcard '*' is supported in the server and resource fields.  If

  wild cards are used then the first matching available server is

  attached.

SeeAlso: AX=8000h,AX=8003h,AX=8005h

INT 14


INT 14 8005 - ARTICOM - DETACH ASYNCHRONOUS RESOURCE

Category: S - serial I/O

Inp.:

AX = 8005h

DX = port to detach (COM1=0, COM2=1, ...)

Return: AX = error code, if error (see #0255)

Note:	only a previously attached resource can be detached

SeeAlso: AX=8000h,AX=8003h,AX=8004h

INT 14


INT 14 8006 - ARTICOM - GET RESOURCE INFORMATION

Category: S - serial I/O

Inp.:

AX = 8006h

BX = remote port (COM1=0, COM2=1, ...)

CL = adapter number, FFh to try all adapters

ES:DI -> resource information structure (see #0257)

DS:SI -> 16 byte server name. See note.

Return: AX = error code, if error (see #0255)

BX = next remote port, recall to get next resource info

Note:	Wild cards supported in both the resource field and server name

  string DS:SI. If wild cards used then first matching available

  resource information is searched. Set the resource field to FFh to

  return all resources.

SeeAlso: AX=8000h,AX=8002h,AX=8003h,AX=8007h

INT 14


INT 14 8007 - ARTICOM - GET REDIRECTED PORT INFORMATION

Category: S - serial I/O

Inp.:

AX = 8007h

DX = port index (COM1=0, COM2=1, ...)

ES:DI -> buffer for port information structure (see #0258)

Return: CF clear if redirection info returned and port is redirected

CF set if not a redirected port

AX = error code, if error (see #0255)

SeeAlso: AX=8000h,AX=8003h,AX=8006h,AX=8008h

INT 14


INT 14 8008 - ARTICOM - GET AVAILABLE SERVER NAME

Category: S - serial I/O

Inp.:

AX = 8008h

BX = server index (0,1,...)

ES:DI -> server name structure (see #0260)

Return: AX = error code, if error (see #0255)

BX = next remote port, repeat call to get next available server

Note:	the wildcard '*' is supported in the server name field.	 Set the

  server name to FFh to search for all servers.

SeeAlso: AX=8000h,AX=8003h,AX=8007h

INT 14


INT 14 8009 - ARTICOM - SET SEND AND RECEIVE TIMEOUTS

Category: S - serial I/O

Inp.:

AX = 8009h

BX = send timeout in ticks

CX = receive timeout in ticks

DX = port index (COM1=0, COM2=1, ...)

Return: nothing

SeeAlso: AX=8000h,AX=800Ah

INT 14


INT 14 800A - ARTICOM - MODIFY FLOW CONTROL

Category: S - serial I/O

Inp.:

AX = 800Ah

BL = flow control type (00h none, 01h XON/XOFF, 02h RTS/CTS)

DX = port index (COM1=0, COM2=1, ...)

Return: AX = error code, if error (see #0255)

Note:	for attached ports only!

SeeAlso: AX=8000h,AX=8003h,AX=8009h

INT 14


INT 14 8025 - ARTICOM - SET INTERNAL SEND/RECEIVE VECTOR

Category: S - serial I/O

Inp.:

AX = 8025h

DS:DX -> address of trap function (see #0261) to call on read/write

Note:	setting the vector to a user function allows the redirector's activity

  to be monitored.

SeeAlso: AX=8000h,AX=8035h,INT 21/AH=25h

INT 14


INT 14 8035 - ARTICOM - GET INTERNAL SEND/RECEIVE VECTOR

Category: S - serial I/O

Inp.:

AX = 8035h

Return: ES:BX -> address of current send/receive routine

Note:	this function returns the address of the routine which is called

  inside A-REDIR.EXE each time a character is received or sent on the

  active COM port.

SeeAlso: AX=8000h,AX=8025h,INT 21/AH=35h

INT 14


INT 14 81-- - COURIERS.COM - CHECK IF PORT BUSY

Category: S - serial I/O

Inp.:

AH = 81h

AL = port number (1-4)

Return: AH = 00h port available

     01h port exists but already in use

     02h port nonexistent

Program: COURIERS is a TSR utility by PC Magazine

SeeAlso: AH=83h,AH=8Dh

INT 14


INT 14 81-- - COMM-DRV - EXTENDED INITIALIZATION

Category: S - serial I/O

Inp.:

AH = 81h

BX:DI -> port control block (see #0262)

DX = port number

Return: AH = line status register (see #0201)

    error if bit 7 set

AL = modem status register (see #0202)

Program: COMM-DRV is a universal serial communications driver by Willies'

  Computer Software Company, which supports standard INT 14 and

  FOSSIL calls as well as its own interfaces

Note:	AX=8001h should be called first to fill in the port control block

SeeAlso: AH=00h,AX=8001h,AH=82h"COMM-DRV",AH=86h"COMM-DRV"

INT 14


INT 14 8100 - VIDEO FOSSIL - RETURN VFOSSIL INFORMATION

Category: V - video

Inp.:

AX = 8100h

ES:DI -> buffer for VFOSSIL information (see #0263)

Return: AX = 1954h if installed

SeeAlso: AH=7Eh,AX=8101h

INT 14


INT 14 8101 - VIDEO FOSSIL - OPEN VFOSSIL

Category: V - video

Inp.:

AX = 8101h

ES:DI -> buffer for application function table (see #0264)

CX = length of buffer in bytes

Return: AX = 1954h if installed

    BH = highest VFOSSIL application function supported

Note:	the number of initialized pointers in the application function table

  will never exceed CX/4; if the buffer is large enough, BH+1 pointers

  will be initialized

SeeAlso: AX=8102h

INT 14


INT 14 8102 - VIDEO FOSSIL - CLOSE VFOSSIL

Category: V - video

Inp.:

AX = 8102h

Return: AX = 1954h

Note:	terminates all operations; after this call, the video FOSSIL may either

  be removed from memory or reinitialized

SeeAlso: AX=8101h,AX=8103h

INT 14


INT 14 8103 - VIDEO FOSSIL - UNINSTALL

Category: V - video

Inp.:

AX = 8103h

Return: AX = 1954h

Note:	this is an extension to the VFOSSIL spec by Bob Hartman's VFOS_IBM

INT 14


INT 14 82-- - KEYBOARD FOSSIL

Category: K - keyboard enhancers

Inp.:

AH = 82h

SeeAlso: AH=7Eh

INT 14


INT 14 82-- - COURIERS.COM - CONFIGURE PORT

Category: S - serial I/O

Inp.:

AH = 82h

AL = port number (1-4)

BX = speed (bps)

CX = bit flags

    bit 0: enable input flow control

    bit 1: enable output flow control

    bit 2: use X.PC protocol (not yet implemented)

SeeAlso: AH=00h,AH=8Ch,INT 7A"X.PC"

INT 14


INT 14 82-- - COMM-DRV v14.0 - PORT CLEANUP

Category: S - serial I/O

Inp.:

AH = 82h

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

Desc:	reset the port to its state before the AH=81h initialization and unhook

  any interrupts used by the port

SeeAlso: AH=81h"COMM-DRV",AH=83h"COMM-DRV"

INT 14


INT 14 83-- - SYSTEM FOSSIL

Category: - - (none)

Inp.:

AH = 83h

SeeAlso: AH=7Eh

INT 14


INT 14 83-- - COURIERS.COM - START INPUT

Category: S - serial I/O

Inp.:

AH = 83h

ES:BX -> circular input buffer

CX = length of buffer

(should be at least 128 bytes if input flow control enabled)

SeeAlso: AH=18h,AH=87h,AH=8Dh,AH=A5h"BAPI"

INT 14


INT 14 83-- - COMM-DRV v14.0 - FLUSH COMMUNICATION BUFFERS

Category: S - serial I/O

Inp.:

AH = 83h

DX = port number

AL = subfunction

    00h flush input buffer

    01h flush output buffer

    02h flush both buffers

Return: AH bit 7 set on error

AH bit 7 clear if successful

SeeAlso: AH=81h"COMM-DRV",AH=84h"COMM-DRV"

INT 14


INT 14 84-- - COURIERS.COM - READ CHARACTER

Category: S - serial I/O

Inp.:

AH = 84h

Return: ZF set if no characters available

ZF clear

   AL = character

   AH = modem status bits

bit 7: set on input buffer overflow

SeeAlso: AH=02h,AH=86h,AH=89h

INT 14


INT 14 84-- - COMM-DRV v14.0 - SEND PACKET

Category: S - serial I/O

Inp.:

AH = 84h

CX = packet length in bytes

DX = port number

ES:DI -> packet to be sent

Return: AH = line status (see #0201)

    bit 7 set on error

AL destroyed

SeeAlso: AH=83h"COMM-DRV",AH=85h"COMM-DRV",AH=86h"COMM-DRV"

INT 14


INT 14 85-- - COURIERS.COM - FLUSH PENDING INPUT

Category: S - serial I/O

Inp.:

AH = 85h

SeeAlso: AH=0Ah,AH=88h"COURIERS"

INT 14


INT 14 85-- - COMM-DRV v14.0 - RECEIVE PACKET

Category: S - serial I/O

Inp.:

AH = 85h

CX = length of packet in bytes

DX = port number

ES:DI -> buffer for packet

Return: AH = line status (see #0201)

    bit 7 set on error

AL destroyed

Note:	this call requires that at least the requested number of bytes are

  already present in the input buffer, and will fail if there are

  fewer bytes available

SeeAlso: AH=84h"COMM-DRV",AH=86h"COMM-DRV",AH=8Eh"COMM-DRV"

INT 14


INT 14 86-- - COURIERS.COM - START OUTPUT

Category: S - serial I/O

Inp.:

AH = 86h

ES:BX -> output buffer

CX = length of output buffer

SeeAlso: AH=19h,AH=83h"COURIERS",AH=A4h"BAPI"

INT 14


INT 14 86-- - COMM-DRV v14.0 - SET INPUT/OUTPUT TIMEOUTS

Category: S - serial I/O

Inp.:

AH = 86h

BL = maximum clock ticks to wait before signalling error on input func

BH = maximum clock ticks to wait before signalling error on output

DX = port number

SI = input timeout in clock ticks if BL=FFh and BH=FFh

DI = output timeout in clock ticks if BL=FFh and BH=FFh

Return: AH bit 7 set on error

AH bit 7 clear if successful

Note:	functions 02h, 85h, and 8Eh will wait for the input timeout before

  returning an error when no data is available; functions 01h and 84h

  will wait for the output timeout before returning an error if there

  is no space to output the data

SeeAlso: AH=01h,AH=02h,AH=84h"COMM-DRV",AH=85h"COMM-DRV",AH=8Eh"COMM-DRV"

INT 14


INT 14 87-- - COURIERS.COM - OUTPUT STATUS

Category: S - serial I/O

Inp.:

AH = 87h

Return: AX = number of unsent characters

SeeAlso: AX=88h"COURIERS"

INT 14


INT 14 87-- - COMM-DRV v14.0 - TURN ON DTR

Category: S - serial I/O

Inp.:

AH = 87h

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

SeeAlso: AX=8000h"COMM-DRV",AH=88h"COMM-DRV",AH=89h"COMM-DRV"

INT 14


INT 14 88-- - COURIERS.COM - ABORT OUTPUT

Category: S - serial I/O

Inp.:

AH = 88h

SeeAlso: AH=09h,AH=85h"COURIERS"

INT 14


INT 14 88-- - COMM-DRV v14.0 - TURN OFF DTR

Category: S - serial I/O

Inp.:

AH = 88h

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

Program: COMM-DRV is a universal serial communications driver by Willies'

  Computer Software Company, which supports standard INT 14 and

  FOSSIL calls as well as its own interfaces

SeeAlso: AX=8000h"COMM-DRV",AH=87h"COMM-DRV",AH=8Ah"COMM-DRV"

INT 14


INT 14 89-- - COURIERS.COM - SEND SINGLE CHARACTER

Category: S - serial I/O

Inp.:

AH = 89h

CL = character to send

SeeAlso: AH=01h,AH=84h"COURIERS"

INT 14


INT 14 89-- - COMM-DRV v14.0 - TURN ON RTS

Category: S - serial I/O

Inp.:

AH = 89h

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

SeeAlso: AX=8000h"COMM-DRV",AH=87h"COMM-DRV",AH=8Ah"COMM-DRV"

INT 14


INT 14 8A-- - COURIERS.COM - SEND BREAK

Category: S - serial I/O

Inp.:

AH = 8Ah

SeeAlso: AH=89h"COURIERS",AH=FAh

INT 14


INT 14 8A-- - COMM-DRV v14.0 - TURN OFF RTS

Category: S - serial I/O

Inp.:

AH = 8Ah

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

SeeAlso: AX=8000h"COMM-DRV",AH=88h"COMM-DRV",AH=89h"COMM-DRV"

INT 14


INT 14 8B-- - COMM-DRV v14.0 - SET USER INTERRUPT ROUTINE

Category: S - serial I/O

Inp.:

AH = 8Bh

CX = bitmask of interrupt to process

    00h = deinstall

BX:DI -> DWORD containing address of function to be called

Return: AH bit 7 clear if successful

AH bit 7 set on error

INT 14


INT 14 8C-- - COURIERS.COM - SET SPEED

Category: S - serial I/O

Inp.:

AH = 8Ch

BX = speed in bps

SeeAlso: AH=00h,AH=82h"COURIERS"

INT 14


INT 14 8C-- - COMM-DRV v14.0 - READ UART REGISTER

Category: S - serial I/O

Inp.:

AH = 8Ch

AL = register offset

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

    AL = contents of UART register

SeeAlso: AH=8Dh"COMM-DRV"

INT 14


INT 14 8D-- - COURIERS.COM - DECONFIGURE PORT

Category: S - serial I/O

Inp.:

AH = 8Dh

SeeAlso: AH=82h"COURIERS"

INT 14


INT 14 8D-- - COMM-DRV v14.0 - WRITE UART REGISTER

Category: S - serial I/O

Inp.:

AH = 8Dh

AL = register offset

BL = new value for UART register

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

SeeAlso: AH=8Ch"COMM-DRV"

INT 14


INT 14 8E-- - COMM-DRV v14.0 - READ PACKET NONDESTRUCTIVELY

Category: S - serial I/O

Inp.:

AH = 8Eh

CX = length of packet in bytes

DX = port number

ES:DI -> buffer for packet

Return: AH = line status (see #0201)

    bit 7 set on error (see AX=8000h"COMM-DRV")

AL destroyed

Program: COMM-DRV is a universal serial communications driver by Willies'

  Computer Software Company, which supports standard INT 14 and

  FOSSIL calls as well as its own interfaces

Desc:	retrieve a packet from the input buffer without removing it from the

  buffer

Note:	this call requires that at least the requested number of bytes are

  already present in the input buffer, and will fail if there are

  fewer bytes available

SeeAlso: AX=8000h"COMM-DRV",AH=84h"COMM-DRV",AH=85h"COMM-DRV",AH=86h"COMM-DRV"

INT 14


INT 14 A0-- - 3com BAPI SERIAL I/O - CONNECT TO PORT

Category: S - serial I/O

Inp.:

AH = A0h

ES:BX -> ASCIZ internet host name

CX = length of name

Return: AH = return code (00h,04h-06h,08h,0Ah-0Ch) (see #0289)

CL = session ID

Program: the Bridge Application Program Interface is a set of functions which

  makes many of the details of LAN communications transparent

Note:	Novell TELAPI.EXE returns AH=09h (not supported) and CL=00h

SeeAlso: AH=A1h"BAPI",AH=A2h"BAPI",AH=A5h"BAPI",AX=AF00h

INT 14


INT 14 A0-- - Interconnections Inc. TES - INSTALLATION CHECK/STATUS REPORT

Category: S - serial I/O

Inp.:

AH = A0h

CX = FFFFh

Return: CF clear if successful

    AX = 5445h ('TE')

    CX <> FFFFh

    DX = port number

CF set on error

Program: TES is a network serial port emulation program

SeeAlso: AH=A1h"TES"

INT 14


INT 14 A1-- - 3com BAPI SERIAL I/O - DISCONNECT FROM PORT

Category: S - serial I/O

Inp.:

AH = A1h

DH = session ID (00h for external session managment)

Return: AH = return code (00h,03h,07h,0Ah,0Bh) (see #0289)

AL destroyed (Novell TELAPI.EXE)

SeeAlso: AH=A0h"BAPI"

INT 14


INT 14 A1-- - Interconnections Inc. TES - GET LIST OF SESSIONS WITH STATUS

Category: S - serial I/O

Inp.:

AH = A1h

Return: CX = number of active sessions

ES:SI -> status array (see #0290)

SeeAlso: AH=A2h"TES",AH=A3h"TES"

INT 14


INT 14 A2-- - 3com BAPI SERIAL I/O - WRITE CHARACTER

Category: S - serial I/O

Inp.:

AH = A2h

AL = character

DH = session ID (00h for external session managment)

Return: AH = return code (00h,01h,03h,07h,0Ah,0Bh) (see #0289)

SeeAlso: AH=A0h"BAPI",AH=A3h"BAPI",AH=A4h"BAPI"

INT 14


INT 14 A2-- - Interconnections Inc. TES - GET LIST OF SERVER NAMES

Category: S - serial I/O

Inp.:

AH = A2h

Return: CX = number of servers

ES:SI -> array of offsets from ES for server names

SeeAlso: AH=A1h"TES"

INT 14


INT 14 A3-- - 3com BAPI SERIAL I/O - READ CHARACTER

Category: S - serial I/O

Inp.:

AH = A3h

DH = session ID (00h for external session managment)

Return: AH = return code (00h,02h,03h,07h,0Ah,0Bh) (see #0289)

AL = character read or 00h if none available

SeeAlso: AH=A0h"BAPI",AH=A2h"BAPI",AH=A5h"BAPI",AH=A7h"BAPI"

INT 14


INT 14 A3-- - Interconnections Inc. TES - START A NEW SESSION

Category: S - serial I/O

Inp.:

AH = A3h

ES:SI -> ???

Return: CF clear if successful

    AX = 5445h ('TE')

    CX <> FFFFh

    DX = port number

CF set on error

SeeAlso: AH=A1h"TES",AH=A4h"TES",AH=A6h"TES"

INT 14


INT 14 A4-- - 3com BAPI SERIAL I/O - WRITE BLOCK

Category: S - serial I/O

Inp.:

AH = A4h

CX = length of buffer in bytes

DH = session ID (00h for external session managment)

ES:BX -> buffer containing data

Return: AH = return code (00h,01h,03h,07h,0Ah,0Bh) (see #0289)

CX = number of bytes actually sent

SeeAlso: AH=19h,AH=86h,AH=A0h"BAPI",AH=A5h"BAPI"

INT 14


INT 14 A4-- - Interconnections Inc. TES - HOLD CURRENTLY ACTIVE SESSION

Category: S - serial I/O

Inp.:

AH = A4h

???

Return: ???

SeeAlso: AH=A3h"TES",AH=A5h"TES"

INT 14


INT 14 A5-- - 3com BAPI SERIAL I/O - READ BLOCK

Category: S - serial I/O

Inp.:

AH = A5h

CX = length of buffer

DH = session ID (00h for external session managment)

ES:BX -> buffer for data

Return: AH = return code (00h,02h,03h,07h,0Ah,0Bh) (see #0289)

CX = number of bytes actually read

SeeAlso: AH=18h,AH=83h"COURIERS",AH=A0h"BAPI",AH=A3h"BAPI",AH=A4h"BAPI"

SeeAlso: AH=A7h"BAPI",AX=FF02h

INT 14


INT 14 A5-- - Interconnections Inc. TES - RESUME A SESSION

Category: S - serial I/O

Inp.:

AH = A5h

AL = session number

Return: ???

SeeAlso: AH=A4h"TES",AH=A6h"TES"

INT 14


INT 14 A6-- - 3com BAPI SERIAL I/O - SEND SHORT BREAK

Category: S - serial I/O

Inp.:

AH = A6h

DH = session ID (00h for external session managment)

Return: AH = return code (00h,03h,07h,0Ah,0Bh) (see #0289)

Desc:	generate a short break signal; if data delivery was turned off by the

  break, wait for the host to turn it on again

SeeAlso: AH=1Ah,AH=8Ah,AH=FAh,AH=A0h"BAPI"

INT 14


INT 14 A6-- - Interconnections Inc. TES - DROP A SESSION

Category: S - serial I/O

Inp.:

AH = A6h

AL = session number

Return: AH = status

    00h successful

    else error

SeeAlso: AH=A3h"TES",AH=A5h"TES"

INT 14


INT 14 A7-- - 3com BAPI SERIAL I/O - READ STATUS

Category: S - serial I/O

Inp.:

AH = A7h

DH = session ID (00h for external session managment)

Return: AH = return code (00h,03h,07h,0Ah,0Bh) (see #0289)

CX = number of bytes available for reading

Note:	Novell TELAPI.EXE v4.01 always returns either 0 or 1 bytes available

SeeAlso: AH=A5h"BAPI"

INT 14


INT 14 A7-- - Interconnections Inc. TES - SWITCH TO NEXT ACTIVE SESSION

Category: S - serial I/O

Inp.:

AH = A7h

???

Return: ???

SeeAlso: AH=A3h"TES",AH=A5h"TES"

INT 14


INT 14 A8-- - Interconnections Inc. TES - SEND STRING TO COMMAND INTERPRETER

Category: S - serial I/O

Inp.:

AH = A8h

AL = 00h no visible response

ES:SI -> ASCIZ command

Return: ???

INT 14


INT 14 A8-- - Novell TelAPI v4.01 - CONNECTION INFORMATION???

Category: N - network

Inp.:

AH = A8h

DH = session ID???

CH = subfunction

    02h ???

    0Dh ???

    0Fh ???

    10h ???

    11h ???

    28h ???

    else

Return: AH = 09h (not supported)

Return: AH = return code (see #0289)

    00h successful

CL = ??? (0/1/8) (subfunctions 02h,0Dh,0Fh,10h)

CL = ??? (7Fh/FFh) (subfunction 28h)

CX = ??? (subfunction 11h)

SeeAlso: AH=A9h"TelAPI"

INT 14


INT 14 A9-- - Novell TelAPI v4.01 - CONNECTION CONTROL???

Category: N - network

Inp.:

AH = A9h

DH = session ID???

CH = subfunction

    02h ???

    0Dh ???

    0Fh ???

    10h ???

    11h ???

    28h ???

    else

Return: AH = 09h (not supported)

???

Return: AH = return code (see #0289)

???

SeeAlso: AH=A8h"TelAPI",AH=E4h,INT 6B/AX=0600h

INT 14


INT 14 AA01 - DimVGA v2.0+ - INSTALLATION CHECK

Category: V - video

Inp.:

AX = AA01h

Return: AX = FFFFh if installed, unchanged

BX = version (v1.5+ only), BH = major, BL = minor (v1.5 = 0105h)

CX = resident segment (v3.1+)

Program: DimVGA is a public domain screen saver by Menno Pieters

SeeAlso: AX=AA02h,AX=AA03h,AX=AA06h,INT 11/AX=0225h/BX=6900h,INT 12"KEYBUI"

SeeAlso: INT 2D/AL=10h"Burnout Plus",INT 2F/AX=6400h,INT 2F/AH=93h

SeeAlso: INT 2F/AX=C000h"VGAsave",INT 2F/AX=C000h"AD-DOS",INT 2F/AX=C050h

SeeAlso: INT 2F/AX=E300h

Index:	screen saver;DimVGA

INT 14


INT 14 AA02 - DimVGA v2.0+ - SET TIME-OUT (DIMMING/BLANKING) PERIOD

Category: V - video

Inp.:

AX = AA02h

BX = number of clock ticks

Return: AX = FFFFh

Note:	on screen modes with 256 or less colors DimVGA will dim the screen,

  when more than 256 colors can be used DimVGA will blank the screen.

SeeAlso: AX=AA01h,AX=AA03h,AX=AA04h,AX=AA06h

Index:	screen saver;DimVGA

INT 14


INT 14 AA03 - DimVGA v2.0+ - SET DIMMING FACTOR

Category: V - video

Inp.:

AX = AA03h

BX = percentage remaining visible (1-99)

Return: AX = FFFFh

SeeAlso: AX=AA02h,AX=AA05h,AX=AA06h

Index:	screen saver;DimVGA

INT 14


INT 14 AA04 - DimVGA v2.0+ - GET TIME-OUT PERIOD

Category: V - video

Inp.:

AX = AA04h

Return: AX = FFFFh

BX = current time-out in clock ticks

SeeAlso: AX=AA02h,AX=AA05h,AX=AA0Ah

Index:	screen saver;DimVGA

INT 14


INT 14 AA05 - DimVGA v2.0+ - GET DIMMING FACTOR

Category: V - video

Inp.:

AX = AA05h

Return: AX = FFFFh

BX = current dimming factor

SeeAlso: AX=AA03h,AX=AA04h,AX=AA0Ah

Index:	screen saver;DimVGA

INT 14


INT 14 AA06 - DimVGA v2.0+ - DISABLE

Category: V - video

Inp.:

AX = AA06h

Return: AX = FFFFh

SeeAlso: AX=AA01h,AX=AA07h,AX=AA0Ah

Index:	screen saver;DimVGA

INT 14


INT 14 AA07 - DimVGA v2.0+ - ENABLE

Category: V - video

Inp.:

AX = AA07h

Return: AX = FFFFh

SeeAlso: AX=AA01h,AX=AA06h,AX=AA0Ah

Index:	screen saver;DimVGA

INT 14


INT 14 AA08 - DimVGA v2.0+ - DIM SCREEN 'MANUALLY'

Category: V - video

Inp.:

AX = AA08h

Return: AX = FFFFh

Note:	this function will dim the screen immediately, even if DimVGA is

  currently disabled

SeeAlso: AX=AA01h,AX=AA02h,AX=AA09h

Index:	screen saver;DimVGA

INT 14


INT 14 AA09 - DimVGA v2.0+ - UNDIM SCREEN 'MANUALLY'

Category: V - video

Inp.:

AX = AA09h

Return: AX = FFFFh

Note:	this function will undim the screen immediately, even if DimVGA is

  currently disabled

SeeAlso: AX=AA01h,AX=AA08h

Index:	screen saver;DimVGA

INT 14


INT 14 AA0A - DimVGA v2.0+ - CHECK WHETHER ENABLED

Category: V - video

Inp.:

AX = AA0Ah

Return: AX = FFFFh

BX = current state (0000h disabled, 0001h enabled)

SeeAlso: AX=AA01h,AX=AA06h,AX=AA07h

Index:	screen saver;DimVGA

INT 14


INT 14 AA0B - DimVGA v2.1+ - SET HOTKEY

Category: V - video

Inp.:

AX = AA0Bh

BH = shift state (see #0291)

BL = keyboard scancode

Return: AX = FFFFh

SeeAlso: AX=AA01h,AX=AA0Ch

Index:	screen saver;DimVGA

INT 14


INT 14 AA0C - DimVGA v2.1+ - GET HOTKEY

Category: V - video

Inp.:

AX = AA0Ch

Return: AX = FFFFh

BH = shift state (see #0291)

BL = keyboard scancode

SeeAlso: AX=AA01h,AX=AA0Bh

Index:	screen saver;DimVGA

INT 14


INT 14 AA0D - DimVGA v3.0+ - SET MOUSE CHECK STATUS

Category: V - video

Inp.:

AX = AA0Dh

BX = new mouse check status

    0000h mouse checking off

    0001h mouse checking on

Return: AX = FFFFh

Note:	before switching mouse checking on, a mouse driver should be

  found in memory. If no mouse driver is found, mouse checking

  should be switched off (resident DimVGA does not check by itself).

SeeAlso: AX=AA01h,AX=AA0Eh

Index:	screen saver;DimVGA

INT 14


INT 14 AA0E - DimVGA v3.0+ - GET MOUSE CHECK STATUS

Category: V - video

Inp.:

AX = AA0Eh

Return: BX = mouse check status (0000h disabled, 0001h enabled)

SeeAlso: AX=AA01h,AX=AA0Dh

Index:	screen saver;DimVGA

INT 14


INT 14 AA0F - DimVGA v3.4 - SET LOCKING STATUS

Category: V - video

Inp.:

AX = AA0Fh

BX = locking status

    0000h disabled

    0001h enabled

Return: AX = FFFFh

SeeAlso: AX=AA01h,AX=AA0Dh,AX=AA10h

Index:	screen saver;DimVGA

INT 14


INT 14 AA10 - DimVGA v3.4 - GET MOUSE CHECK STATUS

Category: V - video

Inp.:

AX = AA10h

Return: BX = locking status (0000h disabled, 0001h enabled)

SeeAlso: AX=AA01h,AX=AA0Dh,AX=AA0Fh

Index:	screen saver;DimVGA

INT 14


INT 14 AF00 - 3com BAPI SERIAL I/O - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = AF00h

BX = AAAAh

Return: AX = AF01h if installed

    BH = protocol type (if BX=AAAAh on entry)

01h NetManage TCP/IP

    BL = version for protocol type (if BX=AAAAh on entry)

Note:	early versions of the BAPI and the ROM BIOS simply destroy AX; this

  behavior is used to determine whether the newer functions (AH=B0h,

  AH=B1h,etc) are available

SeeAlso: AH=A0h"BAPI"

INT 14


INT 14 B0-- - 3com BAPI SERIAL I/O - EN/DISABLE "ENTER COMMAND MODE" (ECM) CHARACTER

Category: S - serial I/O

Inp.:

AH = B0h

AL = new state (00h disabled, 01h enabled)

Return: AH = return code (00h,07h,0Ah) (see #0289)

Note:	disabling the ECM character allows applications to send data which

  includes the ECM character

SeeAlso: AX=AF00h"BAPI",AH=B1h,AH=B2h

INT 14


INT 14 B1-- - 3com BAPI SERIAL I/O - ENTER COMMAND MODE

Category: S - serial I/O

Inp.:

AH = B1h

Return: AH = return code (00h,07h,0Ah) (see #0289)

Desc:	provide a means for the application or terminal emulator to perform

  the same action normally caused by the ECM character

SeeAlso: AH=B0h,AH=B2h

INT 14


INT 14 B2-- - 3com BAPI SERIAL I/O - GET ECM WATCH STATE

Category: S - serial I/O

Inp.:

AH = B2h

Return: AH = return code (00h,07h,0Ah) (see #0289)

AL = watch flag (00h disabled, 01h enabled)

Desc:	determine whether the ECM character is enabled

SeeAlso: AH=B0h,AH=B1h

INT 14


INT 14 B3-- - 3com BAPI SERIAL I/O - GET/SET CONFIGURATION INFO

Category: S - serial I/O

Inp.:

AH = B3h

AL = direction (00h get, 01h set)

DH = session ID (00h for external session managment)

DL = configuration item (00h = end-of-line mapping)

CX = new configuration item value (if AL=01h)

    ---if DL=00h---

    CH = application EOL type (app to Telnet client)

01h application will send lone CR

02h application will send CR-? pair

    CL = driver EOL type (Telnet client to Telnet server)

01h driver should send CR-NUL pair

02h driver should send CR-LF pair

Return: AH = return code (00h,03h,09h-0Bh) (see #0289)

---if AL=00h---

CX = configuration item value (see above)

SeeAlso: AH=B2h

INT 14


INT 14 E0-- - TelAPI - "telopen" - CREATE TELNET CONNECTION (BLOCKING)

Category: N - network

Inp.:

AH = E0h

BX = port number to connect with (default 0017h used if <= 0)

CX:DX = Internet address of remote host

DS:DI -> 2-byte remote host (session) identifier

ES:SI -> 1700-byte buffer for Telnet state record

    0000h:0000h to use TelAPI internally-allocated space

Return: AX = status (0000h-0009h,FED3h,FF37h,FFBDh,FFC0h,FFCDh) (see #2621)

ES:SI buffer filled with state record

ES:SI -> internally-allocated state record in some versions

Note:	the remote host identifier may be used to refer to this connection

SeeAlso: AH=E1h,AH=ECh,AX=FF00h

INT 14


INT 14 E000 - MX5 Extended FOSSIL - GET MNP STATUS BLOCK

Category: S - serial I/O

Inp.:

AX = E000h

DX = port number (0-3)

Return: ES:BX -> status block (see #0292)

Program: MX5 is a FOSSIL driver by MagicSoft which emulates MNP Level 5, and

  ships with the MTEZ terminal program as MTEMNP.DRV (a TSR despite

  the .DRV extension)

SeeAlso: AX=E006h

INT 14


INT 14 E001 - MX5 Extended FOSSIL - GET/SET MNP LEVEL

Category: S - serial I/O

Inp.:

AX = E001h

BH = function

    00h get MNP level

    01h set MNP level

BL = new level (00h none, 02h/04h/05h MNP level N)

DX = port number (0-3)

Return: BL = MNP level

SeeAlso: AX=E002h,AX=E003h,AX=E004h,AX=E006h

INT 14


INT 14 E002 - MX5 Extended FOSSIL - GET/SET MNP ANSWER/ORIGINATE MODE

Category: S - serial I/O

Inp.:

AX = E002h

BH = function

    00h get answer/originate mode

    01h set mode

BL = new mode (00h originate [default], 01h answer)

DX = port number (0-3)

Return: BL = answer/originate mode

SeeAlso: AX=E001h,AX=E003h,AX=E006h

INT 14


INT 14 E003 - MX5 Extended FOSSIL - GET/SET MNP WAIT TICKS

Category: S - serial I/O

Inp.:

AX = E003h

BH = function

    00h get wait ticks

    01h set wait ticks

BL = MNP wait ticks (default 0Eh)

DX = port number (0-3)

Return: BL = wait ticks

SeeAlso: AX=E001h,AX=E002h,AX=E006h

INT 14


INT 14 E004 - MX5 Extended FOSSIL - GET/SET MNP CONNECT SOUND LEVEL

Category: S - serial I/O

Inp.:

AX = E004h

BH = function

    00h get sound level

    01h set sound level

BL = new sound level (00h off, 01h on [default])

DX = port number

Return: BL = sound state

Desc:	specify whether MX5 should generate beeps after an MNP connection

  (three high beeps if successful, high then low on connection failure)

SeeAlso: AX=E002h,AX=E006h

INT 14


INT 14 E005 - MX5 Extended FOSSIL - UNINSTALL

Category: S - serial I/O

Inp.:

AX = E005h

Return: BX = segment of MX5's memory block or 0000h on failure

Note:	caller must free the returned memory block to complete the uninstall

SeeAlso: AX=E006h

INT 14


INT 14 E006 - MX5 Extended FOSSIL - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = E006h

BX = 0000h

Return: BX = 4D58h ('MX') if installed

    AH = major version

    AL = minor version

SeeAlso: AX=E000h,AX=E001h,AX=E005h,AX=E007h

INT 14


INT 14 E007 - MX5 Extended FOSSIL - WAIT SPECIFIED NUMBER OF TICKS

Category: S - serial I/O

Inp.:

AX = E007h

CX = number of ticks to wait

Return: nothing

SeeAlso: AX=E006h

INT 14


INT 14 E1-- - TelAPI - "telclose" - TERMINATE TELNET CONNECTION

Category: N - network

Inp.:

AH = E1h

BX = connection ID

Return: AX = status (0000h,FFF7h,maybe others) (see #2621)

Note:	flushes and releases all buffers and data space used by the connection

SeeAlso: AH=E0h,AH=E6h,AX=FF00h

INT 14


INT 14 E2-- - TelAPI - "telread" - BUFFERED READ

Category: N - network

Inp.:

AH = E2h

BX = connection ID (see AH=E0h"TelAPI")

CX = length of buffer in bytes

ES:SI -> buffer for data

Return: AX > 0000h number of characters actually read

AX = 0000h host has closed connection

AX < 0000h error code (see #2621)

Note:	translates CRLF into local EOL if the connection is in ASCII mode,

  negotiates various Telnet options, and immediately executes several

  different Telnet action commands

SeeAlso: AH=E3h,AH=E6h,AX=FF00h,INT 6B/AH=01h

INT 14


INT 14 E3-- - TelAPI - "telwrite" - BUFFERED WRITE

Category: N - network

Inp.:

AH = E3h

BX = connection ID

CX = length of buffer in bytes

ES:SI -> buffer containing data

Return: AX > 0000h number of characters actually written

AX < 0000h error code (see #2621)

Note:	translates local EOL into CRLF if the connection is in ASCII mode,

  sends the appropriate Telnet commands for the characters selected

  for IP, AYT, AO, EC, EL, and Break

SeeAlso: AH=07h"TelAPI",AH=E2h,AH=E6h,AX=FF00h,INT 6B/AH=00h

INT 14


INT 14 E4-- - TelAPI - "telioctl" - CONNECTION CONTROL

Category: N - network

Inp.:

AH = E4h

BX = connection ID (see AH=E0h"TelAPI")

CX = Telnet command/option identifier (see #2628)

ES:SI -> buffer containing command/option argument (see #2627)

Return: AX = status (0000h, etc.) (see #2621)

Desc:	start filter control, initiate Telnet option negotiation, or get filter

  control status

SeeAlso: AH=A9h,AH=E6h,AX=FF00h,INT 6B/AX=0600h

INT 14


INT 14 E5-- - TelAPI - "telreset" - RESET ALL CONNECTIONS

Category: N - network

Inp.:

AH = E5h

Return: AX = status (0000h,other) (see also #2621)

    FFFFh unable to reset

Desc:	close all sessions and reset TelAPI to defaults

SeeAlso: AH=E1h,AH=E6h,AX=FF00h

INT 14


INT 14 E6-- - TelAPI - "telunload" - UNINSTALL

Category: N - network

Inp.:

AH = E6h

Return: AX = status

    0000h successful

    FFFFh unable to uninstall

Notes:	TelAPI also supports the NASI/NACS and NCSI APIs on INT 6B

this function invokes AH=E5h internally

SeeAlso: AH=E5h,AX=FF00h,INT 6B/AH=00h,INT 6B/AH=10h

INT 14


INT 14 E7-- - TelAPI - "tellist" - GET TELNET SESSION LIST

Category: N - network

Inp.:

AH = E7h

ES:SI -> 10-word buffer for session list

Return: AX = 0000h (successful)

ES:SI buffer filled

Desc:	determine, for each of the ten allowable sessions, whether the session

  is currently available

Note:	each word in the buffer is filled with either 0000h to indicate that

 the corresponding sesion is unavailable, or 0001h if available

SeeAlso: AH=E0h,AH=E5h,AX=FF00h

INT 14


INT 14 E8-- - TelAPI - "telattach" - ATTACH COM PORT TO/FROM TELNET SESSION

Category: N - network

Inp.:

AH = E8h

BX = connection ID (see AH=E0h"TelAPI")

CX = serial port number (0000h-0003h = COM1-COM4)

DX = ??? (ignored by Novell TELAPI v4.01)

Return: AX = status

    0000h successful

    FFFFh failed

SeeAlso: AH=E0h,AH=E9h,AX=FF00h

INT 14


INT 14 E9-- - TelAPI - "telportosn" - GET SESSION NUMBER FOR COM PORT

Category: N - network

Inp.:

AH = E9h

DX = serial port number (0000h-0003h = COM1-COM4)

Return: AX >= 0000h session number

AX < 0000h error code (see #2621)

SeeAlso: AH=E0h,AH=E8h,AH=EAh,AX=FF00h

INT 14


INT 14 EA-- - TelAPI - "telstatus" - GET TELNET CONNECTION STATUS INFORMATION

Category: N - network

Inp.:

AH = EAh

BX = connection ID (see AH=E0h"TelAPI")

ES:SI -> buffer for status info (see #2629)

Return: AX = status (0000h,FFFFh,etc.)

SeeAlso: AH=E9h,AH=EBh,AX=FF00h

INT 14


INT 14 EB-- - TelAPI - "telname" - GET AVAILABLE/INUSE STATUS FOR ALL SESSIONS

Category: N - network

Inp.:

AH = EBh

ES:SI -> buffer for session statuses (see #2630)

Return: ES:SI buffer filled

SeeAlso: AH=E9h,AH=EAh,AX=FF00h

INT 14


INT 14 EC-- - TelAPI - "telnblkopen" - CREATE TELNET CONNECTION (NON-BLOCKING)

Category: N - network

Inp.:

AH = ECh

BX = port number to connect with (default 0017h used if <= 0)

CX:DX = Internet address of remote host

DS:DI -> 2-byte remote host (connection) identifier

ES:SI -> 1700-byte buffer for Telnet state record

    0000h:0000h to use TelAPI internally-allocated space

Return: AX = status (0000h-0009h,FED3h,FF37h,FFBDh,FFC0h,FFCDh) (see #2621)

ES:SI buffer filled with state record

ES:SI -> internally-allocated state record in some versions

Notes:	the remote host identifier may be used to refer to this connection

this function returns immediately; use AH=EDh to check whether the

  connection has been established yet

this function is not supported by the Microdyne TelAPI v3.7

SeeAlso: AH=E0h"TelAPI",AH=EDh,AX=FF00h

INT 14


INT 14 ED-- - TelAPI - "telpoll" - POLL TELNET SESSION FOR CONNECTION COMPLETION

Category: N - network

Inp.:

AH = EDh

BX = connection ID (see AH=ECh)

Return: AX = status (0000h,0001h,FFFFh,etc.) (see also #2621)

    0000h session now connected

    0001h connection still in progress

Note:	this function is not supported by the Microdyne TelAPI v3.7

SeeAlso: AH=EDh,AX=FF00h

INT 14


INT 14 F0F0 - ASAP v1.0 - ???

Category: a - access software (screen readers, etc)

Inp.:

AX = F0F0h

DX = ???

???

Return: ???

Program: ASAP (Automatic Screen Access Program) is a shareware screen reader by

  MicroTalk

SeeAlso: AX=F0F1h

INT 14


INT 14 F0F1 - ASAP v1.0 - INSTALLATION CHECK

Category: a - access software (screen readers, etc)

Inp.:

AX = F0F1h

DX = 0000h

Return: DX = segment of resident code

    0000h if not installed

Program: ASAP (Automatic Screen Access Program) is a shareware screen reader by

  MicroTalk

SeeAlso: AX=F0F0h,INT 10/AX=3800h

INT 14


INT 14 F4FF - IBM/Yale EBIOS SERIAL I/O - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = F4FFh

DX = port (00h-03h)

Return: CF clear if present

    AX = 0000h

CF set if not present

    AX <> 0000h

SeeAlso: AH=36h"ComShare",AH=F9h,AH=FCh

INT 14


INT 14 F9-- - IBM/Yale EBIOS SERIAL I/O - REGAIN CONTROL

Category: S - serial I/O

Inp.:

AH = F9h

DX = port (00h-03h)

SeeAlso: AX=F4FFh

INT 14


INT 14 FA-- - IBM/Yale EBIOS SERIAL I/O - SEND BREAK

Category: S - serial I/O

Inp.:

AH = FAh

DX = port (00h-03h)

SeeAlso: AH=07h"MBBIOS",AH=1Ah,AH=8Ah

INT 14


INT 14 FB-- - IBM/Yale EBIOS SERIAL I/O - SET OUTGOING MODEM SIGNALS

Category: S - serial I/O

Inp.:

AH = FBh

AL = modem control register (see #0231 at AH=05h)

DX = port (00h-03h)

SeeAlso: AH=05h"SERIAL"

INT 14


INT 14 FC-- - IBM/Yale EBIOS SERIAL I/O - READ CHARACTER, NO WAIT

Category: S - serial I/O

Inp.:

AH = FCh

DX = port (00h-03h)

Return: AH = RS232 status bits (see #0201 at AH=03h)

AL = character

SeeAlso: AH=02h,AH=0Ch,AX=FF02h

INT 14


INT 14 FD02 - IBM/Yale EBIOS SERIAL I/O - READ STATUS

Category: S - serial I/O

Inp.:

AX = FD02h

Return: CX = number of characters available

INT 14


INT 14 FF00 - TelAPI - "telcheck" - INSTALLATION CHECK

Category: N - network

Inp.:

AX = FF00h

Return: AX = 00FFh if installed

    BX = version number * 100 (decimal)

SeeAlso: AH=E6h,AX=F4FFh

INT 14


INT 14 FF01 - IBM/Yale EBIOS SERIAL I/O - SET SEND BUFFER

Category: S - serial I/O

Inp.:

AX = FF01h

CX = length of buffer (0000h to cancel buffer assignment)

DX = port (00h-03h)

ES:BX -> send buffer

SeeAlso: AH=18h,AH=83h"COURIERS",AH=A5h"BAPI",AH=FCh,AX=FF02h

INT 14


INT 14 FF02 - IBM/Yale EBIOS SERIAL I/O - SET RECEIVE BUFFER

Category: S - serial I/O

Inp.:

AX = FF02h

CX = length of buffer (0000h to cancel buffer assignment)

DX = port (00h-03h)

ES:BX -> receive buffer

SeeAlso: AH=18h,AH=83h"COURIERS",AH=A5h"BAPI",AH=FCh,AX=FF03h

INT 14


INT 14 FFF8 - COMM-DRV v14.0 - SET BAUD RATE DIVISOR

Category: S - serial I/O

Inp.:

AX = FFF8h

BX = card type (sub-device number)

CX = new baudrate divisor

DX = index to baud rate

Return: AH bit 7 set on error

AH bit 7 clear if successful

Program: COMM-DRV is a universal serial communications driver by Willies'

  Computer Software Company, which supports standard INT 14 and

  FOSSIL calls as well as its own interfaces

SeeAlso: AX=8000h"COMM-DRV"

INT 14


INT 14 FFFB - COMM-DRV v14.0 - GET HIGHEST ALLOWED PORT NUMBER

Category: S - serial I/O

Inp.:

AX = FFFBh

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

    BX = highest port number

INT 14


INT 14 FFFC - COMM-DRV v14.0 - GET INT 14 FLAGS

Category: S - serial I/O

Inp.:

AX = FFFCh

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

    BX = flags (see #0293)

SeeAlso: AX=FFFDh

INT 14


INT 14 FFFD - COMM-DRV v14.0 - SET INT 14 FLAGS

Category: S - serial I/O

Inp.:

AX = FFFDh

BX = flags (see #0293)

DX = port number

Return: AH bit 7 set on error

AH bit 7 clear if successful

SeeAlso: AX=FFFCh

INT 14


INT 14 FFFE - COMM-DRV v14.0 - RESTORE INT 14 VECTOR TO ORIGINAL

Category: S - serial I/O

Inp.:

AX = FFFEh

Return: AH bit 7 set on error

AH bit 7 clear if successful

INT 14


INT 14 FFFF - COMM-DRV v14.0 - GET INT 14 INFORMATION AREA

Category: S - serial I/O

Inp.:

AX = FFFFh

BX:SI -> DWORD buffer for address of information area (see #0294)

  (initialized to zeros)

Return: BX:SI buffer filled with nonzero value if installed

Program: COMM-DRV is a universal serial communications driver by Willies'

  Computer Software Company, which supports standard INT 14 and

  FOSSIL calls as well as its own interfaces

Index:	installation check;COMM-DRV

INT 14


INT 15 ---- - Microsoft TSR Specification

Category: t - TSR libraries

Inp.:

No additional information available at this time.

INT 15


INT 15 00-- - CASSETTE - TURN ON TAPE DRIVE'S MOTOR (PC and PCjr only)

Category: B - BIOS

Inp.:

AH = 00h

Return: CF set on error

    AH = 86h no cassette present

CF clear if successful

SeeAlso: AH=01h"CASSETTE"

INT 15


INT 15 00-- - Amstrad PC1512 - GET AND RESET MOUSE COUNTS

Category: M - mouse/pointing device

Inp.:

AH = 00h

Return: CX = signed X count

DX = signed Y count

INT 15


INT 15 00-- - VMiX v2+ - INSTALLATION CHECK

Category: O - other operating systems

Inp.:

AH = 00h

Return: DX = 0798h if installed

    AX = version (AH = major, AL = minor)

INT 15


INT 15 00-- - MultiDOS Plus - GIVE UP TIME SLICE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 00h

Note:	if issued by the highest-priority task while MultiDOS is using

  priority-based rather than round-robin scheduling, control will be

  returned to the caller immediately

SeeAlso: AH=03h"MultiDOS",AX=1000h

INT 15


INT 15 01-- - CASSETTE - TURN OFF TAPE DRIVE'S MOTOR (PC and PCjr only)

Category: B - BIOS

Inp.:

AH = 01h

Return: CF set on error

    AH = 86h no cassette present

CF clear if successful

SeeAlso: AH=00h"CASSETTE"

INT 15


INT 15 01-- - Amstrad PC1512 - WRITE DATA TO NON-VOLATILE RAM

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 01h

AL = NVRAM location (00h to 3Fh) (see #0295)

BL = NVRAM data value

Return: AH = return code

    00h OK

    01h address bad

    02h write error

SeeAlso: AH=02h"Amstrad"

INT 15


INT 15 01-- - VMiX - "sys_chanreq" - I/O CHANNEL OBJECT MANAGER

Category: O - other operating systems

Inp.:

AH = 01h

STACK:	WORD	object ID of requestor

DWORD	pointer to ASCIZ name of requested method

"assign" assign channel to object

"deassign" deassign channel

"cursor" set cursor on/off

"init" initialize comm port

"open" open I/O channel

"position" set cursor position

"receive" get buffered packet from comm port

"send" send buffered packet to comm port

"vio" set current virtual I/O to specified channel

"window" make window at cursor position

---if "assign"---

 WORD	object UID

 WORD	caller UID/PID

 DWORD	CSL with port

---if "deassign"---

 WORD	channel ID

---if "cursor"---

 WORD	channel ID (must be a SRCSINK)

 WORD	new state (0000h off, 0001h on)

---if "init"---

 WORD	channel ID (must be a SRCSINK)

 WORD	comm port number (00h-03h)

 WORD	UART init code

---if "open"---

 WORD	channel ID

---if "position"---

 WORD	channel ID (must be a SRCSINK)

 WORD	position (high byte = row, low byte = column)

---if "receive"---

 DWORD	pointer to buffer

---if "send"---

 WORD	length of buffer

 DWORD	pointer to buffer

---if "vio"---

 WORD	channel ID (must be a SRCSINK)

---if "window"---

 WORD	top left (high byte = row, low byte = column)

 WORD	bottom right (high byte = row, low byte = column)

Return: DX:AX -> IRP structure or 0000h:0000h

SeeAlso: AH=00h"VMiX",AH=02h"VMiX"

INT 15


INT 15 01-- - MultiDOS Plus - REQUEST RESOURCE SEMAPHORE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 01h

AL = semaphore number (00h-3Fh)

Return: AH = status

    00h successful

    02h invalid semaphore number

Notes:	if the semaphore is not owned, ownership is assigned to the calling

  task and the call returns immediately

if the semaphore is already owned by another task, the calling task

  is placed on a queue for the semaphore and suspended until it can

  become owner of the semaphore

semaphore 0 is used internally by MultiDOS to synchronize DOS access

SeeAlso: AH=02h"MultiDOS",AH=10h"MultiDOS",AH=1Bh"MultiDOS"

INT 15


INT 15 02-- - CASSETTE - READ DATA (PC and PCjr only)

Category: B - BIOS

Inp.:

AH = 02h

CX = number of bytes to read

ES:BX -> buffer

Return: CF clear if successful

    DX = number of bytes read

    ES:BX -> byte following last byte read

CF set on error

AH = status (see #0299)

SeeAlso: AH=00h"CASSETTE",AH=03h"CASSETTE"

INT 15


INT 15 02-- - Amstrad PC1512 - READ DATA FROM NON-VOLATILE RAM

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 02h

AL = NVRAM location (00h to 3Fh)

Return: AH = return code

    00h OK

    01h address bad

    02h checksum error

AL = NVRAM data value

SeeAlso: AH=01h"Amstrad"

INT 15


INT 15 02-- - VMiX - "sys_memreq" - MEMORY OBJECT MANAGER

Category: O - other operating systems

Inp.:

AH = 02h

STACK:	WORD	object ID of requestor

DWORD	pointer to ASCIZ name of requested method

"assign" allocate low memory block

"assign extended" allocate extended memory pages

"assign gdt" allocate GDT selector

"paged" allocate low paged memory

"paged extended" alllocate extended memory pages

"deassign" free memory block

"deassign gdt" free GDT selector

"getvpage" get physical address for virtual page

"setvpage" set physical address for virtual page

"info" get VMiX memory usage info block

"move" move contents of 32-bit memory

"newmcb" make new DOS memory control block

"owner" get process ID of MCB or PSP owner

"umb" allocate upper memory block

"video" toggle system use of vidoe memory and get stat

---if "assign"---

 WORD	number of objects

 WORD	size in bytes (multiple of 512 bytes)

---if "assign extended"---

 WORD	number of objects

 WORD	size in bytes (multiple of 4K)

---if "assign gdt"---

 WORD	access type (low byte)

 WORD	segment size in paragraphs

 DWORD	pointer to start of physical segment

---if "paged"---

 WORD	number of 512-byte pages

---if "paged extended"

 WORD	number of 4K pages

---if "deassign"---

 DWORD	pointer returned by previous allocation call

---if "deassign gdt"---

 WORD	GDT selector

---if "getvpage"---

 WORD	owner's process ID

 DWORD	pointer to buffer for page structure (struct VPGE)

---if "setvpage"---

 WORD	owner's process ID

 DWORD	pointer to new page structure (struct VPGE)

---if "info"---

 no additional arguments

---if "move"

 DWORD	32-bit source address

 DWORD	32-bit destination address

 WORD	number of words to move

---if "newmcb"---

 DWORD	pointer to new MCB's location

 WORD	size of memory block

 DWORD	pointer to ASCIZ name string (max 8 chars)

---if "owner"---

 WORD	MCB or PSP segment

---if "umb"---

 WORD	size in paragraphs

---if "video"---

 no additional arguments

Return: DX:AX -> memory block or VPGE struct or 0000h:0000h

SeeAlso: AH=00h"VMiX",AH=01h"VMiX"

INT 15


INT 15 02-- - MultiDOS Plus - RELEASE RESOURCE SEMAPHORE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 02h

AL = semaphore number (00h-3Fh)

Return: AH = status

    00h successful

    01h not semaphore owner

    02h invalid semaphore number

Notes:	if any tasks are waiting for the semaphore, the first task on the wait

  queue will become the new owner and be reawakened

do not use within an interrupt handler

SeeAlso: AH=01h"MultiDOS",AH=10h"MultiDOS",AH=1Ch"MultiDOS"

INT 15


INT 15 03-- - CASSETTE - WRITE DATA (PC and PCjr only)

Category: B - BIOS

Inp.:

AH = 03h

CX = number of bytes to write

ES:BX -> data buffer

Return: CF clear if successful

    ES:BX -> byte following last byte written

CF set on error

AH = status (see #0299)

CX = 0000h

SeeAlso: AH=00h"CASSETTE",AH=02h"CASSETTE"

INT 15


INT 15 03-- - Amstrad PC1512 - WRITE VDU COLOR PLANE WRITE REGISTER

Category: V - video

Inp.:

AH = 03h

AL = value (I,R,G,B bits)

SeeAlso: AH=04h"Amstrad"

INT 15


INT 15 03-- - VMiX - "sys_pinput" - PROMPTED CONSOLE INPUT

Category: O - other operating systems

Inp.:

AH = 03h

STACK:	DWORD	pointer to ASCII prompt

WORD	field outline character

WORD	length of input field (max 7Fh)

DWORD	address of pointer to input buffer

Return: AX = length of input (input buffer is padded with blanks)

SeeAlso: AH=04h"VMiX"

INT 15


INT 15 03-- - MultiDOS Plus - SUSPEND TASK FOR INTERVAL

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 03h

DX = number of time slices to remain suspended

Return: after specified interval has elapsed

Note:	when priority-based scheduling is in use, high-priority tasks should

  use this function to yield the processor

SeeAlso: AH=00h"MultiDOS",AH=0Ah"MultiDOS"

INT 15


INT 15 04-- - SYSTEM - BUILD ABIOS SYSTEM PARAMETER TABLE (PS)

Category: B - BIOS

Inp.:

AH = 04h

ES:DI -> 32-byte results buffer for System Parameter Table (see #0300)

DS = segment containing ABIOS RAM extensions (zero if none)

Return: CF clear if successful

    AH = 00h success

    ES:DI buffer filled

    AL destroyed

CF set on failure

    AX destroyed

    AH = 80h/86h if not supported

SeeAlso: AH=05h"ABIOS",AH=C1h

INT 15


INT 15 04-- - Amstrad PC1512 - WRITE VDU COLOR PLANE READ REGISTER

Category: V - video

Inp.:

AH = 04h

AL = value (RDSEL1 and RDSEL0)

SeeAlso: AH=03h"Amstrad",05h"Amstrad"

INT 15


INT 15 04-- - VMiX - "sys_vprintf" - FORMATTED OUTPUT TO STREAM

Category: O - other operating systems

Inp.:

AH = 04h

STACK:	DWORD	control string

DWORD	array of arguments

SeeAlso: AH=03h"VMiX"

INT 15


INT 15 04-- - MultiDOS Plus - SEND MESSAGE TO ANOTHER TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 04h

AL = mailbox number (00h-3Fh)

CX = message length in bytes

DS:SI -> message

Return: AH = status

    00h successful

    01h out of message memory

    02h invalid mailbox number

Note:	the message is copied into a system buffer; the caller may immediately

  reuse its buffer

SeeAlso: AH=05h"MultiDOS"

INT 15


INT 15 05-- - SYSTEM - BUILD ABIOS INITIALIZATION TABLE (PS)

Category: B - BIOS

Inp.:

AH = 05h

ES:DI -> results buffer of length 18h * Number_of_Entries (see #0301)

DS = segment containing ABIOS RAM extensions (zero if none)

Return: CF clear if successful

    AH = 00h success

    ES:DI buffer filled

    AL destroyed

CF set on failure

    AX destroyed

    AH = 80h/86h if not supported

SeeAlso: AH=04h"ABIOS",AH=C1h

INT 15


INT 15 05-- - Amstrad PC1512 - WRITE VDU GRAPHICS BORDER REGISTER

Category: V - video

Inp.:

AH = 05h

AL = value (I,R,G,B bits)

SeeAlso: AH=04h"Amstrad"

INT 15


INT 15 05-- - VMiX - "sys_getpid" - GET PROCESS ID OF CURRENT PROCESS

Category: O - other operating systems

Inp.:

AH = 05h

Return: AX = process ID

SeeAlso: AH=06h"VMiX",AH=0Bh"VMiX"

INT 15


INT 15 05-- - MultiDOS Plus - CHECK MAILBOX

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 05h

AL = mailbox number (00h-3Fh)

Return: AH = status

    00h successful

DX = length of first message in queue, 0000h if no message

    02h invalid mailbox number

SeeAlso: AH=04h"MultiDOS",AH=06h"MultiDOS"

INT 15


INT 15 06-- - Amstrad PC1512 - GET ROS VERSION NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

Return: BX = version number

INT 15


INT 15 06-- - VMiX - "sys_getpcb" - GET POINTER TO PROCESS CONTROL BLOCK

Category: O - other operating systems

Inp.:

AH = 06h

STACK:	WORD	process ID

Return: DX:AX -> process control block

SeeAlso: AH=05h"VMiX",AH=07h"VMiX",AH=08h"VMiX"

INT 15


INT 15 06-- - MultiDOS Plus - READ MAILBOX

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 06h

AL = mailbox number (00h-3Fh)

CX = size of buffer in bytes

ES:DI -> buffer for message

Return: AH = status

    00h successful

CX = number of bytes copied

DX = actual length of message

    02h invalid mailbox number

Note:	if the caller's buffer is not large enough, the message is truncated

  and the remainder is lost

SeeAlso: AH=04h"MultiDOS",AH=05h"MultiDOS"

INT 15


INT 15 07-- - VMiX - "sys_getocb" - GET POINTER TO OBJECT CONTROL BLOCK

Category: O - other operating systems

Inp.:

AH = 07h

STACK:	WORD	object type

Return: DX:AX -> object control block

SeeAlso: AH=06h"VMiX",AH=08h"VMiX"

INT 15


INT 15 07-- - MultiDOS Plus - SPAWN INTERNAL TASK (CREATE NEW THREAD)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 07h

BX:CX = entry point of new task

DX = stack size in paragraphs

Return: AH = status

    00h successful

    01h no free task control blocks

    02h no free memory for task's stack

Note:	execution returns immediately to calling task

SeeAlso: AH=08h"MultiDOS",AH=09h"MultiDOS",AH=13h"MultiDOS"

INT 15


INT 15 08-- - VMiX - "sys_getccb" - GET CHANNEL CONTROL BLOCK

Category: O - other operating systems

Inp.:

AH = 08h

STACK:	WORD	channel ID

Return: DX:AX -> channel control block

SeeAlso: AH=06h"VMiX",AH=07h"VMiX"

INT 15


INT 15 08-- - MultiDOS Plus - TERMINATE INTERNAL TASK (KILL THREAD)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 08h

Return: calling task terminated, so execution never returns to caller

Notes:	an internal task must be terminated with this function rather than a

  DOS termination function

task's stack space is returned to parent task's memory pool

SeeAlso: AH=07h"MultiDOS"

INT 15


INT 15 09-- - VMiX - "sys_getqueue" - GET ID OF QUEUED ELEMENT

Category: O - other operating systems

Inp.:

AH = 09h

STACK:	WORD	queue ID (0 = process queue, 1 = object, 3 = type)

WORD	subqueue ID

Return: AX = queue ID

SeeAlso: AH=0Ah"VMiX"

INT 15


INT 15 09-- - MultiDOS Plus - CHANGE TASK'S PRIORITY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 09h

AL = new priority

Note:	the priority has different meanings depending on whether priority-

  based or round-robin scheduling is used

SeeAlso: AH=07h"MultiDOS"

INT 15


INT 15 0A-- - VMiX - "sys_qetqnext" - GET ID OF NEXT QUEUED ELEMENT

Category: O - other operating systems

Inp.:

AH = 0Ah

STACK:	WORD	queue ID (0 = process queue, 1 = object, 3 = type)

WORD	ID of current element in queue chain

Return: AX = ID of next element

SeeAlso: AH=09h"VMiX",AH=0Fh"VMiX"

INT 15


INT 15 0A-- - MultiDOS Plus - CHANGE TIME SLICE INTERVAL

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Ah

AL = new interval

    00h = 55.0 ms (default)

    80h = 27.5 ms

    40h = 13.75 ms

    20h = 6.88 ms

    10h = 3.44 ms

    08h = 1.72 ms

SeeAlso: AH=03h"MultiDOS"

INT 15


INT 15 0B-- - VMiX - "sys_sysreq" - SYSTEM CONFIGURATION MANAGER

Category: O - other operating systems

Inp.:

AH = 0Bh

STACK:	WORD	caller's UID

DWORD	pointer to ASCIZ name of requested method

"abort" abort current send/receive on comm port

"block" start/end critical section

"close" terminate interrupt-drive comm I/O

"open" prepare comm port for interrupt-driven I/O

"delay" set delay timer and wait

"hibernate" put process to sleep

"ints" enable/disable interrupt-driven INT 14h

"length" get current send/receive buffer offsets

"kswitch" switch stacks

"numproc" get number of active processes

"protocol" set protocol function for comm interrupts

"relocate" set/reset VMiX flag for relocating to himem

"status" get current open comm port status

"wake" awaken a process

"xport" get comm port polled for logins

---if "abort"---

 no additional arguments

---if "block"---

 WORD	0000h end, 0001h start

---if "close"---

 no additional arguments

---if "open"---

 WORD	comm port (00h-03h)

 WORD	BIOS parameter byte (see #0197 at INT 14/AH=00h),

except bits 7-5: 000 = 19200, 001 = 38400, 011 = 115200

---if "delay"---

 WORD	time in seconds

---if "hibernate"---

 WORD	process ID

---if "ints"---

 WORD	0000h if no, 0001h if yes

---if "length","numproc","relocate","status","xport"---

 no additional arguments

---if "kswitch"---

 DWORD	pointer to new stack

---if "protocol"---

 DWORD	pointer to function (must be in low "assign"ed memory

when in 386 mode)

---if "wake"---

 WORD	process ID

Return: DX:AX -> result or 0000h:0000h

---if "length"---

 BYTE	receive offset

 BYTE	send offset

---if "kswitch"---

 DWORD	old stack pointer

---if "numproc"---

 WORD	number of active processes

---if "status"---

 current open comm port status

---if "xport"---

 current comm port being polled for logins

Note:	the "delay" command reportedly disables the keyboard until the delay

  completes

SeeAlso: AH=05h"VMiX",AH=0Eh"VMiX"

INT 15


INT 15 0B-- - MultiDOS Plus - FORCE DISPLAY OUTPUT TO PHYSICAL SCREEN MEMORY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Bh

Notes:	sets calling task's screen pointer to actual screen memory; the pointer

  may be restored with AH=0Ch

caller's video mode must be same as foreground task's video mode

any text written while in the background will be saved to the

  foreground task's virtual screen when it switches to the background

useful if a background task wants to display a message on the

  foreground screen

SeeAlso: AH=0Ch"MultiDOS"

INT 15


INT 15 0C-- - VMiX - "sys_getstack" - GET POINTER TO PROCESS TSS STACK

Category: O - other operating systems

Inp.:

AH = 0Ch

STACK:	WORD	process ID

Return: DX:AX -> TSS stack store

SeeAlso: AH=00"VMiX"

INT 15


INT 15 0C-- - MultiDOS Plus - RESTORE OLD VIDEO DISPLAY MEMORY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Ch

Note:	restores task's screen pointer saved by AH=0Bh; must not be called

  unless AH=0Bh has been called first

SeeAlso: AH=0Bh"MultiDOS"

INT 15


INT 15 0D-- - VMiX - "sys_spawn" - START A CHILD PROCESS JOB SHELL

Category: O - other operating systems

Inp.:

AH = 0Dh

STACK:	DWORD	ASCIZ string starting with requested I/O channel and

followed by standard VMiX shell command string

Return: AX = process ID or error code "SYS_ERROR"

Note:	the maximum string length is 7Fh characters

SeeAlso: AH=0Eh"VMIX",AH=11h"VMiX",INT 21/AH=4Bh

INT 15


INT 15 0D-- - MultiDOS Plus - DISABLE MULTITASKING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Dh

Note:	calling task receives all time slices until AH=0Eh is called; this

  allows time-critical events or nonreentrant code to be processed

SeeAlso: AH=0Eh"MultiDOS",AH=10h"MultiDOS",AX=101Bh,AH=20h"MultiDOS"

INT 15


INT 15 0E-- - VMiX - "sys_kill" - HARD TERMINATE PROCESS

Category: O - other operating systems

Inp.:

AH = 0Eh

STACK:	WORD	process ID

Return: AX = status (SYS_OK or SYS_ERROR)

SeeAlso: AH=0Bh"VMiX",AH=0Dh"VMIX"

INT 15


INT 15 0E-- - MultiDOS Plus - ENABLE MULTITASKING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Eh

SeeAlso: AH=0Dh"MultiDOS",AX=101Ch,AH=20h"MultiDOS"

INT 15


INT 15 0F-- - SYSTEM - FORMAT UNIT PERIODIC INTERRUPT (PS ESDI drives only)

callout or callback (usually hooked rather than called)

Category: d - disk I/O enhancements

Inp.:

AH = 0Fh

AL = phase code

    00h reserved

    01h surface analysis

    02h formatting

Return: CF clear if formatting should continue

CF set if formatting should terminate

Note:	called during ESDI drive formatting after each cylinder is completed

SeeAlso: INT 13/AH=1Ah

INT 15


INT 15 0F-- - VMiX - "sys_getqkey" - GET KEY FIELD OF QUEUED ELEMENT

Category: O - other operating systems

Inp.:

AH = 0Fh

STACK:	WORD	queue ID (0 = process queue, 1 = object q, 3 = type q)

WORD	ID of element in queue chain

Return: AX = key

SeeAlso: AH=0Ah"VMiX"

INT 15


INT 15 0F-- - MultiDOS Plus - EXECUTE A MULTIDOS PLUS COMMAND

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Fh

DS:BX -> ASCIZ command

Return: after command has been processed

Notes:	specified string is executed as if it had been typed at the MultiDOS

  command prompt

the task is placed on a queue which MultiDOS examines periodically and

  is suspended until MultiDOS has processed the command

all lowercase characters up to the first blank are converted to upper

  case within the given buffer

INT 15


INT 15 10-- - VMiX - "sys_virtual" - EXECUTE CONFORMING FUNCTION IN PROTECTED MODE

Category: O - other operating systems

Inp.:

AH = 10h

STACK:	DWORD	pointer to function

      N WORDs	function args

Return: AX = function's return value??? (not specified in documentation)

Note:	while the function is executing, the following global descriptors are

  available:

20h stack segment

38h code segment of function

40h data alias for function's code segment

  additional GDT descriptors can be allocated using AH=02h with

  function "assign gdt"

SeeAlso: AH=02h"VMiX",AH=51h"VMiX"

INT 15


INT 15 10-- - MultiDOS Plus - TEST RESOURCE SEMAPHORE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 10h

AL = semaphore number (00h-3Fh)

Return: AH = status

    00h semaphore not in use

    01h semaphore owned by another task

    02h invalid semaphore number

    03h semaphore owned by caller

SeeAlso: AH=02h"MultiDOS",AH=0Dh"MultiDOS",AH=1Dh"MultiDOS"

INT 15


INT 15 1000 - TopView - "PAUSE" - GIVE UP CPU TIME

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1000h

Return: after other processes run

Note:	under DESQview, if the process issuing this call has hooked INT 08h,

  the current time-slice is set to expire at the next clock tick rather

  than immediately

SeeAlso: AH=00h"MultiDOS",AX=5305h,INT 21/AH=89h,INT 21/AH=EEh"DoubleDOS"

SeeAlso: INT 2F/AX=1680h,INT 60/DI=0106h,INT 62/AH=01h,INT 6F/AH=2Ah"F_YIELD"

SeeAlso: INT 7A/BX=000Ah,INT 7F/AH=02h"MultiLink",INT 7F/AH=E8h

INT 15


INT 15 1001 - TopView - "GETMEM" - ALLOCATE "SYSTEM" MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1001h

BX = number of bytes to allocate

Return: ES:DI -> block of memory or 0000h:0000h (DV v2.26+)

AX = status (DV v2.42)

    0000h successful

    0001h failed

Note:	use SETERROR (AX=DE15h) to avoid a user prompt if there is insufficient

  common memory.  Under DV v2.42, this call never generates a user

  prompt regardless of the SETERROR value; instead, it always returns

  AX=0001h and ES:DI=0000h:0000h if out of memory

SeeAlso: AX=1002h,AX=102Eh,AX=DE0Ch,AX=DE15h

INT 15


INT 15 1002 - TopView - "PUTMEM" - DEALLOCATE "SYSTEM" MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1002h

ES:DI -> previously allocated block

Return: block freed

SeeAlso: AX=1001h,AX=DE0Dh

INT 15


INT 15 1003 - TopView - "PRINTC" - DISPLAY CHARACTER/ATTRIBUTE ON SCREEN

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1003h

BH = attribute

BL = character

DX = segment of object handle for window

Note:	BX=0 does not display anything, it only positions the hardware cursor

INT 15


INT 15 10-- - TopView - UNIMPLEMENTED IN DV 2.x

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 10h

AL = 04h thru 12h

Return: pops up "Programming error" window in DV 2.x

INT 15


INT 15 1013 - TopView - "GETBIT" - DEFINE A 2ND-LEVEL INTERRUPT HANDLER

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1013h

ES:DI -> FAR service routine

Return: BX = bit mask indicating which bit was allocated

     0000h if no more bits available

SeeAlso: AX=1014h,AX=1015h

Note:	only a few TopView/DESQview API calls are allowed during a hardware

  interrupt; if other calls need to be made, the interrupt handler

  must schedule a 2nd-level interrupt with "SETBIT" (AX=1015h)

INT 15


INT 15 1014 - TopView - "FREEBIT" - UNDEFINE A 2ND-LEVEL INTERRUPT HANDLER

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1014h

BX = bit mask from INT 15/AX=1013h

SeeAlso: AX=1013h,AX=1015h

INT 15


INT 15 1015 - TopView - "SETBIT" - SCHEDULE ONE OR MORE 2ND-LEVEL INTERRUPTS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1015h

BX = bit mask for interrupts to post

Return: indicated routines will be called: (DV 2.0x) at next task switch

   (DV 2.2x) immediately on return from

     hardware interrupt

SeeAlso: AX=1013h,AX=1014h

Notes:	this is one of the few TopView calls which are allowed from a hardware

  interrupt handler

the handler will be called with ES containing the segment of the handle

  of the next task to be executed; on return, ES must be the segment of

  a task handle

INT 15


INT 15 1016 - TopView - "ISOBJ" - VERIFY OBJECT HANDLE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1016h

ES:DI = possible object handle

Return: BX = status

    FFFFh if ES:DI is a valid object handle (see #0304)

    0000h if ES:DI is not

Note:	under DESQview versions prior to 2.50, an object handle is always a

  pointer to the object; for versions 2.50 and up, only task handles

  are always pointers--other handles may consist of a unique object

  number and offset into DESQview's common memory (see #0313)

SeeAlso: AX=DE14h,AX=DE2Bh,AX=DE2Ch

INT 15


INT 15 1017 - TopView - UNIMPLEMENTED IN DV 2.x

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1017h

Return: pops up "Programming error" window in DV 2.x

INT 15


INT 15 1018 - TopView - "LOCATE" - FIND WINDOW AT A GIVEN SCREEN LOCATION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1018h

BH = column

BL = row

ES = segment of object handle for window below which to search

     0000h = start search with topmost window

Return: ES = segment of object handle for window which is visible at the

       indicated position, or covered by indicated window

    0000h if no window

SeeAlso: AX=1023h,AX=1024h

INT 15


INT 15 1019 - TopView - "SOUND" - MAKE TONE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1019h

BX = frequency in Hertz (0000h = silence)

CX = duration in clock ticks (18.2 ticks/sec)

Return: immediately, tone continues to completion

Notes:	if another tone is already playing, the new tone does not start until

  completion of the previous one.  Up to 32 tones may be queued before

  the process is blocked until a note completes.

in DV 2.00, the lowest tone allowed is 20 Hz

if CX = 0, the current note is cancelled; if BX = 0 as well, all queued

  notes are also cancelled

SeeAlso: AH=82h"HUNTER",INT 16/AH=73h

INT 15


INT 15 101A - TopView - "OSTACK" - SWITCH TO TASK'S INTERNAL STACK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 101Ah

Return: stack switched

Notes:	this call may not be nested; a second call must be preceded by a call

  to "USTACK" (AX=1025h)

while TopView requires many API calls to be executed while on the

  task's internal stack, DESQview allows those calls to be executed

  regardless of the current stack

SeeAlso: AX=1025h

INT 15


INT 15 101B - TopView - "BEGINC" - BEGIN CRITICAL REGION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 101Bh

Return: task-switching temporarily disabled

Notes:	will not task-switch until "ENDC" (AX = 101Ch) called unless task

  voluntarily releases the CPU (upon regaining the CPU, task-switching

  will again be disabled)

suspends the caller until DOS is free

SeeAlso: AH=0Dh"MultiDOS",AX=101Ch,AX=DE13h,AX=DE1Ch,INT 2F/AX=1681h

SeeAlso: INT 60/DI=0602h

INT 15


INT 15 101C - TopView - "ENDC" - END CRITICAL REGION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 101Ch

Return: task-switching enabled

Note:	this API call may be made from within a hardware interrupt handler

SeeAlso: AX=101Bh,AX=DE13h,AX=DE1Bh,INT 2F/AX=1682h,INT 60/DI=0603h

INT 15


INT 15 101D - TopView - "STOP" - STOP TASK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 101Dh

ES = segment of object handle for task to be stopped

     (== handle of main window for that task)

Return: indicated task will not get any CPU time until restarted with AX=101Eh

Note:	once a task has been stopped, additional "STOP"s are ignored

BUG:	in DV 2.00, this function is ignored unless the indicated task is the

  current task

SeeAlso: AX=101Eh,AX=102Bh,AH=12h"VMiX",INT 21/AH=81h

INT 15


INT 15 101E - TopView - "START" - START TASK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 101Eh

ES = segment of object handle for task to be started

     (== handle of main window for that task)

Return: indicated task is started up again

Note:	once a task has been started, additional "START"s are ignored

SeeAlso: AX=101Dh,AX=102Bh,INT 21/AH=82h

INT 15


INT 15 101F - TopView - "DISPEROR" - POP-UP ERROR WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 101Fh

BX = bit fields

     bits 0-12: number of characters to display

     bits 13,14: which mouse button may be pressed to remove window

 00 = either

 01 = left

 10 = right

 11 = either

     bit 15: beep if 1

ES:DI -> text of message

CH = width of error window (0 = default)

CL = height of error window (0 = default)

DX = segment of object handle

Return: BX = status: 1 = left button, 2 = right, 27 = ESC pressed

Note:	window remains on-screen until ESC or indicated mouse button is pressed

INT 15


INT 15 1020 - TopView - UNIMPLEMENTED IN DV v2.00+

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1020h

Return: pops up "Programming error" window in DV v2.00+

INT 15


INT 15 1021 - TopView - "PGMINT" - INTERRUPT ANOTHER TASK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1021h

BX = segment of object handle for task to interrupt (not self)

DX:CX -> FAR routine to jump to next time task is run

Return: nothing

Notes:	the FAR routine is entered with the current ES, DS, SI, DI, and BP

  values, using the task's internal stack (see AX=101Ah); only SS:SP

  needs to be preserved

multiple PGMINTs to a single task are processed last-in first-out

if the other task is in a DOS or DV API call, the interruption will

  occur on return from that call

INT 15


INT 15 1022 - TopView - "GETVER" - GET VERSION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1022h

BX = 0000h

Return: BX nonzero, TopView or compatible loaded

(BL = major version, BH = minor version)

Notes:	TaskView returns BX = 0001h, DESQview v2.00+ returns BX = 0A01h

INT 15


INT 15 1023 - TopView - "POSWIN" - POSITION WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1023h

BX = segment of object handle for parent window within which to

       position the window (0 = full screen)

ES = segment of object handle for window to be positioned

DL = general window position (see #0316)

CH = number of columns to offset from position specified by DL

CL = number of rows to offset from position specified by DL

Return: nothing

INT 15


INT 15 1024 - TopView - "GETBUF" - GET VIRTUAL SCREEN INFO

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1024h

BX = segment of object handle for window

      (0 = use default)

Return: ES:DI -> virtual screen

CX = size of virtual screen in bytes

DL = 00h text screen

     01h graphics screen

SeeAlso: INT 10/AH=FEh,INT 21/AH=2Bh/CX=4445h

INT 15


INT 15 1025 - TopView - "USTACK" - SWITCH BACK TO USER'S STACK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1025h

Return: stack switched back

Notes:	call only after having switched to internal stack with AX=101Ah

while TopView requires many API calls to be executed while on the

  task's private stack, DESQview allows those calls to be executed

  regardless of the current stack

SeeAlso: AX=101Ah

INT 15


INT 15 10-- - DESQview (TopView???) - UNIMPLEMENTED IN DV 2.x

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 10h

AL = 26h thru 2Ah

Return: pops up "Programming error" window in DV 2.x

INT 15


INT 15 102B - DESQview v2.00+ (TopView???) - "POSTTASK" - AWAKEN TASK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 102Bh

BX = segment of object handle for task

Return: nothing

Note:	forces a task which is waiting on its objectq to continue by placing

  the handle for the task on the objectq

SeeAlso: AX=101Dh,AX=101Eh,INT 21/AH=82h

INT 15


INT 15 102C - DESQview v2.00+ - "NEWPROC" - START NEW APPLICATION IN NEW PROCESS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 102Ch

ES:DI -> contents of .PIF/.DVP file (see #0317)

BX = size of .PIF/.DVP info

Return: BX = segment of object handle for new task

     0000h on error

SeeAlso: AX=DE24h,INT 21/AH=4Bh

INT 15


INT 15 102D - DESQview v2.00+ - "KMOUSE" - KEYBOARD MOUSE CONTROL

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 102Dh

BL = subfunction

     00h determine whether using keyboard mouse

Return: BL = 00h using real mouse

     01h using keyboard mouse

     01h turn keyboard mouse on

     02h turn keyboard mouse off

INT 15


INT 15 102E - DESQview v2.40+ - ALLOCATE SYSTEM MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 102Eh

BX = number of bytes

Return: AX = status

    0000h successful

ES:DI -> allocated system memory (see #0323)

    0001h failed

ES:DI = 0000h:0000h

Note:	under DV 2.42, this call is identical to AX=1001h

SeeAlso: AX=1001h,AX=1002h,AX=DE0Ch

INT 15


INT 15 11-- - TopView commands

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 11h

AL = various (except 17h)

Note:	in DESQview 2.x, these function calls are identical to AH=DEh, so

  see those below

SeeAlso: AH=DEh

INT 15


INT 15 11-- - VMiX - "sys_system" - EXECUTE SHELL SYSTEM COMMANDS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 11h

STACK:	DWORD	pointer to ASCIZ string containing a VMiX shell

request (max len = 127)

Return: AX = status (SYS_OK or SYS_ERROR)

SeeAlso: AH=0Ch"VMiX"

INT 15


INT 15 11-- - MultiDOS Plus - TURN OFF AltZ TOGGLE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 11h

Note:	disables the Alt-Z MultiDOS command/program-selection hotkey

SeeAlso: AH=12h"MultiDOS"

Index:	hotkeys;MultiDOS Plus

INT 15


INT 15 1117 - DESQview v2.20+ - "ASSERTMAP" - GET/SET MAPPING CONTEXT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 1117h

BX = 0000h	get current mapping context without setting

     nonzero	set new mapping context

Return: BX = mapping context in effect before call

interrupts enabled

Notes:	this function differs from AX = DE17h for DESQview v2.20 through 2.25

mapping contexts determine conventional-memory addressability; setting

  a mapping context ensures that the associated program and data areas

  are in memory for access.  Usable by drivers, TSRs and shared

  programs.

caller need not be running under DESQview, but must ensure that the

  stack in use will not be mapped out by the call

SeeAlso: AX=DE17h,INT 2F/AX=1685h

INT 15


INT 15 11DE - DESQview - QEXT.SYS - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = 11DEh

Return: CF clear if installed

    AX = segment at which QEXT.SYS is located

Desc:	QEXT.SYS is Quarterdeck's HMA manager for DESQview; more recent

  versions also implement the XMS standard

Note:	a private entry point (see #0324) may be found by searching the

  beginning of the returned segment for the signature string

  "QUARTERDECK EXTENDED MEMORY MANAGER 286"; the word immediately

  prior to the signature contains the QEXT version number in BCD,

  and the word prior to that contains the offset within the QEXT

  code segment of the private entry point

SeeAlso: INT 2F/AX=4310h,INT 67/AH=3Fh

INT 15


INT 15 12-- - VMiX - "sys_sleep" - PUT PROCESS TO SLEEP

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 12h

STACK:	WORD	process ID

Return: AX = status (SYS_OK or SYS_ERROR)

SeeAlso: AH=03h"MultiDOS",AX=101Dh,AH=13h"VMiX"

INT 15


INT 15 12-- - MultiDOS Plus - TURN ON AltZ TOGGLE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 12h

Note:	enables the Alt-Z MultiDOS command/program-selection hotkey

SeeAlso: AH=11h"MultiDOS"

Index:	hotkeys;MultiDOS Plus

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "HANDLE" - RETURN OBJECT HANDLE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 00h

BL = which handle to return

    00h handle in DWORD on top of stack

    01h current task's window handle

    02h given task's mailbox handle (task's handle on stack)

    03h current task's mailbox handle

    04h given task's keyboard handle (task's handle on stack)

    05h current task's keyboard object handle

    06h given task's OBJECTQ handle (task's handle on stack)

    07h current task's OBJECTQ handle

    08h	  \

      thru > return 0000:0000 under DV < 2.26

    10h	  /

    0Ch (2.26+) task owning object with handle in DWORD on top of stack

    0Dh (2.26+) task handle of owner (parent) of current task

Return: DWORD on top of stack is object handle

Note:	BL=0Ch,0Dh returns 00000000h if the object is not open (keyboard,

  mailbox, panel, pointer, and timer objects) or is an orphan (task,

  window)

SeeAlso: AH=12h/BH=02h,AH=12h/BH=80h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "NEW" - CREATE NEW OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 01h

BL = object type to create

    00h (DV 2.0x only) handle is DWORD on top of stack

    01h (DV 2.0x only) use task's window handle

    02h (DV 2.0x only) given task's mailbox (task's handle on stack)

    03h (DV 2.0x only) current task's mailbox

    04h (DV 2.0x only) given task's keyboard (task's handle on stack)

    05h (DV 2.0x only) current task's keyboard object

    08h WINDOW class

    09h MAILBOX class

    0Ah KEYBOARD class

    0Bh TIMER object (counts down 32-bit time in 10ms increments)

    0Fh POINTER object

    10h PANEL object

STACK: (if window object or WINDOW class)

       DWORD address to jump to (no new task if high word == 0)

       DWORD (reserved) 0 = non-task window, FFFFh = task window

       DWORD bytes for task's private stack (FFFFh == default of 0100h)

       DWORD bytes system memory for input buffer for READ/READN

(0 == none, -1 == default--same as logical window size)

       DWORD window size, columns

       DWORD window size, rows

       DWORD length of window title

       DWORD address of window title

Return: DWORD on top of stack is new object handle

Notes:	if a new task is created, it is started with

  AX = BX = SI = DI = BP = 0

  DX:CX = handle of parent task

  DS = ES = SS = segment of private stack (and new task's handle)

new windows are orphans, inherit the colors/hidden status of the

  creating task's window, and are placed in the upper left hand corner

  of the screen but not automatically redrawn

new keyboards are closed, and have all object bits cleared except for

  the hardware cursor bit

SeeAlso: AH=12h/BH=02h,AH=12h/BH=81h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "FREE" - FREE AN OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 02h

BL = object

    00h handle in DWORD on top of stack

window: close window and free

timer: free timer

panel: free panel object

pointer: free pointer

    01h task's window handle - kills task, never returns

    02h given task's mailbox (task's handle on top of stack)

    03h current task's mailbox

    04h given task's keyboard (task's handle on top of stack)

    05h current task's keyboard object

Notes:	when a window is freed, its keyboard and pointer objects are freed;

  task windows also free any mailbox, objectq, and panel objects held

  by the task and any child tasks

if the keyboard being freed is the default keyboard for a task, this

  call is equivalent to CLOSE

panel and pointer objects are automatically closed if open

SeeAlso: AH=12h/BH=01h,AH=12h/BH=0Dh,AH=12h/BH=82h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "ADDR" - GET HANDLE OF MESSAGE SENDER

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 03h

BL = object

    00h mailbox handle in DWORD on top of stack

    02h sender of last msg read from mailbox (task's handle on stack)

    03h sender of last msg read from current task's mailbox

Return: DWORD on stack is task handle of message sender

SeeAlso: AH=12h/BH=00h,AH=12h/BH=83h

INT 15


INT 15 12-- - DESQview v2.26+ - "CONNECT" - CONNECT TWO WINDOWS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 03h

BL = window to be connected

    00h handle of window to be attached in DWORD on top of stack

    01h attach current task's main window

STACK: DWORD handle of window to attach to or 00000000h to detach

Return: STACK popped

Notes:	when two windows are connected, both will move if the user moves either

multiple windows may be attached to a single window, but each window

  may only be attached to one window at a time

SeeAlso: AH=12h/BH=83h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "DIR" - GET PANEL FILE DIRECTORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BX = 0300h

STACK: DWORD handle of panel object (see #0325)

Return: STACK: DWORD length of directory (always multiple of 14 bytes)

       DWORD address of directory

Note:	a null string is returned if the object is not open

SeeAlso: AH=12h/BX=0400h"APPLY",AH=12h/BH=83h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "READ" - READ NEXT LOGICAL LINE OF WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 04h

BL = window to read from

    00h handle is DWORD on top of stack

    01h use calling task's default window

    0Ch (DV 2.26+) default window of task owning handle on top of stack

    0Dh (DV 2.26+) default window of parent task of current task

Return: STACK:	DWORD number of bytes read

DWORD address of buffer

Notes:	reading starts at the current logical cursor position; the cursor is

  updated to point at the character following the last one read

any translucent blanks (FFh) which are visible on screen are changed

  to the character which is seen through them

the string produced by the read is placed in an input buffer which may

  be reused by the next READ or READN of a window

window stream opcodes D8h and D9h determine whether the read returns

  characters or attributes

SeeAlso: AH=12h/BH=05h"WINDOW",AH=12h/BH=12h,AH=12h/BH=84h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "READ" - GET NEXT RECORD FROM OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 04h

BL = object

    00h handle is DWORD on top of stack

mailbox: wait for and get next message

keyboard: wait for and get pointer to next input buffer

pointer: wait for and get next message

    02h get next message from mailbox (task's handle on top of stack)

    03h get next message from current task's mailbox

    04h get the next input from keyboard (handle on top of stack)

    05h get the next input from task's default keyboard

    06h wait for input from any object in OBJECTQ (handle on stack)

    07h wait for input from any object in task's default OBJECTQ

Return: STACK: (if objectq) DWORD handle of object with input

       (otherwise)  DWORD number of bytes

    DWORD address of pointer message (see #0326)

Notes:	for a keyboard in keystroke mode, the input buffer is a single byte

  containing the character code as returned by the BIOS; the BIOS scan

  code is available via the STATUS call if the character is zero

for a keyboard in field mode, the input buffer format is determined

  by the field table header for the window the keyboard is attached to

keyboard input buffers and mailbox message buffers may be invalidated

  by the next READ, ERASE, CLOSE, or FREE message to the same object

SeeAlso: AH=12h/BH=05h"OBJECT",AH=12h/BH=84h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "READ" - WAIT FOR TIMER TO EXPIRE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BX = 0400h

STACK: DWORD timer's handle

Return: after timer expires

STACK: DWORD time in 1/100 sec after midnight when timer expired

SeeAlso: AH=12h/BH=0Ah,AH=12h/BH=84h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "APPLY" - WRITE PANEL TO WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BX = 0400h

STACK: DWORD handle of panel object

       DWORD window's handle (or 0 for current task's window)

       DWORD length of panel name

       DWORD pointer to panel name

Return: STACK: DWORD handle of window which was used

       DWORD handle of keyboard or 0

Notes:	status of APPLY may be checked with STATUS message

panel MUST have the following format

  first byte must be 1Bh (i.e. must start with a stream)

  first opcode in stream must be E5h

    single byte arg of opcode is interpreted thus:

      bits 7,6	11 means create new window

10 means create new field table for existing window

01 means use existing window and field table

      bit 5 if set, panel contains a field table

(creates a new keyboard and puts it in field mode)

      bit 4 if set, panel contains input fields

      bit 3 if set, panel contains select fields but no input fields

if the panel contains input or select fields, a keyboard handle is

  returned; either the window's current open keyboard or a

  newly-created keyboard object.  The caller should read that keyboard

  to obtain input from the panel.

SeeAlso: AH=12h/BH=84h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "WRITE" - WRITE TO OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 05h

BL = object

    00h handle is DWORD on top of stack

timer: start timer to end at a specified time

keyboard: add input buffer to queue

pointer: move pointer icon to specified position

    02h send message by value/status=0 to mbox (task's handle on stack)

    03h send message by value/status=0 to current task's mailbox

    04h add input buffer to KEYBOARD queue (handle on top of stack)

    05h add input buffer to task's default KEYBOARD queue

    06h add an object to OBJECTQ (handle on top of stack)

    07h add an object to task's default OBJECTQ

STACK: (if mailbox)  DWORD length

     DWORD address

       (if keyboard) DWORD status (scan code in keystroke mode)

     DWORD length (should be 1 in keystroke mode)

     DWORD address

       (if objectq)  DWORD handle of object to add

       (if timer)    DWORD 1/100ths seconds since midnight (actually

   only accurate to 1/18 sec)

       (if pointer)  DWORD column relative to origin of window

     DWORD row relative to origin of window

Notes:	under DV 2.2+, failed mailbox writes may return CF set (see AX=DE15h)

the data and status written to a keyboard object must match the format

  returned by the keyboard object in the current mode

the pointer position is scaled according to the current scaling factors

SeeAlso: AH=12h/BH=04h,AH=12h/BH=85h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "WRITE" - WRITE STRING TO WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 05h

BL = window to write to

    00h DWORD on top of stack is window handle

    01h write string to task's default window

    0Ch (DV 2.26+) default window of task owning handle on top of stack

    0Dh (DV 2.26+) default window of parent of current task

STACK: DWORD object handle if handle passed on stack

       DWORD total length of string (high word == 0)

       DWORD address of string to display (see #0328)

Return: indicated actions performed

a. non-control characters are displayed (opcodes DEh and DFh control

   whether the attributes are left or changed to the current attrib)

b. CR/LF/BS/Tab cause the usual cursor movement

c. ESC starts a data structure with additional commands if following

   byte is less than 20h; otherwise, it is written to the window

STACK:	DWORD handle of new window if window stream opcode E6h

else nothing

SeeAlso: AH=12h/BH=04h,AH=12h/BH=85h

INT 15


INT 15 12-- - DESQview 2.20+ - SEND MESSAGE - "SETPRI" - SET PRIORITY WITHIN OBJECTQ

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 06h

BL = object

    00h object handle in DWORD on top of stack

mailbox, keyboard, pointer, or timer

(DV 2.50+) window

    01h (DV 2.50+) current task's window

    04h given task's keyboard (task's handle on top of stack)

    05h current task's default keyboard

STACK: DWORD new priority of object in task's OBJECTQ

(new priority of task if window handle)

Notes:	initially all objects have the same default value.  Should only make

  relative adjustments to this default value.

when changing priorities, all objects already on the objectq are

  reordered

for window handles, only the non-blocked task(s) with the highest

  priority receive CPU time under DESQview 2.50-2.52; the default

  priority is 0Ah

SeeAlso: AH=12h/BH=07h,AH=12h/BH=87h

INT 15


INT 15 12-- - DESQview 2.20+ - SEND MESSAGE - "GETPRI" - GET PRIORITY WITHIN OBJECTQ

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 07h

BL = object

    00h object handle in DWORD on top of stack

mailbox, keyboard, pointer, or timer

(DV 2.50+) window

    01h (DV 2.50+) current task's window

    04h given task's keyboard (task's handle on top of stack)

    05h current task's default keyboard

Return: STACK: DWORD object priority

Note:	initially all objects have the same default value.  Should only make

  relative adjustments to this default value.

SeeAlso: AH=12h/BH=06h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SIZEOF" - GET OBJECT SIZE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 08h

BL = object

    00h handle in DWORD on top of stack

window: total character positions in window

timer: elapsed time since timer started

pointer: number of messages queued to pointer object

panel: number of panels in panel file

keyboard: number of input buffers queued

    01h total chars in current task's default window

    02h number of messages in task's mailbox (task's handle on stack)

    03h number of messages in current task's mailbox

    04h number of input buffers queued in task's kbd (handle on stack)

    05h number of input buffers queued for current task's default kbd

    06h number of objects queued in OBJECTQ (task's handle on stack)

    07h number of objects queued in current task's OBJECTQ

    0Ch (DV 2.26+) total chars in window owning handle on top of stack

    0Dh (DV 2.26+) total chars in parent task's window

Return: DWORD on top of stack is result

Note:	for panel objects, a count of zero is returned if no panel file is open

  for the object

SeeAlso: AH=12h/BH=04h,AH=12h/BH=09h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "LEN" - GET OBJECT LENGTH

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 09h

BL = object

    00h handle in DWORD on top of stack

window: get chars/line

timer: get 1/100 seconds remaining before timer expires

mailbox: (DV/X) get number of bytes queued to mailbox

    01h get number of chars/line in current task's default window

    0Ch (DV 2.26+) get chars/line in window owning handle on top of stk

    0Dh (DV 2.26+) get chars/line in parent task's window

Return: DWORD on top of stack is length

SeeAlso: AH=12h/BH=08h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - WRITE CHARS AND ATTRIBS TO WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Ah

BL = window to write to

    00h window handle is DWORD on top of stack

    01h current task's default window

    0Ch (DV 2.26+) default window of task owning handle on top of stack

    0Dh (DV 2.26+) default window of parent of current task

STACK:	DWORD count of attributes

DWORD address of attribute string

DWORD count of characters

DWORD address of character string

Notes:	if one string is longer than the other, the shorter one will be reused

  until the longer one is exhausted

the cursor is left just after the last character written

SeeAlso: AH=12h/BH=0Bh"WINDOW"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - SEND MAILBOX MESSAGE/STAT BY VALUE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Ah

BL = mailbox to write to

    00h handle is DWORD on top of stack

    02h default mailbox of task whose handle is on top of stack

    03h current task's default mailbox

STACK:	DWORD	status (low byte)

DWORD	length of message

DWORD	address of message

Notes:	the message is copied into either system or common memory

insufficient memory normally causes the process to be aborted; under

  DESQview 2.2+, failed writes may return CF set instead (see AX=DE15h)

SeeAlso: AH=12h/BH=0Bh"MAILBOX"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - SET OBJECT BITS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Ah

BL = object

    00h handle is DWORD on top of stack

timer: start timer for specified interval

pointer: set control flags (see #0340)

keyboard: set control flags (see #0339)

    04h set control flags on KEYBOARD object (handle on top of stack)

    05h set control flags on task's default KEYBOARD object

STACK: (if timer)   DWORD duration in 1/100 seconds

       (otherwise)  DWORD bits to set

SeeAlso: AH=12h/BH=0Bh"OBJECT"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - WRITE ATTRIBUTES TO WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Bh

BL = window to write attributes to

    00h handle is DWORD on top of stack

    01h current task's default window

    0Ch (DV 2.26+) default window of task owning handle on top of stack

    0Dh (DV 2.26+) default window of parent of current task

STACK:	DWORD number of attributes to write

DWORD address of attributes

Note:	the attributes are written starting at the current cursor position; the

  cursor is left just after the last position written

SeeAlso: AH=12h/BH=0Ah"WINDOW"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - SEND MAILBOX MESSAGE/STAT BY REF

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Bh

BL = mailbox to write to

    00h handle is DWORD on top of stack

    02h default mailbox of task whose handle is on top of stack

    03h current task's default mailbox

STACK:	DWORD	status (low byte)

DWORD	length of message

DWORD	address of message

Notes:	only a pointer to the message is stored, but the write may still fail

  due to insufficient memory

under DV 2.2+, failed mailbox writes may return CF set (see AX=DE15h)

SeeAlso: AH=12h/BH=0Ah"MAILBOX"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - REMOVE OBJECT FROM OBJECTQ

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Bh

BL = OBJECTQ from which to remove all copies of a particular object

    06h OBJECTQ of task whose handle is on top of stack

    07h task's default OBJECTQ

STACK:	DWORD	handle of object to remove

Note:	should be sent whenever an object is erased or closed

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - RESET OBJECT BITS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Bh

BL = object

    00h handle is DWORD on top of stack

pointer: reset control flags

keyboard: reset control flags

    04h clear control flags on KEYBOARD object (handle on top of stack)

    05h clear control flags on task's default KEYBOARD object

STACK:	DWORD	which bits to clear (see #0339,#0340)

SeeAlso: AH=12h/BH=0Ah"OBJECT"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "OPEN" - OPEN OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Ch

BL = object

    00h handle is DWORD on top of stack

window:	  fill with given character from scroll origin to end

keyboard: attach to a window

timer:	  open

pointer:  start taking input for window

panel:	  associate with a panel file

    01h fill task's default window with given char from scrl org to end

    02h open given task's mailbox for input (task's handle on stack)

    03h open current task's mailbox

    04h attach a KEYBOARD to a window (handle on top of stack)

    05h attach task's default KEYBOARD to a window

    06h open a task's OBJECTQ (task's handle on top of stack)

    07h open current task's OBJECTQ

    0Ch (DV 2.26+) fill def window of task owning handle on top of stck

    0Dh (DV 2.26+) fill default window of parent of current task

 STACK: (if window)   DWORD character to fill with

(if keyboard) DWORD handle of window to attach to

(if pointer)  DWORD handle of window to attach to

(if panel)    DWORD length of filename or resident panel

      DWORD address of filename or resident panel

(otherwise)   nothing

Notes:	if first byte of panel file name is 1Bh, then the "name" IS a panel

if first two bytes of panel file "name" are C0hC3h, then the "name" IS

  the panel file

result code of open may be retrieved with STATUS message

logical cursor is left at scroll origin after filling window

the task opening a mailbox becomes its owner, and the only task allowed

  to read the mailbox

messages are only sent to a pointer object when the mouse is positioned

  in the window to which the pointer has been attached

there is no need to explicitly open a timer object, as ADDTO and WRITE

  messages automatically open the timer

SeeAlso: AH=12h/BH=0Dh,AH=12h/BH=14h"LOCK"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "CLOSE" - CLOSE OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Dh

BL = object

    00h handle is DWORD on top of stack

timer:	  close

keyboard: detach from window and discard queued input

pointer:  stop taking input

panel:	  close

mailbox:  close, unlock, and discard any pending messages

    02h close given task's mailbox (task's handle on top of stack)

    03h close task's default mailbox

    04h close KEYBOARD object (handle on top of stack)

    05h close task's default KEYBOARD

    06h close given task's OBJECTQ (task's handle on top of stack)

    07h close current task's OBJECTQ

Notes:	when an OBJECTQ is closed, each object in the OBJECTQ is sent an

  ERASE message (AH=12h/BH=0Eh)

when a panel object is closed, the panel file and any panels currently

  in use are freed; window and keyboard objects created by APPLY are

  not affected, but field mode input ceases

open but idle timer objects consume a small amount of CPU time

SeeAlso: AH=12h/BH=0Ch,AH=12h/BH=0Eh,AH=12h/BH=14h"LOCK"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "ERASE" - ERASE OBJECT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Eh

BL = object

    00h handle is DWORD on top of stack

window:	  clear from scroll origin to end of window

keyboard: discard input

timer:	  cancel current interval

pointer:  discard all pending messages

mailbox:  discard all pending messages

    01h clear task's default window from scroll origin to end

    02h discard all queued messages in mailbox (handle on top of stack)

    03h discard all queued messages in current task's default mailbox

    04h discard all input queued to KEYBOARD (handle on top of stack)

    05h discard all input queued to task's default KEYBOARD

    06h remove all objects from OBJECTQ (task's handle on top of stack)

    07h remove all objects from current task's OBJECTQ

    0Ch (DV 2.26+) clear window of task owning handle on top of stack

    0Dh (DV 2.26+) clear default window of parent of current task

Note:	when an OBJECTQ is erased, each object in the OBJECTQ is also erased

SeeAlso: AH=12h/BH=02h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "STATUS" - GET OBJECT STATUS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 0Fh

BL = object

    00h handle is DWORD on top of stack

timer:	 is it running?

pointer: return status of last message

panel:	 verify success of last OPEN or APPLY

    02h return status of last msg READ from mailbox (handle on stack)

    03h return status of last msg READ from task's default mailbox

    04h get stat of last msg from task's KEYBOARD (task handle on stk)

    05h get status of last msg from task's default KEYBOARD

    06h return whether OBJECTQ is open or not (handle on top of stack)

    07h return whether task's default OBJECTQ is open or not

Return: DWORD on top of stack is status

Notes:	if object is a panel object, the status indicates the error code:

  00h successful

  14h panel name not in panel directory

  15h not enough memory to apply panel

  16h invalid panel format

  17h panel file already open

  81h-92h  DOS error codes+80h	\  codes > 80h indicate

  95h not enough memory to open panel file	 > that the panel was

  98h null panel file name	/  not opened

if object is a timer, the status is:

  00000000h open but not running

  40000000h open and running

  80000000h closed

if object is an OBJECTQ, the status is:

  00000000h open

  80000000h closed

if object is a keyboard in keystroke mode, the status is the extended

  character code (scan code) of the last keystroke

if object is a keyboard in field mode, the status indicates the reason

  for the last return from the field manager

  00h Enter key pressed

  01h Button 1 or keystroke selection

  02h Button 2

  03h validation

  04h auto Enter on field

  1Bh Escape pressed

  46h ^Break pressed

  other: extended code for key terminating input

the status of mailbox messages sent by the window manager is always 80h

the status of a pointer message is the same as the status field in the

  message

SeeAlso: AH=12h/BH=04h"READ"

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "EOF" - GET OBJECT EOF STATUS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 10h

BL = object

    00h handle is DWORD on top of stack

window: return TRUE if logical cursor past end of window

mailbox: ???

    01h returns TRUE if logical cursor past end of task's def window

    02h return ??? for task's mailbox (task's handle on top of stack)

    03h return ??? for current task's mailbox

    0Ch (DV 2.26+) check log crsr of window owning handle on top of stk

    0Dh (DV 2.26+) check log cursor of window of parent task

Return: DWORD on top of stack is status

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "AT" - POSITION OBJECT CURSOR

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 11h

BL = window for which to move cursor

    00h window's handle is DWORD on top of stack

    01h task's default window

    0Ch (DV 2.26+) default window of task owning handle on top of stack

    0Dh (DV 2.26+) default window of parent of current task

STACK: DWORD column

       DWORD row

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SETNAME" - ASSIGN NAME TO MAILBOX

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 11h

BL = mailbox to name

    00h DWORD on top of stack is mailbox handle

    02h use given task's mailbox (task's handle on top of stack)

    03h use current task's default mailbox

STACK: DWORD length of name

       DWORD address of name

SeeAlso: AH=12h/BH=12h"GETNAME",AX=DE0Eh

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SETSCALE" - SET POINTER SCALE FACTOR

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BX = 1100h

STACK: DWORD object handle for pointer object

       DWORD number of colums to scale pointer position to

       DWORD number of rows to scale pointer position to

SeeAlso: AH=12h/BX=1200h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "READN" - GET NEXT N OBJECT BYTES

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 12h

BL = window to read from

    00h handle is DWORD on top of stack

    01h read next N chars or attributes on task's default window

    0Ch (DV 2.26+) read window of task owning handle on top of stack

    0Dh (DV 2.26+) read default window of parent of current task

STACK: DWORD count

Return: STACK: DWORD number of bytes actually read

       DWORD address of buffer containing data

Notes:	reading starts at the current logical cursor position; the cursor is

  updated to point at the character following the last one read

any translucent blanks (FFh) which are visible on screen are changed

  to the character which is seen through them

the string produced by the read is placed in an input buffer which may

  be reused by the next READ or READN of a window

window stream opcodes D8h and D9h determine whether the read returns

  characters or attributes

SeeAlso: AH=12h/BH=04h"WINDOW",AH=12h/BH=05h"WINDOW"

INT 15


INT 15 12-- - DESQview 2.50+ - SEND MESSAGE - "GETNAME" - GET NAME OF MAILBOX

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 12h

BL = mailbox for which to retrieve name

    00h DWORD on top of stack is mailbox handle

    02h use given task's mailbox (task's handle on top of stack)

    03h use current task's default mailbox

STACK: DWORD length of buffer for name

       DWORD pointer to buffer

Return: STACK: DWORD length of returned name (or size of buffer, if less)

Program: DESQview 2.5x is distributed as part of DESQview/X 1.0x

Note:	the returned name is not NUL-terminated

SeeAlso: AH=12h/BH=11h"SETNAME",AX=DE0Eh

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "GETSCALE" - GET POINTER SCALE FACTOR

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BX = 1200h

STACK: DWORD object handle for pointer

Return: STACK: DWORD pointer pos scaled as if window were this many colums wide

       DWORD pointer pos scaled as if window were this many rows high

SeeAlso: AH=12h/BX=1100h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "REDRAW" - REDRAW WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 13h

BL = window object

    00h DWORD on top of stack is handle for window to redraw

    01h redraw task's default window

    0Ch (DV 2.26+) redraw window of task owning handle on top of stack

    0Dh (DV 2.26+) redraw default window of parent of current task

SeeAlso: AH=12h/BH=05h"WINDOW",AH=12h/BH=0Eh

INT 15


INT 15 12-- - DESQview 2.50+ - SEND MESSAGE - "READINTO" - GET NEXT MAIL MESSAGE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 13h

BL = mailbox from which to read

    00h DWORD on top of stack is mailbox handle

    02h use given task's mailbox (task's handle on top of stack)

    03h use current task's default mailbox

STACK: DWORD size of buffer in bytes

       DWORD pointer to buffer

Return: STACK: DWORD number of bytes read

Program: DESQview 2.5x is distributed as part of DESQview/X 1.0x

Notes:	this call blocks if no input is available, but will return less than

  the requested number of bytes if some (but insufficient) data is

  available

use this call instead of AH=12h/BH=04h if the mailbox has flag bits

  4 or 5 set, as common memory may be exhausted by that call when

  attempting to read the next message

SeeAlso: AH=12h/BH=04h"READ",AH=12h/BH=05h,AH=12h/BH=16h

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SETICON" - SPECIFY POINTER ICON

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BX = 1300h

STACK: DWORD object handle for pointer

       DWORD character to use for pointer

Return: STACK popped

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "SETESC" - SET ESCAPE ROUTINE ADDRESS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 14h

BL = message modifier

    00h handle is DWORD on top of stack

    01h define user stream

    04h intercept keystrokes from KEYBOARD to window (handle on stack)

    05h intercept keystrokes from task's default KEYBOARD to a window

STACK: (if window)   DWORD user stream number (14h-1Fh)

     DWORD address of FAR user stream handler

       (if keyboard) DWORD address of FAR filter function (see #0341)

Return: STACK popped

INT 15


INT 15 12-- - TopView - SEND MESSAGE - "LOCK" - REQUEST EXCLUSIVE ACCESS TO RESOURCE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 14h

BL = object

    00h mailbox handle is DWORD on top of stack

    02h use given task's mailbox (task's handle on top of stack)

    03h use current task's default mailbox

Return: STACK popped if BL=00h

Note:	release exclusive access by sending CLOSE message to mailbox

access may be requested multiple times, and requires multiple CLOSEs

SeeAlso: AH=12h/BH=0Dh

INT 15


INT 15 12-- - DESQview v2.20+ - SEND MESSAGE - "SETFLAGS" - SET OBJECT FLAGS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 15h

BL = object

    00h DWORD on top of stack

mailbox, keyboard, or pointer only

    02h mailbox for task whose handle is on top of stack

    03h mailbox for current task

    04h keyboard for task whose handle is on top of stack

    05h keyboard for current task

STACK: DWORD flags (see #0342,#0343)

Return: STACK popped

Notes:	only available if the API level has been set to at least 2.20

equivalent to performing SUBFROM and ADDTO calls on the object

if a mailbox has bits 4 or 5 set, you must use "READINTO" rather than

  "READ" (see AH=12h/BX=1300h"READINTO") to retrieve messages

SeeAlso: AH=12h/BH=0Ah,AH=12h/BH=0Bh,AH=12h/BH=16h

INT 15


INT 15 12-- - DESQview v2.20+ - SEND MESSAGE - "GETFLAGS" - GET OBJECT FLAGS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 16h

BL = object

    00h DWORD on top of stack

mailbox, keyboard, or pointer only

    02h mailbox for task whose handle is on top of stack

    03h mailbox for current task

    04h keyboard for task whose handle is on top of stack

    05h keyboard for current task

Return: STACK: DWORD current control flags (see #0342,#0343)

Notes:	only available if the API level has been set to at least 2.20

if a mailbox has bits 4 or 5 set, you must use "READINTO" rather than

  "READ" (see AH=12h/BH=13h"READINTO") to retrieve messages

SeeAlso: AH=12h/BH=0Ah,AH=12h/BH=0Bh,AH=12h/BH=13h"READINTO",AH=12h/BH=15h

INT 15


INT 15 12-- - DESQview v2.42-2.52 - BUG

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 17h

BL = object

    00h DWORD on top of stack

mailbox, keyboard, or pointer only

    02h mailbox for task whose handle is on top of stack

    03h mailbox for current task

    04h keyboard for task whose handle is on top of stack

    05h keyboard for current task

Notes:	due to a fencepost error, message 17h is accepted for mailboxes,

  keyboards, and pointers, but causes a random branch

DESQview v2.50-2.52 are distributed as part of DESQview/X v1.02

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 00h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 80h

Note:	this function is identical to AH=12h/BH=00h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=00h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 01h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 81h

Note:	this function is identical to AH=12h/BH=01h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=01h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 02h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 82h

Note:	this function is identical to AH=12h/BH=02h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=02h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 03h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 83h

Note:	this function is identical to AH=12h/BH=03h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=03h,AH=12h/BX=0300h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 04h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 84h

Note:	this function is identical to AH=12h/BH=04h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=04h,AH=12h/BX=0400h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 05h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 85h

Note:	this function is identical to AH=12h/BH=05h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=05h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 06h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 86h

Note:	this function is identical to AH=12h/BH=06h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=06h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 07h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 87h

Note:	this function is identical to AH=12h/BH=07h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=07h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 08h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 88h

Note:	this function is identical to AH=12h/BH=08h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=08h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 09h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 89h

Note:	this function is identical to AH=12h/BH=09h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=09h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Ah WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 8Ah

Note:	this function is identical to AH=12h/BH=0Ah, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=0Ah

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Bh WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 8Bh

Note:	this function is identical to AH=12h/BH=0Bh, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=0Bh

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Ch WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 8Ch

Note:	this function is identical to AH=12h/BH=0Ch, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=0Ch

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Dh WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 8Dh

Note:	this function is identical to AH=12h/BH=0Dh, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=0Dh

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Eh WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 8Eh

Note:	this function is identical to AH=12h/BH=0Eh, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=0Eh

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Fh WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 8Fh

Note:	this function is identical to AH=12h/BH=0Fh, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=0Fh

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 10h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 90h

Note:	this function is identical to AH=12h/BH=10h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=10h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 11h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 91h

Note:	this function is identical to AH=12h/BH=11h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=11h,AH=12h/BX=1100h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 12h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 92h

Note:	this function is identical to AH=12h/BH=12h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=12h,AH=12h/BX=1200h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 13h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 93h

Note:	this function is identical to AH=12h/BH=13h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=13h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 14h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 94h

Note:	this function is identical to AH=12h/BH=14h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=14h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 15h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 95h

Note:	this function is identical to AH=12h/BH=15h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=15h

INT 15


INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 16h WITH ERROR RECOVERY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 12h

BH = 96h

Note:	this function is identical to AH=12h/BH=16h, except that DESQview will

  not pop up a "Programming Error" window, instead returning an error

  code in AL (see #0344)

SeeAlso: AH=12h/BH=16h

INT 15


INT 15 13-- - VMiX - "sys_wake" - WAKE SLEEPING PROCESS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 13h

STACK:	WORD	process ID

Return: AX = status (SYS_OK or SYS_ERROR)

SeeAlso: AH=12h"VMiX"

INT 15


INT 15 13-- - MultiDOS Plus - GET TASK CONTROL BLOCK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 13h

Return: BX:AX -> task control block (see #0345)

SeeAlso: AH=15h"MultiDOS"

INT 15


INT 15 14-- - VMiX - "sys_clrwindow" - CLEAR WINDOW

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 14h

STACK:	WORD	top left corner of window (high byte = row, low = col)

WORD	bottom right corner of window (high = row, low = col)

Return: AX = status (SYS_OK)

Note:	clears window to color set with "sys_setcolors" (AH=18h)

SeeAlso: AH=15h"VMiX",AH=16h"VMiX",AH=18h"VMiX",AH=1Fh"VMiX"

INT 15


INT 15 14-- - MultiDOS Plus - CHECK IF MultiDOS FOREGROUND OR BACKGROUND

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 14h

Return: AX = current state

    0000h MultiDOS Plus command prompt is background task

    0001h command prompt is foreground task

SeeAlso: AH=0Bh"MultiDOS"

INT 15


INT 15 15-- - VMiX - "sys_setbwindow" - SET BANNER WINDOW MESSAGE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 15h

STACK:	DWORD	pointer to ASCIZ banner message for top of screen

Return: AX = status (SYS_OK)

SeeAlso: AH=14h"VMiX",AH=16h"VMiX"

INT 15


INT 15 15-- - MultiDOS Plus - GET SYSTEM BLOCK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 15h

Return: BX:AX -> system block (see #0346)

SeeAlso: AH=13h"MultiDOS"

INT 15


INT 15 16-- - VMiX - "sys_setwindow" - SET ROOT WINDOW SIZE AND HOME CURSOR

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 16h

STACK:	DWORD	pointer to I/O Request Packet

WORD	top left corner of window (high byte = row, low = col)

WORD	bottom right corner of window (high = row, low = col)

Return: AX = status (SYS_OK or SYS_ERROR)

SeeAlso: AH=14h"VMiX",AH=17h"VMiX"

INT 15


INT 15 16-- - MultiDOS Plus - INITIALIZATION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 16h

Note:	used internally during initialization; any other calls will cause

  unpredictable results

INT 15


INT 15 17-- - VMiX - "sys_getcolors" - GET CONSOLE WINDOW COLORS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 17h

Return: AH = foreground color

AL = background color

SeeAlso: AH=16h"VMiX",AH=18h"VMiX"

INT 15


INT 15 17-- - MultiDOS Plus - MAP IRQ

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 17h

AL = IRQ to map (01h-0Fh)

BX = offset of task control block (see #0345) to associate with IRQ

Return: AX = status

    0000h successful

    other invalid IRQ

Note:	the EMS map of the specified TCB is associated with the given interrupt

SeeAlso: AH=18h"MultiDOS",AH=19h"MultiDOS"

INT 15


INT 15 18-- - VMiX - "sys_setcolors" - SET CONSOLE COLORS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 18h

STACK:	WORD	new background/foreground colors

bits 3-0: foreground

bits 7-4: background

bits 15-8: unused

Return: AX = color

SeeAlso: AH=14h"VMiX",AH=17h"VMiX",AH=19h"VMiX"

INT 15


INT 15 18-- - MultiDOS Plus - UNMAP IRQ

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 18h

AL = IRQ to unmap (01h-0Fh)

Return: AX = status

    0000h successful

    0001h invalid IRQ

Note:	results are unpredictable if the IRQ has not been mapped

SeeAlso: AH=17h"MultiDOS",AH=19h"MultiDOS"

INT 15


INT 15 19-- - VMiX v2+ - "sys_setconwn" - SET WINDOW COLORS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 19h

STACK:	WORD	new background/foreground colors

bits 3-0: foreground

bits 7-4: background

bits 15-8: unused

Return: AX = color

SeeAlso: AH=18h"VMiX"

INT 15


INT 15 19-- - MultiDOS Plus - UNMAP ALL IRQs

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 19h

Return: AX destroyed

Note:	for MultiDOS internal use only

SeeAlso: AH=17h"MultiDOS",AH=18h"MultiDOS"

INT 15


INT 15 1A-- - VMiX v2+ - "sys_sint" - INVOKE SOFTWARE INTERRUPT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Ah

STACK:	WORD	interrupt number

DWORD	pointer to register structure

Return: AX = returned flags

INT 15


INT 15 1A-- - MultiDOS Plus - MAP SEMAPHORE NAME TO NUMBER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Ah

DS:SI -> 8-byte name

Return: AL = status

    00h successful

AH = semaphore number (20h-3Fh)

    04h out of string space

Notes:	all eight bytes of the name are significant

if the name does not already exist, it is added to the name table and

  associated with a free semaphore number

names cannot be destroyed

SeeAlso: AH=1Bh"MultiDOS",AH=1Ch"MultiDOS",AH=1Dh"MultiDOS"

INT 15


INT 15 1B-- - VMiX v2+ - "sys_blkmov" - MOVE MEMORY BLOCK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Bh

STACK:	DWORD	source address

DWORD	destination address

WORD	number of words to move

Return: nothing

INT 15


INT 15 1B-- - MultiDOS Plus - REQUEST RESOURCE SEMAPHORE BY NAME

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Bh

DS:SI -> 8-byte name

Return: AH = status

    00h successful

    02h invalid semaphore number

    03h caller already owns semaphore

    04h out of string space

Notes:	(see AH=01h"MultiDOS")

equivalent to AH=1Ah followed by AH=01h

SeeAlso: AH=01h"MultiDOS",AH=1Ah"MultiDOS",AH=1Ch"MultiDOS",AH=1Dh"MultiDOS"

INT 15


INT 15 1C-- - VMiX v2+ - "sys_bitblt" - PUT GRAPHICAL OBJECT AT CURSOR POSITION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Ch

STACK:	WORD	AND/OR pixel with background (00h = OR, 01h = AND)

DWORD	pointer to object bitmap

WORD	object width in pixels

WORD	object height in pixels

Return: nothing

SeeAlso: AH=1Dh"VMiX"

INT 15


INT 15 1C-- - MultiDOS Plus - RELEASE RESOURCE SEMAPHORE BY NAME

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Ch

DS:SI -> 8-byte name

Return: AH = status

    00h successful

    01h not semaphore owner

    02h invalid semaphore number

    04h out of string space

Notes:	(see AH=02h"MultiDOS")

equivalent to AH=1Ah followed by AH=02h

SeeAlso: AH=02h"MultiDOS",AH=1Ah"MultiDOS",AH=1Bh"MultiDOS",AH=1Dh"MultiDOS"

INT 15


INT 15 1D-- - VMiX v2+ - "sys_getfont" - GET CURRENT CONSOLE GRAPHICS FONT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Dh

Return: AX = current font number (00h-03h)

SeeAlso: AH=1Ch"VMiX",AH=1Eh"VMiX"

INT 15


INT 15 1D-- - MultiDOS Plus - TEST RESOURCE SEMAPHORE BY NAME

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Dh

DS:SI -> 8-byte name

Return: AH = status

    00h semaphore not in use

    01h semaphore owned by another task

    02h invalid semaphore number

    03h caller owns semaphore

    04h out of string space

Notes:	(see AH=10h"MultiDOS")

equivalent to AH=1Ah followed by AH=10h

SeeAlso: AH=10h"MultiDOS",AH=1Ah"MultiDOS",AH=1Bh"MultiDOS",AH=1Ch"MultiDOS"

INT 15


INT 15 1E-- - VMiX v2+ - "sys_setfont" - SET CONSOLE GRAPHICS FONT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Eh

STACK: WORD new font number (00h-03h)

Return: AX = current font number (00h-03h)

SeeAlso: AH=1Dh"VMiX"

INT 15


INT 15 1E00 - MultiDOS Plus - CLEAR EVENT COUNTER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 1E00h

DX = event/trigger number (00h-3Fh)

Return: AH = status

    00h successful

SeeAlso: AX=1E01h,AX=1E02h

INT 15


INT 15 1E01 - MultiDOS Plus - TRIGGER EVENT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 1E01h

DX = event/trigger number (00h-3Fh)

Return: AH = status

    00h successful

    01h invalid event/trigger number

Notes:	schedules any task waiting for event; if no task is waiting, the event

  counter is incremented (and will roll over if it was 65535)

may be invoked by interrupt handler

SeeAlso: AX=1E00h,AX=1E02h

INT 15


INT 15 1E02 - MultiDOS Plus - WAIT FOR EVENT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 1E02h

DX = event/trigger number (00h-3Fh)

Return: AH = status

    00h successful

    01h invalid event/trigger number

Note:	if the event counter is zero, the task is suspended until the event is

  triggered with AX=1E01h; else, the counter is decremented and the

  call returns immediately

SeeAlso: AX=1E00h,AX=1E01h

INT 15


INT 15 1E08 - MultiDOS Plus 4.01 - SET CONTEXT-SWITCH FUNCTIONS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 1E08h

DX:BX -> context save handler (see #0347)

DX:CX -> context restore handler (see #0347)

Note:	handlers may be removed by setting addresses to 0000h:0000h

INT 15


INT 15 1F-- - VMiX v2.???+ - "sys_scrollwin" - SCROLL WINDOW

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Fh

STACK:	WORD	top left corner of window (high byte = row, low = col)

WORD	bottom right corner of window

Return: AX = status (SYS_OK)

SeeAlso: AH=14h"VMiX",AH=18h"VMiX"

INT 15


INT 15 1F-- - MultiDOS Plus v4.01 - GET MEMORY PARAMETERS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 1Fh

Return: BX = first segment of conventional memory

DX = first segment of EMS swap frame into which MultiDOS will load

programs

INT 15


INT 15 20-- - MultiDOS Plus v4.01 - CHECK IF MULTITASKING ENABLED

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 20h

Return: AX = current state

    0000h multitasking enabled

    other TCB of task that disabled multitasking

SeeAlso: AH=0Dh"MultiDOS",AH=13h"MultiDOS"

INT 15


INT 15 2000 - DOS 3.0+ PRINT.COM - DISABLE CRITICAL REGION FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 2000h

Desc:	stop setting user flag on entry to PRINT critical region

Note:	also supported by PC Network v1.00 RECEIVER.COM

SeeAlso: AX=2001h

INT 15


INT 15 2001 - DOS 3.0+ PRINT.COM - SET CRITICAL REGION FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 2001h

ES:BX -> byte which is to be incremented while in a DOS call

Desc:	specify a user flag which PRINT should set to let an interested

  application know it is in a critical region

Note:	also supported by PC Network v1.00 RECEIVER.COM

SeeAlso: AX=2000h

INT 15


INT 15 2010 - OS HOOK - SETUP SYSREQ ROUTINE (AT,XT286,PS50+)

Category: O - other operating systems

Inp.:

AX = 2010h

???

Return: ???

SeeAlso: AX=2011h

INT 15


INT 15 2011 - OS HOOK - COMPLETION OF SYSREQ FUNCTION (AT,XT286,PS50+)

Category: O - other operating systems

Inp.:

AX = 2011h

???

Return: ???

SeeAlso: AX=2010h

INT 15


INT 15 21-- - SYSTEM - POWER-ON SELF-TEST ERROR LOG (PS50+)

Category: B - BIOS

Inp.:

AH = 21h

AL = subfunction

    00h read POST log

    01h write POST log

BH = device ID

BL = error code

Return: CF set on error

AH = status (00h OK, 01h list full, 80h invalid cmd, 86h unsupported)

if function 00h:

   BX = number of error codes stored

   ES:DI -> error log

Notes:	the log is a series of words, the first byte of which identifies the

  error code and the second the device.

supported by AMI PCI BIOS

INT 15


INT 15 22-- - SYSTEM - later PS/2s - LOCATE ROM BASIC

Category: B - BIOS

Inp.:

AH = 22h

Return: CF set on error

    AH = status (86h if function not supported)

CF clear on success

    AH = 00h

    ES:BX -> ROM BASIC

Note:	if this function is not supported, ROM BASIC is at F600h:0000h

SeeAlso: INT 86"BASIC",INT F0"BASIC"

INT 15


INT 15 2300 - SYSTEM - PS/1s - GET ??? CMOS DATA

undocumented function

Category: B - BIOS

Inp.:

AX = 2300h

Return: CF clear if successful

    CL = value of CMOS location 2Dh

    CH = value of CMOS location 2Eh

CF set on error

    AH = error code (80h,86h)

SeeAlso: AX=2301h,AX=2304h,AX=2305h

INT 15


INT 15 2301 - SYSTEM - PS/1s - SET ??? CMOS DATA

undocumented function

Category: B - BIOS

Inp.:

AX = 2301h

CL = new value for CMOS location 2Dh

CH = new value for CMOS location 2Eh

Return: CF clear if successful

CF set on error

    AH = error code (80h,86h)

Note:	sets the contents of CMOS locations 2Dh and 2Eh

SeeAlso: AX=2300h,AX=2304h,AX=2305h

INT 15


INT 15 2304 - SYSTEM - PS/1s - SYSTEM SETUP

undocumented function

Category: B - BIOS

Inp.:

AX = 2304h

DX = segment of 32K buffer

Return: CF clear if successful

    AX = 0003h (left over from setting video mode 3)

    BX,CX,DX,BP,DS,ES destroyed

CF set on error

    AH = error code (80h,86h)

SeeAlso: AX=2301h,AX=2305h

INT 15


INT 15 2305 - SYSTEM - PS/1s - GET PROCESSOR SPEED

undocumented function

Category: - - (none)

Inp.:

AX = 2305h

Return: CF clear if successful

    AL = processor speed in MHz

CF set on error

    AL = FFh (speed > 80 MHz)

    AL = error code (80h,86h = unsupported function)

SeeAlso: AX=2301h,AX=2304h,AH=BCh

INT 15


INT 15 2400 - SYSTEM - later PS/2s - DISABLE A20 GATE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 2400h

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status

01h keyboard controller is in secure mode

86h function not supported

Note:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+

SeeAlso: AX=2401h,AX=2402h,AX=2403h

INT 15


INT 15 2401 - SYSTEM - later PS/2s - ENABLE A20 GATE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 2401h

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status

01h keyboard controller is in secure mode

86h function not supported

Note:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+

SeeAlso: AX=2400h,AX=2402h

INT 15


INT 15 2402 - SYSTEM - later PS/2s - GET A20 GATE STATUS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 2402h

Return: CF clear if successful

    AH = 00h

    AL = current state (00h disabled, 01h enabled)

CF set on error

    AH = status

01h keyboard controller is in secure mode

86h function not supported

Note:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+

SeeAlso: AX=2400h,AX=2401h

INT 15


INT 15 2403 - SYSTEM - later PS/2s - QUERY A20 GATE SUPPORT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 2403h

Return: CF clear if successful

    AH = 00h

    BX = status of A20 gate support (see #0348)

CF set on error

    AH = status

01h keyboard controller is in secure mode

86h function not supported

Note:	also supported by AMI PCI BIOS and Qualitas 386MAX v6.01+

BUG:	at one point early in processing INT 15/AH=24h, the AMI PCI BIOS

  version 1.00.05.AX1 compares whether AL==03h instead of AL>=03h,

  thus causing a random branch on any value of AL greater than 3.

SeeAlso: AX=2402h

INT 15


INT 15 3000 - Object Kernel for DOS - INSTALLATION CHECK

Category: - - (none)

Inp.:

AX = 3000h

Return: AX:BX = 4F42h:4A21h ('OBJ!') if installed

    CX = resident segment

Program: the Object Kernel is a program by M.W. Pieters which is currently

  under development

SeeAlso: AX=3001h,AX=3008h

INT 15


INT 15 3001 - Object Kernel for DOS - GET STATUS BLOCK

Category: - - (none)

Inp.:

AX = 3001h

Return: AX = FFFFh

ES:DI -> status block

SeeAlso: AX=3000h,AX=3008h

INT 15


INT 15 3002 - Object Kernel for DOS - KILL PROCESS

Category: - - (none)

Inp.:

AX = 3002h

(not yet implemented)

SeeAlso: AX=3000h

INT 15


INT 15 3003 - Object Kernel for DOS - STOP PROCESS

Category: - - (none)

Inp.:

AX = 3003h

(not yet implemented)

SeeAlso: AX=3000h

INT 15


INT 15 3004 - Object Kernel for DOS - START PROCESS

Category: - - (none)

Inp.:

AX = 3004h

(not yet implemented)

SeeAlso: AX=3000h

INT 15


INT 15 3005 - Object Kernel for DOS - RESTART PROCESS

Category: - - (none)

Inp.:

AX = 3005h

(not yet implemented)

SeeAlso: AX=3000h

INT 15


INT 15 3006 - Object Kernel for DOS - EXECUTE PROCESS

Category: - - (none)

Inp.:

AX = 3006h

(not yet implemented)

SeeAlso: AX=3000h

INT 15


INT 15 3007 - Object Kernel for DOS - LIST PROCESSES

Category: - - (none)

Inp.:

AX = 3007h

(not yet implemented)

SeeAlso: AX=3000h

INT 15


INT 15 3008 - Object Kernel for DOS - SWITCH ObjectKernel ON/OFF

Category: - - (none)

Inp.:

AX = 3008h

BH = new state (00h disabled, 01h enabled)

Return: AX = FFFFh

SeeAlso: AX=3000h,AX=3009h

INT 15


INT 15 3009 - Object Kernel for DOS - RESERVED FOR FUTURE USE

Category: - - (none)

Inp.:

AX = 3009h to 30FFh

SeeAlso: AX=3000h

Program: the Object Kernel is a program by M.W. Pieters which is currently

  under development

INT 15


INT 15 40-- - SYSTEM - READ/MODIFY PROFILES (CONVERTIBLE)

Category: B - BIOS

Inp.:

AH = 40h

AL = subfunction

    00h get system profile in CX and BX

    01h set system profile from CX and BX

    02h get internal modem profile in BX

    03h set internal modem profile from BX

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status (80h = profile execution failed)

INT 15


INT 15 4000 - Compaq SLT/286 or Portable 386 - READ LCD/PLASMA TIMEOUT

Category: V - video

Inp.:

AX = 4000h

Return: AX = 4000h

CL = timeout in minutes, 00h if disabled

SeeAlso: AX=4001h,AX=4600h

INT 15


INT 15 4001 - Compaq SLT/286 or Portable 386 - SET LCD/PLASMA TIMEOUT

Category: V - video

Inp.:

AX = 4001h

CL = timeout in minutes, 00h to disable

Return: AL = status

    00h timeout modified

    01h timeout cannot be modified

    40h timeout cannot be modified

CL = timeout in minutes, 00h if disabled

SeeAlso: AX=4000h,AX=4601h

INT 15


INT 15 41-- - SYSTEM - WAIT ON EXTERNAL EVENT (CONVERTIBLE and some others)

Category: B - BIOS

Inp.:

AH = 41h

AL = condition type (see #0349)

BH = condition compare or mask value

BL = timeout value times 55 milliseconds

    00h means no timeout

DX = I/O port address if AL bit 4 set

ES:DI -> user byte if AL bit 4 clear

Note:	call AH=C0h and examine bit 3 of feature byte 1 to determine whether

  this function is supported

SeeAlso: AH=83h,AH=86h,AH=C0h

INT 15


INT 15 42-- - SYSTEM - REQUEST POWER OFF (CONVERTIBLE,HP 95LX)

Category: B - BIOS

Inp.:

AH = 42h

AL = suspend type

    00h to use system profile

    01h to force suspend regardless of system profile

Note:	the HP 95LX apparently suspends regardless of the value in AL; on

  power-up, execution will resume following the instruction calling

  this function

SeeAlso: AH=44h

INT 15


INT 15 4280 - Compaq SLT/286 - ENTER STANDBY

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 4280h

Return: AH = 42h

CF clear if successful

CF set if unable to enter standby

SeeAlso: AX=4600h,AX=5307h/BX=0001h/CX=0001h

INT 15


INT 15 43-- - SYSTEM - READ SYSTEM STATUS (CONVERTIBLE)

Category: B - BIOS

Inp.:

AH = 43h

Return: AL = status bits (see #0350)

INT 15


INT 15 44-- - SYSTEM - (DE)ACTIVATE INTERNAL MODEM POWER (CONVERTIBLE)

Category: B - BIOS

Inp.:

AH = 44h

AL = new modem power state (00h power off, 01h power on)

SeeAlso: AH=42h

INT 15


INT 15 44C0 - Olivetti Quaderno - INITIALIZE DIGITAL SIGNAL PROCESSING???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C0h

ES:DI -> new DSP procedure (exchanged with CMOS[28h])

ES:SI -> ??? buffer

Return: ES:DI -> old DSP procedure

ES:SI buffer filled with ten bytes from CMOS (addresses 14h-1Ch)

  followed by 00h (addresses 15h-1Ch copied only if less than 21h)

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C9h

INT 15


INT 15 44C1 - Olivetti Quaderno - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C1h

???

Return: ???

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C9h

INT 15


INT 15 44C2 - Olivetti Quaderno - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C2h

DL = byte to be written to I/O port 350h

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C3h,AX=44C9h

INT 15


INT 15 44C3 - Olivetti Quaderno - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C3h

Return: DH = bitfields (see #0351)

DL = value read from I/O port 350h

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C2h,AX=44C9h

INT 15


INT 15 44C4 - Olivetti Quaderno - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C4h and 44C5h

???

Return: ???

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C9h

INT 15


INT 15 44C6 - Olivetti Quaderno - READ LCD

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C6h

Return: DX = FFFFh clock is displayed on LCD display

DX = other: hex number displayed in first four positions of display

BH = left alphanumeric character on display (see #0352)

BL = right alphanumeric character on display (see #0352)

CL = colon flags (see #0353)

Notes:	the LCD display has the format HH:HH:AA, where H is a hex digit and A

  is an alphanumeric character

this function is also supported by XBIOS.COM

SeeAlso: AX=44C7h,AX=44C9h

INT 15


INT 15 44C7 - Olivetti Quaderno - WRITE LCD

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C7h

DX = hex display

    FFFFh display clock and "HI", "Md", or "Lo"

BH,BL,CL unused

    other: display specified hex number in first four positions

BH = left alphanumeric character on display (see #0352)

BL = right alphanumeric character on display (see #0352)

CL = colon flags (see #0353)

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C6h

INT 15


INT 15 44C8 - Olivetti Quaderno - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C8h

CL = ??? (00h,02h,21h)

CH = ???

???

Return: ???

Note:	this function is also supported by XBIOS.COM

SeeAlso: AX=44C9h

INT 15


INT 15 44C9 - Olivetti Quaderno - GET XBIOS VERSION

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 44C9h

Return: AL = major version

AH = minor version

Note:	this function is also supported by XBIOS.COM

INT 15


INT 15 45-- - HP 100LX/200LX - SET DISPLAY CONTROL STATUS

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 45h

AL = new display control status

    bit 0: DISPCTL flag +C instead of -C

    bit 1: DISPCTL flag +K instead of -K

SeeAlso: AH=46h"HP",AX=4700h"HP"

INT 15


INT 15 46-- - HP 100LX/200LX - SET POWER OFF TIMEOUT

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 46h

BX = timeout value in ticks

    0000h inhibit auto power off

Note:	the 200LX default timeout is 0CCDh = 3277 ticks = approx. 3 min.

SeeAlso: AH=45h"HP",AX=4700h"HP"

INT 15


INT 15 4600 - Compaq SLT/286 - READ POWER CONSERVATION/MODEM CONFIGURATION

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 4600h

Return: AH = modem configuration information (see #0354)

AL = power conservation status information (see #0355)

BH = default system inactivity timeout (1-21 minutes)

BL = current system inactivity timeout (1-21 minutes)

CH = default video display inactivity timeout (1-63 minutes)

CL = current video display inactivity timeout (1-63 minutes)

DH = default fixed disk drive inactivity timeout (1-21 minutes)

DL = current fixed disk drive inactivity timeout (1-21 minutes)

SeeAlso: AX=4280h,AX=4601h,INT 77

INT 15


INT 15 4601 - Compaq SLT/286 - MODIFY POWER CONSERVATION/MODEM CONFIGURATION

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 4601h

BL = system inactivity timeout (1-21 minutes)

    FFh do not change

CL = video display inactivity timeout (1-63 minutes)

    FFh do not change

DL = current fixed disk drive inactivity timeout (1-21 minutes)

    FFh do not change

DH = new modem state (00h turn off, 01h turn on, FFh don't change)

Return: CF clear if successful

    AH = 00h

    BL = current system inactivity timeout (1-21 minutes)

    CL = current video display inactivity timeout (1-63 minutes)

    DL = current fixed disk drive inactivity timeout (1-21 minutes)

    DH = modem state (FFh unchanged, 00h turned off, 01h turned on)

CF set on error

    AH = error code

01h input is out of range

02h no modem present

SeeAlso: AX=4600h,INT 77

INT 15


INT 15 4604 - Compaq Contura 486 and "Alladin" 08/05/93 ROMs - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 4604h

Return: CF clear if successful

    AL = byte read from I/O port 03F8h

CF set on error (not supported)

    AH = 86h (unsupported function)

Note:	also supported by 7/26/93 LTE Lite 386 ROM

INT 15


INT 15 4605 - Compaq Contura 486 and "Alladin" 08/05/93 ROMs - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 4605h

Return: CF clear if successful

CF set on error (not supported)

    AH = 86h (unsupported function)

Note:	this function is a NOP (other than clearing CF) in the 08/05/93 version

  of the Contura 486/486c/486cx and "Aladdin" ROM, and the 7/26/93

  LTE Lite 386 ROM

INT 15


INT 15 47-- - HP 100LX/200LX - GET/SET DISPLAY CONTRAST

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 47h

AL = subfunction

   00h set contrast

BL = new contrast

    (00h-0Fh, 0Fh is darkest, 10h-FFh are same as 0Fh)

   other get current contrast

Return:	AL = contrast (00h-0Fh, 0Fh is darkest)

Note:	may be for backward compatibility with HP95LX, as INT 15/AH=62h does

  substantially the same thing as this function

SeeAlso: AH=45h"HP",AH=48h"HP",AH=62h"HP"

INT 15


INT 15 48-- - HP 100LX/200LX - SET BUZZER VOLUME

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 48h

AL = volume (00h-03h; 03h is loudest, 04h-FFh are same as 03h)

SeeAlso: AH=47h"HP"

INT 15


INT 15 49-- - HP 100LX/200LX - SERIAL INTERFACE SELECT

undocumented function

Category: S - serial I/O

Inp.:

AH = 49h

AL = serial interface

    00h wired (COM1)

    01h infrared

Note:	interface should only be changed in deactivated state (see AH=4Ah)

SeeAlso: AH=4Ah"HP"

INT 15


INT 15 4900 - Far East MS-DOS - GET BIOS TYPE

Category: J - Japanese

Inp.:

AX = 4900h

Return: CF clear if successful

    AH = 00h

    BL = BIOS mode

00h DOS/V

01h standard DBCS DOS (hardware DBCS support)

CF set on error

    AH = 86h (function not supported)

Note:	in practice, DOS/J returns AH=86h; AX DOS does not support this call

SeeAlso: AH=50h,INT 21/AH=30h

INT 15


INT 15 4A-- - HP 100LX/200LX - SERIAL INTERFACE CONTROL

undocumented function

Category: S - serial I/O

Inp.:

AH = 4Ah

AL = control

    00h deactivate

    01h activate

Note:	interface selected with AH=49h will be (de)activated

SeeAlso: AH=49h"HP",AH=4Bh"HP"

INT 15


INT 15 4B-- - HP 100LX/200LX - ADJUST SYSTEM TIME

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 4Bh

Desc:	adjust system time based on real-time clock

SeeAlso: AH=4Ah"HP",INT 1A/AH=02h,INT 21/AH=2Ch

INT 15


INT 15 4DD4 - HP 95LX/100LX/200LX - INSTALLATION CHECK

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 4DD4h

Return: BX = 4850h ("HP") if HP 95LX/100LX/200LX

    CX = model

0101h HP 95LX

0102h HP 100LX/200LX

    DH = ???

02h HP 200LX 2MB BIOS 1.01 A D german

    DL = ???

00h HP 95LX

01h HP 200LX 2MB BIOS 1.01 A D german

SeeAlso: INT 0B"HP 95LX",INT 0F"HP 95LX",INT 5F/AH=00h,INT 60/DI=0100h

SeeAlso: INT 61"HP 95LX"

INT 15


INT 15 4E-- - HP 95LX - ENABLE/DISABLE LIGHT SLEEP

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 4Eh

AL = light sleep

    00h disabled

    01h enabled

Note:	when light sleep is disabled, the system will continue running at full

  speed; when enabled, it may automatically slow to conserve batteries

SeeAlso: INT 06"HP 95LX",INT 60/DI=0100h

INT 15


INT 15 4F-- - KEYBOARD - KEYBOARD INTERCEPT (AT model 3x9,XT2,XT286,CONV,PS)

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

AH = 4Fh

AL = hardware scan code

CF set

Return: CF set

   AL = hardware scan code

CF clear

   scan code should be ignored

Notes:	called by INT 09 handler to translate scan codes; the INT 09 code does

  not examine the scan code it reads from the keyboard until after

  this function returns.  This permits software to rearrange the

  keyboard; for example, swapping the CapsLock and Control keys, or

  turning the right Shift key into Enter.

DOS 6 KEYB.COM will not pass through this function if Ctrl-Alt-Del is

  pressed and a SmartDrive v4-compatible cache is installed which has

  dirty cache buffers; some other disk caches such as HyperDisk

  operate similarly in order to prevent loss of cached data which has

  not yet been written to disk

SeeAlso: INT 09,INT 15/AH=C0h

INT 15


INT 15 50-- - DOS/V - FONT SUBSYSTEM ACCESS

Category: J - Japanese

Inp.:

AH = 50h

AL = which function address to retrieve

    00h "read font" function

    01h "write font" function

BL = 00h

BH = character size (00h single-byte, 01h double-byte)

DH = width of character cell

DL = height of character cell

BP = code page (see #0356)

Return: CF clear if successful

    AH = 00h

    ES:BX -> requested function's address

CF set on error

    AH = error code (see #0357)

SeeAlso: AH=49h


INT 15 50-- - VMIX v2.???+ - "sys_vm_page" - SET NEW VIRTUAL PAGE TABLE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 50h

BX = segment of page directory table

CX = page number of page table

SeeAlso: AH=10h"VMiX",AH=51h"VMiX",AH=52h"VMiX"


INT 15 51-- - VMiX v2.???+ - "sys_vm_func" - EXECUTE FUNCTION IN PROTECTED MODE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 51h

STACK:	DWORD	selector:offset of function

Return: registers as returned by function

Note:	executes function with privilege level 0 (highest privilege)

SeeAlso: AH=10h"VMiX",AH=52h"VMiX"


INT 15 5101 - SYSTEM - later PS/2s - EXPANSION UNIT, RETURN CONFIGURATION NUMBER

Category: B - BIOS

Inp.:

AX = 5101h

Return: CF set if successful

    AH = 00h

    AL = current configuration number

00h system unit only

FFh configuration not recognized

    BX = status flag

bits 0-14: reserved

bit 15: additional data is available (location TBD)

CF clear on error

    AH = status

01h expansion unit is not present

86h function not supported

Note:	CF convention is the reverse of the standard convention for this

  interrupt.  (Perhaps a typo in the IBM BIOS Tech Ref?)


INT 15 52-- - VMiX v2.???+ - "sys_vm_init" - INITIALIZE PROTECTED-MODE ENVIRONMENT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 52h

SeeAlso: AH=50h"VMiX",AH=51h"VMiX"


INT 15 52-- - IBM/MS INT 13 Extensions - MEDIA EJECT INTERCEPT

callout or callback (usually hooked rather than called)

Category: d - disk I/O enhancements

Inp.:

AH = 52h

DL = drive number

Return: CF clear if OK to eject media

    AH = 00h

CF set if ejection disallowed

    AH = error code (B1h,B3h) (see #0140)

Note:	called by the IBM/MS INT 13 Extensions driver/BIOS when an ejection

  request is made

SeeAlso: INT 13/AH=46h"INT 13 Extensions"


INT 15 5300 - Advanced Power Management Specification - INSTALLATION CHECK

Category: p - power management

Inp.:

AX = 5300h

BX = device ID of system BIOS (0000h)

Return: CF clear if successful

    AH = major version (BCD)

    AL = minor version (BCD)

    BX = 504Dh ("PM")

    CX = flags (see #0358)

CF set on error

    AH = error code (06h,86h) (see #0359)

BUG:	early versions of the Award Modular BIOS with built-in APM support

  reportedly do not set BX on return


INT 15 5301 - Advanced Power Management Specification - CONNECT REAL-MODE INTERFACE

Category: p - power management

Inp.:

AX = 5301h

BX = device ID of system BIOS (0000h)

Return: CF clear if successful

CF set on error

    AH = error code (02h,05h,07h,09h) (see #0359)

SeeAlso: AX=5302h,AX=5303h,AX=5304h


INT 15 5302 - Advanced Power Management Spec - CONNECT 16-BIT PROTMODE INTERFACE

available only in real or V86 mode

Category: p - power management

Inp.:

AX = 5302h

BX = device ID of system BIOS (0000h)

Return: CF clear if successful

    AX = real-mode segment base address of protected-mode 16-bit code

segment

    BX = offset of entry point

    CX = real-mode segment base address of protected-mode 16-bit data

segment

    ---APM v1.1---

    SI = APM BIOS code segment length

    DI = APM BIOS data segment length

CF set on error

    AH = error code (02h,05h,06h,07h,09h) (see #0359)

Notes:	the caller must initialize two consecutive descriptors with the

  returned segment base addresses; these descriptors must be valid

  whenever the protected-mode interface is called, and will have

  their limits arbitrarily set to 64K.

the protected mode interface is invoked by making a far call with the

  same register values as for INT 15; it must be invoked while CPL=0,

  the code segment descriptor must have a DPL of 0, the stack must be

  in a 16-bit segment and have enough room for BIOS use and possible

  interrupts, and the current I/O permission bit map must allow access

  to the I/O ports used for power management.

functions 00h-03h are not available from protected mode

SeeAlso: AX=5301h,AX=5303h,AX=5304h


INT 15 5303 - Advanced Power Management Spec - CONNECT 32-BIT PROTMODE INTERFACE

Category: p - power management

Inp.:

AX = 5303h

BX = device ID of system BIOS (0000h)

Return: CF clear if successful

    AX = real-mode segment base address of protected-mode 32-bit code

segment

    EBX = offset of entry point

    CX = real-mode segment base address of protected-mode 16-bit code

segment

    DX = real-mode segment base address of protected-mode 16-bit data

segment

    ---APM v1.1---

    SI = APM BIOS code segment length

    DI = APM BIOS data segment length

CF set on error

    AH = error code (02h,05h,07h,08h,09h) (see #0359)

Notes:	the caller must initialize three consecutive descriptors with the

  returned segment base addresses for 32-bit code, 16-bit code, and

  16-bit data, respectively; these descriptors must be valid whenever

  the protected-mode interface is called, and will have their limits

  arbitrarily set to 64K.

the protected mode interface is invoked by making a far call to the

  32-bit code segment with the same register values as for INT 15; it

  must be invoked while CPL=0, the code segment descriptor must have a

  DPL of 0, the stack must be in a 32-bit segment and have enough room

  for BIOS use and possible interrupts, and the current I/O permission

  bit map must allow access to the I/O ports used for power management.

functions 00h-03h are not available from protected mode

SeeAlso: AX=5301h,AX=5302h,AX=5304h


INT 15 5304 - Advanced Power Management Specification - DISCONNECT INTERFACE

Category: p - power management

Inp.:

AX = 5304h

BX = device ID of system BIOS (0000h)

Return: CF clear if successful

CF set on error

    AH = error code (03h,09h) (see #0359)

SeeAlso: AX=5301h,AX=5302h,AX=5303h


INT 15 5305 - Advanced Power Management Specification - CPU IDLE

Category: p - power management

Inp.:

AX = 5305h

Return: CF clear if successful (after system leaves idle state)

CF set on error

    AH = error code (03h,0Bh) (see #0359)

Notes:	call when the system is idle and should be suspended until the next

  system event or interrupt

should not be called from within a hardware interrupt handler to avoid

  reentrance problems

if an interrupt causes the system to resume normal processing, the

  interrupt may or may not have been handled when the BIOS returns

  from this call; thus, the caller should allow interrupts on return

interrupt handlers may not retain control if the BIOS allows

  interrupts while in idle mode even if they are able to determine

  that they were called from idle mode

the caller should issue this call continuously in a loop until it needs

  to perform some processing of its own

SeeAlso: AX=1000h,AX=5306h,INT 2F/AX=1680h


INT 15 5306 - Advanced Power Management Specification - CPU BUSY

Category: p - power management

Inp.:

AX = 5306h

Return: CF clear if successful

CF set on error

    AH = error code (03h,0Bh) (see #0359)

Notes:	called to ensure that the system runs at full speed even on systems

  where the BIOS is unable to recognize increased activity (especially

  if interrupts are hooked by other programs and not chained to the

  BIOS)

this call may be made even when the system is already running at full

  speed, but it will create unnecessary overhead

should not be called from within a hardware interrupt handler to avoid

  reentrance problems

SeeAlso: AX=5305h


INT 15 5307 - Advanced Power Management Specification - SET POWER STATE

Category: p - power management

Inp.:

AX = 5307h

BX = device ID (see #0360)

CX = system state ID (see #0361)

Return: CF clear if successful

CF set on error

    AH = error code (01h,03h,09h,0Ah,0Bh,60h) (see #0359)

Note:	should not be called from within a hardware interrupt handler to avoid

  reentrance problems

SeeAlso: AX=530Ch


INT 15 5307 - Advanced Power Management Specification - SYSTEM STAND-BY

Category: p - power management

Inp.:

AX = 5307h

CX = 0001h

BX = 0001h (device ID for all power-managed devices)

Return: CF clear

Notes:	puts the entire system into stand-by mode; normally called in response

  to a System Stand-by Request notification after any necessary

  processing, but may also be invoked at the caller's discretion

should not be called from within a hardware interrupt handler to avoid

  reentrance problems

the stand-by state is typically exited on an interrupt

SeeAlso: AX=4280h,AX=5307h/CX=0002h/BX=0001h,AX=530Bh


INT 15 5307 - Advanced Power Management Specification - SUSPEND SYSTEM

Category: p - power management

Inp.:

AX = 5307h

CX = 0002h

BX = 0001h (device ID for all power-managed devices)

Return: after system is resumed

CF clear

Notes:	puts the entire system into a low-power suspended state; normally

  called in response to a Suspend System Request notification after

  any necessary processing, but may also be invoked at the caller's

  discretion

should not be called from within a hardware interrupt handler to avoid

  reentrance problems

the caller may need to update its date and time values because the

  system could have been suspended for a long period of time

SeeAlso: AX=5307h/CX=0001h/BX=0001h,AX=530Bh


INT 15 5308 - Advanced Power Management Spec - ENABLE/DISABLE POWER MANAGEMENT

Category: p - power management

Inp.:

AX = 5308h

BX = device ID for all devices power-managed by APM

    0001h (APM v1.1)

    FFFFh (APM v1.0)

CX = new state

    0000h disabled

    0001h enabled

Return: CF clear if successful

CF set on error

    AH = error code (01h,03h,09h,0Ah,0Bh) (see #0359)

Notes:	when power management is disabled, the system BIOS will not

  automatically power down devices, enter stand-by or suspended mode,

  or perform any power-saving actions in response to AX=5305h calls

should not be called from within a hardware interrupt handler to avoid

  reentrance problems

SeeAlso: AX=5309h,AX=530Dh,AX=530Fh


INT 15 5309 - Advanced Power Management Specification - RESTORE POWER-ON DEFAULTS

Category: p - power management

Inp.:

AX = 5309h

BX = device ID for all devices power-managed by APM

    0001h (APM v1.1)

    FFFFh (APM v1.0)

Return: CF clear if successful

CF set on error

    AH = error code (09h) (see #0359)

Note:	should not be called from within a hardware interrupt handler to avoid

  reentrance problems

SeeAlso: AX=5308h


INT 15 530A - Advanced Power Management Specification - GET POWER STATUS

Category: p - power management

Inp.:

AX = 530Ah

BX = 0001h (device ID for all devices power-managed by APM)

Return: CF clear if successful

    BH = AC line status

00h off-line

01h on-line

02h on backup power (APM v1.1)

FFh unknown

other reserved

    BL = battery status (see #0362)

    CH = battery flag (APM v1.1) (see #0363)

    CL = remaining battery life, percentage

00h-64h (0-100) percentage of full charge

FFh unknown

    DX = remaining battery life, time (APM v1.1) (see #0364)

CF set on error

    AH = error code (09h) (see #0359)

Note:	should not be called from within a hardware interrupt handler to avoid

  reentrance problems


INT 15 530B - Advanced Power Management Specification - GET POWER MANAGEMENT EVENT

Category: p - power management

Inp.:

AX = 530Bh

Return: CF clear if successful

    BX = event code (see #0365)

CF set on error

    AH = error code (03h,0Bh,80h) (see #0359)

Notes:	although power management events are often asynchronous, notification

  will not be made until polled via this call to permit software to

  only receive event notification when it is prepared to process

  power management events; since these events are not very time-

  critical, it should be sufficient to poll once or twice per second

the critical resume notification is made after the system resumes

  from an emergency suspension; normally, the system BIOS only notifies

  its partner that it wishes to suspend and relies on the partner to

  actually request the suspension, but no notification is made on an

  emergency suspension

should not be called from within a hardware interrupt handler to avoid

  reentrance problems

SeeAlso: AX=5307h,AX=5307h/BX=0001h/CX=0001h,AX=5307h/BX=0001h/CX=0002h


INT 15 530C - Advanced Power Management v1.1 - GET POWER STATE

Category: p - power management

Inp.:

AX = 530Ch

BX = device ID (see #0360)

Return: CF clear if successful

    BX = system state ID (see #0361)

CF set on error

    AH = error code (01h,09h) (see #0359)

SeeAlso: AX=5307h


INT 15 530D - Advanced Power Management v1.1 - EN/DISABLE DEVICE POWER MANAGEMENT

Category: p - power management

Inp.:

AX = 530Dh

BX = device ID (see #0360)

CX = function

    0000h disable power management

    0001h enable power management

Return: CF clear if successful

CF set on error

    AH = error code (01h,03h,09h,0Ah,0Bh) (see #0359)

SeeAlso: AX=5308h,AX=530Fh


INT 15 530E - Advanced Power Management v1.1 - DRIVER VERSION

Category: p - power management

Inp.:

AX = 530Eh

BX = device ID of system BIOS (0000h)

CH = APM driver major version (BCD)

CL = APM driver minor version (BCD)

Return: CF clear if successful

    AH = APM connection major version (BCD)

    AL = APM connection minor version (BCD)

CF set on error

    AH = error code (03h,09h,0Bh) (see #0359)

SeeAlso: AX=5300h


INT 15 530F - Advanced Power Management v1.1 - ENGAGE/DISENGAGE POWER MANAGEMENT

Category: p - power management

Inp.:

AX = 530Fh

BX = device ID (see #0360)

CX = function

    0000h disengage power management

    0001h engage power management

Return: CF clear if successful

CF set on error

    AH = error code (01h,09h) (see #0359)

Note:	unlike AX=5308h, this call does not affect the functioning of the APM

  BIOS

SeeAlso: AX=5308h,AX=530Dh


INT 15 5380 - APM SL Enhanced v1.0 - GET SUSPEND/GLOBAL STANDBY MODE

Category: p - power management

Inp.:

AX = 5380h

BH = 00h

Return: CF clear if successful

    AL = 82360SL Auto Power Off Timer High Count (APWR_TMRH)

    BL = sustdbymode (see #0366)

SeeAlso: AX=5380h/BH=01h,AX=5380h/BH=02h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET SUSPEND/GLOBAL STANDBY MODE

Category: p - power management

Inp.:

AX = 5380h

BH = 01h

BL = sustdbymode (see #0366)

Return: CF clear if successful

SeeAlso: AX=5380h/BH=00h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - GET GLOBAL STANDBY TIMER

Category: p - power management

Inp.:

AX = 5380h

BH = 02h

Return: CF clear if successful

SI:DI = timer count in seconds (actually 1.024 seconds)

Desc:	reads the value of 82360SL GSTDBY_TMRH & GSTDBY_TMRL registers

SeeAlso: AX=5380h/BH=00h,AX=5380h/BH=03h,AX=5380h/BH=04h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET GLOBAL STANDBY TIMER

Category: p - power management

Inp.:

AX = 5380h

BH = 03h

SI:DI = timer count in seconds (actually 1.024 seconds)

Return: CF clear if successful

Desc:	sets the value of 82360SL GSTDBY_TMRH & GSTDBY_TMRL registers

Note:	the maximum timer count is 268431 seconds

SeeAlso: AX=5380h/BH=02h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - GET AUTO POWER OFF TIMER

Category: p - power management

Inp.:

AX = 5380h

BH = 04h

Return: CF clear if successful

SI:DI = timer count in seconds (actually 1.024 seconds)

Desc:	reads the value of 82360SL APWR_TMRH & APWR_TMRL registers

SeeAlso: AX=5380h/BH=02h,AX=5380h/BH=05h,AX=5380h/BH=06h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET AUTO POWER OFF TIMER

Category: p - power management

Inp.:

AX = 5380h

BH = 05h

SI:DI = timer count in seconds (actually 1.024 seconds)

Return: CF clear if successful

Desc:	sets the value of 82360SL APWR_TMRH & APWR_TMRL registers

Note:	the maximum timer count is 134213 seconds

SeeAlso: AX=5380h/BH=04h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - GET RESUME CONDITION

Category: p - power management

Inp.:

AX = 5380h

BH = 06h

Return: CF clear if successful

    BL = resume condition (see #0367)

Desc:	reads the value of 82360SL RESUME_MASK register

SeeAlso: AX=5380h/BH=04h,AX=5380h/BH=07h,AX=5380h/BH=08h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET RESUME CONDITION

Category: p - power management

Inp.:

AX = 5380h

BH = 07h

BL = resume condition (see #0367)

Return: CF clear if successful

Desc:	sets the value of 82360SL RESUME_MASK register

SeeAlso: AX=5380h/BH=06h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - GET CALENDAR EVENT TIME

Category: p - power management

Inp.:

AX = 5380h

BH = 08h

Return: CF clear if successful

    CH = hours

    CL = minutes

    SI = seconds

CF set on error

    AH = error code (see #0368)

Desc:	gets calendar event time from CMOS ram

SeeAlso: AX=5380h/BH=06h,AX=5380h/BH=09h,AX=5380h/BH=0Ah,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET CALENDAR EVENT TIME

Category: p - power management

Inp.:

AX = 5380h

BH = 09h

CH = hours

CL = minutes

SI = seconds

Return: CF clear if successful

CF set on error

    AH = error code (see #0368)

Desc:	sets calendar event time in CMOS ram, enables Alarm resume

SeeAlso: AX=5380h/BH=08h,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - GET CALENDAR EVENT DATE

Category: p - power management

Inp.:

AX = 5380h

BH = 0Ah

Return: CF clear if successful

    SI = century

    DI = year

    CH = month

    CL = day

CF set on error

    AH = error code (see #0368)

Desc:	reads calendar event date from Extended CMOS ram

SeeAlso: AX=5380h/BH=08h,AX=5380h/BH=0Bh,AX=5380h/BH=0Ch,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET CALENDAR EVENT DATE

Category: p - power management

Inp.:

AX = 5380h

BH = 0Bh

SI = century

DI = year

CH = month

CL = day

Return: CF clear if successful

CF set on error

    AH = error code (see #0368)

Desc:	sets calendar event date in Extended CMOS ram

SeeAlso: AX=5380h/BH=0Ah,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - GET CPU SPEED MODE

Category: p - power management

Inp.:

AX = 5380h

BH = 0Ch

Return: CF clear if successful

CL = CPU clock divider (1,2,4 or 8)

BL = autocpumode ???

Desc:	reads bits 4-5 of CPUPWRMODE register

SeeAlso: AX=5380h/BH=0Ah,AX=5380h/BH=0Dh,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SET CPU SPEED MODE

Category: p - power management

Inp.:

AX = 5380h

BH = 0Dh

CL = CPU clock divider (1,2,4 or 8)

BL = autocpumode ???

Return: CF clear if successful

Desc:	writes bits 4-5 of CPUPWRMODE register

SeeAlso: AX=5380h/BH=0Ch,AX=5380h/BH=7Eh,AX=5380h/BH=7Fh


INT 15 5380 - APM SL Enhanced v1.0 - SL HW PARAMETER

Category: p - power management

Inp.:

AX = 5380h

BH = 7Eh

Return:	AL = ???

    03h on A-Step 386SL BIOSes

    12h on later steps

BX = Control port (00B0h)

SeeAlso: AX=5380h/BH=00h,AX=5380h/BH=7Fh


INT 15 5380 - Advanced Power Management v1.1 - OEM APM INSTALLATION CHECK

Category: p - power management

Inp.:

AX = 5380h

BH = 7Fh

Return: CF clear if successful

    BX = OEM identifier

    all other registers OEM-defined

    ---Intel SL Enhanced Option BIOS---

    BX = 534Ch ('SL')

    CL = 4Fh ('O')

    AL = version (10h = 1.0)

    ---HP APM BIOS---

    BX = 4850h ('HP')

    CX = version (0001h)

CF set on error

    AH = error code (03h) (see #0359)

SeeAlso: AX=5380h/BH=00h


INT 15 5380 - Advanced Power Management v1.1 - OEM APM FUNCTIONS

Category: p - power management

Inp.:

AX = 5380h

BH <> 7Fh

all other registers OEM-defined

Return: OEM-defined

SeeAlso: AX=5380h/BH=7Fh


INT 15 53B0 - Intel System Management Bus - RESERVED

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 00h

Program: the SMBus is a variant of ACCESS.bus being used by Intel and Duracell

  for the Smart Battery proposal, but designed to be generic enough to

  handle other devices besides batteries


INT 15 53B0 - Intel System Management Bus - INSTALLATION CHECK

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 01h

BL = 72h ('r')

CX = 6164h ('ad')

Return: CF clear if installed

    AH = SMBus BIOS Interface Specification major version (01h)

    AL = SMBus BIOS Interface Specification minor version (00h)

    BL = number of SMBus devices present

    CX = 6941h ('iA')

    DX = vendor-specified SMBus hardware code

0000h means undefined hardware type

CF set if error

    AH = Error code 0Ah, 86h (see #2673)

Note:	this function is only supported in INT 15h mode

SeeAlso: AX=53B0h/BH=02h,AX=53B0h/BH=03h,AX=53B0h/BH=04h,AX=53B0h/BH=06h


INT 15 53B0 - Intel System Management Bus - REAL MODE CONNECT

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 02h

CX = 6941h ('iA')

Return: CF clear if successful

    AX = SMBus Real mode code segment

    BX = offset of entry point into SMBus BIOS Interface

    CX = SMBus Real mode data segment

CF set if error

    AH = error code (01h,02h,0Ah,86h) (see #2673)

    AL = sub-error code if error code is 02h (see #2674)

Desc:	connect to SMBus interface; once connected, all SMBus calls are made

  to the supplied entry point instead of INT 15 (with registers

  identical to those described here for INT 15)

Notes:	Support for this function is optional

this function is only supported in INT 15 mode when implemented

SeeAlso: AX=53B0h/BH=01h,AX=53B0h/BH=03h,AX=53B0h/BH=04h,AX=53B0h/BH=05h


INT 15 53B0 - Intel System Management Bus - 16-BIT PROTECTED-MODE CONNECT

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 03h

CX = 6941h ('iA')

Return: CF clear if successful

    AX = SMBus 16-bit code segment (real mode base address)

    BX = offset of entry point into SMBus BIOS Interface

    CX = SMBus 16-bit data segment (real mode base address)

    SI = code segment length in bytes

    DI = data segment length in bytes

CF set if error

    AH = error code (01h,02h,0Ah,86h) (see #2673)

    AL = sub-error code if error code is 02h (see #2674)

Desc:	connect to SMBus interface; once connected, all SMBus calls are made

  to the supplied entry point instead of INT 15 (with registers

  identical to those described here for INT 15)

Notes:	before calling the entry point, two descriptors must be initialized

  in the GDT or LDT.  They must be consecutiveand be in the order of

  code, then data.  At the time	of the call, the descriptors must be

  valid and have CPL=0.

the code descriptor must be ring-0 privilege

this function is only supported in INT 15 mode

SeeAlso: AX=53B0h/BH=01h,AX=53B0h/BH=02h,AX=53B0h/BH=04h,AX=53B0h/BH=05h


INT 15 53B0 - Intel System Management Bus - 32-BIT PROTECTED-MODE CONNECT

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 04h

CX = 6941h ('iA')

Return: CF clear if successful

    AX = SMBus 32-bit code segment (real mode base address)

    EBX = offset of entry point into SMBus BIOS Interface

    CX = SMBus 16-bit code segment (real mode base address)

    DX = SMBus data segment (real mode base address)

    SI = code segment length in bytes

    DI = data segment length in bytes

CF set if error

    AH = error code (01h,02h,0Ah,86h) (see #2673)

    AL = sub-error code if error code is 02h (see #2674)

Desc:	connect to SMBus interface; once connected, all SMBus calls are made

  to the supplied entry point instead of INT 15 (with registers

  identical to those described here for INT 15)

Notes:	before calling the entry point, two descriptors must be initialized in

  the GDT or LDT.  They must be consecutive and be in the order of

  32-bit code, 16-bit code, then data.	At the time of the call, the

  descriptors must be valid and have CPL=0.

the code descriptors must be ring-0 privilege

this function is only supported in INT 15 mode

SeeAlso: AX=53B0h/BH=01h,AX=53B0h/BH=02h,AX=53B0h/BH=03h,AX=53B0h/BH=05h


INT 15 53B0 - Intel System Management Bus - DISCONNECT

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 05h

CX = 6941h ('iA')

Return: CF clear if successful

    AH = 00h (SMBus OK)

CF set if error

    AH = error code (03h,04h,05h,0Ah,86h) (see #2673)

Note:	this function is supported in connected mode (far CALL entry point)

  only

SeeAlso: AX=53B0h/BH=01h,AX=53B0h/BH=02h,AX=53B0h/BH=03h,AX=53B0h/BH=04h


INT 15 53B0 - Intel System Management Bus - DEVICE ADDRESS

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 06h

BL = position in list to report

CH = 6941h ('iA')

Return: CF clear if successful

    AH = 00h (SMBus OK)

    BH = number of SMBus devices

    BL = SMBus Device Address of device at position BL in list

CF set if error

    AH = error code (06h,0Ah,86h) (see #2673)

Desc:	retrieves already assigned SMBus device addresses

Note:	this function is supported in INT 15h mode only


INT 15 53B0 - Intel System Management Bus - CRITICAL MESSAGES

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 07h

CX = 6941h ('iA')

Return: CF clear if successful

    AH = 00h (SMBus OK)

    AL = device address

    BX = device message

CF set if error

    AH = error code (05h,07h,08h,09h,0Ah,86h) (see #2673)

Desc:	retrieves oldest queued critical message from an SMBus device to the

  host

Notes:	up to five messages are queued; if the queue is full, messages will be

  lost and error 09h returned

this function is supported in INT 15h mode only


INT 15 53B0 - Intel System Management Bus - RESERVED

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 08h-0Fh


INT 15 53B0 - Intel System Management Bus - REQUEST

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 10h

BL = protocol (see #2675)

CH = device address

CL = device command

DH = MSB Data or block length (for BlockWrite)

DL = LSB Data or first byte of block (for BlockWrite)

Return: CF clear if successful

    AH = 00h or 80h (SMBus OK)

 (80h indicates a previously unreported SMI took place)

CF set if error

    AH = error code (05h,10h,11h,12h,13h,14h,17h,19h,1Ah,86h)

  (see #2673)

Desc:	request access to a device on the SMBus

SeeAlso: AX=53B0h/BH=11h, AX=53B0h/BH=13h


INT 15 53B0 - Intel System Management Bus - REQUEST CONTINUATION

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 11h

BL = protocol (see #2675)

CH = device address

CL = number of valid bytes in DX (1 or 2)

DH = MSB Data (CL = 1 or 2)

DL = LSB Data (CL = 2)

Return: CF clear if successful

    AH = 00h (SMBus OK)

    CL = SMBus status

00h SMBus hardware not ready for more data

01h SMBus hardware ready for 2 more data bytes

CF set if error

    AH = error code (05h,11h,13h,15h,16h,18h,1Bh,86h) (see #2673)

Desc:	continue WriteBlock protocol started with function 10h

SeeAlso: AX=53B0h/BH=10h, AX=53B0h/BH=13h


INT 15 53B0 - Intel System Management Bus - REQUEST ABORT

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 12h

BL = protocol (see #2675)

CH = device address

CL = device command

Return: CF clear if successful

    AH = 00h (SMBus OK)

CF set if error

    AH = error code (05h,13h,15h,16h,86h) (see #2673)

Desc:	stop the currently pending SMBus request; usually used to terminate

  a request after an SMI Detected error


INT 15 53B0 - Intel System Management Bus - REQUEST DATA AND STATUS

Category: X - expansion bus BIOSes

Inp.:

AX = 53B0h

BH = 13h

BL = protocol (see #2675)

CH = device address

CL = device command

Return: CF clear if successful

    AH = 00h (SMBus OK)

    CH = status

00h no data pending, transaction complete

01h no data pending, transaction continues

02h data pending

    CL = number of valid bytes in DX (0-2)

    DH = MSB data

    DL = LSB data

CF set if error

    AH = error code (05h,10h,11h,13h,15h,16h,18h,1Bh,86h) (see #2673)

Desc:	determine when a transaction is complete, gather data returned by read

  transactions

Note:	for Block Read protocol (08h), first call returns block	length in DH

  and the first byte of the block in DL


INT 15 5400 - Omniview Multitasker - INSTALLATION NOTIFICATION

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5400h

ES:BX -> device information tables

DI:DX -> dispatcher entry point

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5407h,INT 2F/AX=DE00h


INT 15 5401 - Omniview Multitasker - PROCESS CREATION

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5401h

ES:BX = process handle

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5402h,INT 2F/AX=DE04h


INT 15 5402 - Omniview Multitasker - PROCESS DESTRUCTION

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5402h

ES:DX = process handle

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5401h,INT 2F/AX=DE05h


INT 15 5403 - Omniview Multitasker - SAVE

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5403h

ES:DX = process swapping out

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5404h,INT 2F/AX=DE08h


INT 15 5404 - Omniview Multitasker - RESTORE

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5404h

ES:DX = process swapping in

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5403h,INT 2F/AX=DE09h


INT 15 5405 - Omniview Multitasker - SWITCHING TO BACKGROUND

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5405h

ES:DX = process swapping in

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5406h


INT 15 5406 - Omniview Multitasker - SWITCHING TO FOREGROUND

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5406h

ES:DX = process swapping in

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5405h


INT 15 5407 - Omniview Multitasker - EXIT NOTIFICATION

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 5407h

Note:	called by OmniView to notify programs loaded before OmniView of state

  changes inside OmniView

SeeAlso: AX=5400h,INT 2F/AX=DE03h


INT 15 60-- - HUNTER 16 - SET SYSTEM CLOCK SPEED

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 60h

AL = new speed

    00h normal (8 MHz)

    01h Slow Mode 1 (4 MHz)

    02h Slow Mode 2 (2 MHz)

Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

SeeAlso: AX=6301h


INT 15 6000 - GET MAIN BATTERY LEVEL

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: p - power management

Inp.:

AX = 6000h

Return: AX = battery level

Note:	multiply the returned value with 1Bh and add 622h to get millivolts

SeeAlso: AX=6001h,AX=6002h,AX=6003h,AX=6004h


INT 15 6001 - GET BACKUP BATTERY LEVEL

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: p - power management

Inp.:

AX = 6001h

Return: AX = battery level

Note:	multiply the returned value with 1Bh and add 622h to get millivolts

SeeAlso: AX=6000h,AX=6002h


INT 15 6002 - GET POWER INFO

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: p - power management

Inp.:

AX = 6002h

Return: AL = power settings (see #0369)

SeeAlso: AX=6000h,AX=6003h,AX=6004h


INT 15 6003 - SET MAIN BATTERY TYPE

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: p - power management

Inp.:

AX = 6003h

BL = battery type

    00h alkaline

    01h NiCad

SeeAlso: AX=6000h,AX=6004h


INT 15 6004 - SET BATTERY CHARGING MODE

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: p - power management

Inp.:

AX = 6004h

BL = charging

    00h disabled

    01h enabled

SeeAlso: AX=6000h,AX=6003h


INT 15 61-- - HUNTER 16 - GET POWER LEVEL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 61h

Return: AH = percentage of full power left (0..100)

Desc:	determine how much battery power is left

SeeAlso: AH=62h,AH=66h,AH=73h"HUNTER"


INT 15 61-- - SET ANNOUNCIATORS POSITION

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 61h

AL = position (20h = left, 60h = right)

Note:	The announciators are the indicator symbols for the Shift and Fn keys

  in the bottom line

SeeAlso: AH=62h"HP",INT 16/AH=02h


INT 15 62-- - HUNTER 16 - SET LOW POWER THRESHOLD

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 62h

AL = level (00h 5%, 01h 10%, ... 12h 95%)

BX = interval between power low warnings in seconds (1..600)

Return: AH = Status

Desc:	set the level (relative to full power) when power-low warnings begin

  and the interval between the warnings

SeeAlso: AH=61h,AH=65h,AH=66h


INT 15 62-- - SET DISPLAY CONTRAST

undocumented function

<unknown note in header>

available only in protected mode

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

<unknown note in header>

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 62h

BL = contrast (00h-1Fh, 1Fh is the darkest)

SeeAlso: AH=47h"HP",AH=61h"HP"


INT 15 6300 - HUNTER 16 - GET IDLE TIMEOUT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6300h

Return: AH = status

BX = timeout in seconds (0-3600)

Desc:	get the idle timeout value, the interval without keyboard or

   communications activity before the system shuts down

SeeAlso: AX=6301h


INT 15 6301 - HUNTER 16 - SET IDLE TIMEOUT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6301h

BX = timeout in seconds (0-3600)

Desc:	sets the idle timeout value, the interval without keyboard or

  communications activity before the system shuts down

SeeAlso: AX=6300h


INT 15 64-- - HUNTER 16 - CONTROL RESUME MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 64h

AL = new state

    00h disable Resume mode

    01h enable Resume mode

Return: AH = status

Desc:	turn Resume mode on or off. In Resume mode the system starts in

  the application that was running when it shut down as if nothing

  had happened.

SeeAlso: AH=67h,AH=68h,AH=69h


INT 15 65-- - HUNTER 16 - AUTHORISE CHARGING

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 65h

AL = charging level

    01h charging not allowed

    02h charging allowed until power down

    03h charging allowed until batteries changed or fail.

Ask user if charging is still allowed on next poweron

    04h charging allowed indefinitely

BX = 0203h

CX = 0405h

DX = 0607h

Return: AH = status

SeeAlso: AH=66h,AH=68h


INT 15 66-- - HUNTER 16 - SET BATTERY LEVEL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 66h

AL = level in percent of maximum (0..100)

Return: AH = status

SeeAlso: AH=61h,AH=65h


INT 15 67-- - HUNTER 16 - CONTROL STOP MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 67h

AL = mode when waiting for input

    00h use STOP mode (allows communication)

    01h use HALT mode (disallows communication)

Return: AH = status

Desc:	select the power save mode to use when waiting for input

SeeAlso: AH=69h


INT 15 68-- - HUNTER 16 - REQUEST POWER DOWN

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 68h

Desc:	turns off the Hunter 16 if power down is allowed (see AH=69h)

SeeAlso: AH=69h


INT 15 69-- - HUNTER 16 - CONTROL POWER DOWN AVAILABILITY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 69h

AL = mode

    00h inhibit power down

    01h allow power down

Return: AH = status

SeeAlso: AH=67h,AH=68h,AH=6Ah


INT 15 6A-- - HUNTER 16 - CONTROL SLOW MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 6Ah

AL = mode

    00h inhibit Slow mode

    01h allow Slow mode

Return: AH = status

SeeAlso: AH=69h


INT 15 6B-- - HUNTER 16 - GET ROM BIOS VERSION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 6Bh

Return: BH = version number (ASCII)

BL = release number (ASCII)

CH = minor release number (ASCII)

CL = minor release number (ASCII)

SeeAlso: AH=6Ch


INT 15 6C-- - HUNTER 16 - GET SERIAL NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 6Ch

Return: BL:CX = BCD serial number

Note:	when shipped, all Hunter 16s have the same Serial Number, but a

  different number can be stored (see AH=72h)

SeeAlso: AH=6Bh,AH=72h


INT 15 6D-- - HUNTER 16 - GET EVENT DETAIL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 6Dh

Return: AH = 00h if successful

CX:BX = event flags bit 0..31 (see #0370)

Note:	this function allows testing for events

SeeAlso: AH=6Eh,AH=6Fh


INT 15 6E-- - HUNTER 16 - ENABLE/TRAP EVENT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 6Eh

AL = Software Interrupt

      00h  do not trap event

      else trap as software interrupt number AL

BH = event number (see AH=6Dh)

BL = enable mask

    00h disable event

    01h enable event

Return: AH = 00h if successful

SeeAlso: AH=6Dh,AH=6Fh


INT 15 6F-- - HUNTER 16 - ACKNOWLEDGE EVENT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 6Fh

AL = event number (see AH=6Dh)

Return: AH = 00h if successful

Desc:	Acknowledges the event, so the next similar event can be detected

SeeAlso: AH=6Dh"HUNTER",AH=6Eh


INT 15 70-- - HUNTER 16 - CONTROL SOUND

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 70h

AL = new state

    00h disable sound

    else enable sound

Note:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.


INT 15 7000 - Tandy 1000SL/TL - READ FROM EEPROM

Category: - - (none)

Inp.:

AX = 7000h

BL = number of word to read (00h-3Fh)

Return: CF clear if function supported

    DX = contents of EEPROM word

Note:	newer Tandy 1000-series machines use EEPROM instead of CMOS RAM in

  the clock chip to store system configuration information

SeeAlso: AX=7001h


INT 15 7001 - Tandy 1000SL/TL - WRITE TO EEPROM

Category: - - (none)

Inp.:

AX = 7001h

BL = number of word to read (00h-3Fh)

DX = new value for EEPROM word

Return: CF clear if function supported

Note:	the EEPROMs are normally written only by the system setup program;

  changing the values can badly mess up a Tandy

SeeAlso: AX=7000h


INT 15 7002 - Tandy 1000 Model ??? - GET ROM PAGE

undocumented function

Category: - - (none)

Inp.:

AX = 7002h

Return: AL = ROM page mapped at 0E0000h (0-6 (13?))

Note:	some Tandy machines have DOS and DeskMate in a 512k paged ROM.  The

  BIOS uses this call to determine what ROM page is mapped in the 64k

  segment at 0E0000h.

the 1000TL has 8 64k ROM pages; page 7 is permanently mapped at

  0F0000h.  There may be 16 32k ROM pages on other systems.

SeeAlso: AX=7003h,INT E0"DeskMate"


INT 15 7003 - Tandy 1000 Model ??? - SET ROM PAGE

undocumented function

Category: - - (none)

Inp.:

AX = 7003h

DL = ROM page to be mapped at 0E0000h (0-6 (13?))

Return: CF clear if valid ROM page specified

Note:	Some Tandy machines have DOS and DeskMate in a 512k paged ROM.  The

  BIOS uses this call to map ROM pages in the 64k segment at 0E0000h.

The 1000TL has 8 64k ROM pages; page 7 is permanently mapped at

  0F0000h.  There may be 16 32k ROM pages on other systems.

SeeAlso: AX=7002h,INT E0"DeskMate"


INT 15 71-- - HUNTER 16 - SELECT POWER UP KEYS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 71h

BL = column

BH = row

AL = column switch (00h disable, 01h enable)

CL = row switch (00h disable, 01h enable)

Return: AH = status

SeeAlso: AH=7Bh,AH=88h


INT 15 7200 - HUNTER 16 - RESET SERIAL NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 7200h

Return: AH = 00h if successful

Desc:	reset the serial number to the default serial number present when the

  Hunter 16 was shipped

SeeAlso: AH=6Ch,AH=72h


INT 15 72-- - HUNTER 16 - REDIRECT SERIAL NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 72h

AL nonzero

DS:BX -> new serial number (6 ASCII digits)

Return: AH = 00h if successful

Desc:	install a new serial number

SeeAlso: AH=6Ch,AX=7200h


INT 15 73-- - HUNTER 16 - GET ORACLE GT POWER LEVEL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 73h

AL = drive (0: A:, 1: B:)

Return: AH = status

    00h successful

    FFh Oracle GT drive not connected

AL = power level in percent of maximum (0..100)

Desc:	get the power remaining in the Oracle GT batteries

SeeAlso: AH=61h


INT 15 74-- - HUNTER 16 - SET BACKLIGHT POWER UP STATE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 74h

AL = new level

    01h off

    02h unchanged

    03h change level

BL = desired level (00h-7Fh)

Return: AH = status

Desc:	select the backlight level to use when the Hunter is next turned on

SeeAlso: AH=64h,AH=75h,INT 10/AH=64h,INT 10/AH=78h


INT 15 75-- - HUNTER 16 - SET CONTRAST POWER UP STATE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 75h

AL = new level

    01h off

    02h unchanged

    03h change level

BL = desired level (00h-7Fh)

Return: AH = status

Desc:	select the LCD contrast level to use when the Hunter is next turned on

SeeAlso: AH=63h,AH=74h


INT 15 76-- - HUNTER 16 - CONTROL POWER SAVE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 76h

BX = power save control (see #0371)

SeeAlso: AH=74h


INT 15 79-- - HUNTER 16 - REDIRECT LPT1

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 79h

AL = port to which to redirect (00h COM1, 01h COM2)


INT 15 7A-- - HUNTER 16 - INVOKE HOT KEY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 7Ah

Desc:	this function has the same effect as pressing the HOT key

SeeAlso: AH=7Bh


INT 15 7B-- - HUNTER 16 - CONTROL HOT KEY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 7Bh

AL = 00h prevent HOT key

    else allow HOT key

Desc:	Allow or prevent the HOT key function which is used to examine and

  change the Hunter setup

SeeAlso: AH=71h,AH=7Ah,AH=7Ch


INT 15 7C-- - HUNTER 16 - CONTROL HOT KEY POWER OPTION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 7Ch

AL = 00h prevent HOT key power option

    else allow HOT key power option

Desc:	allow or prevent changing the power options

SeeAlso: AH=7Bh,AH=7Dh


INT 15 7D-- - HUNTER 16 - OVERRIDE LOW POWER TURN OFF

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 7Dh

AL = 00h turn off after 10 warnings

    else never turn off

Desc:	specify whether the Hunter 16 turns off after 10 low power warnings

SeeAlso: AH=7Ch


INT 15 7E-- - HUNTER 16 - CONTROL BATTERY CHANGE FACILITIES (APM)

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 7Eh

AL = 00h do not prompt

    else prompt

Desc:	select whether the user is prompted for the battery state if the

  battery cap has been off when the system is turned on

SeeAlso: AH=7Fh


INT 15 7F-- - HUNTER 16 - SET BATTERY TYPE (APM)

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 7Fh

AL = battery type

    00h	 non-rechargeable

    else rechargeable

SeeAlso: AH=7Eh


INT 15 80-- - OS HOOK - DEVICE OPEN (AT,XT286,PS)

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

AH = 80h

BX = device ID

CX = process ID

CF clear

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status (see #0372)

Note:	this function should be hooked by a multitasker which wishes to keep

  track of device ownership; the default BIOS handler merely returns

  successfully

SeeAlso: AH=81h,AH=82h


INT 15 80-- - HUNTER 16 - GET/SET BATTERY CAPACITY (APM)

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 80h

AL = function

    00h get

Return: AL = capacity (500mA + AL * 50mA, max 40 = 2500mA)

    else set

BL = battery capacity (same as AL above)

SeeAlso: AH=61h"HUNTER",AH=81h"HUNTER"


INT 15 81-- - OS HOOK - DEVICE CLOSE

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

AH = 81h

BX = device ID

CX = process ID

CF clear

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status (see #0372)

Note:	this function should be hooked by a multitasker which wishes to keep

  track of device ownership; the default BIOS handler merely returns

  successfully

SeeAlso: AH=80h,AH=82h


INT 15 81-- - HUNTER 16 - CONTROL POWER OUTPUT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 81h

AL = new state of power output (00h off, nonzero on)

Desc:	turn the +5V low power output on or off

SeeAlso: AH=80h"HUNTER"


INT 15 82-- - OS HOOK - PROGRAM TERMINATION

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

AH = 82h

BX = process ID

CF clear

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status (see #0372)

Notes:	closes all devices opened by the given process ID with function 80h

this function should be hooked by a multitasker which wishes to keep

  track of device ownership; the default BIOS handler merely returns

  successfully

SeeAlso: AH=80h,AH=81h


INT 15 82-- - HUNTER 16 - SOUND OUTPUT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 82h

DX = length (duration in seconds = DX * 666670 / frequency)

BX = pitch (see #0373)

Desc:	Sound the tone specified in BX for the duration in DX

SeeAlso: AX=1019h


INT 15 83-- - BIOS - SET EVENT WAIT INTERVAL (AT,PS50+)

Category: B - BIOS

Inp.:

AH = 83h

AL = subfunction

    00h set interval

CX:DX = microseconds to delay

ES:BX -> byte whose high bit is to be set at end of interval

    01h cancel wait interval

Return: CF set on error or function already busy

    AH = status

80h invalid command (PC,PCjr)

86h function not supported (XT and later)

CF clear if successful

Notes:	the resolution of the wait period is 977 microseconds on most systems

  because most BIOSes use the 1/1024 second fast interrupt from the AT

  real-time clock chip which is available on INT 70

IBM AT 1/10/84 BIOS ignores AL and always performs subfunction 00h

SeeAlso: AH=41h,AH=86h,INT 70


INT 15 83-- - HUNTER 16 - CONTROL SCREEN SYNCHRONISATION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 83h

AL = state of LCD window (00h disabled, nonzero enabled)

Desc:	Enable/disable the facility where the displayed window tracks the

  cursor output to keep the focus visible


INT 15 84-- - BIOS - JOYSTICK SUPPORT (XT after 11/8/82,AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 84h

DX = subfunction

    0000h read joystick switches

Return: AL bits 7-4 = switch settings

    0001h read positions of joysticks

Return: AX = X position of joystick A

BX = Y position of joystick A

CX = X position of joystick B

DX = Y position of joystick B

Return: CF set on error

    AH = status (see #0372)

CF clear if successful

Notes:	if no game port is installed, subfunction 0000h returns AL=00h (all

  switches open) and subfunction 0001h returns AX=BX=CX=DX=0000h

a 250kOhm joystick typically returns 0000h-01A0h

SeeAlso: AH=84h"V20-XT-BIOS"


INT 15 84-- - V20-XT-BIOS - JOYSTICK SUPPORT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 84h

DX = subfunction

    0000h read joystick switches

Return: AL bits 7-4 = switch settings

    other: read positions of joysticks as indicated by bits 0-3

Return: AX = X position of joystick A (if DX bit 0 set)

BX = Y position of joystick A (if DX bit 1 set)

CX = X position of joystick B (if DX bit 2 set)

DX = Y position of joystick B (if DX bit 3 set)

Return: CF set on error

    AH = status (see #0372)

CF clear if successful

Program: V20-XT-BIOS is a ROM BIOS replacement with extensions by Peter

   Koehlmann / c't magazine

SeeAlso: AH=84h"PS",INT 10/AH=0Eh/CX=ABCDh


INT 15 8400 - HUNTER 16 - GET DISKETTE PORT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 8400h

BH = Drive (0: A:, 1: B:)

Return: AL = Port (0: COM1, >0: COM2)

Desc:	return the COM port used for the floppy drive

SeeAlso: AX=8401h


INT 15 8401 - HUNTER 16 - SET DISKETTE PORT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 8401h

BH = Drive (0: A:, 1: B:)

BL = Port (0: COM1, >0: COM2)

Desc:	set the COM port used for the floppy drive

SeeAlso: AX=8400h


INT 15 85-- - OS HOOK - SysReq KEY ACTIVITY (AT,PS)

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

AH = 85h

AL = SysReq key action (00h pressed, 01h released)

CF clear

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status (see #0372)

Notes:	called by keyboard decode routine

the default handler simply returns successfully; programs which wish

  to monitor the SysReq key must hook this call

the SysReq key is often labeled SysRq

SeeAlso: INT 09


INT 15 8500 - HUNTER 16 - RESTORE POWER MENU (APM)

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 8500h

Desc:	restore the standard power menu

SeeAlso: AX=8501h"HUNTER"


INT 15 8501 - HUNTER 16 - SET POWER MENU (APM)

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 8501h

BL = user software interrupt number

Desc:	install an alternate power menu routine

SeeAlso: AX=8500h"HUNTER"


INT 15 86-- - BIOS - WAIT (AT,PS)

Category: B - BIOS

Inp.:

AH = 86h

CX:DX = interval in microseconds

Return: CF clear if successful (wait interval elapsed)

CF set on error or AH=83h wait already in progress

    AH = status (see #0372)

Note:	the resolution of the wait period is 977 microseconds on most systems

  because most BIOSes use the 1/1024 second fast interrupt from the AT

  real-time clock chip which is available on INT 70

SeeAlso: AH=41h,AH=83h,INT 1A/AX=FF01h,INT 70


INT 15 86-- - HUNTER 16 - GET/SET SCREEN ATTRIBUTE TABLE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 86h

AL = function (00h get, nonzero set)

BX = 1234h

DS:SI -> 256-byte Attribute buffer

Note:	In text modes each character has its attribute byte XOR'd with the

  corresponding byte in the attribute table.  If the attribute is 15,

  15 is XOR'd with Table[15]


INT 15 87-- - SYSTEM - COPY EXTENDED MEMORY

Category: B - BIOS

Inp.:

AH = 87h

CX = number of words to copy (max 8000h)

ES:SI -> global descriptor table (see #0375)

Return: CF set on error

CF clear if successful

AH = status (see #0374)

Notes:	copy is done in protected mode with interrupts disabled by the default

  BIOS handler; many 386 memory managers perform the copy with

  interrupts enabled

this function is incompatible with the OS/2 compatibility box

SeeAlso: AH=88h,AH=89h,INT 1F/AH=90h


INT 15 87-- - HUNTER 16 - SET INT 72h VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 87h

DS:DX = new service routine

Desc:	set the INT 72h vector which is called in 2 cases:

  - when the machine is about to turn off or reboot, INT 72h is called

    with AH=0

  - when the machine is powering up INT 72h is called with AH=01h

Note:	the actual INT 72h vector must also be changed with INT 21/AH=25h


INT 15 88-- - SYSTEM - GET EXTENDED MEMORY SIZE (286+)

Category: B - BIOS

Inp.:

AH = 88h

Return: CF clear if successful

    AX = number of contiguous KB starting at absolute address 100000h

CF set on error

    AH = status

80h invalid command (PC,PCjr)

86h unsupported function (XT,PS30)

Notes:	TSRs which wish to allocate extended memory to themselves often hook

  this call, and return a reduced memory size.	They are then free to

  use the memory between the new and old sizes at will.

the standard BIOS only returns memory between 1MB and 16MB; use AH=C7h

  for memory beyond 16MB

not all BIOSes correctly return the carry flag, making this call

  unreliable unless one first checks whether it is supported through

  a mechanism other than calling the function and testing CF

SeeAlso: AH=87h,AH=C7h,AX=DA88h


INT 15 88-- - HUNTER 16 - GET POWER UP KEYS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 88h

Return: AH = 00h

BX = column

CL = row

SeeAlso: AH=71h


INT 15 89-- - SYSTEM - SWITCH TO PROTECTED MODE

Category: B - BIOS

Inp.:

AH = 89h

BL = interrupt number of IRQ0 (IRQ1-7 use next 7 interrupts)

BH = interrupt number of IRQ8 (IRQ9-F use next 7 interrupts)

ES:SI -> GDT for protected mode (see #0376)

Return: CF set on error

   AH = FFh  error enabling address line 20

CF clear if successful

   AH = 00h

   in protected mode at specified address

Notes:	BL and BH must be multiples of 8

the protected-mode CS must reference the same memory as the CS this

  function is called from because execution continues with the address

  following the interrupt call

SeeAlso: AH=87h,AH=88h,INT 67/AX=DE0Ch


INT 15 8900 - HUNTER 16 - GET POWER MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 8900h

Return: AH = 00h

BL = current power mode

    00h Standard Power Mode (SPM)

    01h Advanced Power Mode (APM)

SeeAlso: AX=8901h


INT 15 8901 - HUNTER 16 - SET POWER MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 8901h

BL = new mode

    00h Standard Power Mode (SPM)

    01h Advanced Power Mode (APM)

Return: AH = 00h

SeeAlso: AX=8900h


INT 15 8A-- - HUNTER 16 - CONTROL POWER INPUT (SPM)

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 8Ah

AL = new state of Power Input (00h disabled, nonzero enabled)

SI = 1234h

DI = 5678h

Return: AH = status

    00h success

    FFh failure

Desc:	Enable or disable Power Input. When Power Input is disabled the AC

  adaptor will neither charge the batteries nor supply power to the

  Hunter 16. Disable Power Input if using Alkaline batteries.


INT 15 8B-- - HUNTER 16 - GET/SET CHARGER TEMPERATURE OVERRIDE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 8Bh

AL = function

    00h get

Return:	BH = Maximum charging temperature

Temp = -20 + (n * 0.63) degrees Centigrade

BL = Minimum charging temperature

    else set

BH = maximum charging temperature (as above)

BL = minimum charging temperature (as above)

Return: AH = status

    00h success

    FFh failure

Desc:	get/set the temperature interval within which the charger should

  operate


INT 15 8C-- - HUNTER 16 - GET/SET POWER SAVE ENTRY FLAG

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 8Ch

AL = function

    00h get

Return: BX = which operations disable power save (see #0380)

    else set

BX = which operations should disable power save (see #0380)

SeeAlso: AH=8Dh


INT 15 8D-- - HUNTER 16 - GET/SET BOOST CHARGE (SPM)

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 8Dh

AL = function

    00h get

Return: AL = Fast Charge state (00h prevented, else allowed)

    nonzero set

BH = Fast Charge state (00h prevent, nonzero allow)

Return: AH = status

    00h success

    FFh failure

Desc:	control whether Fast Charging (200ma rather than 70ma) is allowed

SeeAlso: AH=8Ch


INT 15 90-- - OS HOOK - DEVICE BUSY (AT,PS)

Category: B - BIOS

Inp.:

AH = 90h

AL = device type (see #0381)

ES:BX -> request block for type codes 80h through BFh

CF clear

Return: CF set if wait time satisfied

CF clear if driver must perform wait

    AH = 00h

Notes:	type codes are allocated as follows:

  00-7F non-reentrant devices; OS must arbitrate access

  80-BF reentrant devices; ES:BX points to a unique control block

  C0-FF wait-only calls, no complementary INT 15/AH=91h call

floppy and hard disk BIOS code uses this call to implement a timeout;

  for device types 00h and 01h, a return of CF set means that the

  timeout expired before the disk responded.

this function should be hooked by a multitasker to allow other tasks

  to execute while the BIOS is waiting for I/O completion; the default

  handler merely returns with AH=00h and CF clear

SeeAlso: AH=91h,INT 13/AH=00h,INT 17/AH=00h,INT 1A/AH=83h


INT 15 91-- - OS HOOK - DEVICE POST (AT,PS)

Category: B - BIOS

Inp.:

AH = 91h

AL = device type (see #0381)

ES:BX -> request block for type codes 80h through BFh

CF clear

Return: AH = 00h

Note:	this function should be hooked by a multitasker to allow other tasks

  to execute while the BIOS is waiting for I/O completion; the default

  handler merely returns with AH=00h and CF clear

SeeAlso: AH=90h


INT 15 A100 - AMI PCI BIOS - SET ??? FLAG

undocumented function

Category: - - (none)

Inp.:

AX = A100h

Return: AX = 0000h

CF clear

BX,CX,DI may be destroyed

Desc:	sets bit 7 of CMOS RAM location 37h and updates the CMOS checksum in

  locations 3Eh and 3Fh

Notes:	in the examined version of the BIOS, nonzero values in AL cause it to

  drop through to checking the next possible value of AH, i.e. only

  subfunction 00h is supported

also supported by Dell XPS P90 and IBM PS/PV 6384, which also use

  AMI BIOSes


INT 15 BA10 - HP OmniShare - Pen Driver - REPORT PEN CONTROL AREA EVENT

Category: n - non-traditional input devices

Inp.:

AX = BA10h

BL = event

   00h the pen left control areas

   01h the pen entered the Brightness- area

   02h the pen entered the Brightness+ area

   03h the pen entered the Contrast- area

   04h the pen entered the Contrast+ area

Return:	CF clear if successfully processed

CF set on error (function not supported, ie. not an OmniShare BIOS)

Note:	The pen driver is responsible for detecting when the pen enters and

  leaves control areas of the OmniShare tablet, and notifying the BIOS.

The BIOS manages the events, including the autorepetition, and sets

  the status LEDs.

SeeAlso: AX=BA20h,AX=BA13h


INT 15 BA11 - HP OmniShare - Pen Driver - SET THE COMMUNICATION LED STATE

Category: n - non-traditional input devices

Inp.:

AX = BA11h

BL = new LED state (00h steady, 01h flashing)

Return:	CF clear if successful

CF set on error

Note:	this function is for use by communication software to give visual

  feedback of active communications even if the display is in standby

  mode.

SeeAlso: AX=BA10h,AX=BA24h


INT 15 BA12 - HP OmniShare - Pen Driver - STORE PEN BATTERY CHARGE

Category: n - non-traditional input devices

Inp.:

AX = BA12h

BL = new battery state (00h good, 01h low charge)

Return: CF set on error

CF clear if successfully stored in CMOS

Note:	The last report will be displayed by the Power-On Self Test the next

  time the OmniShare boots.  This allows something meaningful to be

  reported even if the pen is not detected during the POST.

SeeAlso: AX=BA13h


INT 15 BA13 - HP OmniShare - Pen Driver - GET PEN BATTERY CHARGE

Category: n - non-traditional input devices

Inp.:

AX = BA13h

Return: CF clear if successful

    BL = pen battery state (00h good, 01h low charge)

CF set on error

Note:	returns the last value set by AX=BA12h.

SeeAlso: AX=BA12h


INT 15 BA20 - HP OmniShare - STANDBY.COM - INSTALLATION CHECK

Category: p - power management

Inp.:

AX = BA20h

Return: CF clear if successful (installed)

CF set on error (not installed)

Notes:	The display controller can enter a standby mode after a given timeout,

  to conserve power or (for the OmniShare) to increase the life of

  the backlight.

A side effect of standby mode is that the communications LED turns on

  automatically when the display is in standby mode.  This is done in

  hardware, and is intended to show that the unit is still on.

SeeAlso: AX=BA10h,AX=BA20h,AX=BA22h,AX=BA24h,AX=BA26h


INT 15 BA21 - HP OmniShare - STANDBY.COM - SET STANDBY DURATION

Category: p - power management

Inp.:

AX = BA21h

BL = new timeout before standby mode in minutes (01h-0Fh)

    00h to disable automatic switch to standby mode

Return:	CF clear if successful

CF set on error (function not supported)

Note:	The actual timeout with a GD6205 controller is ((N*64)-32) seconds,

  instead of (N*60) seconds as documented.

SeeAlso: AX=BA20h,AX=BA22h


INT 15 BA22 - HP OmniShare - STANDBY.COM - GET STANDBY DURATION

Category: p - power management

Inp.:

AX = BA22h

Return:	CF clear if successful

   BL = standy duration in minutes (01h-0Fh), or 00h if disabled

CF set on error (function not supported)

Note:	The actual timeout with a GD6205 controller is ((N*64)-32) seconds,

  instead of (N*60) seconds as documented.

SeeAlso: AX=BA20h,AX=BA21h


INT 15 BA23 - HP OmniShare - STANDBY.COM - TURN ON THE SCREEN IMMEDIATELY

Category: p - power management

Inp.:

AX = BA23h

Return: CF clear if successful

CF set on error

SeeAlso: AX=BA11h,AX=BA20h,AX=BA24h


INT 15 BA24 - HP OmniShare - STANDBY.COM - TURN OFF THE SCREEN IMMEDIATELY

Category: p - power management

Inp.:

AX = BA24h

Return: CF clear if successful

CF set on error

Note:	This function is not implemented yet. Reserved for future versions

  of the OmniShare.

SeeAlso: AX=BA11h,AX=BA20h,AX=BA23h


INT 15 BA25 - HP OmniShare - STANDBY.COM - PREPARE FOR UNINSTALL

Category: p - power management

Inp.:

AX = BA25h

Return: CF clear if successful

    AX = 25BAh

    BX = PSP of STANDBY.COM resident portion

    DX:CX -> previous INT 15 handler

CF set on error

Note:	This function is used internally by the STANDBY.COM /u option, and

  should not be used by application programs.

SeeAlso: AX=BA20h


INT 15 BA26 - HP OmniShare - STANDBY.COM - IS THE DISPLAY IN STANDBY MODE?

Category: p - power management

Inp.:

AX = BA26h

Return: CF clear if successful

    AL	= display state (00h active, 01h in standby mode)

CF set on error (function not supported)

SeeAlso: AX=BA20h,AX=BA23h


INT 15 BA27 - HP OmniShare - STANDBY.COM - RESERVED FUNCTIONS

Category: p - power management

Inp.:

AX = BA27h to BA2Fh

Desc:	reserved for future use


INT 15 BC-- - Phoenix 386 BIOS - DETERMINE CPU SPEED FOR DELAY LOOPS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = BCh

Return: CF clear

(Phoenix 1.10 10a) BYTE 0040h:00B0h set to delay loop count

(Dell 4xxDE BIOS A11) WORD 0040h:00ECh set to delay loop count

Note:	this function reads system timer channel 0 twice, then does

  calculations on the returned values to determine the delay loop

  counter needed by the BIOS for beeps and floppy timeouts

SeeAlso: AX=2305h


INT 15 BF00 - Rational Systems DOS/16M - ???

Category: E - DOS extenders

Inp.:

AX = BF00h

???

Return: ???

Note:	under DESQview/X 1.02 DVDOS4GX.DVR, this call is identical to AX=BF02h

SeeAlso: AX=BF02h


INT 15 BF01 - Rational Systems DOS/16M - ???

Category: E - DOS extenders

Inp.:

AX = BF01h

???

Return: ???

Notes:	under DESQview/X 1.02 DVDOS4GX.DVR, this call is identical to AX=BF02h

called by DOS/4GW

SeeAlso: AX=BF00h,AX=BF02h


INT 15 BF02 - Rational Systems DOS/16M - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = BF02h

DX = 0000h

Return: DX = nonzero if installed

    DX:SI -> XBRK structure (see #0382)

Note:	this function is also supported by DOS/4G

SeeAlso: AX=BF01h,AX=BFDCh,AX=BFDEh/BX=0000h

SeeAlso: INT 21/AH=FFh/DH=0Eh,INT 2F/AH=A1h,INT 2F/AX=F100h,INT 2F/AX=FBA1h


INT 15 BF03 - Rational Systems DOS/4GW - UNINSTALL???

Category: E - DOS extenders

Inp.:

AX = BF03h

BX = PSP segment of extender

???

Return: ???

Note:	if BX is not the PSP segment of the extender, it passes the call down

  the INT 15 chain; this allows nested instances of the extender

SeeAlso: AX=BF06h


INT 15 BF04 - Rational Systems DOS/4GW - ???

Category: E - DOS extenders

Inp.:

AX = BF04h

BX = PSP segment of extender

Return: nothing???

Notes:	if BX is not the PSP segment of the extender, it passes the call down

  the INT 15 chain; this allows nested instances of the extender

grabs INT 2Fh and installs handlers for INT 2F/AX=1605h-1607h

SeeAlso: INT 2F/AX=1607h/BX=22C0h


INT 15 BF05 - Rational Systems DOS/4GW - INITIALIZE PROTECTED-MODE INTERFACE

Category: E - DOS extenders

Inp.:

AX = BF05h

BX = PSP segment of extender

Return: nothing???

Notes:	if BX is not the PSP segment of the extender, it passes the call down

  the INT 15 chain; this allows nested instances of the extender

calls INT 67/AX=DE01h if ???


INT 15 BF06 - Rational Systems DOS/4GW - ???

Category: E - DOS extenders

Inp.:

AX = BF06h

BX = PSP segment of extender

???

Return: ???

Note:	if BX is not the PSP segment of the extender, it passes the call down

  the INT 15 chain; this allows nested instances of the extender

SeeAlso: AX=BF03h


INT 15 BFDC - Rational Systems DOS/4GW - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = BFDCh

DX = 0000h

SI = 0000h

Return: DX = nonzero if installed

    DX:SI -> XBRK structure (see #0382)

SeeAlso: AX=BF02h


INT 15 BFDE - DESQview/X - DVDOS4GX.DVR - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0000h

Return: AX = ??? (0003h)

BX = FFFFh

SeeAlso: AX=BF02h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET PROCESS MANAGER NAME

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0001h

Return: BX = 0000h (success)

CX:DX -> name of process manager executable

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0002h

CX:DX -> ???

Return: BX = 0000h (success)

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=0003h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0003h

Return: BX = 0000h (success)

CX:DX -> ???

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=0002h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0004h

CL = ???

Return: BX = 0000h (success)

CX:DX -> XBRK structure (see #0382)

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0005h

CX = new value for ???

Return: BX = 0000h (success)

AX = old value of ???

DS:SI -> ??? (if AX nonzero on return)

ES:DI -> ??? (if AX zero on return)

Note:	called by DOS4GW.EXE

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0006h

Return: BX = 0000h (success)

AH = interrupt number??? (BEh)

CX:DX = ???

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=0007h,INT BE"DESQview"


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0007h

CX:DX = ???

Return: BX = 0000h (success)

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=0006h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0008h

CX = segment of ???

DS = ???

Return: BX = status

    0000h successful

AL = ??? (80h or C0h)

DX = ??? (0603h) if AL=C0h

    0001h failed

AX = 0000h

Note:	called by DOS4GW.EXE

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET PROTECTED MODE PROGRAM LOADER

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0009h

Return: BX = 0000h (success)

CX:DX -> full pathname to LOAD32.EXP

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - DECREMENT ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 000Ah

Return: BX = 0000h (success)

AX = new value of ??? counter

Notes:	also resets a variety of values if the counter goes negative

called by DOS4GW.EXE

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=000Bh


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - INCREMENT ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 000Bh

Return: AX = new value of ??? counter

Note:	called by DOS4GW.EXE

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=000Ah


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 000Ch

CL = ???

    00h

    nonzero

Return: ???

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 000Dh

???

Return: ???

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 000Eh

DX:CX -> ???

Return: AX = segment of handle for calling task

BX = ??? (probably destroyed)

DX:CX -> ???

SeeAlso: AX=BFDEh/BX=0000h,AX=BFDEh/BX=000Fh,AX=BFDEh/BX=0013h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 000Fh

Return: AX = segment of handle for calling task

BX = ??? (probably destroyed)

DX:CX -> ???

Note:	identical to AX=BFDEh/BX=000Eh with CX:DX = 0000h:0000h

SeeAlso: AX=BFDEh/BX=000Eh,AX=BFDEh/BX=0010h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET TASK HANDLE

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0010h

Return: AX = segment of caller's task handle

BX destroyed

SeeAlso: AX=BFDEh/BX=000Fh


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0011h

Return: CX = code segment of DVDOS4GX.DVR

BX = ??? (0004h)

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0012h

Return: DX = code segment of DVDOS4GX.DVR

BX = ??? (012Ch)

CX = ??? (0006h)

SeeAlso: AX=BFDEh/BX=0000h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0013h

Return: DX:CX -> ???

SeeAlso: AX=BFDEh/BX=000Eh


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - LOCK ??? MAILBOX

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0014h

CX = index of ??? mailbox

(0000h-0004h valid, but no range checking done)

Return: AX,BX destroyed

SeeAlso: AX=BFDEh/BX=0015h,AX=BFDEh/BX=0017h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - UNLOCK ??? MAILBOX

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0015h

CX = index of ??? mailbox

(0000h-0004h valid, but no range checking done)

Return: AX,BX destroyed

SeeAlso: AX=BFDEh/BX=0014h,AX=BFDEh/BX=0016h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - CHECK IF ??? MAILBOX OWNED

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0016h

CX = index of ??? mailbox

(0000h-0004h valid, but no range checking done)

Return: AX = status

    0000h no one owns mailbox

    0001h mailbox has an owner

BX destroyed

SeeAlso: AX=BFDEh/BX=0015h,AX=BFDEh/BX=0017h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ??? MAILBOX OWNER

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = 0017h

CX = index of ??? mailbox

(0000h-0004h valid, but no range checking done)

Return: AX = segment of mailbox owner's handle

BX = segment of caller's task handle

SeeAlso: AX=BFDEh/BX=0015h,AX=BFDEh/BX=0016h


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = FFFDh

Return: CX:DX = ???

SeeAlso: AX=BFDEh/BX=FFFEh


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = FFFEh

CX:DX = ???

SeeAlso: AX=BFDEh/BX=FFFDh


INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - NOP

Category: E - DOS extenders

Inp.:

AX = BFDEh

BX = FFFFh

SeeAlso: AX=BFDEh/BX=0000h


INT 15 C0-- - SYSTEM - GET CONFIGURATION (XT after 1/10/86,AT mdl 3x9,CONV,XT286,PS)

Category: B - BIOS

Inp.:

AH = C0h

Return: CF set if BIOS doesn't support call

CF clear on success

    ES:BX -> ROM table (see #0383)

AH = status

    00h successful

    86h unsupported function

Notes:	the 1/10/86 XT BIOS returns an incorrect value for the feature byte

the configuration table is at F000h:E6F5h in 100% compatible BIOSes

Dell machines contain the signature "DELL" or "Dell" at absolute FE076h

  and a model byte at absolute address FE845h (see #0389)

Hewlett-Packard machines contain the signature "HP" at F000h:00F8h and

  a product identifier at F000h:00FAh (see #0392)

Compaq machines can be identified by the signature string "COMPAQ" at

  F000h:FFEAh, and is preceded by additional information (see #0390)

Tandy 1000 machines contain 21h in the byte at F000h:C000h and FFh in

  the byte at FFFFh:000Eh; Tandy 1000SL/TL machines only provide the

  first three data bytes (model/submodel/revision) in the returned

  table

Toshiba laptops contain the signature "TOSHIBA" at FE010h as part of

  a laptop information record at F000h:E000h (see #0393)

some AST machines contain the string "COPYRIGHT AST RESEARCH" one byte

  past the end of the configuration table

the Phoenix 386 BIOS contains a second version and date string

  (presumably the last modification for that OEM version) beginning at

  F000h:FFD8h, with each byte doubled (so that both ROM chips contain

  the complete information)

SeeAlso: AH=C7h,AH=C9h,AH=D1h


INT 15 C1-- - SYSTEM - RETURN EXTENDED-BIOS DATA-AREA SEGMENT ADDRESS (PS)

Category: B - BIOS

Inp.:

AH = C1h

Return: CF set on error

CF clear if successful

    ES = segment of data area

SeeAlso: AH=04h"ABIOS"


INT 15 C200 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - ENABLE/DISABLE

Category: M - mouse/pointing device

Inp.:

AX = C200h

BH = new state

    00h disabled

    01h enabled

Return: CF set on error

AH = status (see #0395)


INT 15 C201 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - RESET

Category: M - mouse/pointing device

Inp.:

AX = C201h

Return: CF set on error

    AH = status (see #0395)

CF clear if successful

    BH = device ID

    BL = value returned by attached device after reset

AAh if device is a mouse

Note:	after successful completion of this call, the pointing device is set

  as follows: disabled, sample rate 100 Hz, resolution 4 counts/mm,

  scaling 1:1, unchanged data package size

SeeAlso: INT 33/AX=0000h


INT 15 C202 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET SAMPLING RATE

Category: M - mouse/pointing device

Inp.:

AX = C202h

BH = sampling rate

    00h 10/second

    01h 20/second

    02h 40/second

    03h 60/second

    04h 80/second

    05h 100/second

    06h 200/second

Return: CF set on error

    AH = status (see #0395)

SeeAlso: INT 33/AX=001Ch


INT 15 C203 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET RESOLUTION

Category: M - mouse/pointing device

Inp.:

AX = C203h

BH = resolution (see #0396)

Return: CF set on error

    AH = status (see #0395)


INT 15 C204 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - GET TYPE

Category: M - mouse/pointing device

Inp.:

AX = C204h

Return: CF set on error

    AH = status (see #0395)

CF clear if successful

    BH = device ID


INT 15 C205 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - INITIALIZE

Category: M - mouse/pointing device

Inp.:

AX = C205h

BH = data package size (1 - 8 bytes)

Return: CF set on error

    AH = status (see #0395)

Note:	the pointing device is set as follows: disabled, 100 Hz sample rate,

  resolution 4 counts/mm, scaling 1:1

SeeAlso: AX=C201h


INT 15 C206 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - EXTENDED COMMANDS

Category: M - mouse/pointing device

Inp.:

AX = C206h

BH = subfunction

    00h return device status

Return: BL = pointing device status (see #0397)

CL = resolution (see #0396)

DL = sample rate, reports per second

    01h set scaling at 1:1

    02h set scaling at 2:1

Return: CF set on error

    AH = status (see #0395)


INT 15 C207 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET DEVICE HANDLER ADDR

Category: M - mouse/pointing device

Inp.:

AX = C207h

ES:BX -> FAR user device handler or 0000h:0000h to cancel

Return: CF set on error

    AH = status (see #0395)

Note:	when the subroutine is called, it is passed the following values on

  the stack; the handler should return with a FAR return without

  popping the stack:

WORD 1: status (see #0398)

WORD 2: X data (high byte = 00h)

WORD 3: Y data (high byte = 00h)

WORD 4: 0000h

SeeAlso: INT 33/AX=000Ch


INT 15 C3-- - SYSTEM - ENABLE/DISABLE WATCHDOG TIMEOUT (PS50+)

Category: B - BIOS

Inp.:

AH = C3h

AL = function

    00h disable PS/2 watchdog timer

    01h enable PS/2 watchdog timer

BX = timer counter (0001h-00FFh)

    02h disable Gearbox system

    03h enable Gearbox system

Return: CF set on error

CF clear if successful

Note:	the watchdog timer generates an NMI

SeeAlso: INT 21/AH=2Bh/CX=6269h/DX=742Dh


INT 15 C4-- - SYSTEM - PROGRAMMABLE OPTION SELECT (PS50+)

Category: B - BIOS

Inp.:

AH = C4h

AL = subfunction

    00h return base POS register address

    01h enable selected slot for setup

BL = slot number (1 to 8)

    02h disable setup for all slots (enable adapter)

Return: CF set on error

DX = base POS register address (if subfunction 00h)

SeeAlso: AH=C6h


INT 15 C5-- - OS HOOK - ROM BIOS TRACING CALLOUT (PS30/286,PS50Z,PS95)

undocumented function

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

AH = C5h

AL = interrupt being invoked

    01h INT 19

    02h INT 14

    03h INT 16

    04h INT 40 (floppy INT 13)

    05h INT 17

    06h INT 10

    07h INT 12

    08h INT 11

    09h INT 1A

Return: all registers except AX must be preserved

Notes:	called as the very first action of the indicated ROM BIOS interrupt

  handlers on the PS/2 Models 30/286, 50Z, and 95

default handler does nothing and returns CF clear for the above

  subfunctions, CF set and AH=86h for all other subfunctions

value of AX passed to the original interrupt handler is pushed on

  stack immediately prior to call


INT 15 C6-- - later PS/2 models - GET POS DATA

undocumented function

Category: B - BIOS

Inp.:

AH = C6h

???

Return: ???

Notes:	this function is referenced by name and number in some IBM BIOS manuals

IBM reports that "there are a number of problems with this call" and

  does not recommend its use.

SeeAlso: AH=C4h


INT 15 C7-- - SYSTEM - later PS/2s - RETURN MEMORY-MAP INFORMATION

Category: B - BIOS

Inp.:

AH = C7h

DS:SI -> user supplied memory map table (see #0399)

Note:	call AH=C0h and examine bit 4 of feature byte 2 to check if this

  function is supported

Return: CF set on error, clear if successful

SeeAlso: AH=C0h,AH=C9h,AH=D1h


INT 15 C8-- - SYSTEM - ENABLE/DISABLE PROCESSOR FUNCTIONS

Category: B - BIOS

Inp.:

AH = C8h

AL = function

    00h disable cache or (90 and 95) disable cache L1

    01h enable cache or (90 and 95) enable cache L1

    ---models 90 and 95 only---

    02h disable cache L2

    03h enable cache L2

    04h disable both caches

    05h enable both caches

    06h return status of both caches

    07h-FFh Reserved

Return: CF set on error

CF clear if successful

    AH = status (see #0400)

For subfunction 06h only:

    BH = status of cache L2

00h enabled

01h disabled or not installed

    BL = status of cache L1 (same codes as BH)

Notes:	 supported by at least PS/2 70, 70/486, 80-A21, 90, 95

call AH=C0h and examine bit 3 of feature byte 2 to check if this

  function is supported.

on a 486 system, any external caches must be disabled when the

  on-chip cache (L1) is disabled.

SeeAlso: AH=C0h


INT 15 C9-- - newer PS/2; various BIOSes - GET CPU TYPE AND MASK REVISION

Category: B - BIOS

Inp.:

AH = C9h

AL = 10h (may be required on some non-PS BIOSes)

Return: CF clear if successful

    AH = 00h

    CH = CPU type (see #0401)

    CL = mask revision (stepping level) (see #0402)

CF set on error

    AH = status (80h,86h = function not supported)

Notes:	the BIOS must save DX at startup in order to be able to support this

  call; PS/2 Models 56, 57, 90, and 95 are known to support it

the PS/2 BIOS merely reads CMOS locations 190h (type) and 191h (rev)

SeeAlso: AX=DA92h


INT 15 CA-- - PS/2 Model 95 - READ/WRITE CMOS MEMORY

undocumented function

Category: B - BIOS

Inp.:

AH = CAh

AL = function

    00h read CMOS

Return: CL = value of CMOS location

    01h write CMOS

CL = new value for CMOS location

BL = CMOS location (0Eh-3Fh)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (see #0403)

Note:	writes do not update the CMOS checksum


INT 15 CB-- - PS/2 Model 95 - RESERVED

undocumented function

Category: B - BIOS

Inp.:

AH = CBh

???

Return: ???


INT 15 CC-- - PS/2 Model 95 - RESERVED

undocumented function

Category: B - BIOS

Inp.:

AH = CCh

???

Return: ???


INT 15 CCCC - Toshiba laptops - VCHAD.EXE - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = CCCCh

Return: AX = ABCDh if installed

Note:	supported by Toshiba VGA change display utility VCHAD.EXE ver 2.90+

  older versions have the string "VCHAD" 2 bytes after the address of

  the INT 15 handler which is hooked by all versions for the SysReq key

SeeAlso: AH=85h


INT 15 CD-- - PS/2 Model 95 - RESERVED

undocumented function

Category: B - BIOS

Inp.:

AH = CDh

???

Return: ???


INT 15 CE-- - later PS/2s - ALLOCATE DMA ARBITRATION LEVEL

Category: B - BIOS

Inp.:

AH = CEh

BL = 00h-0Eh arbitration level to be allocated

     0Fh-FFh reserved

AL = option byte

    bit 7-1: reserved (0)

    bit 0: 0 = need DMA channel for arbitration level requested

   1 = no channel required for arbitration level

Return: CF set on error

    AH = status (80h,86h = function not supported)

CF clear on success

    AL = channel number

00h-07h channel number allocated for the arbiration level

08h-FEh reserved

FFh	no channel requested for arbitration level

    AH = status (see #0404)

Notes:	 arbitration level 00h has the highest priority, 0Eh the lowest

 to perform a DMA transfer operation, be sure to call this function

   first, and call AH=CFh afterward.  Failure to use this function

   can cause unpredictable results.

SeeAlso: AH=CFh


INT 15 CF-- - later PS/2s - DEALLOCATE DMA ARBITRATION LEVEL

Category: B - BIOS

Inp.:

AH = CFh

BL = arbitration level to be deallocated (see AH=CEh)

Return: CF set on error

    AH = status (80h,86h = function not supported)

CF clear on success

    AH = status

00h success

04h arbitration level not allocated

SeeAlso: AH=CEh


INT 15 D0-- - later PS/2s - RESERVED

Category: B - BIOS

Inp.:

AH = D0h

???

Return: ???


INT 15 D100 - later PS/2s - GET NUMBER OF DEVICE DESCRIPTOR TABLE (DDT) ENTRIES

Category: B - BIOS

Inp.:

AX = D100h

DX = 0000h (reserved, must set to 0)

Return: BL = size of one DDT entry, in bytes

CX = number of DDT entries

AH = return code (see #0405)

CF set on error

CF clear on success

SeeAlso: AH=C0h,AH=C7h,AH=C9h,AX=D101h,AX=D102h,AX=D103h,AX=D104h


INT 15 D101 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY NUMBER

Category: B - BIOS

Inp.:

AX = D101h

BX = number of requested entry (starting with 1)

DX = 0000h (reserved, must be set to 0)

ES:DI -> buffer to contain DDT entry (see #0406)

Return:	AH = return code (see #0405)

CF set on error

CF clear on success

    ES:DI buffer filled with DDT entry

SeeAlso: AH=C0h,AH=C7h,AH=C9h,AX=D100h,AX=D102h,AX=D104h


INT 15 D102 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY I/O ADDRSS

Category: B - BIOS

Inp.:

AX = D102h

BX = entry number at which to start searching

CX = requested I/O port address

DX = 0000h (reserved, must be set to 0)

ES:DI -> buffer to contain DDT entry (see #0406)

Return:	AH = return code (see #0405)

BX = DDT entry number where I/O port was found, or total entries

     plus 1 if port was not found.

CF set on error

CF clear on success

    ES:DI buffer filled with DDT entry

Desc:	the DDT is searched from the specified entry for the I/O port in CX,

  and the first entry in which it is found is returned

SeeAlso: AH=C0h,AH=C7h,AH=C9h,AX=D100h,AX=D101h,AX=D103h,AX=D104h


INT 15 D103 - later PS/2s - RETURN ENTIRE DDT

Category: B - BIOS

Inp.:

AX = D103h

DX = 0000h (reserved, must be set to 0)

ES:DI -> buffer to contain DDT entry (see #0406)

Return:	AH = return code (see #0405)

CF set on error

CF clear on success

    ES:DI buffer filled with DDT entry

SeeAlso: AH=C0h,AH=C7h,AH=C9h,AX=D100h,AX=D104h


INT 15 D104 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY DEVICE ID

Category: B - BIOS

Inp.:

AX = D104h

BX = entry number at which to start searching

CX = requested device ID

DX = 0000h (reserved, must be set to 0)

ES:DI -> buffer to contain DDT entry (see #0406)

Return:	AH = return code (see #0405)

BX = DDT entry number where device ID was found, or total entries

      plus 1 if port was not found.

CF set on error

CF clear on success

    ES:DI buffer filled with DDT entry

Desc:	the DDT is searched from the specified entry for the device ID in CX,

  and the first entry in which it is found is returned.

SeeAlso: AH=C0h,AH=C7h,AH=C9h,AX=D100h,AX=D101h,AX=D103h


INT 15 D2-- - later PS/2s - RESERVED

Category: B - BIOS

Inp.:

AH = D2h

???

Return: ???


INT 15 D3-- - later PS/2s - RESERVED

Category: B - BIOS

Inp.:

AH = D3h

???

Return: ???


INT 15 D4-- - later PS/2s - GET PHYSICAL FIXED DISK DRIVE NUMBER (SELECTABLE BOOT)

Category: B - BIOS

Inp.:

AH = D4h

DL = logical fixed disk drive number

Return:	AH = return code (see #0408)

CF set on error

CF clear on success

    AL = physical fixed disk drive number


INT 15 D5-- - later PS/2s - RESERVED

Category: B - BIOS

Inp.:

AH = D5h

???

Return: ???


INT 15 D600 - later PS/2s - READ BOOT DEVICE ID

Category: B - BIOS

Inp.:

AX = D600h

BL = 00h

DX = device ID

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = status (86h for function not supported)

SeeAlso: AX=D600h/BL=01h,AX=D601h/BL=00h,AX=D602h


INT 15 D600 - later PS/2s - WRITE BOOT DEVICE ID

Category: B - BIOS

Inp.:

AX = D600h

BL = 01h

DX = device ID

Return: CF clear on success

    AH = 00h

CF set on error

    AH = status (86h for function not supported)

SeeAlso: AX=D600h/BL=00h,AX=D601h/BL=01h


INT 15 D601 - later PS/2s - READ BOOT DEVICE KEY

Category: B - BIOS

Inp.:

AX = D601h

BL = 00h

DX = device ID

Return: CF clear on success

    AH = 00h

CF set on error

    AH = status (86h for function not supported)

SeeAlso: AX=D600h/BL=00h,AX=D601h/BL=01h,AX=D602h


INT 15 D601 - later PS/2s - WRITE BOOT DEVICE KEY

Category: B - BIOS

Inp.:

AX = D601h

BL = 01h

DX = device ID

Return: CF clear on success

    AH = 00h

CF set on error

    AH = status (86h for function not supported)

SeeAlso: AX=D600h/BL=01h,AX=D601h/BL=00h


INT 15 D602 - later PS/2s - QUERY BOOT REFERENCE PARTITION

Category: B - BIOS

Inp.:

AX = D602h

Return: CF clear on success

    AH = 00h

    AL = status of reference-partition boot request

00h boot not requested

01h boot requested

CF set on error

    AH = status (86h for function not supported)

SeeAlso: AX=D601h/BL=00h


INT 15 D800 - EISA SYSTEM ROM - READ SLOT CONFIGURATION INFORMATION

Category: X - expansion bus BIOSes

Inp.:

AX = D800h

CL = slot number (including embedded and virtual)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (80h,82h,83h,86h,87h)(see #0410)

AL = bit flags (see #0409)

BH = major revision level of configuration utility

BL = minor revision level of configuration utility

CX = checksum of configuration file

DH = number of device functions

DL = combined function information byte

SI:DI = 4-byte compressed ID (DI = bytes 0&1, SI = bytes 2&3)

Note:	call with AL=80h if using 32-bit CS addressing mode instead of 16-bit

SeeAlso: AX=D801h,AX=D804h


INT 15 D801 - EISA SYSTEM ROM - READ FUNCTION CONFIGURATION INFORMATION

Category: X - expansion bus BIOSes

Inp.:

AX = D801h

CH = function number to read

CL = slot number (including embedded and virtual)

DS:SI -> 320-byte buffer for standard configuration data block

Return: CF clear if successful

    AH = 00h

    DS:SI buffer filled

CF set on error

    AH = error code (80h-83h,86h,87h) (see #0410)

BX destroyed

Note:	call with AL=81h if using 32-bit CS addressing mode instead of 16-bit


INT 15 D802 - EISA SYSTEM ROM - CLEAR NONVOLATILE MEMORY (EISA CMOS)

Category: X - expansion bus BIOSes

Inp.:

AX = D802h

BH = EISA config utility major revision level

BL = EISA config utility minor revision level

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (84h,86h,88h) (see #0410)

Note:	call with AL=82h if using 32-bit CS addressing mode instead of 16-bit

SeeAlso: AX=D803h


INT 15 D803 - EISA SYSTEM ROM - WRITE NONVOLATILE MEMORY

Category: X - expansion bus BIOSes

Inp.:

AX = D803h

CX = length of data structure (0000h = empty slot)

includes two bytes for config file checksum

DS:SI -> configuration data

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (84h-86h) (see #0410)

Note:	call with AL=83h if using 32-bit CS addressing mode instead of 16-bit

SeeAlso: AX=D802h


INT 15 D804 - EISA SYSTEM ROM - READ PHYSICAL SLOT

Category: X - expansion bus BIOSes

Inp.:

AX = D804h

CL = slot number (including embedded and virtual)

Return: CF clear if successful

    AH = 00h

CF set on error

    AH = error code (80h,83h,86h) (see #0410)

SI:DI = 4-byte compressed ID (DI = bytes 0&1, SI = bytes 2&3)

Note:	call with AL=84h if using 32-bit CS addressing mode instead of 16-bit

SeeAlso: AX=D800h


INT 15 D820 - Compaq LTE Lite - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = D820h

DS:SI -> 17-byte buffer for ???

Return: DS:SI buffer filled (first byte is length of remaining data, unless

  it is greater than 10h, in which case the second byte is 00h and no

  other data is returned)

Note:	this function is also supported by Compaq's EISA System ROM, Contura

  486/486c/486cx and recent DESKPRO/i ROMs

SeeAlso: AX=D821h


INT 15 D821 - Compaq LTE Lite - SET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = D821h

DS:SI -> counted string (should not be more than 16 bytes)

Return: AH = 00h

Note:	this function is also supported by Compaq's EISA System ROM, Contura

  486/486c/486cx and recent DESKPRO/i ROMs

SeeAlso: AX=D820h


INT 15 D822 - Compaq EISA System ROM 04/08/93 - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = D822h

BL = 00h

CX = size of buffer or 0000h to retrieve required buffer size

DS:SI -> buffer for ??? (if CX nonzero)

Return: CF clear if successful

    AH = 00h

    DH = 08h

    CX = required buffer size to retrieve all data (if CX=0 on entry)

    DS:SI buffer filled (if CX nonzero on entry)

CF set on error (BL nonzero)

    AH = 86h


INT 15 D823 - Compaq EISA System ROM 04/08/93 - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = D823h

BL = subfunction??? (00h or 80h)

BH = ???

DS:SI -> buffer for ??? (see #0411)

Return: CF clear if successful

    AH = 00h

    DH = 08h

    DL = ???

CF set on error

    AH = error code

86h BL neither 00h nor 80h

87h ???


INT 15 D824 - Compaq EISA System ROM 04/08/93 - ???

Category: - - (none)

Inp.:

AX = D824h

CX = ???

DS:SI -> ASCIZ string containing ???

Return: CF clear if successful

    AH = 00h

    CX = ???

CF set on error

    AH = error code

87h ??? failed

88h ???

Note:	these functions are only available if ??? from keyboard controller

  command C0h


INT 15 D825 - Compaq EISA System ROM 04/08/93 - ???

Category: - - (none)

Inp.:

AX = D825h

CX = ???

SI = ???

DI = ???

???

Return: CF clear if successful

    AH = 00h

    CX = ???

CF set on error

    AH = error code

87h ??? failed

88h ???

    CX = ???

Note:	these functions are only available if ??? from keyboard controller

  command C0h


INT 15 D826 - Compaq EISA System ROM 04/08/93 - ???

Category: - - (none)

Inp.:

AX = D826h

BX = ???

CX = size of buffer in bytes

DS:SI -> buffer for ???

???

Return: CF clear if successful

    AH = 00h

    CX = ???

CF set on error

    AH = error code

87h ??? failed

88h ???

Note:	these functions are only available if ??? from keyboard controller

  command C0h


INT 15 D8-- - EISA SYSTEM ROM - 32-bit CS ADDRESSING MODE CALLS

Category: X - expansion bus BIOSes

Inp.:

AH = D8h

AL = 80h to 84h

other registers as appropriate for AL=00h to 04h

Return: as appropriate for AL=00h to 04h

Note:	these functions are identical to AX=D800h to D804h, except that they

  should be called when using 32-bit CS addressing mode (pointers use

  ESI rather than SI as offset) instead of 16-bit addressing mode

SeeAlso: AX=D800h,AX=D801h,AX=D802h,AX=D803h,AX=D804h


INT 15 D8-- - Compaq EISA System ROM 04/08/93 - 32-bit CS ADDRESSING MODE CALLS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = D8h

AL = A0h to A6h

other registers as appropriate for AL=20h to 26h

Return: as appropriate for AL=20h to 26h

Note:	these functions are identical to AX=D820h to D826h, except that they

  should be called when using 32-bit CS addressing mode


INT 15 DA-- - AMI PCI BIOS v1.00.05.AX1 - ???

undocumented function

Category: - - (none)

Inp.:

AH = DAh

AL = function (00h-08h,12h,14h,15h,19h,88h-8Eh,92h,99h)

other registers vary by function

Return: CF clear if successful

    varies by function

CF set on error

    AH = error code (86h unsupported [sub]function)

Note:	functions not listed above always return CF set and AH=86h; in the

  examined BIOS, functions 02h-04h,06h-07h,89h-8Bh, and 8Dh also

  always return CF set and AH=86h

SeeAlso: AX=DA00h,AX=DA01h,AX=DA88h,AX=DA99h,AX=DB00h


INT 15 DA00 - AMI PCI BIOS - ???

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DA00h

CL = subfunction

    00h ???

    01h ???

    02h get ???

???

Return: CF clear if successful

    ???

CF set on error

    AH = error code (86h unsupported subfunction)

Note:	in the v1.00.05.AX1 BIOS, subfunctions 00h and 01h always return

  failure

SeeAlso: AX=DA01h


INT 15 DA01 - AMI PCI BIOS - CPU SPEED CONTROL

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DA01h

CL = subfunction (00h-02h)

    00h set low CPU speed

    01h set high CPU speed

    02h get current CPU speed

Return: CF clear if successful

    AH = current/new CPU speed (00h low, 01h high)

    AL = ??? (00h)

CF set on error

    AH = error code (86h unsupported subfunction)

Notes:	in the v1.00.05.AX1 BIOS, subfunctions 00h and 01h are NOPs in both

  protected and V86 modes due to a test of MSW bit 0

setting the CPU speed also generates the same audible signals generated

  when manually switching speeds with Ctrl-Alt-Gray- and Ctrl-Alt-Gray+

BUG:	the BIOS apparently intends to return CF set if ???, but fails to use

  a different exit path in that case, resulting in CF clear


INT 15 DA05 - AMI PCI BIOS - GET ??? AND BIOS REVISION STRINGS

undocumented function

Category: - - (none)

Inp.:

AX = DA05h

ES:SI -> 8-byte buffer for ??? and BIOS revision strings

Return: CF clear

ES:SI buffer filled

AL = 00h

CX = ??? (0000h)

Notes:	for BIOS v1.00.05.AX1, the ??? string is "IDNO" and the BIOS revision

  string is "AX1 "

SeeAlso: AX=DA15h,AX=DB04h


INT 15 DA08 - AMI PCI BIOS - ???

undocumented function

Category: - - (none)

Inp.:

AX = DA08h

???

Return: CF clear if successful

    ???

CF set on error

    AH = error code (86h unsupported subfunction)

Note:	in the examined v1.00.05.AX1 BIOS, this call always returns failure


INT 15 DA12 - AMI PCI BIOS - v1.00.05.AX1 - ???

undocumented function

Category: - - (none)

Inp.:

AX = DA12h

CL = subfunction

    00h ???

    01h	???

    02h get ???

    03h ???

    04h ???

???

Return: CF clear if successful

    ???

CF set on error

    AH = error code (86h unsupported subfunction)

Desc:	??? performs various manipulations on system chipset registers

Notes:	subfunctions 00h and 01h are NOPs in protected and V86 modes due to

  a test of MSW bit 0

subfunctions 00h-02h always return success


INT 15 DA14 - AMI PCI BIOS - GET/SET ???

undocumented function

Category: - - (none)

Inp.:

AX = DA14h

CL = subfunction

    00h read

    01h write

DH = new value for ??? (00h-02h)

DL = index of ??? (00h-03h, but not range-checked)

???

Return: CF clear if successful

    DH = current value of ??? if reading

CF set on error

    AH = error code (86h unsupported subfunction)

Note:	the values for indexes 00h and 01h are stored in CMOS RAM location 19h,

  and the values for 02h and 03h are stored in location 36h

BUG:	the v1.00.05.AX1 BIOS range-checks DH on subfunction 00h instead of

  subfunction 01h, even though DH is never used by subfunction 00h


INT 15 DA15 - AMI PCI BIOS - GET ??? AND BIOS REVISION STRINGS

undocumented function

Category: - - (none)

Inp.:

AX = DA15h

ES:DI -> 8-byte buffer for ??? and BIOS revision strings

Return: CF clear

ES:DI buffer filled

AL = 00h

Note:	for BIOS v1.00.05.AX1, the ??? string is "IDNO" and the BIOS revision

  string is "AX1 "

SeeAlso: AX=DA05h,AX=DB04h


INT 15 DA19 - AMI PCI BIOS - GET/SET ???

undocumented function

Category: - - (none)

Inp.:

AX = DA19h

CL = subfunction

    00h get first ???

    01h get second ???

    02h set first ???

BX = ???

DX = ???

    03h set second ???

BX = ???

DX = ???

Return: CF clear if successful

    AX = 0000h

    BX,DX = ??? (subfunctions 00h and 01h only)

CF set on error

    AH = error code (86h unsupported subfunction)

Note:	the first ??? is stored in CMOS RAM locations 1Bh-1Eh, the second in

  locations 1Fh-22h in the v1.00.05.AX1 BIOS


INT 15 DA88 - AMI PCI BIOS - GET EXTENDED MEMORY SIZE

undocumented function

Category: - - (none)

Inp.:

AX = DA88h

Return: CF clear (successful)

AX = 0000h

CL:BX = extended memory size in KBytes

SeeAlso: AH=88h


INT 15 DA8C - AMI PCI BIOS - GET BIOS AND CHIPSET??? VERSION

undocumented function

Category: - - (none)

Inp.:

AX = DA8Ch

CL = subfunction

    00h get BIOS version string

ES:DI -> 12-byte buffer for version string

    01h get chipset ???

BL = what to retrieve (00h,01h)

ES:DI -> 12-byte buffer for chipset info???

Return: CF clear if successful

    ES:DI buffer filled

CF set on error

    AH = error code (86h unsupported subfunction)

Notes:	the v1.00.05.AX1 BIOS returns "1.00.05.AX1 " as its version string

subfunction 01h returns five bytes read from the chipset registers

  at C000h-C004h (BL=00h) or C200h-C204h (BL=01h), padded to 12 bytes

  with NULs.  On my machine, the results were 86h 80h A3h 04h 46h and

  86h 80h 84h 04h 0Fh, respectively; on another machine, the results

  were identical except that the last byte was 07h instead of 0Fh

SeeAlso: AX=DB04h


INT 15 DA8E - AMI PCI BIOS - ???

undocumented function

Category: - - (none)

Inp.:

AX = DA8Eh

???

Return: CF clear if successful

    ???

CF set on error

    AH = error code (86h unsupported subfunction)

Note:	in the	v1.00.05.AX1 BIOS, this call always returns failure


INT 15 DA92 - AMI PCI BIOS - GET CPU TYPE AND SPEED

undocumented function

Category: - - (none)

Inp.:

AX = DA92h

Return: CF clear (successful)

AL = CPU stepping (see also #0402 at INT 15/AH=C9h)

AH = CPU model

BL = CPU family (05h = Pentium, etc.)

CX = external clock speed??? in BCD

    (0040h,0050h,0060h,0066h are possible return values on my

      Pentium with the Intel "Neptune" chipset)

EAX high word destroyed

Note:	90 MHz and faster Pentium CPUs can be configured to run at 1.0, 1.5,

  or 2.0 times the external clock speed, i.e. a typical 90 MHz Pentium

  system will run the motherboard at 60 MHz (my 90 MHz Pentium returns

  0060h in CX)

SeeAlso: AH=C9h


INT 15 DA99 - AMI PCI BIOS - GET/SET ??? FLAG

undocumented function

Category: - - (none)

Inp.:

AX = DA99h

CL = subfunction

    00h check if ???

    01h set ??? flag

    02h clear ??? flag

Return: CF clear if successful

    AH = ??? (00h,01h)

    AL = 00h

CF set on error

    AH = error code (86h unsupported subfunction)

Note:	the flag is stored in bit 0 of CMOS RAM location 2Ch for BIOS

  v1.00.05.AX1


INT 15 DB00 - AMI BIOS - Flash ROM - ???

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DB00h

DS:SI -> ???

ES:DI -> ???

Return: CF clear if successful

CF set on error

    AH = status (86h if not implemented)

Note:	used by FMUP.EXE, Intel's Flash Memory Update utility

SeeAlso: AH=DAh,AX=DB01h,AX=DB04h


INT 15 DB01 - AMI BIOS - Flash ROM - GET BIOS SUBSYSTEM INFORMATION

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DB01h

CL = BIOS subsystem information identifier (see #2618)

Return: CF clear if successful

    AX = 0000h

    ES:DI -> 56-byte record describing subsystem (see #2619)

CF set on error

    AH = status (01h,86h)

    AL = 00h

Note:	used by FMUP.EXE, Intel's Flash Memory Update utility

SeeAlso: AX=DB00h,AX=DB02h


INT 15 DB02 - AMI BIOS - Flash ROM - GET SIZE OF ??? CODE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DB02h

Return: CF clear

AX = 0000h

BX = size of ??? in bytes

Note:	used by FMUP.EXE, Intel's Flash Memory Update utility

SeeAlso: AX=DB00h,AX=DB03h


INT 15 DB03 - AMI BIOS - Flash ROM - GET ??? CODE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DB03h

DS:SI -> ???

ES:DI -> buffer for ??? code

BX = ???

DX = ???

Return: CF clear if successful

    AH = ???

    BX = ???

    DX = ???

CF set on error

    AH = error code

Notes:	the entry point for the copied code (which is fully relocatable) is

  the very first byte (see #2620)

used by FMUP.EXE, Intel's Flash Memory Update utility

SeeAlso: AX=DB00h,AX=DB02h


INT 15 DB04 - AMI BIOS - Flash ROM - GET BIOS REVISION

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AX = DB04h

Return: CF clear

BL:BH:DL:DH = BIOS revision string

    ('AX1 ' for v1.00.05.AX1, 'AV0M' for v1.00.03.AV0M)

CL = BIOS major version??? (01h)

CH = BIOS minor version??? (00h)

AL = ??? (02h)

Note:	used by FMUP.EXE, Intel's Flash Memory Update utility

SeeAlso: AX=DA05h,AX=DA15h,AX=DA8Ch,AX=DB00h,AX=DB03h


INT 15 DE00 - DESQview - GET PROGRAM NAME

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE00h

Return: AX = offset into DESQVIEW.DVO of program most recently selected from

the "Switch Windows" menu (see #0412)

Note:	always returns AX=0000h under DESQview/X

SeeAlso: AX=DE07h


INT 15 DE01 - DESQview - UPDATE "OPEN WINDOW" MENU

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE01h

Return: nothing

Notes:	reads DESQVIEW.DVO, disables Open menu if file not in current directory

NOP for DESQview/X


INT 15 DE02 - DESQview 1.x only - SET ??? FLAG FOR CURRENT WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE02h

Return: nothing

Note:	this call is a NOP in DV 2.x

SeeAlso: AX=DE03h


INT 15 DE03 - DESQview 1.x only - GET ??? FOR CURRENT WINDOW

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE03h

Return: AX = ??? for current window

BX = ??? for current window

Note:	this call is a NOP in DV 2.x

SeeAlso: AX=DE02h


INT 15 DE04 - DESQview - GET AVAILABLE COMMON MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE04h

Return: BX = bytes of common memory available

CX = largest block available

DX = total common memory in bytes

SeeAlso: AX=DE05h,AX=DE06h


INT 15 DE05 - DESQview - GET AVAILABLE CONVENTIONAL MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE05h

Return: BX = KB of memory available

CX = largest block available

DX = total conventional memory in KB

SeeAlso: AX=DE04h,AX=DE06h


INT 15 DE06 - DESQview - GET AVAILABLE EXPANDED MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE06h

Return: BX = KB of expanded memory available

CX = largest block available

DX = total expanded memory in KB

SeeAlso: AX=DE04h,AX=DE05h


INT 15 DE07 - DESQview - "APPNUM" - GET CURRENT PROGRAM'S NUMBER

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE07h

Return: AX = number of program as it appears on the "Switch Windows" menu

Note:	this API call may be made from a hardware interrupt handler

SeeAlso: AX=DE00h


INT 15 DE08 - DESQview - GET ???

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE08h

Return: AX = 0000h if ??? is not set to the current task

     0001h if ??? is set to the current task


INT 15 DE09 - DESQview - UNIMPLEMENTED

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE09h

Return: nothing (NOP in DV 1.x and 2.x)


INT 15 DE0A - DESQview v2.00+ - "DBGPOKE" - DISPLAY CHARACTER ON STATUS LINE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Ah

BL = character

Return: character displayed, next call will display in next position (which

wraps back to the start of the line if off the right edge of screen)

Notes:	displays character on bottom line of *physical* screen, regardless

  of current size of window (even entirely hidden)

does not know about graphics display modes, just pokes the characters

  into display memory

this API call may be made from a hardware interrupt handler

SeeAlso: AX=1003h


INT 15 DE0B - DESQview v2.00+ - "APILEVEL" - DEFINE MINIMUM API LEVEL REQUIRED

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Bh

BL = API level minor version number

BH = API level major version number

Return: AX = maximum API level (AH = major, AL = minor)

Notes:	if the requested API level is greater than the version of DESQview, a

  "You need a newer version" error window is popped up

the API level defaults to 1.00, and is inherited by child tasks


INT 15 DE0C - DESQview v2.00+ - "GETMEM" - ALLOCATE "SYSTEM" MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Ch

BX = number of bytes

Return: ES:DI -> allocated block or 0000h:0000h (DV 2.26+)

Note:	use SETERROR (AX=DE15h) to avoid a user prompt if there is insufficient

  system memory

SeeAlso: AX=1001h,AX=102Eh,AX=DE0Dh,AX=DE15h,AX=DE19h


INT 15 DE0D - DESQview v2.00+ - "PUTMEM" - DEALLOCATE "SYSTEM" MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Dh

ES:DI -> previously allocated block

Return: nothing

SeeAlso: AX=1002h,AX=DE0Ch


INT 15 DE0E - DESQview v2.00+ - "FINDMAIL" - FIND MAILBOX BY NAME

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Eh

ES:DI -> name to find (see #0413)

CX = length of name

Return: BX = 0000h not found

     0001h found

DS:SI = object handle

SeeAlso: AH=12h/BH=11h,AH=12h/BX=1200h"GETNAME"


INT 15 DE0F - DESQview v2.00+ - ENABLE DESQview EXTENSIONS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Fh

Return: AX and BX destroyed (seems to be bug, weren't saved&restored)

Notes:	sends a manager stream with opcodes AEh, BDh, and BFh to task's window

enables an additional mouse mode


INT 15 DE10 - DESQview v2.00+ - "PUSHKEY" - PUT KEY INTO KEYBOARD INPUT STREAM

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE10h

BH = scan code

BL = character

Return: nothing

Notes:	a later read will get the keystroke as if it had been typed by the user

multiple pushes are read last-in first-out

if a script exists for the pushed key in the current application, the

  script will be executed

early copies of DV 2.00 destroy AX, BX, ES, and DI

SeeAlso: INT 16/AH=05h


INT 15 DE11 - DESQview v2.00+ - "JUSTIFY" - EN/DISABLE AUTOM. WINDOW JUSTIFICATION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE11h

BL = 00h      viewport will not move automatically

     nonzero  viewport will move to keep cursor visible (default)

Return: nothing


INT 15 DE12 - DESQview v2.01+ - "CSTYLE" - SET "C"-COMPATIBLE CONTROL CHAR INTERPRET

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE12h

BX = 0000h    select normal style (linefeed only moves down)

     nonzero  select C style (linefeed moves to start of next line)

Return: nothing

Note:	set on a per-task basis, and inherited from the parent task


INT 15 DE13 - DESQview v2.20+ - "GETCRIT" - GET CRITICAL NESTING COUNT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE13h

Return: BX = number of calls to BEGINC or ENTERC

      (see INT 15/AX=101Bh,INT 15/AX=DE1Ch) without matching ENDC

      (see INT 15/AX=101Ch)

Note:	this API call may be made from within a hardware interrupt handler

SeeAlso: AX=101Bh,AX=101Ch,AX=DE1Bh,AX=DE1Ch


INT 15 DE14 - DESQview v2.20+ - GET OBJECT TYPE

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE14h

ES:DI -> object

Return: BL = 00h not an object

     08h window or task

     09h mailbox

     0Ah keyboard

     0Bh timer

     0Ch objectq

     0Fh pointer

     10h panel

SeeAlso: AX=1016h


INT 15 DE15 - DESQview v2.20+ - SET ERROR HANDLING

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE15h

BL = error handling mode

    00h post system error on all error conditions

    01h return carry flag set on calls to ADDTO, SUBFROM, and WRITE

messages sent to mailboxes which fail due to lack of system

or common memory

    02h (v2.26+) same as 01h, but also return null pointer for GETMEM

calls which fail due to lack of system memory

Return: nothing

SeeAlso: AX=DE0Ch,AX=DE16h


INT 15 DE16 - DESQview v2.20+ - GET ERROR HANDLING

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE16h

Return: BL = current mode

    00h always post system error

    01h return carry flag set on failed mailbox writes

    02h return CF set on failed mailbox writes and NULL on failed

GETMEM calls

SeeAlso: AX=DE15h


INT 15 DE17 - DESQview v2.20-2.25 - reserved

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE17h

Return: pops up "Programming error" window

Note:	AX = 1117h is NOT identical to this call under DESQview 2.20 thru 2.25

SeeAlso: AX=1117h


INT 15 DE17 - DESQview v2.26+ - "ASSERTMAP" - GET/SET MAPPING CONTEXT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE17h

BX = function

    0000h   get current mapping context without setting

    nonzero set new mapping context to BX

Return: BX = mapping context in effect before call

Notes:	mapping contexts determine conventional-memory addressability; setting

  a mapping context ensures that the associated program and data areas

  are in memory for access.  Usable by drivers, TSRs and shared

  programs.

caller need not be running under DESQview

this API call may be made from a hardware interrupt handler

SeeAlso: AX=1016h,AX=1117h,AX=DE21h,INT 2F/AX=1685h


INT 15 DE18 - DESQview v2.20+ - internal - ???

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE18h

BP = function number

    high byte must be 10h

    low byte is function

00h set ???

    BL = ???  (00h-10h, video mode???)

    BH = value to store

03h set ???

    BL = ??? (stored in driver)

0Ah get ???

    ES:DI -> 18-byte buffer to hold ???

Note:	calls video driver (NOP for Hercules driver,probably CGA and MCGA also)


INT 15 DE19 - DESQview v2.23+ - "GETCOMMON" - ALLOCATE "COMMON" MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE19h

BX = number of bytes to allocate

Return: AX = 0000h successful

ES:DI -> allocated block

     nonzero insufficient memory

Note:	this API call may be made from within a hardware interrupt handler

SeeAlso: AX=DE0Ch,AX=DE15h,AX=DE1Ah


INT 15 DE1A - DESQview v2.23+ - "PUTCOMMON" - DEALLOCATE "COMMON" MEMORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE1Ah

ES:DI -> previously allocated block

Return:	AX = 0000h (successful)

Note:	this function may be called from within a hardware interrupt handler

SeeAlso: AX=DE0Dh,AX=DE19h


INT 15 DE1B - DESQview v2.23+ internal - DECREMENT CRITICAL NESTING COUNT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE1Bh

Return: nothing

SeeAlso: AX=101Ch,AX=DE13h,AX=DE1Ch


INT 15 DE1C - DESQview v2.23+ - "ENTERC" - INCREMENT CRITICAL NESTING COUNT

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE1Ch

Return: nothing

Notes:	similar to AX=101Bh, but begins the critical region without ensuring

  that DOS is free

the official documentation states that this call should be paired with

  "ENDC" (AX=101Ch); no mention is made of AX=DE1Bh

this API call may be made from within a hardware interrupt handler

SeeAlso: AX=101Bh,AX=101Ch,AX=DE13h,AX=DE1Bh


INT 15 DE1D - DESQview v2.23+ - "PUTKEY" - FAKE USER KEYSTROKES

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE1Dh

DX = segment of handle for task to receive keystroke

BL = character

BH = scan code

Return: AX = 0000h if successful

   nonzero if receiver's keyboard buffer was full

Notes:	the key is treated as though the user had pressed it, ignoring any

  script which may be bound to the key, and using the current field

  table if the keyboard object is in field processing mode

multiple PUTKEYs are seen in the order in which they are executed

SeeAlso: AX=DE10h


INT 15 DE1E - DESQview v2.23+ - "SCRNINFO" - GET TRUE VIDEO PARAMETERS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE1Eh

Return: CL = actual number of rows on screen

CH = actual number of columns on screen

BL = actual video mode (may differ from INT 10/AH=0Fh return) (v2.26+)

Note:	this API call may be made from a hardware interrupt handler

SeeAlso: INT 10/AH=0Fh


INT 15 DE1F - DESQview v2.23+ - "DOSUSER" - GET HANDLE OF TASK CURRENTLY USING DOS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE1Fh

Return: BX = segment of task handle or 0000h if no tasks are using DOS

Note:	this API call may be made from within a hardware interrupt handler

SeeAlso: AX=DE13h,INT 21/AH=34h


INT 15 DE20 - DESQview v2.26+ - "DISPATCHINT" - INTERRUPT ANOTHER TASK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE20h

BX = segment of handle of task to interupt

DX:CX -> FAR interrupt routine

BP,SI,DI,DS,ES as required by interrupt routine

Return: nothing

Notes:	unlike "PGMINT" (AX=1021h), DISPATCHINT may be applied to the task

  making the DISPATCHINT call

multiple "DISPATCHINT" calls are processed in the order in which they

  were executed

the FAR routine is entered with the current ES, DS, SI, DI, and BP

  values, using the task's internal stack (see AX=101Ah); only SS:SP

  needs to be preserved

this API call may be made from within a hardware interrupt handler

SeeAlso: AX=1021h,AX=DE2Ah


INT 15 DE21 - DESQview v2.26+ - "ASSERTVIR" - CONTROL 386 SCREEN VIRTUALIZATION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE21h

BX = new state

    0000h turn off

    nonzero turn on

Return: BX = old state of virtualization

Notes:	this API call may be made from within a hardware interrupt handler

under DV 2.40 and 2.42, this call appears to have no effect and always

  returns a nonzero value in BX which appears to be the offset within

  the DV common memory segment of the caller's task object; it may

  only have an effect within a hardware interrupt handler

SeeAlso: AX=1117h,AX=DE17h


INT 15 DE22 - DESQview v2.26+ - "PROCESSMEM" - GET TASK MEMORY STATUS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE22h

DX = segment of task handle

Return: DX = total amount of memory in paragraphs

BX = amount of system memory in paragraphs

CX = largest block of system memory available in paragraphs

AX = memory flags (see #0414)

Notes:	if the task handle is a child task, the returned values will be for the

  process containing the task, rather than the task itself

if the process's system memory is swapped out, BX,CX,DX remain

  unchanged, because the memory usage cannot be determined

SeeAlso: AX=DE04h,AX=DE05h,AX=DE06h


INT 15 DE23 - DESQview v2.31+ - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE23h

BX = ??? IRQ number on first PIC?

CX = ??? IRQ number on second PIC?

Return: ???

Note:	called by QEMM 6.00+


INT 15 DE24 - DESQview v2.40+ - "XNEWPROC" - START NEW APPLICATION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE24h

BX = length of .DVP data

CX = length of ??? string

DS:SI -> ??? string

ES:DI -> .DVP data (see #0317 at AX=102Ch)

Return: BX = segment of task handle??? or 0000h on error

Note:	this call is similar to AX=102Ch except that it can interpret the

  extended DVP data

SeeAlso: AX=102Ch


INT 15 DE25 - DESQview v2.40+ - "GETDVPATH" - GET DESQview DIRECTORY

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE25h

ES:DI -> 67-byte buffer for ASCIZ directory name

Return: ES:DI buffer filled with directory from which DESQview was started

BUG:	DV 2.42 does not place a terminating NUL at the end of the directory

  name, so if the buffer is not cleared to zeros before the call,

  there is no way to tell where the directory name ends.  This bug

  has been fixed in DV 2.52 (DV/X 1.02)

SeeAlso: AX=DE2Eh,INT 21/AH=47h


INT 15 DE26 - DESQview v2.40+ - "GETFOREGROUND" - GET KEYBOARD FOCUS

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE26h

Return: BX = segment of handle for task with keyboard focus

Note:	under DESQview/X, the X server always has the keyboard focus unless a

  "direct" window is active

SeeAlso: AX=DE2Fh,INT 2F/AX=DE0Ah


INT 15 DE27 - DESQview v2.50+ - "ADDINSTANCEDATA" - ADD PER-TASK SAVE/RESTORE AREA

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE27h

BX = type

    0000h process

    0001h task

ES:DI -> list of Instance Item Structures (see #0415)

Return: CF clear if successful

    AX = ???

    BX = ???

CF set on error

    AX = error code???

0004h invalid BX value

Note:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

SeeAlso: INT 2F/AX=DE08h,INT 2F/AX=DE09h


INT 15 DE28 - DESQview v2.50+ - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE28h

BX = segment of ??? or 0000h for default

???

Return: ???

Note:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

SeeAlso: AX=DE2Ah


INT 15 DE29 - DESQview/X - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE29h

BX = 0000h

???

Return: CF clear if successful

    ???

CF set on error

Notes:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

under DESQview 2.60, this function and all other subfunctions of

  AX=DE29h always return CF set, as they are unique to DESQview/X


INT 15 DE29 - DESQview/X - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE29h

BX = 0001h

DX = segment of window handle

Return: CF clear if successful

    AX = ???

    DX = ???

CF set on error

Note:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.


INT 15 DE29 - DESQview/X - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE29h

BX = 0002h

DX = segment of window handle

Return: CF clear if successful

    AX = ???

    DX = ???

CF set on error

Note:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.


INT 15 DE29 - DESQview/X - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE29h

BX = 0003h

DX = segment of window handle

Return: CF clear if successful

    ???

CF set on error

Note:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.


INT 15 DE29 - DESQview/X - GET DISPLAY NAME

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE29h

BX = 0004h

CX = size of buffer in bytes

DX = segment of window handle

ES:DI -> buffer for display name

Return: CF clear if successful

    buffer filled with ASCIZ display name (truncated if necessary) or

      null string if no display

CF set on error

Notes:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

the name ":0" refers to the local display


INT 15 DE29 - DESQview/X - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE29h

BX = 0005h

???

Return: CF clear if successful

    ???

CF set on error

Note:	under DESQview 2.60, this function and all other subfunctions of

  AX=DE29h always return CF set, as they are unique to DESQview/X


INT 15 DE2A - DESQview v2.50+ - "DISPATCHINTAFTERDOS" - INTERRUPT ANOTHER TASK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE2Ah

BX = segment of handle for task to interrupt or 0000h for caller

DX:CX -> interrupt routine

BP,SI,DI,DS,ES as required by interrupt routine

Return: nothing

Notes:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

this call is the same as AX=DE20h except that it will delay

  interrupting the specified task until after it has exited DOS

SeeAlso: AX=1021h,AX=DE20h


INT 15 DE2B - DESQview v2.50+ - "OBJNEXT" - TRAVERSE OBJECT LIST

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE2Bh

ES:DI -> starting object

0000h:0000h for first object in list???

Return: AX = status

    0000h successful

ES:DI -> next object of same type (window/non-window)

    0001h failed (ES:DI was not a valid handle)

Notes:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

there are two separate lists, one for window/task objects and one

  for all other objects

SeeAlso: AX=1016h,AX=DE2Ah,AX=DE2Ch


INT 15 DE2C - DESQview v2.50+ - "WININFO" - GET WINDOW INFORMATION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE2Ch

DX = window information format version (0100h for DESQview 2.5x)

BX = segment of window handle or 0000h for default

ES:DI -> buffer for window information (see #0416)

Return: AX = status

    0000h successful

Note:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

SeeAlso: AX=1000h,AX=1016h,AX=DE01h,AX=DE2Bh


INT 15 DE2D - DESQview v2.50+ - GET/SET SOCKET HANDLER

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE2Dh

CX = direction

    FFFFh set socket handler

DX:BX -> FAR function for socket interface

must be of the format described under INT 63"DESQview"

  at #2121

    other get socket handler

Return: DX:BX -> socket handler (see #2121)

Notes:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

the "set" subfunction is normally called only by SOCKET.DVR

SeeAlso: AX=DE2Eh,INT 63"DESQview",#2121


INT 15 DE2E - DESQview v2.50+ - SOCKET API

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE2Eh

DX:BX -> socket record (see #0420)

0000h:0000h to create a new socket record

Return: CX = size of socket record in bytes

DX:BX -> socket record which was used

Notes:	DESQview 2.50-2.52 are distributed as part of DESQview/X v1.0x.

socket records are allocated from common memory

for Unix compatibility, each socket and connection on a socket is

  allocated a DOS file handle (referencing an SFT for NUL) which is

  used on various calls to specify which of possibly multiple

  connections is to be operated upon

SeeAlso: AX=DE2Dh,INT 61/AX=0001h/SF=0001h"VINES",INT 63"DESQview"

Table #0424


INT 15 DE2F - DESQview v2.50+ - "VIDEONOTIFY" - HAS DIRECT WINDOW BEEN ACTIVE?

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE2Fh

Return: BX = status

    0001h keyboard focus has been given to a direct window since the

last call

    0000h if not

Notes:	DESQview 2.50-2.53 are distributed as part of DESQview/X v1.00-1.10.

Quarterdeck stated that this call would not be available under future

  versions of DESQview Classic, but it is still present in v2.60


INT 15 DE30 - DESQview v2.50+ - "GETDVXVERSION" - GET DESQview/X VERSION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE30h

Return: BX = version (BH=major, BL=minor) or 0000h if not DESQview/X

Notes:	DESQview 2.50-2.53 are distributed as part of DESQview/X v1.00-1.10.

you must first check the DESQview version to verify that it is 2.50 or

  greater

SeeAlso: INT 21/AH=2Bh/CX=4445h


INT 15 DE31 - DESQview/X v1.10 - ???

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE31h

CX = ???

    0000h ???

    nonzero ???

???

Return: ???


INT 15 DF-- - Juko UNIQUE UX BIOS - TURBO MODE CONTROL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = DFh

AL = function

    00h turn on Turbo mode

    01h turn off Turbo mode

    02h set Turbo mode according to hardware switch

SeeAlso: INT 13/AX=FFFFh


INT 15 E00F - Compaq Systempro - MULTIPROCESSOR DISPATCH

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E00Fh

ES:BX -> start of 2nd processor's execution

Return: AL = status

    0Fh successful

    00h failure

SeeAlso: AX=E10Eh,AX=E200h


INT 15 E10E - Compaq Systempro - MULTIPROCESSOR END-OF-DISPATCH

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E10Eh

ES:BX -> start of 2nd processor's execution

Return: AL = status

    0Fh successful (halted)

    00h failure (not halted)

SeeAlso: AX=E00Fh,AX=E200h


INT 15 E200 - Compaq Systempro - MULTIPROCESSOR AVAILABLE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E200h

Return: AX bit 15 set if 2nd processor available

SeeAlso: AX=E00Fh,AX=E10Eh


INT 15 E4-- - Tandy??? - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AH = E4h

AL = subfunction

    21h, 89h, 8Ah, 8Bh called by 386MAX v6.01

DL = ???

Return: DL = 00h if successful???

Note:	the section of code in 386MAX which calls these functions also checks

  whether the ROM BIOS has both Tandy and Phoenix Technologies

  signatures if these calls fail; the Tandy 1000SL/TL BIOS does not

  support this function, however, returning the usual CF set/AH=86h for

  "unsupported function".


INT 15 E4-- - Compaq ROM BIOS 03/08/93 and newer - ???

Category: b - vendor-specific BIOS extensions

Inp.:

AH = E4h

AL = subfunction

    00h get ???

Return: CF clear

AH = 00h

CX = 0000h

BX = ??? (read from [XBDA:0094h])

    01h,02h unsupported by this ROM version

Return: CF set, AH = 86h

    80h,90h,A0h,B0h,C0h,D0h,E0h,F0h set ???

Return: CF clear

AH = 00h

CX = 0000h

BX = ???

    81h,91h,A1h,B1h,C1h,D1h,E1h,F1h unsupported by 3/8/93&4/8/93 ROMs

Return: CF set, AH = 86h

Notes:	functions 80h/90h/etc. are not supported by the 4/8/93 EISA System ROM

these functions are not supported by the 7/26/93 LTE Lite 386 ROM


INT 15 E800 - Compaq Contura - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E800h

Return: AX = 0000h

BH = 00h

BL = ??? (read from port 0C7Ch)

CH = ???

CL = ???

DX = 0000h

Note:	also supported by 3/8/93 DESKPRO/i and 7/26/93 LTE Lite 386 ROM BIOS


INT 15 E800 - Compaq Contura Aero, Contura 400 - GET SYSTEM MODEL CODE???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E800h

BX = ??? (0000h)

Return: CF clear if successful

    BH = 02h

    BL = submodel??? (0Ch,0Dh,34h,38h,40h,44h,48h,64h,68h)

CF set on error

others???

Notes:	used by Compaq's SOFTPAQ number 0937 EPPBIOS.SYS to determine whether

  the Enhanced Parallel Port expected by that driver is available

used by Compaq's SOFTPAW number 0856 VOLCTRL.EXE to determine whether

  volume control hardware expected by that driver is available


INT 15 E800 - Compaq Prolinea - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E800h

BX = ??? (1369h)

Return: BH = 01h

BL = ???

others???

Note:	used by Compaq's SOFTPAQ number 0718 INT10_04.SYS to determine whether

  the fix that driver applies is required (will not install if BX on

  return is other than 010Eh or 010Fh)


INT 15 E801 - Compaq Contura - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E801h

Return: CF clear

AX = extended memory in K (read from CMOS locations 30h and 31h)

BH = ???

BL = ???

CX = extended memory in K (read from CMOS locations 17h and 18h)

DX = ???

Note:	also supported by 3/8/93 DESKPRO/i and 7/26/93 LTE Lite 386 ROM BIOS

SeeAlso: AX=E802h"Compaq"


INT 15 E801 - Dell XPS P90 - DISPLAY MEMORY FOR >64M CONFIGURATIONS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E801h

Return: AX = extended memory size in K??? (max 3C00h = 15MB)

BX = extended memory size in 64K blocks???

Note:	supported by the A03 level (6/14/94) and later XPS P90 BIOSes

SeeAlso: AX=E820h"Dell"


INT 15 E802 - Compaq Contura - GET ???

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E802h

Return: CF clear

AX = 0000h

BX = ???

CX = 0000h

Note:	this function is also supported by the LTE Lite 25c, 25E, and 486; not

  supported by LTE Lite 20 and 25.

SeeAlso: AX=E801h"Compaq"


INT 15 E820 - Dell XPS P90 - GET MEMORY MAP

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E820h

EDX = 534D4150h ('SMAP')

EBX = ??? or 00000000h for default

ECX = number of bytes to copy

ES:DI -> buffer for result

Return: CF clear if successful

    ES:DI buffer filled

    EBX = next offset from which to copy or 00000000h if all done

    high word of ECX may be cleared

CF set on error

    AH = error code (86h) (see #0372 at INT 15/AH=80h)

Notes:	supported by the A03 level (6/14/94) and later XPS P90 BIOSes

a maximum of 20 bytes will be transferred at one time, even if ECX is

  higher

SeeAlso: AX=E801h"Dell"


INT 15 F200 - Tandon memory mapper - Tandon MAPPER HARDWARE INITIALISATION CHECK ???

Category: m - memory management

Inp.:

AX = F200h

CX = 454Dh

Return: CF clear if hardware already initialised

    BX = upper RAM areas in use

bit 0: C000-C3FF

bit 1: C400-C7FF

...

bit 11: EC00-EFFF

CF set if hardware not initialised yet


INT 16 00-- - KEYBOARD - GET KEYSTROKE

Category: B - BIOS

Inp.:

AH = 00h

Return: AH = BIOS scan code

AL = ASCII character

Notes:	on extended keyboards, this function discards any extended keystrokes,

  returning only when a non-extended keystroke is available

the BIOS scan code is usually, but not always, the same as the hardware

  scan code processed by INT 09.  It is the same for ASCII keystrokes

  and most unshifted special keys (F-keys, arrow keys, etc.), but

  differs for shifted special keys.

SeeAlso: AH=01h,AH=05h,AH=10h,AH=20h,INT 18/AH=00h

INT 16


INT 16 01-- - KEYBOARD - CHECK FOR KEYSTROKE

Category: B - BIOS

Inp.:

AH = 01h

Return: ZF set if no keystroke available

ZF clear if keystroke available

    AH = BIOS scan code

    AL = ASCII character

Note:	if a keystroke is present, it is not removed from the keyboard buffer;

  however, any extended keystrokes which are not compatible with 83/84-

  key keyboards are removed in the process of checking whether a

  non-extended keystroke is available

SeeAlso: AH=00h,AH=11h,AH=21h,INT 18/AH=01h

INT 16


INT 16 02-- - KEYBOARD - GET SHIFT FLAGS

Category: B - BIOS

Inp.:

AH = 02h

Return: AL = shift flags (see #0442)

SeeAlso: AH=12h,AH=22h,INT 17/AH=0Dh,INT 18/AH=02h

INT 16


INT 16 03-- - KEYBOARD - SET TYPEMATIC RATE AND DELAY

Category: B - BIOS

Inp.:

AH = 03h

AL = subfunction

    00h set default delay and rate (PCjr and some PS/2)

    01h increase delay before repeat (PCjr)

    02h decrease repeat rate by factor of 2 (PCjr)

    03h increase delay and decrease repeat rate (PCjr)

    04h turn off typematic repeat (PCjr and some PS/2)

    05h set repeat rate and delay (AT,PS)

BH = delay value (00h = 250ms to 03h = 1000ms)

BL = repeat rate (00h=30/sec to 0Ch=10/sec [def] to 1Fh=2/sec)

    06h get current typematic rate and delay (newer PS/2s)

Return: BL = repeat rate (see above)

BH = delay (see above)

Note:	use INT 16/AH=09h to determine whether some of the subfunctions are

  supported

SeeAlso: INT 16/AH=09h,AH=29h"HUNTER",AH=2Ah"HUNTER"

INT 16


INT 16 04-- - KEYBOARD - SET KEYCLICK (PCjr only)

Category: B - BIOS

Inp.:

AH = 04h

AL = keyclick state

    00h off

    01h on

SeeAlso: AH=03h,AH=04h"K3PLUS"

INT 16


INT 16 04-- - K3PLUS v6.22+ - SET KEYCLICK

Category: K - keyboard enhancers

Inp.:

AH = 04h

AL = keyclick state

    00h keyclick off, leave loudness setting unchanged

    01h keyclick on, leave loudness setting unchanged

    else

       bit 0: keyclick enabled if set

       bits 7-1: new keyclick loudness (non-zero)

Note:	Applications which try to set a new loudness, but are unsure of the

  results of other INT 16/AH=04h implementations, should set the new

  loudness first, and then call this function again with AL=01h or

  AL=00h

SeeAlso: AH=03h,AH=04h"KEYBOARD"

INT 16


INT 16 05-- - KEYBOARD - STORE KEYSTROKE IN KEYBOARD BUFFER (AT/PS w enh keybd only)

Category: B - BIOS

Inp.:

AH = 05h

CH = scan code

CL = ASCII character

Return: AL = status

    00h if successful

    01h if keyboard buffer full

Notes:	under DESQview, a number of "keystrokes" invoke specific

  DESQview-related actions when they are read from the keyboard

  buffer (see #0443)

similarly, some "keystrokes" invoke special functions on the HP 100LX

  and HP 200LX (see #0444)

SeeAlso: AH=00h,AH=25h"K3",AH=71h,AH=FFh,INT 15/AX=DE10h

INT 16


INT 16 05-- - KEYBOARD - SELECT KEYBOARD LAYOUT (PCjr only)

Category: B - BIOS

Inp.:

AH = 05h

AL = function

    01h set keyboard layout to French

    02h set keyboard layout to German

    03h set keyboard layout to Italian

    04h set keyboard layout to Spanish

    05h set keyboard layout to UK

    80h check if function supported

Return: AL <> 80h if supported

Return: ???

Note:	this function is called by the DOS 3.2 KEYBxx.COM

SeeAlso: AH=92h,AH=A2h

INT 16


INT 16 09-- - KEYBOARD - GET KEYBOARD FUNCTIONALITY

Category: B - BIOS

Inp.:

AH = 09h

Return: AL = supported keyboard functions (see #0445)

Notes:	this function is only available if bit 6 of the second feature byte

  returned by INT 15/AH=C0h is set (see #0383)

reportedly, the Award Modular BIOS v4.50G returns the keyboard function

  flags in AH instead of AL, and provides this function even though

  its availability is not indicated by INT 15/AH=C0h

SeeAlso: AH=03h,AH=0Ah,AH=10h,AH=11h,AH=12h,AH=20h,AH=21h,AH=22h,INT 15/AH=C0h

INT 16


INT 16 0A-- - KEYBOARD - GET KEYBOARD ID

Category: B - BIOS

Inp.:

AH = 0Ah

Return: BX = keyboard ID (see #0446)

Note:	check return value from AH=09h to determine whether this function is

  supported

SeeAlso: AH=09h

INT 16


INT 16 10-- - KEYBOARD - GET ENHANCED KEYSTROKE (enhanced kbd support only)

Category: B - BIOS

Inp.:

AH = 10h

Return: AH = BIOS scan code

AL = ASCII character

Notes:	if no keystroke is available, this function waits until one is placed

  in the keyboard buffer

the BIOS scan code is usually, but not always, the same as the hardware

  scan code processed by INT 09.  It is the same for ASCII keystrokes

  and most unshifted special keys (F-keys, arrow keys, etc.), but

  differs for shifted special keys.

unlike AH=00h, this function does not discard extended keystrokes

INT 16/AH=09h can be used to determine whether this function is

  supported, but only on later model PS/2s

SeeAlso: AH=00h,AH=09h,AH=11h,AH=20h

INT 16


INT 16 11-- - KEYBOARD - CHECK FOR ENHANCED KEYSTROKE (enh kbd support only)

Category: B - BIOS

Inp.:

AH = 11h

Return: ZF set if no keystroke available

ZF clear if keystroke available

    AH = BIOS scan code

    AL = ASCII character

Notes:	if a keystroke is available, it is not removed from the keyboard buffer

unlike AH=01h, this function does not discard extended keystrokes

some versions of the IBM BIOS Technical Reference erroneously report

  that CF is returned instead of ZF

INT 16/AH=09h can be used to determine whether this function is

  supported, but only on later model PS/2s

SeeAlso: AH=01h,AH=09h,AH=10h,AH=21h

INT 16


INT 16 12-- - KEYBOARD - GET EXTENDED SHIFT STATES (enh kbd support only)

Category: B - BIOS

Inp.:

AH = 12h

Return: AL = shift flags 1 (same as returned by AH=02h) (see #0447)

AH = shift flags 2 (see #0448)

Notes:	AL bit 3 set only for left Alt key on many machines

AH bits 7 through 4 always clear on a Compaq SLT/286

INT 16/AH=09h can be used to determine whether this function is

  supported, but only on later model PS/2s

many BIOSes (including at least some versions of Phoenix and AMI) will

  destroy AH on return from functions higher than AH=12h, returning

  12h less than was in AH on entry (due to a chain of DEC/JZ

  instructions)

SeeAlso: AH=02h,AH=09h,AH=22h,AH=51h,INT 17/AH=0Dh

INT 16


INT 16 13-- - DOS/V - DOUBLE-BYTE CHARACTER SET SHIFT CONTROL

Category: J - Japanese

Inp.:

AH = 13h

AL = function

    00h set shift status

DX = shift status (see #0449), must preserve internal status

  bits

    01h get shift status

Return: DX = current shift status (see #0449)

Note:	these functions are supplied by the Japanese Front-End Processor

SeeAlso: AH=14h,INT 21/AX=6301h

INT 16


INT 16 14-- - DOS/V - SHIFT STATUS DISPLAY CONTROL

Category: J - Japanese

Inp.:

AH = 14h

AL = function

    00h enable display

    01h disable display

    02h get display state

Return: AL = current state (00h enabled, 01h disabled)

Desc:	control the screen-bottom shift status row(s) for the Japanese

  Front-End Processor

SeeAlso: AH=13h,INT 10/AH=19h,INT 10/AH=1Dh

INT 16


INT 16 20-- - KEYBOARD - GET 122-KEY KEYSTROKE (122-key kbd support only)

Category: B - BIOS

Inp.:

AH = 20h

Return: AH = BIOS scan code (see AH=10h for details)

AL = ASCII character

Note:	use AH=09h to determine whether this function is supported

SeeAlso: AH=00h,AH=09h,AH=10h,AH=21h,AH=22h

INT 16


INT 16 20-- - HUNTER 16 - SET TEMPORARY SHIFT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 20h

AL = shift status (see #0450)

Notes:	the Husky Hunter 16 is an 8088-based ruggedized laptop.	 Other family

  members are the Husky Hunter, Husky Hunter 16/80, and Husky Hawk.

the user can override the specified settings by pressing the keys

INT 16


INT 16 20-- - K3 v1.5+, K3PLUS v5.0+ - GET EXTENDED BUFFER STATE

obsolete (no longer present in current versions)

Category: K - keyboard enhancers

Inp.:

AH = 20h

Return: AX = K3 version

ES:BX -> extended keyboard buffer start

ES:DX -> extended keyboard buffer end

ES:SI -> next keystroke

ES:DI -> last keystroke in buffer

CX = number of keystrokes in buffer

Program: K3PLUS is an enhancement by Matthias Paul and Axel C. Frinke of the

  K3 extended German keyboard driver by Martin Gerdes published in c't

  magazine in 1988

Note:	this function is normally unsupported under K3PLUS v6.0+; use AX=AF20h

  instead

SeeAlso: AH=25h"K3",AX=AF20h,INT 2F/AX=D44Fh/BX=0000h,INT 2F/AX=ED58h

INT 16


INT 16 21-- - KEYBOARD - CHECK FOR 122-KEY KEYSTROKE (122-key kbd support only)

Category: B - BIOS

Inp.:

AH = 21h

Return: ZF set if no keystroke available

ZF clear if keystroke available

    AH = BIOS scan code

    AL = ASCII character

Notes:	use AH=09h to determine whether this function is supported

some versions of the IBM BIOS Technical Reference erroneously report

  that CF is returned instead of ZF

SeeAlso: AH=01h,AH=09h,AH=11h,AH=20h,AH=21h

INT 16


INT 16 21-- - HUNTER 16 - CONTROL SHIFT KEYS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 21h

AL = shift keys to control (see #0442)

BL = shift state for disabled keys

Note:	If a bit in AL is set the key is disabled and set to the state of the

  corresponding bit in BL

SeeAlso: AH=20h"HUNTER",AH=22h"HUNTER"

INT 16


INT 16 22-- - KEYBOARD - GET 122-KEY SHIFT STATUS (122-key kbd support only)

Category: B - BIOS

Inp.:

AH = 22h

Return: AL = shift flags 1 (see #0447)

AH = shift flags 2 (see #0448)

Note:	use AH=09h to determine whether this function is supported

SeeAlso: AH=02h,AH=09h,AH=12h,AH=20h,AH=21h

INT 16


INT 16 22-- - HUNTER 16 - CONTROL CTRL-ALT-DEL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 22h

AL = new Ctrl-Alt-Del state (00h enabled, nonzero disabled)

BX = 0708h

CX = 0910h

DX = 1112h

Return: AL = 00h if successful

SeeAlso: AH=21h"HUNTER",AH=23h"HUNTER",AH=2Ah

INT 16


INT 16 23-- - HUNTER 16 - CONTROL EMERGENCY BREAKOUT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 23h

AL = new state of breakout (00h enabled, nonzero disabled)

BX = 0708h

CX = 0910h

DX = 1112h

Return: AL = 00h if successful

Desc:	Enables or disables the emergency breakout feature, where the

  Hunter 16 at power on checks whether the X and P keys are pressed.

  If so the machine will boot rather than continue the running program

SeeAlso: AH=22h"HUNTER"

INT 16


INT 16 24-- - HUNTER 16 - REDEFINE KEY CODES

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 24h

AL = Matrix Code (see #0451)

BL = new Key code

Return: AL = status (00h successful, nonzero failed)

SeeAlso: AH=2Bh,AH=2Ch

INT 16


INT 16 25-- - HUNTER 16 - RESET KEYBOARD

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 25h

Return: AL = 00h

Desc:	restores the standard keyboard layout after any remapping

SeeAlso: AH=24h,AH=2Bh,AH=2Ch

INT 16


INT 16 25-- - K3 v1.5+, K3PLUS v5.0+ - COPY INTO EXTENDED BUFFER

obsolete (no longer present in current versions)

Category: K - keyboard enhancers

Inp.:

AH = 25h

CX = number of keystrokes to copy

ES:SI -> buffer containing keystrokes

Return: CF clear if successful

CF set on error (i.e. buffer full)

    CX = number of keystrokes NOT transferred

    ES:SI -> first keystroke not transferred

Note:	this function is normally unsupported under K3PLUS v6.0+; use AX=AF20h

  instead

SeeAlso: AH=05h,AH=20h"K3",AX=AF25h,INT 2F/AX=D44Fh/BX=0001h

INT 16


INT 16 26-- - HUNTER 16 - CONTROL KEYCLICK

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 26h

AL = new state of keyclicks (00h disabled, 01h enabled)

Return: AL = 00h

SeeAlso: AH=2Ah

INT 16


INT 16 27-- - HUNTER 16 - CONTROL SCREEN DUMP AREA

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 27h

AL = what to dump

    00h whole (virtual) window

    01h LCD window only

Return: AL = 00h

Desc:	control whether printscren dumps the whole 80x25 screen or only the

  part displayed in the LCD window

Note:	the Hunter 16 has a 240x64 LCD display which serves as a window into

  a 640x200 virtual screen

INT 16


INT 16 29-- - HUNTER 16 - GET KEY REPEAT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 29h

Return: BL = Typematic rate (characters per second) (see #0452)

BH = delay (00h = 250ms, 01h = 500ms, 02h = 750ms, 03h = 1s)

SeeAlso: AH=03h,AH=2Ah

INT 16


INT 16 2A-- - HUNTER 16 - CONTROL KEY REPEAT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 2Ah

AL = new state of keyboard autorepeat (00h disabled, 01h enabled)

SeeAlso: AH=03h,AH=26h,AH=29h,AH=2Bh

INT 16


INT 16 2B-- - HUNTER 16 - REDEFINE KEY SCAN CODES

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 2Bh

AL = which key table to redefine

    00h unshifted

    01h shifted

    02h Numlock

BH = standard scan code of key (00h-80h)

BL = new scan code

Desc:	redefine the generated scan code from BH to BL

SeeAlso: AH=24h,AH=2Ah,AH=2Ch

INT 16


INT 16 2C-- - HUNTER 16 - REDEFINE RAW KEY CODES

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 2Ch

AL = Matrix code of key (see AH=29h)

BL = new key code

Return: AL = status (00h success, nonzero failed)

Desc:	redefine the key code generated by holding the PAW key down and

  pressing the key in AL

SeeAlso: AH=24h,AH=2Bh

INT 16


INT 16 2D-- - HUNTER 16 - CONTROL BREAK KEYS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 2Dh

AL = enabled break keys

    bit 0 Ctrl-C

    bit 1 Ctrl-Break

BX = 0708h

CX = 0910h

DX = 1112h

Return: AL = status (00h success, FFh failed)

SeeAlso: AH=21h"HUNTER"

INT 16


INT 16 3577 - TextWare TWTSR - API

undocumented function

Category: U - resident utilities

Inp.:

AX = 3577h

CX = function

    00CBh ???

Return: AX = 0000h

BX = 0000h

DX:CX -> ???

    00CCh uninstall

Return: AX = status

    0000h successful

    FFFDh unable to unload because vectors taken

    00CDh ???

Return: AX = 0000h

BX = 0000h

DX:CX -> ???

    other

Return: AX = 5345h ('SE')

Program: TWTSR is a TSR which allows the TextWare hypertext browser to be

  popped up via hotkey

SeeAlso: AX=D724h

INT 16


INT 16 4252 - TEXTCAP 2.0 - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 4252h

Return: AX = 5242h if installed

Program: TEXTCAP 2.0 is a heavily modified (by Gisbert W. Selke) version of the

  PC Magazine utility CAPTURE written by Tom Kihlken

SeeAlso: AX=4253h,AX=4254h

INT 16


INT 16 4253 - TEXTCAP 2.0 - UNINSTALL

Category: U - resident utilities

Inp.:

AX = 4253h

Return: AX = segment of resident code

Notes:	the uninstall code does not check whether interrupt vectors have been

  chained by other programs

the caller must free the main memory block (using the returned segment)

SeeAlso: AX=4252h,AX=4254h

INT 16


INT 16 4254 - TEXTCAP 2.0 - DUMP TEXT SCREEN TO FILE

Category: U - resident utilities

Inp.:

AX = 4254h

Return: AX = status

    4254h if screen dump will be written as soon as disk becomes idle

    5442h if screen dump written

SeeAlso: AX=4252h,AX=4253h

INT 16


INT 16 4500 - Shamrock Software EMAIL - GET STATUS

Category: e - electronic mail

Inp.:

AX = 4500h

DL = port number (01h = COM1)

ES:BX -> 13-byte buffer for ASCIZ name

Return: AX = 4D00h if EMAIL installed on specified port

    ES:BX -> "" if no connection

  -> "*" if connection but caller has not identified name

  -> name otherwise

    CX = version (CH = major, CL = minor)

    DL = privilege level of user (00h = guest)

    DH = chosen language (00h German, 01h English)

SeeAlso: AX=4501h,AX=4502h

INT 16


INT 16 4501 - Shamrock Software EMAIL - GET ELAPSED ONLINE TIME AND MAXIMUM TIME

Category: e - electronic mail

Inp.:

AX = 4501h

DL = port number (01h = COM1)

Return: AX = 4D00h if EMAIL installed on specified port

    BX = maximum connect time in clock ticks

    CX = maximum connect time for guests (without name) in clock ticks

    DX = elapsed connect time of current user in clock ticks

SeeAlso: AX=4500h

INT 16


INT 16 4502 - Shamrock Software EMAIL - GET CURRENT COMMUNICATIONS PARAMETERS

Category: e - electronic mail

Inp.:

AX = 4502h

DL = port number (01h = COM1)

Return: AX = 4D00h if EMAIL installed on specified port

    BL = current value of serial port's Line Control Register

    BH = flags (see #0453)

    CX = selected country code (33 = France, 49 = Germany, etc)

    DX = baudrate divisor (115200/DX = baudrate)

SeeAlso: AX=4500h

INT 16


INT 16 4503 - Shamrock Software EMAIL - SPECIFY COMMAND-WORD FOR USER FUNCTION

Category: e - electronic mail

Inp.:

AX = 4503h

DL = port number (01h = COM1)

DH = maximum execution time in clock ticks (00h = 5 seconds)

ES:BX -> ASCIZ string with new user command-word

Return: AX = 4D00h if EMAIL installed on specified port

Notes:	a single user command (consisting of only uppercase letters and digits)

  may be defined, and remains valid until it is overwritten or the

  EMAIL program terminates; the user command must be activated by

  calling AX=4504h at least once.

an existing command word may be redefined with this function

SeeAlso: AX=4504h,AX=4505h

INT 16


INT 16 4504 - Shamrock Software EMAIL - CHECK FOR USER FUNCTION COMMAND-WORD

Category: e - electronic mail

Inp.:

AX = 4504h

DL = port number (01h = COM1)

ES:BX -> 80-byte buffer for ASCIZ user input line

Return: AX = 4D00h if EMAIL installed on specified port

    DL = flags

bit 0: user function supported (always set)

bit 1: user entered user-function command word

    if DL bit 1 set,

ES:BX buffer contains line entered by user which begins with

the defined command word and has been converted to all

caps

Note:	caller must process the returned commandline and invoke AX=4505h

  within five seconds with the result of that processing

SeeAlso: AX=4503h,AX=4505h

INT 16


INT 16 4505 - Shamrock Software EMAIL - SEND RESULT OF USER FUNCTION

Category: e - electronic mail

Inp.:

AX = 4505h

DL = port number (01h = COM1)

DH = error flag

    bit 3: set on error

ES:BX -> ASCIZ text to return to user, max 1024 bytes

Return: AH = 4Dh if EMAIL installed on specified port

AL = status

    00h successful

    02h unable to perform function (timeout, prev call not complete)

    other error

Notes:	if the error flag in DH is set, the string is not sent and an error

  message is generated instead; if this function is not called within

  five seconds of AX=4504h, EMAIL automatically generates an error

  message

the string is copied into an internal buffer, allowing this function's

  caller to continue immediately

SeeAlso: AX=4503h,AX=4504h,INT 17/AX=2400h

INT 16


INT 16 4506 - Shamrock Software EMAIL - MONITOR XMODEM DOWNLOAD

Category: e - electronic mail

Inp.:

AX = 4506h

DL = port number (01h = COM1)

ES:BX -> 13-byte buffer for ASCIZ filename

Return: AX = 4D00h if EMAIL installed on specified port

    DH = Xmodem status

00h no XGET command given

01h XGET in progress

02h XGET completed successfully

    ES:BX buffer filled with last filename given to XGET command

(without path)

Note:	DH=02h will only be returned once per XGET; subsequent calls will

  return DH=00h

SeeAlso: AX=4500h,INT 17/AX=2408h

INT 16


INT 16 4D4F - M16_KBD.COM v5.6 - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = 4D4Fh

Return: AX = 6F6Dh if installed

    ES = segment of resident code

Program: M16_KBD is a shareware Cyrillic keyboard driver by I.V. Morozov

SeeAlso: INT 10/AX=1130h/BX=4D4Fh

INT 16


INT 16 5000 - KEYBOARD - AX PC - SET KEYBOARD COUNTRY CODE

Category: J - Japanese

Inp.:

AX = 5000h

BX = country code

    0001h USA (English), 0051h Japan

Return: AL = status

    00h successful

    01h bad country code

    02h other error

SeeAlso: AX=5001h,INT 10/AX=5000h,INT 17/AX=5000h

INT 16


INT 16 5001 - KEYBOARD - AX PC - GET KEYBOARD COUNTRY CODE

Category: J - Japanese

Inp.:

AX = 5001h

Return: AL = status

    00h successful

BX = country code

    02h error

SeeAlso: AX=5000h,INT 10/AX=5001h,INT 17/AX=5001h

INT 16


INT 16 51-- - KEYBOARD - AX PC - READ SHIFT KEY STATUS

Category: J - Japanese

Inp.:

AH = 51h

Return: AL = standard shift key states (see #0442,#0447)

AH = Kana lock (00h off, 01h on)

SeeAlso: AH=02h,AH=12h,AH=22h

INT 16


INT 16 5453 - TSRBONES - INSTALLATION CHECK

Category: t - TSR libraries

Inp.:

AX = 5453h ('TS')

BX = 5242h ('RB')

CX = 4F4Eh ('ON')

DX = 4553h ('ES')

Return: AX = 4553h if installed

BX = 4F4Eh if installed

CX = 5242h if installed

DX = 5453h if installed

Program: TSRBONES is a skeletal TSR framework by Robert Curtis Davis

Note:	these values are the default as the TSRBONES package is distributed,

  but will normally be changed when implementing an actual TSR with

  the TSRBONES skeleton

SeeAlso: INT 2D"AMIS"

INT 16


INT 16 5500 - Microsoft Word internal - MICROSOFT WORD COOPERATION WITH TSR

callout or callback (usually hooked rather than called)

Category: A - applications

Inp.:

AX = 5500h

Return: AX = 4D53h ('MS') if keyboard TSR present

Notes:	during startup, Microsoft Word tries to communicate with any TSRs

  that are present through this call.

if the return is not 4D53h, Word installs its own INT 09 and INT 16

  handlers; otherwise it assumes that the TSR will handle the keyboard

SeeAlso: AX=55FFh,INT 1A/AX=3601h

INT 16


INT 16 55FE - Microsoft QBASIC internal - MICROSOFT COOPERATION WITH TSR

callout or callback (usually hooked rather than called)

undocumented function

Category: A - applications

Inp.:

AX = 55FEh

DX = function

    0000h initialize

ES:BX -> ??? function

ES:CX -> ??? structure

    FFFFh shutdown/reset

Return: AX = result

    4D4Bh only the INT 1B handler will be installed.

    other: handlers for INT 08, INT 09, INT 16, INT 1B, and INT 1C

  are installed

Notes:	The pointer in ES:CX seems to point at a structure defining a callback

  function when new keyboard keys are pressed. If a TSR returns

  AX=4D4Bh, QBASIC will stop (with IRQ's and interrupts enabled).

these calls are also made by MS-DOS 6.0's DOSSHELL at startup, exit,

  and before/after shelling out

since EDIT.COM and HELP.COM merely invoke QBASIC, those two programs

  will also cause this interface to be invoked

SeeAlso: INT 16/AX=5500h,INT 1A/AX=3601h

INT 16


INT 16 55FF - Microsoft Word - TSR COOPERATION???

callout or callback (usually hooked rather than called)

Category: U - resident utilities

Inp.:

AX = 55FFh

BX >= 0004h (version of Microsoft Word [BL = major] ???)

CX = function

    0000h set ??? flag

    other clear ??? flag

Notes:	hooks intercepting this call are present in SWAPSH and SWAPDT v1.77j,

  distributed with PC Tools v7, as well as the Trusted Access

  SCRNBLNK.COM; this may be part of the standard TesSeRact library

known to be called by the German edition of Microsoft Word 5.0

SeeAlso: AX=5500h,INT 2F/AX=5453h

INT 16


INT 16 5758 - Netroom CACHECLK - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 5758h

BX = 4858h ('HX')

DX = 4443h ('DC')

CX <> 5758h

Return: BX = 6878h if installed

CX = 6463h if installed

    AX = code segment of TSR

    CX = internal version??? (v3.00 returns 0100h)

Program: CACHECLK is a "cloaked" disk cache included with Netroom

Notes:	if CX=5758h on entry, CACHECLK returns with all registers unchanged

the cache statistics are located early in the segment pointed at by

  AX on return

SeeAlso: INT 2F/AX=5758h

INT 16


INT 16 5758 - Netroom ??? - ???

undocumented function

Category: - - (none)

Inp.:

AX = 5758h

BX = 5754h

???

Return: ???

INT 16


INT 16 5758 - Netroom ??? - ???

undocumented function

Category: - - (none)

Inp.:

AX = 5758h

BX = 5755h

DS:SI -> ???

Return: ???

INT 16


INT 16 5758 - Netroom ??? - INSTALLATION CHECK

undocumented function

Category: - - (none)

Inp.:

AX = 5758h

BX = 5756h

Return: BX <> 5756h if installed

INT 16


INT 16 5758 - Netroom PRENET - GET OLD INTERRUPT VECTORS

undocumented function

Category: m - memory management

Inp.:

AX = 5758h

BX = 5858h

Return: CF clear

DX:BX -> saved copy of interrupt vector table

Note:	the installation check consists of calling this function and comparing

  BX against 5858h on return; if it has changed, PRENET is installed

SeeAlso: AX=5758h/BX=5859h

Index:	installation check;Netroom PRENET

INT 16


INT 16 5758 - Netroom POSTNET - GET OLD INTERRUPT VECTORS

undocumented function

Category: m - memory management

Inp.:

AX = 5758h

BX = 5859h

Return: CF clear

DX:BX -> saved copy of interrupt vector table

Note:	the installation check consists of calling this function and comparing

  BX against 5859h on return; if it has changed, POSTNET is installed

SeeAlso: AX=5758h/BX=5858h

Index:	installation check;Netroom POSTNET

INT 16


INT 16 6969 - PC Tools v5.1+ BACKTALK - UNHOOK

Category: U - resident utilities

Inp.:

AX = 6969h

BX = 6968h

Return: resident code unhooked, but not removed from memory

Index:	uninstall;BACKTALK

INT 16


INT 16 6969 - PC Tools v5.1+ BACKTALK - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 6969h

BX = 6969h

DX = 0000h

Return: DX nonzero if installed

    BX = CS of resident code

    DX = PSP segment of resident code

    DS:SI -> ASCIZ identification string "CPoint Talk"

INT 16


INT 16 6A6B - FastJuice - DISABLE/UNLOAD???

undocumented function

Category: i - system info/monitoring

Inp.:

AX = 6A6Bh

Return: ???

Program: FastJuice is a resident battery-power monitor by SeaSide Software

SeeAlso: AX=7463h

Index:	uninstall;FastJuice

INT 16


INT 16 6C63 - TMED v1.6a - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 6C63h ('lc')

Return: AX = 4C43h ('LC') if installed

Program: TMED is a freeware resident memory editor by Liang Chen

INT 16


INT 16 6F00 - HP Vectra EX-BIOS - "F16_INQUIRE" - Extended BIOS INSTALLATION CHECK

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F00h

BX <> 4850h (usually set to 0000h for simplicity)

Return: BX = 4850h ("HP") if present

Notes:	called by recent MS Mouse drivers looking for an HP-HIL mouse

supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

SeeAlso: AX=6F01h,AX=6F04h,AX=6F07h,AX=6F09h,AX=6F0Dh,AX=6F11h,AX=6F12h

SeeAlso: INT 14/AX=6F00h,INT 17/AX=6F00h,INT 33/AX=6F00h

SeeAlso: INT 6F/AH=00h"HP Vectra"

INT 16


INT 16 6F01 - HP Vectra EX-BIOS - "F16_DEF_ATTR" - GET DEFAULT TYPEMATIC VALUES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F01h

Return: AH = 00h (successful)

CX = 0004h (size of returned buffer)

ES:SI -> buffer for typematic info (see #0454)

Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h,AX=6F04h

INT 16


INT 16 6F02 - HP Vectra EX-BIOS - "F16_GET_ATTR" - GET CURRENT TYPEMATIC VALUES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F02h

Return: AH = 00h (successful)

CX = 0004h (size of returned buffer)

ES:SI -> buffer for typematic info (see #0454)

Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h,AX=6F04h

SeeAlso: AX=6F00h,AX=6F01h,AX=6F03h

INT 16


INT 16 6F03 - HP Vectra EX-BIOS - "F16_SET_ATTR" - SET TYPEMATIC VALUES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F03h

ES:SI -> buffer containing typematic info (see #0454)

Return: AH = 00h (successful)

Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

SeeAlso: AX=6F00h,AX=6F02h,AX=6F03h,AX=6F04h

SeeAlso: AX=6F00h,AX=6F01h,AX=6F02h

INT 16


INT 16 6F04 - HP Vectra EX-BIOS - "F16_DEF_MAPPING" - GET DEFAULT KEY MAPPINGS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F04h

ES:SI -> mapping buffer (see #0458)

Return: AH = 00h (successful)

CX = 001Eh (number of bytes in buffer)

ES:SI buffer filled

Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

the HIL input system translates the HIL keyboard events to simulate

  an IBM-compatible keyboard; the translation can be altered

  dynamically by applications

SeeAlso: AX=6F00h,AX=6F05h,AX=6F06h

INT 16


INT 16 6F05 - HP Vectra EX-BIOS - "F16_GET_MAPPING" - GET CURRENT KEY MAPPINGS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F05h

ES:SI -> mapping buffer (see #0458)

Return: AH = 00h (successful)

CX = 001Eh (number of bytes in buffer)

ES:SI buffer filled

Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

SeeAlso: AX=6F04h,AX=6F06h

INT 16


INT 16 6F06 - HP Vectra EX-BIOS - "F16_SET_MAPPING" - SET KEY MAPPINGS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F06h

CX = number of bytes in buffer (001Eh)

ES:SI -> mapping buffer (see #0458)

Return: AH = 00h (successful)

Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

any application which modifies the key mappings should restore them

  before terminating

drivers installed with this function are assured of 32 bytes of stack

  space when they are invoked

SeeAlso: AX=6F04h,AX=6F05h,AX=6F07h

INT 16


INT 16 6F07 - HP Vectra EX-BIOS - "F16_SET_XLATORS" - SET CCP AND SOFTKEY PADS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F07h

BL = translation to set (see #0459)

Return: AH = 00h (successful)

Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

this function may no longer work properly if the application has

  modified the key mappings with AX=6F06h

SeeAlso: AX=6F06h,AX=6F09h

INT 16


INT 16 6F08 - HP Vectra EX-BIOS - "F16_KBD" - GET KEYBOARD INFORMATION

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F08h

Return: AH = status

   00h successful

   02h unsupported (non-HIL, i.e. standard, keyboard)

BH = HP-HIL address (HP Vectra AT only???)

BL = HP-HIL ID (HP Vectra AT only???)

BL = keyboard language (ES/QS/RS only???) (see #0461)

Notes:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

the driver's address in the HP_VECTOR_TABLE (see INT 6F/AH=00h) may

  be computed as (BH-1)*6 + N, where N is the address of the first

  HP-HIL device driver (see INT 6F/AH=0Ah"SF_INQUIRE_FIRST")

SeeAlso: AX=6F05h,AX=6F09h,INT 6F/AH=0Ah"SF_INQUIRE_FIRST"

INT 16


INT 16 6F09 - HP Vectra EX-BIOS - "F16_KBD_RESET" - RESET KEYBOARD TO DEFAULTS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F09h

Return: AH = 00h (successful)

Desc:	reset all keyboard mappings to their default translators, and reset

  typematic values to their defaults

Note:	supported by the original HP Vectra AT and ES/QS/RS series HP Vectras

SeeAlso: AX=6F04h,AX=6F07h,AX=6F08h

INT 16


INT 16 6F0A - HP Vectra ES/QS/RS EX-BIOS - READ PROCESSOR SPEED

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F0Ah

Return: AH = 00h (successful)

BX = speed code

    0Bh for low speed (see #0462)

    12h for medium speed (see #0462)

    0Ch for high speed (see #0462)

Note:	supported by ES, QS, and RS series of HP Vectras

SeeAlso: AX=6F00h

INT 16


INT 16 6F0B - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO LOW

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F0Bh

Return: AH = 00h (successful)

Notes:	see AX=6F0Ah for speed definitions

supported by ES, QS, and RS series of HP Vectras

SeeAlso: AX=6F00h,AX=6F0Ah

INT 16


INT 16 6F0C - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO HIGH

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F0Ch

Return: AH = 00h (successful)

Notes:	see AX=6F0Ah for speed definitions

supported by ES, QS, and RS series of HP Vectras

SeeAlso: AX=6F00h,AX=6F0A

INT 16


INT 16 6F0D - HP Vectra ES/QS/RS EX-BIOS - GET HIL Extended BIOS INTERRUPT NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F0Dh

Return: AH = interrupt number (default 6Fh, 02h means 6Fh as well)

Notes:	supported by ES, QS, and RS series of HP Vectras

called by MS Windows HPSYSTEM.DRV and HPEBIOS.386 to support the HP-HIL

  input system

SeeAlso: AX=6F00h,AX=6F0Eh,INT 6F"HP Vectra"

INT 16


INT 16 6F0E - HP Vectra ES/QS/RS EX-BIOS - SET HIL Extended BIOS INTERRUPT NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F0Eh

BL = new interrupt number (60h-6Fh,78h-7Fh)

Return: AH = status (00h = successful)

Desc:	allows the HIL Extended BIOS software to use a non-default interrupt

  number in case of an interrupt conflict with another application

Notes:	supported by ES, QS, and RS series of HP Vectras

called by MS Windows HPSYSTEM.DRV and HPEBIOS.386 to support the HP-HIL

  input system

SeeAlso: AX=6F00h,AX=6F0Dh,INT 6F"HP"

INT 16


INT 16 6F0F - HP Vectras RS/20C and RS/25C - ENABLE MEMORY CACHING

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F0Fh

Return: AH = status

    00h successful

    FEh cache subsystem is bad

SeeAlso: AX=6F00h,AX=6F10h,AX=6F11h

INT 16


INT 16 6F10 - HP Vectras RS/20C and RS/25C - DISABLE MEMORY CACHING

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F10h

Return: AH = 00h (successful)

SeeAlso: AX=6F00h,AX=6F0Fh,AX=6F11h

INT 16


INT 16 6F11 - HP Vectras RS/20C and RS/25C - GET MEMORY CACHING STATE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F11h

Return: AH = 00h (successful)

AL bit 0 = cache state

    0 cache disabled

    1 cache enabled

SeeAlso: AX=6F00h,AX=6F0Fh,AX=6F10h

INT 16


INT 16 6F12 - HP Vectras RS/20C and RS/25C - SET PROCESSOR SPEED TO MEDIUM

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F12h

Return: AH = 00h (successful)

Note:	see AX=6F0Ah for speed definitions

SeeAlso: AX=6F00h,AX=6F0Ah

INT 16


INT 16 70-- - FAKEY.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AH = 70h

Return: AX = 1954h if installed

Program: FAKEY is a keystroke faking utility by System Enhancement Associates

INT 16


INT 16 71-- - FAKEY.COM - PUSH KEYSTROKES

Category: K - keyboard enhancers

Inp.:

AH = 71h

CX = number of keystrokes

DS:SI -> array of words containing keystrokes to be returned by AH=00h

Program: FAKEY is a keystroke faking utility by System Enhancement Associates

SeeAlso: AH=05h,AH=72h

INT 16


INT 16 72-- - FAKEY.COM - CLEAR FAKED KEYSTROKES

Category: K - keyboard enhancers

Inp.:

AH = 72h

Program: FAKEY is a keystroke faking utility by System Enhancement Associates

SeeAlso: AH=71h

INT 16


INT 16 73-- - FAKEY.COM - PLAY TONES

Category: K - keyboard enhancers

Inp.:

AH = 73h

CX = number of tones to play

DS:SI -> array of tones (see #0463)

Program: FAKEY is a keystroke faking utility by System Enhancement Associates

SeeAlso: INT 15/AX=1019h

INT 16


INT 16 7463 - FastJuice - INSTALLATION CHECK

undocumented function

Category: i - system info/monitoring

Inp.:

AX = 7463h ("tc")

Return: AX = 5443h ("TC") if installed

Program: FastJuice is a resident battery-power monitor by SeaSide Software

SeeAlso: AX=6A6Bh

INT 16


INT 16 75-- - pcANYWHERE III - SET TICK COUNT FOR SCANNING

Category: R - remote control/file access

Inp.:

AH = 75h

AL = number of ticks between checks for new screen changes

INT 16


INT 16 76-- - pcANYWHERE III - SET ERROR CHECKING TYPE

Category: R - remote control/file access

Inp.:

AH = 76h

AL = error checking type

    00h none

    01h fast

    02h slow

INT 16


INT 16 77-- - pcANYWHERE III - LOG OFF

Category: R - remote control/file access

Inp.:

AH = 77h

AL = mode

    00h wait for another call

    01h leave in Memory Resident Mode

    02h leave in Automatic Mode

    FFh leave in current operating mode

INT 16


INT 16 7761 - WATCH.COM v2.x-v3.0 - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 7761h ('wa')

Return: AX = 5741h ('WA') if installed

Note:	WATCH.COM is part of the "TSR" package by Kim Kokkonen

SeeAlso: INT 21/AX=7761h

INT 16


INT 16 7788 - PC Magazine PUSHDIR.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 7788h

BX = 7789h

DS:SI -> signature "PUSHDIR VERSION 1.0"

Return: AX = 7789h if installed and signature correct

BX = 7788h

SI destroyed

INT 16


INT 16 79-- - pcANYWHERE III - CHECK STATUS

Category: R - remote control/file access

Inp.:

AH = 79h

Return: AX = status

    FFFFh if resident and active

    FFFEh if resident but not active

    FFFDh if in Memory Resident mode

    FFFCh if in Automatic mode

    other value if not resident

SeeAlso: AX=7B00h,INT 21/AX=2B44h

INT 16


INT 16 7A-- - pcANYWHERE III - CANCEL SESSION

Category: R - remote control/file access

Inp.:

AH = 7Ah

INT 16


INT 16 7B00 - pcANYWHERE III - SUSPEND

Category: R - remote control/file access

Inp.:

AX = 7B00h

SeeAlso: AH=79h,AX=7B01h

INT 16


INT 16 7B01 - pcANYWHERE III - RESUME

Category: R - remote control/file access

Inp.:

AX = 7B01h

SeeAlso: AH=79h,AX=7B00h

INT 16


INT 16 7C-- - pcANYWHERE III - GET PORT CONFIGURATION

Category: R - remote control/file access

Inp.:

AH = 7Ch

Return: AH = port number

AL = baud rate (see #0464)

SeeAlso: AX=7B00h,AH=7Eh

INT 16


INT 16 7D-- - pcANYWHERE III - GET/SET TERMINAL PARAMETERS

Category: R - remote control/file access

Inp.:

AH = 7Dh

AL = subfunction

    00h set terminal parameters

    01h get terminal parameters

    02h get configuration header and terminal parameters

DS:CX -> terminal parameter block

SeeAlso: AH=7Ch,AH=7Eh

INT 16


INT 16 7E-- - pcANYWHERE III - COMMUNICATIONS I/O THROUGH PORT

Category: R - remote control/file access

Inp.:

AH = 7Eh

AL = subfunction

    01h port input status

Return AX = 0 if no characer ready,

       AX = 1 if character ready

    02h port input character

Return AL = received character

    03h port output character in CX

    11h hang up phone

SeeAlso: AH=7Ch

INT 16


INT 16 7F-- - pcANYWHERE III - SET KEYBOARD/SCREEN MODE

Category: R - remote control/file access

Inp.:

AH = 7Fh

AL = subfunction

    00h enable remote keyboard only

    01h enable host keyboard only

    02h enable both keyboards

    08h display top 24 lines

    09h display bottom 24 lines

    10h Hayes modem

    11h other modem

    12h direct connect

INT 16


INT 16 80-- - MAKEY.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AH = 80h

Return: AX = 1954h if installed

Program: MAKEY is a utility by System Enhancement Associates

INT 16


INT 16 8765 - AT.COM version 8/26/87 - API

Category: U - resident utilities

Inp.:

AX = 8765h

BX = 4321h

CX = ??? or FFFFh

if CX = FFFFh

DX = number of event to remove or FFFFh

Return: ES:BX -> event record array (see #0465)

Program: AT.COM is a resident scheduler by Bill Frolik

INT 16


INT 16 92-- - KEYB.COM KEYBOARD CAPABILITIES CHECK (not an actual function!)

Category: K - keyboard enhancers

Inp.:

AH = 92h

Return: AH <= 80h if enhanced keyboard functions (AH=10h-12h) supported

Desc:	this function is called by the DOS 3.2 KEYBxx.COM and DOS 5+ KEYB.COM

  to determine the highest supported keyboard function

Note:	many BIOSes (including at least some versions of Phoenix and AMI) will

  destroy AH on return from functions higher than AH=12h, returning

  12h less than was in AH on entry (due to a chain of DEC/JZ

  instructions)

SeeAlso: AH=05h"PCjr",AH=A2h

INT 16


INT 16 99-- - SCOUT v5.4 - GET ???

Category: U - resident utilities

Inp.:

AH = 99h

Return: AX = ABCDh

BX:CX -> ??? (appears to be start of PSP for resident portion)

Program: Scout is a memory-resident file manager by New-Ware

SeeAlso: AH=9Eh

INT 16


INT 16 9E-- - SCOUT v5.4 - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AH = 9Eh

Return: AX = ABCDh if installed

Program: Scout is a memory-resident file manager by New-Ware

SeeAlso: AH=99h

INT 16


INT 16 A2-- - KEYB.COM KEYBOARD CAPABILITIES CHECK (not an actual function!)

Category: K - keyboard enhancers

Inp.:

AH = A2h

Return: AH <= 80h if 122-key keyboard functions (AH=20h-22h) supported

Desc:	this function is called by the DOS 3.2 KEYBxx.COM and DOS 5+ KEYB.COM

  to determine the highest supported keyboard function

Note:	many BIOSes (including at least some versions of Phoenix and AMI) will

  destroy AH on return from functions higher than AH=12h, returning

  12h less than was in AH on entry (due to a chain of DEC/JZ

  instructions)

SeeAlso: AH=05h"PCjr",AH=92h

INT 16


INT 16 AA-- - PTxxx.COM - (xxx=CGA,EGA,VGA,HER...) CALL GATE FOR GRAPHICS

Category: V - video

Inp.:

AH = AAh

Various registers set up by high level language.

Return: Graphics performed

Note:	PT stands for Paint Tools which is a graphics library for Turbo Pascal,

  Modula 2 and others from DataBiten in Sweden. The library is

  installed as a memory resident driver.

INT 16


INT 16 AABB - JORJ v4.3 - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = AABBh

BX = EEFFh

Return: AX = EEFFh if installed

BX = AABBh if installed

    CL = hotkey name (default 6Ah 'j' for Alt-J)

Program: JORJ is a shareware dictionary with phonetic lookup by Jorj Software

  Co.

Index:	hotkeys;JORJ

INT 16


INT 16 AF20 - K3PLUS v6.00+ (API v2.0+) - GET EXTENDED BUFFER STATE

Category: K - keyboard enhancers

Inp.:

AX = AF20h

BX = 4B33h ('K3')

Return: AX = K3 version (same as returned in BX by AX=AF4Dh)

ES:BX -> extended keyboard buffer start

ES:DX -> extended keyboard buffer end

ES:SI -> next keystroke

ES:DI -> last keystroke in buffer

CX = number of keystrokes in buffer

Program: K3PLUS is an enhancement by Matthias Paul and Axel C. Frinke of the

  K3 extended German keyboard driver by Martin Gerdes published in c't

  magazine in 1988

Note:	this function replaces the identical function AH=20h"K3"

SeeAlso: AH=20h"K3",AX=AF25h,AX=AF4Dh,AX=AF50h,INT 2F/AX=ED58h

INT 16


INT 16 AF25 - K3PLUS v6.00+ (API v2.0+) - COPY INTO EXTENDED BUFFER

Category: K - keyboard enhancers

Inp.:

AX = AF25h

BX = 4B33h ('K3')

CX = number of keystrokes to copy

ES:SI -> buffer containing keystrokes

Return: CF clear if successful

CF set on error (i.e. buffer full)

    CX = number of keystrokes NOT transferred

    ES:SI -> first keystroke not transferred

Note:	this function replaces the identical function AH=25h"K3"

SeeAlso: AH=25h"K3",AX=AF20h,AX=AF4Dh,AX=AF50h,INT 2F/AX=D44Fh/BX=0001h

INT 16


INT 16 AF4D - K3PLUS v6.00+ (API v2.0+) - GET VERSION INFORMATION

Category: K - keyboard enhancers

Inp.:

AX = AF4Dh

BX = 4B33h ('K3')

Return: AL = 50h if installed

    BX = K3 version

    DX = API version

    ES:CX -> K3 structure (version-dependent) (see #0466)

Program: K3PLUS is an enhancement by Matthias Paul and Axel C. Frinke of the

  K3 extended German keyboard driver by Martin Gerdes published in c't

  magazine in 1988

SeeAlso: AX=AF20h,AX=AF50h,AX=AF80h,AX=AF83h,INT 2F/AX=D44Fh/BX=0000h

SeeAlso: INT 2F/AX=ED58h

Index:	installation check;K3PLUS

INT 16


INT 16 AF50 - K3PLUS v6.00+ (API v2.0+) - CHECK IF FUNCTION SUPPORTED

Category: K - keyboard enhancers

Inp.:

AX = AF50h

BX = 4B33h ('K3')

CH = function

    00h get function flags

CL = 00h

Return: CX = supported function flags (see #0471)

    nonzero reserved for extensions

SeeAlso: AX=AF20h,AX=AF4Dh,AX=AF51h,AX=AF80h

INT 16


INT 16 AF51 - K3PLUS v6.00+ (API v2.00+) - SET OPTIONS

Category: K - keyboard enhancers

Inp.:

AX = AF51h

BX = 4B33h ('K3')

CX = switches

Return: AL = status

    00h done

CX = previous switch settings

    01h switch not supported

    FFh other error

SeeAlso: AX=AF4Dh,AX=AF50h,AX=AF80h

INT 16


INT 16 AF80 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 09h VECTOR

Category: K - keyboard enhancers

Inp.:

AX = AF80h

BX = 4B33h ('K3')

Return: AL = status

    00h not supported

    81h if successful

ES:CX -> original INT 09 handler

SeeAlso: AX=AF4Dh,AX=AF50h,AX=AF81h,AX=AF82h

INT 16


INT 16 AF81 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 16h HANDLER

Category: K - keyboard enhancers

Inp.:

AX = AF81h

BX = 4B33h ('K3')

Return: AL = status

    00h not supported

    82h if successful

ES:CX -> original INT 16 handler

SeeAlso: AX=AF4Dh,AX=AF50h,AX=AF80h,AX=AF82h

INT 16


INT 16 AF82 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 10h HANDLER

Category: K - keyboard enhancers

Inp.:

AX = AF82h

BX = 4B33h ('K3')

Return: AL = status

    00h not supported

    83h if successful

ES:CX -> original INT 10 handler

Program: K3PLUS is an enhancement by Matthias Paul and Axel C. Frinke of the

  K3 extended German keyboard driver by Martin Gerdes published in c't

  magazine in 1988

SeeAlso: AX=AF4Dh,AX=AF50h,AX=AF80h,AX=AF81h,INT 2F/AX=ED58h

INT 16


INT 16 B0B1 - VGARAM v1.00 - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = B0B1h

ES:DI -> 6 byte signature "VGARAM"

Return: AX = B1B0h if installed,

DS:BX -> VGARAM Status byte: 0 = OFF, 1 = ON

Program: VGARAM is a utility by Brett Warthen which makes VGA memory which is

  not used in text modes available for DOS

INT 16


INT 16 CA-- - CtrlAlt Associates STACKEY.COM v3.00 - API

Category: K - keyboard enhancers

Inp.:

AH = CAh

BX = 736Bh ("sk")

CX = 736Bh

AL = function

    00h installation check

Return: DX = words available in keyboard buffer

    01h place keystroke in buffer

DX = keystroke (DH = scan code, DL = ASCII character)

Return: DX = words available in keyboard buffer

    FFFFh on error

    02h flush STACKEY and BIOS keyboard buffers

Return: AX = CAFFh if installed

    BX = segment of resident code

    CX = STACKEY version (CH = major, CL = minor)

Program: STACKEY is a shareware keyboard-input faking TSR

Index:	installation check;STACKEY

INT 16


INT 16 CA00 - CtrlAlt Associates EGAPAL.COM v1.00 - INSTALLATION CHECK

Category: V - video

Inp.:

AX = CA00h

BX = 6570h ("ep")

CX = 6570h

Return: AX = CAFFh if installed

    BX = segment of resident code

    CX = ??? (0090h)

Program: EGAPAL is a TSR supplied with STACKEY which makes EGA palette settings

  permanent across mode switches

SeeAlso: AX=CA00h/BX=7670h

INT 16


INT 16 CA00 - CtrlAlt Associates VGAPAL.COM v1.00 - INSTALLATION CHECK

Category: V - video

Inp.:

AX = CA00h

BX = 7670h ("vp")

CX = 7670h

Return: AX = CAFFh if installed

    BX = segment of resident code

    CX = ??? (0090h)

Program: VGAPAL is a TSR supplied with STACKEY which makes VGA palette settings

  permanent across mode switches

SeeAlso: AX=CA00h/BX=6570h

INT 16


INT 16 CB00 - PUPClip v1.12+ - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = CB00h

Return: BX = 4342h if installed

    AX = version (AH = major version, AL = BCD minor version)

Program: PUPClip is the freeware PopUP Clipboard for DOS and Windows DOS

 sessions by SkullC0DEr

SeeAlso: AX=CB01h,AX=CB02h,AX=CB03h,AX=CB04h,AX=CB05h,AX=CB06h,AX=CB08h

SeeAlso: INT 2F/AX=1701h

INT 16


INT 16 CB01 - PUPClip v1.12+ - GET CLIPBOARD CURSOR POSITION

Category: U - resident utilities

Inp.:

AX = CB01h

Return: BL = column (0-79)

BH = row (0-49)

SeeAlso: AX=CB00h,AX=CB02h,AX=CB03h

INT 16


INT 16 CB02 - PUPClip v1.12+ - SET CLIPBOARD CURSOR POSITION

Category: U - resident utilities

Inp.:

AX = CB02h

BL = column (0-79)

BH = row (0-49)

Return: CF clear if successful

CF set on error (invalid position)

SeeAlso: AX=CB00h,AX=CB01h,AX=CB04h

INT 16


INT 16 CB03 - PUPClip v1.12+ - GET CHARACTER FROM CURRENT CLIPBOARD CURSOR POSITION

Category: U - resident utilities

Inp.:

AX = CB03h

Return: BL = ASCII character at current position

SeeAlso: AX=CB00h,AX=CB02h,AX=CB04h,INT 2F/AX=1705h

INT 16


INT 16 CB04 - PUPClip v1.12+ - WRITE CHARACTER TO CURRENT CLIPBOARD CURSOR POSITION

Category: U - resident utilities

Inp.:

AX = CB04h

BL = ASCII character to store

SeeAlso: AX=CB00h,AX=CB02h,AX=CB03h,AX=CB05h,INT 2F/AX=1703h

INT 16


INT 16 CB05 - PUPClip v1.12+ - CLEAR CLIPBOARD CONTENTS

Category: U - resident utilities

Inp.:

AX = CB05h

Return: nothing

SeeAlso: AX=CB00h,AX=CB04h,AX=CB06h,AX=CB07h,INT 2F/AX=1702h

INT 16


INT 16 CB06 - PUPClip v1.12+ - SCROLL UP CLIPBOARD CONTENTS

Category: U - resident utilities

Inp.:

AX = CB06h

Return: nothing

SeeAlso: AX=CB00h,AX=CB05h,AX=CB07h

INT 16


INT 16 CB07 - PUPClip v1.12+ - SCROLL DOWN CLIPBOARD CONTENTS

Category: U - resident utilities

Inp.:

AX = CB07h

Return: nothing

SeeAlso: AX=CB00h,AX=CB05h,AX=CB06h

INT 16


INT 16 CB08 - PUPClip v1.12+ - POP UP

Category: U - resident utilities

Inp.:

AX = CB08h

Return: CF clear if successful

CF set on error (unsupported video mode)

SeeAlso: AX=CB00h

INT 16


INT 16 D724 - APCAL v3.20 - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = D724h

CX = 00CBh

Return: AX = 0000h

BX = 0000h

DX:CX -> ??? or 0000h:0000h

Program: APCAL is an optionally-resident shareware appointment calendar by

  Gamma Software

SeeAlso: AX=3577h,AX=D724h/CX=00CCh,AX=D724h/CX=00CDh

INT 16


INT 16 D724 - APCAL v3.20 - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = D724h

CX = 00CCh

Return: AX = 0000h

BX = 0000h

DX:CX -> ??? (apparently an internal data area)

SeeAlso: AX=D724h/CX=00CBh,AX=D724h/CX=00CDh

INT 16


INT 16 D724 - APCAL v3.20 - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = D724h

CX = 00CDh

Return: AX = ??? (5345h seen)

SeeAlso: AX=D724h/CX=00CBh,AX=D724h/CX=00CCh

INT 16


INT 16 DD-- - VIRUS - "Frumble" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = DDh

Return: AL = DDh if resident

SeeAlso: INT 13/AX=FD50h,INT 21/AX=0B56h

INT 16


INT 16 DFDF - Corel PowerSCSI - FDAUDIO.COM - INSTALLATION CHECK

undocumented function

Category: - - (none)

Inp.:

AX = DFDFh

Return: ES:DI -> ASCII signature "FDAUDIO/CD" followed by ASCII date, i.e.

  "06/18/93" if installed

INT 16


INT 16 E000 - AMI BIOS - BIOS-FLASH Interface - GET VERSION NUMBER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E000h

Return: CF clear if successful

    AL = FAh

    BX = version number (BCD) (0200h = v2.00)

CF set on error (not implemented)

Notes:	this interface is available on AMI BIOSes built from AMI core version

  8/8/93 (HiFlex BIOS) or 11/15/93 (WinBIOS) or later

the "Meningitis" virus uses this API when attacking a system equipped

  with an AMI BIOS; it is supposedly able to write itself into the

  Flash ROM and thus make itself part of the BIOS

SeeAlso: AX=E001h,AX=E004h,AX=E006h,AX=E008h,AX=E00Ah,AX=E00Bh,AX=E0FFh

INT 16


INT 16 E001 - AMI BIOS - BIOS-FLASH Interface - GET CHIPSET SAVE/RESTORE SIZE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E001h

Return: CF clear if successful

    AL = FAh

    BX = number of bytes required to save chipset configuration

CF set on error

SeeAlso: AX=E000h,AX=E002h,AX=E003h

INT 16


INT 16 E002 - AMI BIOS - BIOS-FLASH Interface - SAVE CHIPSET STATUS & PREPARE CHPSET

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E002h

ES:DI -> buffer for storing chipset status

Return: CF clear if successful

    AL = FAh

CF set on error

SeeAlso: AX=E000h,AX=E001h,AX=E003h

INT 16


INT 16 E003 - AMI BIOS - BIOS-FLASH Interface -  RESTORE CHIPSET STATUS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E003h

ES:DI -> buffer in which chipset status was previously stored

Return: CF clear if successful

    AL = FAh

CF set on error

SeeAlso: AX=E000h,AX=E001h,AX=E002h

INT 16


INT 16 E004 - AMI BIOS - BIOS-FLASH Interface - LOWER PROGRAMMING VOLTAGE Vpp

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E004h

Return: CF clear if successful

    AL = FAh

CF set on error

Note:	this function does not return until the voltage level stabilizes

SeeAlso: AX=E000h,AX=E005h,AX=E006h

INT 16


INT 16 E005 - AMI BIOS - BIOS-FLASH Interface - RAISE PROGRAMMING VOLTAGE Vpp

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E005h

Return: CF clear if successful

    AL = FAh

CF set on error

Note:	this function does not return until the voltage level stabilizes

SeeAlso: AX=E000h,AX=E004h,AX=E007h

INT 16


INT 16 E006 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE PROTECT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E006h

Return: CF clear if successful

    AL = FAh

CF set on error

Note:	this function performs any delay required to allow the Flash ROM to

  stabilize in the write-protected state

SeeAlso: AX=E000h,AX=E004h,AX=E007h

INT 16


INT 16 E007 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE ENABLE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E007h

Return: CF clear if successful

    AL = FAh

CF set on error

Note:	this function performs any delay required to allow the Flash ROM to

  stabilize in the write-enabled state

SeeAlso: AX=E000h,AX=E005h,AX=E006h,AX=E008h

INT 16


INT 16 E008 - AMI BIOS - BIOS-FLASH Interface - FLASH SELECT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E008h

Return: CF clear if successful

    AL = FAh

CF set on error

Desc:	select the Flash ROM if the system contains both EPROM and Flash ROM

Note:	this function performs any delay required to allow the Flash ROM to

  stabilize in the selected state; if no EPROM is present, this

  function always returns successfully

SeeAlso: AX=E000h,AX=E007h,AX=E009h

INT 16


INT 16 E009 - AMI BIOS - BIOS-FLASH Interface - FLASH DE-SELECT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E009h

Return: CF clear if successful

    AL = FAh

CF set on error

Desc:	select the EPROM if the system contains both EPROM and Flash ROM

Note:	this function performs any delay required to allow the Flash ROM to

  stabilize in the de-selected state; if no EPROM is present, this

  function always returns successfully

SeeAlso: AX=E000h,AX=E006h,AX=E008h

INT 16


INT 16 E00A - AMI BIOS - BIOS-FLASH Interface - VERIFY ALLOCATED MEMORY

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E00Ah

BX = number of paragraphs

ES = starting segment of memory

Return: CF clear if successful

    AL = FAh

CF set on error

Desc:	determine whether the specified memory may be used for flash

  programming

Note:	always returns error if BX is zero on entry

SeeAlso: AX=E000h,AX=E00Bh

INT 16


INT 16 E00B - AMI BIOS - BIOS-FLASH Interface - SAVE INTERNAL CACHE STATUS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E00Bh

ES:DI -> buffer for internal cache status (minimum 4Kbytes)

Return: CF clear if successful

    AL = FAh

CF set on error

Note:	always returns error if the hardware does not contain internal

  cache or this call is made in protected mode

SeeAlso: AX=E000h,AX=E00Ah,AX=E00Ch

INT 16


INT 16 E00C - AMI BIOS - BIOS-FLASH Interface - RESTORE INTERNAL CACHE STATUS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E00Ch

ES:DI -> buffer containing internal cache status (minimum 4Kbytes)

Return: CF clear if successful

    AL = FAh

CF set on error

Note:	always returns error if the hardware does not contain internal

  cache or this call is made in protected mode

SeeAlso: AX=E000h,AX=E00Bh

INT 16


INT 16 E0E0 - TurboPower TSRs - ALTERNATE INSTALLATION CHECK

Category: t - TSR libraries

Inp.:

AX = E0E0h

Return: AX = 1F1Fh if installed

    DWORD 0040h:00F0h -> last data block in TSR list (see #0473)

Note:	the returned TSR list provides support for communication among TSRs

  built with TurboPower's Turbo Professional and Object Professional

  libraries for Turbo Pascal

SeeAlso: AX=F0F0h

INT 16


INT 16 E0FF - AMI BIOS - BIOS-FLASH Interface - GENERATE CPU RESET

Category: b - vendor-specific BIOS extensions

Inp.:

AX = E0FFh

Return: never

SeeAlso: AX=E000h,INT 14/AH=17h"FOSSIL"

INT 16


INT 16 ED-- - BORLAND TURBO LIGHTNING - API

Category: U - resident utilities

Inp.:

AH = EDh

BH = EDh

BL = function

    00h installation check

Return: AX = 5205h

CH = major version

CL = minor version

    01h identical to function 00h???

    02h get resident data segment

Return: AX = data segment of resident portion

    03h get resident ???

Return: AX = offset of some buffer in resident code seg

    04h redefine auxiliary dictionary

DS:SI -> counted filename string

Return: AL = result code

    05h select active environment

AL = environment (00h to 0Ch)

Return: AX = status

    0000h if OK

    0001h if out of range

    06h toggle AutoProof???

AL = state (00h off, 01h on)

    07h ???

    08h ???

AL = char???

CX = ???

DX = ???

Return: AX = 0, 1 or 2

    09h ???

    0Ah ???

CX = ???

DX = ???

Return: AX = ???

    0Bh check dictionary integrity???

DS:SI -> counted dictionary filename string

Return: AX = 0, 40h, 80h

    0Ch spellcheck string (disk dictionary, possibly RAM dict as well)

DS:SI -> counted string to check

Return: AH = 0

AL = result code

   00h string found in dictionary

   20h string begins more than one word

   40h string not found

    0Dh set ???

(sets an internal flag)

    0Eh spellcheck string (RAM dictionary only)

DS:SI -> counted string to check

Return: AH = 00h

AL = result code

    00h string found in dictionary

    01h string not found

    02h ???

    0Fh ???

    10h ???

Notes:	AX in general returns an error code from most functions.

Index:	installation check;Turbo Lightning

INT 16


INT 16 EF-- - CALCULATOR - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AH = EFh

Return: AX = 0088h if installed

Program: CALCULATOR is a shareware popup calculator by Andrzej Brzezinski and

  Marek Kosznik

INT 16


INT 16 F0-- - Compaq 386 and newer - SET CPU SPEED

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F0h

AL = speed code (see #0472)

if AL=09h,

    CX = speed value, 1 (slowest) to 50 (full), 3 ~= 8088

Note:	also supported by some versions of AMI BIOS dated June 1992 or later;

  speed codes 0 or 1 are used for Low Speed, 2 for High Speed

SeeAlso: AH=F1h,AH=F3h

INT 16


INT 16 F0F0 - TurboPower TSRs - INSTALLATION CHECK

Category: t - TSR libraries

Inp.:

AX = F0F0h

Return: AX = 0F0Fh if installed

    ES:DI -> last data block in TSR list (see #0473)

Note:	the returned TSR list provides support for communication among TSRs

  built with TurboPower's Turbo Professional and Object Professional

  libraries for Turbo Pascal

SeeAlso: AX=E0E0h

INT 16


INT 16 F1-- - Compaq 386 and newer - READ CURRENT CPU SPEED

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F1h

Return: AL = speed code (see #0472)

if AL = 09h, CX = speed code

Note:	also supported by some versions of AMI BIOS dated June 1992 or later

SeeAlso: AH=F0h,AH=F3h

INT 16


INT 16 F2-- - Compaq 386 and newer - DETERMINE ATTACHED KEYBOARD TYPE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F2h

Return: AL = type

    00h if 11-bit AT keyboard is in use

    01h if 9-bit PC keyboard is in use

AH = 00h (04/08/93 system ROM)

INT 16


INT 16 F3-- - Compaq 80286s - SET CPU SPEED LIMIT (OVERRIDE JUMPER)

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F3h

AL = new limit

    00h limit is 6 Mhz

    01h limit is 8 Mhz/6 Mhz

SeeAlso: AH=F0h,AH=F1h

INT 16


INT 16 F398 - NORTON GUIDES - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = F398h

Return: AX = 6A73h ("js")

BH = scan code of current hot key

BL = ASCII code of current hot key

Note:	NG.EXE was written by John Socha

INT 16


INT 16 F400 - Compaq Systempro and higher - CACHE CONTROLLER STATUS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = F400h

Return: AH = E2h (*)

AL = status

    00h not present

    01h enabled

    02h disabled

CX = cache memory size

    bit 15:	cache size information is NOT valid

    bits 14-0:	cache memory size in kilobytes

DH = cache write technology

    bit 7:	cache write information is NOT valid

    bits 6-1:	reserved (0)

    bit 0:	0 = Write-through caching

1 = Write-back caching

DL = cache type

    bit 7:	cache type information is NOT valid

    bits 6-1:	reserved (0)

    bit 0:	0 = Direct mapped

1 = Two-way set-associative

Notes:	also supported by some versions of AMI BIOS dated June 1992 or later

many (most) BIOSes return a modified AH when called for an unsupported

  or non-keyboard function (typically, the highest supported keyboard

  function [normally 12h] is subtracted from the original AH)

SeeAlso: AX=F401h,AX=F402h

INT 16


INT 16 F401 - Compaq Systempro and higher - ENABLE CACHE CONTROLLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = F401h

Return: AX = E201h

Notes:	also supported by some versions of AMI BIOS dated June 1992 or later

many (most) BIOSes return a modified AH when called for an unsupported

  or non-keyboard function (typically, the highest supported keyboard

  function [normally 12h] is subtracted from the original AH)

SeeAlso: AX=F400h,AX=F402h

INT 16


INT 16 F402 - Compaq Systempro and higher - DISABLE CACHE CONTROLLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = F402h

Return: AX = E202h

Notes:	also supported by some versions of AMI BIOS dated June 1992 or later

many (most) BIOSes return a modified AH when called for an unsupported

  or non-keyboard function (typically, the highest supported keyboard

  function [normally 12h] is subtracted from the original AH)

SeeAlso: AX=F400h,AX=F401h

INT 16


INT 16 FA00 - PC Tools v8+ VSAFE, VWATCH - INSTALLATION CHECK

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA00h

DX = 5945h

Return: CF clear

DI = 4559h

BX = BIOS hotkey scancode (default 2F00h) (VSAFE only)

FFFFh if disabled

Note:	MS-DOS 6.0 bundles VSAFE and VWATCH as part of its virus protection

SeeAlso: AX=FA05h,INT 13/AH=FAh,INT 21/AH=FAh"VDEFEND",INT 2F/AX=6282h

INT 16


INT 16 FA01 - PC Tools v8+ VSAFE, VWATCH - UNINSTALL

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA01h

DX = 5945h

Return: CF clear if successful

DI = 4559h

SeeAlso: AX=FA00h

INT 16


INT 16 FA02 - PC Tools v8+ VSAFE, VWATCH - GET/SET OPTIONS

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA02h

DX = 5945h

BL = new parameter flags (see #0474)

Return: CF clear

DI = 4559h

CL = old value of parameter flags

INT 16


INT 16 FA03 - PC Tools v8+ VSAFE, VWATCH - GET ???

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA03h

DX = 5945h

Return: CF clear

DI = 4559h

AX = 0002h

INT 16


INT 16 FA04 - PC Tools v8+ VSAFE - GET HOTKEY DISABLE FLAG

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA04h

DX = 5945h

Return: CF clear

DI = 4559h

BL = hotkey disable flag (nonzero if hotkey disabled)

Note:	this function is a NOP under VWATCH, merely returning CF clear/DI=4559h

SeeAlso: AX=FA00h,AX=FA05h

INT 16


INT 16 FA05 - PC Tools v8+ VSAFE - SET HOTKEY DISABLE FLAG

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA05h

DX = 5945h

BL = new value of hotkey disable flag (nonzero to disable hotkey)

Return: CF clear

DI = 4559h

Note:	this function is a NOP under VWATCH, merely returning CF clear/DI=4559h

SeeAlso: AX=FA00h,AX=FA04h

INT 16


INT 16 FA06 - PC Tools v8+ VSAFE, VWATCH - GET NETWORK DRIVES TEST FLAG

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA06h

DX = 5945h

Return: CF clear

DI = 4559h

BL = test status

    00h don't monitor network drives (default for VWATCH v2.1)

    FFh monitor network drives (default for VSAFE v2.0)

CL = ??? (only VSAFE 2.0)

SeeAlso: AX=FA07h

INT 16


INT 16 FA07 - PC Tools v8+ VSAFE, VWATCH - SET NETWORK DRIVES TEST FLAG

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA07h

DX = 5945h

BL = new state

    00h don't monitor

    01h monitor network drives

Return: CF clear

DI = 4559h

Note:	VWATCH v2.1 (from PC Tools 9.0) returns CF set instead

SeeAlso: AX=FA00h,AX=FA06h

INT 16


INT 16 FA08 - PC Tools v9+ VWATCH v2.1 - ???

undocumented function

Category: v - virus/antivirus

Inp.:

AX = FA08h

DX = 5945h

Return: CF clear

DI = 4559h

AX = ??? (0002h)

BX = version (BH=major, BL=two-digit minor)

Note:	this function is not supported by the PC Tools 9.0 VSAFE v2.0

SeeAlso: AX=FA00h,AX=FA06h

INT 16


INT 16 FE55 - PC Tools v8+ programs - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FE55h

CX = segment of resident program or 0000h for last loaded

DX = 0000h

Return: DX = resident code segment (unchanged if CX=0000h on entry)

AX = ??? or 0000h

Note:	this call is supported by CPSCHED, CPTASK, DATAMON, DPROTECT, DRIVEMAP,

  and DSKLIGHT beginning in PC Tools v8.0; programs other than CPTASK

  seem to hook it merely to return the same AX as the CPTASK loaded

  prior to them returned

INT 16


INT 16 FEA4 - PC Tools v7+ CPSCHED/DESKTOP - RESET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FEA4h

Return: nothing

Note:	this function is identical to AX=FFA4h, and is implemented by the same

  code in DESKTOP

SeeAlso: AX=FFA4h

INT 16


INT 16 FEC6 - PC Tools v7+ CPSCHED - ENABLE/DISABLE CPSCHED API

undocumented function

Category: U - resident utilities

Inp.:

AX = FEC6h

BL = new state (00h enabled, nonzero disabled)

Return: nothing

Desc:	specify whether CPSCHED API calls other than this one and AX=FE55h will

  be honored

INT 16


INT 16 FED3 - PC Tools v7+ CPSCHED/DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FED3h

DS:SI -> 92-byte data record for ???

Return: ???

Note:	this function is identical to AX=FFD3h, and is implemented by the same

  code in DESKTOP

SeeAlso: AX=FFD3h

INT 16


INT 16 FEDC - PC Tools v7+ CPSCHED - UNHOOK INTERRUPTS

undocumented function

Category: U - resident utilities

Inp.:

AX = FEDCh

Return: AX,DX destroyed

Index:	uninstall;CPSCHED

INT 16


INT 16 FEEF - PC Tools v7+ CPSCHED/DESKTOP - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FEEFh

CX = 0000h

Return: CX = ABCDh if PC Tools scheduler (CPSCHED or DESKTOP) installed

    BX = segment of resident portion

    DX = (CPSCHED v8.0) resident CS

Note:	this function is identical to AX=FFD3h, and is implemented by the same

  code in DESKTOP

SeeAlso: AX=FFEFh

INT 16


INT 16 FEF1 - PC Tools v7 only CPSCHED/DESKTOP - ALTERNATE INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FEF1h

BX = ???

Return: CX = 5555h if PC Tools scheduler (CPSCHED or DESKTOP) installed

DX = 5555h

Note:	this function is identical to AX=FFD3h, and is implemented by the same

  code in DESKTOP

SeeAlso: AX=FFF1h

INT 16


INT 16 FF-- - KEYBOARD - KBUF extensions - ADD KEY TO TAIL OF KEYBOARD BUFFER

Category: K - keyboard enhancers

Inp.:

AH = FFh

DX = scan code

Return: AL = status

    00h success

    01h failure

Program: KBUF is a keyboard buffer expander by Mark Adler

SeeAlso: AH=05h

INT 16


INT 16 FF-- - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY ZOOM INTERRUPT

Category: V - video

Inp.:

AH = FFh

Return: AL = interrupt number to which BIOS keyboard handler has been relocated

AL+1 = Zoom interrupt number

BX = hotkey

Notes:	the default interrupts are 60h for keyboard and 61h for Zoom interrupt;

  the default hot key is F10

not all vendors include the Tseng TSR which supports these functions

SeeAlso: INT 61"OPTIMA"

Index:	hotkeys;OPTIMA 1024 VGA

INT 16


INT 16 FF-- - FREEZE.COM - INSTALLATION CHECK

Category: - - (none)

Inp.:

AH = FFh

BH = 00h

Return: BH = FFh if installed

Program: FREEZE is a PC Magazine utility

INT 16


INT 16 FF70 - PC Tools v8+ DRIVEMAP - INSTALLATION CHECK

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = FF70h

BX = 0000h

CX = 4C69h ('Li')

DX = 6E6Bh ('nk')

Return: AX = 0000h

CX = 4350h ('CP')

DH = major version

DL = minor version

Program: DRIVEMAP is a redirector which allows drives on computers connected

  over the parallel or serial ports to appear as local drives

SeeAlso: AX=FF70h/BX=0001h,AX=FF70h/BX=0002h

INT 16


INT 16 FF70 - PC Tools v8+ DRIVEMAP - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = FF70h

BX = 0001h

DL = ???

Return: AX = ???

DH = ???

SeeAlso: AX=FF70h/BX=0000h,AX=FF70h/BX=0002h

INT 16


INT 16 FF70 - PC Tools v8+ DRIVEMAP - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = FF70h

BX = 0002h

CX = ???

DX = ???

Return: AX = ??? or FFFEh/FFFFh on error

DL = ???

BUG:	DRIVEMAP will branch to random locations for BX values other than

  those listed above for v8.0-9.0 because a) the incorrect register is

  range-tested, resulting in BX=0003h-5CD6h being accepted as valid

  function numbers, and b) the conditional which branches on invalid

  function numbers jumps to the following instruction, becoming a NOP

SeeAlso: INT 2F/AX=9203h"DRIVEMAP"

Index:	installation check;DRIVEMAP

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - INSTALLATION CHECK

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0000h

CX = 0000h

DX = 0000h

Return: CX = 5555h if installed

Program: CPTASK is a task switcher by Central Point Software

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0001h

???

Return: DX:SI -> task list??? (ten entries of 70h bytes in v9.0)

BX = ??? (PSP segment of resident code???)

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0002h

Return: DX:SI -> ???

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - GET ??? FLAGS

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0003h

Return: AX = flags (see #0475)

SeeAlso: AX=FF80h/BX=0004h,AX=FF80h/BX=0006h

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - SET ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0004h

CX = new value of ???

Return: ???

Note:	this function also sets bit 14 of the flags word returned by

  AX=FF80h/BX=0003h

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - GET NUMBER OF ACTIVE TASKS???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0005h

Return: AX = number of active tasks???

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - GET AND CLEAR ??? FLAG

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0006h

Return: AX = old state (0000h clear, 0001h set)

Note:	the tested flag is bit 13 of the flags returned by AX=FF80h/BX=0003h

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0007h

ES:DI -> ???

???

Return: ???

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0008h

???

Return: ???

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 0009h

Return: CL = ???

CH = ??? (01h or 02h)

INT 16


INT 16 FF80 - PC Tools v9+ CPTASK - SET ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 000Ah

DS:SI -> 128-byte buffer containing ???

INT 16


INT 16 FF80 - PC Tools v9+ CPTASK - SET ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 000Bh

DX = index of ??? task (1-10)

INT 16


INT 16 FF80 - PC Tools v9+ CPTASK - SET IDLE??? DELAY

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 000Ch

CX = new delay time in minutes

INT 16


INT 16 FF80 - PC Tools v8+ CPTASK - UNINSTALL

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF80h

BX = 4350h ('CP')

CX = 5354h ('ST')

Return: never returns; terminates all tasks and exits to program originally

  calling CPTASK

INT 16


INT 16 FF90 - PC Tools v8+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF90h

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FF91 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF91h

???

Return: AX = 0000h

Note:	calls AX=FFFDh after ???

SeeAlso: AX=FF92h,AX=FFFDh

INT 16


INT 16 FF92 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF92h

???

Return: AX = 0000h

Note:	like AX=FF91h, but temporarily sets ??? to 3

SeeAlso: AX=FF91h,AX=FFFDh

INT 16


INT 16 FF93 - PC Tools v7+ DESKTOP - SET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = FF93h

INT 16


INT 16 FF94 - PC Tools v7+ DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF94h

CX = ??? (default 0017h)

INT 16


INT 16 FF95 - PC Tools v7+ DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF95h

BX = ???

INT 16


INT 16 FF96 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF96h

CL = ???

Return: AX = ???

INT 16


INT 16 FF97 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF97h

DS:DX -> buffer for ??? (see #0476)

Return: ???

INT 16


INT 16 FF98 - PC Tools v7+ DESKTOP - OPEN \DESK.OVL FILE AND SEEK TO OVERLAY

undocumented function

Category: U - resident utilities

Inp.:

AX = FF98h

DX = byte offset in file of overlay header (see #0477)

Return: BX = file handle for DESK.OVL file

Desc:	open the DESK.OVL file, seek to the specified offset, read in the

  overlay header, and seek to the offset specified by the header

INT 16


INT 16 FF99 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF99h

???

Return: ???

INT 16


INT 16 FF9A - PC Tools v7+ DESKTOP - GET NAME OF COLOR SCHEME

undocumented function

Category: U - resident utilities

Inp.:

AX = FF9Ah

Return: ES:BX -> name of current color scheme

Note:	available even if not popped up

INT 16


INT 16 FF9B - PC Tools v7+ DESKTOP - UNUSED

undocumented function

Category: U - resident utilities

Inp.:

AX = FF9Bh

Return: ???

Note:	sounds triple-length beep

INT 16


INT 16 FF9C - PC Tools v8+ CPTASK - SET/CLEAR ??? POINTER

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FF9Ch

BL = function

    00h set ??? pointer

DS:SI -> ???

    01h clear pointer to 0000h:0000h

INT 16


INT 16 FF9D - PC Tools v8+ CPTASK, VSAFE - ???

undocumented function

Category: - - (none)

Inp.:

AX = FF9Dh

ES:BX -> ??? word

Return: ???

Note:	if ES is non-zero, the word pointed at by ES:BX determines whether the

  ??? flag is cleared (word = 0000h) or set (word is nonzero).	The

  flag is always cleared if ES=0000h.

INT 16


INT 16 FF9E - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FF9Eh

DL = ???

    bit 7: ???

    bits 6-0: function number??? (00h,01h,other)

???

Return: ???

INT 16


INT 16 FFA1 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA1h

???

Return: ???

Note:	same as AX=FFA2h, except ??? set to FFh

SeeAlso: AX=FFA2h

INT 16


INT 16 FFA2 - PC Tools v7+ DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA2h

???

Return: ???

Note:	calls AX=FFC7h (remove window) and AX=FFFDh

SeeAlso: AX=FFA1h,AX=FFC7h,AX=FFFDh

INT 16


INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - INSTALLATION CHECK

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0000h

CX = 0000h

Return: AX = segment of resident code

BX = 5555h

CX = 5555h

Note:	also supported by DOS 6 UNDELETE which is licensed from PC Tools

SeeAlso: INT 21/AH=3Fh"NB.SYS",INT 21/AX=4101h,INT 2F/AX=6284h

INT 16


INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0001h

CX = 0001h

Return: AX:BX -> ???

CX = BX

INT 16


INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0002h

CX = 0002h

Return: AX = ??? (0 or 1)

CX = BX = AX

INT 16


INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0003h

CX = 0003h

Return: AX = ??? (0 or 1)

CX = BX = AX

INT 16


INT 16 FFA3 - PC Tools v7+ DATAMON - SET ??? FLAG

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0004h

CX = 0004h

SeeAlso: AX=FFA3h/BX=0005h

INT 16


INT 16 FFA3 - PC Tools v7+ DATAMON - CLEAR ??? FLAG

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0005h

CX = 0005h

SeeAlso: AX=FFA3h/BX=0004h

INT 16


INT 16 FFA3 - PC Tools v7+ DATAMON - SET PSP SEGMENT ???

undocumented function

Category: y - security

Inp.:

AX = FFA3h

BX = 0006h

CX = 0006h

DX = current PSP segment as known to DOS??? or 0000h

INT 16


INT 16 FFA3 - PC Tools v9 DSKLIGHT - INSTALLATION CHECK

undocumented function

Category: - - (none)

Inp.:

AX = FFA3h

BX = FFA3h

CX = FFA3h

Return: BX = CX = 5555h if installed

    AX = resident code segment

Program: DSKLIGHT is a TSR included with PC Tools v9+ which displays a disk-

  access indicator on the screen; in v7 and v8, this function was

  provided by DATAMON

Note:	DSKLIGHT chains to the previous handler if BX or CX is not FFA3h

INT 16


INT 16 FFA4 - PC Tools v7-8 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA4h

Return: ???

Notes:	available even when not popped up

sets unknown flag if ??? conditions met

SeeAlso: AX=FEA4h

INT 16


INT 16 FFA5 - PC-Cache v6+ - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AX = FFA5h

CX = 1111h

Return: CH = 00h if installed

    ES:DI -> internal data (see #0478)

    CL = cache state

01h enabled

02h disabled

SeeAlso: INT 13/AH=27h,INT 13/AH=A0h,INT 21/AH=2Bh/CX=4358h

INT 16


INT 16 FFA5 - PC-Cache v6+ - ENABLE DELAYED WRITES

Category: c - caches/spoolers

Inp.:

AX = FFA5h

CX = AAAAh

Return: AX = ??? (apparently either 0000h or sectors_in_cache - 5)

SeeAlso: AX=FFA5h/CX=CCCCh

INT 16


INT 16 FFA5 - PC-Cache v6+ - FLUSH CACHE AND DISABLE DELAYED WRITES

Category: c - caches/spoolers

Inp.:

AX = FFA5h

CX = CCCCh

Return: AX = ??? (apparently either 0000h or sectors_in_cache - 5)

Note:	delayed writes are automatically disabled on EXECing

  (see INT 21/AH=4Bh) a program named either WIN.CO? or DV.E??;

  however, delayed writes are not automatically reenabled upon the

  program's termination in v6.

SeeAlso: AX=FFA5h/CX=AAAAh,AX=FFA5h/CX=FFFFh

INT 16


INT 16 FFA5 - PC-Cache v6+ - FLUSH AND DISABLE CACHE

Category: c - caches/spoolers

Inp.:

AX = FFA5h

CX = DDDDh

SeeAlso: AX=FFA5h/CX=EEEEh,AX=FFA5h/CX=FFFFh

INT 16


INT 16 FFA5 - PC-Cache v6+ - ENABLE CACHE

Category: c - caches/spoolers

Inp.:

AX = FFA5h

CX = EEEEh

SeeAlso: AX=FFA5h/CX=DDDDh

INT 16


INT 16 FFA5 - PC-Cache v6+ - FLUSH CACHE

Category: c - caches/spoolers

Inp.:

AX = FFA5h

CX = FFFFh

SeeAlso: AX=FFA5h/CX=CCCCh,AX=FFA5h/CX=DDDDh,INT 13/AH=A1h

INT 16


INT 16 FFA6 - PC Tools v6.0-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA6h

Return: DS:SI -> ???

Note:	available only when popped up

INT 16


INT 16 FFA7 - PC Tools v6.0-8.0 DESKTOP - GET ??? PATH

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA7h

Return: DS:SI -> ASCIZ path (directory from which PCTools was run???)

INT 16


INT 16 FFA8 - PC Tools v6.0-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA8h

DS:SI -> three consecutive ASCIZ strings for ??? (max 256 bytes total)

???

Return: ???

Notes:	available only when popped up

strings copied into internal buffer, among other actions

INT 16


INT 16 FFA9 - PC Tools v6.0-8.0 DESKTOP - GET VERSION STRING

undocumented function

Category: U - resident utilities

Inp.:

AX = FFA9h

Return: DS:SI -> version string

INT 16


INT 16 FFAA - PC Tools v6.0-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFAAh

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFAB - PC Tools v6.0-8.0 DESKTOP - GET EDITOR SETTINGS???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFABh

Return: DS:SI -> editor setting strings???

INT 16


INT 16 FFAC - PC Tools v6.0-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFACh

DL = ???

Note:	available only when popped up

INT 16


INT 16 FFAD - PC Tools v6.0-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFADh

DL = ???

INT 16


INT 16 FFAE - PC Tools v6.0-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFAEh

Return: AL = ???

INT 16


INT 16 FFAF - PC Tools v6.0-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFAFh

DL = ???

INT 16


INT 16 FFB0 - PC Tools v6.0-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB0h

BL = ???

INT 16


INT 16 FFB1 - PC Tools v6.0-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB1h

???

Return: ???

INT 16


INT 16 FFB2 - PC Tools v5.5-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB2h

Return: DS:SI -> ???

INT 16


INT 16 FFB3 - PC Tools v5.5-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB3h

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFB4 - PC Tools v5.5-8.0 DESKTOP - SET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB4h

Note:	available only when popped up

SeeAlso: AX=FFBBh

INT 16


INT 16 FFB5 - PC Tools v5.5-8.0 DESKTOP - GET/SET WINDOW PARAMETERS

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB5h

BX = window specifier (000Fh to 0019h) (see #0479)

DX = 0000h get, nonzero = set

ES:DI -> window parameter buffer (see #0480)

SeeAlso: AX=FFCBh

INT 16


INT 16 FFB6 - PC Tools v5.5-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB6h

Return: AH = ???

AL = ???

INT 16


INT 16 FFB7 - PC Tools v5.5-8.0 DESKTOP - GET/SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB7h

BX = direction

    0000h copy to buffer

    else  copy from buffer

DS:SI -> 70-byte buffer with ???

Return: data copied

Note:	available only when popped up under v6.0+

INT 16


INT 16 FFB8 - PC Tools v5.1-8.0 DESKTOP - GET/SET???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB8h

BH = subfunction

    00h get

Return: BL = old value of ???

CL = old value of ??? (v6.0+)

CH = old value of ??? (v6.0+)

    nonzero set

BL = new value for ???

CL = new value for ??? (v6.0+)

CH = new value for ??? (v6.0+)

DH = ???

Return: AL = old value replaced by CL (v6.0+)

AH = old value replaced by CH (v6.0+)

INT 16


INT 16 FFB9 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFB9h

???

Return: AX = ???

CX = ???

DS:SI -> ???

ES:DI -> ???

INT 16


INT 16 FFBA - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFBAh

???

Return: AX = ???

Note:	available only when popped up

INT 16


INT 16 FFBB - PC Tools v5.1-8.0 DESKTOP - CLEAR ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = FFBBh

Note:	available only when popped up

SeeAlso: AX=FFB4h

INT 16


INT 16 FFBC - PC Tools v5.1-8.0 DESKTOP - RESTORE ORIGINAL SCREEN???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFBCh

INT 16


INT 16 FFBD - PC Tools v5.1-8.0 DESKTOP - ??? DATABASE INDEXING MESSAGES

undocumented function

Category: U - resident utilities

Inp.:

AX = FFBDh

???

Return: ???

INT 16


INT 16 FFBE - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFBEh

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFBF - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFBFh

BX = DOS file handle to write on

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFC0 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC0h

???

Return: AX = 0000h if successful

AX = FFFFh on error

Note:	available only when popped up

INT 16


INT 16 FFC1 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC1h

BL = ???

ES:DI -> data structure (see #0481)

???

Return: AX = ???

Note:	available only when popped up

SeeAlso: AX=FFC2h,AX=FFC3h

INT 16


INT 16 FFC2 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC2h

BL = ???

ES:DI -> data structure (see #0481)

???

Return: AH = ???

CX = ???

DH = ???

DL = ???

Note:	available only when popped up

SeeAlso: AX=FFC1h,AX=FFC3h

INT 16


INT 16 FFC3 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC3h

BL = ???

ES:DI -> data structure (see #0481)

???

Return: AH = ???

CX = ???

DH = ???

DL = ???

Note:	available only when popped up

SeeAlso: AX=FFC1h,AX=FFC2h

INT 16


INT 16 FFC4 - PC Tools v5.1-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC4h

Return: AL = ???

BX = segment of scratch space???

CX = segment of stored screen data (section covered by window???)

DX = segment of window parameters for ???

ES:BP -> ???

Note:	available only when popped up in versions prior to 6.0

INT 16


INT 16 FFC5 - PC Tools v5.1-8.0 DESKTOP - CHECK WHETHER DESKTOP LOADED RESIDENT

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC5h

Return: BL = Desktop state

    00h if nonresident

    nonzero if loaded resident

Note:	available only when popped up; should call AX=FFEFh first to ensure

  that DESKTOP is active

SeeAlso: AX=FFEFh,AX=FFF3h

INT 16


INT 16 FFC6 - PC Tools v5.1-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC6h

BL = new value for ???

INT 16


INT 16 FFC7 - PC Tools v5.1-8.0 DESKTOP - REMOVE WINDOW

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC7h

???

Return: ???

INT 16


INT 16 FFC8 - PC Tools v5.1-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC8h

Return: DS:SI -> ???

Note:	valid only while popped up

INT 16


INT 16 FFC9 - PC Tools v5.1-8.0 DESKTOP - COPY DATA TO CLIPBOARD

undocumented function

Category: U - resident utilities

Inp.:

AX = FFC9h

DS:SI -> characters to store in clipboard

CX = size in bytes

Return: CF set on error

Notes:	available only when popped up

while copying, bytes of 00h and 0Ah are skipped

INT 16


INT 16 FFCA - PC Tools v5.1-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFCAh

DX = ???

Return: AX destroyed

Note:	available only when popped up

INT 16


INT 16 FFCB - PC Tools v5.1-8.0 DESKTOP - SELECT WINDOW PARAMETERS???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFCBh

DX = window specifier???

Return: AX destroyed

Note:	available only when popped up

SeeAlso: AX=FFB5h

INT 16


INT 16 FFCC - PC Tools v5.1-8.0 DESKTOP - DISPLAY ASCIZ STRING CENTERED IN WINDOW

undocumented function

Category: U - resident utilities

Inp.:

AX = FFCCh

DS:SI -> ASCIZ string

Return: AX = ???

CX = ???

ES:DI -> address past last character displayed (v5.1/5.5)

      -> ??? on menu bar (v6.0)

INT 16


INT 16 FFCD - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFCDh

DS:DX -> ???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFCE - PC Tools v5.1-8.0 DESKTOP - SET ??? DELAYS

undocumented function

Category: U - resident utilities

Inp.:

AX = FFCEh

CX = ???

Return: nothing???

INT 16


INT 16 FFCF - PC Tools v5.1-8.0 DESKTOP - CLOSE PRINTER/PRINT FILE

undocumented function

Category: U - resident utilities

Inp.:

AX = FFCFh

Note:	available only when popped up

INT 16


INT 16 FFD0 - PC Tools v5.1-8.0 DESKTOP - PREPARE TO PRINT???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD0h

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFD1 - PC Tools v5.1-8.0 DESKTOP - DISPLAY PRINT OPTIONS MENU

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD1h

Return: BX = number of copies

DX = destination

    00h cancel

    01h LPT1

    02h LPT2

    03h LPT3

    04h COM1

    05h COM2

    06h disk file

Note:	available only when popped up

INT 16


INT 16 FFD2 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD2h

BX = ???

Return: BL = ???

Note:	available only when popped up

INT 16


INT 16 FFD3 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD3h

DS:SI -> 92-byte data record for ???

Return: ???

SeeAlso: AX=FED3h

INT 16


INT 16 FFD4 - PC Tools v5.1-8.0 DESKTOP - CREATE/OPEN/DELETE FILE

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD4h

BH = 3Ch create file (with no attributes)

     3Dh open file

     41h delete file

BL = access mode

     00h read only

     01h write only

     02h read/write

DS:SI -> ASCIZ filename

Return: BX = file handle

    0000h on error

Note:	operation is attempted in (in order) the directory from which the

  desktop was started/run???, the directory specified with the

  filename, X:\PCTOOLS\, and X:\

INT 16


INT 16 FFD5 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD5h

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFD6 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD6h

BX = ???

CX = ???

DX = offset in ???

???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFD7 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD7h

???

Return: BL = ???

Note:	available only when popped up

INT 16


INT 16 FFD8 - PC Tools v5.1-8.0 DESKTOP - SAFE CREATE FILE

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD8h

DS:BX -> ASCIZ filename

Return: BX = file handle

    0000h on error

Note:	pops up confirmation menu if file already exists

only available when popped up???

INT 16


INT 16 FFD9 - PC Tools v5.1-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFD9h

Return: AX = ???

Note:	available only when popped up

INT 16


INT 16 FFDA - PC Tools v5.1-8.0 DESKTOP - GET NAME OF LAST FILE OPENED

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDAh

DS:SI -> ??? (v5.1/5.5 only)

Return: DS:SI -> filename

INT 16


INT 16 FFDB - PC Tools v5.1-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDBh

BL = ???

Note:	available only when popped up

INT 16


INT 16 FFDC - PC Tools v5.1-8.0 DESKTOP - UNHOOK

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDCh

Return: interrupt vectors 09h, 10h (v6.0+), 16h, 1Ch, and 21h restored to

  original values

Index:	uninstall;PC Tools DESKTOP

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0000h

Return: CX = 5555h

DX = 5555h if PCShell installed in resident mode

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - REQUEST POP-UP

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0001h

Return: CF clear if request successful (PCShell will pop up)

CF set on error

SeeAlso: AX=FFDDh/BX=0003h

INT 16


INT 16 FFDD - PC Tools v5.1-5.5 PCShell API - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0002h

Return: AL =

    00h ???

    01h ???

Note:	PCShell v6.0+ displays the error message "Incorrect PCRUN version",

  awaits a keystroke, and aborts the current process

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - REQUEST POP-UP

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0003h

SeeAlso: AX=FFDDh/BX=0001h

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0004h

Return: CF clear if successful

    DS:SI -> ???

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0005h

???

Return: ???

Note:	resets various variables if certain conditions are met

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0006h

???

Return: ???

Note:	resets various variables if certain conditions are met

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - SET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0007h

Return: CF clear if successful

SeeAlso: AX=FFDDh/BX=0008h

INT 16


INT 16 FFDD - PC Tools v5.1+ PCShell API - CLEAR ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0008h

Return: CF undefined

SeeAlso: AX=FFDDh/BX=0007h

INT 16


INT 16 FFDD - PC Tools v6.0+ PCShell API - GET PCRUN PARAMETERS

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 0009h

Return: CF clear if successful

    DS:SI -> list of pointers (see #0482)

INT 16


INT 16 FFDD - PC Tools v6.0+ PCRUN API - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 000Ah

Return: CX = 5555h if running

DX = 5555h

Note:	also sets a flag

INT 16


INT 16 FFDD - PC Tools v6.0+ PCRUN API - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDDh

BX = 000Bh

???

Return: CX = 5555h if PCRUN active

DX = 5555h

Note:	also clears flag set by AX=FFDDh/BX=000Ah

INT 16


INT 16 FFDE - PC Tools v5.1-8.0 DESKTOP - DISPLAY POPUP MENU

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDEh

DS:DX -> menu description (must be on a paragraph boundary)

Return: AX = ???

    AL seems to be the number of the selected button

Note:	available only when popped up

SeeAlso: AX=FFEEh

INT 16


INT 16 FFDF - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFDFh

???

Return: ???

INT 16


INT 16 FFE0 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE0h

CX = ???

DX = ???

Note:	available only when popped up

INT 16


INT 16 FFE1 - PC Tools v5.1-8.0 DESKTOP - BEEP

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE1h

INT 16


INT 16 FFE2 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE2h

DX = ???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFE3 - PC Tools v5.1-8.0 DESKTOP - PRINT CHARACTER

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE3h

BL = character to print to currently open printer or print file

Return: CF set on error

Note:	available only when popped up

SeeAlso: INT 17/AH=00h

INT 16


INT 16 FFE4 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE4h

DX = segment of ???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFE5 - PC Tools v5.1-8.0 DESKTOP - POP UP FILE SELECTION MENU

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE5h

DS:SI -> ASCIZ wildcard filespec followed by ASCIZ menu title

DX = segment of window parameters???

Return: AX = DOS file handle for file

DS:DX -> filename???

    FFFFh if function cancelled by user

Note:	available only when popped up

SeeAlso: AX=FFDAh

INT 16


INT 16 FFE6 - PC Tools v5.1-8.0 DESKTOP - CHECK FOR AND GET KEYSTROKE

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE6h

Return: AX = 0000h if no key available

     else  BIOS keycode

Notes:	available only when popped up

invokes INT 28 idle interrupt before checking for key

INT 16


INT 16 FFE7 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE7h

BX = segment of ???

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFE8 - PC Tools v5.1-8.0 DESKTOP - DISPLAY NUMBER

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE8h

CX = number

DH = attribute

DS:SI -> destination for ASCII number

Return: DS:SI buffer filled in with alternating characters and attributes

INT 16


INT 16 FFE9 - PC Tools v5.1-8.0 DESKTOP - GET FILE LIST???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFE9h

Return: BX = segment of file/directory list (14 bytes per file, NUL-padded)

Note:	available only when popped up

INT 16


INT 16 FFEA - PC Tools v5.1-8.0 DESKTOP - DISPLAY COUNTED STRING

undocumented function

Category: U - resident utilities

Inp.:

AX = FFEAh

DS:SI -> counted string (count byte followed by string)

Return: ???

Note:	available only when popped up

INT 16


INT 16 FFEB - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFEBh

???

Return: ???

INT 16


INT 16 FFEC - PC Tools v5.1-8.0 DESKTOP - GET KEY

undocumented function

Category: U - resident utilities

Inp.:

AX = FFECh

DS:SI -> FAR routine to ???

BX = ???

???

Return: AX = keystroke

    FFFFh if F10 pressed to go to menu

Notes:	available only when popped up

invokes INT 28 while waiting for keystroke

F10 is hotkey to Desktop menu

Index:	hotkeys;PC Tools DESKTOP

INT 16


INT 16 FFED - PC Tools v5.1-8.0 DESKTOP - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFEDh

Return: AX = ???

Note:	available only when popped up

INT 16


INT 16 FFEE - PC Tools v5.1-8.0 DESKTOP - DEFINE PULLDOWN MENUS

undocumented function

Category: U - resident utilities

Inp.:

AX = FFEEh

DS:SI -> pulldown menu system description (see #0483)

Return: AX destroyed

Notes:	available only when popped up

if the accessory does not need any menu items of its own, it should

  call AX=FFFAh instead

SeeAlso: AX=FFF7h,AX=FFFAh

INT 16


INT 16 FFEF - PC Tools v5.1-8.0 DESKTOP - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FFEFh

CX = 0000h

Return: CX = ABCDh if PC Tools DESKTOP.EXE installed

    BX = segment of resident portion

    AX = ??? (v5.1/5.5 only)

SeeAlso: AX=FEEFh,AX=FFC5h,AX=FFF3h

INT 16


INT 16 FFF0 - PC Tools v5.1-8.0 DESKTOP - SET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF0h

DX = ???

Return: AX destroyed

Note:	available only when popped up

INT 16


INT 16 FFF1 - PC Tools v5.1-8.0 DESKTOP - ALTERNATE INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF1h

BX = 0000h  leave ??? flag as is

    nonzero set ??? flag

Return: CX = 5555h if installed

DX = 5555h

INT 16


INT 16 FFF2 - PC Tools v5.1-8.0 DESKTOP - DISPLAY HELP LINE

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF2h

DS:SI -> ASCIZ function key label string (each label preceded by '[')

or help text

Return: AX destroyed

Notes:	available only when popped up

if the specified string does not start with '[', it is displayed

  centered on the bottom line, else the function key labels are shown

INT 16


INT 16 FFF3 - PC Tools v5.1-8.0 DESKTOP - PREPARE TO UNLOAD RESIDENT DESKTOP

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF3h

Note:	releases any EMS being used; restores video mode, page, and cursor

  shape; and restores interrupt vectors

SeeAlso: AX=FFC5h,AX=FFEFh

Index:	uninstall;PC Tools DESKTOP

INT 16


INT 16 FFF4 - PC Tools v5.1-8.0 DESKTOP - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF4h

???

Return: ???

Note:	available only when popped up

SeeAlso: AX=FFF6h

INT 16


INT 16 FFF5 - PC Tools v5.1-8.0 DESKTOP - GET SCREEN ATTRIBUTE ARRAY

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF5h

Return: ES:BX -> screen attributes data structure (see #0486)

AL = ??? (v6.0+)

INT 16


INT 16 FFF6 - PC Tools v5.1-8.0 DESKTOP - INVOKE NOTEPAD EDITOR

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF6h

DS = segment of editor buffer structure (see #0487)

BX = ???

DX = segment of window parameters structure (see #0480)

Return: ???

Note:	available only when popped up

SeeAlso: AX=FFF4h

INT 16


INT 16 FFF7 - PC Tools v5.1-8.0 DESKTOP - PROCESS MENU BAR ENTRY???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF7h

DS:SI -> ???

???

Return: ???

Notes:	available only when popped up

performs input processing on the menu bar set up with AX=FFEEh

SeeAlso: AX=FFEEh,AX=FFFBh

INT 16


INT 16 FFF8 - PC Tools v5.1-8.0 DESKTOP - DRAW EMPTY WINDOW

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF8h

DS:0000h -> window parameters structure (see #0480)

DS:BX -> DWORD to store address of ??? on screen

Return: ???

INT 16


INT 16 FFF9 - PC Tools v5.1-8.0 DESKTOP - DEFINE SCREEN REFRESH ROUTINE

undocumented function

Category: U - resident utilities

Inp.:

AX = FFF9h

ES:BX -> FAR routine to redisplay the utility's window

Note:	available only when popped up

INT 16


INT 16 FFFA - PC Tools v5.1-8.0 DESKTOP - DEFINE STANDARD PULLDOWN MENUS

undocumented function

Category: U - resident utilities

Inp.:

AX = FFFAh

Notes:	available only when popped up

adds the "Window" option to the "Desktop" option which is the only one

  available when no accessories are active.  Unlike AX=FFEEh, no

  additional menu items are added between "Desktop" and "Window"

SeeAlso: AX=FFEEh,AX=FFFBh

INT 16


INT 16 FFFB - PC Tools v5.1-8.0 DESKTOP - PROCESS STANDARD MENU BAR

undocumented function

Category: U - resident utilities

Inp.:

AX = FFFBh

Return: ???

Notes:	available only when popped up

performs input processing on the standard menu bar set up with AX=FFFAh

SeeAlso: AX=FFF7h

INT 16


INT 16 FFFC - PC Tools v5.1-8.0 DESKTOP - GET HOTKEYS AND KEYBOARD VECTOR

undocumented function

Category: U - resident utilities

Inp.:

AX = FFFCh

Return: ES:BX -> hotkey table (see #0488)

DS:DX = original INT 09 vector

INT 16


INT 16 FFFD - PC Tools v5.1-8.0 DESKTOP - COPY ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FFFDh

Return: AX destroyed

Note:	copies 4000 bytes from ??? to ??? under certain circumstances

SeeAlso: AX=FF91h,AX=FF92h

INT 16


INT 16 FFFE - PC Tools v5.1-8.0 DESKTOP - SHOW MOUSE CURSOR

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = FFFEh

SeeAlso: AX=FFFFh,INT 33/AX=0001h

INT 16


INT 16 FFFF - PC Tools v5.1-8.0 DESKTOP - HIDE MOUSE CURSOR

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = FFFFh

SeeAlso: AX=FFFEh,INT 33/AX=0002h

INT 16


INT 17 ---- - PRINTER - LPTx v5.x INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

DX = 0ABCh

Return: AX = AAAAh

DX = BAAAh

ES = code segment of resident portion

INT 17


INT 17 ---- - PRINTER - LPTx v6.x INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

DX = 0B90h

Return: DX = ABBBh

ES = code segment of resident portion

INT 17


INT 17 ---- - PRINTER - LPTx v7.x INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

DX = 0B91h

Return: DX = ABCBh

ES = code segment of resident portion

INT 17


INT 17 ---- - PRINTER - LPTx v4.x INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

DX = 0F5Fh

Return: AX = AAAAh

DX = F555h

ES = code segment of resident portion

INT 17


INT 17 00-- - PRINTER - WRITE CHARACTER

Category: B - BIOS

Inp.:

AH = 00h

AL = character to write

DX = printer number (00h-02h)

Return: AH = printer status (see #0489)

SeeAlso: AH=02h,AH=84h"AX",AX=6F02h,AH=F1h,INT 16/AX=FFE3h,INT 1A/AH=11h"NEC"

INT 17


INT 17 01-- - PRINTER - INITIALIZE PORT

Category: B - BIOS

Inp.:

AH = 01h

DX = printer number (00h-02h)

Return: AH = printer status (see #0489)

Note:	some printers report that they are ready immediately after

  initialization when they actually are not; a more reliable result may

  be obtained by calling AH=02h after a brief delay

SeeAlso: AH=02h,AH=FFh"PC-MOS",INT 1A/AH=10h"NEC"

INT 17


INT 17 02-- - PRINTER - GET STATUS

Category: B - BIOS

Inp.:

AH = 02h

DX = printer number (00h-02h)

Return: AH = printer status (see #0489)

Note:	PRINTFIX from MS-DOS 5.0 hooks this function and always returns AH=90h

SeeAlso: AH=01h,AH=F2h,INT 1A/AH=12h"NEC"

INT 17


INT 17 02-- - INSET - INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

AH = 02h

DX = 0000h

CX = 07C3h (1987d)

Return: CX = 07C2h (1986d) if installed

Program: INSET is a text/graphics integration program

INT 17


INT 17 0200 - Advanced Parallel Port (EPP) BIOS - INSTALLATION CHECK

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0200h

BX = 5050h ('PP')

CH = 45h   ('E')

DX = printer port number (00h-02h)

Return: AH = status

    00h if installed and port is an enhanced parallel port

CX:AL = installed BIOS type

    5050h:45h ('PPE') if EPP v3.0 BIOS Installed

    4550h:50h ('EPP') if EPP v1.0 BIOS installed

DX:BX -> far entry point to Advanced BIOS (see #0490)

    03h if installed but specified port not supported

CF set

Program: The Advanced Parallel Port BIOS provides support for parallel

  port peripherals using the enhanced modes of the IEEE 1284.

SeeAlso: AH=E0h

INT 17


INT 17 03-- - Emulaser ELTSR - INSTALL INTERRUPT HANDLERS

undocumented function

Category: P - printer enhancements

Inp.:

AH = 03h

Return: BX = ???

CX = ???

Program: ELTSR is the resident portion of the Emulaser PostScript emulator by

  Vertisoft Systems, Inc.

SeeAlso: AH=04h"Emulaser",AH=0Eh,INT 1A/AH=E5h

INT 17


INT 17 03-- - PC-MOS/386 v5.01 - PRINT SPOOLER - PRINT STRING

Category: c - caches/spoolers

Inp.:

AH = 03h

DX = printer port number

CX = number of characters to print

DS:SI -> string

Return: AH = printer status (see #0489)

CX = number of characters actually printed

Desc:	send an entire string of chars to the print spooler with a single call

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

SeeAlso: AH=00h,AH=01h,AH=02h,AH=FFh"PC-MOS"

INT 17


INT 17 03-- - DMP Print Spooler v2.03 - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AH = 03h

BX = 5A00h

Return: AX = 5ACBh

DI = 0000h

ES = DMP code segment (also data segment)

Program: DMP is a Printer driver/spooler, by DMP (USA), available on the

  PCTODAY disk, volume 10, March 1991

INT 17


INT 17 0300 - DOSISODE to WATTCP TSR Interface - "socket"

Category: N - network

Inp.:

AX = 0300h

CX = type of socket from  socket( domain, type, protocol )

DX = local identifier of socket (0 - 31)

Return: AX = 0000h success

    CX = segment of 4500 byte transfer buffer

    DX = offset of 4500 byte transfer buffer

   = FFFFH failure

    CX = error code

ENFILE	    23

Program: DOSISODE is the ISO developers environment which has been ported to

  DOS and will run with the Waterloo TCP turned into a resident TSR.

  Currently it allows a maximum of 6 open sockets.

Note:	this function will initialize the interface the first time it is

  called

SeeAlso: AX=0400h"DOSISODE",AX=0600h"DOSISODE",AX=0800h"DOSISODE"

SeeAlso: AX=0A00h"DOSISODE",AX=0C00h"DOSISODE",AX=0E00h"DOSISODE"

INT 17


INT 17 04-- - Emulaser ELTSR - BEGIN CAPTURING OUTPUT

undocumented function

Category: P - printer enhancements

Inp.:

AH = 04h

Note:	has no effect unless ELTSR is deactivated (see AX=0503h)

SeeAlso: AH=03h"Emulaser",AX=0503h,INT 1A/AH=E5h

INT 17


INT 17 0400 - DOSISODE to WATTCP TSR Interface - "bind"

Category: N - network

Inp.:

AX = 0400h

Note:	this function just returns

SeeAlso: AX=0300h"DOSISODE",AX=0500h"DOSISODE",AX=0C00h"DOSISODE"

INT 17


INT 17 0500 - Emulaser ELTSR - ???

undocumented function

Category: P - printer enhancements

Inp.:

AX = 0500h

???

Return: AX = unload status (0001h safe to unload, 0002h not safe)

BX = ???

CX = PSP segment of ELTSR

DX = activity flag (0000h disabled, 0001h capturing, 0002h ???printing)

SI = ???

DI = ???

SeeAlso: AH=04h,INT 1A/AH=E5h

INT 17


INT 17 0500 - DOSISODE to WATTCP TSR Interface - "connect"

Category: N - network

Inp.:

AX = 0500h

SeeAlso: AX=0400h"DOSISODE",AX=0700h"DOSISODE",AX=0C00h"DOSISODE"

INT 17


INT 17 0501 - Emulaser ELTSR - UNHOOK INTERRUPTS

undocumented function

Category: P - printer enhancements

Inp.:

AX = 0501h

Return: (see AX=0500h)

Note:	restores interrupt vectors without checking whether they have been

  hooked by later programs; should only be called if ELTSR reports

  that it is safe to unload

SeeAlso: AH=04h,AX=0500h,AX=0503h,INT 1A/AH=E5h

Index:	uninstall;Emulaser ELTSR

INT 17


INT 17 0502 - Emulaser ELTSR - SET ???

undocumented function

Category: P - printer enhancements

Inp.:

AX = 0502h

BL = Emulaser port (31h = LPT1, 32h = LPT2, 33h = LPT3)

CL = ???

DL = ???

Return: (see AX=0500h)

SeeAlso: AH=04h,AX=0500h,INT 1A/AH=E5h

INT 17


INT 17 0503 - Emulaser ELTSR - DEACTIVATE???

undocumented function

Category: P - printer enhancements

Inp.:

AX = 0503h

Return: (see AX=0500h)

SeeAlso: AH=04h,AX=0500h,AX=0501h,INT 1A/AH=E5h

INT 17


INT 17 06-- - Emulaser ELTSR - ???

undocumented function

Category: P - printer enhancements

Inp.:

AH = 06h

???

Return: ???

SeeAlso: AH=05h,INT 1A/AH=E5h

INT 17


INT 17 0600 - DOSISODE to WATTCP TSR Interface - "listen"

Category: N - network

Inp.:

AX = 0600h

Note:	this function just returns

SeeAlso: AX=0300h"DOSISODE",AX=0700h"DOSISODE",AX=0C00h"DOSISODE"

SeeAlso: AX=0E00h"DOSISODE"

INT 17


INT 17 07-- - Emulaser ELTSR - OPEN CAPTURE FILE

undocumented function

Category: P - printer enhancements

Inp.:

AH = 07h

ES:DX -> ASCIZ filename to be opened

Return: ???

Note:	new output will be appended to the specified file

SeeAlso: AH=08h,INT 1A/AH=E5h

INT 17


INT 17 0700 - DOSISODE to WATTCP TSR Interface - "accept"

Category: N - network

Inp.:

AX = 0700h

Note:	this function just returns

SeeAlso: AX=0600h"DOSISODE",AX=0800h"DOSISODE",AX=0C00h"DOSISODE"

INT 17


INT 17 08-- - Emulaser ELTSR - CLOSE CAPTURE FILE

undocumented function

Category: P - printer enhancements

Inp.:

AH = 08h

???

Return: ???

Desc:	close the file previously opened by function 07h

SeeAlso: AH=07h,INT 1A/AH=E5h

INT 17


INT 17 0800 - DOSISODE to WATTCP TSR Interface - "recvfrom"

Category: N - network

Inp.:

AX = 0800h

SeeAlso: AX=0500h"DOSISODE",AX=0900h"DOSISODE",AX=0A00h"DOSISODE"

INT 17


INT 17 09-- - Emulaser ELTSR - PRINT CAPTURE FILE???

undocumented function

Category: P - printer enhancements

Inp.:

AH = 09h

BX = ???

CX = ???

DX = printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

Return: AX = status

    00h successful

    FFh failed

Program: ELTSR is the resident portion of the Emulaser PostScript emulator by

  Vertisoft Systems, Inc.

Note:	this function calls through to INT 1A/AX=E401h, and thus requires

  that either ELSPL or Disk Spool II be installed

SeeAlso: AH=0Ah,INT 1A/AX=E401h,INT 1A/AH=E5h

INT 17


INT 17 0900 - DOSISODE to WATTCP TSR Interface - "sendto"

Category: N - network

Inp.:

AX = 0900h

SeeAlso: AX=0700h"DOSISODE",AX=0800h"DOSISODE",AX=0A00h"DOSISODE"

INT 17


INT 17 0A-- - Emulaser ELTSR - SET ??? FILENAME

undocumented function

Category: P - printer enhancements

Inp.:

AH = 0Ah

ES:BX -> ??? buffer

CX = length of ??? buffer

Return: ???

Note:	copies the specified name into the buffer passed to ELSPL as the

  filename by AH=09h

SeeAlso: AH=09h,INT 1A/AH=E5h

INT 17


INT 17 0A00 - DOSISODE to WATTCP TSR Interface - "select"

Category: N - network

Inp.:

AX = 0A00h

SeeAlso: AX=0800h"DOSISODE",AX=0B00h"DOSISODE",AX=0E00h"DOSISODE"

INT 17


INT 17 0B-- - Emulaser ELTSR - GET ???

undocumented function

Category: P - printer enhancements

Inp.:

AH = 0Bh

Return: AX:BX -> ???

SeeAlso: AH=0Ah,INT 1A/AH=E5h

INT 17


INT 17 0B00 - DOSISODE to WATTCP TSR Interface - "ioctl"

Category: N - network

Inp.:

AX = 0B00h

DX = local identifier of socket (0 - 31)

Note:	this function sets the socket into non_block mode

SeeAlso: AX=0A00h"DOSISODE",AX=0C00h"DOSISODE",AX=0E00h"DOSISODE"

INT 17


INT 17 0C-- - Emulaser ELTSR - SET ??? FLAG

undocumented function

Category: P - printer enhancements

Inp.:

AH = 0Ch

???

Return: ???

SeeAlso: AH=0Bh,INT 1A/AH=E5h

INT 17


INT 17 0C00 - DOSISODE to WATTCP TSR Interface - "close"

Category: N - network

Inp.:

AX = 0C00h

SeeAlso: AX=0300h"DOSISODE",AX=0500h"DOSISODE",AX=0D00h"DOSISODE"

INT 17


INT 17 0D-- - Emulaser ELTSR - GET TRUE ScrlLk STATE

undocumented function

Category: P - printer enhancements

Inp.:

AH = 0Dh

Return: AX = state (0000h off, 0010h on)

Desc:	determine the actual state of ScrlLk even when Emulaser is controlling

  the ScrlLk light as its activity indicator

SeeAlso: AH=0Ch,INT 16/AH=02h,INT 1A/AH=E5h

INT 17


INT 17 0D00 - DOSISODE to WATTCP TSR Interface - "shutdown" - SHUTDOWN INTERFACE

Category: N - network

Inp.:

AX = 0D00h

Note:	this function is used to shutdown the interface

SeeAlso: AX=0C00h"DOSISODE",AX=0E00h"DOSISODE"

INT 17


INT 17 0E-- - Emulaser ELTSR - BACKGROUND PROCESSING

undocumented function

Category: P - printer enhancements

Inp.:

AH = 0Eh

Program: ELTSR is the resident portion of the Emulaser PostScript emulator by

  Vertisoft Systems, Inc.

Note:	this function is called by ELTSR on every INT 08 to allow data to be

  processed in the background, but may also be called by applications

  to give Emulaser additional CPU time

SeeAlso: AH=0Dh,INT 1A/AH=E5h

INT 17


INT 17 0E00 - DOSISODE to WATTCP TSR Interface - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 0E00h

Return: CX = 1234h if installed

Program: DOSISODE is the ISO developers environment which has been ported to

  DOS and will run with the Waterloo TCP turned into a resident TSR.

  Currently it allows a maximum of 6 open sockets.

Note:	this function is used to check if the interface is loaded

SeeAlso: AX=0300h"DOSISODE",AX=0A00h"DOSISODE"

INT 17


INT 17 2000 - PC Paint Plus 2.0 - PRINTER DRIVER - INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

AX = 2000h

BL = printer number???

Return:	AX = status (see #0492)

BX = driver version number (BH=major,BL=minor)

CH = ??? (00h)

CL = ???

DX = ??? (0100h)

Note:	also enables the remaining printer driver functions (2001h-2007h)

SeeAlso: AX=2001h,AX=2002h,AX=2003h,AX=2004h,AX=2005h,AX=2006h,AX=2007h

INT 17


INT 17 2001 - PC Paint Plus 2.0 - PRINTER DRIVER - SET ??? FLAG

Category: P - printer enhancements

Inp.:

AX = 2001h

BL = printer number???

Return: AX = status (see #0492)

INT 17


INT 17 2002 - PC Paint Plus 2.0 - PRINTER DRIVER - GET INFORMATION

Category: P - printer enhancements

Inp.:

AX = 2002h

BL = printer number???

CL = desired information

    00h printer type

Return: ES:DI -> ASCIZ printer name

    01h paper size

DX = size index

Return: ES:DI -> ASCIZ paper size description

    02h ???

Return: BX = ???

    03h printer information???

DX = ???

ES:BX -> buffer for ??? (min 134 bytes)

Return: AX = status (see #0492)

SeeAlso: AX=2000h,AX=2004h

INT 17


INT 17 2003 - PC Paint Plus 2.0 - PRINTER DRIVER - ???

Category: P - printer enhancements

Inp.:

AX = 2003h

ES:BX -> ???

Return: AX = status (see #0492)

SeeAlso: AX=2000h,AX=2004h

INT 17


INT 17 2004 - PC Paint Plus 2.0 - PRINTER DRIVER - GET ???

Category: P - printer enhancements

Inp.:

AX = 2004h

BL = printer number???

Return: AX = status (see #0492)

ES:DI -> ???

SeeAlso: AX=2000h,AX=2003h

INT 17


INT 17 2005 - PC Paint Plus 2.0 - PRINTER DRIVER - ADVANCE PRINTER TO NEXT PAGE

Category: P - printer enhancements

Inp.:

AX = 2005h

BL = printer number???

Return: AX = status (see #0492)

Note:	this function also clears the flag set by AX=2001h

SeeAlso: AX=2000h,AX=2001h,AX=2006h

INT 17


INT 17 2006 - PC Paint Plus 2.0 - PRINTER DRIVER - ADVANCE TO NEXT PAGE & SHUT DOWN

Category: P - printer enhancements

Inp.:

AX = 2006h

BL = printer number???

Return: AX = status (see #0492)

Note:	this function also clears the flag set by AX=2001h and disables

  functions other than AX=2000h

SeeAlso: AX=2000h,AX=2001h,AX=2005h

INT 17


INT 17 2007 - PC Paint Plus 2.0 - PRINTER DRIVER - UNIMPLEMENTED

Category: P - printer enhancements

Inp.:

AX = 2007h

Return: AX unchanged

SeeAlso: AX=2000h

INT 17


INT 17 2400 - Shamrock Software NET.24 v3.11+ - ENABLE/DISABLE API FUNCTIONS

Category: N - network

Inp.:

AX = 2400h

DL = new state

    00h disabled

    01h enabled

Return: DL = 24h if installed

DH = minor version number

CX = network address of this machine

AL = status (see #0493)

SeeAlso: AX=2403h,INT 16/AX=4500h

INT 17


INT 17 2401 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, NO HANDSHAKE

Category: N - network

Inp.:

AX = 2401h

BL = timeout in clock ticks

Return: AL = status (see #0493)

DX:BX -> receive buffer

SeeAlso: AX=2402h,AX=2404h,AX=2408h

INT 17


INT 17 2402 - Shamrock Software NET.24 v3.11+ - TRANSMIT BLOCK, NO HANDSHAKE

Category: N - network

Inp.:

AX = 2402h

transmit buffer filled (see AX=2403h)

Return: AL = status (see #0493)

SeeAlso: AX=2401h,AX=2403h,AX=2404h,AX=2409h

INT 17


INT 17 2403 - Shamrock Software NET.24 v3.11+ - GET STATUS AND TRANSMISSION BUFFER

Category: N - network

Inp.:

AX = 2403h

Return: AL = status (see #0493)

CX = number of characters in receive ring buffer

DX:BX -> transmit buffer

SeeAlso: AX=2400h,AX=2402h

INT 17


INT 17 2404 - Shamrock Software NET.24 v3.11+ - SEND ACK BLOCK

Category: N - network

Inp.:

AX = 2404h

BX = target address

Return: AL = status (see #0493)

SeeAlso: AX=2402h,AX=2405h

INT 17


INT 17 2405 - Shamrock Software NET.24 v3.11+ - SEND NAK BLOCK

Category: N - network

Inp.:

AX = 2405h

BX = target address

Return: AL = status (see #0493)

SeeAlso: AX=2402h,AX=2404h

INT 17


INT 17 2406 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED RECEIVE

Category: N - network

Inp.:

AX = 2406h

Return: AL = status (see #0493)

SeeAlso: AX=2407h,AX=240Ah

INT 17


INT 17 2407 - Shamrock Software NET.24 v3.11+ - RECEIVE CHARACTER FROM REMOTE

Category: N - network

Inp.:

AX = 2407h

Return: AL = status (see also #0493)

    06h end of data

DL = received character

SeeAlso: AX=2406h

INT 17


INT 17 2408 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, WITH HANDSHAKE

Category: N - network

Inp.:

AX = 2408h

Return: AL = status (see also #0493)

    06h end of data

CX = number of bytes in receive buffer

DX:SI -> receive buffer

SeeAlso: AX=2401h,AX=2405h,AX=2409h

INT 17


INT 17 2409 - Shamrock Software NET.24 v3.11+ - TRANSMIT COMMAND, WITH HANDSHAKE

Category: N - network

Inp.:

AX = 2409h

BX = target address

CX = number of data bytes

DL = command code to send

DS:SI -> data bytes for command

Return: AL = status (see also #0493)

    03h no response

    06h remote currently unable to perform command

SeeAlso: AX=2405h,AX=2408h

INT 17


INT 17 240A - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED TRANSMIT

Category: N - network

Inp.:

AX = 240Ah

Return: AL = status (see #0493)

SeeAlso: AX=2406h,AX=240Bh,AX=240Ch

INT 17


INT 17 240B - Shamrock Software NET.24 v3.11+ - TRANSMIT SINGLE CHARACTER TO REMOTE

Category: N - network

Inp.:

AX = 240Bh

DL = character to send

Return: AL = status (see also AX=2400h)

    03h transmission error

    06h write error

SeeAlso: AX=2407h,AX=240Ah,AX=240Ch

INT 17


INT 17 240C - Shamrock Software NET.24 v3.11+ - END CHARACTER-ORIENTED TRANSMIT

Category: N - network

Inp.:

AX = 240Ch

Return: AL = status (see also AX=2400h)

    03h transmission error

    06h remote breaks connection

SeeAlso: AX=240Ah,AX=240Bh

INT 17


INT 17 5000 - AX (Japanese AT) PRINTER - SET PRINTER COUNTRY CODE

Category: J - Japanese

Inp.:

AX = 5000h

BX = country code

    0001h USA (English), 0051h Japan

Return: AL = status

    00h successful

    01h bad country code

    02h other error

SeeAlso: AX=5001h,AH=51h,INT 10/AX=5000h,INT 16/AX=5000h

INT 17


INT 17 5001 - AX (Japanese AT) PRINTER - GET PRINTER COUNTRY CODE

Category: J - Japanese

Inp.:

AX = 5001h

Return: AL = status

    00h successful

BX = country code

    02h error

SeeAlso: AX=5000h,AH=51h,INT 10/AX=5001h,INT 16/AX=5001h

INT 17


INT 17 51-- - AX (Japanese AT) PRINTER - JIS to Shift-JIS CONVERSION

Category: J - Japanese

Inp.:

AH = 51h

DX = 2-byte JIS code

Return: DX = shift-JIS value or 0000h on error

Note:	one of AH=51h and AH=52h converts from JIS (Japanese Industry Standard)

  characters to Shift-JIS characters, and the other performs the

  opposite conversion

SeeAlso: AX=5000h,AH=52h

INT 17


INT 17 52-- - AX (Japanese AT) PRINTER - Shift-JIS to JIS CONVERSION

Category: J - Japanese

Inp.:

AH = 52h

DX = 2-byte shift-JIS code

Return: DX = JIS code or 0000h on error

Note:	one of AH=51h and AH=52h converts from JIS (Japanese Industry Standard)

  characters to Shift-JIS characters, and the other performs the

  opposite conversion

SeeAlso: AH=51h

INT 17


INT 17 60-- - FLASHUP.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AH = 60h

Return: AL = 60h

DX = CS of resident code

Notes:	FLASHUP.COM is part of Flash-Up Windows by The Software Bottling Co.

FLASHUP also hooks INT 10 and receives commands via INT 10/AH=09h,0Ah

  consisting of an 80h followed by the actual command

SeeAlso: INT 10/AH=09h,INT 10/AH=0Ah

INT 17


INT 17 61-- - SPEEDSCR.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AH = 61h

Return: AL = 61h

DX = CS of resident code

Note:	SPEEDSCR.COM is by The Software Bottling Co.

INT 17


INT 17 62-- - T2PS v1.0 - UNINSTALL

undocumented function

Category: P - printer enhancements

Inp.:

AH = 62h

Return: nothing

SeeAlso: AH=63h,AH=64h,INT 05/AX=554Eh

INT 17


INT 17 63-- - T2PS v1.0 - SET PARAMETERS

undocumented function

Category: P - printer enhancements

Inp.:

AH = 63h

ES:SI -> settings (see #0494)

Program: T2PS is a shareware ASCII-to-PostScript converter by A.N.D.

  Technologies

SeeAlso: AH=62h,AH=64h,INT 05/AX=4E57h

INT 17


INT 17 64-- - T2PS v1.0 - GET PARAMETERS

undocumented function

Category: P - printer enhancements

Inp.:

AH = 64h

ES:SI -> buffer for settings (see #0494)

Return: ES:SI buffer filled

SeeAlso: AH=62h,AH=63h,INT 05/AX=5053h

INT 17


INT 17 6F00 - HP Vectra - EXTENDED BIOS - "F17_INQUIRE" - INSTALLATION CHECK

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F00h

BX = 0000h

Return: BX = 4850h ("HP") if HP Extended BIOS printer extensions available

SeeAlso: AX=6F02h,INT 14/AX=6F00h,INT 10/AX=6F00h,INT 14/AX=6F00h

SeeAlso: INT 33/AX=6F00h,INT 6F/AH=00h"HP Vectra"

INT 17


INT 17 6F02 - HP Vectra - EXTENDED BIOS - "F17_PUT_BUFFER" - PRINT BUFFER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 6F02h

CX = size of buffer in bytes

DX = port number (0-3)

ES:DI -> buffer containing characters to be printed

Return: AH = printer status (see #0489)

CX = number of bytes successfully printed

---on error (AH bit 0 set)---

    ES:DI -> next byte to be sent

---if successful---

    ES:DI unchanged

SeeAlso: AH=00h,AX=6F00h,INT 14/AX=6F02h

INT 17


INT 17 81-- - Alloy NTNX, MW386 - CANCEL JOBS FOR CURRENT USER

Category: N - network

Inp.:

AH = 81h

AL = 00h (NTNX compatibility mode)

CL = number of jobs to cancel

Return: AL = status (see #0495)

Note:	this function cancels the last CL printouts for the current task

SeeAlso: AH=82h

INT 17


INT 17 82-- - Alloy NTNX, MW386 - CANCEL ALL JOBS FOR CURRENT USER

Category: N - network

Inp.:

AH = 82h

AL = 00h (NTNX compatibility mode)

Return: AL = status (see #0495)

SeeAlso: AH=81h

INT 17


INT 17 83-- - Alloy NTNX, MW386 - SET NUMBER OF COPIES

Category: N - network

Inp.:

AH = 83h

AL = mode

    00h NTNX compatibility

CL = number of copies (max 99, default 1)

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

CX = number of copies

Return: AL = status (see #0495)

Note:	in NTNX compatibility mode, this function only affects LPT1

INT 17


INT 17 84-- - Alloy NTNX, MW386 - GENERATE PRINT BREAK

Category: N - network

Inp.:

AH = 84h

AL = mode

    00h NTNX compatibility

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

Note:	closes spool file and tells spooler to queue the print job (LPT1 only

  under MW386 in NTNX compatibility mode)

INT 17


INT 17 84-- - AX (Japanese AT) PRINTER - OUTPUT CHARACTER WITHOUT CONVERSION

Category: J - Japanese

Inp.:

AH = 84h

AL = character

DX = printer number

Return: AH = printer status (see #0489)

SeeAlso: AH=00h,AH=85h

INT 17


INT 17 85-- - AX (Japanese AT) PRINTER - ENABLE/DISABLE CHARACTER CONVERSION

Category: J - Japanese

Inp.:

AH = 85h

AL = new state (00h enabled, 01h disabled)

SeeAlso: AH=84h"AX"

INT 17


INT 17 87-- - Alloy NTNX - SET INDOS POINTER

Category: N - network

Inp.:

AH = 87h

AL = 00h

CX:BX -> buffer for user-written printer drivers

Return: BX,CX destroyed

Note:	must be executed before the printer is enabled

SeeAlso: AH=8Ah

INT 17


INT 17 88-- - Alloy NTNX, MW386 - REMOVE PRINTER FROM SPOOLER

Category: N - network

Inp.:

AH = 88h

AL = mode

    00h NTNX compatibility

DX = NTNX printer number (see #0496)

    01h MW386

DX = MW386 printer number

Return: AH = status (see #0495)

Note:	removes specified printer from the spooler's list of printers

SeeAlso: AH=89h,AH=8Bh

INT 17


INT 17 89-- - Alloy NTNX, MW386 - ADD PRINTER TO SPOOLER

Category: N - network

Inp.:

AH = 89h

AL = mode

    00h NTNX compatibility

DX = NTNX printer number (see #0496)

    01h MW386

DX = MW386 printer number

Return: AL = status (see #0495)

Note:	the specified printer is added to the spooler's list of available

  printers

SeeAlso: AH=88h,AH=8Bh

INT 17


INT 17 8A-- - Alloy NTNX - ACTIVATE USER-WRITTEN PRINTER DRIVER

Category: N - network

Inp.:

AH = 8Ah

???

SeeAlso: AH=92h

INT 17


INT 17 8B-- - Alloy MW386 - GET PHYSICAL DEVICE NUMBER FROM NAME

Category: N - network

Inp.:

AH = 8Bh

DS:DX -> ASCIZ printer name

Return: AL = status (see also AH=81h)

    00h successful

DX = physical device number

SeeAlso: AH=89h,AH=8Ch,INT 14/AH=20h"Alloy"

INT 17


INT 17 8C-- - Alloy MW386 - GET DEVICE NAME FROM PHYSICAL DEVICE NUMBER

Category: N - network

Inp.:

AH = 8Ch

DX = physical device number

ES:DI -> 17-byte buffer for ASCIZ device name

Return: AL = status (see also AH=81h)

    00h successful

ES:DI buffer filled

SeeAlso: AH=88h,AH=8Bh

INT 17


INT 17 8D-- - Alloy NTNX,MW386 - RESET SPOOLER

Category: N - network

Inp.:

AH = 8Dh

AL = 00h

Return: AL = status (see #0495)

Notes:	clears all buffers and resets spooler to boot-up values

MW386 supports this function for compatibility only; it is a NOP

INT 17


INT 17 8E-- - Alloy NTNX - GET INT 28 ENTRY POINT

Category: N - network

Inp.:

AH = 8Eh

AL = 00h

Return: CX:BX -> INT 28 entry point

SeeAlso: AH=8Fh

INT 17


INT 17 8F-- - Alloy NTNX - GET DOS INTERCEPT ENTRY POINT

Category: N - network

Inp.:

AH = 8Fh

AL = 00h

Return: CX:BX -> DOS intercept routine

SeeAlso: AH=8Eh

INT 17


INT 17 90-- - Alloy NTNX, MW386 - SPOOL FILE BY NAME

Category: N - network

Inp.:

AH = 90h

AL = mode

    00h NTNX compatibility

DL = printer code (FFh=current) (NTNX, MW386 v1.x only)

DH = number of copies (FFh=current) (NTNX, MW386 v1.x only)

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

CX:SI -> ASCIZ pathname

Return: AL = status (see #0495)

Note:	in mode 00h, the file is always sent to logical LPT1

SeeAlso: AH=A0h

INT 17


INT 17 91-- - Alloy NTNX, MW386 - GET USER NUMBER AND CURRENT PRINTER

Category: N - network

Inp.:

AH = 91h

AL = mode

    00h NTNX compatibility

Return: CX = user number (00h = host)

DX = currently selected printer number (00h-08h)

    01h MW386

Return: CX = user number

DX = physical dev number of currently selected printer

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

Return: CX = user number

DX = physical device number

Return: AL = status (see #0495)

SeeAlso: AH=8Ch

INT 17


INT 17 92-- - Alloy NTNX - CHECK PRINTER DRIVER

Category: N - network

Inp.:

AH = 92h

AL = 00h

CL = 00h

Return: CL = driver state

    01h initialized

    80h not initialized

AX = status (see #0495)

SeeAlso: AH=8Ah

INT 17


INT 17 94-- - Alloy NTNX, MW386 - SELECT PRINTER

Category: N - network

Inp.:

AH = 94h

AL = mode

    00h NTNX compatibility

DX = NTNX printer number (see #0496)

    01h MW386

DX = MW386 printer number

    02h MW386 v2+

BX = logical printer number

DX = MW386 printer number

Return: AL = status (see #0495)

Note:	modes 00h and 01h affect only logical LPT1

SeeAlso: AH=8Bh,AH=95h

INT 17


INT 17 95-- - Alloy NTNX, MW386 - GET CURRENT PRINTER

Category: N - network

Inp.:

AH = 95h

AL = mode

    00h NTNX compatibility

Return: DX = NTNX printer number (see #0496)

    (FFFFh if current printer not compatible with NTNX)

    01h MW386

Return: DX = MW386 printer number

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

Return: DX = MW386 printer number (FFFFh = none)

Return: AL = status (see #0495)

Note:	modes 00h and 01h return the printer number of logical LPT1 only

SeeAlso: AH=94h

INT 17


INT 17 96-- - Alloy NTNX - SET SERIAL PORT PARAMETERS

Category: N - network

Inp.:

AH = 96h

AL = 00h

Note:	documentation states that this is a NOP, doing only XOR AX,AX before

  returning

SeeAlso: INT 14/AH=24h

INT 17


INT 17 97-- - Alloy NTNX, MW386 - SET DATA DRIVEN PRINT BREAK

Category: N - network

Inp.:

AH = 97h

AL = mode

    00h NTNX compatibility

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

CH,CL,DH = three character break sequence

DL = subfunction

    00h set break string

    else reset break

Return: AL = status (see #0495)

Notes:	mode 00h affects only logical LPT1

when the break string is encountered, the spool file will be closed and

  queued for printing automatically

the break string is not permanently saved, and will be reset each time

  MW386 or the user is rebooted

SeeAlso: AH=9Bh

INT 17


INT 17 98-- - Alloy NTNX,MW386 - RESTART PRINTER

Category: N - network

Inp.:

AH = 98h

AL = 00h

DL = printer number (FFh=current)

Return: AL = status

    00h successful

    01h incorrect printer

    02h task not found

Note:	MW386 supports this function for compatibility only; it is a NOP

INT 17


INT 17 99-- - Alloy NTNX, MW386 - GET/SET PRINTER MODE

Category: N - network

Inp.:

AH = 99h

AL = mode

    00h NTNX compatibility

DL = NTNX printer number (see #0496)

(FFh = task's current logical LPT1)

DH = mode (see #0497)

    01h MW386

DX = MW386 printer number

CL = mode (as for DH above)

Return: AL = status (see #0495)

DH = mode (bits 1 and 2 set as above)

DL = printer owner's user number if not spooled

INT 17


INT 17 9A-- - Alloy NTNX,MW386 - SET TAB EXPANSION

Category: N - network

Inp.:

AH = 9Ah

AL = mode

    00h NTNX compatibility

DX = NTNX printer number (see #0496)

(FFFFh = current logical LPT1)

    01h MW386

DX = MW386 printer number

CL = tab length (00h = no expansion, 01h-63h = spaces per tab)

Return: AL = status (see #0495)

Note:	beginning with MW386 v2.0, tab expansion is set on a per-printer basis

  rather than a per-user basis; NTNX and MW386 v1.x ignore DX

SeeAlso: AH=A4h

INT 17


INT 17 9B-- - Alloy NTNX,MW386 - SET PRINT BREAK TIMEOUT

Category: N - network

Inp.:

AH = 9Bh

AL = mode

    00h NTNX compatibility

CX = timeout value in clock ticks (1/18 sec) (00h = never)

    01h MW386

CX = timeout value in seconds (00h = never)

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

CX = timeout value in seconds (00h = never)

Return: AL = status (see #0495)

Notes:	modes 00h and 01h affect only the current logical LPT1

if no data is sent to a printer for the specified amount of time, the

  spool file will be closed and queued for printing automatically

SeeAlso: AH=97h

INT 17


INT 17 A0-- - Alloy MW386 - SPOOL COPY OF FILE

Category: N - network

Inp.:

AH = A0h

AL = mode

    00h NTNX compatibility

DX = ??? (NTNX, MW386 v1.x only)

    02h MW386 v2+

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

CX:SI -> ASCIZ pathname

Return: AL = status (see #0495)

Notes:	makes a copy of the specified file in the spooler's directory, allowing

  the original file to be modified or deleted while the copy is printed

in mode 00h, the file is printed on logical LPT1

SeeAlso: AH=90h

INT 17


INT 17 A4-- - Alloy MW386 - ENABLE/DISABLE FORM FEED

Category: N - network

Inp.:

AH = A4h

AL = new state

    00h form feed after end of print job disabled

    01h form feed enabled

Return: AL = status (see #0495)

Note:	only affects the current logical LPT1

SeeAlso: AH=9Ah,AH=A6h,INT 7F/AH=05h"NTNX (Host)"

INT 17


INT 17 A6-- - Alloy MW386 - ENABLE/DISABLE BANNER PAGE

Category: N - network

Inp.:

AH = A6h

AL = new state

    00h banner page before print job disabled

    01h banner page enabled

Return: AL = status (see #0495)

Note:	only affects the current logical LPT1

SeeAlso: AH=A4h

INT 17


INT 17 A7-- - Alloy MW386 v2+ - GET/SET SPOOL FLAGS

Category: N - network

Inp.:

AH = A7h

AL = spool flags (see #0498)

BX = logical device number

    00h-03h = LPT1-LPT4

    04h-07h = COM1-COM4

Return: AL = status (see #0495)

Note:	the documentation does not state which register contains the result of

  a GET

SeeAlso: AH=A4h,AH=A6h

INT 17


INT 17 A8-- - Alloy MW386 - DEFINE TEMPORARY FILENAME

Category: N - network

Inp.:

AH = A8h

CX:SI -> ASCIZ filename without extension (max 8 chars)

Return: AL = status (see #0495)

Note:	allows application to specify banner page filename for spool files

  collected from the application's printer output

SeeAlso: AH=A9h

INT 17


INT 17 A9-- - Alloy MW386 - CHANGE TEMPORARY SPOOL DRIVE

Category: N - network

Inp.:

AH = A9h

AL = new spool drive (2=C:,3=D:,etc)

Return: AL = status (see #0495)

Note:	does not remove previous spooling directory since jobs may be pending

SeeAlso: AH=A8h

INT 17


INT 17 AA-- - Alloy MW386 v2+ - GET REAL-TIME PRINTER STATUS

Category: N - network

Inp.:

AH = AAh

AL = mode

    00h NTNX

DX = NTNX printer number (see #0496)

    01h MW386

DX = MW386 printer number

Return: AH = instantaneous printer status

    00h printer ready

    01h not ready

    12h off line

    13h out of paper

    14h general device failure

    15h device timeout

    16h bad device number

INT 17


INT 17 AF-- - Alloy MW386 - CHECK SPOOLER

Category: N - network

Inp.:

AH = AFh

Return: AX = 55AAh if spooler available

INT 17


INT 17 C0-- - PC Magazine PCSpool - GET CONTROL BLOCK ADDRESS

Category: c - caches/spoolers

Inp.:

AH = C0h

DX = printer port (0-3)

Return: ES:BX -> control block (see #0499)

SeeAlso: AH=C1h

INT 17


INT 17 C1-- - PC Magazine PCSpool - BUILD PAUSE CONTROL RECORD

Category: c - caches/spoolers

Inp.:

AH = C1h

DX = printer port (0-3)

DS:SI -> ASCIZ string to save for display

Note:	flushes pending writes

SeeAlso: AH=C0h,AH=C2h

INT 17


INT 17 C2-- - PC Magazine PCSpool - FLUSH PENDING WRITES

Category: c - caches/spoolers

Inp.:

AH = C2h

DX = printer port (0-3)

SeeAlso: AH=C3h

INT 17


INT 17 C3-- - PC Magazine PCSpool - CANCEL PRINTER QUEUE (FLUSH ALL QUEUED OUTPUT)

Category: c - caches/spoolers

Inp.:

AH = C3h

DX = printer port (0-3)

SeeAlso: AH=C2h,AH=C7h

INT 17


INT 17 C4-- - PC Magazine PCSpool - QUERY SPOOLER ACTIVE

Category: c - caches/spoolers

Inp.:

AH = C4h

Return: DI = B0BFh

SI = segment

INT 17


INT 17 C5-- - PC Magazine PCSpool - JOB SKIP PRINTER QUEUE

Category: c - caches/spoolers

Inp.:

AH = C5h

DX = printer port (0-3)

Note:	cancels up to the pause record

INT 17


INT 17 C6-- - PC Magazine PCSpool - CHECK PRINTER QUEUE STATUS

Category: c - caches/spoolers

Inp.:

AH = C6h

DX = printer port (0-3)

Return: AX = queue status

   0000h printer not active or at pause

   0001h printer busy

INT 17


INT 17 C7-- - PC Magazine PCSpool - CLOSE QUEUE

Category: c - caches/spoolers

Inp.:

AH = C7h

DX = printer port (0-3)

SeeAlso: AH=C3h

INT 17


INT 17 CD00 - INSET - EXECUTE COMMAND STRING

Category: P - printer enhancements

Inp.:

AX = CD00h

DS:DX -> ASCIZ command string (max 80 bytes)

Return: CX = 07C2h (1986d)

Note:	user interface menus pop up after last command, unless that command

exits INSET

INT 17


INT 17 CD01 - INSET - GET IMAGE SIZE

Category: P - printer enhancements

Inp.:

AX = CD01h

DS:DX -> ASCIZ name of image file

Return: AX = height in 1/720th inch

BX = width in 1/720th inch

CX = 07C2h (1986d)

INT 17


INT 17 CD02 - INSET - INITIALIZE

Category: P - printer enhancements

Inp.:

AX = CD02h

Return: CX = 07C2h (1986d)

Note:	all open files are closed and the printer is reset

SeeAlso: AX=CD04h

INT 17


INT 17 CD03 - INSET - EXECUTE INSET MENU WITHIN OVERRIDE MODE

Category: P - printer enhancements

Inp.:

AX = CD03h

Return: CX = 07C2h (1986d)

INT 17


INT 17 CD04 - INSET - INITIALIZE LINKED MODE

Category: P - printer enhancements

Inp.:

AX = CD04h

ES:SI -> FAR routine for linked mode (see #0500)

Return: CX = 07C2h

SeeAlso: AX=CD02h,AX=CD08h

INT 17


INT 17 CD05 - INSET - START MERGING IMAGE INTO TEXT

Category: P - printer enhancements

Inp.:

AX = CD05h

DS:DX -> ASCIZ name of PIX file

CX = left margin of text in 1/720th inch

Return: AH = printer type

    00h page-oriented (multiple images may be placed side-by-side)

    01h line-oriented (use AX=CD06h for vertical paper movement)

CX = 07C2h (1986d)

SeeAlso: AX=CD07h

INT 17


INT 17 CD06 - INSET - GRAPHICS LINE FEED

Category: P - printer enhancements

Inp.:

AX = CD06h

Return: AH = completion status

    00h image complete

    01h image incomplete

CX = 07C2h (1986d)

SeeAlso: AX=CD09h

INT 17


INT 17 CD07 - INSET - FLUSH GRAPHICS FROM MERGE BUFFER

Category: P - printer enhancements

Inp.:

AX = CD07h

Return: CX = 07C2h

SeeAlso: AX=CD05h

INT 17


INT 17 CD08 - INSET - CANCEL LINK MODE

Category: P - printer enhancements

Inp.:

AX = CD08h

Return: CX = 07C2h

SeeAlso: AX=CD04h

INT 17


INT 17 CD09 - INSET - ALTER TEXT LINE SPACING

Category: P - printer enhancements

Inp.:

AX = CD09h

CX = line spacing in 1/720th inch

Return: CX = 07C2h

Note:	not yet implemented, line spacing is currently fixed at 1/6 inch

SeeAlso: AX=CD06h

INT 17


INT 17 CD0A - INSET - GET SETUP

Category: P - printer enhancements

Inp.:

AX = CD0Ah

DS:DX -> buffer for IN.SET data

Return: CX = 07C2h

INT 17


INT 17 CD0B - INSET - START GETTING SCALED IMAGE

Category: P - printer enhancements

Inp.:

AX = CD0Bh

DS:SI -> ASCIZ pathname of .PIX file

BX = number of bitplanes

CX = number of rows in output bitmap

DX = number of columns in output bitmap

Return: AX = status

    0000h OK

    FFFFh error

Note:	image is returned in strips by repeated calls to AX=CD0Ch

INT 17


INT 17 CD0C - INSET - GET NEXT IMAGE STRIP

Category: P - printer enhancements

Inp.:

AX = CD0Ch

Return: AX = status

    0000h OK but not complete

    0001h OK and image complete

    FFFFh error

DS:SI -> buffer (max 4K) for bit map strip

CX = start row

DX = number of rows

BX = offset in bytes between bit planes

Note:	buffer may be overwritten by subsequent calls

SeeAlso: AX=CD0Bh

INT 17


INT 17 E0-- - EPP BIOS - INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

AH = E0h

Return: ??? (AH <> E0h if installed ???)

SeeAlso: AX=0200h"EPP",AH=E1h,AH=E2h

INT 17


INT 17 E1-- - EPP BIOS - DISABLE EPP

Category: P - printer enhancements

Inp.:

AH = E1h

???

Return: ???

SeeAlso: AX=0200h"EPP",AH=E0h,AH=E2h

INT 17


INT 17 E2-- - EPP BIOS - ENABLE EPP

Category: P - printer enhancements

Inp.:

AH = E2h

???

Return: ???

SeeAlso: AX=0200h"EPP",AH=E0h,AH=E1h

INT 17


INT 17 F0-- - NorthNet Jetstream API - INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

AH = F0h

DX = printer port (0-3)

Return: AX = 0001h Jetstream present

     else  non-Jetstream port

Note:	NorthNet Jetstream is a high-performance DMA-driven parallel card able

  to drive printers at up to 80000 characters per second

INT 17


INT 17 F1-- - NorthNet Jetstream API - PRINT DATA BUFFER

Category: P - printer enhancements

Inp.:

AH = F1h

CX = data buffer length

DX = printer port (0-3)

DS:SI -> data buffer

Return: AX = status

    0000h printer not ready (see also AH=02h)

    other printing started

SeeAlso: AH=00h,AH=F2h,AH=F3h,AH=F5h

INT 17


INT 17 F2-- - NorthNet Jetstream API - GET PRINT PROGRESS STATUS

Category: P - printer enhancements

Inp.:

AH = F2h

DX = printer port (0-3)

Return: AX = status

    0000h prior print request finished

    other number of characters left to print

SeeAlso: AH=02h,AH=F1h,AH=F3h

INT 17


INT 17 F3-- - NorthNet Jetstream API - ABORT PRINT OPERATION

Category: P - printer enhancements

Inp.:

AH = F3h

DX = printer port (0-3)

Return: AX = number of unprinted characters due to abort

SeeAlso: AH=F1h,AH=F4h

INT 17


INT 17 F4-- - NorthNet Jetstream API - SET COMPLETION (POST) ADDRESS

Category: P - printer enhancements

Inp.:

AH = F4h

DX = printer port (0-3)

DS:DS -> FAR post address (called with interrupts on)

SeeAlso: AH=F1h,AH=F3h

INT 17


INT 17 F5-- - NorthNet Jetstream API - PRINT DATA BUFFER FROM EXTENDED MEMORY

Category: P - printer enhancements

Inp.:

AH = F5h

CX = data buffer length

DX = printer port (0-3)

DS:SI -> data buffer (32-bit physical address)

Return: AX = status

    0000h printer not ready (see also AH=02h)

    other printing started

SeeAlso: AH=F1h

INT 17


INT 17 FF-- - PC-MOS/386 v5.01 - PRINT SPOOLER - CLOSE SPOOL FILE

undocumented function

Category: c - caches/spoolers

Inp.:

AH = FFh

BX = 0000h

CX = 0000h

DX = printer port number

Return: AH = printer status (see #0489 at AH=00h)

Program: PC-MOS/386 v5.01 is a multitasking, multiuser MS-DOS 5.0-compatible

  operating system by The Software Link, Inc.

Desc:	close the spool file immediately instead of waiting for the close time

  to elapse

SeeAlso: AH=01h,AH=03h"PC-MOS"

INT 17


INT 18 ---- - DISKLESS BOOT HOOK (START CASSETTE BASIC)

Category: B - BIOS

Inp.:

Desc:	called when there is no bootable disk available to the system

Notes:	only PCs produced by IBM contain BASIC in ROM, so the action is

  unpredictable on compatibles; this interrupt often reboots the

  system, and often has no effect at all

network cards with their own BIOS can hook this interrupt to allow

  a diskless boot off the network (even when a hard disk is present

  if none of the partitions is marked as the boot partition)

SeeAlso: INT 2F/AX=4A06h,INT 86"NetBIOS"

INT 18


INT 18 00-- - NEC PC-9800 series - KEYBOARD - GET KEYSTROKE

Category: J - Japanese

Inp.:

AH = 00h

Return: AX = keystroke

SeeAlso: AH=01h,AH=02h,INT 16/AH=00h

INT 18


INT 18 01-- - NEC PC-9800 series - KEYBOARD - CHECK FOR KEYSTROKE

Category: J - Japanese

Inp.:

AH = 01h

Return: BH = status

    00h no keystrokes available

    01h keystroke available

AX = keystroke

SeeAlso: AH=00h,AH=02h,INT 16/AH=01h

INT 18


INT 18 02-- - NEC PC-9800 series - KEYBOARD - GET SHIFT STATUS

Category: J - Japanese

Inp.:

AH = 02h

Return: AL = shift flags

SeeAlso: AH=00h,AH=02h,AH=03h,AH=04h,INT 16/AH=02h

INT 18


INT 18 03-- - NEC PC-9800 series - KEYBOARD - INITIALIZE

Category: J - Japanese

Inp.:

AH = 03h

???

Return: ???

SeeAlso: AH=00h,AH=04h

INT 18


INT 18 04-- - NEC PC-9800 series - KEYBOARD - KEY PRESSED

Category: J - Japanese

Inp.:

AH = 04h

???

Return: ???

Note:	details are not available at this time

SeeAlso: AH=00h,AH=02h,INT 16/AH=00h,INT 16/AH=01h,INT 16/AH=02h

INT 18


INT 18 ---- - NEC PC-9800 series - VIDEO

Category: J - Japanese

Inp.:

AH = function

    0Ah set video mode

    0Bh get video mode

    0Ch start text screen display

    0Dh end text screen display

    0Eh set single display area

    0Fh set multiple display area

    10h set cursor shape

    11h display cursor

    12h terminate cursor

    13h set cursor position

    14h read font patter

    16h initialize text video RAM

    1Ah define user character

???

Return: ???

Notes:	details are not available at this time

text video RAM is located at segments A000h (characters) and A200h

  (attributes)

INT 18


INT 18 5350 - SPHINX C-- - WB.COM - API

Category: - - (none)

Inp.:

AX = 5350h ('SP')

BX = 4849h ('HI')

CX = 4E58h ('NX')

DH = function

    01h set ???

DL = ???

    02h get ???

Return: DL = ???

    03h get ???

Return: ES:DI -> ??? data buffer

    06h ???

Return: AX = 7370h ('sp') if installed

BX = 6869h ('hi') if installed

CX = 6E78h ('nx') if installed

Program: SPHINX C-- is a shareware compiler by Peter Cellik for a language

  which is a cross between C and assembler; WB.COM is the driver which

  launches the WorkBench

INT 18


INT 18 6900 - Gravis Ultra Sound YEA_GUS.EXE - GET STATUS

Category: s - sound/speech

Inp.:

AX = 6900h

Return: AX = amount of DRAM on card or 0000h if GUS not available

Program: YEA_GUS is a driver for the Graphics Ultra Sound which hooks INT 18h

  and then shells out the the program requiring its services

SeeAlso: AX=6901h,AX=690Ah,AX=690Bh

INT 18


INT 18 6901 - Gravis Ultra Sound YEA_GUS.EXE - RESET

Category: s - sound/speech

Inp.:

AX = 6901h

BX = number of active voices (14-32)

Return: nothing

SeeAlso: AX=6900h

INT 18


INT 18 6902 - Gravis Ultra Sound YEA_GUS.EXE - SET VOLUME FOR SPECIFIC VOICE

Category: s - sound/speech

Inp.:

AX = 6902h

BX = voice number (00h-1Fh)

CX = linear volume (0000h-01FFh)

Return: nothing

SeeAlso: AX=6900h,AX=6903h,AX=6904h,AX=6909h,AX=690Ah

INT 18


INT 18 6903 - Gravis Ultra Sound YEA_GUS.EXE - SET FREQUENCY FOR VOICE

Category: s - sound/speech

Inp.:

AX = 6903h

BX = voice number (00h-1Fh)

CX = frequency in Hz (0-44100)

Return: nothing

SeeAlso: AX=6902h,AX=6904h

INT 18


INT 18 6904 - Gravis Ultra Sound YEA_GUS.EXE - SET LEFT/RIGHT BALANCE

Category: s - sound/speech

Inp.:

AX = 6904h

BX = voice number (00h-1Fh)

CX = balance (0 = left, 7 = even, 15 = right)

Return: nothing

SeeAlso: AX=6902h,AX=6903h

INT 18


INT 18 6905 - Gravis Ultra Sound YEA_GUS.EXE - PLAY MUSIC

Category: s - sound/speech

Inp.:

AX = 6905h

BL = voice number

BH = sample type (0 = 8-bit, 1 = 16-bit)

CL = looping type (0 = none, 1 = forward, 2 = back and forth)

CH:DI = 20-bit starting address for voice data

DL:SI = 20-bit address for loop start

DH:BP = 20-bit address for loop end

SeeAlso: AX=6903h,AX=6906h,AX=690Bh

INT 18


INT 18 6906 - Gravis Ultra Sound YEA_GUS.EXE - LOAD SOUND DATA

Category: s - sound/speech

Inp.:

AX = 6906h

BL = data format (1 = twos-complement, 0 = not)

BH = sample type (0 = 8-bit, 1 = 16-bit)

CX = number of bytes to send

ES:SI -> buffer containing data

DL:DI = 20-bit address of GUS DRAM at which to load sound data

SeeAlso: AX=6900h,AX=6905h,AX=690Ch

INT 18


INT 18 6907 - Gravis Ultra Sound YEA_GUS.EXE - STOP VOICE

Category: s - sound/speech

Inp.:

AX = 6907h

BX = voice number (00h-1Fh)

Return: nothing

SeeAlso: AX=6908h,AX=690Dh

INT 18


INT 18 6908 - Gravis Ultra Sound YEA_GUS.EXE - SET VOICE END

Category: s - sound/speech

Inp.:

AX = 6908h

BX = voice number (00h-1Fh)

CL:DX = 20-bit ending address

Return: nothing

SeeAlso: AX=690Bh

INT 18


INT 18 6909 - Gravis Ultra Sound YEA_GUS.EXE - RAMP VOLUME

Category: s - sound/speech

Inp.:

AX = 6909h

BL = voice number (00h-1Fh)

BH = looping type (0 = none, 1 = forward, 2 = back and forth)

CX = starting volume

DX = ending volume

DI:SI = time

Return: nothing

SeeAlso: AX=6902h,AX=690Ah

INT 18


INT 18 690A - Gravis Ultra Sound YEA_GUS.EXE - GET VOLUME

Category: s - sound/speech

Inp.:

AX = 690Ah

BX = voice number (00h-1Fh)

Return: AX = current non-linear volume for voice

SeeAlso: AX=6902h,AX=6909h

INT 18


INT 18 690B - Gravis Ultra Sound YEA_GUS.EXE - GET POSITION

Category: s - sound/speech

Inp.:

AX = 690Bh

BX = voice number

Return: BX:AX = 20-bit address at which voice is playing

SeeAlso: AX=6900h,AX=6905h,AX=6908h

INT 18


INT 18 690C - Gravis Ultra Sound YEA_GUS.EXE - SAVE SOUND DATA

Category: s - sound/speech

Inp.:

AX = 690Ch

BL = data format (1 = twos-complement, 0 = not)

BH = sample type (0 = 8-bit, 1 = 16-bit)

CX = number of bytes to get

ES:SI -> buffer for retrieved data

DL:DI = 20-bit address in GUS DRAM from which to read voice data

Return: nothing

SeeAlso: AX=6906h

INT 18


INT 18 690D - Gravis Ultra Sound YEA_GUS.EXE - RESTART VOICE

Category: s - sound/speech

Inp.:

AX = 690Dh

BX = voice

CX = sample type (0 = 8-bit, 1 = 16-bit)

DX = looping type (0 = none, 1 = forward, 2 = back and forth)

Return: CX = balance value

SeeAlso: AX=6907h,AX=6908h

INT 18


INT 18 8000 - Gravis Ultra Sound EURO_MOD.EXE - INITIALIZE

Category: s - sound/speech

Inp.:

AX = 8000h

Program: EURO_MOD is a .MOD file player for the Gravis Ultra Sound which hooks

  INT 18h and then shells out to the program requiring its services

SeeAlso: AX=8001h,AX=8004h

INT 18


INT 18 8001 - Gravis Ultra Sound EURO_MOD.EXE - LOAD .MOD FILE

Category: s - sound/speech

Inp.:

AX = 8001h

BX:CX -> ASCIZ filename

SeeAlso: AX=8000h,AX=8002h

INT 18


INT 18 8002 - Gravis Ultra Sound EURO_MOD.EXE - PLAY .MOD FILE

Category: s - sound/speech

Inp.:

AX = 8002h

SeeAlso: AX=8002h,AX=8003h

INT 18


INT 18 8003 - Gravis Ultra Sound EURO_MOD.EXE - STOP PLAYING

Category: s - sound/speech

Inp.:

AX = 8003h

INT 18


INT 18 8004 - Gravis Ultra Sound EURO_MOD.EXE - SHUTDOWN

Category: s - sound/speech

Inp.:

AX = 8004h

SeeAlso: AX=8000h,AX=8003h

INT 18


INT 19 ---- - SYSTEM - BOOTSTRAP LOADER

Category: B - BIOS

Inp.:

Desc:	This interrupt reboots the system without clearing memory or restoring

  interrupt vectors.  Because interrupt vectors are preserved, this

  interrupt usually causes a system hang if any TSRs have hooked

  vectors from 00h through 1Ch, particularly INT 08.

Notes:	Usually, the BIOS will try to read sector 1, head 0, track 0 from drive

  A: to 0000h:7C00h.  If this fails, and a hard disk is installed, the

  BIOS will read sector 1, head 0, track 0 of the first hard disk.

  This sector should contain a master bootstrap loader and a partition

  table (see #0502).  After loading the master boot sector at

  0000h:7C00h, the master bootstrap loader is given control.  It will

  scan the partition table for an active partition, and will then load

  the operating system's bootstrap loader (contained in the first

  sector of the active partition) and give it control.

true IBM PCs and most clones issue an INT 18 if neither floppy nor hard

  disk have a valid boot sector

to accomplish a warm boot equivalent to Ctrl-Alt-Del, store 1234h in

  0040h:0072h and jump to FFFFh:0000h.	For a cold boot equivalent to

  a reset, store 0000h at 0040h:0072h before jumping.

VDISK.SYS hooks this interrupt to allow applications to find out how

  much extended memory has been used by VDISKs (see #0501).  DOS 3.3+

  PRINT hooks INT 19 but does not set up a correct VDISK header block

  at the beginning of its INT 19 handler segment, thus causing some

  programs to overwrite extended memory which is already in use.

the default handler is at F000h:E6F2h for 100% compatible BIOSes

MS-DOS 3.2+ hangs on booting (even from floppy) if the hard disk

  contains extended partitions which point at each other in a loop,

  since it will never find the end of the linked list of extended

  partitions

under Windows Real and Enhanced modes, calling INT 19 will hang the

  system in the same was as under bare DOS; under Windows Standard

  mode, INT 19 will successfully perform a cold reboot as it appears

  to have been redirected to a MOV AL,0FEh/OUT 64h,AL sequence

SeeAlso: INT 14/AH=17h,INT 18,INT 5B"PC Cluster"

INT 19


INT 1A 00-- - TIME - GET SYSTEM TIME

Category: B - BIOS

Inp.:

AH = 00h

Return: CX:DX = number of clock ticks since midnight

AL = midnight flag, nonzero if midnight passed since time last read

Notes:	there are approximately 18.2 clock ticks per second, 1800B0h per 24 hrs

IBM and many clone BIOSes set the flag for AL rather than incrementing

  it, leading to loss of a day if two consecutive midnights pass

  without a request for the time (e.g. if the system is on but idle)

since the midnight flag is cleared, if an application calls this

  function after midnight before DOS does, DOS will not receive the

  midnight flag and will fail to advance the date

SeeAlso: AH=01h,AH=02h,INT 21/AH=2Ch,INT 62/AX=0099h,MEM 0040h:006Ch

INT 1A


INT 1A 01-- - TIME - SET SYSTEM TIME

Category: B - BIOS

Inp.:

AH = 01h

CX:DX = number of clock ticks since midnight

SeeAlso: AH=00h,AH=03h,INT 21/AH=2Dh

INT 1A


INT 1A 02-- - TIME - GET REAL-TIME CLOCK TIME (AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 02h

Return: CF clear if successful

    CH = hour (BCD)

    CL = minutes (BCD)

    DH = seconds (BCD)

    DL = daylight savings flag (00h standard time, 01h daylight time)

CF set on error (i.e. clock not running or in middle of update)

Note:	this function is also supported by the Sperry PC, which predates the

  IBM AT; the data is returned in binary rather than BCD on the Sperry,

  and DL is always 00h

SeeAlso: AH=00h,AH=03h,AH=04h,INT 21/AH=2Ch

INT 1A


INT 1A 03-- - TIME - SET REAL-TIME CLOCK TIME (AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 03h

CH = hour (BCD)

CL = minutes (BCD)

DH = seconds (BCD)

DL = daylight savings flag (00h standard time, 01h daylight time)

Note:	this function is also supported by the Sperry PC, which predates the

  IBM AT; the data is specified in binary rather than BCD on the

  Sperry, and the value of DL is ignored

SeeAlso: AH=01h,AH=03h,AH=05h,INT 21/AH=2Dh

INT 1A


INT 1A 04-- - TIME - GET REAL-TIME CLOCK DATE (AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 04h

Return: CF clear if successful

    CH = century (BCD)

    CL = year (BCD)

    DH = month (BCD)

    DL = day (BCD)

CF set on error

SeeAlso: AH=02h,AH=04h"Sperry",AH=05h,INT 21/AH=2Ah

INT 1A


INT 1A 04-- - Sperry PC - GET REAL-TIME CLOCK DATE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 04h

Return: CF clear if successful

    CL = year-1980

    DH = month (binary)

    DL = day (binary)

CF set on error

SeeAlso: AH=02h,AH=04h,AH=05h"Sperry",INT 21/AH=2Ah

INT 1A


INT 1A 05-- - TIME - SET REAL-TIME CLOCK DATE (AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 05h

CH = century (BCD)

CL = year (BCD)

DH = month (BCD)

DL = day (BCD)

SeeAlso: AH=04h,INT 21/AH=2Bh

INT 1A


INT 1A 04-- - Sperry PC - SET REAL-TIME CLOCK DATE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 04h

CL = year-1980

DH = month (binary)

DL = day (binary)

SeeAlso: AH=02h,AH=04h"Sperry",AH=05h,INT 21/AH=2Bh

INT 1A


INT 1A 06-- - TIME - SET ALARM (AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 06h

CH = hour (BCD)

CL = minutes (BCD)

DH = seconds (BCD)

Return: CF set on error (alarm already set or clock stopped for update)

CF clear if successful

Notes:	the alarm occurs every 24 hours until turned off, invoking INT 4A each

  time

the BIOS does not check for invalid values for the time, so the CMOS

  clock chip's "don't care" setting (any values between C0h and FFh)

  may be used for any or all three part.  For example, to create an

  alarm once a minute, every minute, call with CH=C0h, CL=C0h, and

  DH=00h.

SeeAlso: AH=07h,INT 4A

INT 1A


INT 1A 07-- - TIME - CANCEL ALARM (AT,XT286,PS)

Category: B - BIOS

Inp.:

AH = 07h

Return: alarm disabled

Note:	does not disable the real-time clock's IRQ

SeeAlso: AH=06h,INT 70

INT 1A


INT 1A 08-- - TIME - SET RTC ACTIVATED POWER ON MODE (CONVERTIBLE)

Category: B - BIOS

Inp.:

AH = 08h

CH = hours in BCD

CL = minutes in BCD

DH = seconds in BCD

SeeAlso: AH=09h

INT 1A


INT 1A 09-- - TIME - READ RTC ALARM TIME AND STATUS (CONV,PS30)

Category: B - BIOS

Inp.:

AH = 09h

Return: CH = hours in BCD

CL = minutes in BCD

DH = seconds in BCD

DL = alarm status

    00h alarm not enabled

    01h alarm enabled but will not power up system

    02h alarm will power up system

SeeAlso: AH=08h

INT 1A


INT 1A 0A-- - TIME - READ SYSTEM-TIMER DAY COUNTER (XT2,PS)

Category: B - BIOS

Inp.:

AH = 0Ah

Return: CF set on error

CF clear if successful

    CX = count of days since Jan 1,1980

SeeAlso: AH=04h,AH=0Bh

INT 1A


INT 1A 0B-- - TIME - SET SYSTEM-TIMER DAY COUNTER (XT2,PS)

Category: B - BIOS

Inp.:

AH = 0Bh

CX = count of days since Jan 1,1980

Return: CF set on error

CF clear if successful

SeeAlso: AH=05h,AH=0Ah

INT 1A


INT 1A 10-- - NEC PC-9800 series - PRINTER - INITIALIZE

Category: J - Japanese

Inp.:

AH = 10h

???

Return: ???

SeeAlso: AH=11h,AH=12h,INT 17/AH=01h

INT 1A


INT 1A 11-- - NEC PC-9800 series - PRINTER - OUTPUT CHARACTER

Category: J - Japanese

Inp.:

AH = 11h

???

Return: ???

SeeAlso: AH=10h,AH=12h,INT 17/AH=00h

INT 1A


INT 1A 12-- - NEC PC-9800 series - PRINTER - SENSE STATUS

Category: J - Japanese

Inp.:

AH = 12h

???

Return: ???

SeeAlso: AH=10h,AH=11h,INT 17/AH=02h

INT 1A


INT 1A 3601 - WORD PERFECT v5.0 Third Party Interface - INSTALLATION CHECK

Category: A - applications

Inp.:

AX = 3601h

Return: DS:SI = routine to monitor keyboard input, immediately preceded by the

ASCIZ string "WPCORP\0"

Notes:	WordPerfect 5.0 will call this interrupt at start up to determine if a

  third party product wants to interface with it.  The third party

  product must intercept this interrupt and return the address of a

  keyboard monitor routine.

Before checking for keyboard input, and after every key entered by the

  user, Word Perfect will call the routine whose address was provided

  in DS:SI with the following parameters:

Entry:	AX = key code or 0

BX = WordPerfect state flag

Exit:	AX = 0 or key code

BX = 0 or segment address of buffer with key codes

See the "WordPerfect 5.0 Developer's Toolkit" for further information.

SeeAlso: INT 16/AX=5500h

INT 1A


INT 1A 6108 - SNAP.EXE 3.2+ - "SNAP_SENDWITHREPLY" - SEND MSG AND GET REPLY

Category: N - network

Inp.:

AX = 6108h

STACK:	WORD	conversation ID (0000h-0009h)

DWORD	pointer to message buffer

WORD	length of message

DWORD	pointer to reply buffer

WORD	length of reply buffer

WORD	0000h (use default "Cparams" structure)

Return: AX = status (see #0505)

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

SeeAlso: AX=6205h

INT 1A


INT 1A 6205 - SNAP.EXE 3.2+ - "SNAP_SENDNOREPLY" - SEND MSG, DON'T AWAIT REPLY

Category: N - network

Inp.:

AX = 6205h

STACK:	WORD	conversation ID (0000h-0009h)

DWORD	pointer to message

WORD	length of message

WORD	0000h (use default "Cparms" structure)

Return: AX = status (see #0505)

STACK unchanged

SeeAlso: AX=6108h

INT 1A


INT 1A 6308 - SNAP.EXE 3.2+ - "SNAP_BEGINCONV" - BEGIN CONVERSATION

Category: N - network

Inp.:

AX = 6308h

STACK:	WORD	offset of ASCIZ "guardian"

WORD	offset of ASCIZ hostname

WORD	offset of ASCIZ server name

WORD	offset of ASCIZ userid

WORD	offset of ASCIZ password

WORD	offset of password length

WORD	offset of password type

WORD	offset of "Cparms" structure (see #0506)

Return: ???

STACK unchanged

Note:	all stacked offsets are within the SNAP data segment (use AX=6A01h

  to allocate a buffer)

SeeAlso: AX=6405h,AX=7202h

INT 1A


INT 1A 6405 - SNAP.EXE 3.2+ - "SNAP_ENDCONV" - END CONVERSATION

Category: N - network

Inp.:

AX = 6405h

STACK:	WORD	conversation ID (0000h-0009h)

DWORD	pointer to message buffer

WORD	length of message

WORD	0000h (use default "Cparms" structure)

Return: AX = status (see #0505)

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

SeeAlso: AX=6308h

INT 1A


INT 1A 6900 - SNAP.EXE 3.2+ - "SNAP_DATASEG" - GET RESIDENT DATA SEGMENT

Category: N - network

Inp.:

AX = 6900h

Return: AX = value used for DS by resident code

SeeAlso: AX=6A01h,AX=6F01h

INT 1A


INT 1A 6A01 - SNAP.EXE 3.2+ - "SNAP_ALLOC" - ALLOCATE BUFFER IN SNAP DATA SEGMENT

Category: N - network

Inp.:

AX = 6A01h

STACK:	WORD	number of bytes to allocate

Return: AX = offset of allocated buffer or 0000h if out of memory

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

SeeAlso: AX=6B01h

INT 1A


INT 1A 6B01 - SNAP.EXE 3.2+ - "SNAP_FREE" - DEALLOCATE BUFFER IN SNAP DATA SEGMENT

Category: N - network

Inp.:

AX = 6B01h

STACK:	WORD	offset within SNAP data segment of previously allocated

buffer

Return: STACK unchanged

Note:	this call is a NOP if the specified offset is 0000h

SeeAlso: AX=6A01h

INT 1A


INT 1A 6C04 - SNAP.EXE 3.2+ - "SNAP_COPYTO" - COPY DATA TO RESIDENT SNAP PACKAGE

Category: N - network

Inp.:

AX = 6C04h

STACK:	WORD	offset within SNAP data segment of dest (nonzero)

WORD	segment of source buffer

WORD	offset of source buffer

WORD	number of bytes to copy

Return: AX = offset of byte after last one copied to destination

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

SeeAlso: AX=6D04h

INT 1A


INT 1A 6D04 - SNAP.EXE 3.2+ - "SNAP_COPYFROM" - COPY DATA FROM RESIDENT SNAP PACKAGE

Category: N - network

Inp.:

AX = 6D04h

STACK:	WORD	offset within SNAP data segment of source buffer

WORD	segment of destination buffer

WORD	offset of destination buffer

WORD	number of bytes to copy

Return: AX = offset of byte after last one copied from source

buffer filled

STACK unchanged

SeeAlso: AX=6C04h

INT 1A


INT 1A 6E01 - SNAP.EXE 3.2+ - "SNAP_SETDEBUG" - SET ???

Category: N - network

Inp.:

AX = 6E01h

STACK:	WORD	new value for ???

Return: AX = old value of ???

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

INT 1A


INT 1A 6F01 - SNAP.EXE 3.2+ - "SNAP_CHKINSTALL" - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 6F01h

STACK: WORD 0000h

Return: AX = status

    0000h SNAP is resident

    other SNAP not present

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol, and is

  required by PCVENUS (a network shell).  The combination of SNAP and

  PCVENUS allows the use of the Andrew File System as one or more

  networked drives.

SeeAlso: AX=6900h,AX=7400h

INT 1A


INT 1A 7002 - SNAP.EXE 3.2+ - "SNAP_SETANCHOR"

Category: N - network

Inp.:

AX = 7002h

STACK:	WORD	anchor number (0000h-0009h)

WORD	new value for the anchor

Return: AX = status

    0000h successful

    FFFFh failed (top word on stack not in range 00h-09h)

STACK unchanged

SeeAlso: AX=7101h

INT 1A


INT 1A 7101 - SNAP.EXE 3.2+ - "SNAP_GETANCHOR"

Category: N - network

Inp.:

AX = 7101h

STACK:	WORD	anchor number (0000h-0009h)

Return: AX = anchor's value

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

SeeAlso: AX=7002h

INT 1A


INT 1A 7202 - SNAP.EXE 3.2+ - "SNAP_SETCONVPARMS" - SET CONVERSATION PARAMETERS

Category: N - network

Inp.:

AX = 7202h

STACK:	WORD	conversation ID (0000h-0009h)

WORD	offset within resident data segment of "Cparms"

  structure (see #0506)

Return: AX = status???

STACK unchanged

SeeAlso: AX=6308h

INT 1A


INT 1A 7302 - SNAP.EXE 3.2+ - "SNAP_CLIENTVERSION" - ???

Category: N - network

Inp.:

AX = 7302h

STACK:	WORD	conversation ID (0000h-0009h)

WORD	offset within resident data segment of ???

Return: AX = ???

???

STACK unchanged

SeeAlso: AX=7400h

INT 1A


INT 1A 7400 - SNAP.EXE 3.2+ - "SNAP_VERSION" - GET VERSION

Category: N - network

Inp.:

AX = 7400h

Return: AX = version (AH=major, AL=minor)

Note:	this call is only valid if SNAP is installed

SeeAlso: AX=7302h,INT 1A/AX=6F01h

INT 1A


INT 1A 75-- - SNAP.EXE 3.2+ - "SNAP_NOP" - ???

Category: N - network

Inp.:

AH = 75h

AL = ???

Return: AX = ??? (0000h)

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

INT 1A


INT 1A 76-- - SNAP.EXE 3.2+ - "SNAP_802_5" - ???

Category: N - network

Inp.:

AH = 76h

AL = ???

Return: AX = ???

INT 1A


INT 1A 77-- - SNAP.EXE 3.4 - ???

Category: N - network

Inp.:

AH = 77h

AL = ??? (at least 01h)

STACK:	WORD	???

???

Return: ???

STACK unchanged

INT 1A


INT 1A 7802 - SNAP.EXE 3.4 - ???

Category: N - network

Inp.:

AX = 7802h

STACK:	WORD	???

WORD	???

Return: ???

STACK unchanged

Program: SNAP.EXE is a TSR written by IBM and Carnegie Mellon University

  which implements the Simple Network Application Protocol

INT 1A


INT 1A 7F-- - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???

Category: s - sound/speech

Inp.:

AH = 7Fh

???

Return: ???

Note:	this function is not supported by the Tandy 1000SL/TL BIOS

SeeAlso: AH=80h,AH=83h,AH=85h

INT 1A


INT 1A 80-- - PCjr, Tandy 2500???, Tandy 1000SL/TL - SET UP SOUND MULTIPLEXOR

Category: s - sound/speech

Inp.:

AH = 80h

AL = 00h source is 8253 channel 2

     01h source is cassette input

     02h source is I/O channel "Audio IN"

     03h source is sound generator chip

Note:	although documented in the 1000TL Technical Reference, the 1000TL

  BIOS has just an IRET for this call

SeeAlso: AH=7Fh,AH=83h

INT 1A


INT 1A 80-- - PCMCIA Socket Services v1.00 - GET NUMBER OF ADAPTERS

Category: X - expansion bus BIOSes

Inp.:

AH = 80h

Return: CF clear if successful

    CX = 5353h ('SS') if Socket Services installed

AL = number of adapters present (0-16)

    AH destroyed

CF set on error

    AH = error code (see #0507)

SeeAlso: AH=83h"PCMCIA"

INT 1A


INT 1A 81-- - PCMCIA Socket Services v1.00 - REGISTER STATUS CHANGE CALLBACK

Category: X - expansion bus BIOSes

Inp.:

AH = 81h

DS:DX -> callback routine (see #0508) or 0000h:0000h to disable

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (see #0507)

Note:	the callback will be invoked on any socket changes whose notification

  has not been disabled with the status change enable mask; it may be

  invoked either while processing a hardware interrupt from the adapter

  or while processing the following Socket Services request

SeeAlso: AH=80h"PCMCIA",AH=82h"PCMCIA"

INT 1A


INT 1A 8100 - Tandy 2500, Tandy 1000L series - DIGITAL SOUND - INSTALLATION CHECK

Category: s - sound/speech

Inp.:

AX = 8100h

Return: AL > 80h if supported

AX = 00C4h if supported (1000SL/TL)

    CF set if sound chip is busy

    CF clear  if sound chip is free

Note:	the value of CF is not definitive; call this function until CF is

  clear on return, then call AH=84h"Tandy"

INT 1A


INT 1A 82-- - Tandy 2500???, Tandy 1000SL/TL - DIGITAL SOUND - RECORD SOUND

Category: s - sound/speech

Inp.:

AH = 82h

ES:BX -> buffer for sound samples

CX = length of buffer

DX = transfer rate (1-4095, 1 is fastest)

Return: AH = 00h

CF set if sound busy

CF clear if sound chip free

Note:	the value in DX should be 1/10 the corresponding value for

  INT 1A/AH=83h on the 1000TL, 1/11.5 on the 1000SL.  Call

  INT 1A/AX=8100h and INT 1A/AH=84h before invoking this function.

The BIOS issues an INT 15/AX=91FBh when the input is complete

DMA across a 64K boundary is masked by the BIOS

INT 1A


INT 1A 82-- - PCMCIA Socket Services v1.00 - REGISTER CARD TECHNOLOGY CALLBACK

Category: X - expansion bus BIOSes

Inp.:

AH = 82h

DS:DX -> callback routine (see #0512) or 0000h:0000h

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (see #0507)

Note:	the callback is invoked on a Write Multiple request with an unsupported

  card technology type

SeeAlso: AH=81h"PCMCIA",AH=94h

INT 1A


INT 1A 83-- - Tandy 2500, Tandy 1000L series - START PLAYING DIGITAL SOUND

Category: s - sound/speech

Inp.:

AH = 83h

AL = volume (0=silence, 7=highest)

CX = number of bytes to play

DX = time between sound samples (multiples of 273 nanoseconds)

    only bits 11-0 used

ES:BX -> sound data (array of 8-bit unsigned PCM samples)

Return: AH = 00h

CF set if sound is busy

CF clear if sound chip is free

Notes:	this call returns immediately while the sound plays in the

  background; the sound chip is clocked at 3.57 MHz, with the low 12

  bits of DX specifying the clock divisor

The BIOS appears to call INT 15/AX=91FBh when the sound device

  underflows to allow another INT 1A/AH=83h for seamless playing of

  long sounds.

SeeAlso: AH=84h"Tandy",INT 15/AH=91h

INT 1A


INT 1A 83-- - PCMCIA Socket Services v1.00 - GET SOCKET SERVICES VERSION NUMBER

Category: X - expansion bus BIOSes

Inp.:

AH = 83h

AL = adapter number

Return: CF clear if successful

    AX = Socket Services version (BCD)

    BX = implementation version (BCD)

    CX = 5353h ("SS")

    DS:SI -> ASCIZ implementor description

CF set on error

    AH = error code (01h) (see #0507)

Note:	the current version (from the Revision A.00 documentation) of Socket

  Services is 1.00 (AX=0100h)

SeeAlso: AH=80h"PCMCIA"

INT 1A


INT 1A 84-- - Tandy 2500, Tandy 1000L series - STOP PLAYING DIGITAL SOUND

Category: s - sound/speech

Inp.:

AH = 84h

Return: ???

Note:	the BIOS will call INT 15/AX=91FBh when the sound has stopped playing

SeeAlso: AH=83h"Tandy",AH=85h"Tandy"

INT 1A


INT 1A 84-- - PCMCIA Socket Services v1.00 - INQUIRE ADAPTER

Category: X - expansion bus BIOSes

Inp.:

AH = 84h

AL = adapter number

Return: CF clear if successful

    AH destroyed

    BH = number of windows

    BL = number of sockets (1-16)

    CX = number of EDCs

    DH = capabilities (see #0521)

    DL = status change interrupt used (only if DH bit 3 set)(see #0522)

CF set on error

    AH = error code (01h) (see #0507)

SeeAlso: AH=80h"PCMCIA",AH=85h"PCMCIA",AH=87h

INT 1A


INT 1A 85-- - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???

Category: s - sound/speech

Inp.:

AH = 85h

???

Return: ???

Note:	this function is not supported by the Tandy 1000SL/TL BIOS

SeeAlso: AH=7Fh,AH=83h"Tandy"

INT 1A


INT 1A 85-- - PCMCIA Socket Services v1.00 - GET ADAPTER

Category: X - expansion bus BIOSes

Inp.:

AH = 85h

AL = adapter number

Return: CF clear if successful

    AH destroyed

    DH = adapter attributes (see #0523)

CF set on error

    AH = error code (01h) (see #0507)

SeeAlso: AH=84h"PCMCIA",AH=86h

INT 1A


INT 1A 86-- - PCMCIA Socket Services v1.00 - SET ADAPTER

Category: X - expansion bus BIOSes

Inp.:

AH = 86h

AL = adapter number

DH = new adapter attributes (see #0523)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h) (see #0507)

SeeAlso: AH=84h"PCMCIA",AH=85h"PCMCIA"

INT 1A


INT 1A 87-- - PCMCIA Socket Services v1.00 - INQUIRE WINDOW

Category: X - expansion bus BIOSes

Inp.:

AH = 87h

AL = adapter number

BH = window number

Return: CF clear if successful

    AH destroyed

    BL = capabilities (see #0524)

    CX = bitmap of assignable sockets

    DH = EISA A15-A12 address lines (in bits 7-4, bits 3-0 = 0)

    DL = supported access speeds (see #0525)

    DS:SI -> Memory Window Characteristics table (see #0526)

    DS:DI -> I/O Window Characteristics table (see #0527)

CF set on error

    AH = error code (01h,11h) (see #0507)

SeeAlso: AH=84h"PCMCIA",AH=88h,AH=89h,AH=8Ch

INT 1A


INT 1A 88-- - PCMCIA Socket Services v1.00 - GET WINDOW

Category: X - expansion bus BIOSes

Inp.:

AH = 88h

AL = adapter number

BH = window number

Return: CF clear if successful

    AH destroyed

    BL = socket number (0-16) (0 = not assigned)

    CX = window size (bytes for I/O window, 4K units for memory window)

    DH = window attributes (see #0529)

    DL = access speed (only one bit set) (see #0525)

    SI = window base address (bytes if I/O, 4K units if memory)

    DI = card offset address (memory only, 4K units)

CF set on error

    AH = error code (01h,11h) (see #0507)

SeeAlso: AH=87h,AH=89h,AH=8Ah

INT 1A


INT 1A 89-- - PCMCIA Socket Services v1.00 - SET WINDOW

Category: X - expansion bus BIOSes

Inp.:

AH = 89h

AL = adapter number

BH = window number

BL = socket number

CX = window size (bytes if I/O window, 4K units if memory window)

DH = window attributes (see #0529)

DL = access speed (only one bit set) (see #0525)

SI = window base address (bytes if I/O, 4K units if memory window)

DI = card offset addrress (memory only, 4K units)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,03h,07h,08h,0Ah,0Bh,0Dh,10h,11h) (see #0507)

SeeAlso: AH=87h,AH=88h,AH=8Bh

INT 1A


INT 1A 8A-- - PCMCIA Socket Services v1.00 - GET PAGE

Category: X - expansion bus BIOSes

Inp.:

AH = 8Ah

AL = adapter number

BH = window number

BL = page number

Return: CF clear if successful

    AH destroyed

    DX = page attributes (see #0530)

    DI = memory card offset (4K units)

CF set on error

    AH = error code (01h,08h,11h) (see #0507)

Notes:	this function is only valid for memory-mapped windows

the socket being operated on is implied by the previous AH=89h call

SeeAlso: AH=88h,AH=8Bh

INT 1A


INT 1A 8B-- - PCMCIA Socket Services v1.00 - SET PAGE

Category: X - expansion bus BIOSes

Inp.:

AH = 8Bh

AL = adapter number

BH = window number

BL = page number

DX = page attributes (see #0530)

DI = memory card offset (4K units)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,02h,07h,08h,11h) (see #0507)

Notes:	this function is only valid for memory-mapped windows

the socket being operated on is implied by the previous AH=89h call

SeeAlso: AH=89h,AH=8Ah

INT 1A


INT 1A 8C-- - PCMCIA Socket Services v1.00 - INQUIRE SOCKET

Category: X - expansion bus BIOSes

Inp.:

AH = 8Ch

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

Return: CF clear if successful

    AH destroyed

    DH = capabilities (see #0531)

    DL = hardware indicators (see #0532)

    DS:SI -> Socket Characteristics table (see #0533)

    DS:DI -> Power Management table (see #0535)

CF set on error

    AH = error code (01h,0Bh) (see #0507)

SeeAlso: AH=87h,AH=8Dh,AH=8Eh

INT 1A


INT 1A 8D-- - PCMCIA Socket Services v1.00 - GET SOCKET

Category: X - expansion bus BIOSes

Inp.:

AH = 8Dh

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

Return: CF clear if successful

    AH destroyed

    BH = status change interrupt enable mask (see #0509)

    CH = Vcc level (lower nybble) (see #0535)

    CL = Vpp1 level (upper nybble) and Vpp2 level (lower nybble)

    DH = current socket status (see #0510)

    DL = indicators (see #0532)

    SI = card type (see #0536)

    DI = IRQ level steering (I/O only) (see #0537)

CF set on error

    AH = error code (01h,0Bh) (see #0507)

SeeAlso: AH=8Ch,AH=8Eh

INT 1A


INT 1A 8E-- - PCMCIA Socket Services v1.00 - SET SOCKET

Category: X - expansion bus BIOSes

Inp.:

AH = 8Eh

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

BH = status change interrupt enable mask (see #0509)

CL = Vpp1 level (upper nybble) and Vpp2 level (lower nybble)

DH = current socket status (see #0510)

DL = indicators (see #0532)

SI = card type (see #0536)

DI = IRQ level steering (I/O only) (see #0537)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,02h,05h,06h,0Bh,0Eh,0Fh) (see #0507)

SeeAlso: AH=8Ch,AH=8Dh

INT 1A


INT 1A 8F-- - PCMCIA Socket Services v1.00 - GET CARD

Category: X - expansion bus BIOSes

Inp.:

AH = 8Fh

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

Return: CF clear if successful

    AH destroyed

    DL = current card status (see #0511)

CF set on error

    AH = error code (01h,0Bh) (see #0507)

SeeAlso: AH=8Dh,AH=90h

INT 1A


INT 1A 90-- - PCMCIA Socket Services v1.00 - RESET CARD

Category: X - expansion bus BIOSes

Inp.:

AH = 90h

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,0Bh,14h) (see #0507)

Note:	toggles RESET pin of the specified card, but does not wait after

  toggling the pin; it is the caller's responsibility to avoid

  accessing the card before it is ready again

INT 1A


INT 1A 91-- - PCMCIA Socket Services v1.00 - READ ONE

Category: X - expansion bus BIOSes

Inp.:

AH = 91h

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

BH = attributes (see #0538)

DX:SI = card address

Return: CF clear if successful

    AH destroyed

    CL/CX = value read

CF set on error

    AH = error code (01h,07h,09h,0Bh,14h) (see #0507)

    CX may be destroyed

Note:	this function is only valid for I/O-mapped sockets

SeeAlso: AH=92h,AH=93h,INT 21/AX=440Dh"IOCTL"

INT 1A


INT 1A 92-- - PCMCIA Socket Services v1.00 - WRITE ONE

Category: X - expansion bus BIOSes

Inp.:

AH = 92h

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

BH = attributes (see #0538)

CL/CX = value to write

DX:SI = card address

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,07h,0Bh,12h,14h) (see #0507)

Note:	this function is only valid for I/O-mapped sockets; it also does not

  implement Card Technology handling--use AH=94h when writing to

  non-RAM technologies

SeeAlso: AH=91h,AH=94h,INT 21/AX=440Dh"IOCTL"

INT 1A


INT 1A 93-- - PCMCIA Socket Services v1.00 - READ MULTIPLE

Category: X - expansion bus BIOSes

Inp.:

AH = 93h

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

BH = attributes (see #0538)

CX = number of bytes or words to read

DX:SI = card address

DS:DI -> data buffer to be filled

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,07h,09h,0Bh,14h) (see #0507)

Note:	this function is only available on I/O-mapped sockets

SeeAlso: AH=91h,AH=94h,INT 21/AX=440Dh"IOCTL"

INT 1A


INT 1A 94-- - PCMCIA Socket Services v1.00 - WRITE MULTIPLE

Category: X - expansion bus BIOSes

Inp.:

AH = 94h

AL = adapter number

BL = socket number (01h to maximum supported by adapter)

BH = attributes (see #0538)

CX = number of bytes or words to read

DX:DI = card address

DS:SI -> buffer containing data

BP = Card Technology type (0000h = RAM)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,07h,0Bh,0Ch,12h,14h) (see #0507)

Notes:	this function is only available on I/O-mapped sockets

Socket Services calls the Card Technology callback (see #0512) for

  any card technology it does not directly support

SeeAlso: AH=82h"PCMCIA",AH=92h,AH=93h,INT 21/AX=440Dh"IOCTL"

INT 1A


INT 1A 95-- - PCMCIA Socket Services v1.00 - INQUIRE ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 95h

AL = adapter number

BH = EDC generator number

Return: CF clear if successful

    AH destroyed

    CX = bitmap of assignable sockets

    DH = EDC capabilities (see #0539)

    DL = supported EDC types (see #0540)

CF set on error

    AH = error code (01h,04h) (see #0507)

SeeAlso: AH=96h,AH=9Ch

INT 1A


INT 1A 96-- - PCMCIA Socket Services v1.00 - GET ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 96h

AL = adapter number

BH = EDC generator number

Return: CF clear if successful

    AH destroyed

    BL = socket number

    DH = EDC attributes (see #0541)

    DL = EDC type (see #0540) (only one bit set)

CF set on error

    AH = error code (01h,04h) (see #0507)

SeeAlso: AH=95h,AH=97h,AH=9Ch

INT 1A


INT 1A 97-- - PCMCIA Socket Services v1.00 - SET ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 97h

AL = adapter number

BH = EDC generator

BL = socket number

DH = EDC attributes (see #0541)

DL = EDC type (see #0540) (only one bit may be set)

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,02h,04h,0Bh) (see #0507)

SeeAlso: AH=96h,AH=9Ch

INT 1A


INT 1A 98-- - PCMCIA Socket Services v1.00 - START ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 98h

AL = adapter number

BH = EDC generator

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,04h) (see #0507)

SeeAlso: AH=96h,AH=99h,AH=9Bh,AH=9Ch

INT 1A


INT 1A 99-- - PCMCIA Socket Services v1.00 - PAUSE ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 99h

AL = adapter number

BH = EDC generator

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,04h) (see #0507)

SeeAlso: AH=9Ah

INT 1A


INT 1A 9A-- - PCMCIA Socket Services v1.00 - RESUME ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 9Ah

AL = adapter number

BH = EDC generator

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (01h,04h) (see #0507)

SeeAlso: AH=99h,AH=98h

INT 1A


INT 1A 9B-- - PCMCIA Socket Services v1.00 - STOP ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 9Bh

AL = adapter number

BH = EDC generator

Return: CF clear if successful

    AH destroyed

CF set on error

    AH = error code (see #0507)

SeeAlso: AH=98h,AH=99h,AH=9Ch

INT 1A


INT 1A 9C-- - PCMCIA Socket Services v1.00 - READ ERROR DETECTION CODE

Category: X - expansion bus BIOSes

Inp.:

AH = 9Ch

AL = adapter number

BH = EDC generator

Return: CF clear if successful

    AH destroyed

    DL/DX = computed checksum or CRC

CF set on error

    AH = error code (01h,04h) (see #0507)

SeeAlso: AH=95h,AH=96h,AH=98h,AH=99h,AH=9Bh

INT 1A


INT 1A 9D-- - PCMCIA Socket Services v2.1? - GET VENDOR INFO

Category: X - expansion bus BIOSes

Inp.:

AH = 9Dh

AL = adapter number

BH = EDC generator

ES:EDI -> vendor information structure (see #2622 below)

Return: CF clear if successful

    AH destroyed

    DX = vendor release number in BCD

    ES:EDI unchanged

CF set on error

    AH = error code (01h,15h) (see #0507)

Notes:	this API is supported by recent versions of the AMI BIOS

appears to conflict with Intel ExCa API.

Vendor Information structure:

Offset	Size	Description	(Table 2622)

 00h	WORD	buffer length (set to size of buffer below)

 04h	WORD	(ret) data length

 08h  x BYTEs	implementor name (ASCIIZ string)

INT 1A


INT 1A 9D-- - Intel PCMCIA ExCA Card Services - API

Category: X - expansion bus BIOSes

Inp.:

AH = 9Dh

AL = subfunction (see #0542)

???

Return: ???

Note:	this API is supported by recent versions of the AMI BIOS

INT 1A


INT 1A 9E-- - PCMCIA Socket Services v2.1 - ACKNOWLEDGE INTERRUPT

Category: X - expansion bus BIOSes

Inp.:

AH = 9Eh

AL = adapter number

Return: CF clear if successful

    AH destroyed

    CX = bitmap representing sockets which have changed status

CF set on error

    AH = error code (01h) (see #0507)

Note:	this API is supported by recent versions of the AMI BIOS

INT 1A


INT 1A 9F-- - PCMCIA Socket Services v2.1 - GET/SET PRIOR INT 1A HANDLER

Category: X - expansion bus BIOSes

Inp.:

AH = 9Fh

AL = adapter number

BL = mode

    00h get prior INT 1Ah handler

    01h set prior INT 1Ah handler

CX:DX -> new prior handler

Return: CF clear if successful

    AH destroyed

    CX:DX -> old prior handler

CF set on error

    AH = error code (01h,15h,18h) (see #0507)

Desc:	allows hooking of INT 16h "behind" the Socket Services hook

Note:	this API is supported by recent versions of the AMI BIOS

SeeAlso: AH=9Eh,AH=A0h"PCMCIA",AH=AEh"PCMCIA"

INT 1A


INT 1A A0-- - Disk Spool II v2.07+ - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AH = A0h

Return: AH = B0h if installed

    AL = pending INT 1A/AH=D0h subfunction if nonzero???

    ES = code segment

    ES:BX -> name of current spool file

    ES:SI -> current despool file

    CL = despooler state (00h disabled, 41h enabled)

    CH = spooler state (00h disabled, 41h enabled)

    DL = despooler activity

00h currently active printing a file

41h standing by

    DH = 00h ???

       = 41h ???

    DI = 0000h ???

 0001h ???

Program: Disk Spool II is a shareware disk-based print spooler by Budget

  Software Company

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=ABh,AH=C0h,AH=D0h,AH=E1h

INT 1A


INT 1A A0-- - PCMCIA Socket Services v2.1 - GET/SET SOCKET SERVICES ADDRESS

Category: X - expansion bus BIOSes

Inp.:

AH = A0h

AL = adapter number

BH = mode

    00h real mode

    01h 16:16 protected mode

    02h 16:32 protected mode

    03h 00:32 (Flat) protected mode

BL = subfunction

    00h return number of additional data areas (see #2623)

    01h return description of additional data areas (see #2624)

    02h accept mode-specific pointers to data areas (see #2625)

ES:EDI -> buffer supplied by caller

Return: CF clear if successful

    AH destroyed

    CX = number of additional data areas

    ES:EDI unchanged

CF set on error

    AH = error code (01h,02h,15h,16h,18h) (see #0507)

SeeAlso: AH=9Fh,AH=AEh

INT 1A


INT 1A A1-- - PCMCIA Socket Services v2.1 - GET ACCESS OFFSETS

Category: X - expansion bus BIOSes

Inp.:

AH = A1h

AL = adapter number

BH = Mode

     00h = Real Mode

     01h = 16:16 Protected Mode

     02h = 16:32 Protected Mode

     03h = 00:32 Protected Mode

CX = Number of access offsets

ES:EDI -> buffer supplied by caller, CX words long (see #2626)

Return: CF clear if successful

    AH destroyed

    DX = number of access offsets supported

    ES:EDI unchanged

CF set on error

    AH = error code (01h,15h,16h) (see #0507)

Desc:	Returns an array of low-level adapter-specific optimized

PC Card access routines for adapters that use registers

or I/O ports to access PC Card memory.	Adapters that access

PC Card memory through windows mapped to host system memory

do not support this function.

Note:	offsets returned are 16-bit offsets into the

Socket Services code segment.  They must be called

appropriately for the processor mode selected.

(Real, 16:16 and 16:32 modes use FAR CALL,

Flat 00:32 mode uses a 32-bit NEAR CALL).

SeeAlso: AH=AEh

Offset Table structure:

Offset	Size	Description	(Table 2626)

 00h	WORD	Set Address

 02h	WORD	Set Auto Increment

 04h	WORD	Read Byte

 06h	WORD	Read Word

 08h	WORD	Read Byte with Auto Increment

 0Ah	WORD	Read Word with Auto Increment

 0Ch	WORD	Read Words

 0Eh	WORD	Read Words with Auto Increment

 10h	WORD	Write Byte

 12h	WORD	Write Word

 14h	WORD	Write Byte with Auto Increment

 16h	WORD	Write Word with Auto Increment

 18h	WORD	Write Words

 1Ah	WORD	Write Words with Auto Increment

 1Ch	WORD	Compare Byte

 1Eh	WORD	Compare Byte with Auto Increment

 20h	WORD	Compare Words

 22h	WORD	Compare Words with Auto Increment

INT 1A


INT 1A AB-- - Disk Spool II v1.83 - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AH = ABh

Return: AH = BAh if installed

    AL = pending INT 1A/AH=ADh subfunction if nonzero???

    ES = code segment

    ES:BX -> name of current spool file

    ES:SI -> current despool file

    CL = despooler state (00h disabled, 41h enabled)

    CH = spooler state (00h disabled, 41h enabled)

    DL = despooler activity

00h currently active printing a file

41h standing by

    DH = 00h ???

       = 41h ???

    DI = 0000h ???

 0001h ???

Program: Disk Spool II is a shareware disk-based print spooler by Budget

  Software Company

SeeAlso: AH=A0h,AH=ACh,AH=ADh,AH=E1h

INT 1A


INT 1A AC-- - Disk Spool II v1.83 - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AH = ACh

Return: (see AH=ABh)

Note:	this function is identical to AH=ABh

SeeAlso: AH=A0h,AH=ABh,AH=ADh

INT 1A


INT 1A AD-- - Disk Spool II v1.83 - FUNCTION CALLS

undocumented function

Category: c - caches/spoolers

Inp.:

AH = ADh

AL = function code (see #0543)

Return: AH = 00h if successful

SeeAlso: AH=ABh

INT 1A


INT 1A AE-- - PCMCIA Socket Services v2.1 - VENDOR SPECIFIC

Category: X - expansion bus BIOSes

Inp.:

AH = AEh

AL = adapter number

all other registers are vendor-specific

Return: vendor specific

SeeAlso: AH=A1h,AH=AFh

INT 1A


INT 1A AE-- - PCMCIA Socket Services v2.1 - API

Category: X - expansion bus BIOSes

Inp.:

AH = AEh

SI = function

    0002h ???

    0100h ???

    0101h ???

    8000h ???

    8001h ???

details not yet available

Return: CF clear if successful

CF set on error

    AH = error code (02h,0Bh,11h,15h,17h) (see #0507)

SeeAlso: AH=9Eh

INT 1A


INT 1A AF-- - PCMCIA v2 - API

Category: X - expansion bus BIOSes

Inp.:

AH = AFh

details not yet available

SeeAlso: AH=AEh

INT 1A


INT 1A B000 - HP 100LX/200LX - PCMCIA - ???

undocumented function

Category: X - expansion bus BIOSes

Inp.:

AX = B000h

ES:BX -> parameter block ???

Return: CF clear if ???

CF set if ???

Note:	called by HP 100LX/200LX PCMCIA client CIC100.EXE

INT 1A


INT 1A B001 - Microsoft Real-Time Compression Interface (MRCI) - ROM-BASED SERVER

Category: d - disk I/O enhancements

Inp.:

AX = B001h

CX = 4D52h ("MR")

DX = 4349h ("CI")

Return: CX = 4943h ("IC") if installed

DX = 524Dh ("RM") if installed

    ES:DI -> MRCINFO structure (see #0544)

Note:	this call is functionally identical to INT 2F/AX=4A12h, which should

  be called first, as this call is used for the first, ROM-based

  MRCI server, while the other call is used for RAM-based servers

  which may be partially or entirely replacing a prior server

SeeAlso: INT 2F/AX=4A12h

INT 1A


INT 1A B101 - Intel PCI BIOS v2.0c - INSTALLATION CHECK

Category: X - expansion bus BIOSes

Inp.:

AX = B101h

Return: AH = 00h if installed

    CF clear

    EDX = 20494350h (' ICP')

    EDI = physical address of protected-mode entry point (see #0550)

    AL = PCI hardware characteristics (see #0549)

    BH = PCI interface level major version (BCD)

    BL = PCI interface level minor version (BCD)

    CL = number of last PCI bus in system

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Note:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

SeeAlso: AX=B181h

Table #0548

INT 1A


INT 1A B102 - Intel PCI BIOS v2.0c - FIND PCI DEVICE

Category: X - expansion bus BIOSes

Inp.:

AX = B102h

CX = device ID

DX = vendor ID

SI = device index (0-n)

Return: CF clear if successful

CF set on error

AH = status (00h,83h,86h) (see #0548)

    00h successful

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 func)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

device ID FFFFh may be reserved as a wildcard in future implementations

the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

all devices sharing a single vendor ID and device ID may be enumerated

  by incrementing SI from 0 until error 86h is returned

SeeAlso: AX=B182h

INT 1A


INT 1A B103 - Intel PCI BIOS v2.0c - FIND PCI CLASS CODE

Category: X - expansion bus BIOSes

Inp.:

AX = B103h

ECX = class code (bits 23-0)

    xx400000h = multimedia device, video subclass

    xx408000h = multimedia device, other multimedia device

SI = device index (0-n)

Return: CF clear if successful

CF set on error

AH = status (00h,86h) (see #0548)

    00h successful

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 func)

    86h device not found

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

all devices sharing the same Class Code may be enumerated by

  incrementing SI from 0 until error 86h is returned

SeeAlso: AX=B183h

INT 1A


INT 1A B106 - Intel PCI BIOS v2.0c - PCI BUS-SPECIFIC OPERATIONS

Category: X - expansion bus BIOSes

Inp.:

AX = B106h

BL = bus number

EDX = Special Cycle data

Return: CF clear if successful

CF set on error

AH = status (00h,81h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Note:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

SeeAlso: AX=B186h

INT 1A


INT 1A B108 - Intel PCI BIOS v2.0c - READ CONFIGURATION BYTE

Category: X - expansion bus BIOSes

Inp.:

AX = B108h

BL = device/function number (bits 7-3 device, bits 2-0 function)

BH = bus number

DI = register number (0000h-00FFh)

Return: CF clear if successful

    CL = byte read

CF set on error

AH = status (00h,87h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on entry were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B188h

INT 1A


INT 1A B109 - Intel PCI BIOS v2.0c - READ CONFIGURATION WORD

Category: X - expansion bus BIOSes

Inp.:

AX = B109h

BL = device/function number (bits 7-3 device, bits 2-0 function)

BH = bus number

DI = register number (0000h-00FFh)

Return: CF clear if successful

    CX = word read

CF set on error

AH = status (00h,87h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on entry were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B189h

INT 1A


INT 1A B10A - Intel PCI BIOS v2.0c - READ CONFIGURATION DWORD

Category: X - expansion bus BIOSes

Inp.:

AX = B10Ah

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (0000h-00FFh)

Return: CF clear if successful

    ECX = dword read

CF set on error

AH = status (00h,87h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on entry were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B18Ah

INT 1A


INT 1A B10B - Intel PCI BIOS v2.0c - WRITE CONFIGURATION BYTE

Category: X - expansion bus BIOSes

Inp.:

AX = B10Bh

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (0000h-00FFh)

CL = byte to write

Return: CF clear if successful

CF set on error

AH = status (00h,87h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on entry were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B18Bh

INT 1A


INT 1A B10C - Intel PCI BIOS v2.0c - WRITE CONFIGURATION WORD

Category: X - expansion bus BIOSes

Inp.:

AX = B10Ch

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (multiple of 2 less than 0100h)

CX = word to write

Return: CF clear if successful

CF set on error

AH = status (00h,87h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on entry were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B18Ch

INT 1A


INT 1A B10D - Intel PCI BIOS v2.0c - WRITE CONFIGURATION DWORD

Category: X - expansion bus BIOSes

Inp.:

AX = B10Dh

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (multiple of 4 less than 0100h)

ECX = dword to write

Return: CF clear if successful

CF set on error

AH = status (00h,87h) (see #0548)

EAX, EBX, ECX, and EDX may be modified

all other flags (except IF) may be modified

Notes:	this function may require up to 1024 byte of stack; it will not enable

  interrupts if they were disabled before making the call

the meanings of BL and BH on entry were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B18Dh

INT 1A


INT 1A B181 - Intel PCI BIOS v2.0c - INSTALLATION CHECK (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B181h

Return: as for AX=B101h

SeeAlso: AX=B101h

INT 1A


INT 1A B182 - Intel PCI BIOS v2.0c - FIND PCI DEVICE (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B182h

CX = device ID

DX = vendor ID

SI = device index (0-n)

Return: as for AX=B102h

SeeAlso: AX=B102h

INT 1A


INT 1A B183 - Intel PCI BIOS v2.0c - FIND PCI CLASS CODE (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B183h

ECX = class code (bits 23-0)

SI = device index (0-n)

Return: as for AX=B103h

SeeAlso: AX=B103h

INT 1A


INT 1A B186 - Intel PCI BIOS v2.0c - PCI BUS-SPECIFIC OPERATIONS (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B186h

BH = bus number

EDX = Special Cycle data

Return: as for AX=B106h

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B106h

INT 1A


INT 1A B188 - Intel PCI BIOS v2.0c - READ CONFIGURATION BYTE (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B188h

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (0000h-00FFh)

Return: as for AX=B108h

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B108h

INT 1A


INT 1A B189 - Intel PCI BIOS v2.0c - READ CONFIGURATION WORD (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B189h

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (0000h-00FFh)

Return: as for AX=B109h

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B109h

INT 1A


INT 1A B18A - Intel PCI BIOS v2.0c - READ CONFIGURATION DWORD (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B18Ah

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (0000h-00FFh)

Return: as for AX=B10Ah

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B10Ah

INT 1A


INT 1A B18B - Intel PCI BIOS v2.0c - WRITE CONFIGURATION BYTE (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B18Bh

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (0000h-00FFh)

CL = byte to write

Return: as for AX=B10Bh

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B10Bh

INT 1A


INT 1A B18C - Intel PCI BIOS v2.0c - WRITE CONFIGURATION WORD (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B18Ch

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (multiple of 2 less than 0100h)

CX = word to write

Return: as for AX=B10Ch

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B10Ch

INT 1A


INT 1A B18D - Intel PCI BIOS v2.0c - WRITE CONFIGURATION DWORD (32-bit)

Category: X - expansion bus BIOSes

Inp.:

AX = B18Dh

BH = bus number

BL = device/function number (bits 7-3 device, bits 2-0 function)

DI = register number (multiple of 4 less than 0100h)

ECX = dword to write

Return: as for AX=B10Dh

Note:	the meanings of BL and BH on return were exchanged between the initial

  drafts of the specification and final implementation

SeeAlso: AX=B10Dh

INT 1A


INT 1A B400 - Intel Plug-and-Play AUTO-CONFIGURATION - INSTALLATION CHECK

Category: X - expansion bus BIOSes

Inp.:

AX = B400h

Return: CF clear if installed

AX = 0000h if installed

    BH = ??? (02h)

    BL = ??? (08h)

    CX = ??? (0002h)

    EDX = 47464341h ('GFCA', which is byte-swapped 'ACFG')

    SI = ??? (001Fh)

SeeAlso: AX=B401h,AX=B402h,AX=B403h,AX=B404h,AX=B405h,AX=B406h,AX=B407h

SeeAlso: @xxxxh:xxxxh"Plug-and-Play"

Table #0551

INT 1A


INT 1A B401 - Intel Plug-and-Play AUTO-CONFIGURATION - GET DEFAULT CONFIG TABLE

Category: X - expansion bus BIOSes

Inp.:

AX = B401h

Return: CF clear if successful

    AX = 0000h

    BX = maximum size of configuration table??? (1000h)

    CX = ??? (2000h)

    EDI = linear/physical address of ESCD table (see #0552)

CF set on error

    AX = error code (see #0551)

SeeAlso: AX=B400h,AX=B402h,@xxxxh:xxxxh"Plug-and-Play"

INT 1A


INT 1A B402 - Intel Plug-and-Play AUTO-CONFIGURATION - COPY AND VERIFY CONFIG TABLE

Category: X - expansion bus BIOSes

Inp.:

AX = B402h

DS:SI -> configuration table (see #0552)

ES:DI -> buffer for copy of configuration table

Return: CF clear if successful

    AX = 0000h

CF set on error

    AX = error code (0055h,0056h) (see #0551)

Note:	the buffer pointed at by ES:DI must be at least as large as the

  maximum configuration table size reported by AX=B401h

SeeAlso: AX=B400h,AX=B401h

INT 1A


INT 1A B403 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

Category: X - expansion bus BIOSes

Inp.:

AX = B403h

DS:SI -> configuration table (see #0552)

Return: CF clear if successful

    AX = 0000h

CF set on error

    AX = error code (0055h) (see #0551)

Note:	sets the configuration table's checksum field, then ???

SeeAlso: AX=B400h

INT 1A


INT 1A B404 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

Category: X - expansion bus BIOSes

Inp.:

AX = B404h

BX = ???

Return: CF clear if successful

    AX = 0000h

    BX = ???

    CX = ???

    DX = ???

CF set on error

    AX = error code (0051h) (see #0551)

SeeAlso: AX=B400h

INT 1A


INT 1A B405 - Intel Plug-and-Play AUTO-CONFIGURATION - GET ???

Category: X - expansion bus BIOSes

Inp.:

AX = B405h

Return: AX = ??? (0008h)

SeeAlso: AX=B400h

INT 1A


INT 1A B406 - Intel Plug-and-Play AUTO-CONFIGURATION - GET ???

Category: X - expansion bus BIOSes

Inp.:

AX = B406h

ES:DI -> ??? header (see #0567)

Return: CF clear if successful

    AX = 0000h

    WORD ES:[DI] = size of returned data

CF set on error

    AX = error code (0059h) (see #0551)

    WORD ES:[DI] = required size of buffer

SeeAlso: AX=B400h

INT 1A


INT 1A B407 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

Category: X - expansion bus BIOSes

Inp.:

AX = B407h

EDX = length of ???

EDI = physical address of ???

Return: CF clear if successful

    AX = 0000h

    EDI = ???

CF set on error

    AX = error code (FFFFh) (see #0551)

Note:	returns error if EDI < 000C0000h

SeeAlso: AX=B400h

INT 1A


INT 1A B4-- - Intel Plug-and-Play AUTO-CONFIGURATION - 32-BIT API

Category: X - expansion bus BIOSes

Inp.:

AH = B4h

AL = function (80h-87h)

further details not yet available

Note:	these functions are 32-bit versions of functions 00h-07h

INT 1A


INT 1A C0-- - Disk Spool II v2.07+ - ALTERNATE INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AH = C0h

Return: (see AH=A0h)

Notes:	this call is identical to AH=A0h

this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=A0h,AH=ABh,AH=D0h

INT 1A


INT 1A CCCC - DATEFIX - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = CCCCh

BX = CCCCh

CX = 0000h

Return: CX = CCCCh if installed

    ES:BX -> original interrupt handler

Program: DATEFIX is a public-domain TSR to correct the date on AT&T 6300

  machines, where the realtime clock's calendar wraps after 1991

SeeAlso: AH=FEh,AH=FFh"AT&T"

INT 1A


INT 1A D0-- - Disk Spool II v2.07+ - FUNCTION CALLS

undocumented function

Category: c - caches/spoolers

Inp.:

AH = D0h

AL = function code

    01h enable spooler and despooler

    02h enable spooler only

    03h enable despooler at beginning of file

    04h disable the despooler

    05h disable the despooler and spooler

    06h clear the spool file

    08h inhibit the popup menu

    09h enable the popup menu

    0Ah ??? (called by Disk Spool's INT 21 handler)

    0Bh disable the spooler

    0Ch start despooler after last successfully printed document

    0Dh start despooler at the exact point where it last left off

    0Eh pop up the menu

    0Fh ???

    11h start new spool file??? (called by Disk Spool's INT 21 handler

when a program terminates)

    14h ???

    15h delete despool file and reset ???

    16h ??? (writes something to unknown file)

    17h ??? (writes something to despool file, then reads something

else and ???)

    18h ??? (reads something from despool file, and then ???)

    19h ??? (creates/truncates spool file)

    20h clear file pointed to by the despooler

    21h ??? (writes something to unknown file)

    22h ??? (writes something to spool file if spooler/despooler using

same file)

    23h ??? (opens/creates unknown file, then ???)

    30h ???

    31h ???

    32h beep

    33h append CRLF to spool file???

    34h ???

    35h ???

    36h ???

    37h append CRLF to spool file and start a new spool file???

    38h ???

    40h ??? (v4.05)

    41h ??? (v4.05)

    51h ??? (called by Disk Spool's INT 21 handler)

    52h ??? (called by Disk Spool's INT 21 handler)

    57h ???

    5Ah ??? (v4.05)

    5Bh ??? (v4.05)

    5Ch ??? (v4.05)

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=A0h,AH=ADh

INT 1A


INT 1A E0-- - Disk Spool II v4.0x - ENABLE/DISABLE

Category: c - caches/spoolers

Inp.:

AH = E0h

AL = subfunction

    01h enable spooler

    02h disable spooler

    03h enable despooler

    04h disable despooler

CL = printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

Return: AH = status

    00h successful

    F0h printer port not managed by Disk Spool II

    FFH failed

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=A0h,AH=E1h,AX=E301h,AX=E401h

INT 1A


INT 1A E1-- - Disk Spool II v4.0x - GET STATUS

Category: c - caches/spoolers

Inp.:

AH = E1h

CL = printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

Return: AH = status

    00h successful

CL = despooler state (00h disabled, 41h enabled)

CH = spooler state (00h disabled, 41h enabled)

DL = despooler activity (00h standing by, 41h printing)

ES:BX -> ASCIZ name of current spool file (or next if AutoSpool

or AutoDespool enabled)

ES:SI -> ASCIZ name of current despool file

ES:DI -> 3-byte file extension used by Disk Spool II

    F0h printer port not managed by Disk Spool II

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=A0h,AH=E0h,AH=E2h

INT 1A


INT 1A E11B - TheGrab v4.60 - ???

Category: U - resident utilities

Inp.:

AX = E11Bh

???

Return: ??? (may destroy all registers)

SeeAlso: AX=E11Dh

INT 1A


INT 1A E11D - TheGrab v4.60 - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = E11Dh

Return: ES:DI -> signature block (see #0569) if installed

    CX = length of signature block (000Fh)

Program: TheGrab is a resident ANSI screen grabber bundled with TheDraw

SeeAlso: AX=E11Bh

INT 1A


INT 1A E2-- - Disk Spool II v4.0x - GET SPOOL FILES

Category: c - caches/spoolers

Inp.:

AH = E2h

AL = which

    01h first

    02h next (can only call after "first")

CL = printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

Return: AH = status

    00h successful

ES:BX -> ASCIZ filename

    F0h no (more) spool files

    FFh failed

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=E0h,AH=E1h

INT 1A


INT 1A E301 - Disk Spool II v4.0x - GET SPOOL FILE STATUS

Category: c - caches/spoolers

Inp.:

AX = E301h

ES:BX -> ASCIZ filename (max 32 chars)

Return: AH = status

    00h successful

ES:SI -> spool file status record (see #0570)

    F0h not a spool file

    FFh failed

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=E0h,AX=E302h,AX=E401h

INT 1A


INT 1A E302 - Disk Spool II v4.0x - UPDATE SPOOL FILE

Category: c - caches/spoolers

Inp.:

AX = E302h

ES:BX -> ASCIZ filename (max 32 chars)

ES:SI -> spool file status record (see #0570)

Return: AH = status

    00h successful

    F0h not a spool file

    FFh failed

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=E0h,AX=E301h,AX=E401h

INT 1A


INT 1A E401 - Disk Spool II v4.0x - SPOOL EXISTING FILE

Category: c - caches/spoolers

Inp.:

AX = E401h

ES:BX -> ASCIZ filename (max 32 chars)

CL = printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

Return: AH = status

    00h successful

    FFh failed

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=E1h,AX=E302h,AX=E402h

INT 1A


INT 1A E402 - Disk Spool II v4.0x - SPOOL EXISTING FILE???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = E402h

ES:BX -> ASCIZ filename (max 32 chars)

CL = printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

Return: AH = status

    00h successful

    FFh failed

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=E1h,AX=E302h,AX=E401h

INT 1A


INT 1A E5-- - Emulaser ELSPL.COM - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = E5h

???

Return: ???

Program: ELSPL.COM is a licensed version of Disk Spool II which is distributed

  as part of Vertisoft's Emulaser PostScript emulator

SeeAlso: AH=A0h,INT 17/AH=03h

INT 1A


INT 1A EE-- - Disk Spool II v4.05 - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = EEh

AL = printer port???

???

Return: ???

Note:	this function is also supported by Vertisoft's Emulaser utility ELSPL,

  as that is a licensed version of Disk Spool II

SeeAlso: AH=E1h

INT 1A


INT 1A F7-- - RighTime v1.1 - TEMPORARILY DISABLE

Category: U - resident utilities

Inp.:

AH = F7h

Program: RighTime is a TSR by G.T. Becker which continuously adjusts the system

  time to correct for clock drift

Note:	any AH value from F0h-F7h or F9h-FEh will perform this function in

  version 1.1, but F7h is the function called by transient portion

SeeAlso: AH=F8h,AH=FFh"RighTime"

INT 1A


INT 1A F8-- - RighTime v1.1 - ENABLE

Category: U - resident utilities

Inp.:

AH = F8h

Program: RighTime is a TSR by G.T. Becker which continuously adjusts the system

  time to correct for clock drift

Note:	RighTime is TeSseRact-compatible (see INT 2F/AX=5453h) and modifies its

  TeSseRact program identifier based on its current state: "RighTime"

  when enabled, "RighTim"F7h when disabled.

SeeAlso: AH=F7h,AH=FFh"RighTime"

INT 1A


INT 1A FE-- - AT&T 6300 - READ TIME AND DATE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FEh

Return: BX = day count (0 = Jan 1, 1984)

CH = hour

CL = minute

DH = second

DL = hundredths

SeeAlso: AX=CCCCh/BX=CCCCh,AH=FFh"AT&T",INT 21/AH=2Ah,INT 21/AH=2Ch

INT 1A


INT 1A FF-- - AT&T 6300 - SET TIME AND DATE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FFh

BX = day count (0 = Jan 1, 1984)

CH = hour

CL = minute

DH = second

DL = hundredths

Return: ???

SeeAlso: AX=CCCCh/BX=CCCCh,AH=FEh,INT 21/AH=2Bh,INT 21/AH=2Dh

INT 1A


INT 1A FF-- - RighTime v1.1 - PERMANENTLY DISABLE

Category: U - resident utilities

Inp.:

AH = FFh

Program: RighTime is a TSR by G.T. Becker which continuously adjusts the system

  time to correct for clock drift

Note:	upon being permanently disabled, RighTime closes the file handle

  referencing its executable (which is updated with time correction

  information every two minutes while RighTime is enabled).

INT 1A


INT 1A FF00 - SND - INSTALLATION CHECK???

Category: s - sound/speech

Inp.:

AX = FF00h

Return: AL = version??? (02h)

AH = busy flag (00h if not in a SND call, 01h if SND currently active)

Note:	the SND API is also supported by IC (Internal Commands) v2.0, a

  shareware TSR by Geoff Friesen which extends COMMAND.COM's internal

  command set

SeeAlso: AX=FF01h,AX=FF02h,AX=FF04h,AX=FF05h

INT 1A


INT 1A FF01 - SND - PAUSE

Category: s - sound/speech

Inp.:

AX = FF01h

DX = number of clock ticks to delay

Return: AH = status

    00h successful

    01h SND busy

Notes:	if successful, execution returns to the caller after the delay expires;

  if SND is busy, execution returns immediately

the IC v2.0 implementation of this API makes no special allowance for

  time rollover at midnight, which can cause the delay to be over one

  hour if this function is called just before the BIOS time count

  rolls over and the delay extends into the next day

SeeAlso: AX=FF00h,INT 15/AH=86h,INT 62/AX=0096h,INT 7F/AH=E8h,INT 80/BX=0009h

SeeAlso: INT E0/CL=BDh

INT 1A


INT 1A FF02 - SND - START SOUND

Category: s - sound/speech

Inp.:

AX = FF02h

DX = frequency in Hertz (14h-FFFFh)

Return: AH = status

    00h successful

    01h SND busy

SeeAlso: AX=FF00h,AX=FF01h,AX=FF03h

INT 1A


INT 1A FF03 - SND - STOP SOUND

Category: s - sound/speech

Inp.:

AX = FF03h

Return: AH = status

    00h successful

    01h busy

Note:	turns off any sound currently being emitted by the PC's speaker unless

  SND is currently busy processing an API call (this includes

  background music).  Use AX=FF05h to stop the sound even if an API

  call is in progress.

SeeAlso: AX=FF00h,AX=FF02h,AX=FF05h

INT 1A


INT 1A FF04 - SND - PLAY MUSIC STRING IN BACKGROUND

Category: s - sound/speech

Inp.:

AX = FF04h

DS:DX -> ASCIZ music string

Return: AH = status

    00h successful (music begins playing in background)

    01h busy

Note:	the music string accepted by SND is not the same as that accepted by

  BASIC and other programs which process music strings

SeeAlso: AX=FF00h,AX=FF05h,INT 80/BX=0006h

INT 1A


INT 1A FF05 - SND - UNCONDITIONALLY STOP SOUND

Category: s - sound/speech

Inp.:

AX = FF05h

Return: AH = 00h (successful)

Note:	this function is the same as AX=FF03h, but will stop the sound even if

  SND is currently busy, such as playing background music

SeeAlso: AX=FF00h,AX=FF03h,INT 80/BX=0007h

INT 1A


INT 1B ---- - KEYBOARD - CONTROL-BREAK HANDLER

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

Desc:	this interrupt is automatically called when INT 09 determines that

  Control-Break has been pressed

Note:	normally points to a short routine in DOS which sets the Ctrl-C flag,

  thus invoking INT 23h the next time DOS checks for Ctrl-C.

SeeAlso: INT 23

INT 1B


INT 1C ---- - TIME - SYSTEM TIMER TICK

Category: B - BIOS

Inp.:

Desc:	this interrupt is automatically called on each clock tick by the INT 08

  handler

Notes:	this is the preferred interrupt to chain when a program needs to be

  invoked regularly

not available on NEC 9800-series PCs

SeeAlso: INT 08,INT E2"PC Cluster"

INT 1C


INT 1D ---- - SYSTEM DATA - VIDEO PARAMETER TABLES

Category: B - BIOS

Inp.:

Note:	the default parameter table (see #0571) is located at F000h:F0A4h for

  100% compatible BIOSes

SeeAlso: INT 10/AH=00h

INT 1D


INT 1E ---- - SYSTEM DATA - DISKETTE PARAMETERS

Category: B - BIOS

Inp.:

Note:	the default parameter table (see #0572) is located at F000h:EFC7h for

  100% compatible BIOSes

SeeAlso: INT 13/AH=0Fh,INT 41,INT 4D/AH=0Ah

INT 1E


INT 1F ---- - SYSTEM DATA - 8x8 GRAPHICS FONT

Category: B - BIOS

Inp.:

Desc:	this vector points at 1024 bytes of graphics data, 8 bytes for each

  character 80h-FFh

Note:	graphics data for characters 00h-7Fh stored at F000h:FA6Eh in 100%

  compatible BIOSes

SeeAlso: INT 10/AX=5000h,INT 43

INT 1F


INT 1F 12-- - C&T "SuperState" BIOS - POWER OFF

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 12h

Return: none

Note:	POWER OFF

INT 1F


INT 1F 17-- - C&T "SuperState" BIOS - EXECUTE FAR PROC ROUTINE ON SuperState

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 17h

ES:DI -> far procedure

Return: all registers except AH,ES,DI

Note:	You can change the BIOS area (F000h:0000h - F000h:FFFFh) only through

  this function

INT 1F


INT 1F 19-- - C&T "SuperState" BIOS - ENABLE AUTO WAKEUP AND SET TIME AND DATE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 19h

AL = hour in BCD

BH = minutes in BCD

BL = seconds in BCD

CH = year century in BCD (must be 19h)

CL = year low in BCD

DH = month in BCD

DL = date in BCD

Return: CF clear

INT 1F


INT 1F 1C-- - C&T "SuperState" BIOS - SET SUSPEND TIMEOUT

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 1Ch

BX = sec until suspend starts

Return: None

INT 1F


INT 1F 1D-- - C&T "SuperState" BIOS - SET SLEEP TIMEOUT

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 1Dh

BX = sec until sleep starts

Return: None

INT 1F


INT 1F 90-- - NEC PC-9801 - COPY EXTENDED MEMORY

Category: J - Japanese

Inp.:

AH = 90h

ES:BX -> global descriptor table (see #0375 at INT 15/AH=87h)

CX = number of bytes to copy

SI = 0000h

DI = 0000h

Return: CF clear if successful

CF set on error

???

SeeAlso: INT 15/AH=87h

INT 1F


INT 1F F5-- - C&T "SuperState" BIOS - REQUEST PASSWORD INPUT

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F5h

BL = FAh

Return: none

Note:	this function will not return until the correct password is entered

SeeAlso: AH=F5h/BL=FDh,AX=F5h/BL=FEh

INT 1F


INT 1F F5-- - C&T "SuperState" BIOS - ENCRYPT PASSWORD

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F5h

BL = FDh

CX:SI = input string

DX:DI = encrypted string

BH = length of input string

Return: CF set on error

SeeAlso: AH=F5h/BL=FAh,AX=F5h/BL=FEh

INT 1F


INT 1F F5-- - C&T "SuperState" BIOS - SET PASSWORD

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F5h

BL = FEh

CX:SI -> input string

BH = length of input string (if BH = 00h, clear password)

Return: CF set on error

Note:	the input string must be encrypted by INT 1Fh/AH=F5h/BL=FDh

SeeAlso: AH=F5h/BL=FDh,AX=F5h/BL=FFh

INT 1F


INT 1F F5-- - C&T "SuperState" BIOS - GET ENCRYPTED PASSWORD

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = F5h

BL = FFh

DX:DI = string buffer

Return: CF set on error

CF clear if successful

    BH = length of input string (if BH = 00h, password is not valid)

    DX:DI -> encrypted password string

SeeAlso: AH=F5h/BL=FDh,AX=F5h/BL=FEh

INT 1F


INT 1F FB-- - C&T "SuperState" BIOS - GET/SET CPU SPEED

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FBh

BL = function

    00h get CPU speed

Return: AL = current CPU speed (00h = fast, 01h = slow)

    01h set CPU speed

AL = new CPU speed (00h = fast, 01h = slow)

SeeAlso: AH=FCh/BL=00h

INT 1F


INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM STATUS

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FCh

BL = 00h

Return: AL = current alarm state (00h = disabled, 01h = enabled)

SeeAlso: AH=FCh/BL=01h,AH=FCh/BL=02h

INT 1F


INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM STATUS

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FCh

BL = 01h

AL = new alarm state (00h = disabled, 01h = enabled)

SeeAlso: AH=FCh/BL=00h,AH=FCh/BL=03h

INT 1F


INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM TIME

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FCh

BL = 02h

Return: CH = hour by BCD

CL = min by BCD

DH = sec by BCD

SeeAlso: AH=FCh/BL=00h,AH=FCh/BL=03h,AH=FCh/BL=04h

INT 1F


INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM TIME

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FCh

BL = 03h

CH = hour by BCD

CL = min by BCD

DH = sec by BCD

Return: CF set on error (incorrect time format or Alarm is not enable)

SeeAlso: AH=FCh/BL=01h,AH=FCh/BL=02h,AH=FCh/BL=05h

INT 1F


INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM DATE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FCh

BL = 04h

Return: CH = year century by BCD

CL = year low by BCD

DH = month by BCD

DL = date by BCD

SeeAlso: AH=FCh/BL=02h,AH=FCh/BL=05h

INT 1F


INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM DATE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FCh

BL = 05h

CH = year century by BCD

CL = year low by BCD

DH = month by BCD

DL = date by BCD

Return: CF set on error (incorrect date format or Alarm is not enable)

SeeAlso: AH=FCh/BL=03h,AH=FCh/BL=04h

INT 1F


INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP STATUS

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FDh

BL = 00h

Return: AL = current wake-up state (00h = disabled, 01h = enabled)

SeeAlso: AH=FDh/BL=01h,AH=FDh/BL=02h

INT 1F


INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP STATUS

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FDh

BL = 01h

AL = new wake-up state (00h = disabled, 01h = enabled)

SeeAlso: AH=FDh/BL=00h,AH=FDh/BL=03h

INT 1F


INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP TIME

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FDh

BL = 02h

Return: CH = hour by BCD

CL = min by BCD

DH = sec by BCD

SeeAlso: AH=FDh/BL=00h,AH=FDh/BL=03h

INT 1F


INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP TIME

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

       AH = FDh

       BL = 3h

       CH = hour by BCD

       CL = min by BCD

       DH = sec by BCD

Return: CF set on error (incorrect Time format or Auto Wake up is not enable)

SeeAlso: AH=FDh/BL=01h,AH=FDh/BL=02h

INT 1F


INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP DATE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FDh

BL = 04h

Return: CH = year century in BCD

CL = year low in BCD

DH = month in BCD

DL = date in BCD

SeeAlso: AH=FDh/BL=02h,AH=FDh/BL=05h

INT 1F


INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP DATE

undocumented function

Category: b - vendor-specific BIOS extensions

Inp.:

AH = FDh

BL = 05h

CH = year century in BCD

CL = year low in BCD

DH = month in BCD

DL = date in BCD

Return: CF set on error (incorrect date format or Auto Wake up is not enable)

SeeAlso: AH=FDh/BL=03h,AH=FDh/BL=04h

INT 1F


INT 20 ---- - Minix - SEND/RECEIVE MESSAGE

Category: O - other operating systems

Inp.:

AX = process ID of other process

BX -> message

CX = operation (1 send, 2 receive, 3 send&receive)

Program: Minix is a Version 7 Unix-compatible operating system by Andrew

  Tanenbaum

Note:	the message contains the system call number (numbered as in V7

  Unix(tm)) and the call parameters

INT 20


INT 20 ---- - DOS 1+ - TERMINATE PROGRAM

Category: D - DOS kernel

Inp.:

CS = PSP segment

Return: never

Note:	(see INT 21/AH=00h)

SeeAlso: INT 21/AH=00h,INT 21/AH=4Ch

INT 20


INT 20 ---- - COMTROL HOSTESS i/ISA DEBUGGER - INVOKE FIRMWARE DEBUGGER

Category: G - debuggers/debugging tools

Inp.:

???

Return: ???

SeeAlso: INT 21"COMTROL"

INT 20


INT 20 ---- - Microsoft Windows - VxD FUNCTIONS

available only in protected mode

Category: W - MS Windows

Inp.:

Note:	the desired VxD and function are identified by the data immediately

  following the INT 20 instruction, as in:

INT	20h

DW	function number

DW	VxD identifier

Table #2655

INT 20


INT 21 ---- - COMTROL HOSTESS i/ISA DEBUGGER - GET SEGMENT FOR CONTROL PROGRAM USE

Category: G - debuggers/debugging tools

Inp.:

???

Return: AX = first segment available for control program use

SeeAlso: INT 20"COMTROL",INT 22"COMTROL"

INT 21


INT 21 00-- - DOS 1+ - TERMINATE PROGRAM

Category: D - DOS kernel

Inp.:

AH = 00h

CS = PSP segment

Notes:	Microsoft recommends using INT 21/AH=4Ch for DOS 2+

execution continues at the address stored in INT 22 after DOS performs

  whatever cleanup it needs to do

if the PSP is its own parent, the process's memory is not freed; if

  INT 22 additionally points into the terminating program, the

  process is effectively NOT terminated

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=26h,AH=31h,AH=4Ch,INT 20,INT 22

INT 21


INT 21 01-- - DOS 1+ - READ CHARACTER FROM STANDARD INPUT, WITH ECHO

Category: D - DOS kernel

Inp.:

AH = 01h

Return: AL = character read

Notes:	^C/^Break are checked, and INT 23 executed if read

character is echoed to standard output

standard input is always the keyboard and standard output the screen

  under DOS 1.x, but they may be redirected under DOS 2+

SeeAlso: AH=06h,AH=07h,AH=08h,AH=0Ah

INT 21


INT 21 02-- - DOS 1+ - WRITE CHARACTER TO STANDARD OUTPUT

Category: D - DOS kernel

Inp.:

AH = 02h

DL = character to write

Return: AL = last character output (despite the official docs which state

nothing is returned) (at least DOS 3.3-5.0)

Notes:	^C/^Break are checked, and INT 23 executed if pressed

standard output is always the screen under DOS 1.x, but may be

  redirected under DOS 2+

the last character output will be the character in DL unless DL=09h

  on entry, in which case AL=20h as tabs are expanded to blanks

SeeAlso: AH=06h,AH=09h

INT 21


INT 21 03-- - DOS 1+ - READ CHARACTER FROM STDAUX

Category: D - DOS kernel

Inp.:

AH = 03h

Return: AL = character read

Notes:	keyboard checked for ^C/^Break, and INT 23 executed if detected

STDAUX is usually the first serial port

SeeAlso: AH=04h,INT 14/AH=02h,INT E0/CL=03h

INT 21


INT 21 04-- - DOS 1+ - WRITE CHARACTER TO STDAUX

Category: D - DOS kernel

Inp.:

AH = 04h

DL = character to write

Notes:	keyboard checked for ^C/^Break, and INT 23 executed if detected

STDAUX is usually the first serial port

if STDAUX is busy, this function will wait until it becomes free

SeeAlso: AH=03h,INT 14/AH=01h,INT E0/CL=04h

INT 21


INT 21 05-- - DOS 1+ - WRITE CHARACTER TO PRINTER

Category: D - DOS kernel

Inp.:

AH = 05h

DL = character to print

Notes:	keyboard checked for ^C/^Break, and INT 23 executed if detected

STDPRN is usually the first parallel port, but may be redirected under

  DOS 2+

if the printer is busy, this function will wait

SeeAlso: INT 17/AH=00h

INT 21


INT 21 06-- - DOS 1+ - DIRECT CONSOLE OUTPUT

Category: D - DOS kernel

Inp.:

AH = 06h

DL = character (except FFh)

Return: AL = character output (despite official docs which state nothing is

returned) (at least DOS 3.3-5.0)

Notes:	does not check ^C/^Break

writes to standard output, which is always the screen under DOS 1.x,

  but may be redirected under DOS 2+

SeeAlso: AH=02h,AH=09h

INT 21


INT 21 06-- - DOS 1+ - DIRECT CONSOLE INPUT

Category: D - DOS kernel

Inp.:

AH = 06h

DL = FFh

Return: ZF set if no character available

    AL = 00h

ZF clear if character available

    AL = character read

Notes:	^C/^Break are NOT checked

if the returned character is 00h, the user pressed a key with an

  extended keycode, which will be returned by the next call of this

  function

this function reads from standard input, which is always the keyboard

  under DOS 1.x, but may be redirected under DOS 2+

although the return of AL=00h when no characters are available is not

  documented, some programs rely on this behavior

SeeAlso: AH=0Bh

INT 21


INT 21 07-- - DOS 1+ - DIRECT CHARACTER INPUT, WITHOUT ECHO

Category: D - DOS kernel

Inp.:

AH = 07h

Return: AL = character read from standard input

Notes:	does not check ^C/^Break

standard input is always the keyboard under DOS 1.x, but may be

  redirected under DOS 2+

if the interim console flag is set (see AX=6301h), partially-formed

  double-byte characters may be returned

SeeAlso: AH=01h,AH=06h,AH=08h,AH=0Ah

INT 21


INT 21 08-- - DOS 1+ - CHARACTER INPUT WITHOUT ECHO

Category: D - DOS kernel

Inp.:

AH = 08h

Return: AL = character read from standard input

Notes:	^C/^Break are checked, and INT 23 executed if detected

standard input is always the keyboard under DOS 1.x, but may be

  redirected under DOS 2+

if the interim console flag is set (see AX=6301h), partially-formed

  double-byte characters may be returned

SeeAlso: AH=01h,AH=06h,AH=07h,AH=0Ah,AH=64h

INT 21


INT 21 09-- - DOS 1+ - WRITE STRING TO STANDARD OUTPUT

Category: D - DOS kernel

Inp.:

AH = 09h

DS:DX -> '$'-terminated string

Return: AL = 24h (the '$' terminating the string, despite official docs which

state that nothing is returned) (at least DOS 3.3-5.0)

Notes:	^C/^Break are checked, and INT 23 is called if either pressed

standard output is always the screen under DOS 1.x, but may be

  redirected under DOS 2+

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

SeeAlso: AH=02h,AH=06h"OUTPUT"

INT 21


INT 21 0A-- - DOS 1+ - BUFFERED INPUT

Category: D - DOS kernel

Inp.:

AH = 0Ah

DS:DX -> buffer (see #0573)

Return: buffer filled with user input

Notes:	^C/^Break are checked, and INT 23 is called if either detected

reads from standard input, which may be redirected under DOS 2+

if the maximum buffer size (see #0573) is set to 00h, this call returns

  immediately without reading any input

SeeAlso: AH=0Ch,INT 2F/AX=4810h

INT 21


INT 21 0A00 - WCED v1.6+ - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = 0A00h

DS:DX -> 6-byte buffer whose first two bytes must be 00h

Return: buffer offset 02h-05h filled with "Wced" if installed

Program: WCED is a free command-line editor and history utility by Stuart

  Russell

SeeAlso: AH=FFh"CED"

INT 21


INT 21 0B-- - DOS 1+ - GET STDIN STATUS

Category: D - DOS kernel

Inp.:

AH = 0Bh

Return: AL = status

    00h if no character available

    FFh if character is available

Notes:	^C/^Break are checked, and INT 23 is called if either pressed

standard input is always the keyboard under DOS 1.x, but may be

  redirected under DOS 2+

if the interim console flag is set (see AX=6301h), this function

  returns AL=FFh if a partially-formed double-byte character is

  available

SeeAlso: AH=06h"INPUT",AX=4406h

INT 21


INT 21 0B56 - VIRUS - "Perfume" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 0B56h

Return: AX = 4952h if resident

SeeAlso: AX=0D20h,INT 12/AX=4350h/BX=4920h,INT 13/AH=F2h

INT 21


INT 21 0C-- - DOS 1+ - FLUSH BUFFER AND READ STANDARD INPUT

Category: D - DOS kernel

Inp.:

AH = 0Ch

AL = STDIN input function to execute after flushing buffer

other registers as appropriate for the input function

Return: as appropriate for the specified input function

Note:	if AL is not one of 01h,06h,07h,08h, or 0Ah, the buffer is flushed but

  no input is attempted

SeeAlso: AH=01h,AH=06h"INPUT",AH=07h,AH=08h,AH=0Ah

INT 21


INT 21 0D-- - DOS 1+ - DISK RESET

Category: D - DOS kernel

Inp.:

AH = 0Dh

Return: (DOS 6 only) CF clear (earlier versions preserve CF)

Notes:	This function writes all modified disk buffers to disk, but does not

  update the directory information (that is only done when files are

  closed or a SYNC call is issued)

SeeAlso: AX=5D01h,INT 13/AH=00h,INT 2F/AX=1120h

INT 21


INT 21 0D20 - VIRUS - "Crazy Imp" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 0D20h

Return: AX = 1971h if resident

SeeAlso: AX=0B56h,AX=1812h,AX=2C2Ch,AH=30h/DX=ABCDh

INT 21


INT 21 0E-- - DOS 1+ - SELECT DEFAULT DRIVE

Category: D - DOS kernel

Inp.:

AH = 0Eh

DL = new default drive (00h = A:, 01h = B:, etc)

Return: AL = number of potentially valid drive letters

Notes:	under Novell NetWare, the return value is always 32, the number of

  drives that NetWare supports

under DOS 3.0+, the return value is the greatest of 5, the value of

  LASTDRIVE= in CONFIG.SYS, and the number of drives actually present

on a DOS 1.x/2.x single-floppy system, AL returns 2 since the floppy

  may be accessed as either A: or B:

otherwise, the return value is the highest drive actually present

DOS 1.x supports a maximum of 16 drives, 2.x a maximum of 63 drives,

  and 3+ a maximum of 26 drives

under Novell DOS 7, this function returns the correct LASTDRIVE value

  even when the undocumented LASTDRIVE=32 directive was used in

  CONFIG.SYS

SeeAlso: AH=19h,AH=3Bh,AH=DBh

INT 21


INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - INSTALLATION CHECK

undocumented function

Category: v - virus/antivirus

Inp.:

AH = 0Eh

DL = ADh

Return: AL = BAh if installed

Program: SDRes is the resident portion of the Search&Destroy antiviral by

  Fifth Generation Systems, as bundled with Novell DOS 7

Note:	SDRes will terminate programs which test for the presence of viruses

  using interrupt-based installation calls, saying that the program

  may be infected

SeeAlso: AH=0Eh/DL=AEh,AH=0Eh/DL=AFh,AH=4Ah/BX=00B6h,INT 13/AX=A759h

INT 21


INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - CLEAR ??? FLAG

undocumented function

Category: v - virus/antivirus

Inp.:

AH = 0Eh

DL = AEh

SeeAlso: AH=0Eh/DL=ADh,AH=0Eh/DL=AFh,INT 13/AX=A759h

INT 21


INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - SET ??? FLAG

undocumented function

Category: v - virus/antivirus

Inp.:

AH = 0Eh

DL = AFh

SeeAlso: AH=0Eh/DL=ADh,AH=0Eh/DL=AEh,INT 13/AX=A759h

INT 21


INT 21 0F-- - DOS 1+ - OPEN FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 0Fh

DS:DX -> unopened File Control Block (see #0574)

Return: AL = status

    00h successful

    FFh file not found or access denied

Notes:	(DOS 3.1+) file opened for read/write in compatibility mode

an unopened FCB has the drive, filename, and extension fields filled

  in and all other bytes cleared

not supported by MS Windows 3.0 DOSX.EXE DOS extender

DR-DOS checks password attached with AX=4303h

BUG:	APPEND for DOS 3.3+ corrupts DX if the file is not found

SeeAlso: AH=10h,AH=16h,AH=3Dh,AX=4303h

INT 21


INT 21 10-- - DOS 1+ - CLOSE FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 10h

DS:DX -> File Control Block (see #0574)

Return: AL = status

    00h successful

    FFh failed

Notes:	a successful close forces all disk buffers used by the file to be

  written and the directory entry to be updated

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=0Fh,AH=16h,AH=3Eh

INT 21


INT 21 11-- - DOS 1+ - FIND FIRST MATCHING FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 11h

DS:DX -> unopened FCB (see #0574), may contain '?' wildcards

Return: AL = status

    00h successful

[DTA] unopened FCB for first matching file

    FFh no matching filename, or bad FCB

Notes:	the type of the returned FCB depends on whether the input FCB was a

  normal or an extended FCB

the data returned in the DTA is actually the drive number (or extended

  FCB header and drive number) followed by the file's directory entry

  (see #0580); this format happens to be compatible with an unopened

  FCB

for extended FCBs with search attribute 08h, the volume label (if any)

  will be returned even if the current directory is not the root dir.

DOS 3.0+ also allows the '*' wildcard

the search FCB must not be modified if AH=12h will be used to continue

  searching; DOS 3.3 has set the following parts of the FCB:

 0Ch	BYTE	???

 0Dh	WORD	directory entry number of matching file

 0Fh	WORD	cluster number of current directory

 11h  4 BYTEs	???

 15h	BYTE	drive number (1=A:)

this function is used by many copy protection schemes to obtain the

  starting cluster of a file

SeeAlso: AH=12h,AH=1Ah,AH=4Eh,INT 2F/AX=111Bh

INT 21


INT 21 12-- - DOS 1+ - FIND NEXT MATCHING FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 12h

DS:DX -> unopened FCB (see #0574)

Return: AL = status

    00h successful

[DTA] = unopened FCB

    FFh no more matching filenames

Note:	(see AH=11h)

assumes that successful FindFirst executed on search FCB before call

SeeAlso: AH=1Ah,AH=4Fh,INT 2F/AX=111Ch

INT 21


INT 21 13-- - DOS 1+ - DELETE FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 13h

DS:DX -> unopened FCB (see #0574), filename filled with template for

deletion ('?' wildcards allowed)

Return: AL = status

    00h one or more files successfully deleted

    FFh no matching files or all were read-only or locked

Notes:	DOS 1.25+ deletes everything in the current directory (including

  subdirectories) and sets the first byte of the name to 00h (entry

  never used) instead of E5h if called on an extended FCB with

  filename '???????????' and bits 0-4 of the attribute set (bits 1 and

  2 for DOS 1.x).  This may have originally been an optimization to

  minimize directory searching after a mass deletion (DOS 1.25+ stop

  the directory search upon encountering a never-used entry), but can

  corrupt the filesystem under DOS 2+ because subdirectories are

  removed without deleting the files they contain.

currently-open files should not be deleted

MS-DOS allows deletion of read-only files with an extended FCB, whereas

  Novell NetWare, DR-DOS 6, and Novell DOS 7 do not

SeeAlso: AH=41h,INT 2F/AX=1113h

INT 21


INT 21 14-- - DOS 1+ - SEQUENTIAL READ FROM FCB FILE

Category: D - DOS kernel

Inp.:

AH = 14h

DS:DX -> opened FCB (see #0574)

Return: AL = status

    00h successful

    01h end of file (no data)

    02h segment wrap in DTA

    03h end of file, partial record read

[DTA] = record read from file

Notes:	reads a record of the size specified in the FCB beginning at the

  current file position, then updates the current block and current

  record fields in the FCB

if a partial record was read, it is zero-padded to the full size

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=0Fh,AH=15h,AH=1Ah,AH=3Fh,INT 2F/AX=1108h

INT 21


INT 21 15-- - DOS 1+ - SEQUENTIAL WRITE TO FCB FILE

Category: D - DOS kernel

Inp.:

AH = 15h

DS:DX -> opened FCB (see #0574)

[DTA] = record to write

Return: AL = status

    00h successful

    01h disk full

    02h segment wrap in DTA

Notes:	writes a record of the size specified in the FCB beginning at the

  current file position, then updates the current block and current

  record fields in the FCB

if less than a full sector is written, the data is placed in a DOS

  buffer to be written out at a later time

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=0Fh,AH=14h,AH=1Ah,AH=40h,INT 2F/AX=1109h

INT 21


INT 21 16-- - DOS 1+ - CREATE OR TRUNCATE FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 16h

DS:DX -> unopened FCB (see #0574), wildcards not allowed

Return: AL = status

    00h successful

    FFh directory full or file exists and is read-only or locked

Notes:	if file already exists, it is truncated to zero length

if an extended FCB is used, the file is given the attribute in the

  FCB; this is how to create a volume label in the disk's root dir

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=0Fh,AH=10h,AH=3Ch

INT 21


INT 21 17-- - DOS 1+ - RENAME FILE USING FCB

Category: D - DOS kernel

Inp.:

AH = 17h

DS:DX -> modified FCB (see also #0574)

the old filename ('?' wildcards OK) is in the standard location

while the new filename ('?' wildcards OK, no drive) is stored

in the 11 bytes beginning at offset 11h

Return: AL = status

    00h successfully renamed

    FFh no matching files,file is read-only, or new name already exists

Notes:	subdirectories may be renamed using an extended FCB with the

  appropriate attribute, as may volume labels

DR-DOS checks password attached with AX=4303h before permitting rename

SeeAlso: AH=0Fh,AH=13h,AX=4303h,AH=56h,INT 2F/AX=1111h

INT 21


INT 21 18-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

Category: D - DOS kernel

Inp.:

AH = 18h

Return: AL = 00h

Note:	corresponds to the CP/M BDOS function "get bit map of logged drives",

  which is meaningless under MS-DOS

SeeAlso: AH=1Dh,AH=1Eh,AH=20h,AX=4459h,INT 60/DI=0513h

INT 21


INT 21 1812 - VIRUS - "Tasha Yar" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 1812h

Return: AL = 00h if resident

DX = 4310h if resident

SeeAlso: INT 16/AH=DDh"VIRUS",INT 21/AX=2C2Ch"VIRUS"

INT 21


INT 21 19-- - DOS 1+ - GET CURRENT DEFAULT DRIVE

Category: D - DOS kernel

Inp.:

AH = 19h

Return: AL = drive (00h = A:, 01h = B:, etc)

Note:	Novell NetWare uses the fact that DOS 2.x COMMAND.COM issues this call

  from a particular location every time it starts a command to

  determine when to issue an automatic EOJ

SeeAlso: AH=0Eh,AH=47h,AH=BBh

INT 21


INT 21 1A-- - DOS 1+ - SET DISK TRANSFER AREA ADDRESS

Category: D - DOS kernel

Inp.:

AH = 1Ah

DS:DX -> Disk Transfer Area (DTA)

Notes:	the DTA is set to PSP:0080h when a program is started

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

SeeAlso: AH=11h,AH=12h,AH=2Fh,AH=4Eh,AH=4Fh

INT 21


INT 21 1B-- - DOS 1+ - GET ALLOCATION INFORMATION FOR DEFAULT DRIVE

Category: D - DOS kernel

Inp.:

AH = 1Bh

Return: AL = sectors per cluster (allocation unit)

CX = bytes per sector

DX = total number of clusters

DS:BX -> media ID byte (see #0581)

Note:	under DOS 1.x, DS:BX points at an actual copy of the FAT; later

  versions return a pointer to a copy of the FAT's ID byte

SeeAlso: AH=1Ch,AH=36h

INT 21


INT 21 1C-- - DOS 1+ - GET ALLOCATION INFORMATION FOR SPECIFIC DRIVE

Category: D - DOS kernel

Inp.:

AH = 1Ch

DL = drive (00h = default, 01h = A:, etc)

Return: AL = sectors per cluster (allocation unit), or FFh if invalid drive

CX = bytes per sector

DX = total number of clusters

DS:BX -> media ID byte (see #0581)

Notes:	under DOS 1.x, DS:BX points at an actual copy of the FAT; later

  versions return a pointer to a copy of the FAT's ID byte

on a DBLSPACE drive, the total number of clusters is based on the

  estimated compression ratio

SeeAlso: AH=1Bh,AH=36h

INT 21


INT 21 1D-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

Category: D - DOS kernel

Inp.:

AH = 1Dh

Return: AL = 00h

Note:	corresponds to the CP/M BDOS function "get bit map of read-only

  drives", which is meaningless under MS-DOS

SeeAlso: AH=18h,AH=1Eh,AH=20h,AX=4459h

INT 21


INT 21 1E-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

Category: D - DOS kernel

Inp.:

AH = 1Eh

Return: AL = 00h

Note:	corresponds to the CP/M BDOS function "set file attributes" which was

 meaningless under MS-DOS 1.x

SeeAlso: AH=18h,AH=1Dh,AH=20h

INT 21


INT 21 1F-- - DOS 1+ - GET DRIVE PARAMETER BLOCK FOR DEFAULT DRIVE

Category: D - DOS kernel

Inp.:

AH = 1Fh

Return: AL = status

    00h successful

DS:BX -> Drive Parameter Block (DPB) (see #0582 for DOS 1.x,

AH=32h for DOS 2+)

    FFh invalid drive

Note:	this call was undocumented prior to the release of DOS 5.0; however,

  only the DOS 4.0+ version of the DPB has been documented

SeeAlso: AH=32h

INT 21


INT 21 20-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

Category: D - DOS kernel

Inp.:

AH = 20h

Return: AL = 00h

Note:	corresponds to the CP/M BDOS function "get/set default user

  (sublibrary) number", which is meaningless under MS-DOS

SeeAlso: AH=18h,AH=1Dh,AH=1Eh,AX=4459h

INT 21


INT 21 21-- - DOS 1+ - READ RANDOM RECORD FROM FCB FILE

Category: D - DOS kernel

Inp.:

AH = 21h

DS:DX -> opened FCB (see #0574)

Return: AL = status

    00h successful

    01h end of file, no data read

    02h segment wrap in DTA, no data read

    03h end of file, partial record read

[DTA] = record read from file

Notes:	the record is read from the current file position as specified by the

  random record and record size fields of the FCB

the file position is not updated after reading the record

if a partial record is read, it is zero-padded to the full size

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=14h,AH=22h,AH=27h,AH=3Fh

INT 21


INT 21 22-- - DOS 1+ - WRITE RANDOM RECORD TO FCB FILE

Category: D - DOS kernel

Inp.:

AH = 22h

DS:DX -> opened FCB (see #0574)

[DTA] = record to write

Return: AL = status

    00h successful

    01h disk full

    02h segment wrap in DTA

Notes:	the record is written to the current file position as specified by the

  random record and record size fields of the FCB

the file position is not updated after writing the record

if the record is located beyond the end of the file, the file is

  extended but the intervening data remains uninitialized

if the record only partially fills a disk sector, it is copied to a

  DOS disk buffer to be written out to disk at a later time

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=15h,AH=21h,AH=28h,AH=40h

INT 21


INT 21 23-- - DOS 1+ - GET FILE SIZE FOR FCB

Category: D - DOS kernel

Inp.:

AH = 23h

DS:DX -> unopened FCB (see #0574), wildcards not allowed

Return: AL = status

    00h successful (matching file found)

FCB random record field filled with size in records, rounded up

to next full record

    FFh failed (no matching file found)

Notes:	not supported by MS Windows 3.0 DOSX.EXE DOS extender

MS-DOS returns nonsense if the FCB record number field is set to a very

  large positive number, and status FFh if negative; DR-DOS returns the

  correct file size in both cases

BUG:	APPEND for DOS 3.3+ corrupts DX if the file is not found

SeeAlso: AH=42h

INT 21


INT 21 24-- - DOS 1+ - SET RANDOM RECORD NUMBER FOR FCB

Category: D - DOS kernel

Inp.:

AH = 24h

DS:DX -> opened FCB (see #0574)

Notes:	computes the random record number corresponding to the current record

  number and record size, then stores the result in the FCB

normally used when switching from sequential to random access

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=21h,AH=27h,AH=42h

INT 21


INT 21 25-- - DOS 1+ - SET INTERRUPT VECTOR

Category: D - DOS kernel

Inp.:

AH = 25h

AL = interrupt number

DS:DX -> new interrupt handler

Notes:	this function is preferred over direct modification of the interrupt

  vector table

some DOS extenders place an API on this function, as it is not

  directly meaningful in protected mode

under DR-DOS 5.0+, this function does not use any of the DOS-internal

  stacks and may thus be called at any time

Novell NetWare (except the new DOS Requester) monitors the offset of

  any INT 24 set, and if equal to the value at startup, substitutes

  its own handler to allow handling of network errors; this introduces

  the potential bug that any program whose INT 24 handler offset

  happens to be the same as COMMAND.COM's will not have its INT 24

  handler installed

SeeAlso: AX=2501h,AH=35h

INT 21


INT 21 2501 - Phar Lap 386/DOS-Extender - RESET DOS EXTENDER DATA STRUCTURES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2501h

SS = application's original SS or DS (FlashTek X-32VM)

Return: CF clear if successful

CF set on error

    caller is operating on X-32 stack (FlashTek X-32VM)

Notes:	Phar Lap uses INT 21/AH=25h as the entry point for all 386/DOS-Extender

  system calls.	 Only available when directly using 386/DOS-Extender or

  a compatible DOS extender, or when using a product that was created

  using 386-DOS/Extender or a compatible

this function is also supported by FlashTek X-32VM

SeeAlso: AH=30h"Phar Lap"

INT 21


INT 21 2502 - Phar Lap 386/DOS-Extender - GET PROTECTED-MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2502h

CL = interrupt number

Return: CF clear

ES:EBX = CS:EIP of protected-mode interrupt handler

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2503h,AX=2504h,INT 31/AX=0204h

INT 21


INT 21 2503 - Phar Lap 386/DOS-Extender - GET REAL-MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2503h

CL = interrupt number

Return: CF clear

EBX = CS:IP of real-mode interrupt handler

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2502h,AX=2504h,AH=35h,INT 31/AX=0200h

INT 21


INT 21 2504 - Phar Lap 386/DOS-Extender - SET PROTECTED-MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2504h

CL = interrupt number

DS:EDX = CS:EIP of protected-mode interrupt handler

Return: CF clear

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2502h,AX=2505h,INT 31/AX=0205h

INT 21


INT 21 2505 - Phar Lap 386/DOS-Extender - SET REAL-MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2505h

CL = interrupt number

EBX = CS:IP of real-mode interrupt handler

Return: CF clear

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2503h,AX=2504h,INT 31/AX=0201h

INT 21


INT 21 2506 - Phar Lap 386/DOS-Extender - SET INT TO ALWAYS GAIN CNTRL IN PR. MODE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2506h

CL = interrupt number

DS:EDX = CS:EIP of protected-mode interrupt handler

Return: CF clear

Notes:	this function modifies both the real-mode low-memory interrupt

  vector table and the protected-mode Interrupt Descriptor Table (IDT)

interrupts occurring in real mode are resignaled in protected mode

this function is also supported by FlashTek X-32VM

INT 21


INT 21 2507 - Phar Lap 386/DOS-Extender - SET REAL- & PROTECTED-MODE INT VECTORS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2507h

CL = interrupt number

DS:EDX = CS:EIP of protected-mode interrupt handler

EBX = CS:IP of real-mode interrupt handler

Return: CF clear

Notes:	interrupts are disabled until both vectors have been modified

this function is also supported by FlashTek X-32VM

SeeAlso: AX=2504h,AX=2505h

INT 21


INT 21 2508 - Phar Lap 386/DOS-Extender - GET SEGMENT LINEAR BASE ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2508h

BX = segment selector

Return: CF clear if successful

    ECX = linear base address of segment

CF set if invalid segment selector

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2509h

INT 21


INT 21 2509 - Phar Lap 386/DOS-Extender - CONVERT LINEAR TO PHYSICAL ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2509h

EBX = linear address to convert

Return: CF clear if successful

    ECX = physical address (carry flag clear)

CF set if linear address not mapped in page tables

SeeAlso: AX=2508h

INT 21


INT 21 2509 - FlashTek X-32VM - GET SYSTEM SEGMENTS AND SELECTORS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2509h

Return: CF clear

EAX high word = default DS

AX = alias for 16-bit data segment

BX = real mode code segment

EDX high word = selector covering full 4GB address space

DX = default SS

ESI high word = PSP selector

SI = environment selector

INT 21


INT 21 250A - Phar Lap 386/DOS-Extender - MAP PHYSICAL MEMORY AT END OF SEGMENT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 250Ah

ES = segment selector in the Local Descriptor Table (LDT) of segment

     to modify

EBX = physical base address of memory to map (multiple of 4K)

ECX = number of physical 4K pages to map

Return: CF clear if successful

    EAX = 32-bit offset in segment of mapped memory

CF set on error

    EAX = error code

08h insufficient memory to create page tables

09h invalid segment selector

SeeAlso: INT 31/AX=0800h

INT 21


INT 21 250C - Phar Lap 386/DOS-Extender - GET HARDWARE INTERRUPT VECTORS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 250Ch

Return: CF clear

AL = base interrupt vector for IRQ0-IRQ7

AH = base interrupt vector for IRQ8-IRQ15

BL = interrupt vector for BIOS print screen function (Phar Lap only)

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: INT 31/AX=0400h,INT 67/AX=DE0Ah

INT 21


INT 21 250D - Phar Lap 386/DOS-Extender - GET REAL-MODE LINK INFORMATION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 250Dh

Return: CF clear

EAX = CS:IP of real-mode callback procedure (see #0583) that will

  call through from real mode to a protected-mode routine

EBX = 32-bit real-mode address of intermode call data buffer

ECX = size in bytes of intermode call data buffer

ES:EDX = protected-mode address of intermode call data buffer

Notes:	this function is also supported by FlashTek X-32VM

X-32VM guarantees the intermode buffer to be at least 4 KB

SeeAlso: AX=250Eh

INT 21


INT 21 250E - Phar Lap 386/DOS-Extender - CALL REAL-MODE PROCEDURE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 250Eh

EBX = CS:IP of real-mode procedure to call

ECX = number of two-byte words to copy from protected-mode stack

      to real-mode stack

Return: CF clear if successful

    all segment registers unchanged

    all general registers contain values set by real-mode procedure

    all other flags set as they were left by real-mode procedure

    stack unchanged

CF set on error

    EAX = error code

01h not enough real-mode stack space

Note:	this function is also supported by FlashTek X-32VM; under X-32VM, the

  call will fail if ECX > 0000003Fh

SeeAlso: AX=250Dh,AX=2510h,AH=E1h"OS/286",INT 31/AX=0301h

INT 21


INT 21 250F - Phar Lap 386/DOS-Extender - CONVERT PROTECTED-MODE ADDRESS TO MS-DOS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 250Fh

ES:EBX = 48-bit protected-mode address to convert

ECX = 00000000h or length of data in bytes

Return: CF clear if successful (address < 1MB and contiguous)

    ECX = 32-bit real-mode MS-DOS address

CF set on error (address >= 1MB or not contiguous)

    ECX = linear address

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2510h

INT 21


INT 21 2510 - Phar Lap 386/DOS-Extender - CALL REAL-MODE PROCEDURE, REGISTERS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2510h

EBX = CS:IP of real-mode procedure to call

ECX = number of two-byte words to copy to protected-mode stack to

      real-mode stack

DS:EDX -> pointer to parameter block (see #0585)

Return: CF clear if successful

    all segment registers unchanged,

    EDX unchanged

    all other general registers contain values set by real-mode proc

    all other flags are set as they were left by real-mode procedure

    real-mode register values are returned in the parameter block

CF set on error

    EAX = error code

01h not enough real-mode stack space

Note:	unlike most of the preceding 25xxh functions, this one is not

  supported by FlashTek X-32VM

SeeAlso: AX=250Eh,AX=250Fh

INT 21


INT 21 2511 - Phar Lap 386/DOS-Extender - ISSUE REAL-MODE INTERRUPT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2511h

DS:EDX -> parameter block (see #0586)

Return: all segment registers unchanged

EDX unchanged

all other registers contain values set by the real-mode int handler

the flags are set as they were left by the real-mode interrupt handler

real-mode register values are returned in the parameter block

Note:	this function is also supported by FlashTek X-32VM

SeeAlso: AX=2503h,AX=2505h,AX=250Eh,AH=E3h"OS/286",INT 31/AX=0300h

INT 21


INT 21 2512 - Phar Lap 386/DOS-Extender - LOAD PROGRAM FOR DEBUGGING

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2512h

DS:EDX -> pointer to ASCIZ program name

ES:EBX -> pointer to parameter block (see #0588)

ECX = size in bytes of LDT buffer

Return: CF clear if successful

    EAX = number of segment descriptors in LDT

CF set on error

    EAX = error code (see #0587)

SeeAlso: AX=2517h

INT 21


INT 21 2513 - Phar Lap 386/DOS-Extender - ALIAS SEGMENT DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2513h

BX = segment selector of descriptor in GDT or LDT

CL = access-rights byte for alias descriptor

CH = use-type bit (USE16 or USE32) for alias descriptor

Return: CF clear if successful

    AX = segment selector for created alias

CF set on error

    EAX = error code

08h insufficient memory (can't grow LDT)

09h invalid segment selector in BX

INT 21


INT 21 2514 - Phar Lap 386/DOS-Extender - CHANGE SEGMENT ATTRIBUTES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2514h

BX = segment selector of descriptor in GDT or LDT

CL = new access-rights byte

CH = new use-type bit (USE16 or USE32)

Return: CF clear if successful

CF set on error

    EAX = error code

09h invalid selector in BX

SeeAlso: AX=2515h,INT 31/AX=0009h

INT 21


INT 21 2515 - Phar Lap 386/DOS-Extender - GET SEGMENT ATTRIBUTES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2515h

BX = segment selector of descriptor in GDT or LDT

Return: CF clear if successful

    CL = access-rights byte for segment

    CH = use-type bit (USE16 or USE32)

ECX<16-31> destroyed

CF set on error

    EAX = error code

09h invalid segment selector in BX

SeeAlso: AX=2514h

INT 21


INT 21 2516 - Phar Lap 386/DOS-Extender v2.2+ - FREE ALL MEMORY OWNED BY LDT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2516h

Return: CF clear

Note:	this function must be called from Ring 0 or the CS descriptor is freed

INT 21


INT 21 2517 - Phar Lap 386/DOS-Extender v2.1c+ - GET INFO ON DOS DATA BUFFER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2517h

Return: CF clear

ES:EBX -> data buffer (protected mode address)

ECX -> data buffer (real mode address)

EDX = size of data buffer in bytes

Note:	the data buffer's address changes after calls to AX=2512h and AX=252Ah

SeeAlso: AX=2512h,AX=252Ah,AX=2530h

INT 21


INT 21 2518 - Phar Lap 386/DOS-Extender 2.1c+ - SPECIFY HANDLER FOR MOVED SEGMENTS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2518h

ES:EBX -> function to call when a segment is moved

Return: CF clear

ES:EBX -> previous handler

INT 21


INT 21 2519 - Phar Lap 386/DOS-Extender VMM - GET ADDITIONAL MEMORY ERROR INFO

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2519h

Return: CF clear

EAX = error code

    0000h  no error

    0001h  out of physical memory

    0002h  out of swap space (unable to grow swap file)

    0003h  out of LDT entries and unable to grow LDT

    0004h  unable to change extended memory allocation mark

    FFFFFFFFh	paging disabled

Note:	VMM is the Virtual Memory Manager option

INT 21


INT 21 251A - Phar Lap 386/DOS-Extender VMM - LOCK PAGES IN MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 251Ah

EDX = number of 4k pages to lock

if BL = 00h

    ECX = linear address of first page to lock

if BL = 01h

    ES:ECX -> pointer to first page to lock

Return: CF clear if successful

CF set on error

    EAX = error code

08h insufficient memory

09h invalid address range

SeeAlso: AX=251Bh,AX=EB06h,INT 31/AX=0600h

INT 21


INT 21 251B - Phar Lap 386/DOS-Extender VMM - UNLOCK PAGES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 251Bh

EDX = number of pages to unlock

if BL = 00h

    ECX = linear address of first page to unlock

if BL = 01h

    ES:ECX -> pointer to first page to unlock

Return: CF clear if successful

CF set on error

    EAX = error code

09h invalid address range

SeeAlso: AX=251Ah,AX=EB07h,INT 31/AX=0601h

INT 21


INT 21 251C - Phar Lap 386/DOS-Extender VMM v2.1c+ - FREE PHYSICAL MEMORY PAGES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 251Ch

BH = preservation flag (00h preserve contents, 01h discard contents)

EDX = number of pages to free

BL = address type

    00h linear address

ECX = linear address of first page to be freed

    01h pointer

ES:ECX -> first page to be freed

Return: CF clear if successful

CF set on error

    EAX = error code

08h memory error, swap space full, no VMM or DPMI

09h invalid address

INT 21


INT 21 251D - Phar Lap 386/DOS-Extender VMM v2.1c - READ PAGE-TABLE ENTRY

obsolete (no longer present in current versions)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 251Dh

BL = address type

    00h linear address

ECX = linear address of page table entry to read

    01h pointer

ES:ECX -> page table entry to read

Return: CF clear if successful

    EAX = contents of page table entry

CF set on error

    EAX = error code

09h invalid address or NOPAGE option set

78h invalid under DPMI

Note:	this function is obsolete; use AX=252Bh/BH=09h instead

SeeAlso: AX=251Eh,AX=252Bh/BH=09h,AX=EB00h,INT 31/AX=0506h

INT 21


INT 21 251E - Phar Lap 386/DOS-Extender VMM v2.1c - WRITE PAGE-TABLE ENTRY

obsolete (no longer present in current versions)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 251Eh

BL = address type

    00h linear address

ECX = linear address of page table entry to read

    01h pointer

ES:ECX -> page table entry to read

EDX = new value for page table entry

Return: CF clear if successful

CF set on error

    EAX = error code

09h invalid address or NOPAGE option set

82h not compatible with DPMI

Note:	this call is obsolete; use AX=252Bh/BH=0Ah instead

SeeAlso: AX=251Dh,AX=252Bh/BH=0Ah,INT 31/AX=0507h

INT 21


INT 21 251F - Phar Lap 386/DOS-Extender VMM - EXHANGE TWO PAGE-TABLE ENTRIES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 251Fh

BL = address type

    00h linear address

ECX = linear address of first page table entry

EDX = linear address of second page table entry

    01h pointer

ES:ECX -> first page table entry

ES:EDX -> second page table entry

Return: CF clear if successful

CF set on error

    EAX = error code

09h invalid address or NOPAGE option set

82h not compatible with DPMI

SeeAlso: AX=251Dh,AX=251Eh

INT 21


INT 21 2520 - Phar Lap 386/DOS-Extender VMM - GET MEMORY STATISTICS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2520h

DS:EDX -> pointer to buffer at least 100 bytes in size (see #0589)

BL = 0 (don't reset VM stats), 1 (reset VM stats)

Return: carry flag clear

INT 21


INT 21 2521 - Phar Lap 386/DOS-Extender VMM - LIMIT PROGRAM'S EXTENDED MEM USAGE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2521h

EBX = max 4k pages of physical extended memory which program may use

Return: CF clear if successful

   EBX = maximum limit in pages

   ECX = minimum limit in pages

CF set on error

    EAX = error code

08h insufficient memory or -nopage switch used

SeeAlso: AX=2522h

INT 21


INT 21 2522 - Phar Lap 386/DOS-Ext VMM v2.2+ - SPECIFY ALTERNATE PAGE-FAULT HANDLR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2522h

ES:EBX -> alternate handler for page faults

Return: CF clear

ES:EBX -> previous page-fault handler

SeeAlso: AX=2523h

INT 21


INT 21 2523 - Phar Lap 386/DOS-Ext VMM v2.2+ - SPECIFY OUT-OF-SWAP-SPACE HANDLER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2523h

???

Return: ???

Note:	this function takes a DWORD pointer and a DWORD pointer to a DWORD

  pointer as arguments

SeeAlso: AX=2522h

INT 21


INT 21 2524 - Phar Lap 386/DOS-Ext VMM v2.2+ - INSTALL PAGE-REPLACEMENT HANDLERS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2524h

???

Return: ???

Note:	this function takes three DWORD pointers and three DWORD pointers to

  DWORD pointers as arguments

INT 21


INT 21 2525 - Phar Lap 386/DOS-Extender VMM - LIMIT PROGRAM'S CONVENT'L MEM USAGE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2525h

EBX = limit in 4k pages of physical conventional memory which program

      may use

Return: CF clear if successful

    EBX = maximum limit in pages

    ECX = minimum limit in pages

CF set on error

    EAX = error code

08h insufficient memory or -nopage switch used

SeeAlso: AX=2521h

INT 21


INT 21 2526 - Phar Lap 386/DOS-Extender - GET CONFIGURATION INFORMATION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2526h

???

Return: ???

Notes:	details are not yet available

this function takes a pointer to the configuration buffer (see #0590)

  and a poitner to a BYTE as arguments

INT 21


INT 21 2527 - Phar Lap 386/DOS-Extender VMM - EN/DISABLE STATE SAVE ON INTERRUPTS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2527h

EBX = new status (00h disabled, 01h enabled)

Return: CF clear

EBX = previous state save flag

SeeAlso: AX=2528h

INT 21


INT 21 2528 - Phar Lap 386/DOS-Extender VMM - READ REGISTERS AFTER CTRL-C INT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2528h

DS:EBX -> buffer for registers (see #0593)

Return: CF clear if successful

    DS:EBX buffer filled

CF set on error

    EAX = error code

83h interrupt state save not enabled

84h no active interrupt

SeeAlso: AX=2527h

INT 21


INT 21 2529 - Phar Lap 386/DOS-Extender - LOAD FLAT MODEL .EXP or .REX FILE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2529h

???

Return: ES:EBX -> parameter block (see #0594)

???

Note:	details not available at this time

SeeAlso: AX=252Ah

INT 21


INT 21 252A - Phar Lap 386/DOS-Extender VMM - NEW LOAD PROGRAM FOR DEBUG

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Ah

DS:EDX -> ASCIZ program name

ES:EBX -> parameter block (see #0588)

ECX = size of LDT buffer in bytes

ESI = bit flags

    bit 0: allow demand paging rather than loading entire program

    bit 1: demand page from swap file rather than from .EXP

Return: CF clear if successful

    EAX = VMM handle or FFFFFFFFh if none

    ECX = number of descriptors in LDT buffer

CF set on error

    EAX = error code

02h file error

    EBX = file error code (see #0595)

    ECX = DOS error code if EBX=1,2,3, or 8

08h insufficient memory

    EBX = memory error code (see #0596)

80h LDT buffer too small

87h called twice without intervening call to AX=2531h

SeeAlso: AX=2512h,AX=2517h,AX=2529h,AX=2531h

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - CREATE UNMAPPED PAGES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 00h

???

Return: ???

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - CREATE ALLOCATED PAGES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 01h

???

Return: ???

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - CREATE PHYSICAL DEVICE PAGES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 02h

???

Return: ???

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - MAP DATA FILE

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 03h

???

Return: ???

SeeAlso: AX=252Bh/BL=0Bh

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - GET PAGE TYPES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 04h

???

Return: ???

Note:	returns one word per page

SeeAlso: #0597

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - VIRTUAL MEMORY MANAGEMENT - PAGE LOCKING

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = function

    05h lock pages

    06h unlock pages

BL = address type

    00h linear address

ECX = linear start address of memory region

    01h segmented address

ES:ECX -> start of memory region

EDX = size of memory region in bytes

Return: CF clear if successful

CF set on error

Note:	this function is also supported by FlashTek X-32VM; if X-32 is not

  using virtual memory, this function always succeeds

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender - FREE PHYSICAL PAGES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = function (07h,08h)

???

Return: ???

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender v4.1 - GET PAGETABLE ENTRY/PAGE TABLE INFO

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 09h

BL = subfunction

    00h get page table entry by linear address

ECX = linear address for which to get page table entry

    01h get page table entry by logical address

ES:ECX = address for which to get page table entry

Return: CF clear if successful

    EAX = page table entry

    EBX = additional page table information

CF set on error

    EAX = error code

0009h invalid address

0082h running under DPMI

SeeAlso: AX=251Dh,AX=252Bh/BH=0Ah

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender v4.1 - SET PAGETABLE ENTRY/PAGE TABLE INFO

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 0Ah

BL = subfunction

    00h set page table entry for linear address

ECX = linear address for which to get page table entry

    01h set page table entry for logical address

ES:ECX = address for which to get page table entry

ESI = page table entry

EDI = additional page table information

Return: CF clear if successful

CF set on error

    EAX = error code

0009h invalid address

0082h running under DPMI

SeeAlso: AX=252Bh/BH=09h

INT 21


INT 21 252B - Phar Lap 386/DOS-Extender v4.1+ - MAP DATA FILE AT FILE OFFSET

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Bh

BH = 0Bh

BL = subfunction

    00h by linear address

ECX = linear address at which to map data file

    01h by logical address

ES:ECX = logical address at which to map data file

EDX = number of bytes to map

DS:ESI -> mapping structure (see #0598)

DS:EDI -> ASCIZ filename

Return: CF clear if successful

CF set on error

    EAX = error code

0002h file error

    ECX = phase (01h opening file, 02h seeking, 03h reading)

    EDX = error code returned by DOS

0009h invalid address

0081h invalid parameters or 386|VMM not present

0086h all 386|VMM file handles already in use

SeeAlso: AX=252Bh/BH=03h,AX=252Bh/BH=09h

INT 21


INT 21 252C - Phar Lap 386/DOS-Ext VMM v3.0 - ADD UNMAPPED PAGES AT END OF SEGMENT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Ch

BX = segment selector

ECX = number of 4K pages to add

Return: CF clear if successful

    EAX = offset in segment of beginning of unmapped pages

CF set on error

    EAX = error code

08h insufficent memory

09h invalid selector

82h not supported by current DPMI

INT 21


INT 21 252D - Phar Lap 386/DOS-Extender VMM v2.3+ - CLOSE VMM FILE HANDLE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Dh

EBX = VMM file handle

Return: CF clear if successful

CF set on error

    EAX = error code (81h invalid VMM handle)

INT 21


INT 21 252E - Phar Lap 386/DOS-Extender VMM v2.3+ - GET/SET VMM PARAMETERS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Eh

CL = direction (00h get parameters, 01h set parameters)

DS:EBX -> parameter buffer (see #0599)

Return: CF clear if successful

CF set on error

    EAX = error code (81h bad parameter value)

INT 21


INT 21 252F - Phar Lap 386/DOS-Ext VMM v3.0 - WRITE RECORD TO VMM PAGE LOG FILE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 252Fh

DS:EBX -> data to be written

CX = size of data in bytes

Return: CF clear if successful

CF set on error

    EAX = error code (85h no page log file or not 386/VMM)

INT 21


INT 21 2530 - Phar Lap 386/DOS-Ext VMM v2.3+ - SET SIZE OF BUFFER FOR DOS CALLS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2530h

ECX = size of data buffer in bytes (1024 to 65536)

Return: CF clear if successful

CF set on error

    EAX = error code

08h insufficient low memory

81h invalid size

SeeAlso: AX=2517h

INT 21


INT 21 2531 - Phar Lap 386/DOS-Extender VMM v3.0 - READ/WRITE LDT DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2531h

BX = segment selector

ECX = direction (00h read, 01h write)

DS:EDX -> 8-byte buffer for descriptor contents

Return: CF clear if successful

CF set on error

    EAX = error code

81h invalid selector

82h DPMI running, or not a code or data segment

INT 21


INT 21 2532 - Phar Lap 386/DOS-Extender - GET EXCEPTION HANDLER VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2532h

CL = exception number (00h-0Fh)

Return: CF clear if successful

    ES:EBX = CS:EIP of current exception handler

CF set on error (CL > 0Fh)

Notes:	this call is also supported by the FlashTek X-32VM extender

this function is incompatible with 386|VMM; use AX=2522h instead

SeeAlso: AX=2522h,AX=2533h

INT 21


INT 21 2533 - Phar Lap 386/DOS-Extender - SET EXCEPTION HANDLER VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2533h

CL = exception number (00h-0Fh)

DS:EDX = CS:EIP of new exception handler

Return: CF clear if successful

CF set on error (CL > 0Fh)

Notes:	this call is also supported by the FlashTek X-32VM extender

this function is incompatible with 386|VMM; use AX=2522h instead

SeeAlso: AX=2522h,AX=2532h

INT 21


INT 21 2534 - Phar Lap 386/DOS-Extender v3.0+ - GET INTERRUPT FLAG

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2534h

Return: CF clear

EAX = interrupt state (00h disabled, 01h enabled)

INT 21


INT 21 2535 - Phar Lap 386/DOS-Extender v3.0+ - READ/WRITE SYSTEM REGISTERS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2535h

EBX = direction (00h read registers, 01h write)

DS:EDX -> system register record (see #0600)

Return: CF clear

Note:	this call is only available under MS Windows if PHARLAP.386 VDD is

  installed

INT 21


INT 21 2536 - Phar Lap 386/DOS-Ext VMM v3.0+ - MIN/MAX EXTENDED/CONV MEMORY USAGE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2536h

EBX = bit flags

    bit 0: modifying conventional memory rather than extended memory

    bit 1: setting maximum memory usage rather than minimum

ECX = new limit in 4K pages

Return: CF clear if successful

    EAX = new limit

CF set on error

    EAX = error code (08h memory error or -NOPAGE set)

    EBX = maximum limit in pages

    ECX = minimum limit in pages

INT 21


INT 21 2537 - Phar Lap 386/DOS-Ext VMM v3.0 - ALLOCATE DOS MEMORY ABOVE DOS BUFFER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2537h

BX = number of paragraphs to allocate

Return: CF clear if successful

    AX = real-mode segment of allocated block

CF set on error

    AX = error code

07h MS-DOS memory chain corrupted

08h insufficient low memory

    BX = size in paragraphs of largest free block

SeeAlso: AH=48h

INT 21


INT 21 2538 - Phar Lap 386/DOS-Ext VMM v3.0 - READ PROTMODE REGS AFTER SFTWARE INT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2538h

DS:EBX -> buffer for registers (see #0593)

ECX = register record to retrieve

    00h first interrupt state

    01h next interrupt state

EDX = handle for current interrupt state

Return: CF clear if successful

    DS:EBX buffer filled

    EDX = handle of current interrupt state

    ESI = number of interrupt which occurred

CF set on error

    EAX = error code

81h invalid handle in EDX

83h register saving not enabled

84h no more interrupt states

SeeAlso: AX=2527h,AX=2528h

INT 21


INT 21 2539 - Phar Lap 386/DOS-Ext VMM v3.0 - GET OFFSET OF .EXP FILE HEADER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 2539h

BX = MS-DOS file handle for open file

Return: CF clear if successful

    EAX = offset of .EXP header in file

CF set on error

    EAX = error code (02h file error)

    EBX = file error code

02h DOS error seeking

03h DOS error reading

04h invalid file type

05h invalid file format

    ECX = DOS error code if EBX=02h or 03h

current file position in file modified

INT 21


INT 21 253A - Phar Lap 386/DOS-Extender v3.0+ - INSTALL MOD. SEG FAILURE HANDLER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 253Ah

ES:EBX -> function to be called when INT 21/AH=4Ah is about to return

an error

Return: CF clear

ES:EBX -> previous handler

SeeAlso: AH=4Ah

INT 21


INT 21 253B - Phar Lap 386/DOS-Extender v3.0+ - JUMP TO REAL MODE CODE, NO CONTEXT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 253Bh

DS:EBX -> buffer containing register contents (see #0593)

Return: never returns

SeeAlso: AX=2528h

INT 21


INT 21 253C - Phar Lap 386/DOS-Extender VMM v3.0+ - SHRINK 386|VMM SWAP FILE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 253Ch

Return: CF clear

EAX = old size of swap file in bytes

EBX = new size of swap file in bytes

INT 21


INT 21 253D - Phar Lap 386/DOS-Extender v4.0+ - READ/WRITE IDT DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 253Dh

BL = interrupt number

ECX = direction (0 = read, 1 = write)

DS:EDX -> 8-byte buffer for descriptor

Return: CF clear if successful

    DS:EDX filled if reading

CF set on error

    EAX = error code (0082h if running under DPMI)

Desc:	access hardware-level IDT rather than the internal 386/DOS-Extender

  shadow IDT

Notes:	this call will always fail under DPMI because it is not possible to

  access the IDT

the descriptor is not checked when writing

this call can normally be used only by programs running in ring 0

  because the processor does not allow an interrupt to be vectored to

  a less privileged ring

INT 21


INT 21 253F - Phar Lap 386/DOS-Extender v6.0+ - ALLOCATE LDT DESCRIPTOR

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 253Fh

BX = LDT descriptor to allocate (0000h for any)

???

Return: ???

INT 21


INT 21 2540 - Phar Lap 386/DOS-Extender v6.0+ - FORCE ALIAS OF SEGMENT

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 2540h

???

Return: ???

INT 21


INT 21 2544 - Phar Lap 386/DOS-Extender v6.0+ - FREE DLL

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 2544h

???

Return: ???

INT 21


INT 21 2545 - Phar Lap 386/DOS-Extender v6.0+ - GET/SET PROCEDURE ADDRESS

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 2545h

ECX = direction (00h get, 01h set)

???

Return: ???

INT 21


INT 21 2546 - Phar Lap 386/DOS-Extender v6.0+ - GET MODULE HANDLE

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 2546h

???

Return: ???

INT 21


INT 21 25C0 - Phar Lap 386/DOS-Extender - ALLOCATE MS-DOS MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 25C0h

BX = number of 16-byte paragraphs of MS-DOS memory requested

Return: CF clear if successful

    AX = real-mode paragraph address of memory

CF set on error

    AX = error code

07h MS-DOS memory control blocks destroyed

08h insufficient memory

    BX = size in paragraphs of largest available memory block

SeeAlso: AX=25C1h,AX=25C2h

INT 21


INT 21 25C1 - Phar Lap 386/DOS-Extender - RELEASE MS-DOS MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 25C1h

CX = real-mode paragraph address of memory block to free

Return: CF clear if successful

    EAX destroyed

CF set on error

    AX = error code

07h MS-DOS memory control blocks destroyed

09h invalid memory block address in CX

SeeAlso: AX=25C0h,AX=25C2h

INT 21


INT 21 25C2 - Phar Lap 386/DOS-Extender - MODIFY MS-DOS MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 25C2h

BX = new requested block size in paragraphs

CX = real-mode paragraph address of memory block to modify

Return: CF clear if successful

    EAX destroyed

CF set on error

    AX = error code

07h MS-DOS memory control blocks destroyed

08h insufficient memory

09h invalid memory block address in CX

    BX = size in paragraphs of largest available memory block

SeeAlso: AX=25C0h,AX=25C1h

INT 21


INT 21 25C3 - Phar Lap 386/DOS-Extender - EXECUTE PROGRAM

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 25C3h

ES:EBX -> pointer to parameter block (see #0602)

DS:EDX -> pointer to ASCIZ program filename

Return: CF clear if successful

    all registers unchanged

CF set on error

    EAX = error code (see #0601)

INT 21


INT 21 26-- - DOS 1+ - CREATE NEW PROGRAM SEGMENT PREFIX

Category: D - DOS kernel

Inp.:

AH = 26h

DX = segment at which to create PSP (see #0603)

Notes:	new PSP is updated with memory size information; INTs 22h, 23h, 24h

  taken from interrupt vector table; the parent PSP field is set to 0

(DOS 2+) DOS assumes that the caller's CS is the segment of the PSP to

  copy

SeeAlso: AH=4Bh,AH=50h,AH=51h,AH=55h,AH=62h,AH=67h

INT 21


INT 21 27-- - DOS 1+ - RANDOM BLOCK READ FROM FCB FILE

Category: D - DOS kernel

Inp.:

AH = 27h

CX = number of records to read

DS:DX -> opened FCB (see #0574)

Return: AL = status

    00h successful, all records read

    01h end of file, no data read

    02h segment wrap in DTA, no data read

    03h end of file, partial read

[DTA] = records read from file

CX = number of records read (return AL = 00h or 03h)

Notes:	read begins at current file position as specified in FCB; the file

  position is updated after reading

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=21h,AH=28h,AH=3Fh

INT 21


INT 21 28-- - DOS 1+ - RANDOM BLOCK WRITE TO FCB FILE

Category: D - DOS kernel

Inp.:

AH = 28h

CX = number of records to write

DS:DX -> opened FCB (see #0574)

[DTA] = records to write

Return: AL = status

    00h successful

    01h disk full or file read-only

    02h segment wrap in DTA

CX = number of records written

Notes:	write begins at current file position as specified in FCB; the file

  position is updated after writing

if CX = 0000h on entry, no data is written; instead the file size is

  adjusted to be the same as the file position specified by the random

  record and record size fields of the FCB

if the data to be written is less than a disk sector, it is copied into

  a DOS disk buffer, to be written out to disk at a later time

not supported by MS Windows 3.0 DOSX.EXE DOS extender

SeeAlso: AH=22h,AH=27h,AH=40h,AH=59h

INT 21


INT 21 29-- - DOS 1+ - PARSE FILENAME INTO FCB

Category: D - DOS kernel

Inp.:

AH = 29h

AL = parsing options (see #0605)

DS:SI -> filename string (both '*' and '?' wildcards OK)

ES:DI -> buffer for unopened FCB

Return: AL = result code

    00h successful parse, no wildcards encountered

    01h successful parse, wildcards present

    FFh failed (invalid drive specifier)

DS:SI -> first unparsed character

ES:DI buffer filled with unopened FCB (see #0574)

Notes:	asterisks expanded to question marks in the FCB

all processing stops when a filename terminator is encountered

cannot be used with filespecs which include a path (DOS 2+)

Novell NetWare monitors the result code since an 'invalid drive' may

  signal an attempt to reconnect a network drive; if there are no

  connections to the specified drive, NetWare attempts to build a

  connection and map the drive to the SYS:LOGIN directory

SeeAlso: AH=0Fh,AH=16h,AH=26h

INT 21


INT 21 2A-- - DOS 1+ - GET SYSTEM DATE

Category: D - DOS kernel

Inp.:

AH = 2Ah

Return: CX = year (1980-2099)

DH = month

DL = day

---DOS 1.10+---

AL = day of week (00h=Sunday)

SeeAlso: AH=2Bh"DOS",AH=2Ch,AH=E7h,INT 1A/AH=04h,INT 2F/AX=120Dh

INT 21


INT 21 2B-- - DOS 1+ - SET SYSTEM DATE

Category: D - DOS kernel

Inp.:

AH = 2Bh

CX = year (1980-2099)

DH = month

DL = day

Return: AL = status

    00h successful

    FFh invalid date, system date unchanged

Note:	DOS 3.3+ also sets CMOS clock

SeeAlso: AH=2Ah,AH=2Dh,INT 1A/AH=05h

INT 21


INT 21 2B-- - AI Architects - ??? - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AH = 2Bh

CX = 4149h ('AI')

DX = 413Fh ('A?')

Return: AL <> FFh if installed

Note:	Borland's TKERNEL makes this call

INT 21


INT 21 2B-- - Super PC-Kwik v3.20+ - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AH = 2Bh

CX = 4358h ('CX')

Return: AL = FFh if PC-Kwik/PC-Cache not installed

AL = 00h if installed

    CF clear

    CX = 6378h ('cx')

    BX = ???

    DX = version (DH = major version, DL = binary minor version)

Note:	PC Tools PC-Cache v5.x and Qualitas Qcache v4.00 are OEM versions of

  Super PC-Kwik, and thus support this call (PC-Cache 5.1 corresponds

  to PC-Kwik v3.20)

SeeAlso: INT 13/AH=A0h,INT 13/AH=B0h,INT 16/AX=FFA5h/CX=1111h

Index:	PC-Cache;installation check|Qualitas Qcache;installation check

Index:	installation check;PC-Cache 5.x|installation check;Qualitas Qcache

INT 21


INT 21 2B-- - DESQview - INSTALLATION CHECK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AH = 2Bh

CX = 4445h ('DE')

DX = 5351h ('SQ')

AL = subfunction (DV v2.00+)

    01h get version

Return: BX = version (BH = major, BL = minor)

Note: early copies of v2.00 return 0002h

    02h get shadow buffer info, and start shadowing

Return: BH = rows in shadow buffer

BL = columns in shadow buffer

DX = segment of shadow buffer

    04h get shadow buffer info

Return: BH = rows in shadow buffer

BL = columns in shadow buffer

DX = segment of shadow buffer

    05h stop shadowing

Return: AL = FFh if DESQview not installed

Notes:	in DESQview v1.x, there were no subfunctions; this call only identified

  whether or not DESQview was loaded.  DESQview v2.52 performs function

  01h for all subfunction requests 0Ch and higher and appears to ignore

  all lower-numbered functions not listed here.

DESQview versions 2.50-2.52 are part of DESQview/X v1.0x; version 2.53

  is part of DESQview/X v1.10; and version 2.63 is part of DESQview/X

  v2.00.

BUG:	subfunction 05h does not appear to work correctly in DESQview 2.52

SeeAlso: INT 10/AH=FEh,INT 10/AH=FFh,INT 15/AX=1024h,INT 15/AX=DE30h

INT 21


INT 21 2B-- - ELRES v1.1 - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AH = 2Bh

CX = 454Ch ('EL')

DX = 5253h ('RS')

Return: ES:BX -> ELRES history structure (see #0606)

DX = DABEh (signature, DAve BEnnett)

Program: ELRES is an MS-DOS return code (errorlevel) recorder by David H.

  Bennett which stores recent errorlevel values, allows them to be

  retrieved for use in batch files, and can place them in an

  environment variable

SeeAlso: AH=4Bh"ELRES",AH=4Dh

INT 21


INT 21 2B01 - Quarterdeck DOS-UP.SYS v2.00 - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = 2B01h

CX = 444Dh ('DM')

DX = 4158h ('AX')

Return: AX = 0000h if installed

    BX = version??? (0002h)

    CX = 4845h ('HE')

    DX = 5245h ('RE')

    ES = DOS-UP driver segment

INT 21


INT 21 2B01 - TAME v2.10+ - INSTALLATION CHECK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2B01h

CX = 5441h ('TA')

DX = 4D45h ('ME')

---v2.60---

BH = ???

    00h skip ???, else do

Return: AL = 02h if installed

ES:DX -> data area in TAME-RES (see #0607,#0611,#0613)

Program: TAME is a shareware program by David G. Thomas which gives up CPU time

  to other partitions under a multitasker when the current partition's

  program incessantly polls the keyboard or system time

INT 21


INT 21 2B16 - VIRUS - "Maltese Amoeba" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 2B16h

CX = 0643h

Return: AX = 1603h if installed

INT 21


INT 21 2B44 - pcANYWHERE IV/LAN - INSTALLATION CHECK

Category: R - remote control/file access

Inp.:

AX = 2B44h ('D')

BX = 4D41h ('MA')

CX = 7063h ('pc')

DX = 4157h ('AW')

Return: AX = resident program

    4F4Bh ('OK') if large host resident

    6F6Bh ('ok') if small host resident

CX:DX -> API entry point (see #0614)

SeeAlso: INT 16/AH=79h

INT 21


INT 21 2B-- - WDTSR.COM - INSTALLATION CHECK

Category: G - debuggers/debugging tools

Inp.:

AH = 2Bh

CX = 6269h ('bi')

DX = 742Dh ('t-')

Return: AL = FFh if not installed

AL = 77h ('w') if WDTSR is installed

    CX = 6174h ('at')

    DX = 6368h ('ch')

    ES = resident code segment

    ES:DI -> identification and configuration data

Program: WDTSR is a driver for the bitWatch watchdog hardware by bit-design

  GmbH

SeeAlso: AH=2Bh/CX=6269h"bitFOSSI",INT 14/AH=14h"FOSSIL",INT 15/AH=C3h

INT 21


INT 21 2B-- - bitFOSS - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AH = 2Bh

CX = 6269h ('bi')

DX = 7446h ('tF')

Return: AL = FFh if not installed

AL = 4Fh ('O') if bitFOSS is installed

    CX = 5353h ('SS')

    DX = 494Ch ('IL')

    ES = resident code segment

    ES:DI -> identification data

Program: bitFOSS is a revision 5 FOSSIL driver

SeeAlso: AH=2Bh/CX=6269h"bitFOSSI",INT 11/AH=BCh

INT 21


INT 21 2B-- - bitFOSSI - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AH = 2Bh

CX = 6269h ('bi')

DX = 7449h ('tI')

Return: AL = FFh if not installed

AL = 53h ('S') if bitFOSSI is installed

    CX = 444Eh ('DN')

    DX = 2D46h ('-F')

    ES = resident code segment

    ES:DI -> identification data

Program: bitFOSSI is a revision 5 FOSSIL driver for ???'s ISDN board

SeeAlso: AH=2Bh/CX=6269h/DX=7446h,INT 11/AH=BCh

INT 21


INT 21 2C-- - DOS 1+ - GET SYSTEM TIME

Category: D - DOS kernel

Inp.:

AH = 2Ch

Return: CH = hour

CL = minute

DH = second

DL = 1/100 seconds

Note:	on most systems, the resolution of the system clock is about 5/100sec,

  so returned times generally do not increment by 1

on some systems, DL may always return 00h

SeeAlso: AH=2Ah,AH=2Dh,AH=E7h,INT 1A/AH=00h,INT 1A/AH=02h,INT 1A/AH=FEh

SeeAlso: INT 2F/AX=120Dh

INT 21


INT 21 2C-- - VIRUS - "Anti Pode 2.0" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 2Ch

Return: DL = F2h if resident

SeeAlso: AX=1812h"VIRUS",AX=2C2Ch

INT 21


INT 21 2C00 - SKUDO - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 2C00h

CX = 534Bh ('SK')

DX = 5544h ('UD')

BX = 4F21h ('O!')

Return: AX = 5349h ('SI') if installed

    CH = version number

    CL = subversion

Program: SKUDO is an antivirus TSR by Jordi Mas

INT 21


INT 21 2C2C - VIRUS - "LockJaw/Proto-T" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 2C2Ch

Return: AX = 0DCDh if resident

SeeAlso: AH=2Ch"VIRUS",AX=3000h"VIRUS"

INT 21


INT 21 2D-- - DOS 1+ - SET SYSTEM TIME

Category: D - DOS kernel

Inp.:

AH = 2Dh

CH = hour

CL = minute

DH = second

DL = 1/100 seconds

Return: AL = result

    00h successful

    FFh invalid time, system time unchanged

Note:	DOS 3.3+ also sets CMOS clock

SeeAlso: AH=2Bh"DOS",AH=2Ch,INT 1A/AH=01h,INT 1A/AH=03h,INT 1A/AH=FFh"AT&T"

INT 21


INT 21 2D01 - PC-Mix - INSTALLATION CHECK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2D01h

CX = 7820h ('X ')

DX = 6D69h ('MI')

Return: AL = 00h if installed

INT 21


INT 21 2E-- - DOS 1+ - SET VERIFY FLAG

Category: D - DOS kernel

Inp.:

AH = 2Eh

DL = 00h (DOS 1.x/2.x only)

AL = new state of verify flag

    00h off

    01h on

Notes:	default state at system boot is OFF

when ON, all disk writes are verified provided the device driver

  supports read-after-write verification

SeeAlso: AH=54h

INT 21


INT 21 2F-- - DOS 2+ - GET DISK TRANSFER AREA ADDRESS

Category: D - DOS kernel

Inp.:

AH = 2Fh

Return: ES:BX -> current DTA

Note:	under the FlashTek X-32 DOS extender, the pointer is in ES:EBX

SeeAlso: AH=1Ah

INT 21


INT 21 30-- - DOS 2+ - GET DOS VERSION

Category: D - DOS kernel

Inp.:

AH = 30h

---DOS 5+ ---

AL = what to return in BH

    00h OEM number (as for DOS 2.0-4.0x)

    01h version flag

Return: AL = major version number (00h if DOS 1.x)

AH = minor version number

BL:CX = 24-bit user serial number (most versions do not use this)

---if DOS <5 or AL=00h---

BH = MS-DOS OEM number (see #0619)

---if DOS 5+ and AL=01h---

BH = version flag

    bit 3: DOS is in ROM

    other: reserved (0)

Notes:	the OS/2 v1.x Compatibility Box returns major version 0Ah (10)

the OS/2 v2.x Compatibility Box returns major version 14h (20)

OS/2 Warp 3.0 Virtual DOS Machines report v20.30.

the Windows/NT DOS box returns version 5.00, subject to SETVER

DOS 4.01 and 4.02 identify themselves as version 4.00; use

  INT 21/AH=87h to distinguish between the original European MS-DOS 4.0

  and the later PC-DOS 4.0x and MS-DOS 4.0x

IBM DOS 6.1 reports its version as 6.00; use the OEM number to

  distinguish between MS-DOS 6.00 and IBM DOS 6.1 (there was never an

  IBM DOS 6.0)

MS-DOS 6.21 reports its version as 6.20; version 6.22 returns the

  correct value

the "Chicago" beta returns version 7.00 (reported in

  _Microsoft_Systems_Journal_, August 1994).

DR-DOS 5.0 and 6.0 report version 3.31; Novell DOS 7 reports IBM v6.00,

  which some software displays as IBM DOS v6.10 (because of the version

  mismatch in true IBM DOS, as mentioned above)

generic MS-DOS 3.30, Compaq MS-DOS 3.31, and others identify themselves

  as PC-DOS by returning OEM number 00h

the version returned under DOS 4.0x may be modified by entries in

  the special program list (see #0874 at AH=52h); the version returned

  under DOS 5+ may be modified by SETVER--use AX=3306h to get the true

  version number

SeeAlso: AX=3000h/BX=3000h,AX=3306h,AX=4452h,AH=87h,INT 15/AX=4900h

SeeAlso: INT 2F/AX=122Fh,INT 2F/AX=4010h,INT 2F/AX=E002h

INT 21


INT 21 30-- - Phar Lap 386/DOS-Extender, Intel Code Builder - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AH = 30h

EAX = 00003000h

EBX = 50484152h ("PHAR")

Return: AL = major DOS version

AH = minor DOS version

EAX bits 31-16 = 4458h ('DX') if 386/DOS-extender installed

    BL = ASCII major version number

EAX bits 31-16 = 4243h ('BC') if Intel Code Builder installed

    EDX = address of GDA

SeeAlso: AX=2501h,AX=FF00h,INT 2F/AX=F100h

INT 21


INT 21 30-- - VIRUS - "Possessed" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 30h

DX = ABCDh

Return: DX = DCBAh if installed

SeeAlso: AX=0D20h,AX=3000h"VIRUS",AX=30F1h

INT 21


INT 21 3000 - CTask 2.0+ - INSTALLATION CHECK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 3000h

BX = 1234h

DS:DX -> 8-byte version string (DX < FFF0h) "CTask21",00h for v2.1-2.2

Return: AL = DOS major version

AH = DOS minor version

CX:BX -> Ctask global data block

Program: CTask is a multitasking kernel for C written by Thomas Wagner

Note:	if first eight bytes of returned data block equal eight bytes passed

  in, CTask is resident

INT 21


INT 21 3000 - PC-MOS/386 v3.0 - INSTALLATION CHECK/GET VERSION

Category: O - other operating systems

Inp.:

AX = 3000h

BX = 3000h

CX = DX = 3000h

Return: AX = PC-MOS version

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=30h,INT 38/AH=02h,INT 38/AH=10h

INT 21


INT 21 3000 - VIRUS - "Jackal" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 3000h

BX = 614Ah ('aJ')

CX = 6B63h ('kc')

DX = 6C61h ('la')

Return: BX = ???

SeeAlso: AX=2C2Ch"VIRUS",AX=33DAh"VIRUS"

INT 21


INT 21 3022 - StopPrg v2.0 - INSTALLATION CHECK

Category: G - debuggers/debugging tools

Inp.:

AX = 3022h

Return: AX = DOS version (see AH=30h)

CX = 1112h if StopPrg installed

    BX = segment of resident code

Program: StopPrg is a resident program aborter by MAK-TRAXON's Prophet

Note:	StopPrg may be temporarily disabled by storing 9090h in the word at

  0000h:04FEh

INT 21


INT 21 30F1 - VIRUS - "Dutch-555"/"Quit 1992" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 30F1h

Return: AL = 00h if resident

SeeAlso: AH=30h/DX=ABCDh,AX=330Fh,AX=33DAh

INT 21


INT 21 30FF - DESQ??? - INSTALLATION CHECK

Category: - - (none)

Inp.:

AX = 30FFh

CX = 4445h ("DE")

DX = 5351h ("SQ")

Return: BH = 05h if installed

???

Note:	called by DUBLDISK.COM v2.6; this function is not supported by

  DESQview, so it may be for DESQview's precursor DESQ.

SeeAlso: AX=4404h"DUBLDISK"

INT 21


INT 21 31-- - DOS 2+ - TERMINATE AND STAY RESIDENT

Category: D - DOS kernel

Inp.:

AH = 31h

AL = return code

DX = number of paragraphs to keep resident

Return: never

Notes:	the value in DX only affects the memory block containing the PSP;

  additional memory allocated via AH=48h is not affected

the minimum number of paragraphs which will remain resident is 11h

  for DOS 2.x and 06h for DOS 3.0+

most TSRs can save some memory by releasing their environment block

  before terminating (see #0603 at AH=26h,AH=49h)

SeeAlso: AH=00h,AH=4Ch,AH=4Dh,INT 20,INT 22,INT 27

INT 21


INT 21 32-- - DOS 2+ - GET DOS DRIVE PARAMETER BLOCK FOR SPECIFIC DRIVE

Category: D - DOS kernel

Inp.:

AH = 32h

DL = drive number (00h = default, 01h = A:, etc)

Return: AL = status

    00h successful

DS:BX -> Drive Parameter Block (DPB) (see #0620) for specified

  drive

    FFh invalid or network drive

Notes:	the OS/2 compatibility box supports the DOS 3.3 version of this call

  except for the DWORD at offset 12h

this call updates the DPB by reading the disk; the DPB may be accessed

  via the DOS list of lists (see #0840 at AH=52h) if disk access is not

  desirable.

undocumented prior to the release of DOS 5.0; only the DOS 4.0+

  version of the DPB has been documented, however

supported by DR-DOS 3.41+; DR-DOS 3.41-6.0 return the same data as

  MS-DOS 3.31

SeeAlso: AH=1Fh,AH=52h

INT 21


INT 21 33-- - DOS 2+ - EXTENDED BREAK CHECKING

Category: D - DOS kernel

Inp.:

AH = 33h

AL = subfunction

    00h get current extended break state

Return: DL = current state, 00h = off, 01h = on

    01h set state of extended ^C/^Break checking

DL = new state

    00h off, check only on character I/O functions

    01h on, check on all DOS functions

Return: (Novell DOS 7) DL = old state of extended Break checks

Note:	under DOS 3.1+ and DR-DOS, this function does not use any of the

  DOS-internal stacks and may thus be called at any time

SeeAlso: AX=3302h

INT 21


INT 21 3302 - DOS 3.x+ internal - GET AND SET EXTENDED CONTROL-BREAK CHECKING STATE

Category: D - DOS kernel

Inp.:

AX = 3302h

DL = new state (00h for OFF, 01h for ON)

Return: DL = old state of extended BREAK checking

Notes:	this function does not use any of the DOS-internal stacks and may thus

  be called at any time; one possible use is modifying Control-Break

  checking from within an interrupt handler or TSR

not supported by DR-DOS through version 6.0; newly-supported by

  Novell DOS 7

SeeAlso: AH=33h

INT 21


INT 21 3303 - DOS 4.0+ - UNUSED

Category: D - DOS kernel

Inp.:

AX = 3303h

Return: nothing

Note:	this function and AX=3304h were apparently intended to support a

  code-page switching flag for OS/2 compatibility (OS/2 allows a file

  to have a code page as an attribute); however, this function has

  always been a NOP in public releases of DOS.	See _DOS_Internals_

  Chapter 2 for more information

SeeAlso: AX=3304h

INT 21


INT 21 3304 - DOS 4.0+ - UNUSED

Category: D - DOS kernel

Inp.:

AX = 3304h

Return: nothing

Note:	this function and AX=3303h were apparently intended to support a

  code-page switching flag for OS/2 compatibility (OS/2 allows a file

  to have a code page as an attribute); however, this function has

  always been a NOP in public releases of DOS.	See _DOS_Internals_

  Chapter 2 for more information

SeeAlso: AX=3303h

INT 21


INT 21 3305 - DOS 4.0+ - GET BOOT DRIVE

Category: D - DOS kernel

Inp.:

AX = 3305h

Return: DL = boot drive (1=A:,...)

Notes:	fully reentrant

NEC 9800-series PCs always call the boot drive A: and assign the other

  drive letters sequentially to the other drives in the system

this call is supported by OS/2 Warp 3.0, but not earlier versions of

  OS/2; it is also supported by Novell DOS 7

INT 21


INT 21 3306 - DOS 5+ - GET TRUE VERSION NUMBER

Category: D - DOS kernel

Inp.:

AX = 3306h

Return: BL = major version

BH = minor version

DL = revision (bits 2-0, all others 0)

DH = version flags

    bit 3: DOS is in ROM

    bit 4: DOS is in HMA

AL = FFh if true DOS version < 5.0

Notes:	this function always returns the true version number, unlike AH=30h,

  whose return value may be changed with SETVER

because of the conflict from the CBIS PowerLAN redirector (see next

  entry), programs should check whether BH is less than 100 (64h)

  and BL is at least 5 before accepting the returned BX as the true

  version number; however, even this is not entirely reliable when

  that redirector is loaded

fully reentrant

OS/2 v2.1 will return BX=0A14h (version 20.10)

the Windows NT DOS box returns BX=3205h (version 5.50)

Novell DOS 7 returns IBM v6.00, which some software displays as

  IBM DOS v6.10 (because of the version mismatch in true IBM DOS

  mentioned for INT 21/AH=30h)

BUG:	DR-DOS 5.0 and 6.0 return CF set/AX=0001h for INT 21/AH=33h

  subfunctions other than 00h-02h and 05h, while MS-DOS returns AL=FFh

  for invalid subfunctions

SeeAlso: AH=30h,INT 2F/AX=122Fh

INT 21


INT 21 3306 - CBIS POWERLAN - NETWORK REDIRECTOR - ???

Category: N - network

Inp.:

AX = 3306h

Return: AX = 3306h

BL = ??? (usually 00h)

BH = ??? (usually 00h or FFh)

Note:	unknown function, is in conflict with DOS 5+ version call

SeeAlso: AX=3306h"DOS"

INT 21


INT 21 330F - VIRUS - "Burghofer" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 330Fh

Return: AL = 0Fh if resident (DOS returns AL=FFh)

SeeAlso: AX=30F1h,AX=33DAh,AX=33E0h

INT 21


INT 21 3341 - Diet Disk v1.0 - INSTALLATION CHECK

Category: k - file/disk compression

Inp.:

AX = 3341h

Return: DX = 1234h if installed

    CX = resident code segment

Program: Diet Disk is a public domain transparent data file compressor by

  Barry Nance

INT 21


INT 21 33DA - VIRUS - "CoffeeShop" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 33DAh

Return: AH = A5h if resident

    AL = virus version

SeeAlso: AX=330Fh,AX=33E0h,AX=5643h"VIRUS"

INT 21


INT 21 33E0 - VIRUS - "Oropax" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 33E0h

Return: AL = E0h if resident (DOS returns AL=FFh)

SeeAlso: AX=330Fh,AX=33DAh,AX=357Fh

INT 21


INT 21 34-- - DOS 2+ - GET ADDRESS OF INDOS FLAG

Category: D - DOS kernel

Inp.:

AH = 34h

Return: ES:BX -> one-byte InDOS flag

Notes:	this function executes on the DOS stack, and thus cannot be called

  while another DOS function is already executing; you should use

  this function once at the beginning of the program and store the

  returned pointer rather than calling it when requiring DOS access

the value of InDOS is incremented whenever an INT 21 function begins

  and decremented whenever one completes

during an INT 28 call, it is safe to call some INT 21 functions even

  though InDOS may be 01h instead of zero

InDOS alone is not sufficient for determining when it is safe to

  enter DOS, as the critical error handling decrements InDOS and

  increments the critical error flag for the duration of the critical

  error.  Thus, it is possible for InDOS to be zero even if DOS is

  busy.

SMARTDRV 4.0 sets the InDOS flag while flushing its buffers to disk,

  then zeros it on completion

the critical error flag is the byte immediately following InDOS in

  DOS 2.x, and the byte BEFORE the InDOS flag in DOS 3.0+ and

  DR-DOS 3.41+ (except COMPAQ DOS 3.0, where the critical error flag

  is located 1AAh bytes BEFORE the critical section flag)

for DOS 3.1+, an undocumented call exists to get the address of the

  critical error flag (see AX=5D06h)

this function was undocumented prior to the release of DOS 5.0.

SeeAlso: AX=5D06h,AX=5D0Bh,INT 15/AX=DE1Fh,INT 28

INT 21


INT 21 35-- - DOS 2+ - GET INTERRUPT VECTOR

Category: D - DOS kernel

Inp.:

AH = 35h

AL = interrupt number

Return: ES:BX -> current interrupt handler

Note:	under DR-DOS 5.0+, this function does not use any of the DOS-internal

  stacks and may thus be called at any time

SeeAlso: AH=25h,AX=2503h

INT 21


INT 21 3501 - FlashTek X-32VM - ALLOCATE PROTECTED-MODE SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 3501h

Return: CF clear if successful

    BX = new selector

CF set on error (no more selectors available)

Note:	the new selector will be an expand-up read/write data selector with

  undefined base and limit

SeeAlso: AX=3502h,INT 31/AX=0000h

INT 21


INT 21 3502 - FlashTek X-32VM - DEALLOCATE PROTECTED-MODE SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 3502h

BX = selector

Return: CF clear if successful

CF set on error (invalid selector)

Note:	only selectors allocated via AX=3501h should be deallocated

SeeAlso: AX=3501h,INT 31/AX=0001h

INT 21


INT 21 3503 - FlashTek X-32VM - SET SELECTOR BASE ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 3503h

BX = selector

ECX = base address

Return: CF clear if successful

CF set on error (invalid selector)

SeeAlso: AX=3504h,AX=3505h,INT 31/AX=0007h

INT 21


INT 21 3504 - FlashTek X-32VM - GET SELECTOR BASE ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 3504h

BX = selector

Return: CF clear if successful

    ECX = absolute base address of selector

CF set on error (invalid selector)

SeeAlso: AX=3503h,INT 31/AX=0006h

INT 21


INT 21 3505 - FlashTek X-32VM - SET SELECTOR LIMIT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 3505h

BX = selector

ECX = desired limit

Return: CF clear if successful

    ECX = actual limit set

CF set on error (no more selectors available)

Note:	the limit will be rounded down to nearest 4K boundary if the requested

  limit is greater than 1MB

SeeAlso: AX=3503h,INT 31/AX=0008h

INT 21


INT 21 350A - FlashTek X-32VM - PHYSICAL ADDRESS MAPPING

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 350Ah

EBX = absolute physical address

ECX = size in bytes of area to map

Return: CF clear if successful

CF set on error (insufficient memory or service refused by DPMI host)

Notes:	should not make repeated calls for the same physical address

there is no provision for unmapping memory

INT 21


INT 21 350B - FlashTek X-32VM - UPDATE AND RETURN AVAILABLE FREE MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 350Bh

DS = default selector for DS

Return: CF clear

EAX = maximum amount of memory which can be allocated via AX=350Ch

SeeAlso: AX=350Ch

INT 21


INT 21 350C - FlashTek X-32VM - ALLOCATE A BLOCK OF MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 350Ch

ECX = size of block in bytes

DS = default DS

Return: CF clear if successful

    EAX = near pointer to new block

    EDX = new lowest legal value for stack

CF set on error (requested size not multiple of 4K)

SeeAlso: AX=350Bh,AX=350Dh

INT 21


INT 21 350D - FlashTek X-32VM - RESERVE BLOCK OF MEMORY FOR 32-BIT STACK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 350Dh

EBX = current ESP value

ECX = size of block in bytes

DS = default DS

Return: CF clear if successful

    EBX = new value for ESP

    EDX = suggested new limit for SS

CF set on error

Note:	this function should only be called once during initialization

SeeAlso: AX=350Bh,AX=350Ch

INT 21


INT 21 357F - VIRUS - "Agiplan"/"Month 4-6" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 357Fh

Return: DX = FFFFh if installed

SeeAlso: AX=33E0h,AX=3DFFh

INT 21


INT 21 36-- - DOS 2+ - GET FREE DISK SPACE

Category: D - DOS kernel

Inp.:

AH = 36h

DL = drive number (00h = default, 01h = A:, etc)

Return: AX = FFFFh if invalid drive

else

    AX = sectors per cluster

    BX = number of free clusters

    CX = bytes per sector

    DX = total clusters on drive

Notes:	free space on drive in bytes is AX * BX * CX

total space on drive in bytes is AX * CX * DX

"lost clusters" are considered to be in use

according to Dave Williams' MS-DOS reference, the value in DX is

  incorrect for non-default drives after ASSIGN is run

SeeAlso: AH=1Bh,AH=1Ch

INT 21


INT 21 3700 - DOS 2+ - "SWITCHAR" - GET SWITCH CHARACTER

Category: D - DOS kernel

Inp.:

AX = 3700h

Return: AL = status

    00h successful

DL = current switch character

    FFh unsupported subfunction

Desc:	Determine the character which is used to introduce command switches.

  This setting is ignored by MS-DOS commands in version 4.0 and higher,

  but is honored by many third-party programs and by Novell DOS 7

  external commands

BUG:	Novell DOS 7's COMMAND.COM fails to honor the SwitChar setting for

  internal commands even though COMMAND.COM honors it in its own

  command tail (i.e. COMMAND /?)

Notes:	documented in some OEM versions of some releases of DOS

supported by OS/2 compatibility box

always returns AL=00h/DL=2Fh for MS-DOS 5+ and DR-DOS 3.41-6.0

Novell DOS 7 COMMAND.COM indicates switch characters other than '/'

  by changing the first backslash (and only the first one) in the

  path it prints for PROMPT $p with a forward slash

SeeAlso: AX=3701h

INT 21


INT 21 3701 - DOS 2+ - "SWITCHAR" - SET SWITCH CHARACTER

Category: D - DOS kernel

Inp.:

AX = 3701h

DL = new switch character

Return: AL = status

    00h successful

    FFh unsupported subfunction

Notes:	documented in some OEM versions of some releases of DOS

supported by OS/2 compatibility box and Novell DOS 7

ignored by MS-DOS 5+ and DR-DOS 3.41-6.0; DR-DOS 6.0 and Novell DOS 7

  leave AX unchanged

SeeAlso: AX=3700h

INT 21


INT 21 37-- - DOS 2.x and 3.3+ only - "AVAILDEV" - SPECIFY \DEV\ PREFIX USE

Category: D - DOS kernel

Inp.:

AH = 37h

AL = subfunction

    02h get availdev flag

Return: DL = 00h \DEV\ must precede character device names

   = nonzero \DEV\ is optional

    03h set availdev flag

DL = new state

    00h	\DEV\ is mandatory

    nonzero	\DEV\ is optional

Return: AL = status

    00h successful

    FFh unsupported subfunction

Notes:	all versions of DOS from 2.00 allow \DEV\ to be prepended to device

  names without generating an error even if the directory \DEV does

  not actually exist (other paths generate an error if they do not

  exist).

although MS-DOS 3.3+, DR-DOS 3.41+, and Novell DOS 7 accept these

  calls, they have no effect, and AL=02h always returns DL=FFh (except

  for Novell DOS 7, which leaves AX unchanged for both subfunctions)

INT 21


INT 21 37D0 - DIET v1.43e - TSR INSTALLATION CHECK

Category: k - file/disk compression

Inp.:

AX = 37D0h

BX = 899Dh ('DI' + 'ET')

Return: AL = FFh if not present as TSR (default return value from DOS)

AX = 0000h if installed as a TSR

    CX = 899Dh

    DX = version ID

Program: DIET is a transparent file copressor/decompressor by Teddy Matsumoto

SeeAlso: AX=37D1h,AX=37D2h,AX=37D4h,AX=37D6h,AX=37DFh,AX=4BF0h,AX=4BF1h

INT 21


INT 21 37D1 - DIET v1.43e - GET DIET.EXE RESIDENT SEGMENT

Category: k - file/disk compression

Inp.:

AX = 37D1h

BX = 899Dh ('DI' + 'ET')

Return: AX = 0000h

CX = code segment of TSR part of DIET.EXE

DX = memory block segment of TSR DIET.EXE

(0000h if installed as device driver)

SeeAlso: AX=37D0h,AX=37DFh

INT 21


INT 21 37D2 - DIET v1.43e - GET TSR CONTROL FLAGS

Category: k - file/disk compression

Inp.:

AX = 37D2h

BX = 899Dh ('DI' + 'ET')

Return: AX = 0000h

DL = control flag (00h active, else disabled)

DH = skip flag (nonzero while TSR active)

SeeAlso: AX=37D0h,AX=37D3h,AX=37D4h

INT 21


INT 21 37D3 - DIET v1.43e - SET TSR CONTROL FLAGS

Category: k - file/disk compression

Inp.:

AX = 37D3h

BX = 899Dh ('DI' + 'ET')

DL = control flag (00h active, else disabled)

DH = skip flag (00h)

Return: AX = 0000h

SeeAlso: AX=37D0h,AX=37D2h,AX=37D5h

INT 21


INT 21 37D4 - DIET v1.43e - GET TSR OPTIONS

Category: k - file/disk compression

Inp.:

AX = 37D4h

BX = 899Dh ('DI' + 'ET')

Return: AX = 0000h

DX = TSR options (see #0621)

SeeAlso: AX=37D0h,AX=37D2h,AX=37D5h

INT 21


INT 21 37D5 - DIET v1.43e - SET TSR OPTIONS

Category: k - file/disk compression

Inp.:

AX = 37D5h

BX = 899Dh ('DI' + 'ET')

DX = TSR options (see #0621)

Return: AX = 0000h

Program: DIET is a transparent file copressor/decompressor by Teddy Matsumoto

SeeAlso: AX=37D0h,AX=37D3h,AX=37D4h

INT 21


INT 21 37D6 - DIET v1.43e - GET TEMPORARY DIRECTORY NAMES

Category: k - file/disk compression

Inp.:

AX = 37D6h

BX = 899Dh ('DI' + 'ET')

Return: AX = 0000h

DS:DX -> name of temporary directory or 0000h:0000h for current dir

SeeAlso: AX=37D0h,AX=37D7h

INT 21


INT 21 37D7 - DIET v1.43e - SET TEMPORARY DIRECTORY NAMES

Category: k - file/disk compression

Inp.:

AX = 37D7h

BX = 899Dh ('DI' + 'ET')

DS:DX -> ASCIZ name of temporary directory (max 61 chars)

0000h:0000h for current directory

Return: AX = 0000h

Note:	the specified directory name must include a drive letter and end with

  a backslash

SeeAlso: AX=37D0h,AX=37D6h

INT 21


INT 21 37DC - DIET v1.43e - SET ADDRESS OF EXTERNAL PROCEDURE

Category: k - file/disk compression

Inp.:

AX = 37DCh

BX = 899Dh ('DI' + 'ET')

DS:DX -> external procedure (see #0622)

Return: AX = 0000h

Note:	the resident code will call the specified external procedure at the

  beginning of decompression and when compression is exited on failure

SeeAlso: AX=37DDh

INT 21


INT 21 37DD - DIET v1.43e - RELEASE EXTERNAL PROCEDURE

Category: k - file/disk compression

Inp.:

AX = 37DDh

BX = 899Dh ('DI' + 'ET')

Program: DIET is a transparent file copressor/decompressor by Teddy Matsumoto

Note:	unlinks the external procedure specified by AX=37DCh

SeeAlso: AX=37DCh

INT 21


INT 21 37DE - DIET v1.43e - READ EMS STATUS

Category: k - file/disk compression

Inp.:

AX = 37DEh

BX = 899Dh ('DI' + 'ET')

Return: AX = 0000h

CX = EMS status

    0000h not used

    0001h used as work area

    0002h used for code and as work area

DX = EMM handle when EMS is in use

INT 21


INT 21 37DF - DIET v1.43e - UNLOAD TSR

Category: k - file/disk compression

Inp.:

AX = 37DFh

BX = 899Dh ('DI' + 'ET')

Return: AX = status

    0000h successful

    00FFh failed

Program: DIET is a transparent file copressor/decompressor by Teddy Matsumoto

SeeAlso: AX=37D0h

Index:	uninstall;DIET

INT 21


INT 21 38-- - DOS 2+ - GET COUNTRY-SPECIFIC INFORMATION

Category: D - DOS kernel

Inp.:

AH = 38h

--DOS 2.x--

AL = 00h get current-country info

DS:DX -> buffer for returned info (see #0623,#0624)

Return: CF set on error

    AX = error code (02h)

CF clear if successful

    AX = country code (MS-DOS 2.11 only)

    buffer at DS:DX filled

--DOS 3.0+--

AL = 00h for current country

AL = 01h thru 0FEh for specific country with code <255 (see #0625)

AL = 0FFh for specific country with code >= 255

   BX = 16-bit country code (see #0625)

DS:DX -> buffer for returned info (see #0624)

Return: CF set on error

    AX = error code (02h)

CF clear if successful

    AX = country code (Novell NWDOS v7.0)

    BX = country code

    DS:DX buffer filled

Note:	this function is not supported by the Borland DPMI host, but no error

  is returned; as a workaround, one should allocate a buffer in

  conventional memory with INT 31/AX=0100h and simulate an INT 21 with

  INT 31/AX=0300h

SeeAlso: AH=65h,INT 10/AX=5001h,INT 2F/AX=110Ch,INT 2F/AX=1404h

INT 21


INT 21 38-- - DOS 3.0+ - SET COUNTRY CODE

Category: D - DOS kernel

Inp.:

AH = 38h

DX = FFFFh

AL = 01h thru FEh for specific country with code <255

AL = FFh for specific country with code >= 255

   BX = 16-bit country code (see #0625)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

Note:	not supported by OS/2

SeeAlso: INT 2F/AX=1403h

INT 21


INT 21 39-- - DOS 2+ - "MKDIR" - CREATE SUBDIRECTORY

Category: D - DOS kernel

Inp.:

AH = 39h

DS:DX -> ASCIZ pathname

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (03h,05h) (see #0885 at AH=59h)

Notes:	all directories in the given path except the last must exist

fails if the parent directory is the root and is full

DOS 2.x-3.3 allow the creation of a directory sufficiently deep that

  it is not possible to make that directory the current directory

  because the path would exceed 64 characters

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

SeeAlso: AH=3Ah,AH=3Bh,AH=6Dh,AH=71h,AH=E2h/SF=0Ah,INT 2F/AX=1103h

SeeAlso: INT 60/DI=0511h

INT 21


INT 21 3A-- - DOS 2+ - "RMDIR" - REMOVE SUBDIRECTORY

Category: D - DOS kernel

Inp.:

AH = 3Ah

DS:DX -> ASCIZ pathname of directory to be removed

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (03h,05h,06h,10h) (see #0885 at AH=59h)

Notes:	directory must be empty (contain only '.' and '..' entries)

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

SeeAlso: AH=39h,AH=3Bh,AH=71h,AH=E2h/SF=0Bh,INT 2F/AX=1101h,INT 60/DI=0512h

INT 21


INT 21 3B-- - DOS 2+ - "CHDIR" - SET CURRENT DIRECTORY

Category: D - DOS kernel

Inp.:

AH = 3Bh

DS:DX -> ASCIZ pathname to become current directory (max 64 bytes)

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (03h) (see #0885 at AH=59h)

Notes:	if new directory name includes a drive letter, the default drive is

  not changed, only the current directory on that drive

changing the current directory also changes the directory in which

  FCB file calls operate

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

SeeAlso: AH=47h,AH=71h,INT 2F/AX=1105h

INT 21


INT 21 3C-- - DOS 2+ - "CREAT" - CREATE OR TRUNCATE FILE

Category: D - DOS kernel

Inp.:

AH = 3Ch

CX = file attributes (see #0626)

DS:DX -> ASCIZ filename

Return: CF clear if successful

    AX = file handle

CF set on error

    AX = error code (03h,04h,05h) (see #0885 at AH=59h)

Notes:	if a file with the given name exists, it is truncated to zero length

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

DR-DOS checks the system password or explicitly supplied password at

  the end of the filename against the reserved field in the directory

  entry before allowing access

SeeAlso: AH=16h,AH=3Dh,AH=5Ah,AH=5Bh,AH=93h,INT 2F/AX=1117h

INT 21


INT 21 3D-- - DOS 2+ - "OPEN" - OPEN EXISTING FILE

Category: D - DOS kernel

Inp.:

AH = 3Dh

AL = access and sharing modes (see #0627)

DS:DX -> ASCIZ filename

CL = attribute mask of files to look for (server call only)

Return: CF clear if successful

    AX = file handle

CF set on error

    AX = error code (01h,02h,03h,04h,05h,0Ch,56h) (see #0885 at AH=59h)

Notes:	file pointer is set to start of file

file handles which are inherited from a parent also inherit sharing

  and access restrictions

files may be opened even if given the hidden or system attributes

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

DR-DOS checks the system password or explicitly supplied password at

  the end of the filename against the reserved field in the directory

  entry before allowing access

sharing modes are only effective on local drives if SHARE is loaded

BUG:	Novell DOS 7 SHARE v1.00 would refuse file access in the cases in

  #0628 marked with [1] (read-only open of a read-only file

  which had previously been opened in compatibility mode); this was

  fixed in SHARE v1.01 of 09/29/94

SeeAlso: AH=0Fh,AH=3Ch,AX=4301h,AX=5D00h,INT 2F/AX=1116h,INT 2F/AX=1226h

INT 21


INT 21 3DFF - VIRUS - "JD-448" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 3DFFh

Return: AX = 4A44h if resident

SeeAlso: AX=357Fh,AX=4203h

INT 21


INT 21 3E-- - DOS 2+ - "CLOSE" - CLOSE FILE

Category: D - DOS kernel

Inp.:

AH = 3Eh

BX = file handle

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (06h) (see #0885 at AH=59h)

Note:	if the file was written to, any pending disk writes are performed, the

  time and date stamps are set to the current time, and the directory

  entry is updated

SeeAlso: AH=10h,AH=3Ch,AH=3Dh,INT 2F/AX=1106h,INT 2F/AX=1227h

INT 21


INT 21 3F-- - DOS 2+ - "READ" - READ FROM FILE OR DEVICE

Category: D - DOS kernel

Inp.:

AH = 3Fh

BX = file handle

CX = number of bytes to read

DS:DX -> buffer for data

Return: CF clear if successful

    AX = number of bytes actually read (0 if at EOF before call)

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Notes:	data is read beginning at current file position, and the file position

  is updated after a successful read

the returned AX may be smaller than the request in CX if a partial

  read occurred

if reading from CON, read stops at first CR

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

BUG:	Novell NETX.EXE v3.26 and 3.31 do not set CF if the read fails due to

  a record lock (see AH=5Ch), though it does return AX=0005h; this

  has been documented by Novell

SeeAlso: AH=27h,AH=40h,AH=93h,INT 2F/AX=1108h,INT 2F/AX=1229h

INT 21


INT 21 3F-- - Turbo Debug HARDWARE BREAKPOINTS - READ STATUS BLOCK

Category: G - debuggers/debugging tools

Inp.:

AH = 3Fh

BX = handle for character device "TDHDEBUG"

CX = number of bytes to read

DS:DX -> buffer for status block (see #0630)

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

SeeAlso: AH=40h"Turbo Debug"

INT 21


INT 21 3F-- - PC/TCP IPCUST.SYS - READ CONFIGURATION DATA

Category: N - network

Inp.:

AH = 3Fh

BX = handle for character device "$IPCUST"

CX = number of bytes to read

DS:DX -> buffer for configuration data (see #0635)

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Notes:	if less than the entire data is read or written, the next read/write

  continues where the previous one ended; IOCTL calls AX=4402h and

  AX=4403h both reset the location at which the next operation starts

  to zero

the data pointer is also reset to zero if the previous read or write

  reached or exceeded the end of the data, when the current function

  is read and the previous was write, or vice versa

v2.1+ uses a new configuration method, but allows the installation

  of IPCUST.SYS for backward compatibility with other software which

  must read the PC/TCP configuration

SeeAlso: AH=40h"IPCUST",AX=4402h"IPCUST",AX=4402h"FTPSOFT"

INT 21


INT 21 3F-- - WORKGRP.SYS - GET ENTRY POINT

Category: N - network

Inp.:

AH = 3Fh

BX = file handle for device "NET$HLP$"

CX = 0008h

DS:DX -> buffer for entry point record (see #0705)

Return: CF clear if successful

    AX = number of bytes actually read (0 if at EOF before call)

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Program: WORKGRP.SYS is the portion of Microsoft's Workgroup Connection which

  permits communication with PCs running Windows for Workgroups or

  LAN Manager

SeeAlso: AX=4402h"WORKGRP.SYS",INT 2F/AX=9400h

INT 21


INT 21 3F-- - BW-TCP - GET DRIVER INFO

Category: N - network

Inp.:

AH = 3Fh

BX = file handle for device "ETHDEV27"

CX = 002Bh

DS:DX -> buffer for driver info (see #0636)

Return: CF clear if successful

    AX = number of bytes actually read (0 if at EOF before call)

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Program: BW-TCP is a TCP/IP protocol stack by Beame & Whiteside Software

Notes:	the B&W socket library performs an INT 21/AX=4401h with DX=0060h before

  making this call to retrieve the driver information; one should also

  call the private API interrupt with AH=15h

the installation check for the TCP/IP stack is to test for the

  existence of the character device UDP-IP10

SeeAlso: INT 14/AH=56h,INT 62/AH=00h"ETHDEV",INT 63/AH=03h,INT 64/AH=00h

Index:	installation check;BW-TCP hardware driver

Index:	installation check;BW-TCP TCPIP.SYS

INT 21


INT 21 3F-- - Trusted Access - NB.SYS - GET STATE

Category: y - security

Inp.:

AH = 3Fh

BX = file handle for device "$$NB$$NB"

CX = 0002h (size of state)

DS:DX -> buffer for state record (see #0638)

Return: CF clear if successful

    AX = number of bytes actually read (0 if at EOF before call)

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Program: Trusted Access is a security and access-control package by Lassen

  Software, Inc.; NB.SYS is a device driver to prevent the user from

  terminating CONFIG.SYS or AUTOEXEC.BAT with Ctrl-Break

SeeAlso: AH=40h"NB.SYS",AX=4101h

INT 21


INT 21 3F-- - IFSHLP.SYS - GET ENTRY POINT

undocumented function

Category: - - (none)

Inp.:

AH = 3Fh

BX = file handle for device "IFS$HLP$"

CX = 0008h (size of buffer in bytes)

DS:DX -> buffer for entry point record (see #0639)

Return: CF clear if successful

    AX = number of bytes actually read (0 if at EOF before call)

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Program: IFSHLP.SYS is a support driver for Microsoft Windows for Workgroups

SeeAlso: AX=4402h"IFSHLP"

INT 21


INT 21 40-- - DOS 2+ - "WRITE" - WRITE TO FILE OR DEVICE

Category: D - DOS kernel

Inp.:

AH = 40h

BX = file handle

CX = number of bytes to write

DS:DX -> data to write

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Notes:	if CX is zero, no data is written, and the file is truncated or

  extended to the current position

data is written beginning at the current file position, and the file

  position is updated after a successful write

the usual cause for AX < CX on return is a full disk

BUG:	a write of zero bytes will appear to succeed when it actually failed

  if the write is extending the file and there is not enough disk

  space for the expanded file (DOS 5.0-6.0); one should therefore check

  whether the file was in fact extended by seeking to 0 bytes from

  the end of the file (INT 21/AX=4202h/CX=0/DX=0)

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

SeeAlso: AH=28h,AH=3Fh,AH=93h,INT 2F/AX=1109h

INT 21


INT 21 40-- - Turbo Debug HARDWARE BREAKPOINTS - SEND CMD TO HARDWARE BRKPNT DRIVER

Category: G - debuggers/debugging tools

Inp.:

AH = 40h

BX = handle for character device "TDHDEBUG"

CX = number of bytes to write

DS:DX -> hardware breakpoint command (see #0641)

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Note:	results are retrieved by reading from the device

SeeAlso: AH=3Fh"Turbo Debug"

INT 21


INT 21 40-- - PC/TCP IPCUST.SYS - WRITE CONFIGURATION DATA

Category: N - network

Inp.:

AH = 40h

BX = handle for character device "$IPCUST"

CX = number of bytes to write

DS:DX -> buffer for configuration data (AH=3Fh"IPCUST")

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Notes:	if less than the entire data is read or written, the next read/write

  continues where the previous one ended; IOCTL calls AX=4402h and

  AX=4403h both reset the location at which the next operation starts

  to zero

the data pointer is also reset to zero if the previous read or write

  reached or exceeded the end of the data, when the current function

  is read and the previous was write, or vice versa

v2.1+ uses a new configuration method, but allows the installation

  of IPCUST.SYS for backward compatibility with other software which

  must read the PC/TCP configuration

SeeAlso: AH=3Fh"IPCUST",AX=4402h"IPCUST"

INT 21


INT 21 40-- - Trusted Access - NB.SYS - SET STATE

undocumented function

Category: y - security

Inp.:

AH = 40h

BX = handle for character device "$$NB$$NB"

DS:DX -> state record (see #0638)

CX ignored

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (05h,06h) (see #0885 at AH=59h)

Program: Trusted Access is a security and access-control package by Lassen

  Software, Inc.; NB.SYS is a device driver to prevent the user from

  terminating CONFIG.SYS or AUTOEXEC.BAT with Ctrl-Break

SeeAlso: AH=3Fh"NB.SYS"

INT 21


INT 21 4000 - FARTBELL.EXE - INSTALLATION CHECK

Category: j - joke programs

Inp.:

AX = 4000h

BX = 0002h

CX = 0000h

DS:DX = 0000h:0000h

Return: CF clear if installed

    AX = CS of resident code

Program: FARTBELL is a joke program by Guenther Thiele which makes various

  noises when programs output a bell

SeeAlso: AX=4001h

INT 21


INT 21 4001 - FARTBELL.EXE - FORCE NOISE

Category: j - joke programs

Inp.:

AX = 4001h

BX = 0002h

CX = 0000h

DS:DX = 0000h:0000h

Program: FARTBELL is a joke program by Guenther Thiele which makes various

  noises when programs output a bell

SeeAlso: AX=4000h

INT 21


INT 21 41-- - DOS 2+ - "UNLINK" - DELETE FILE

Category: D - DOS kernel

Inp.:

AH = 41h

DS:DX -> ASCIZ filename (no wildcards, but see notes)

CL = attribute mask for deletion (server call only, see notes)

Return: CF clear if successful

    AX destroyed (DOS 3.3) AL seems to be drive of deleted file

CF set on error

    AX = error code (02h,03h,05h) (see #0885 at AH=59h)

Notes:	(DOS 3.1+) wildcards are allowed if invoked via AX=5D00h, in which case

  the filespec must be canonical (as returned by AH=60h), and only

  files matching the attribute mask in CL are deleted

DR-DOS 5.0-6.0 returns error code 03h if invoked via AX=5D00h

DOS does not erase the file's data; it merely becomes inaccessible

  because the FAT chain for the file is cleared

deleting a file which is currently open may lead to filesystem

  corruption.  Unless SHARE is loaded, DOS does not close the handles

  referencing the deleted file, thus allowing writes to a nonexistant

  file.

under DRDOS and DR Multiuser DOS, this function will fail if the file

  is currently open

under the FlashTek X-32 DOS extender, the pointer is in DS:EDX

BUG:	DR-DOS 3.41 crashes if called via AX=5D00h

SeeAlso: AH=13h,AX=4301h,AX=4380h,AX=5D00h,AH=60h,AH=71h,AX=F244h

SeeAlso: INT 2F/AX=1113h

INT 21


INT 21 4101 - SoftLogic Data Guardian - ???

Category: y - security

Inp.:

AX = 4101h

DX = FFFEh

Return: AX = 0000h if installed

Note:	resident code sets several internal variables on this call

SeeAlso: AH=3Fh"NB.SYS",INT 16/AX=FFA3h/BX=0000h

INT 21


INT 21 42-- - DOS 2+ - "LSEEK" - SET CURRENT FILE POSITION

Category: D - DOS kernel

Inp.:

AH = 42h

AL = origin of move

    00h start of file

    01h current file position

    02h end of file

BX = file handle

CX:DX = offset from origin of new file position

Return: CF clear if successful

    DX:AX = new file position in bytes from start of file

CF set on error

    AX = error code (01h,06h) (see #0885 at AH=59h)

Notes:	for origins 01h and 02h, the pointer may be positioned before the

  start of the file; no error is returned in that case, but subsequent

  attempts at I/O will produce errors

if the new position is beyond the current end of file, the file will

  be extended by the next write (see AH=40h)

BUG:	using this method to grow a file from zero bytes to a very large size

  can corrupt the FAT in some versions of DOS; the file should first

  be grown from zero to one byte and then to the desired large size

SeeAlso: AH=24h,INT 2F/AX=1228h

INT 21


INT 21 4203 - VIRUS - "Shake" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4203h

Return: AX = 1234h if resident

SeeAlso: AX=3DFFh,AX=4243h

INT 21


INT 21 4243 - VIRUS - "Invader" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4243h

Return: AX = 5678h if resident

SeeAlso: AX=4203h,AX=4B04h

INT 21


INT 21 4300 - DOS 2+ - GET FILE ATTRIBUTES

Category: D - DOS kernel

Inp.:

AX = 4300h

DS:DX -> ASCIZ filename

Return: CF clear if successful

    CX = file attributes (see #0643)

    AX = CX (DR-DOS 5.0)

CF set on error

    AX = error code (01h,02h,03h,05h) (see #0885 at AH=59h)

Notes:	under the FlashTek X-32 DOS extender, the filename pointer is in DS:EDX

under DR-DOS 3.41 and 5.0, attempts to change the subdirectory bit are

  simply ignored without an error

BUG:	Windows for Workgroups returns error code 05h (access denied) instead

  of error code 02h (file not found) when attempting to get the

  attributes of a nonexistent file.  This causes open() with O_CREAT

  and fopen() with the "w" mode to fail in Borland C++.

SeeAlso: AX=4301h,AX=4310h,AH=71h,AH=B6h,INT 2F/AX=110Fh,INT 60/DI=0517h

INT 21


INT 21 4301 - DOS 2+ - "CHMOD" - SET FILE ATTRIBUTES

Category: D - DOS kernel

Inp.:

AX = 4301h

CX = new file attributes (see #0643)

DS:DX -> ASCIZ filename

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,02h,03h,05h) (see #0885 at AH=59h)

Notes:	will not change volume label or directory attribute bits, but will

  change the other attribute bits of a directory (the directory

  bit must be cleared to successfully change the other attributes of a

  directory, but the directory will not be changed to a normal file as

  a result)

MS-DOS 4.01 reportedly closes the file if it is currently open

for security reasons, the Novell NetWare execute-only bit can never

  be cleared; the file must be deleted and recreated

under the FlashTek X-32 DOS extender, the filename pointer is in DS:EDX

DOS 5.0 SHARE will close the file if it is currently open in sharing-

  compatibility mode, otherwise a sharing violation critical error is

  generated if the file is currently open

SeeAlso: AX=4300h,AX=4311h,AH=71h,INT 2F/AX=110Eh

INT 21


INT 21 4302 - DOS 7 (Chicago) - GET VOLUME INFORMATION

Category: D - DOS kernel

Inp.:

AX = 4302h

details not yet available

SeeAlso: AH=71h,AH=72h

INT 21


INT 21 4302 - DR-DOS 3.41+ internal - GET ACCESS RIGHTS

Category: O - other operating systems

Inp.:

AX = 4302h

DS:DX -> ASCIZ pathname

Return: CF clear if successful

    CX = access rights (see #0644)

    AX = CX (DR-DOS 5.0)

CF set on error

    AX = error code

Desc:	Determine which operations the calling program may perform on a

  specified file without being required to provide a password.

Notes:	this protection scheme has been coordinated on all current Digital

  Research/Novell operating systems (DR-DOS 3.41+, DRMDOS 5.x, and

  FlexOS 2+)

this function is documented in DR-DOS 6.0 and corresponds to the

  "Get/Set File Attributes" function, subfunction 2, documented in

  Concurrent DOS.

only FlexOS actually uses the "execution" bits; DR-DOS 3.41+ treats

  them as "read" bits.

DR-DOS 3.41-5.x only use bits 0-3.  Only DR-DOS 6.0 using a

  DRMDOS 5.x security system allowing for users and groups uses bits

  4-11.

SeeAlso: AX=4303h

INT 21


INT 21 4303 - DR-DOS 3.41+ internal - SET ACCESS RIGHTS AND PASSWORD

Category: O - other operating systems

Inp.:

AX = 4303h

CX = access rights

     bits 11-0: access rights (see #0644)

     bit 15: new password is to be set

DS:DX -> ASCIZ pathname

[DTA] = new password if CX bit 15 is set (blank-padded to 8 characters)

Return: CF clear if successful

CF set on error

    AX = error code

Notes:	if the file is already protected, the old password must be added after

  the pathname, separated by a ";"

this function is documented in DR-DOS 6.0 and corresponds to the

  "Get/Set File Attributes" function, subfunction 3, documented in

  Concurrent DOS.

SeeAlso: AH=0Fh,AH=17h,AX=4302h"DR-DOS",AX=4305h,AX=4454h

INT 21


INT 21 4304 - DR-DOS 5.0-6.0 internal - GET ENCRYPTED PASSWORD

undocumented function

Category: O - other operating systems

Inp.:

AX = 4304h

DS:DX -> ASCIZ filename

???

Return: CF clear if successful

    CX = AX = 0000h if no password assigned to file

CF set on error

    AX = error code (see #0885 at AH=59h)

Note:	this function is only supported by DR-DOS 5.0 and 6.0 and DRMDOS 5.1

SeeAlso: AX=4303h,AX=4305h

INT 21


INT 21 4305 - DR-DOS 5.0-6.0 internal - SET EXTENDED FILE ATTRIBUTES

undocumented function

Category: O - other operating systems

Inp.:

AX = 4305h

DS:DX -> ASCIZ filename

???

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at AH=59h)

Desc:	this function allows the extended attributes, and optionally the

  encrypted password, of a file to be set.

Note:	this function is only supported by DR-DOS 5.0 and 6.0 and DRMDOS 5.1

SeeAlso: AX=4304h,AX=4311h

INT 21


INT 21 4306 - DR-DOS 6.0 - GET FILE OWNER

Category: O - other operating systems

Inp.:

AX = 4306h

DS:DX -> ASCIZ filename

Return: CF clear if successful

    AX = CX = value set with AX=4307h

CF set on error

    AX = error code (see #0885 at AH=59h)

SeeAlso: AX=4307h

INT 21


INT 21 4307 - DR-DOS 6.0 - SET FILE OWNER

Category: O - other operating systems

Inp.:

AX = 4307h

CX = ??? (owner identification number?)

DS:DX -> ASCIZ filename

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at AH=59h)

SeeAlso: AX=4306h

INT 21


INT 21 4310 - Banyan VINES 2.1+ - GET EXTENDED FILE ATTRIBUTES

Category: N - network

Inp.:

AX = 4310h

DS:DX -> ASCIZ filename

Return: CF clear if successful

    CH = attributes (see #0645)

CF set on error

    AX = error code (01h,02h,03h,05h) (see #0885 at AH=59h)

Note:	the filename may be a directory but must be on a VINES file service

SeeAlso: AX=4300h,AX=4311h,AH=B6h,INT 2F/AX=110Fh

INT 21


INT 21 4311 - Banyan VINES 2.1+ - SET EXTENDED FILE ATTRIBUTES

Category: N - network

Inp.:

AX = 4311h

CH = new attributes (see #0645)

DS:DX -> ASCIZ filename

Return: CF clear if successful

CF set on error

    AX = error code (01h,02h,03h,05h) (see #0885 at AH=59h)

Note:	the filename may be a directory but must be on a VINES file service

SeeAlso: AX=4301h,AX=4305h,AX=4310h,INT 2F/AX=110Eh

INT 21


INT 21 4321 - Q87, Q387 - INSTALLATION CHECK

available only in real or V86 mode

Category: u - emulators

Inp.:

AX = 4321h

BX = 0000h

EAX = 87654321h (entire EAX value is required, not just AX)

Return: EAX = 12345678h if installed

Program: Q387 (renamed to Q87 as of v3.7) is a math coprocessor emulator from

  Quickware

Note:	this function is available only in virtual-86 mode

SeeAlso: AX=4321h/BX=0001h,AX=4321h/BX=0002h

INT 21


INT 21 4321 - Q87, Q387 - ENABLE EMULATOR

available only in real or V86 mode

Category: u - emulators

Inp.:

AX = 4321h

BX = 0001h

EAX = 87654321h (entire EAX value is required, not just AX)

Desc:	enable the emulator by setting the CPU MSW's EM bit and updating

  the BIOS equipment list

Note:	this function is available only in virtual-86 mode

SeeAlso: AX=4321h/BX=0000h,AX=4321h/BX=0002h

INT 21


INT 21 4321 - Q87, Q387 - DISABLE EMULATOR

available only in real or V86 mode

Category: u - emulators

Inp.:

AX = 4321h

BX = 0002h

EAX = 87654321h (entire EAX value is required, not just AX)

Desc:	disable the emulator by clearing the CPU MSW's EM bit and updating

  the BIOS equipment list

Note:	this function is available only in virtual-86 mode

SeeAlso: AX=4321h/BX=0000h,AX=4321h/BX=0001h

INT 21


INT 21 4380 - Novell DOS 7 - UNDELETE PENDING DELETE FILE

Category: O - other operating systems

Inp.:

AX = 4380h

???

Return: ???

SeeAlso: AH=41h,AX=4381h

INT 21


INT 21 4381 - Novell DOS 7 - PURGE PENDING DELETE FILE

Category: O - other operating systems

Inp.:

AX = 4381h

???

Return: ???

SeeAlso: AH=41h,AX=4380h

INT 21


INT 21 4400 - DOS 2+ - IOCTL - GET DEVICE INFORMATION

Category: D - DOS kernel

Inp.:

AX = 4400h

BX = handle

Return: CF clear if successful

    DX = device information word (see #0646)

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h) (see #0885 at AH=59h)

Notes:	value in DH corresponds to high byte of device driver's attribute word

  if handle refers to a character device

Novell NetWare reportedly does not return a drive number in bits 5-0

  for a disk file

SeeAlso: AX=4401h,INT 2F/AX=122Bh


INT 21 4401 - DOS 2+ - IOCTL - SET DEVICE INFORMATION

Category: D - DOS kernel

Inp.:

AX = 4401h

BX = handle (must refer to character device)

DX = device information word (see #0646)

    (DH must be zero)

Return: CF clear if successful

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4400h,INT 2F/AX=122Bh


INT 21 4402 - DOS 2+ - IOCTL - READ FROM CHARACTER DEVICE CONTROL CHANNEL

Category: D - DOS kernel

Inp.:

AX = 4402h

BX = file handle referencing character device

CX = number of bytes to read

DS:DX -> buffer

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	format of data is driver-specific (see below for some specific cases)

SeeAlso: AX=4400h,AX=4403h,AX=4404h,INT 2F/AX=122Bh


INT 21 4402 - Network Driver Interface Specification (NDIS) 2.0.1 - PROTOCOL MANAGER

Category: N - network

Inp.:

AX = 4402h

BX = file handle for device "PROTMAN$"

CX = 000Eh (size of request block)

DS:DX -> request block (see #0647,#0648,#0649,#0650,#0651,#0655,#0656)

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4402h"FTPSOFT"


INT 21 4402 - IBM SYSTEM 36/38 WORKSTATION EMULATION - VDI.SYS - GET ???

undocumented function

Category: I - IBM workstation/terminal emulators

Inp.:

AX = 4402h

BX = handle for character device "GDMS"

CX = number of bytes to read (>= 4)

DS:DX -> buffer (see #0667)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX = number of bytes read


INT 21 4402 - LASTBYTE.SYS v1.19 - IOCTL - GET ??? TABLE

undocumented function

Category: m - memory management

Inp.:

AX = 4402h

BX = handle for device "LA$TBYTE"

CX = 0004h

DS:DX -> DWORD to hold address of 39-byte table of ???

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX = number of bytes read

Program: LASTBYTE.SYS is part of the shareware "The Last Byte" memory

  management package by Key Software Products

SeeAlso: AX=4402h"HIGHUMM"


INT 21 4402 - HIGHUMM.SYS v1.17+ - IOCTL - GET API ADDRESS

Category: m - memory management

Inp.:

AX = 4402h

BX = handle for device "KSP$UMM"

CX = 0004h

DS:DX -> DWORD to hold entry point (see #0668)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX = number of bytes read

Program: HIGHUMM.SYS is part of the shareware "The Last Byte" memory management

  package by Key Software Products

SeeAlso: AX=4402h"LASTBYTE"


INT 21 4402 - SMARTDRV.SYS v3.x only - IOCTL - GET CACHE STATUS

Category: c - caches/spoolers

Inp.:

AX = 4402h

BX = file handle for device "SMARTAAR"

CX = number of bytes to read (min 28h)

DS:DX -> buffer for status record (see #0669)

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	NCache2 (from the Norton Utilities v8.0) attempts to support this

  interface, but does not do so correctly, often hanging the system;

  one should use the SmartDrive v4.x or NCache private interfaces

  (see INT 2F/AX=4A10h/BX=0000h,INT 2F/AX=FE00h/DI=4E55h)

SeeAlso: AX=4403h"SMARTDRV",INT 2F/AX=4A10h/BX=0000h


INT 21 4402 - CD-ROM device driver - IOCTL INPUT

Category: d - disk I/O enhancements

Inp.:

AX = 4402h

BX = file handle referencing character device for CD-ROM driver

CX = number of bytes to read

DS:DX -> control block (see #0671)

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	the data returned depends on the first byte of the control block; the

  remainder of the control block is filled by the driver

SeeAlso: AX=4403h"CD-ROM",INT 2F/AX=0802h


INT 21 4402 - Quarterdeck - QEMM-386 v5+ - GET API ENTRY POINT

Category: m - memory management

Inp.:

AX = 4402h

BX = file handle for device "QEMM386$"

CX = 0004h

DS:DX -> DWORD buffer for API entry point

Return: CF clear if successful

    buffer filled (see INT 67/AH=3Fh for entry point parameters)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	Quarterdeck recently (June 1993) documented this function, but the

  documentation incorrectly states that it is only available for

  QEMM 6+

SeeAlso: AX=4402h"HOOKROM",INT 2F/AX=D201h/BX=5145h,INT 67/AH=3Fh


INT 21 4402 - Quarterdeck - HOOKROM.SYS - GET HOOKED VECTOR TABLE

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 4402h

BX = file handle for device "HOOKROM$"

CX = 0004h

DS:DX -> DWORD buffer for address of hooked vector table (see #0673)

Return: CF clear if successful

    DS:DX buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4402h/SF=01h


INT 21 4402 - Advanced SCSI Programming Interface (ASPI) - INTERFACE

Category: d - disk I/O enhancements

Inp.:

AX = 4402h

BX = file handle for device "SCSIMGR$"

CX = 0004h or 0005h (see notes)

DS:DX -> buffer for result (see #0674), set to zeros before call

Return: CF clear if successful

    AX = 0004h or 0005h (see notes)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	the variant of the call requesting five bytes is an UNDOCUMENTED

  extension supported by Adaptec's ASPI2DOS.SYS, ASPI4DOS.SYS, and

  ASPI7DOS.SYS; if made of a host manager which does not support the

  variant, only four bytes will be returned.  If the variant is

  supported, Adaptec's WINASPI.DLL assumes that the host manager is

  an "advanced" one which operates in either real or protected mode

  (and thus does not require a DPMI INT 31/AX=0301h call to be invoked

  from protected mode).	 Support of the five-byte variant also appears

  to imply that an advanced ASPI host manager uses no temporary

  storage space except the SRB (see #0676) and the stack, and that it

  is fully reentrant.

if called with a standard request for four bytes, even Adaptec's

  advanced drivers return only the requested four bytes containing the

  ASPI entry point address

the function address is called with the address of a SCSI Request

  Block (see #0676) on the stack and the caller must clean up the

  stack

SeeAlso: AX=440Ch"ASPITAPE",INT 11/AH=FFh"WD7000"


INT 21 4402 - Qualitas 386MAX v6.00+ - IOCTL INPUT - GET STATE

undocumented function

Category: m - memory management

Inp.:

AX = 4402h

BX = file handle for device "386MAX$$"

CX = number of bytes to read

DS:DX -> BYTE 03h followed by 386MAX state buffer (see #0687)

Return: CF clear if successful

    buffer at DS:DX+1 filled

    AX = number of bytes actually copied

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	if the value given in CX is less than the size of the state record

  (5Ah for v6.01, 66h for v7.00), only a partial state record will be

  returned

the state is 40h bytes for 386MAX (actually ASTEMM) v2.20 ("386MAX$$"

  did not exist yet, use "QMMXXXX0" and then "EMMXXXX0" instead) and

  56h bytes for v5.11.

to invoke 386MAX API functions, push DX onto the stack, load DX with

  the word at offset 25h in the returned state, load all other

  registers as needed for the desired function, and execute an

  OUT DX,AL or OUT DX,AX; DX will be set to the pushed value on return

  if it is not otherwise modified by the API function.	For safety,

  in case a function is not supported or 386MAX is not present, SP

  should be saved and restored around the API call.

Windows 3.1 Standard mode, LAN Manager, and Windows for Workgroups all

  use the 386MAX API; LAN Manager and Windows for Workgroups reportedly

  make some calls incorrectly

SeeAlso: AX=4403h/SF=03h"386MAX",INT 67/AH=3Fh


INT 21 4402 - PGS1600.DEV - IOCTL - GET CONFIGURATION INFO

Category: V - video

Inp.:

AX = 4402h

BX = file handle for device "PGS1600$"

CX = 0018h (size of buffer)

DS:DX -> configuration buffer (see #0704)

Return: CF clear if successful

    buffer filled

    AX = number of bytes actually copied

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: PGS1600.DEV is a device driver for the Cornerstone Technology PG1600

  display adapter, which provides a 1600x1200 monochrome display as

  well as one of two emulations, MDA or CGA.

SeeAlso: AX=4403h"PGS1600"


INT 21 4402 - PC/TCP IPCUST.SYS - RESET CONFIGURATION DATA READ POINTER

Category: N - network

Inp.:

AX = 4402h

BX = file handle referencing device "$IPCUST"

CX, DS:DX ignored

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	there are a total of 378h bytes of configuration data for IPCUST.SYS

  version 2.05.	 If less than the entire data is read or written,

  the next read/write continues where the previous one ended; this

  call and AX=4403h both reset the location at which the next

  operation starts to zero

v2.1+ uses a new configuration method, but allows the installation

  of IPCUST.SYS for backward compatibility with other software which

  must read the PC/TCP configuration

SeeAlso: AH=3Fh"IPCUST",AH=40h"IPCUST",AX=4403h"IPCUST"


INT 21 4402 - WORKGRP.SYS - GET API ENTRY POINT

Category: N - network

Inp.:

AX = 4402h

BX = file handle for device "NET$HLP$"

CX = 0008h

DS:DX -> buffer for entry point record (see #0705)

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code

Program: WORKGRP.SYS is the portion of Microsoft's Workgroup Connection which

  permits communication with PCs running Windows for Workgroups or

  LAN Manager

SeeAlso: AH=3Fh"WORKGRP.SYS"


INT 21 4402 - 10NET v5.0 - 10BEUI.DOS - API

Category: N - network

Inp.:

AX = 4402h

BX = file handle referencing device "10BEUI$"

DS:DX -> parameter record (see #0715)

CX ignored

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4402h"10MEMMGR",INT 6F/AH=00h"10NET"


INT 21 4402 - 10NET v5.0 - 10MEMMGR.SYS - API

Category: N - network

Inp.:

AX = 4402h

BX = file handle referencing device "MEMMGR0$"

DS:DX -> 6-byte buffer for interface info (see #0716)

CX ignored

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4402h"10BEUI",INT 6F/AH=00h"10NET"


INT 21 4402 - Compaq AG1024.SYS - RGDI - GET DRIVER LOCATION

Category: V - video

Inp.:

AX = 4402h

BX = file handle for device "$$$$RGDI"

CX = 0006h (size of returned data)

DS:DX -> location record (see #0718)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: AG1024.SYS is a device driver for the Advanced Graphics 1024 adapter

SeeAlso: AX=4403h"RGDI"


INT 21 4402 - FTPSOFT.DOS v3.1 - GET ???

Category: N - network

Inp.:

AX = 4402h

BX = file handle for device "FTPSOFT$"

CX = size of buffer

DS:DX -> buffer for data (see #0719)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: FTPSOFT.DOS is a device driver for Protocol Manager support from

   FTP Software, Inc.

SeeAlso: AH=3Fh"PC/TCP",AX=4402h"NDIS"


INT 21 4402 - PenDOS PENDEV.SYS - GET ENTRY POINTS

undocumented function

Category: n - non-traditional input devices

Inp.:

AX = 4402h

BX = file handle for device "$$PENDOS" or "$$PD_REG"

CX = size of buffer (4 for $$PENDOS and a 4,8,12, or 16 for $$PD_REG)

DS:DX -> buffer for entry point record (see #0720)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: A limited version of PenDOS by Communication Intelligence Corporation,

  which provides pen capability to keyboard-based programs, is bundled

  with IBM DOS 6.1

SeeAlso: AX=4403h"PENDEV.SYS"


INT 21 4402 - LAN Manager - TCPDRV.DOS - API

undocumented function

Category: N - network

Inp.:

AX = 4402h

BX = file handle referencing device "TCPDRV$"

CX = 0019h

DS:DX -> buffer containing request block (see #0724)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: TCPDRV.DOS is the low-level device driver supporting LAN Manager's

  TCP/IP protocol stack


INT 21 4402 - PC Tools 9 CPRLOW.EXE - GET CODE AND DATA ADDRESSES

undocumented function

Category: y - security

Inp.:

AX = 4402h

BX = file handle referencing device "RECLOWLD"

DS:DX -> buffer for address list (see #0725)

CX ignored

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)


INT 21 4402 - Creative Technology CTMMSYS.SYS v1.00.01 - API

undocumented function

Category: s - sound/speech

Inp.:

AX = 4402h

BX = file handle for device "CTMMSYS$"

CX = 0004h (size of data)

DS:DX -> buffer for entry point (see #0727)

Return: CF clear if successful

    buffer updated

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: CTMMSYS.SYS is the Creative DOS Multimedia Architecture Integration

  driver

SeeAlso: AX=4402h"CTSB2",INT 80/BX=0000h"SBFM"


INT 21 4402 - Creative Technology CTSB2.SYS v1.01.01 - API

undocumented function

Category: s - sound/speech

Inp.:

AX = 4402h

BX = file handle for device "CTSOUND0"

CX = 0004h (size of data)

DS:DX -> buffer for entry point (see #0729)

Return: CF clear if successful

    buffer updated

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: CTMMSYS.SYS is the Creative DOS Multimedia Architecture Integration

  driver

SeeAlso: AX=4402h"CTMMSYS",INT 80/BX=0000h"SBFM"


INT 21 4402 - Novell DOS 7 EMM386.EXE - GET STATE RECORD???

undocumented function

Category: m - memory management

Inp.:

AX = 4402h

BX = file handle for device "EMMXXXX0"

CX = 003Eh (size of state record)

DS:DX -> buffer for state record (see #0731)

Return: CF clear if successful

    buffer filled (see #2208 at INT 67/AH=3Fh)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)


INT 21 4402 - Memory Managers - GET API ENTRY POINT

undocumented function

Category: m - memory management

Inp.:

AX = 4402h subfn 00h

BX = file handle for device "EMMXXXX0"

CX = 0006h (size of buffer in bytes)

DS:DX -> buffer for API entry point record (see #0732)

first byte must be 00h on entry

Return: CF clear if successful

    buffer filled (see #2208 at INT 67/AH=3Fh)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	this function is supported by Microsoft EMM386.EXE v4.45+ and

  CEMM v5.10+, and is intended for use by MS Windows as it starts up

if no other program has hooked INT 67, an alternate installation

  check for CEMM is testing for the string

  "COMPAQ EXPANDED MEMORY MANAGER 386" at offset 14h in the INT 67

  handler's segment; if present, the word at offset 12h contains the

  offset of the API entry point

SeeAlso: AX=4402h/SF=01h,AX=4402h/SF=02h,AX=4402h"EMM386",INT 67/AH=3Fh


INT 21 4402 - Memory Managers - GET EMM IMPORT STRUCTURE ADDRESS

undocumented function

Category: m - memory management

Inp.:

AX = 4402h subfn 01h

BX = file handle for device "EMMXXXX0"

CX = 0006h (size of buffer in bytes)

DS:DX -> buffer for EMM import structure record (see #0734)

first byte must be 01h on entry

Return: CF clear if successful

    buffer filled (see also #2208 at INT 67/AH=3Fh)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	this function is supported by Microsoft EMM386.EXE v4.45+,

  QEMM-386 v6+, and CEMM v5.10+, and is intended for use by MS Windows

  as it starts up

for QEMM-386, this call always returns an error if Windows3 support

  has been disabled with the NW3 switch

SeeAlso: AX=4402h/SF=00h,AX=4402h"EMM386",INT 2F/AX=D201h/BX=5145h

SeeAlso: INT 67/AH=3Fh


INT 21 4402 - Memory Managers - GET MEMORY MANAGER VERSION

undocumented function

Category: m - memory management

Inp.:

AX = 4402h subfn 02h

BX = file handle for device "EMMXXXX0"

CX = 0002h (size of buffer in bytes)

DS:DX -> buffer for memory manager version (see #0740)

first byte must be 02h on entry

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	this function is supported by Microsoft EMM386.EXE v4.45+ and

  CEMM v5.10+, and is intended for use by MS Windows as it starts up

SeeAlso: AX=4402h/SF=00h,AX=4402h"EMM386",INT 67/AH=3Fh


INT 21 4402 - Microsoft EMM386.EXE v4.45 - GET MEMORY MANAGER INFORMATION

undocumented function

Category: m - memory management

Inp.:

AX = 4402h

BX = file handle for device "EMMXXXX0"

CX = size of buffer in bytes (varies, see #0741)

DS:DX -> buffer for returned data (see #0741)

first byte must be set on entry to indicate desired data

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	an error is returned if the number of bytes to be read does not match

  the number of bytes returned for the specified data item

this function is part of the interface which allows MS Windows to

  cooperate with memory managers

SeeAlso: AX=4402h/SF=00h,AX=4402h/SF=01h,AX=4402h/SF=02h,INT 67/AX=FFA5h


INT 21 4402 - IFSHLP.SYS - GET ENTRY POINT

undocumented function

Category: - - (none)

Inp.:

AX = 4402h

BX = file handle for device "IFS$HLP$"

CX = 0008h (size of buffer in bytes)

DS:DX -> buffer for entry point record (see #0639 at AH=3Fh"IFSHLP")

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AH=3Fh"IFSHLP"


INT 21 4403 - DOS 2+ - IOCTL - WRITE TO CHARACTER DEVICE CONTROL CHANNEL

Category: D - DOS kernel

Inp.:

AX = 4403h

BX = file handle referencing character device

CX = number of bytes to write

DS:DX -> data to write

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	format of data is driver-specific (see below for some specific cases)

if the file handle refers to "4DOSSTAK", the 4DOS (v2.x-3.03)

  KEYSTACK.SYS driver will push the specified characters on the

  keyboard stack; similarly for "NDOSSTAK", the NDOS KEYSTACK.SYS

  driver will push the characters onto the keyboard stack

SeeAlso: AX=4400h,AX=4402h,AX=4405h,INT 2F/AX=122Bh,INT 2F/AX=D44Dh

SeeAlso: INT 2F/AX=D44Fh


INT 21 4403 - SMARTDRV.SYS v3.x only - IOCTL - CACHE CONTROL

Category: c - caches/spoolers

Inp.:

AX = 4403h

BX = handle for device "SMARTAAR"

CX = number of bytes to write

DS:DX -> SMARTDRV control block (see #0743)

Return: CF clear if successful

    AX = number of bytes actually written

0000h if control block too small for given command

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	NCache2 (from the Norton Utilities v8.0) attempts to support this

  interface, but does not do so correctly, often hanging the system;

  one should use the SmartDrive v4.x or NCache private interfaces

  (see INT 2F/AX=4A10h/BX=0000h,INT 2F/AX=FE00h/DI=4E55h)

SeeAlso: AX=4402h"SMARTDRV",INT 2F/AX=4A10h/BX=0000h


INT 21 4403 - CD-ROM device driver - IOCTL OUTPUT

Category: d - disk I/O enhancements

Inp.:

AX = 4403h

BX = file handle referencing character device for CD-ROM driver

CX = number of bytes to write

DS:DX -> control block (see #0744)

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4402h"CD-ROM",INT 2F/AX=0802h


INT 21 4403 - Brian Antoine Seagate ST-01 SCSI.SYS - IOCTL - EXECUTE COMMANDS

Category: d - disk I/O enhancements

Inp.:

AX = 4403h

BX = handle for device "SCSITAPE"

CX = number of bytes to write

DS:DX -> SCSITAPE control block (see #0745)

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4405h"ST-01",INT 78/AH=10h


INT 21 4403 - AI Architects - OS/x86??? - API

undocumented function

Category: E - DOS extenders

Inp.:

AX = 4403h

BX = handle for device "AIA_OS"

CX = number of bytes to write (ignored)

DS:DX -> 12-byte buffer (see #0746), first byte is command:

  81h installation check

  82h get API entry point

  84h uninstall

Return: CF clear if successful

    AX = number of bytes actually written

    DS:DX buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Ch,0Dh) (see #0885 at AH=59h)

Notes:	these functions are only available if the DOS extender was loaded as a

  device driver in CONFIG.SYS

called by TKERNEL (a licensed version of AI Architects/Ergo OS/x86)

SeeAlso: INT 2F/AX=FBA1h/BX=0081h,INT 2F/AX=FBA1h/BX=0082h

Index:	installation check;OS/x86|entry point;OS/x86|uninstall;OS/x86


INT 21 4403 - PGS1600.DEV - IOCTL - SET CONFIGURATION???

Category: V - video

Inp.:

AX = 4403h

BX = file handle for device "PGS1600$"

CX = 0018h (size of buffer)

DS:DX -> configuration buffer (see #0704 at AX=4402h"PGS1600")

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: PGS1600.DEV is a device driver for the Cornerstone Technology PG1600

  display adapter, which provides a 1600x1200 monochrome display as

  well as one of two emulations, MDA or CGA.

SeeAlso: AX=4402h"PGS1600"


INT 21 4403 - PC/TCP IPCUST.SYS - RESET CONFIGURATION DATA READ POINTER

Category: N - network

Inp.:

AX = 4403h

BX = file handle referencing device "$IPCUST"

CX, DS:DX ignored

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Notes:	there are a total of 378h bytes of configuration data for IPCUST.SYS

  version 2.05.	 If less than the entire data is read or written,

  the next read/write continues where the previous one ended; this

  call and AX=4402h both reset the location at which the next

  operation starts to zero

v2.1+ uses a new configuration method, but allows the installation

  of IPCUST.SYS for backward compatibility with other software which

  must read the PC/TCP configuration

SeeAlso: AH=3Fh"IPCUST",AH=40h"IPCUST",AX=4402h"IPCUST"


INT 21 4403 - Compaq AG1024.SYS - CPQ_MGES - IOCTL OUTPUT

Category: V - video

Inp.:

AX = 4403h

BX = file handle referencing device "CPQ_MGES"

DS:DX -> request packet (see #0747)

CX ignored

Return: CF clear if successful

    AX destroyed

    data buffer filled (if applicable)

    first word of request packet set to number of bytes of data

      available (amount returned is smaller of this and requested

      amount)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: AG1024.SYS is a device driver for the Advanced Graphics 1024 adapter

SeeAlso: AX=4403h"RGDI"


INT 21 4403 - Compaq AG1024.SYS - RGDI - IOCTL OUTPUT

Category: V - video

Inp.:

AX = 4403h

BX = file handle referencing device "$$$$RGDI"

DS:DX -> request packet (see #0748)

CX ignored

Return: CF clear if successful

    AX destroyed

    data buffer filled (if applicable)

    first word of request packet set to number of bytes of data

      available (amount returned is smaller of this and requested

      amount)

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: AG1024.SYS is a device driver for the Advanced Graphics 1024 adapter

SeeAlso: AX=4402h"RGDI",AX=4403h"CPQ_MGES"


INT 21 4403 - Qualitas 386MAX v6.01+ - TURN 386MAX OFF

undocumented function

Category: m - memory management

Inp.:

AX = 4403h subfn 01h

BX = handle for device "386MAX$$"

DS:DX -> BYTE 01h

CX ignored

Return: DS:DX -> BYTE status (00h = successful)

CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	this function will fail if any EMS or UMBs are in use

SeeAlso: AX=4403h/SF=02h,AX=4403h/SF=03h,AX=4403h/SF=05h


INT 21 4403 - Qualitas 386MAX v6.01+ - TURN 386MAX ON

undocumented function

Category: m - memory management

Inp.:

AX = 4403h subfn 02h

BX = handle for device "386MAX$$"

DS:DX -> BYTE 02h

CX ignored

Return: DS:DX -> BYTE status (00h = successful)

CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4403h/SF=01h,AX=4403h/SF=03h,AX=4403h/SF=05h


INT 21 4403 - Qualitas 386MAX v6.01+ - SET STATE

undocumented function

Category: m - memory management

Inp.:

AX = 4403h subfn 03h

BX = handle for device "386MAX$$"

CX = number of bytes to copy (up to size of state buffer)

DS:DX -> BYTE 03h followed by state buffer

  (see #0687 at AX=4402h"386MAX")

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	the first byte of the buffer must be either 01h, 02h, or 03h

  (specifying the version of the state record) and the buffer must

  contain CX bytes AFTER the initial byte

SeeAlso: AX=4402h"386MAX"


INT 21 4403 - Qualitas 386MAX v7.00+ - LIMIT AUTOMATIC ACTIVATION TO STD EMS CALLS

undocumented function

Category: m - memory management

Inp.:

AX = 4403h subfn 05h

BX = handle for device "386MAX$$"

DS:DX -> BYTE 05h

CX ignored

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Desc:	specifies that 386MAX will only shift from AUTO to ON mode on standard

  EMS calls INT 67/AH=40h-5Dh

SeeAlso: AX=4403h/SF=02h,AX=4403h/SF=03h,AX=4403h/SF=06h


INT 21 4403 - Qualitas 386MAX v7.00+ - ALLOW AUTOMATIC ACTIVATION ON ANY INT 67

undocumented function

Category: m - memory management

Inp.:

AX = 4403h subfn 06h

BX = handle for device "386MAX$$"

DS:DX -> BYTE 06h

CX ignored

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Desc:	specified that 386MAX should shift from AUTO to ON mode on any INT 67

  call other than INT 67/AH=3Fh

SeeAlso: AX=4403h/SF=01h,AX=4403h/SF=03h,AX=4403h/SF=05h


INT 21 4403 - PenDOS PENDEV.SYS - ???

undocumented function

Category: n - non-traditional input devices

Inp.:

AX = 4403h

BX = file handle for device "$$PENDOS" or "$$PD_REG"

CX = size of buffer

DS:DX -> buffer containing ???

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: A limited version of PenDOS by Communication Intelligence Corporation,

  which provides pen capability to keyboard-based programs, is bundled

  with IBM DOS 6.1

Note:	this call sets the WORD at offset 1Ah into the device driver request

  header used to call the driver to 0000h.

SeeAlso: AX=4402h"PENDEV.SYS"


INT 21 4404 - DOS 2+ - IOCTL - READ FROM BLOCK DEVICE CONTROL CHANNEL

Category: D - DOS kernel

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc.)

CX = number of bytes to read

DS:DX -> buffer

Return: CF clear if successful

    AX = number of bytes actually read

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	format of data is driver-specific

SeeAlso: AX=4402h,AX=4405h,INT 2F/AX=122Bh


INT 21 4404 - Stacker - GET DEVICE DRIVER ADDRESS AND SET VOLUME NUMBER

Category: k - file/disk compression

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc.)

CX = 0004h

DS:DX -> DWORD buffer to receive device driver address

Return: buffer filled with pointer into Stacker device driver (see #1341):

  driver + 19h if Stacker Anywhere controls this drive

  driver + 1Ah if Stacker controls this drive

  unchanged else

Notes:	in addition to returning the address of the Stacker device driver,

  this call also sets the volume number at offset 58h in the device

  driver (see #1341 at INT 25/AX=CDCDh)

Stacker Anywhere does not link its built-in device driver into

  the standard device driver chain, but it can be found via CDS/DPB

this call can be used as an installation check for all versions of

  Stacker and Stacker Anywhere to avoid the INT 25 call

SeeAlso: AX=4408h,AX=440Eh,AH=52h,INT 25/AX=CDCDh


INT 21 4404 - Stacker - GET STACVOL FILE SECTORS

Category: k - file/disk compression

Inp.:

AX = 4404h

BL = drive number (0 is current drive)

CX = byte count (i.e., 200h = 1 sector)

DS:DX -> buffer (see #0749)

Return: Data Buffer contains the number of sectors requested from the

  STACVOL physical file for the drive specified.


INT 21 4404 - DUBLDISK.SYS v2.6 - GET INFO

Category: k - file/disk compression

Inp.:

AX = 4404h

BL = drive number of DoubleDisk drive (00h = default, 01h = A:, etc.)

CX = number of bytes (000Ah-0014h, call ignored otherwise)

DS:DX -> data record (see #0750)

Return: CF clear if successful

    AX = number of bytes read

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: DUBLDISK.SYS is the device driver portion of DoubleDisk, a disk

  expander by Vertisoft Systems, Inc.

Note:	the installation check for v2.6 consists of scanning memory for the

  signature "FAT 2.6  byte:", which is immediately followed by a data

  table (see #0751)

BUG:	VOPT (a disk optimizer by Golden Bow Software) assumes that any driver

  which returns the "correct" number of bytes when the first word of

  the buffer for the data record contains the signature value 4444h is

  DoubleDisk; a workaround is for the non-DoubleDisk driver to return

  no data if the signature is present

SeeAlso: AX=440Dh

Index:	installation check;DUBLDISK.SYS


INT 21 4404 - DBLSPACE.BIN - IOCTL - FLUSH OR INVALIDATE INTERNAL CACHES

Category: k - file/disk compression

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc)

CX = 000Ah (size of DSPACKET structure)

DS:DX -> DSPACKET structure (see #0752)

Return: CF clear if IOCTL successful -- check DSPACKET for actual status

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4405h"DBLSPACE",INT 2F/AX=4A11h/BX=0000h


INT 21 4404 - DBLSPACE.BIN v6.2 - IOCTL - GET ??? FOR SPECIFIED DRIVE

Category: k - file/disk compression

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc)

CX = size of DSPACKET structure (ignored in DOS 6.2)

DS:DX -> DSPACKET structure (see #0753)

Return: CF clear if IOCTL successful -- check DSPACKET for actual status

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4405h"DBLSPACE",INT 2F/AX=4A11h/BX=0000h


INT 21 4404 - DoubleTools v1.0 - GET ???

undocumented function

Category: k - file/disk compression

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc)

CX = 0006h

DS:DX -> DoubleTools structure (see #0754)

Return: CF clear if IOCTL successful -- check DSPACKET for actual status

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	the Transporter device driver has the signature 55h 61h 50h 74h

  ("DaPt") twelve bytes after it beginning


INT 21 4404 - xDISK v3.31 - CONFIGURE

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc)

CX = 0047h (length of version string)

DS:DX -> 79-byte buffer for version string and ???

DS:0081h = commandline containing new switches for driver

Return: CF clear if successful

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: xDISK is a shareware resizeable EMS RAMdisk by FM de Monasterio

SeeAlso: AX=4405h"xDISK",INT 2F/AH=DDh/BX=7844h"xDISK"


INT 21 4404 - COMBI-disk v1.13 - GET DATA RECORD

Category: c - caches/spoolers

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc)

CX = 0032h (length of data packet)

DS:DX -> buffer for data packet (see #0755)

Return: CF clear if successful

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: COMBI-disk is a shareware combination cache and RAMdisk sharing a

  single pool of memory by Vadim V. Vlasov

Note:	the installation check consists of scanning the valid drives for one

  which returns a correctly-sized data packet with the proper

  signature in the first field

SeeAlso: AX=4405h"COMBI"

Index:	installation check;COMBI-disk


INT 21 4404 - SFS v1.00 - GET CONFIGURATION INFORMATION

Category: d - disk I/O enhancements

Inp.:

AX = 4404h

BL = drive number (00h = default, 01h = A:, etc)

CX = 001Ah (length of data packet)

DS:DX -> buffer for data packet (see #0756)

Return: CF clear if successful

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: SFS (Secure FileSystem) is a shareware encrypting disk driver by

  Peter C. Gutmann

SeeAlso: AX=4405h"SFS"


INT 21 4405 - DOS 2+ - IOCTL - WRITE TO BLOCK DEVICE CONTROL CHANNEL

Category: D - DOS kernel

Inp.:

AX = 4405h

BL = drive number (00h = default, 01h = A:, etc)

CX = number of bytes to write

DS:DX -> data to write

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	format of data is driver-specific

SeeAlso: AX=4403h,AX=4404h,INT 2F/AX=122Bh


INT 21 4405 - Brian Antoine Seagate ST-01 SCSI.SYS - IOCTL - EXECUTE COMMANDS

Category: d - disk I/O enhancements

Inp.:

AX = 4405h

BX = drive number (00h = default, 01h = A:, etc)

CX = number of bytes to write

DS:DX -> SCSIDISK control block (see also #0745 at AX=4403h"ST-01")

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4403h"ST-01"


INT 21 4405 - DBLSPACE.BIN - IOCTL - FLUSH OR INVALIDATE INTERNAL CACHES

undocumented function

Category: k - file/disk compression

Inp.:

AX = 4405h

BL = drive number (00h = default, 01h = A:, etc)

CX = 000Ah (size of DSPACKET structure)

DS:DX -> DSPACKET structure (see #0757)

Return: CF clear if IOCTL successful -- check DSPACKET for actual status

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	this call is identical to the documented AX=4404h

SeeAlso: AX=4404h"DBLSPACE",INT 2F/AX=4A11h/BX=0000h


INT 21 4405 - xDISK v3.31 - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4405h

BL = drive number (00h = default, 01h = A:, etc)

CX = number of bytes to write

DS:DX -> buffer containing version string

???

Return: CF clear if successful

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: xDISK is a shareware resizeable EMS RAMdisk by FM de Monasterio

SeeAlso: AX=4404h"xDISK",INT 2F/AH=DDh/BX=7844h"xDISK"


INT 21 4405 - COMBI-disk v1.13 - CONTROL COMBI-disk

Category: d - disk I/O enhancements

Inp.:

AX = 4405h

BL = drive number (00h = default, 01h = A:, etc) for RAM disk

CX = number of bytes to write

DS:DX -> buffer containing command packet (see #0759)

Return: CF clear if successful

    AX = number of bytes actually transferred

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

SeeAlso: AX=4404h"COMBI"


INT 21 4405 - SFS v1.00 - DRIVER CONTROL

Category: D - DOS kernel

Inp.:

AX = 4405h

BL = drive number (00h = default, 01h = A:, etc)

CX = number of bytes to write

DS:DX -> data to write (see #0763)

Return: CF clear if successful

    AX = number of bytes actually written

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Program: SFS (Secure FileSystem) is a shareware encrypting disk driver by

  Peter C. Gutmann

SeeAlso: AX=4404h"SFS"


INT 21 4406 - DOS 2+ - IOCTL - GET INPUT STATUS

Category: D - DOS kernel

Inp.:

AX = 4406h

BX = file handle

Return: CF clear if successful

    AL = input status

00h not ready (device) or at EOF (file)

FFh ready

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	files may not register as being at EOF if positioned there by AH=42h

SeeAlso: AX=4407h,INT 2F/AX=122Bh


INT 21 4407 - DOS 2+ - IOCTL - GET OUTPUT STATUS

Category: D - DOS kernel

Inp.:

AX = 4407h

BX = file handle

Return: CF clear if successful

    AL = input status

00h not ready

FFh ready

CF set on error

    AX = error code (01h,05h,06h,0Dh) (see #0885 at AH=59h)

Note:	for DOS 2+, files are always ready for output, even if the disk is

  full or no media is in the drive

SeeAlso: AX=4406h,INT 2F/AX=122Bh


INT 21 4408 - DOS 3.0+ - IOCTL - CHECK IF BLOCK DEVICE REMOVABLE

Category: D - DOS kernel

Inp.:

AX = 4408h

BL = drive number (00h = default, 01h = A:, etc)

Return: CF clear if successful

    AX = media type (0000h removable, 0001h fixed)

CF set on error

    AX = error code (01h,0Fh) (see #0885 at AH=59h)

Note:	in addition to the normal operation, if Stacker is installed, this

  call also sets the volume number at offset 58h in the Stacker

  device driver (except under DR-DOS 3.41-5.0, which do not pass

  through this call to the driver; use AX=440Eh instead)

  (see AX=4404h"Stacker",AX=440Eh,INT 25/AX=CDCDh)

SeeAlso: AX=4400h,AX=4404h"Stacker",AX=4409h,INT 2F/AX=122Bh


INT 21 4409 - DOS 3.1+ - IOCTL - CHECK IF BLOCK DEVICE REMOTE

Category: D - DOS kernel

Inp.:

AX = 4409h

BL = drive number (00h = default, 01h = A:, etc)

Return: CF clear if successful

    DX = device attribute word

bit 15: drive is SUBSTituted

bit 12: drive is remote

bit  9: direct I/O not allowed

CF set on error

    AX = error code (01h,0Fh) (see #0885 at AH=59h)

Note:	on local drives, DX bits not listed above are the attribute word from

  the device driver header (see #0858 at AH=52h); for remote drives,

  the other bits appear to be undefined for DOS versions prior to 5.0

  (they are all cleared in DOS 5+)

checking whether DX=0800h on return appears to be a fairly reliable

  method for detecting Microsoft's RAMDRIVE, though not for other

  ramdisks (there appears to be no simple yet foolproof method for

  detecting ramdisks, although the presence of only a single copy of

  the FAT and only a single head on non-removable devices is a fairly

  good indicator)

SeeAlso: AX=4400h,AX=4408h,AX=440Ah,INT 2F/AX=122Bh


INT 21 440A - DOS 3.1+ - IOCTL - CHECK IF HANDLE IS REMOTE

Category: D - DOS kernel

Inp.:

AX = 440Ah

BX = handle

Return: CF clear if successful

    DX = attribute word (as stored in SFT)

bit 15: set if remote

bit 14: date/time not set on close

CF set on error

    AX = error code (01h,06h) (see #0885 at AH=59h)

Notes:	if file is remote, Novell Advanced NetWare 2.0 returns the number of

  the file server on which the handle is located in CX

DR-DOS 3.41 and 5.0 clear all bits of DX except bit 15

SeeAlso: AX=4400h,AX=4409h,AH=52h,INT 2F/AX=122Bh


INT 21 440B - DOS 3.1+ - IOCTL - SET SHARING RETRY COUNT

Category: D - DOS kernel

Inp.:

AX = 440Bh

CX = pause between retries (default 1)

DX = number of retries (default 3)

Return: CF clear if successful

CF set on error

    AX = error code (01h) (see #0885 at AH=59h)

Notes:	delay is dependent on processor speed (value in CX specifies number of

  64K-iteration empty loops to execute)

if DX=0000h on entry, the retry count is left unchanged

SeeAlso: AH=52h,INT 2F/AX=1224h,INT 2F/AX=122Bh


INT 21 440C - DOS 3.2+ - IOCTL - GENERIC CHARACTER DEVICE REQUEST

Category: D - DOS kernel

Inp.:

AX = 440Ch

BX = device handle

CH = category code (see #0765)

CL = function number (see #0766)

DS:DX -> parameter block (see #0767,#0768,#0769,#0770,#0771,#0772)

SI = parameter to pass to driver (European MS-DOS 4.0, OS/2 comp box)

DI = parameter to pass to driver (European MS-DOS 4.0, OS/2 comp box)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    DS:DX -> iteration count if CL=65h

    SI = returned value (European MS-DOS 4.0, OS/2 comp box)

    DI = returned value (European MS-DOS 4.0, OS/2 comp box)

Note:	DR-DOS 3.41 and 5.0 return error code 16h on CL=45h,65h if the device

  does not support a retry counter

SeeAlso: AX=440Dh,INT 2F/AX=0802h,INT 2F/AX=122Bh,INT 2F/AX=14FFh

SeeAlso: INT 2F/AX=1A01h


INT 21 440C - Greg Shenaut ASPITAPE.SYS - INTERFACE

Category: d - disk I/O enhancements

Inp.:

AX = 440Ch

BX = device handle

CH = category code

    07h tape (ASPITAPE.SYS)

CL = function

    01h "mtop" - perform tape operation

    02h "mtget" - get tape status

    03h ignore end-of-tape errors

    04h enable end-of-tape errors

DS:DX -> parameter block (see #0774,#0775)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    DS:DX -> data block

Notes:	This device driver is a simple DOS interface to the Adaptec Advanced

  SCSI Programming Interface (ASPI).  It provides the following device

  names as access to the SCSI tape, 'RMTx' (rewind on close) and

  'NRMTx' (NO rewind on close) where x can go from 0 to 3.  There may

  also be the following names 'MTx' and 'NMTx' which default to 1024

  byte blocks.	The names may also have a '$' appended to try and make

  them unique from file names of 'RMT0' etc.

once opend these devices must be put into RAW mode

SeeAlso: AX=4402h"ASPI"


INT 21 440D - DOS 3.2+ - IOCTL - GENERIC BLOCK DEVICE REQUEST

Category: D - DOS kernel

Inp.:

AX = 440Dh

BL = drive number (00h=default,01h=A:,etc)

CH = category code (see #0778)

CL = minor code (function) (see #0779)

DS:DX -> (DOS) parameter block (see #0780,#0782,#0783,#0784,#0785)

SI:DI -> (OS/2 comp box) parameter block (see #0786,#0788,#0789,#0790)

Return: CF set on error

    AX = error code (01h,02h) (see #0885 at AH=59h)

CF clear if successful

    DS:DX -> data block if CL=60h or CL=61h

Notes:	DOS 4.01 seems to ignore the high byte of the number of directory

  entries in the BPB for diskettes.

functions 46h and 66h undocumented in DOS 4.x, documented for DOS 5+

the DUBLDISK.SYS v2.6 driver only supports minor codes 60h and 67h

DR-DOS 3.41-6.0 only support minor codes 40h-42h and 60h-62h; all

  other minor codes return error code 16h

some PCMCIA calls reportedly appear to be dangerous for MS-DOS versions

  prior to 5.0

minor code 60h normally produces no I/O except with AutoMount=1 for

  DBLSPACE/DRVSPACE

SeeAlso: AX=440Ch,AH=69h,INT 2F/AX=0802h,INT 2F/AX=122Bh


INT 21 440E - DOS 3.2+ - IOCTL - GET LOGICAL DRIVE MAP

Category: D - DOS kernel

Inp.:

AX = 440Eh

BL = drive number (00h=default,01h=A:,etc)

Return: CF set on error

    AX = error code (01h,0Fh) (see #0885 at AH=59h)

CF clear if successful

    AL = 00h block device has only one logical drive assigned

 1..26 the last letter used to reference the drive (1=A:,etc)

Notes:	DR-DOS 3.41-5.0 DRIVER.SYS does not support drive mapping and thus

  always returns AL=00h

in addition to the normal operation, if Stacker is installed, this

  call also sets the volume number at offset 58h in the Stacker

  device driver (DR-DOS 3.41-5.0 only; use AX=4408h otherwise)

  (see AX=4404h"Stacker",INT 25/AX=CDCDh)

SeeAlso: AX=4408h,AX=440Fh,INT 2F/AX=122Bh


INT 21 440F - DOS 3.2+ - IOCTL - SET LOGICAL DRIVE MAP

Category: D - DOS kernel

Inp.:

AX = 440Fh

BL = physical drive number (00h=default,01h=A:,etc))

Return: CF set on error

    AX = error code (01h,0Fh) (see #0885 at AH=59h)

CF clear if successful

    drive now responds to next logical drive number

Notes:	maps logical drives to physical drives, similar to DOS's treatment of

  a single physical floppy drive as both A: and B:

DR-DOS 3.41-5.0 DRIVER.SYS does not support drive mapping and thus

  always returns an error on this function

SeeAlso: AX=440Eh,INT 2F/AX=122Bh


INT 21 4410 - DOS 5+ - IOCTL - QUERY GENERIC IOCTL CAPABILITY (HANDLE)

Category: D - DOS kernel

Inp.:

AX = 4410h

BX = handle for device

CH = category code (see #0765)

CL = function code (see #0766)

Return: CF clear if successful

    AX = 0000h	specified IOCTL function is supported

CF set on error

    AL = 01h	IOCTL capability not available

Note:	a program which wishes to use Generic IOCTL calls beyond those in the

  standard DOS 3.2 set may use this call first to see whether a

  particular call is supported

SeeAlso: AX=440Ch,AX=440Dh,AX=4411h


INT 21 4410 - NewSpace - ENABLE DRIVER

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4410h

BX = FFFFh

Program: NewSpace is a TSR by Isogon Corporation which automatically compresses

  all files as they are written and decompresses them as they are read

Note:	compressed files are not accessible unless the driver is enabled

SeeAlso: AX=4411h/BX=FFFFh


INT 21 4411 - DOS 5+ - IOCTL - QUERY GENERIC IOCTL CAPABILITY (DRIVE)

Category: D - DOS kernel

Inp.:

AX = 4411h

BL = drive number

CH = category code (see #0778)

CL = function code (see #0779)

Return: CF clear if successful

    AX = 0000h	specified IOCTL function is supported

CF set on error

    AL = 01h	IOCTL capability not available

Note:	a program which wishes to use Generic IOCTL calls beyond those in the

  standard DOS 3.2 set may use this call first to see whether a

  particular call is supported

SeeAlso: AX=440Ch,AX=440Dh,AX=4410h


INT 21 4411 - NewSpace - DISABLE DRIVER

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4411h

BX = FFFFh

Program: NewSpace is a TSR by Isogon Corporation which automatically compresses

  all files as they are written and decompresses them as they are read

Note:	compressed files are not accessible unless the driver is enabled

SeeAlso: AX=4410h/BX=FFFFh


INT 21 4412 - DR-DOS 5.0-6.0 - DETERMINE DOS TYPE

obsolete (no longer present in current versions)

Category: O - other operating systems

Inp.:

AX = 4412h

CF set

Return: CF set if not DR-DOS

    AX = error code (see #0885 at AH=59h)

CF clear if DR-DOS

    DX = AX = version code (see #0794)

Note:	this obsolete call, which is no longer supported in Novell DOS 7, is

  identical to AX=4452h

SeeAlso: AX=4452h


INT 21 4412 - NewSpace - INSTALLATION CHECK???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4412h

BX = FFFFh

Return: AX = PSP segment of NewRes (resident driver for NewSpace)

BX:DX -> ???

CX = ???

SeeAlso: AX=4411h/BX=FFFFh


INT 21 4413 - NewSpace - GET ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4413h

BX = FFFFh

Return: AX = code segment of NewRes (resident driver for NewSpace)

BX = offset of ???

SeeAlso: AX=4412h/BX=FFFFh


INT 21 4414 - DR-DOS 5.0-6.0 - SET GLOBAL PASSWORD

obsolete (no longer present in current versions)

undocumented function

Category: O - other operating systems

Inp.:

AX = 4414h

DS:DX -> password string (blank-padded to 8 characters)

Desc:	Specify the master password for accessing files.

Note:	this obsolete call, which is no longer supported in Novell DOS 7, is

  identical to AX=4454h

SeeAlso: AX=4454h


INT 21 4414 - NewSpace - DEBUGGING DUMP

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 4414h

BX = FFFFh

Return: debugging dump written to X:\NEWSPACE.SMP

SeeAlso: AX=4413h/BX=FFFFh,AX=44FFh/BX=FFFFh


INT 21 44-- - DR-DOS 5.0-6.0 - HISTORY BUFFER, SHARE, AND HILOAD CONTROL

obsolete (no longer present in current versions)

undocumented function

Category: O - other operating systems

Inp.:

AH = 44h

AL = 16h to 18h

Note:	these obsolete subfunctions (which are no longer supported in Novell

  DOS 7) are identical to AX=4456h through 4458h

SeeAlso: AX=4456h,AX=4457h,AX=4458h


INT 21 4451 - Concurrent DOS v3.2+ - INSTALLATION CHECK

Category: O - other operating systems

Inp.:

AX = 4451h

Return: CF set if not Concurrent DOS

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AH = single-user/multiuser nature

10h single-user

    AL = operating system version ID (see #0794)

14h multiuser

    AL = operating system version ID (see #0793)

Notes:	as of Concurrent DOS/XM 5.0 (possibly earlier), the version is stored

  in the environment variable VER

use this function if you are looking for multiuser capabilities,

  AX=4452h for single-user

this function should never return the single-user values

SeeAlso: AX=4452h,AX=4459h


INT 21 4452 - DR-DOS 3.41+ - DETERMINE DOS TYPE/GET DR-DOS VERSION

Category: O - other operating systems

Inp.:

AX = 4452h ("DR")

CF set

Return: CF set if not DR-DOS

    AX = error code (see #0885 at AH=59h)

CF clear if DR-DOS

    AX = version code

    AH = single-user/multiuser nature

10h single-user

    AL = operating system version ID (see #0794)

14h multiuser

    AL = operating system version ID (see #0793)

    DX modified (see note)

Notes:	the DR-DOS version is stored in the environment variable VER

use this function if looking for single-user capabilities, AX=4451h

  if looking for multiuser; this call should never return multiuser

  values

in DR-DOS 3.41-6.0, DX=AX on return; for Novell DOS 7, DH=AH but DL=00h

  (reportedly, DH=00h when booting NWDOS7 from installation disks)

Novell DOS 7 returns error code 0001h if SETVER 255.x is in effect for

  the calling program

SeeAlso: AX=4412h,AX=4451h,AX=4459h


INT 21 4454 - DR-DOS 3.41+ - SET GLOBAL PASSWORD

undocumented function

Category: O - other operating systems

Inp.:

AX = 4454h

DS:DX -> password string (blank-padded to 8 characters)

Desc:	Specify the master password for accessing files.

SeeAlso: AX=4303h,AX=4414h


INT 21 4456 - DR-DOS 5.0+ - HISTORY BUFFER CONTROL

undocumented function

Category: O - other operating systems

Inp.:

AX = 4456h

DL = control flags (see #0795)

Return: AL = previous value of state flags (see #0796)

Note:	DR-DOS 6.0 only checks bit 0 and ignores the rest of DL

SeeAlso: #0797


INT 21 4457 - DR-DOS 5.0+ - SHARE/HILOAD CONTROL

undocumented function

Category: O - other operating systems

Inp.:

AX = 4457h

DH = subfunction

    00h enable/disable SHARE

DL = 00h disable

   = 01h enable

   else Return: AX = ???

    01h get HILOAD status

Return: AX = status

    0000h off

    0001h on

    02h set HILOAD status

DL = new state (00h off, 01h on)

Return: AX = ???

    other

Return: AX = ???

Note:	This was seen called by COMMAND.COM of DR-DOS 6.0; it does not seem

  to be supported by Novell DOS 7

SeeAlso: AX=4457h/DX=FFFFh


INT 21 4457 - DR-DOS 6.0 - GET SHARE STATUS

undocumented function

Category: O - other operating systems

Inp.:

AX = 4457h

DX = FFFFh

Return: AX = SHARE status

SeeAlso: INT 2F/AX=1000h


INT 21 4458 - DR-DOS 5.0+ internal - GET POINTER TO INTERNAL VARIABLE TABLE

undocumented function

Category: O - other operating systems

Inp.:

AX = 4458h

Return: ES:BX -> internal variable table (see #0797,#0798)

AX = ??? (0B50h for DR-DOS 5.0, 0A56h for DR-DOS 6.0, 0FE4h for

  Novell DOS 7)

SeeAlso: AX=4452h


INT 21 4459 - DR MultiUser DOS 5.0 - API

Category: O - other operating systems

Inp.:

AX = 4459h

CL = function (see #2602 at INT E0"CP/M")

DS,DX = parameters

Notes:	DR-DOS 5.0 and Novell DOS 7 return CF set and AX=0001h

this API is also available on INT E0

SeeAlso: AX=4452h,INT E0"CP/M"


INT 21 44E0 - Sun PC-NFS - API???

undocumented function

Category: N - network

Inp.:

AX = 44E0h

DS:DX -> ???

SS:BP -> stack frame (see #0802)

Return: ???

Note:	this function is also supported by Beame&Whiteside's BWPCNFS shim; the

  description presented here was derived from that shim


INT 21 44FF - NewSpace - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 44FFh

BX = FFFFh

DX = ???

Program: NewSpace is a TSR by Isogon Corporation which automatically compresses

  all files as they are written and decompresses them as they are read

SeeAlso: AX=4414h/BX=FFFFh


INT 21 45-- - DOS 2+ - "DUP" - DUPLICATE FILE HANDLE

Category: D - DOS kernel

Inp.:

AH = 45h

BX = file handle

Return: CF clear if successful

    AX = new handle

CF set on error

    AX = error code (04h,06h) (see #0885 at AH=59h)

Notes:	moving file pointer for either handle will also move it for the other,

  because both will refer to the same system file table

for DOS versions prior to 3.3, file writes may be forced to disk by

  duplicating the file handle and closing the duplicate

SeeAlso: AH=3Dh,AH=46h


INT 21 46-- - DOS 2+ - "DUP2", "FORCEDUP" - FORCE DUPLICATE FILE HANDLE

Category: D - DOS kernel

Inp.:

AH = 46h

BX = file handle

CX = file handle to become duplicate of first handle

Return: CF clear if successful

CF set on error

    AX = error code (04h,06h) (see #0885 at AH=59h)

Notes:	closes file with handle CX if it is still open

DOS 3.30 hangs if BX=CX on entry

moving file pointer for either handle will also move it for the other,

  because both will refer to the same system file table

SeeAlso: AH=3Dh,AH=45h


INT 21 47-- - DOS 2+ - "CWD" - GET CURRENT DIRECTORY

Category: D - DOS kernel

Inp.:

AH = 47h

DL = drive number (00h = default, 01h = A:, etc)

DS:SI -> 64-byte buffer for ASCIZ pathname

Return: CF clear if successful

    AX = 0100h (undocumented)

CF set on error

    AX = error code (0Fh) (see #0885 at AH=59h)

Notes:	the returned path does not include a drive or the initial backslash

many Microsoft products for Windows rely on AX being 0100h on success

under the FlashTek X-32 DOS extender, the buffer pointer is in DS:ESI

SeeAlso: AH=19h,AH=3Bh,AH=71h,INT 15/AX=DE25h


INT 21 48-- - DOS 2+ - ALLOCATE MEMORY

Category: D - DOS kernel

Inp.:

AH = 48h

BX = number of paragraphs to allocate

Return: CF clear if successful

    AX = segment of allocated block

CF set on error

    AX = error code (07h,08h) (see #0885 at AH=59h)

    BX = size of largest available block

Notes:	DOS 2.1-6.0 coalesces free blocks while scanning for a block to

  allocate

.COM programs are initially allocated the largest available memory

  block, and should free some memory with AH=49h before attempting any

  allocations

under the FlashTek X-32 DOS extender, EBX contains a protected-mode

  near pointer to the allocated block on a successful return

SeeAlso: AH=49h,AH=4Ah,AH=58h,AH=83h


INT 21 49-- - DOS 2+ - FREE MEMORY

Category: D - DOS kernel

Inp.:

AH = 49h

ES = segment of block to free

Return: CF clear if successful

CF set on error

    AX = error code (07h,09h) (see #0885 at AH=59h)

Notes:	apparently never returns an error 07h, despite official docs; DOS 2.1+

  code contains only an error 09h exit

DOS 2.1-6.0 does not coalesce adjacent free blocks when a block is

  freed, only when a block is allocated or resized

the code for this function is identical in DOS 2.1-6.0 except for

  calls to start/end a critical section in DOS 3.0+

SeeAlso: AH=48h,AH=4Ah


INT 21 4A-- - DOS 2+ - RESIZE MEMORY BLOCK

Category: D - DOS kernel

Inp.:

AH = 4Ah

BX = new size in paragraphs

ES = segment of block to resize

Return: CF clear if successful

CF set on error

    AX = error code (07h,08h,09h) (see #0885 at AH=59h)

    BX = maximum paragraphs available for specified memory block

Notes:	under DOS 2.1-6.0, if there is insufficient memory to expand the block

  as much as requested, the block will be made as large as possible

DOS 2.1-6.0 coalesces any free blocks immediately following the block

  to be resized

SeeAlso: AH=48h,AH=49h,AH=83h


INT 21 4A-- - VIRUS???

Category: v - virus/antivirus

Inp.:

AH = 4Ah

BX = 00B6h

ES = CX

Return: ???

Note:	this call is intercepted by the Search&Destroy SDRes v27.03 bundled

  with Novell DOS 7, and is presumably some virus's installation check

SeeAlso: AH=0Eh/DL=ADh,AH=4Ah/BX=FFFFh,AH=D2h"VIRUS"


INT 21 4A-- - VIRUS???

Category: v - virus/antivirus

Inp.:

AH = 4Ah

BX = FFFFh

CX = 0568h

SI = 0129h

DI = 0000h

ES = BP

Return: ???

Note:	this call is intercepted by the Search&Destroy SDRes v27.03 bundled

  with Novell DOS 7, and is presumably some virus's installation check

SeeAlso: AH=0Eh/DL=ADh,AH=4Ah/BX=00B6h


INT 21 4B-- - DOS 2+ - "EXEC" - LOAD AND/OR EXECUTE PROGRAM

Category: D - DOS kernel

Inp.:

AH = 4Bh

AL = type of load

    00h load and execute

    01h load but do not execute

    03h load overlay (see #0804)

    04h load and execute in background (European MS-DOS 4.0 only)

"Exec & Go" (see also AH=80h)

DS:DX -> ASCIZ program name (must include extension)

ES:BX -> parameter block (see #0803,#0804,#0805)

CX = mode (subfunction 04h only)

0000h child placed in zombie mode after termination

0001h child's return code discarded on termination

Return: CF clear if successful

    BX,DX destroyed

    if subfunction 01h, process ID set to new program's PSP; get with

INT 21/AH=62h

CF set on error

    AX = error code (01h,02h,05h,08h,0Ah,0Bh) (see #0885 at AH=59h)

Notes:	DOS 2.x destroys all registers, including SS:SP

under ROM-based DOS, if no disk path characters (colons or slashes)

  are included in the program name, the name is searched for in the

  ROM module headers (see #0808) before searching on disk

for functions 00h and 01h, the calling process must ensure that there

  is enough unallocated memory available; if necessary, by releasing

  memory with AH=49h or AH=4Ah

for function 01h, the AX value to be passed to the child program is put

  on top of the child's stack

for function 03h, DOS assumes that the overlay is being loaded into

  memory allocated by the caller

function 01h was undocumented prior to the release of DOS 5.0

some versions (such as DR-DOS 6.0) check the parameters and parameter

  block and return an error if an invalid value (such as an offset of

  FFFFh) is found

background programs under European MS-DOS 4.0 must use the new

  executable format

this function ignores the filename extension, instead checking the

  first two bytes of the file to determine whether there is a valid

  .EXE header (see #0807); if not, the file is assumed to be in .COM

  format.  If present, the file may be in any of several formats which

  are extensions of the original .EXE format (see #0806)

.COM-format executables begin running with the following register

  values:

AL = 00h if first FCB has valid drive letter, FFh if not

AH = 00h if second FCB has valid drive letter, FFh if not

CS,DS,ES,SS = PSP segment

SP = offset of last word available in first 64K segment

(note: AX is always 0000h under DESQview)

old-format executables begin running with the following register

  values:

AL = 00h if first FCB has valid drive letter, FFh if not

AH = 00h if second FCB has valid drive letter, FFh if not

DS,ES = PSP segment

SS:SP as defined in .EXE header

(note: AX is always 0000h under DESQview)

new executables begin running with the following register values

AX = environment segment

BX = offset of command tail in environment segment

CX = size of automatic data segment (0000h = 64K)

ES,BP = 0000h

DS = automatic data segment

SS:SP = initial stack

  the command tail corresponds to an old executable's PSP:0081h and

  following, except that the 0Dh is turned into a NUL (00h); new

  format executables have no PSP

under the FlashTek X-32 DOS extender, only function 00h is supported

  and the pointers are passed in DS:EDX and ES:EBX

DR-DOS 6 always loads .EXE-format programs with no fixups and

  .COM-format programs starting with 9Ch 55h (PUSHF/PUSH BP) above the

  64K mark to avoid the EXEPACK bug, by extending the memory block

  containing the program's environment; this code is disabled if the

  name of the parent program as stored in the MCB is 'WIN'.

BUGS:	DOS 2.00 assumes that DS points at the current program's PSP

Load Overlay (subfunction 03h) loads up to 512 bytes too many if the

  file contains additional data after the actual overlay

SeeAlso: AX=4B05h,AH=4Ch,AH=4Dh,AH=64h"OS/2",AH=8Ah,INT 2E,INT 60/DI=0604h


INT 21 4B-- - ELRES v1.0 only - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AH = 4Bh

DS:DX = 0000h:0000h

Return: ES:BX -> ELRES history structure (see #0606 at AH=2Bh/CX=454Ch)

DX = DABEh (signature, DAve BEnnett)

Program: ELRES is an MS-DOS return code (errorlevel) recorder by David H.

  Bennett

SeeAlso: AH=2Bh/CX=454Ch


INT 21 4B04 - VIRUS - "MG", "699"/"Thirteen Minutes" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B04h

Return: CF clear if "MG" resident

AX = 044Bh if "699"/"Thirteen Minutes" resident

SeeAlso: AX=4243h,AH=4Ah/BX=FFFFh,AX=4B21h


INT 21 4B05 - DOS 5+ - SET EXECUTION STATE

Category: D - DOS kernel

Inp.:

AX = 4B05h

DS:DX -> execution state structure (see #0838)

Return: CF clear if successful

    AX = 0000h

CF set on error

    AX = error code (see #0885 at AH=59h)

Note:	used by programs which intercept AX=4B00h to prepare new programs for

  execution (including setting the DOS version number).	 No DOS, BIOS

  or other software interrupt may be called after return from this call

  before commencement of the child process.  If DOS is running in the

  HMA, A20 is turned off on return from this call.

SeeAlso: AH=4Bh


INT 21 4B20 - VIRUS - "Holocaust"/"Telefonica" - ???

Category: v - virus/antivirus

Inp.:

AX = 4B20h

SeeAlso: AX=4B04h,AX=4B21h


INT 21 4B21 - VIRUS - "Holocaust"/"Telefonica" - ???

callout or callback (usually hooked rather than called)

Category: v - virus/antivirus

Inp.:

AX = 4B21h

Note:	called at completion of virus installation

SeeAlso: AX=4B04h,AX=4B20h,AX=4B25h


INT 21 4B25 - VIRUS - "1063"/"Mono" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B25h

Return: DI = 1234h if resident

SeeAlso: AX=4B21h,AX=4B40h


INT 21 4B40 - VIRUS - "Plastique"/"AntiCad" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B40h

Return: AX = 5678h if resident

SeeAlso: AX=4B25h,AX=4B41h,AX=4B4Ah


INT 21 4B41 - VIRUS - "Plastique"/"AntiCad" - ???

Category: v - virus/antivirus

Inp.:

AX = 4B41h

???

Return: ???

SeeAlso: AX=4B40h


INT 21 4B4A - VIRUS - "Jabberwocky" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B4Ah

Return: AL = 57h if resident

SeeAlso: AX=4B40h,AX=4B4Bh


INT 21 4B4B - VIRUS - "Horse-2" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B4Bh

Return: CF clear if resident

SeeAlso: AX=4B4Ah,AX=4B4Dh


INT 21 4B4D - VIRUS - "Murphy-2", "Patricia"/"Smack" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B4Dh

Return: CF clear if resident

SeeAlso: AX=4B4Ah,AX=4B50h


INT 21 4B50 - VIRUS - "Plastique-2576"/"AntiCad-2576" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B50h

Return: AX = 1234h if resident

SeeAlso: AX=4B4Dh,AX=4B53h,AX=4B60h


INT 21 4B53 - VIRUS - "Horse" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B53h

Return: CF clear if resident

SeeAlso: AX=4B50h,AX=4B53h/BX=2121h,AX=4B55h


INT 21 4B53 - VIRUS - "One Half" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B53h

BX = 2121h

CX = 1212h

DX = 0236h

Return: AX = 454Bh if installed

SeeAlso: AX=4B50h,AX=4B53h,AX=4B55h


INT 21 4B55 - VIRUS - "Sparse" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B55h

Return: AX = 1231h if resident

SeeAlso: AX=4B53h,AX=4B59h


INT 21 4B59 - VIRUS - "Murphy-1", "Murphy-4" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B59h

Return: CF clear if resident

SeeAlso: AX=4B50h,AX=4B5Eh


INT 21 4B5E - VIRUS - "Brothers" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B5Eh

Return: CF clear if resident

SeeAlso: AX=4B59h,AX=4B87h


INT 21 4B60 - VIRUS - "Plastique-2576"/"AntiCad-2576" - ???

Category: v - virus/antivirus

Inp.:

AX = 4B60h

???

Return: ???

SeeAlso: AX=4B50h


INT 21 4B87 - VIRUS - "Shirley" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B87h

Return: AX = 6663h if resident

SeeAlso: AX=4B5Eh,AX=4B95h


INT 21 4B95 - VIRUS - "Zherkov-1882" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4B95h

Return: AX = 1973h if resident

SeeAlso: AX=4B87h,AX=4BA7h


INT 21 4BA7 - VIRUS - "1876"/"Dash-em" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BA7h

Return: AX = B459h if resident

SeeAlso: AX=4B95h,AX=4BAAh


INT 21 4BAA - VIRUS - "Nomenklatura" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BAAh

Return: CF clear if resident

SeeAlso: AX=4BA7h,AX=4BAFh


INT 21 4BAF - VIRUS - "948"/"Screenplus1", "Magnitogorsk" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BAFh

Return: AL = AFh if "Magnitogorsk" resident

AL = FAh if "948"/"Screenplus1" resident

SeeAlso: AX=4BAAh,AX=4BDDh


INT 21 4BDD - VIRUS - "Lozinsky"/"Zherkov" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BDDh

Return: AX = 1234h

SeeAlso: AX=4BAFh,AX=4BFEh


INT 21 4BEE - F-DRIVER.SYS v1.14+ - GRAB INT 21

Category: v - virus/antivirus

Inp.:

AX = 4BEEh

Return: AX = status

    1234h grab was successful

    2345h failed (INT 21 grabbed previously)

Program: F-DRIVER.SYS is part of the shareware F-PROT virus/trojan protection

  package by Fridrik Skulason

Note:	when called the first time, this function moves the INT 21 monitoring

  code from its original location in the INT 21 chain to be the first

  thing called by INT 21.  This is the mechanism used by F-NET.

SeeAlso: INT 2F/AX=4653h


INT 21 4BF0 - DIET v1.10+ (Overlay Mode) - INSTALLATION CHECK

Category: k - file/disk compression

Inp.:

AX = 4BF0h

Return: CF clear if installed

    AX = 899Dh

Program: DIET is an executable-compression program by Teddy Matsumoto

SeeAlso: AX=37D0h,AX=4BF1h


INT 21 4BF1 - DIET v1.10+ (Overlay Mode) - EXPAND PROGRAM???

Category: k - file/disk compression

Inp.:

AX = 4BF1h

Return: ???

SeeAlso: AX=37D0h,AX=4BF0h


INT 21 4BFE - VIRUS - "Hitchcock", "Dark Avenger-1028", "1193" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BFEh

Return: AX = 1234h if "Hitchcock" resident

AX = ABCDh if "1193"/"Copyright" resident

DI = 55BBh if "Dark Avenger-1028" resident

SeeAlso: AX=4BDDh,AX=4BFFh"Justice"


INT 21 4BFF - VIRUS - "USSR-707", "Justice", "Europe 92" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BFFh

Return: BL = FFh if "USSR-707" resident

DI = 55AAh if "Justice" resident

CF clear if "Europe 92" resident

SeeAlso: AX=4BFEh,AX=4BFFh"Cascade",AX=5252h


INT 21 4BFF - VIRUS - "Cascade" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 4BFFh

SI = 0000h

DI = 0000h

Return: DI = 55AAh if installed

SeeAlso: AX=4BFFh"Justice",AX=5252h


INT 21 4C-- - DOS 2+ - "EXIT" - TERMINATE WITH RETURN CODE

Category: D - DOS kernel

Inp.:

AH = 4Ch

AL = return code

Return: never returns

Notes:	unless the process is its own parent (see #0603 at AH=26h, offset 16h

  in PSP), all open files are closed and all memory belonging to the

  process is freed

all network file locks should be removed before calling this function

SeeAlso: AH=00h,AH=26h,AH=4Bh,AH=4Dh,INT 15/AH=12h/BH=02h,INT 20,INT 22

SeeAlso: INT 60/DI=0601h


INT 21 4C57 - Headroom - ???

Category: - - (none)

Inp.:

AX = 4C57h

DS:DX -> target address

Note:	jumps to target address instead of terminating program

SeeAlso: AX=5758h


INT 21 4D-- - DOS 2+ - GET RETURN CODE (ERRORLEVEL)

Category: D - DOS kernel

Inp.:

AH = 4Dh

Return: AH = termination type

    00h normal (INT 20,INT 21/AH=00h, or INT 21/AH=4Ch)

    01h control-C abort

    02h critical error abort

    03h terminate and stay resident (INT 21/AH=31h or INT 27)

AL = return code

Notes:	the word in which DOS stores the return code is cleared after being

  read by this function, so the return code can only be retrieved once

COMMAND.COM stores the return code of the last external command it

  executed as ERRORLEVEL

this call should not be used if the child was started with AX=4B04h;

  use AH=8Ah instead

the following sequence will close a Virtual DOS Machine under OS/2 2.0:

  MOV	AH,4Dh

  INT	21h

  HLT

  DB	02h,0FDh

  This sequence is the only way to close a specific VDM which was

  booted from floppy or a disk image.

SeeAlso: AH=4Bh,AH=4Ch,AH=8Ah


INT 21 4E-- - DOS 2+ - "FINDFIRST" - FIND FIRST MATCHING FILE

Category: D - DOS kernel

Inp.:

AH = 4Eh

AL = special flag for use by APPEND (see note below)

CX = file attribute mask (see #0643 at AX=4301h) (bits 0 and 5 ignored)

    0088h (Novell DOS 7) find first deleted file

DS:DX -> ASCIZ file specification (may include path and wildcards)

Return: CF clear if successful

    [DTA] = FindFirst data block (see #0839)

CF set on error

    AX = error code (02h,03h,12h) (see #0885 at AH=59h)

Notes:	for search attributes other than 08h, all files with at MOST the

  specified combination of hidden, system, and directory attributes

  will be returned.  Under DOS 2.x, searching for attribute 08h

  (volume label) will also return normal files, while under DOS 3.0+

  only the volume label (if any) will be returned.

this call also returns successfully if given the name of a character

  device without wildcards.  DOS 2.x returns attribute 00h, size 0,

  and the current date and time.  DOS 3.0+ returns attribute 40h and

  the current date and time.

immediately after an INT 2F/AX=B711h (APPEND return found name), the

  name at DS:DX will be overwritten; if AL=00h on entry, the actual

  found pathname will be stored, otherwise, the actual found path

  will be prepended to the original filespec without a path.

under LANtastic, this call may be used to obtain a list of a server's

  shared resources by searching for "\\SERVER\*.*"; a list of printer

  resources may be obtained by searching for "\\SERVER\@*.*"

under the FlashTek X-32 DOS extender, the filespec pointer is in DS:EDX

BUGS:	under DOS 3.x and 4.x, the second and subsequent calls to this function

  with a character device name (no wildcards) and search attributes

  which include the volume-label bit (08h) will fail unless there is

  an intervening DOS call which implicitly or explicity performs a

  directory search without the volume-label bit.  Such implicit

  searches are performed by CREATE (AH=3Ch), OPEN (AH=3Dh), UNLINK

  (AH=41h), and RENAME (AH=56h)

DR-DOS 3.41 and 5.0 return the Directory attribute for the volume label

SeeAlso: AH=11h,AH=4Fh,AX=4301h,AX=714Eh,AX=71A1h,INT 2F/AX=111Bh

SeeAlso: INT 2F/AX=B711h


INT 21 4E-- - WILDUNIX.COM internal - INSTALLATION CHECK

Category: f - file manipulation

Inp.:

AH = 4Eh

DS:DX = 0000h:0000h

Return: AH = 99h if installed

Program: WILDUNIX.COM is a resident Unix-style wildcard expander by Steve

  Hosgood and Terry Barnaby


INT 21 4F-- - DOS 2+ - "FINDNEXT" - FIND NEXT MATCHING FILE

Category: D - DOS kernel

Inp.:

AH = 4Fh

[DTA] = data block from previous FindFirst or FindNext call

Return: CF clear if successful

CF set on error

    AX = error code (12h) (see #0885 at AH=59h)

Note:	under Novell DOS 7, if the FindFirst call (AH=4Eh) had CX=0088h, then

  the next matching deleted file will be returned

BUG:	DR-DOS 3.41 and 5.0 return the Directory attribute for the volume label

SeeAlso: AH=12h,AH=4Eh,AX=714Fh,AX=71A1h


INT 21 50-- - DOS 2+ internal - SET CURRENT PROCESS ID (SET PSP ADDRESS)

Category: D - DOS kernel

Inp.:

AH = 50h

BX = segment of PSP for new process

Notes:	DOS uses the current PSP address to determine which processes own files

  and memory; it corresponds to process identifiers used by other OSs

under DOS 2.x, this function cannot be invoked inside an INT 28h

  handler without setting the Critical Error flag

under MS-DOS 3.0+ and DR-DOS 3.41+, this function does not use any of

  the DOS-internal stacks and may thus be called at any time, even

  during another INT 21h call

some Microsoft applications such as Quick C 2.51 use segments of 0000h

  and FFFFh and direct access to the SDA (see #0892 at AX=5D06h) to

  test whether they are running under MS-DOS rather than a compatible

  OS; although one should only call this function with valid PSP

  addresses, any program hooking it should be prepared to handle

  invalid addresses

this function is supported by the OS/2 compatibility box

this call was undocumented prior to the release of DOS 5.0

SeeAlso: AH=26h,AH=51h,AH=62h


INT 21 51-- - DOS 2+ internal - GET CURRENT PROCESS ID (GET PSP ADDRESS)

Category: D - DOS kernel

Inp.:

AH = 51h

Return: BX = segment of PSP for current process

Notes:	DOS uses the current PSP address to determine which processes own files

  and memory; it corresponds to process identifiers used by other OSs

under DOS 2.x, this function cannot be invoked inside an INT 28h

  handler without setting the Critical Error flag

under DOS 3.0+, this function does not use any of the DOS-internal

  stacks and may thus be called at any time, even during another

  INT 21h call

supported by OS/2 compatibility box

identical to the documented AH=62h

this call was undocumented prior to the release of DOS 5.0

SeeAlso: AH=26h,AH=50h,AH=62h


INT 21 52-- - DOS 2+ internal - "SYSVARS" - GET LIST OF LISTS

undocumented function

Category: D - DOS kernel

Inp.:

AH = 52h

Return: ES:BX -> DOS list of lists (see #0840)

Notes:	partially supported by OS/2 v1.1 compatibility box (however, most

  pointers are FFFFh:FFFFh, LASTDRIVE is FFh, and the NUL header "next"

  pointer is FFFFh:FFFFh).

partially supported by the Windows NT DOS box; contains only a

  rudimentary Current Directory Structure (see #0857)

on return, ES points at the DOS data segment (see also INT 2F/AX=1203h)

Quarterdeck's suggested check for the use of its DOSDATA.SYS or

  DOS-UP.SYS is to test whether the list-of-lists segment is greater

  than the segment of the first memory block; a better check for

  DOS-UP.SYS is INT 21/AX=2B01h/CX=444Dh

SeeAlso: INT 2F/AX=1203h


INT 21 5252 - VIRUS - "516"/"Leapfrog" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 5252h

Return: BX = FFEEh if resident

SeeAlso: AX=4BFFh"Cascade",AX=58CCh


INT 21 53-- - DOS 2+ internal - TRANSLATE BIOS PARAMETER BLOCK TO DRIVE PARAM BLOCK

Category: D - DOS kernel

Inp.:

AH = 53h

DS:SI -> BIOS Parameter Block (see #0875)

ES:BP -> buffer for Drive Parameter Block (see #0620 at AH=32h)

Return: ES:BP buffer filled

Notes:	for DOS 3.0+, the cluster at which to start searching is set to 0000h

  and the number of free clusters is set to FFFFh (unknown)

if the number of sectors per cluster is set to zero, MS-DOS will hang

  at startup because it computes the internally-used shift count by

  shifting this value right until the carry flag is set; since this

  will never happen when the field is zero, MS-DOS hangs


INT 21 54-- - DOS 2+ - GET VERIFY FLAG

Category: D - DOS kernel

Inp.:

AH = 54h

Return: AL = verify flag

    00h off

    01h on (all disk writes verified after writing)

SeeAlso: AH=2Eh


INT 21 55-- - DOS 2+ internal - CREATE CHILD PSP

Category: D - DOS kernel

Inp.:

AH = 55h

DX = segment at which to create new PSP

SI = (DOS 3.0+) value to place in memory size field at DX:[0002h]

Return: CF clear if successful

Notes:	creates a "child" PSP rather than making an exact copy of the current

  PSP; the new PSP's parent pointer is set to the current PSP and the

  reference count for each inherited file is incremented

(DOS 2.0+) sets current PSP to DX

(DOS 3.0+) marks "no inherit" file handles as closed in child PSP

BUG:	OS/2 Warp's DOS box does not clear CF on success, instead leaving it

  in its former state; to work around this, ensure that CF is clear

  before calling

SeeAlso: AH=26h,AH=50h


INT 21 56-- - DOS 2+ - "RENAME" - RENAME FILE

Category: D - DOS kernel

Inp.:

AH = 56h

DS:DX -> ASCIZ filename of existing file (no wildcards, but see below)

ES:DI -> ASCIZ new filename (no wildcards)

CL = attribute mask (server call only, see below)

Return: CF clear if successful

CF set on error

    AX = error code (02h,03h,05h,11h) (see #0885)

Notes:	allows move between directories on same logical volume

this function does not set the archive attribute

  (see #0643 at AX=4301h), which results in incremental backups not

  backing up the file under its new name

open files should not be renamed

(DOS 3.0+) allows renaming of directories

(DOS 3.1+) wildcards are allowed if invoked via AX=5D00h, in which case

  error 12h (no more files) is returned on success, and both source and

  destination specs must be canonical (as returned by AH=60h).

  Wildcards in the destination are replaced by the corresponding char

  of each source file being renamed.  Under DOS 3.x, the call will fail

  if the destination wildcard is *.* or equivalent; under DR-DOS 5.0,

  the call will fail if any wildcards are used.	 When invoked via

  AX=5D00h, only those files matching the attribute mask in CL are

  renamed.

under the FlashTek X-32 DOS extender, the old-name pointer is in DS:EDX

  and the new-name pointer is in ES:EDI (DS must equal ES)

(DOS 2.x only) this function renames file by creating a new directory

  entry with the new name,then marking the old entry deleted

BUG:	under DR-DOS 3.41, this function will generate a new directory entry

  with the new name (including any wildcards) which can only be removed

  with a sector editor when invoked via AX=5D00h

SeeAlso: AH=17h,AX=4301h,AX=5D00h,AH=60h,AH=71h


INT 21 5643 - VIRUS - "PS-MPC.Gold" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 5643h  ('VC')

Return: AX = 5053h  ('PS') if resident

SeeAlso: AX=33E0h"VIRUS",AX=6303h"VIRUS"


INT 21 5700 - DOS 2+ - GET FILE'S DATE AND TIME

Category: D - DOS kernel

Inp.:

AX = 5700h

BX = file handle

Return: CF clear if successful

    CX = file's time (see #0876)

    DX = file's date (see #0877)

CF set on error

    AX = error code (01h,06h) (see #0885)

Note:	under DR-DOS 3.41 and 5.0, this function returns 0 (no date/time) for

  character devices; MS-DOS returns date and time of opening

SeeAlso: AX=5701h


INT 21 5701 - DOS 2+ - SET FILE'S DATE AND TIME

Category: D - DOS kernel

Inp.:

AX = 5701h

BX = file handle

CX = new time (see #0876)

DX = new date (see #0877)

Return: CF clear if successful

CF set on error

    AX = error code (01h,06h) (see #0885)

SeeAlso: AX=5700h


INT 21 5702 - DOS 4.x only - GET EXTENDED ATTRIBUTES FOR FILE

Category: D - DOS kernel

Inp.:

AX = 5702h

BX = file handle

CX = size of result buffer or 0000h

DS:SI -> EAP list (see #0878)

ES:DI -> buffer for returned EAV list (see #0881)

Return: CF clear if successful

    CX = size of returned data

CF set on error

    AX = error code (see #0885)

Desc:	get the current value of one or more extended attributes

Notes:	if CX=0000h on entry, ES:DI is ignored and no data is actually

  returned, only the amount of data which is available

the default DOS 4 behavior is to return a single word of 0000h (no

  structures) in the result buffer if CX>=0002h on entry

SeeAlso: AX=5703h,AX=5704h,AH=6Eh,INT 2F/AX=112Dh


INT 21 5702 - OS/2 v1.1+ Family API - DosQFileInfo

Category: O - other operating systems

Inp.:

AX = 5702h

BX = file handle

CX = size of buffer for information

DX = level of information

ES:DI -> buffer for information

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5702h/BX=FFFFh,AX=5703h"OS/2"


INT 21 5702 - OS/2 v1.1+ Compatibility Box Family API - DosQPathInfo

Category: O - other operating systems

Inp.:

AX = 5702h

BX = FFFFh

CX = size of buffer for information

DX = level of information (0002h)

DS:SI -> filename

ES:DI -> buffer for FAPI path information (see #0883)

Return: CF clear if successful

    AL = 00h

CF set on error

    AX = error code

SeeAlso: AX=5702h"OS/2",AX=5703h/BX=FFFFh


INT 21 5703 - DOS 4.x only - GET EXTENDED ATTRIBUTE PROPERTIES

Category: D - DOS kernel

Inp.:

AX = 5703h

BX = file handle

CX = size of result buffer or 0000h

ES:DI -> result buffer

Return: CF clear if successful

    CX = size of returned data

CF set on error

    AX = error code (see #0885)

ES:DI -> zero word (DOS 4.0) if CX >= 2 on entry

Desc:	get a list of the extended attributes which are defined for the

  specified file

Notes:	if CX=0000h on entry, ES:DI is ignored and no data is actually

  returned, only the amount of data which is available

the default DOS 4 behavior is to return a trivial EAP list consisting

  of the single word 0000h (no EAP structures) if CX>=0002h on entry

SeeAlso: AX=5702h,AX=5704h,AH=6Eh,INT 2F/AX=112Dh


INT 21 5703 - OS/2 v1.1+ Family API - DosSetFileInfo

Category: O - other operating systems

Inp.:

AX = 5703h

BX = file handle

CX = size of information buffer

DX = level of information

ES:DI -> information buffer

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5702h"OS/2",AX=5703h/BX=FFFFh


INT 21 5703 - OS/2 v1.1+ Family API - DosSetPathInfo

Category: O - other operating systems

Inp.:

AX = 5703h

BX = FFFFh

CX = size of information buffer

DX = level of information

DS:SI -> filename

ES:DI -> information buffer

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5702h/BX=FFFFh,AX=5703h"OS/2"


INT 21 5704 - DOS 4.x only - SET EXTENDED ATTRIBUTES

Category: D - DOS kernel

Inp.:

AX = 5704h

BX = file handle

ES:DI -> EAV list (see #0881)

Return: CF clear if successful

CF set on error

    AX = error code (see #0885)

Note:	the default DOS 4 behavior is to do nothing and return successfully

SeeAlso: AX=5702h,AX=5703h,INT 2F/AX=112Dh


INT 21 5757 - IBM Genie - Resident Manager - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = 5757h

BX = 5757h

Return: AX = 0000h if installed

    BX = ???

    DX = ???

    DS:SI -> list of 27 DWORD entry point addresses

Program: IBM Genie is a set of utility TSRs by Helix Software

Note:	other functions possible if BX <> 5757h, but details not yet available


INT 21 5758 - Headroom - API

undocumented function

Category: - - (none)

Inp.:

AX = 5758h

BL = function

    00h ???

    01h get Headroom location

Return: CF clear if installed

    AX = PSP segment of Headroom TSR

    BX = paragraphs of memory used by Headroom

CF set if not (normal DOS return)

Note:	this function is also used as an installation check

    02h get INT 21 handler

Return: CF clear

ES:BX -> Headroom's INT 21 handler

Note: also sets unknown flag

    03h launch application???

DS:SI -> 233-byte application record

Return: ???

    04h ???

???

Return: CF clear

    05h get swap directory

Return: CF clear

DX:AX -> ASCIZ swap directory name

    06h ???

DX = ???

Return: CF clear

    07h ???

    08h ???

    09h get current application

Return: BX = application number

    0Ah ???

DX = application number

DS:SI = ???

Return: ???

    0Bh ???

    0Ch ???

DX = application number

???

Return: ???

    0Dh ???

DX = application number

???

Return: ???

    0Eh get ???

Return: CF clear

AX = ???

    0Fh set ??? flag

    10h clear ??? flag

    11h find application by name

DS:SI -> ASCIZ application name

Return: CF clear

AX = application number or FFFFh if not loaded

    12h ???

DX = application number

Return: CF clear

???

    13h ???

Return: CF clear

    14h ???

same as function 13h

    15h set ???

DX = ???

    16h get ???

Return: AX = ??? set by function 15h

    17h get ???

Return: BX = ???

CX = ??? (may be pointer in BX:CX)

    18h BUG: branches incorrectly due to fencepost error

Program: Headroom is a TSR/task switcher by Helix Software

SeeAlso: AX=4C57h,AX=5757h,INT 2F/AX=5758h


INT 21 58-- - DOS 2.11+ - GET OR SET MEMORY ALLOCATION STRATEGY

Category: D - DOS kernel

Inp.:

AH = 58h

AL = subfunction

    00h get allocation strategy

Return: AX = current strategy (see #0884)

    01h set allocation strategy

BL = new allocation strategy (see #0884)

BH = 00h (DOS 5+)

Return: CF clear if successful

CF set on error

    AX = error code (01h) (see #0885)

Notes:	the Set subfunction accepts any value in BL for DOS 3.x and 4.x;

  2 or greater means last fit

the Get subfunction returns the last value set

setting an allocation strategy involving high memory does not

  automatically link in the UMB memory chain; this must be done

  explicitly with AX=5803h in order to actually allocate high memory

a program which changes the allocation strategy should restore it

  before terminating

Toshiba MS-DOS v2.11 supports subfunctions 00h and 01h, as does the

  TI Professional MS-DOS v2.13

DR-DOS 3.41 reportedly reverses subfunctions 00h and 01h

SeeAlso: AH=48h,AH=49h,AH=4Ah,INT 2F/AX=4310h,INT 67/AH=3Fh


INT 21 58-- - DOS 5+ - GET OR SET UMB LINK STATE

Category: D - DOS kernel

Inp.:

AH = 58h

AL = subfunction

    02h get UMB link state

Return: AL = current link state

    00h UMBs not part of DOS memory chain

    01h UMBs in DOS memory chain

    03h set UMB link state

BX = new link state

    0000h remove UMBs from DOS memory chain

    0001h add UMBs to DOS memory chain

Return: CF clear if successful

CF set on error

    AX = error code (01h) (see #0885)

Notes:	a program which changes the UMB link state should restore it before

  terminating

UMBs will only be available if CONFIG.SYS contains the line DOS=UMB,

  the UMBs have been linked into the memory chain with AX=5803h, and

  the allocation strategy has been set to include high memory with

  AX=5801h

SeeAlso: #1485 at INT 2F/AX=4310h


INT 21 58CC - VIRUS - "1067"/"Headcrash" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 58CCh

Return: CF clear if resident

SeeAlso: AX=5643h,AX=5252h,AX=58DDh,AX=6303h"VIRUS",AX=6969h


INT 21 58DD - VIRUS - "1067"/"Headcrash" - GET ORIGINAL INT 21h VECTOR

Category: v - virus/antivirus

Inp.:

AX = 58DDh

Return: CX = code segment of virus

ES:BX = old INT 21h vector

SeeAlso: AX=5252h,AX=58CCh,AX=6969h


INT 21 59-- - DOS 3.0+ - GET EXTENDED ERROR INFORMATION

Category: D - DOS kernel

Inp.:

AH = 59h

BX = 0000h

Return: AX = extended error code (see #0885)

BH = error class (see #0887)

BL = recommended action (see #0888)

CH = error locus (see #0889)

ES:DI may be pointer (see #0886, error code list below)

CL, DX, SI, BP, and DS destroyed

Notes:	functions available under DOS 2.x map the true DOS 3.0+ error code into

  one supported under DOS 2.x

you should call this function to retrieve the true error code when an

  FCB or DOS 2.x call returns an error

under DR-DOS 5.0, this function does not use any of the DOS-internal

  stacks and may thus be called at any time

SeeAlso: AH=59h/BX=0001h,AX=5D0Ah,INT 2F/AX=122Dh


INT 21 59-- - European MS-DOS 4.0 - GET HARD ERROR INFORMATION

Category: D - DOS kernel

Inp.:

AH = 59h

BX = 0001h

Return: ES:DI -> hard error information packet (see #0890) for most recent

hard (critical) error

SeeAlso: AH=59h/BX=0000h,AH=95h,INT 24


INT 21 5A-- - DOS 3.0+ - CREATE TEMPORARY FILE

Category: D - DOS kernel

Inp.:

AH = 5Ah

CX = file attribute (see #0643 at AX=4301h)

DS:DX -> ASCIZ path ending with a '\' + 13 zero bytes to receive the

generated filename

Return: CF clear if successful

    AX = file handle opened for read/write in compatibility mode

    DS:DX pathname extended with generated name for temporary file

CF set on error

    AX = error code (03h,04h,05h) (see #0885)

Desc:	creates a file with a unique name which must be explicitly deleted

BUGS:	COMPAQ DOS 3.31 hangs if the pathname is at XXXXh:0000h; it apparently

  wraps around to the end of the segment

MS-DOS 5.00 revisions A and B and PC-DOS 5.00 revision A reportedly

  hang the system if the specified path is the root directory and the

  root directory is full (no free directory entries)

Note:	under the FlashTek X-32 DOS extender, the path pointer is in DS:EDX

SeeAlso: AH=3Ch,AH=5Bh


INT 21 5B-- - DOS 3.0+ - CREATE NEW FILE

Category: D - DOS kernel

Inp.:

AH = 5Bh

CX = file attribute (see #0643 at AX=4301h)

DS:DX -> ASCIZ filename

Return: CF clear if successful

    AX = file handle opened for read/write in compatibility mode

CF set on error

    AX = error code (03h,04h,05h,50h) (see #0885)

Notes:	unlike AH=3Ch, this function will fail if the specified file exists

  rather than truncating it; this permits its use in creating semaphore

  files because it is an atomic "test and set" operation

under the FlashTek X-32 DOS extender, the filename pointer is in DS:EDX

SeeAlso: AH=3Ch,AH=5Ah


INT 21 5C-- - DOS 3.0+ - "FLOCK" - RECORD LOCKING

Category: D - DOS kernel

Inp.:

AH = 5Ch

AL = subfunction

    00h lock region of file

    01h unlock region of file

BX = file handle

CX:DX = start offset of region within file

SI:DI = length of region in bytes

Return: CF clear if successful

CF set on error

    AX = error code (01h,06h,21h,24h) (see #0885)

Notes:	error returned unless SHARE or network installed

an unlock call must specify the same region as some prior lock call

locked regions become entirely inaccessible to other processes

duplicate handles created with AH=45h or AH=46h inherit locks, but

  handles inherited by child processes (see AH=4Bh) do not

under DR-DOS 3.41 and 5.0, if a process opens a file without the no-

  inherit flag and then starts a child, any locks set by the parent

  are ignored, and the child will only get an error if it tries to

  lock an area previously locked by the parent process

SeeAlso: AX=440Bh,AH=BCh,AH=BEh,INT 2F/AX=110Ah,INT 2F/AX=110Bh


INT 21 5D00 - DOS 3.1+ internal - SERVER FUNCTION CALL

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D00h

DS:DX -> DOS parameter list (see #0891)

DPL contains all register values for a call to INT 21h

Return: as appropriate for function being called

Notes:	does not check AH.  Out of range values will crash the system

executes using specified computer ID and process ID

sharing delay loops skipped

a special sharing mode is enabled to handle FCBs opened across network

wildcards are enabled for DELETE (AH=41h) and RENAME (AH=56h) under

  MS-DOS; under DR-DOS 3.41, wildcards corrupt the filesystem; and

  under DR-DOS 5.0-6.0, the call returns error code 03h due to improper

  support for the server function call (see below)

an extra file attribute parameter is enabled for OPEN (AH=3Dh),

  DELETE (AH=41h), and RENAME (AH=56h)

functions which take filenames require canonical names (as returned

  by AH=60h); this is apparently to prevent multi-hop file forwarding

BUGS:	the OS/2 2.0 DOS Boot Session incorrectly maps DOS drive letters,

  seemingly ignoring HPFS drives

DR-DOS 5.0-6.0 merely recursively call INT 21 after loading the

  registers from the DPL, leading to problems for peer-to-peer

  networks

SeeAlso: AH=3Dh,AH=41h,AH=56h,AH=60h


INT 21 5D01 - DOS 3.1+ internal - COMMIT ALL FILES FOR SPECIFIED COMPUTER/PROCESS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D01h

DS:DX -> DOS parameter list (see #0891), only computer ID and

  process ID fields used

Return: CF set on error

    AX = error code (see #0885)

CF clear if successful

Notes:	flushes buffers and updates directory entries for each file which has

  been written to; if remote file, calls INT 2F/AX=1107h

the computer ID and process ID are stored but ignored under DOS 3.3

not supported by DR-DOS 3.41 and 5.0; returns error code 01h

SeeAlso: AH=0Dh,AH=68h,INT 2F/AX=1107h


INT 21 5D02 - DOS 3.1+ internal - SHARE.EXE - CLOSE FILE BY NAME

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D02h

DS:DX -> DOS parameter list (see #0891), only fields DX, DS,

  computer ID, and process ID used

DPL's DS:DX -> ASCIZ name of file to close

Return: CF set on error

    AX = error code (see #0885)

CF clear if successful

Notes:	error unless SHARE is loaded (calls [SysFileTable-28h])

  (see #0848 at AH=52h)

name must be canonical fully-qualified, such as returned by AH=60h

not supported by DR-DOS 3.41 and 5.0; returns error code 01h

not supported by Novell DOS 7

SeeAlso: AX=5D03h,AX=5D04h,AH=3Eh,AH=60h


INT 21 5D03 - DOS 3.1+ internal - SHARE.EXE - CLOSE ALL FILES FOR GIVEN COMPUTER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D03h

DS:DX -> DOS parameter list (see #0891), only computer ID used

Return: CF set on error

    AX = error code (see #0885)

CF clear if successful

Notes:	error unless SHARE is loaded (calls [SysFileTable-30h])

  (see #0848 at AH=52h)

not supported by DR-DOS 3.41 and 5.0; returns error code 01h

not supported by Novell DOS 7

SeeAlso: AX=5D02h,AX=5D04h


INT 21 5D04 - DOS 3.1+ internal - SHARE.EXE - CLOSE ALL FILES FOR GIVEN PROCESS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D04h

DS:DX -> DOS parameter list (see #0891), only computer ID and

  process ID fields used

Return: CF set on error

    AX = error code (see #0885)

CF clear if successful

Notes:	error unless SHARE is loaded (calls [SysFileTable-2Ch])

   (see #0848 at AH=52h)

not supported by DR-DOS 3.41 and 5.0; returns error code 01h

not supported by Novell DOS 7

SeeAlso: AX=5D02h,AX=5D03h,INT 2F/AX=111Dh


INT 21 5D05 - DOS 3.1+ internal - SHARE.EXE - GET OPEN FILE LIST ENTRY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D05h

DS:DX -> DOS parameter list (see #0891)

DPL's BX = index of sharing record (see #0849 at AH=52h)

DPL's CX = index of SFT in sharing record's SFT list

Return: CF clear if successful

    ES:DI -> ASCIZ filename

    BX = network machine number of SFT's owner

    CX = number of locks held by SFT's owner

CF set if either index out of range

    AX = 0012h (no more files)

Notes:	error unless SHARE is loaded (calls [SysFileTable-18h])

  (see #0848 at AH=52h)

names are always canonical fully-qualified, such as returned by AH=60h

not supported by DR-DOS 3.41 and 5.0 and Novell DOS 7, but does not

  return an error, instead destroying AX

SeeAlso: AH=5Ch,AH=60h


INT 21 5D06 - DOS 3.0+ internal - GET ADDRESS OF DOS SWAPPABLE DATA AREA

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D06h

Return: CF set on error

   AX = error code (see #0885)

CF clear if successful

    DS:SI -> nonreentrant data area (includes all three DOS stacks)

(critical error flag is first byte) (see #0892)

    CX = size in bytes of area which must be swapped while in DOS

    DX = size in bytes of area which must always be swapped

Notes:	the Critical Error flag is used in conjunction with the InDOS flag

  (see AH=34h) to determine when it is safe to enter DOS from a TSR

setting CritErr flag allows use of functions 50h/51h from INT 28h under

  DOS 2.x by forcing use of correct stack

swapping the data area allows reentering DOS unless DOS is in a

  critical section delimited by INT 2A/AH=80h and INT 2A/AH=81h,82h

under DOS 4.0, AX=5D0Bh should be used instead of this function

SHARE and other DOS utilities consult the byte at offset 04h in the

  DOS data segment (see INT 2F/AX=1203h) to determine the SDA format

  in use: 00h = DOS 3.x, 01h = DOS 4.0-6.0, other = error.

DR-DOS 3.41+ supports this function, but the SDA format beyond the

  first 18h bytes is completely different from MS-DOS

SeeAlso: AX=5D0Bh,INT 2A/AH=80h,INT 2A/AH=81h,INT 2A/AH=82h


INT 21 5D07 - DOS 3.1+ network - GET REDIRECTED PRINTER MODE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D07h

Return: DL = mode

    00h redirected output is combined

    01h redirected output in separate print jobs

SeeAlso: AX=5D08h,AX=5D09h,INT 2F/AX=1125h


INT 21 5D08 - DOS 3.1+ network - SET REDIRECTED PRINTER MODE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D08h

DL = mode

    00h redirected output is combined

    01h redirected output placed in separate jobs, start new print job

now

SeeAlso: AX=5D07h,AX=5D09h,INT 2F/AX=1125h


INT 21 5D09 - DOS 3.1+ network - FLUSH REDIRECTED PRINTER OUTPUT

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D09h

Notes:	forces redirected printer output to be printed, and starts a new print

  job

this function is also supported by 10Net, which calls it Terminate All

  Spool Jobs, and does not flush if in "combine" mode

SeeAlso: AX=5D07h,AX=5D08h,INT 2F/AX=1125h


INT 21 5D0A - DOS 3.1+ - SET EXTENDED ERROR INFORMATION

Category: D - DOS kernel

Inp.:

AX = 5D0Ah

DS:DX -> 11-word DOS parameter list (see #0891)

Return: nothing.  next call to AH=59h will return values from fields AX,BX,CX,

  DX,DI, and ES in corresponding registers

Notes:	documented for DOS 5+, but undocumented in earlier versions

the MS-DOS Programmer's Reference incorrectly states that this call was

  introduced in DOS 4, and fails to mention that the ERROR structure

  passed to this function is a DOS parameter list.

BUGS:	DR-DOS 3.41 and 5.0 read the value for ES from the DS field of the

  DPL; fortunately, MS-DOS ignores the DS field, allowing a generic

  routine which sets both DS and ES fields to the same value

Novell DOS 7 does not save the pointer, which is always reported as

  0000h:0000h by AH=59h

SeeAlso: AH=59h/BX=0000h


INT 21 5D0B - DOS 4.x only internal - GET DOS SWAPPABLE DATA AREAS

obsolete (no longer present in current versions)

undocumented function

Category: D - DOS kernel

Inp.:

AX = 5D0Bh

Return: CF set on error

    AX = error code (see #0885)

CF clear if successful

    DS:SI -> swappable data area list (see #0894)

Notes:	copying and restoring the swappable data areas allows DOS to be

  reentered unless it is in a critical section delimited by calls to

  INT 2A/AH=80h and INT 2A/AH=81h,82h

SHARE and other DOS utilities consult the byte at offset 04h in the

  DOS data segment (see INT 2F/AX=1203h) to determine the SDA format

  in use: 00h = DOS 3.x, 01h = DOS 4.0-6.0, other = error.

DOS 5+ use the SDA format listed below, but revert back to the DOS 3.x

  call for finding the SDA (see #0892)

SeeAlso: AX=5D06h,INT 2A/AH=80h,INT 2A/AH=81h,INT 2A/AH=82h,INT 2F/AX=1203h


INT 21 5E00 - DOS 3.1+ network - GET MACHINE NAME

Category: D - DOS kernel

Inp.:

AX = 5E00h

DS:DX -> 16-byte buffer for ASCII machine name

Return: CF clear if successful

    CH = validity

00h name invalid

nonzero valid

    CL = NetBIOS number for machine name

    DS:DX buffer filled with blank-paded name

CF set on error

    AX = error code (01h) (see #0885 at AH=59h)

Note:	supported by OS/2 v1.3+ compatibility box, PC-NFS

SeeAlso: AX=5E01h


INT 21 5E00 - 10NET v5.0 - GET MACHINE NAME

Category: N - network

Inp.:

AX = 5E00h

Return: CL = redirector's NetBIOS name number

ES:DI -> network node ID

SeeAlso: AX=5E01h"10NET"


INT 21 5E01 - DOS 3.1+ network - SET MACHINE NAME

Category: D - DOS kernel

Inp.:

AX = 5E01h

CH = 00h undefine name (make it invalid)

   <> 0	 define name

CL = name number

DS:DX -> 15-character blank-padded ASCIZ name

SeeAlso: AX=5E00h


INT 21 5E01 - 10NET v5.0 - GET LOCAL 10NET CONFIGURATION TABLE

Category: N - network

Inp.:

AX = 5E01h

CX = length of buffer

DS:DX -> buffer for 10Net configuration table (see #821)

SeeAlso: AX=5E00h"10NET",INT 6F/AH=02h,INT 6F/AH=03h

Table #0896


INT 21 5E02 - DOS 3.1+ network - SET NETWORK PRINTER SETUP STRING

Category: D - DOS kernel

Inp.:

AX = 5E02h

BX = redirection list index (see AX=5F02h)

CX = length of setup string

DS:SI -> setup string

Return: CF clear if successful

CF set on error

    AX = error code (01h) (see #0885 at AH=59h)

Note:	also supported by 10NET v5.0

SeeAlso: AX=5E03h,INT 2F/AX=111Fh


INT 21 5E03 - DOS 3.1+ network - GET NETWORK PRINTER SETUP STRING

Category: D - DOS kernel

Inp.:

AX = 5E03h

BX = redirection list index (see AX=5F02h)

ES:DI -> 64-byte buffer for setup string

Return: CF clear if successful

    CX = length of setup string

    ES:DI buffer filled

CF set on error

    AX = error code (01h) (see #0885 at AH=59h)

Note:	also supported by 10NET v5.0, but 10NET is documented as using DS:SI

  instead of ES:DI

SeeAlso: AX=5E02h,INT 2F/AX=111Fh


INT 21 5E04 - DOS 3.1+ network - SET PRINTER MODE

Category: D - DOS kernel

Inp.:

AX = 5E04h

BX = redirection list index (see AX=5F02h)

DX = mode

    bit 0: set if binary, clear if text (tabs expanded to blanks)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

Note:	calls INT 2F/AX=111Fh with 5E04h on stack

SeeAlso: AX=5E05h"DOS",INT 2F/AX=111Fh


INT 21 5E04 - 10NET v5.0 - INITIATE PRINT JOB

Category: N - network

Inp.:

AX = 5E04h

BX = zero-based redirection list index (see AX=5F02h)

DS:DX -> extended workstation printer setup structure (see #0903)

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at AH=59h)

SeeAlso: AX=5E05h"10NET",AX=5E06h"10NET"


INT 21 5E05 - DOS 3.1+ network - GET PRINTER MODE

Category: D - DOS kernel

Inp.:

AX = 5E05h

BX = redirection list index (see AX=5F02h)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    DX = printer mode (see AX=5E04h)

Note:	calls INT 2F/AX=111Fh with 5E05h on stack

SeeAlso: AX=5E04h"DOS",INT 2F/AX=111Fh


INT 21 5E05 - 10NET v5.0 - TERMINATE PRINT JOB

Category: N - network

Inp.:

AX = 5E05h

BX = zero-based redirection list index (see AX=5F02h)

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at AH=59h)

Note:	this call resets the spool termination mode to "truncate"

  (see AX=5D08h)

SeeAlso: AX=5E04h"10NET",AX=5E06h


INT 21 5E06 - 10NET v5.0 - GET/SET 10NET WORKSTATION PRINTER SETUP STRUCTURE

Category: N - network

Inp.:

AX = 5E06h

BX = zero-based redirection list index (see AX=5F02h)

CX = operation (06h set, 07h get)

DS:DX -> buffer for setup structure (same as first nine bytes of

  workstation printer setup) (see #0903)

Return: CF clear if successful

    DS:DX buffer updated on get

CF set on error

    AX = error code (see #0885 at AH=59h)

SeeAlso: AX=5E04h"10NET",AX=5E05h"10NET"


INT 21 5F00 - DOS 3.1+ network - GET REDIRECTION MODE

Category: D - DOS kernel

Inp.:

AX = 5F00h

BL = redirection type

    03h printer

    04h disk drive

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    BH = redirection state

00h off

01h on

Note:	calls INT 2F/AX=111Eh with AX on top of the stack

SeeAlso: AX=5F01h,INT 2F/AX=111Eh


INT 21 5F01 - DOS 3.1+ network - SET REDIRECTION MODE

Category: D - DOS kernel

Inp.:

AX = 5F01h

BL = redirection type

    03h printer

    04h disk drive

BH = redirection state

    00h off

    01h on

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

Notes:	when redirection is off, the local device (if any) rather than the

  remote device is used

calls INT 2F/AX=111Eh with AX on top of the stack

SeeAlso: AX=5F00h,INT 2F/AX=111Eh,INT 60/AX=0002h


INT 21 5F02 - DOS 3.1+ network - GET REDIRECTION LIST ENTRY

Category: D - DOS kernel

Inp.:

AX = 5F02h

BX = zero-based redirection list index

CX = 0000h (LANtastic)

DS:SI -> 16-byte buffer for ASCIZ local device name or drive letter

  followed by colon

ES:DI -> 128-byte buffer for ASCIZ network name

Return: CF clear if successful

    BH = device status

00h valid

01h invalid

02h valid (connected from inside Windows for Workgroups v3.11)

    BL = device type

03h printer

04h disk drive

    CX = user data previously set with AX=5F03h

    DS:SI and ES:DI buffers filled

    DX,BP destroyed

CF set on error

    AX = error code (01h,12h) (see #0885 at AH=59h)

Notes:	this function is passed through to INT 2F/AX=111Eh by the DOS kernel

error code 12h is returned if BX is greater than the size of the list

also supported by Banyan VINES, PC-NFS, LANtastic, and 10NET

supported by LapLink RemoteAccess but returns the local drive letter;

  the remote drive letter can be obtained with INT 2F/AX=Cxxxh

  (see INT 2F/AX=C000h"LapLink")

the returned device name may or may not include a colon, depending on

  the network software

SeeAlso: AX=5F03h,AX=5F46h,INT 2F/AX=111Eh,INT 2F/AX=C000h"LapLink"


INT 21 5F03 - DOS 3.1+ network - REDIRECT DEVICE

Category: D - DOS kernel

Inp.:

AX = 5F03h

BL = device type

    03h printer

    04h disk drive

CX = user data to save

0000h for LANtastic

4E57h ("NW") for NetWare 4.0 requester

DS:SI -> ASCIZ local device name (16 bytes max)

ES:DI -> ASCIZ network name + ASCIZ password (128 bytes max total)

Return: CF clear if successful

CF set on error

    AX = error code (01h,03h,05h,08h,0Fh,12h) (see #0885 at AH=59h)

Notes:	if device type is disk drive, DS:SI must point at either a null string

  or a string consisting the drive letter followed by a colon; if a

  null string, the network attempts to access the destination without

  redirecting a local drive

the DOS kernel calls INT 2F/AX=111Eh with AX on top of the stack

also supported by Banyan VINES, LANtastic, and 10NET

SeeAlso: AX=5F02h,AX=5F04h,INT 2F/AX=111Eh,INT 60/AX=0002h


INT 21 5F04 - DOS 3.1+ network - CANCEL REDIRECTION

Category: D - DOS kernel

Inp.:

AX = 5F04h

DS:SI -> ASCIZ local device name or path

CX = 4E57h ("NW") for NetWare 4.0 requester

Return: CF clear if successful

CF set on error

    AX = error code (01h,03h,05h,08h,0Fh,12h) (see #0885 at AH=59h)

Notes:	the DS:SI string must be either a local device name, a drive letter

  followed by a colon, or a network directory beginning with two

  backslashes

the DOS kernel calls INT 2F/AX=111Eh with AX on top of the stack

also supported by Banyan VINES, LANtastic, and 10NET

SeeAlso: AX=5F03h,INT 2F/AX=111Eh,INT 60/AX=0003h


INT 21 5F05 - DOS 4.0+ network - GET EXTENDED REDIRECTION LIST ENTRY

Category: D - DOS kernel

Inp.:

AX = 5F05h

BX = redirection list index

DS:SI -> buffer for ASCIZ source device name

ES:DI -> buffer for destination ASCIZ network path

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX = server's network process ID handle (10NET)

    BH = device status flag (bit 0 clear if valid)

    BL = device type (03h if printer, 04h if drive)

    CX = stored parameter value (user data) from AX=5F03h

    BP = NETBIOS local session number

    DS:SI buffer filled

    ES:DI buffer filled

Notes:	the local session number allows sharing the redirector's session number

if an error is caused on the NETBIOS LSN, the redirector may be unable

  to correctly recover from errors

the DOS kernel calls INT 2F/AX=111Eh with AX on top of the stack

supported by DR-DOS 5.0

also supported by 10NET v5.0

SeeAlso: AX=5F06h"Network",INT 2F/AX=111Eh


INT 21 5F05 - STARLITE architecture - MAP LOCAL DRIVE LETTER TO REMOTE FILE SYSTEM

Category: O - other operating systems

Inp.:

AX = 5F05h

DL = drive number (0=A:)

DS:SI -> ASCIZ name of the object to map the drive to

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

SeeAlso: AX=5F06h"STARLITE",INT 60/AX=0002h


INT 21 5F06 - Network - GET FULL REDIRECTION LIST

undocumented function

Category: N - network

Inp.:

AX = 5F06h

???

Return: ???

Notes:	similar to AX=5F02h and AX=5F05h, but also returns redirections

  excluded from those calls for various reasons

calls INT 2F/AX=111Eh with AX on top of the stack

SeeAlso: AX=5F05h"DOS",INT 2F/AX=111Eh


INT 21 5F06 - STARLITE architecture - UNMAP DRIVE LETTER

Category: O - other operating systems

Inp.:

AX = 5F06h

DL = drive to be unmapped (0=A:)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

SeeAlso: AX=5F05h"STARLITE",INT 60/AX=0003h


INT 21 5F07 - DOS 5+ - ENABLE DRIVE

Category: D - DOS kernel

Inp.:

AX = 5F07h

DL = drive number (0=A:)

Return: CF clear if successful

CF set on error

    AX = error code (0Fh) (see #0885 at AH=59h)

Notes:	simply sets the "valid" bit in the drive's CDS

this function is not supported by Novell DOS 7 through at least

  Update 4, but support was added by Update 13

SeeAlso: AH=52h,AX=5F08h"DOS"


INT 21 5F07 - STARLITE architecture - MAKE NAMED OBJECT AVAILABLE ON NETWORK

Category: O - other operating systems

Inp.:

AX = 5F07h

DS:SI -> ASCIZ name of object to offer to network

ES:DI -> ASCIZ name under which object will be known on the network

MUST begin with three slashes

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

SeeAlso: AX=5F08h"STARLITE"


INT 21 5F08 - DOS 5+ - DISABLE DRIVE

Category: D - DOS kernel

Inp.:

AX = 5F08h

DL = drive number (0=A:)

Return: CF clear if successful

CF set on error

    AX = error code (0Fh) (see #0885 at AH=59h)

Notes:	simply clears the "valid" bit in the drive's CDS

this function is not supported by Novell DOS 7 through at least

  Update 4, but support was added by Update 13

SeeAlso: AH=52h,AX=5F07h"DOS"


INT 21 5F08 - STARLITE architecture - REMOVE GLOBAL NETWORK NAME OF OBJECT

Category: O - other operating systems

Inp.:

AX = 5F08h

DS:SI -> ASCIZ network name (not local name) of object to unshare

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

SeeAlso: AX=5F07h"STARLITE"


INT 21 5F09 - STARLITE architecture - BIND TO NETWORK DEVICE

Category: O - other operating systems

Inp.:

AX = 5F09h

DS:DX -> ASCIZ name of the device driver to attach to

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

Note:	the STARLITE distributed file system can attach to multiple networks

  simultaneously

SeeAlso: AX=5F0Ah


INT 21 5F0A - STARLITE architecture - DETACH FROM NETWORK DEVICE

Category: O - other operating systems

Inp.:

AX = 5F0Ah

DS:DX -> ASCIZ name of device driver to detach from

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

SeeAlso: AX=5F09h


INT 21 5F30 - LAN Manager Enhanced DOS - GET REDIRECTOR VERSION

undocumented function

Category: N - network

Inp.:

AX = 5F30h

Return: AX = version (AH=major,AL=minor)


INT 21 5F32 - Named Pipes - LOCAL DosQNmPipeInfo

partially documented function

Category: N - network

Inp.:

AX = 5F32h

BX = handle

CX = size of _PIPEINFO structure

DX = level (must be 0001h)

DS:SI -> _PIPEINFO structure (see #0906)

Return: CF clear if successful

    _PIPEINFO structure filled in

CF set on error

    AX = error code

Note:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F33h,AX=5F34h


INT 21 5F33 - Named Pipes - LOCAL DosQNmPHandState

partially documented function

Category: N - network

Inp.:

AX = 5F33h

BX = handle

Return: CF clear if successful

    AH = pipe mode bit mask (see #0907)

    AL = maximum number of instances

CF set on error

    AX = error code

Note:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F32h,AX=5F34h


INT 21 5F34 - Named Pipes - LOCAL DosSetNmPHandState

partially documented function

Category: N - network

Inp.:

AX = 5F34h

BX = handle

CX = pipe mode bit mask

    bit 15: set if nonblocking, clear if blocking

    bit	 8: set if read in message mode, clear if read in byte mode

Return: CF clear if successful

CF set if error

    AX = error code

Note:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F32h,AX=5F33h,AX=5F36h


INT 21 5F35 - Named Pipes - LOCAL DosPeekNmPipe

partially documented function

Category: N - network

Inp.:

AX = 5F35h

BX = handle

CX = buffer length

DS:SI -> buffer

Return:	CF set on error

    AX = error code

CF clear if successful (LAN Manager v1-v2)

AX = 0000h if successful (LAN Manager 3.x)

---if successful---

    CX = bytes read

    SI = bytes left in the pipe

    DX = bytes left in the current message

    AX = pipe status (v1-v2) (see #0908)

    DI = pipe status (v3.x)

Note:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F38h,AX=5F39h,AX=5F51h


INT 21 5F36 - Named Pipes - LOCAL DosTransactNmPipe

partially documented function

Category: N - network

Inp.:

AX = 5F36h

BX = handle

CX = in buffer length

DS:SI -> in buffer

DX = out buffer length

ES:DI -> out buffer

Return: CF clear if successful

    CX = bytes read

CF set on error

    AX = error code

Note:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F34h,AX=5F37h


INT 21 5F37 - Named Pipes - DosCallNmPipe

partially documented function

Category: N - network

Inp.:

AX = 5F37h

DS:SI -> DosCallNmPipe stack frame (see #0909)

Return: CF clear if successful

    CX = bytes read

CF set on error

    AX = error code

Note:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F36h,AX=5F38h


INT 21 5F38 - Named Pipes - LOCAL DosWaitNmPipe - AWAIT AVAIL. OF PIPE INSTANCE

partially documented function

Category: N - network

Inp.:

AX = 5F38h

DS:DX -> pipe name

BX:CX = timeout value

Return: CF clear if successful

CF set if error

    AX = error code

Notes:	when a client gets a return code of ERROR_PIPE_BUSY on attempting to

  open a pipe, it should issue this call to wait until the pipe

  instance becomes available again; on return from this call, the

  client must attempt to open the pipe once again

this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

SeeAlso: AX=5F37h,AX=5F39h


INT 21 5F39 - Named Pipes - LOCAL DosRawReadNmPipe

undocumented function

Category: N - network

Inp.:

AX = 5F39h

BX = handle

CX = buffer length

DS:DX -> buffer

Return: CF clear if successful

    CX = bytes read

CF set if error

    AX = error code

Notes:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

not documented in the LAN Manager Toolkit

SeeAlso: AX=5F35h,AX=5F3Ah,INT 2F/AX=1186h


INT 21 5F3A - Named Pipes - LOCAL DosRawWriteNmPipe

undocumented function

Category: N - network

Inp.:

AX = 5F3Ah

BX = handle

CX = buffer length

DS:DX -> buffer

Return: CF clear if successful

    CX = bytes written

CF set if error

    AX = error code

Notes:	this function was introduced by LAN Manager but is also supported by

  the Novell DOS Named Pipe Extender, Banyan VINES, OS/2 Virtual DOS

  Machines, and others

not documented in the LAN Manager Toolkit

SeeAlso: AX=5F39h,AX=5F3Bh,INT 2F/AX=118Fh


INT 21 5F3B - LAN Manager Enhanced DOS - NetHandleSetInfo

partially documented function

Category: N - network

Inp.:

AX = 5F3Bh

BX = handle

CX = handle_info_1 structure length or sizeof DWORD

DI = parameter number to set

    0000h all

    0001h number of milliseconds

    0002h number of characters

DS:DX -> handle_info_1 structure (DI=0000h) (see #0910)

or DWORD (DI=0001h or 0002h)

SI = level of information (0001h)

Return: CF clear if successful

    CX = total bytes available

CF set if error

    AX = error code

SeeAlso: AX=5F3Ch


INT 21 5F3C - LAN Manager Enhanced DOS - NetHandleGetInfo

partially documented function

Category: N - network

Inp.:

AX = 5F3Ch

BX = handle

CX = length of handle_info_1 structure

DS:DX -> handle_info_1 structure (see #0910)

SI = level of information (must be 0001h)

Return: CF clear if successful

    CX = total bytes available

CF set if error

    AX = error code

SeeAlso: AX=5F3Bh


INT 21 5F3D - LAN Manager Enhanced DOS - WRITE MAILSLOT???

undocumented function

Category: N - network

Inp.:

AX = 5F3Dh

???

Return: ???


INT 21 5F3E - LAN Manager Enhanced DOS - LOCAL NetSpecialSMB

partially documented function

Category: N - network

Inp.:

AX = 5F3Eh

???

Return: ???

Note:	This function is not documented anywhere in the LAN Manager 2.x Toolkit

  but was documented in LAN Manager 1.x manuals.


INT 21 5F3F - LAN Manager Enhanced DOS - REMOTE API CALL

undocumented function

Category: N - network

Inp.:

AX = 5F3Fh

CX = api number

ES:DI -> data descriptor

ES:SI -> parameter descriptor

ES:DX -> auxiliary descriptor (if DX <> 0)

???

Return: ???


INT 21 5F40 - LAN Manager Enhanced DOS - LOCAL NetMessageBufferSend

partially documented function

Category: N - network

Inp.:

AX = 5F40h

DS:DX -> NetMessageBufferSend parameter structure (see #0911)

Return: AX = error code


INT 21 5F41 - LAN Manager Enhanced DOS - LOCAL NetServiceEnum

partially documented function

Category: N - network

Inp.:

AX = 5F41h

BL = level of detail (0000h, 0001h or 0002h)

CX = buffer length

ES:DI -> buffer of service_info_0, service_info_1, or service_info_2

(see #0912,#0913,#0914)

Return: CF clear if successful

    CX = entries read

    DX = total available

CF set on error

    AX = error code


INT 21 5F42 - LAN Manager Enhanced DOS - LOCAL NetServiceControl

partially documented function

Category: N - network

Inp.:

AX = 5F42h

DH = opcode

    00h interrogate status

    01h pause

    02h continue

    03h uninstall

DL = argument

    01h disk resource

    02h print resource

    04h communications resource (not implemented for DOS)

ES:BX -> NetServiceControl parameter structure (see #0917)

Return: CF clear if successful

CF set on error

    AX = error code


INT 21 5F43 - LAN Manager Enhanced DOS - LOCAL DosPrintJobGetId

partially documented function

Category: N - network

Inp.:

AX = 5F43h

BX = handle of remote print job

CX = size of PRIDINFO struture

ES:DI -> PRIDINFO structure (see #0918)

Return: CF clear if successful

    PRIDINFO filled in

CF set on error

    AX = error code


INT 21 5F44 - LAN Manager Enhanced DOS - LOCAL NetWkstaGetInfo

Category: N - network

Inp.:

AX = 5F44h

BX = information level (00h, 01h, or 0Ah)

CX = buffer size

ES:DI -> buffer in which to store info (see #2715,#2716,#2717)

Return: AX = error code

DX = amount of buffer used (or required)

SeeAlso: AX=5F45h,AX=5F49h


INT 21 5F45 - LAN Manager Enhanced DOS - LOCAL NetWkstaSetInfo

partially documented function

Category: N - network

Inp.:

AX = 5F45h

BX = level (0000h or 0001h)

CX = buffer size

DX = parameter to set

ES:DI -> buffer

Return: CF clear if successful

CF set if error

    AX = error code

SeeAlso: AX=5F44h


INT 21 5F46 - LAN Manager Enhanced DOS - LOCAL NetUseEnum

partially documented function

Category: N - network

Inp.:

AX = 5F46h

BX = level (0000h or 0001h)

CX = size of buffer

ES:DI -> buffer of use_info_0 or use_info_1 structures

  (see #0919,#0920)

Return: CF clear if successful

    CX = entries read

    DX = total available entries

CF set if error

    AX = error code

SeeAlso: AX=5F47h,AX=5F48h,AX=5F4Ch


INT 21 5F47 - LAN Manager Enhanced DOS - LOCAL NetUseAdd

partially documented function

Category: N - network

Inp.:

AX = 5F47h

BX = level (0001h)

CX = size of use_info_1 structure

ES:DI -> use_info_1 structure (see #0920)

Return: CF clear on success

CF set on error

    AX = error code

SeeAlso: AX=5F46h,AX=5F48h


INT 21 5F48 - LAN Manager Enhanced DOS - LOCAL NetUseDel

partially documented function

Category: N - network

Inp.:

AX = 5F48h

BX = force level

    0000h no force

    0001h force

    0002h lots of force

ES:DI -> buffer as either the local device name or UNC remote name

Return: CF clear on success

CF set on error

    AX = error code

SeeAlso: AX=5F46h,AX=5F48h,AX=5F49h


INT 21 5F49 - LAN Manager Enhanced DOS - NetUseGetInfo

partially documented function

Category: N - network

Inp.:

AX = 5F49h

DS:DX -> NetUseGetInfo parameter structure (see #0921)

Return: CF clear on success

    DX = total available

CF set on error

    AX = error code

SeeAlso: AX=5F44h,AX=5F47h


INT 21 5F4A - LAN Manager Enhanced DOS - LOCAL NetRemoteCopy

partially documented function

Category: N - network

Inp.:

AX = 5F4Ah

DS:DX -> NetRemoteCopy parameter structure (see #0922)

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F4Bh


INT 21 5F4B - LAN Manager Enhanced DOS - LOCAL NetRemoteMove

partially documented function

Category: N - network

Inp.:

AX = 5F4Bh

DS:DX -> NetRemoteMove parameter structure (see #0924)

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F4Ah


INT 21 5F4C - LAN Manager Enhanced DOS - LOCAL NetServerEnum

partially documented function

Category: N - network

Inp.:

AX = 5F4Ch

BX = level (0000h or 0001h)

CX = buffer length

ES:DI -> buffer in which to store information

Return: CF clear if successful

    ES:DI -> server_info_X structures (depending on level)

  (see #0925,#0926)

    BX = entries read

    CX = total entries available

CF set on error

    AX = error code

Notes:	this function is also supported by the Novell DOS Named Pipe Extender

this function has been obseleted by NetServerEnum2

SeeAlso: AX=5F53h


INT 21 5F4D - LAN Manager Enhanced DOS - DosMakeMailslot

partially documented function

Category: N - network

Inp.:

AX = 5F4Dh

BX = message size

CX = mailslot size (must be bigger than message size by at least 1)

   (minimum 1000h, maximum FFF6h)

   (buffer must be 9 bytes bigger than this)

DS:SI -> name

ES:DI -> memory buffer

Return: CF clear if successful

    AX = handle

CF set on error

    AX = error code

SeeAlso: AX=5F4Eh,AX=5F4Fh,AX=5F50h,AX=5F51h


INT 21 5F4E - LAN Manager Enhanced DOS - DosDeleteMailslot

partially documented function

Category: N - network

Inp.:

AX = 5F4Eh

BX = handle

Return: CF clear if successful

    ES:DI -> memory to be freed (allocated during DosMakeMailslot)

CF set on error

    AX = error code

SeeAlso: AX=5F4Dh,AX=5F4Fh


INT 21 5F4F - LAN Manager Enhanced DOS - DosMailslotInfo

partially documented function

Category: N - network

Inp.:

AX = 5F4Fh

BX = handle

Return: CF clear if successful

    AX = max message size

    BX = mailslot size

    CX = next message size

    DX = next message priority

    SI = number of messages waiting

CF set on error

    AX = error code

SeeAlso: AX=5F4Dh,AX=5F4Eh,AX=5F50h


INT 21 5F50 - LAN Manager Enhanced DOS - DosReadMailslot

partially documented function

Category: N - network

Inp.:

AX = 5F50h

BX = handle

DX:CX = timeout

ES:DI -> buffer

Return: CF clear if successful

    AX = bytes read

    CX = next item's size

    DX = next item's priority

CF set on error

    AX = error code

SeeAlso: AX=5F4Dh,AX=5F4Fh,AX=5F51h,AX=5F52h


INT 21 5F51 - LAN Manager Enhanced DOS - DosPeekMailslot

partially documented function

Category: N - network

Inp.:

AX = 5F51h

BX = handle

ES:DI -> buffer

Return: CF clear if successful

    AX = bytes read

    CX = next item's size

    DX = next item's priority

CF set on error

    AX = error code

SeeAlso: AX=5F35h,AX=5F4Fh,AX=5F50h,AX=5F52h


INT 21 5F52 - LAN Manager Enhanced DOS - DosWriteMailslot

partially documented function

Category: N - network

Inp.:

AX = 5F52h

BX = class

CX = length of buffer

DX = priority

ES:DI -> DosWriteMailslot parameter structure (see #0928)

DS:SI -> mailslot name

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F4Fh,AX=5F50h,AX=5F51h


INT 21 5F53 - LAN Manager Enhanced DOS - NetServerEnum2

partially documented function

Category: N - network

Inp.:

AX = 5F53h

DS:SI -> NetServerEnum2 parameter structure (see #0929)

Return: CF clear if successful

    BX = entries read

    CX = total entries available

CF set on error

    AX = error code

SeeAlso: AX=5F4Ch


INT 21 5F55 - LAN Manager Enhanced DOS - KILL ALL CONNECTIONS???

undocumented function

Category: N - network

Inp.:

AX = 5F55h

BX = ???

Return: CF clear if successful

CF set on error

    AX = error code


INT 21 5F80 - LANtastic - GET LOGIN ENTRY

Category: N - network

Inp.:

AX = 5F80h

BX = login entry index (0-based)

ES:DI -> 16-byte buffer for machine name

Return: CF clear if successful

    buffer filled with machine name ("\\" prefix removed)

    DL = adapter number (v3+)

CF set on error

    AX = error code

Note:	the login entry index corresponds to the value BX used in AX=5F83h

SeeAlso: AX=5F83h


INT 21 5F81 - LANtastic - LOGIN TO SERVER

Category: N - network

Inp.:

AX = 5F81h

ES:DI -> ASCIZ login path followed immediately by ASCIZ password

BL = adapter number

    FFh try all valid adapters

    00h-07h try only specified adapter

Return: CF clear if successful

CF set on error

    AX = error code

Notes:	login path is of form "\\machine\username"

if no password is used, the string at ES:DI must be terminated with

  three NULs for compatibility with LANtastic v3.0.

SeeAlso: AX=5F82h,AX=5F84h


INT 21 5F82 - LANtastic - LOGOUT FROM SERVER

Category: N - network

Inp.:

AX = 5F82h

ES:DI -> ASCIZ server name (in form "\\machine")

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F81h,AX=5F88h,AX=5FCBh


INT 21 5F83 - LANtastic - GET USERNAME ENTRY

Category: N - network

Inp.:

AX = 5F83h

BX = login entry index (0-based)

ES:DI -> 16-byte buffer for username currently logged into

Return: CF clear if successful

    DL = adapter number (v3+)

CF set on error

    AX = error code

Note:	the login entry index corresponds to the value BX used in AX=5F80h

SeeAlso: AX=5F80h


INT 21 5F84 - LANtastic - GET INACTIVE SERVER ENTRY

Category: N - network

Inp.:

AX = 5F84h

BX = server index not currently logged into

ES:DI -> 16-byte buffer for server name which is available for logging

in to ("\\" prefix omitted)

Return: CF clear if successful

    DL = adapter number to non-logged in server is on

CF set on error

    AX = error code

SeeAlso: AX=5F81h


INT 21 5F85 - LANtastic - CHANGE PASSWORD

Category: N - network

Inp.:

AX = 5F85h

ES:DI -> buffer containing "\\machine\oldpassword" 00h "newpassword"00h

Return: CF clear if successful

CF set on error

    AX = error code

Notes:	must be logged into the named machine

this function is illegal for group accounts


INT 21 5F86 - LANtastic - DISABLE ACCOUNT

Category: N - network

Inp.:

AX = 5F86h

ES:DI -> ASCIZ machine name and password in form "\\machine\password"

Return: CF clear if successful

CF set on error

    AX = error code

Note:	must be logged into the named machine and concurrent logins set to 1

  by NET_MGR.  Requires system manager to re-enable account.


INT 21 5F87 - LANtastic v3+ - GET ACCOUNT

Category: N - network

Inp.:

AX = 5F87h

DS:SI -> 128-byte buffer for account information (see #0933)

ES:DI -> ASCIZ machine name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

BX destroyed

Note:	must be logged into the specified machine


INT 21 5F88 - LANtastic v4.0+ - LOGOUT FROM ALL SERVERS

Category: N - network

Inp.:

AX = 5F88h

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F82h


INT 21 5F97 - LANtastic - COPY FILE

Category: N - network

Inp.:

AX = 5F97h

CX:DX = number of bytes to copy (FFFFFFFFh = entire file)

SI = source file handle

DI = destination file handle

Return: CF clear if successful

    DX:AX = number of bytes copied

CF set on error

    AX = error code

Note:	copy is performed by server


INT 21 5F98 - LANtastic - SEND UNSOLICITED MESSAGE

Category: N - network

Inp.:

AX = 5F98h

DS:SI -> message buffer (see #0935)

Return: CF clear if successful

CF set on error

    AX = error code

Note:	v4.1- return no errors

SeeAlso: AX=5F99h


INT 21 5F99 - LANtastic - GET LAST RECEIVED UNSOLICITED MESSAGE

Category: N - network

Inp.:

AX = 5F99h

ES:DI -> messsage buffer (see #0935)

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F98h


INT 21 5F9A - LANtastic - GET MESSAGE PROCESSING FLAGS

Category: N - network

Inp.:

AX = 5F9Ah

Return: CF clear if successful

    DL = bits describing processing of received messages (see #0936)

CF set on error

    AX = error code

SeeAlso: AX=5F9Bh,AX=5F9Ch,AX=5F9Dh


INT 21 5F9B - LANtastic - SET MESSAGE PROCESSING FLAGS

Category: N - network

Inp.:

AX = 5F9Bh

DL = bits describing processing for received unsolicited messages

     (see #0936)

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5F9Ah,AX=5F9Eh


INT 21 5F9C - LANtastic v3+ - POP UP LAST RECEIVED MESSAGE

Category: N - network

Inp.:

AX = 5F9Ch

CX = time to leave on screen in clock ticks

DH = 0-based screen line on which to place message

Return: CF clear if successful

CF set on error

    AX = error code (0Bh)

Notes:	the original screen contents are restored when the message is removed

the message will not appear, and an error will be returned, if the

  screen is in a graphics mode

SeeAlso: AX=5F9Ah


INT 21 5F9D - LANtastic v4.1+ - GET REDIRECTOR CONTROL BITS

Category: N - network

Inp.:

AX = 5F9Dh

Return: DL = redirector control bits

bit 7: set to notify on print job completion

SeeAlso: AX=5F9Ah,AX=5F9Eh


INT 21 5F9E - LANtastic v4.1+ - SET REDIRECTOR CONTROL BITS

Category: N - network

Inp.:

AX = 5F9Eh

DL = redirector control bits (see AX=5F9Dh)

Return: nothing

SeeAlso: AX=5F9Bh,AX=5F9Dh


INT 21 5FA0 - LANtastic - GET QUEUE ENTRY

Category: N - network

Inp.:

AX = 5FA0h

BX = queue entry index (0000h is first entry)

DS:SI -> buffer for queue entry (see #0937)

ES:DI -> ASCIZ server name in form "\\name"

Return: CF clear if successful

CF set on error

    AX = error code

BX = entry index for next queue entry (BX-1 is current index)

SeeAlso: AX=5FA1h,AX=5FA2h


INT 21 5FA1 - LANtastic - SET QUEUE ENTRY

Category: N - network

Inp.:

AX = 5FA1h

BX = handle of opened queue entry

DS:SI -> queue entry (see #0937)

Return: CF clear if successful

CF set on error

    AX = error code

Notes:	the only queue entry fields which may be changed are output control,

  number of copies, destination device, and comment

the handle in BX is that from a create or open (INT 21/AH=3Ch,3Dh)

  call on the file "\\server\\@MAIL" or "\\server\@name" (for

  printer queue entries)

SeeAlso: AX=5FA0h,AX=5FA2h,AX=5FA9h


INT 21 5FA2 - LANtastic - CONTROL QUEUE

Category: N - network

Inp.:

AX = 5FA2h

BL = control command

    00h start despooling (privileged)

    01h halt despooling (privileged)

    02h halt despooling at end of job (privileged)

    03h pause despooler at end of job (privileged)

    04h print single job (privileged)

    05h restart current job (privileged)

    06h cancel the current job

    07h hold queue entry

    08h release a held queue entry

    09h make queue entry a rushed job (privileged)

CX:DX = sequence number to control (commands 06h-09h)

DX = physical printer number (commands 00h-05h)

    00h-02h LPT1-LPT3

    03h,04h COM1,COM2

    other	all printers

ES:DI -> ASCIZ server name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code


INT 21 5FA3 - LANtastic v3+ - GET PRINTER STATUS

Category: N - network

Inp.:

AX = 5FA3h

BX = physical printer number (00h-02h = LPT1-LPT3, 03h-04h = COM1-COM2)

DS:SI -> buffer for printer status (see #0941)

ES:DI -> ASCIZ server name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

BX = next physical printer number

Note:	you must be logged in to the specified server


INT 21 5FA4 - LANtastic v3+ - GET STREAM INFO

Category: N - network

Inp.:

AX = 5FA4h

BX = 0-based stream index number

DS:SI -> buffer for stream information (see #0943)

ES:DI -> ASCIZ machine name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

BX = next stream number

SeeAlso: AX=5FA5h


INT 21 5FA5 - LANtastic v3+ - SET STREAM INFO

Category: N - network

Inp.:

AX = 5FA5h

BX = 0-based stream index number

DS:SI -> buffer containing stream information (see #0943)

ES:DI -> ASCIZ machine name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5FA4h


INT 21 5FA7 - LANtastic - CREATE USER AUDIT ENTRY

Category: N - network

Inp.:

AX = 5FA7h

DS:DX -> ASCIZ reason code (max 8 bytes)

DS:SI -> ASCIZ variable reason string (max 128 bytes)

ES:DI -> ASCIZ machine name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

Note:	you must be logged in to the specified server and have the "U"

  privilege to execute this call


INT 21 5FA9 - LANtastic v4.1+ - SET EXTENDED QUEUE ENTRY

Category: N - network

Inp.:

AX = 5FA9h

BX = handle of opened queue entry

DS:SI -> queue entry (see #0937)

Return: CF clear if successful

CF set on error

    AX = error code

Note:	functions exactly the same as AX=5FA1h except the spooled filename is

  also set.  This call supports direct despooling.

SeeAlso: AX=5FA1h


INT 21 5FB0 - LANtastic - GET ACTIVE USER INFORMATION

Category: N - network

Inp.:

AX = 5FB0h

BX = server login entry index

DS:SI -> buffer for active user entry (see #0944)

ES:DI -> ASCIZ machine name in form "\\server"

Return: CF clear if successful

CF set on error

    AX = error code

BX = next login index

SeeAlso: AX=5FB2h


INT 21 5FB1 - LANtastic - GET SHARED DIRECTORY INFORMATION

Category: N - network

Inp.:

AX = 5FB1h

DS:SI -> 64-byte buffer for link description

ES:DI -> ASCIZ machine and shared directory name in form

 "\\machine\shared-resource"

Return: CF clear if successful

    CX = access control list privileges for requesting user (see #0947)

CF set on error

    AX = error code


INT 21 5FB2 - LANtastic v3+ - GET USERNAME FROM ACCOUNT FILE

Category: N - network

Inp.:

AX = 5FB2h

BX = username entry index (0 for first)

DS:SI -> 16-byte buffer for username

ES:DI -> ASCIZ server name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

BX = next queue entry index

SeeAlso: AX=5FB0h


INT 21 5FB3 - LANtastic v3+ - TRANSLATE PATH

Category: N - network

Inp.:

AX = 5FB3h

DS:SI -> 128-byte buffer for ASCIZ result

ES:DI -> full ASCIZ path, including server name

DX = types of translation to be performed

    bit 0: expand last component as indirect file

    bit 1: return actual path relative to server's physical disk

Return: CF clear if successful

CF set on error

    AX = error code

Note:	always expands any indirect files along the path

SeeALso: AX=5FB4h,INT 21/AH=60h


INT 21 5FB4 - LANtastic v3+ - CREATE INDIRECT FILE

Category: N - network

Inp.:

AX = 5FB4h

DS:SI -> 128-byte buffer containing ASCIZ contents of indirect file

ES:DI -> full ASCIZ path of indirect file to create, incl machine name

Return: CF clear if successful

CF set on error

    AX = error code

Note:	the contents of the indirect file may be any valid server-relative path

SeeAlso: AX=5FB3h,AX=5FB5h


INT 21 5FB5 - LANtastic v3+ - GET INDIRECT FILE CONTENTS

Category: N - network

Inp.:

AX = 5FB5h

DS:SI -> 128-byte buffer for ASCIZ indirect file contents

ES:DI -> full ASCIZ path of indirect file

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5FB4h


INT 21 5FB6 - LANtastic v4.1+ - SET AUTO-LOGIN DEFAULTS

Category: N - network

Inp.:

AX = 5FB6h

ES:DI -> pointer to ASCIZ default user name, immediately followed by

ASCIZ password

BL = adapter number to use for default login attempt

    FFh try all valid adapters

    00h-05h try adapter 0-5 explicitly

Return: CF clear if successful

CF set on error

    AX = error code

Notes:	call with ES:DI -> two nulls to disable auto-login

SeeAlso: AX=5FB7h


INT 21 5FB7 - LANtastic v4.1+ - GET AUTO-LOGIN DEFAULTS

Category: N - network

Inp.:

AX = 5FB7h

ES:DI -> pointer to 16-byte buffer to store ASCIZ auto-login user name

Return: CF clear if successful

    DL = adapter number used for default login attempt

FFh all valid adapters will be tried

00h-05h specified adapter will be tried explicitly

CF set on error

    AX = error code

SeeAlso: AX=5F81h,AX=5FB6h


INT 21 5FC0 - LANtastic - GET TIME FROM SERVER

Category: N - network

Inp.:

AX = 5FC0h

DS:SI -> time block (see #0948)

ES:DI -> ASCIZ server name to get time from

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AH=E7h


INT 21 5FC8 - LANtastic v4.0+ - SCHEDULE SERVER SHUTDOWN

Category: N - network

Inp.:

AX = 5FC8h

ES:DI -> ASCIZ server name in form "\\machine"

DS:SI -> ASCIZ reason string (80 characters)

CX = number of minutes until shutdown (0 = immediate)

DX = option flags (see #0949)

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5FC9h


INT 21 5FC9 - LANtastic v4.0+ - CANCEL SERVER SHUTDOWN

Category: N - network

Inp.:

AX = 5FC9h

ES:DI -> ASCIZ server name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

Note:	you must have the "S" privilege to use this call

SeeAlso: AX=5FC8h


INT 21 5FCA - LANtastic v4.0+ - STUFF SERVER KEYBOARD BUFFER

Category: N - network

Inp.:

AX = 5FCAh

ES:DI -> ASCIZ server name in form "\\machine"

DS:SI -> ASCIZ string to stuff (128 bytes)

Return: CF clear if successful

CF set on error

    AX = error code

Note:	you must have the "S" privilege to use this call

maximum number of characters that can be stuffed is determined by the

  server's RUN BUFFER SIZE.

SeeAlso: INT 16/AH=05h


INT 21 5FCB - LANtastic v4.1+ - TERMINATE USER

Category: N - network

Inp.:

AX = 5FCBh

ES:DI -> ASCIZ server name in form "\\machine"

DS:SI -> blank-padded username.	 A null char = wildcard.

DS:DX -> blank-padded machine name.  A null char = wildcard.

CX = minutes until termination (0 = immediate)

Return: CF clear if successful

CF set on error

    AX = error code

Note:	you must have the "S" privilege to use this call

you cannot log yourself out using this call

SeeAlso: AX=5F82h


INT 21 5FCC - LANtastic v4.1+ - GET/SET SERVER CONTROL BITS

Category: N - network

Inp.:

AX = 5FCCh

ES:DI -> ASCIZ server name in form "\\machine"

CX = bit values (value of bits you want to set) (see #0950)

DX = bit mask (bits you are interested in, 0 = get only) (see #0950)

Return: CF clear if successful

    CX = control bits after call (see #0950)

CF set on error

    AX = error code

Note:	you must have the "S" privilege to SET, anyone can GET.


INT 21 5FCD - LANtastic v4.1+ - FLUSH SERVER CACHES

Category: N - network

Inp.:

AX = 5FCDh

ES:DI -> ASCIZ server name in form "\\machine"

Return: CF clear if successful

CF set on error

    AX = error code

Note:	you must have the "S" privilege to use this call.


INT 21 5FD0 - LANtastic - GET REDIRECTED PRINTER TIMEOUT

Category: N - network

Inp.:

AX = 5FD0h

Return: CF clear if successful

    CX = redirected printer timeout in clock ticks of 55ms

0000h if timeout disabled

CF set on error

    AX = error code

SeeAlso: AX=5FD1h


INT 21 5FD1 - LANtastic - SET REDIRECTED PRINTER TIMEOUT

Category: N - network

Inp.:

AX = 5FD1h

CX = printer timeout in clock ticks of 55ms, 0000h to disable timeouts

Return: CF clear if successful

CF set on error

    AX = error code

SeeAlso: AX=5FD0h


INT 21 5FE0 - LANtastic - GET DOS SERVICE VECTOR

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 5FE0h

Return: CF clear if successful

    ES:BX -> current FAR service routine

CF set on error

    AX = error code

Note:	the service routine is called by the LANtastic redirector whenever DOS

  may safely be called, permitting external TSRs and drivers to hook

  into LANtastic's DOS busy flag checking

SeeAlso: AX=5FE1h,INT 28,INT 2A/AH=84h


INT 21 5FE1 - LANtastic - SET DOS SERVICE VECTOR

Category: N - network

Inp.:

AX = 5FE1h

ES:BX -> FAR routine to call when DOS services are available

Return: CF clear if successful

CF set on error

    AX = error code

Note:	new handler must chain to previous handler as its first action

SeeAlso: AX=5FE0h


INT 21 5FE2 - LANtastic - GET MESSAGE SERVICE VECTOR

Category: N - network

Inp.:

AX = 5FE2h

Return: CF clear if successful

    ES:BX -> current FAR message service routine

CF set on error

    AX = error code

SeeAlso: AX=5FE0h,AX=5FE3h


INT 21 5FE3 - LANtastic - SET MESSAGE SERVICE VECTOR

Category: N - network

Inp.:

AX = 5FE3h

ES:BX -> FAR routine for processing network messages

Return: CF clear if successful

CF set on error

    AX = error code

Notes:	handler must chain to previous handler as its first action

on invocation, ES:BX -> just-received message

SeeAlso: AX=5FE2h


INT 21 60-- - DOS 3.0+ - "TRUENAME" - CANONICALIZE FILENAME OR PATH

Category: D - DOS kernel

Inp.:

AH = 60h

DS:SI -> ASCIZ filename or path

ES:DI -> 128-byte buffer for canonicalized name

Return: CF set on error

    AX = error code

02h invalid component in directory path or drive letter only

03h malformed path or invalid drive letter

    ES:DI buffer unchanged

CF clear if successful

    AH = 00h

    AL = destroyed (00h or 5Ch or last char of current dir on drive)

    buffer filled with qualified name of form D:\PATH\FILE.EXT or

      \\MACHINE\PATH\FILE.EXT

Desc:	determine the canonical name of the specified filename or path,

  corresponding to the undocumented TRUENAME command in COMMAND.COM

Notes:	the input path need not actually exist

letters are uppercased, forward slashes converted to backslashes,

  asterisks converted to appropriate number of question marks, and

  file and directory names are truncated to 8.3 if necessary.  (DR-DOS

  3.41 and 5.0 do not expand asterisks)

'.' and '..' in the path are resolved

filespecs on local drives always start with "d:", those on network

  drives always start with "\\"

if path string is on a JOINed drive, the returned name is the one that

  would be needed if the drive were not JOINed; similarly for a

  SUBSTed, ASSIGNed, or network drive letter.	Because of this, it is

  possible to get a qualified name that is not legal under the current

  combination of SUBSTs, ASSIGNs, JOINs, and network redirections

under DOS 3.3 through 6.00, a device name is translated differently if

  the device name does not have an explicit directory or the directory

  is \DEV (relative directory DEV from the root directory works

  correctly).  In these cases, the returned string consists of the

  unchanged device name and extension appended to the string X:/

  (forward slash instead of backward slash as in all other cases) where

  X is the default or explicit drive letter.

functions which take pathnames require canonical paths if invoked via

  INT 21/AX=5D00h

supported by OS/2 v1.1 compatibility box

NetWare 2.1x does not support characters with the high bit set; early

  versions of NetWare 386 support such characters except in this call.

  In addition, NetWare returns error code 3 for the path "X:\"; one

  should use "X:\." instead.

for DOS 3.3-6.0, the input and output buffers may be the same, as the

  canonicalized name is built in an internal buffer and copied to the

  specified output buffer as the very last step

for DR DOS 6.0, this function is not automatically called when on a

  network.  Device drivers reportedly cannot make this call from their

  INIT function.  Using the same pointer for both input and output

  buffers is not supported in the April 1992 and earlier versions of

  DR DOS

Corel's CORELCDX and MSCDEX without the /S switch return canonical

  names of the form "\\D.\A.\path", where "D" is the CD-ROM drive

  letter and "A" appears to indicate the first physical CD-ROM drive;

  MSCDEX with the /S switch returns a canonical name with embedded

  blanks.  Novell DOS 7 NWCDEX as of the 11/16/94 update returns the

  same canonical path as MSCDEX; earlier revisions returned

  "Cdex.D:\path", where "D" is the CD-ROM drive letter

SeeAlso: AX=5FB3h,AX=7160h,INT 2F/AX=1123h,INT 2F/AX=1221h


INT 21 61-- - DOS 3.0+ - UNUSED

Category: D - DOS kernel

Inp.:

AH = 61h

Return: AL = 00h

Note:	this function does nothing and returns immediately


INT 21 61-- - OS/2 v1.x FAPI - OS/2 FILE SYSTEM JOIN/SUBST

undocumented function

Category: O - other operating systems

Inp.:

AH = 61h

BP = 6467h ("dg")

AL = function

    00h list

    01h add

    02h delete

BX = drive number

CX = size of buffer

SI = type (0002h JOIN, 0003h SUBST)

ES:DI -> buffer

Return: ???

Notes:	used by JOIN and SUBST to communicate with the OS/2 file system

also supported by OS/2 v2.0+ Virtual DOS Machines


INT 21 62-- - DOS 3.0+ - GET CURRENT PSP ADDRESS

Category: D - DOS kernel

Inp.:

AH = 62h

Return: BX = segment of PSP for current process

Notes:	this function does not use any of the DOS-internal stacks and may

  thus be called at any time, even during another INT 21h call

the current PSP is not necessarily the caller's PSP

identical to the undocumented AH=51h

SeeAlso: AH=50h,AH=51h


INT 21 6300 - DOS 2.25 only - GET LEAD BYTE TABLE ADDRESS

Category: D - DOS kernel

Inp.:

AX = 6300h

Return: CF clear if successful

    DS:SI -> lead byte table (see #0951)

CF set on error

    AX = error code (01h) (see #0885 at AH=59h)

Notes:	does not preserve any registers other than SS:SP

the US version of MS-DOS 3.30 treats this as an unused function,

  setting AL=00h and returning immediately

SeeAlso: AX=6301h,AH=07h,AH=08h,AH=0Bh


INT 21 6300 - Far East DOS 3.2+ - GET DOUBLE BYTE CHARACTER SET LEAD-BYTE TABLE

Category: D - DOS kernel

Inp.:

AX = 6300h

Return: AL = error code

    00h successful

DS:SI -> DBCS table (see #0952)

all other registers except CS:IP and SS:SP destroyed

    FFh not supported

Notes:	probably identical to AH=63h/AL=00h for DOS 2.25

the US version of MS-DOS 3.30 treats this as an unused function,

  setting AL=00h and returning immediately

the US version of DOS 4.0+ accepts this function, but returns an empty

  list

SeeAlso: AX=6300h"DOS 2.25"


INT 21 6301 - DOS 2.25, Far East DOS 3.2+ - SET KOREAN (HANGEUL) INPUT MODE

Category: D - DOS kernel

Inp.:

AX = 6301h

DL = new mode

    00h return only full characters on DOS keyboard input functions

    01h return partially-formed (interim) characters also

Return: AL = status

    00h successful

    FFh invalid mode

Note:	Novell DOS 7 simply stores DL in the caller's PSP (see #0603 at AH=26h)

SeeAlso: AH=07h,AH=08h,AH=0Bh,AH=63h,AX=6302h


INT 21 6302 - DOS 2.25, Far East DOS 3.2+ - GET KOREAN (HANGEUL) INPUT MODE

Category: D - DOS kernel

Inp.:

AX = 6302h

Return: AL = status

    00h successful

DL = current input mode

    00h return only full characters (clears interim flag)

    01h return partial characters (sets interim flag)

    FFh not supported

Note:	Novell DOS 7 simply reads the value out of the caller's PSP, so it

  can return values other than 00h or 01h if the last call to AX=6301h

  used another value

SeeAlso: AH=07h,AH=08h,AH=0Bh,AH=63h,AX=6301h


INT 21 6303 - VIRUS - "DOS IDLE" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 6303h

Return: BX = 6303h if resident

SeeAlso: AX=5643h"VIRUS",AX=6304h"VIRUS",AX=9AD5h"VIRUS"


INT 21 6304 - VIRUS - "Replicator" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 6304h

Return: BX = 6304h if resident

SeeAlso: AX=6303h"VIRUS",AX=6969h"VIRUS"


INT 21 64-- - DOS 3.2+ internal - SET DEVICE DRIVER LOOKAHEAD FLAG

Category: D - DOS kernel

Inp.:

AH = 64h

AL = flag

00h (default) call device driver function 5 (non-dest read)

before INT 21/AH=01h,08h,0Ah

    nonzero don't call driver function 5

Return: nothing (MS-DOS)

CF set, AX=error code??? (DR-DOS 5.0, which does not support this call)

Notes:	this function is called by the DOS 3.3+ PRINT.COM

under MS-DOS, this function does not use any of the DOS-internal stacks

  and may thus be called at any time, even during another DOS call

SeeAlso: AH=01h,AH=08h,AH=0Ah,AX=5D06h


INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - ENABLE AUTOMATIC TITLE SWITCH

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0000h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

Note:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

SeeAlso: AH=64h/DX=0001h,INT 21/AH=4Bh


INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - SET SESSION TITLE

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0001h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

ES:DI -> new ASCIZ title (max 12 char) or "" to restore default title

Note:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

SeeAlso: AH=64h/DX=0000h,AH=64h/DX=0002h,INT 15/AH=12h/BH=05h


INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - GET SESSION TITLE

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0002h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

ES:DI -> 13-byte buffer for current title

Return: buffer filled (single 00h if title never changed)

Note:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

SeeAlso: AH=64h/DX=0000h,AH=64h/DX=0001h,INT 15/AH=12h/BH=05h


INT 21 64-- - OS/2 v2.1 Virtual DOS Machine - GET LASTDRIVE

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0003h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

Return: AL = highest drive supported

Notes:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

used by WinOS2

not supported by OS/2 Warp 3.0, check list of lists instead (see #0840)

SeeAlso: AH=52h


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET SIZE OF PTDA JFT

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0004h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

Return: AX = number of entries in OS/2 JFT for VDM

Notes:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

in an OS/2 VDM, the DOS Job File Table in the PSP contains an index

  into the OS/2 JFT in the Per-Task Data Area rather than an SFT index

  because the OS/2 SFT can contain more than 255 entries


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET SECOND SFT FLAGS WORD

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0005h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

DI = DOS file handle

Return: AX = value of second flags word from OS/2 SFT entry for file

Notes:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

the OS/2 SFT has two flags words rather than DOS's one word, and this

  function provides access to the word which is not present in DOS


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - UNLOAD DOSKRNL SYMBOLS & LOAD PROGR

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0006h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

ES:DI -> ASCIZ filespec

DS = base address for loading

Notes:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

this function is only supported by the kernel debugging version of

  OS2KRNL


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET WinOS2 CALL GATE ADDRESS

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0007h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

Return: AX = call gate address

Notes:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

used by WinOS2 to make direct calls to OS2KRNL, bypassing the overhead

  of DOSKRNL


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET LOADING MESSAGE

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

DX = 0008h (function number)

CX = 636Ch (magic value, "cl")

BX = 0000h (indicates special request)

Return: DS:DX -> '$'-terminated message "Loading.  Please wait."

Notes:	if CX is not 636Ch on entry, INT 21/AH=6Ch is invoked, because a bug

  in OS/2 1.x FAPI erroneously called AH=64h instead of AH=6Ch

this function permits National Language Support for the initial message

  displayed while WinOS2 starts a full-screen session


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API support

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

CX = 636Ch ("cl")

BX = API ordinal (see #0953)

other registers as appropriate for API call

Return: as appropriate for API call

SeeAlso: AH=64h/BX=0025h,AH=64h/BX=00B6h,AH=64h/BX=00CBh


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DOS32StartSession

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

BX = 0025h (API ordinal)

CX = 636Ch ("cl")

DS:SI -> STARTDATA structure (see #0954)

Return: AX = return code

SeeAlso: AH=64h/CX=636Ch,AH=64h/BX=00B6h


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DosQFSAttach

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

BX = 00B6h (API ordinal)

CX = 636Ch (magic value "cl")

DS = user's data segment

ES:DI -> FSQAttachStruc (see #0955)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX = 0000h

    data buffer filled

SeeAlso: AH=64h/CX=636Ch


INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DosForceDelete

undocumented function

Category: O - other operating systems

Inp.:

AH = 64h

BX = 00CBh (API ordinal)

CX = 636Ch (magic value "cl")

DS:DX -> ASCIZ filename

Return: CF clear if successful

    AX destroyed

CF set on error

    AX = error code (02h,03h,05h) (see #0885 at AH=59h)

Desc:	delete a file without saving it to the undelete directory

SeeAlso: AH=41h,AH=64h/CX=636Ch


INT 21 65-- - DOS 3.3+ - GET EXTENDED COUNTRY INFORMATION

Category: D - DOS kernel

Inp.:

AH = 65h

AL = info ID

    01h get general internationalization info

    02h get pointer to uppercase table

    04h get pointer to filename uppercase table

    05h get pointer to filename terminator table

    06h get pointer to collating sequence table

    07h (DOS 4.0+) get pointer to Double-Byte Character Set table

BX = code page (FFFFh=global code page)

DX = country ID (FFFFh=current country)

ES:DI -> country information buffer (see #0956)

CX = size of buffer (>= 5)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    CX = size of country information returned

    ES:DI -> country information

Notes:	AL=05h appears to return same info for all countries and codepages; it

  has been documented for DOS 5+, but was undocumented in ealier

  versions

NLSFUNC must be installed to get info for countries other than the

  default

subfunctions 02h and 04h are identical under OS/2

SeeAlso: AH=38h,INT 2F/AX=1401h,INT 2F/AX=1402h,INT 2F/AX=14FEh


INT 21 65-- - DOS 4.0+ - COUNTRY-DEPENDENT CHARACTER CAPITALIZATION

Category: D - DOS kernel

Inp.:

AH = 65h

AL = function

    20h capitalize character

DL = character to capitalize

Return: DL = capitalized character

    21h capitalize string

DS:DX -> string to capitalize

CX = length of string

    22h capitalize ASCIZ string

DS:DX -> ASCIZ string to capitalize

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

Note:	these calls have been documented for DOS 5+, but were undocumented in

  DOS 4.x.


INT 21 6523 - DOS 4.0+ - DETERMINE IF CHARACTER REPRESENTS YES/NO RESPONSE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 6523h

DL = character

DH = second character of double-byte character (if applicable)

Return: CF set on error

CF clear if successful

    AX = type

00h no

01h yes

02h neither yes nor no


INT 21 65-- - DOS 4.0+ internal - COUNTRY-DEPENDENT FILENAME CAPITALIZATION

undocumented function

Category: D - DOS kernel

Inp.:

AH = 65h

AL = function

    A0h capitalize filename character

DL = character to capitalize

Return: DL = capitalized character

    A1h capitalize counted filename string

DS:DX -> filename string to capitalize

CX = length of string

    A2h capitalize ASCIZ filename

DS:DX -> ASCIZ filename to capitalize

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

Note:	nonfunctional in DOS 4.00 through 6.00 due to a bug (the code sets a

  pointer depending on the high bit of AL, but doesn't clear the

  bit before branching by function number).


INT 21 6601 - DOS 3.3+ - GET GLOBAL CODE PAGE TABLE

Category: D - DOS kernel

Inp.:

AX = 6601h

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    BX = active code page (see #0962)

    DX = system code page (see #0962)

SeeAlso: AX=6602h


INT 21 6602 - DOS 3.3+ - SET GLOBAL CODE PAGE TABLE

Category: D - DOS kernel

Inp.:

AX = 6602h

BX = active code page (see #0962)

DX = system code page (active page at boot time)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX = EB41h (Novell NWDOS v7.0 when NLSFUNC not installed and

  request was for previously-active code page)

SeeAlso: AX=6601h,INT 2F/AX=14FFh


INT 21 67-- - DOS 3.3+ - SET HANDLE COUNT

Category: D - DOS kernel

Inp.:

AH = 67h

BX = size of new file handle table for process

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at AH=59h)

Desc:	adjust the size of the per-process open file table, thus raising or

  lowering the limit on the number of files the caller can open

  simultaneously

Notes:	if BX <= 20, no action is taken if the handle limit has not yet been

  increased, and the table is copied back into the PSP if the limit

  is currently > 20 handles

for file handle tables of > 20 handles, DOS 3.30 never reuses the

  same memory block, even if the limit is being reduced; this can lead

  to memory fragmentation as a new block is allocated and the existing

  one freed

only the first 20 handles are copied to child processes in DOS 3.3-6.0

increasing the file handles here will not, in general, increase the

  number of files that can be opened using the runtime library of a

  high-level language such as C

Novell DOS 7 reportedly terminates the calling program if the JFT is

  being reduced in size and there are any open file handles beyond

  the portion of the JFT being retained

BUGS:	the original release of DOS 3.30 allocates a full 64K for the handle

  table on requests for an even number of handles

DR-DOS 3.41 and 5.0 will lose track of any open file handles beyond

  the portion of the JFT retained after the call; MS-DOS will indicate

  error 04h if any of the JFT entries to be removed are open

SeeAlso: AH=26h,AH=86h


INT 21 68-- - DOS 3.3+ - "FFLUSH" - COMMIT FILE

Category: D - DOS kernel

Inp.:

AH = 68h

BX = file handle

Return: CF clear if successful

    all data still in DOS disk buffers is written to disk immediately,

      and the file's directory entry is updated

CF set on error

    AX = error code (see #0885 at AH=59h)

SeeAlso: AX=5D01h,AH=6Ah,INT 2F/AX=1107h


INT 21 69-- - DOS 4.0+ internal - GET/SET DISK SERIAL NUMBER

undocumented function

Category: D - DOS kernel

Inp.:

AH = 69h

AL = subfunction

    00h get serial number

    01h set serial number

BL = drive (0=default, 1=A, 2=B, etc)

BH = info level (00h only for DOS; OS/2 allows other levels)

DS:DX -> disk info (see #0963)

Return: CF set on error

    AX = error code (see #0885 at AH=59h)

CF clear if successful

    AX destroyed

    (AL = 00h) buffer filled with appropriate values from extended BPB

    (AL = 01h) extended BPB on disk set to values from buffer

Notes:	does not generate a critical error; all errors are returned in AX

error 0005h given if no extended BPB on disk

does not work on network drives (error 0001h)

buffer after first two bytes is exact copy of bytes 27h thru 3Dh of

  extended BPB on disk

this function is supported under Novell NetWare versions 2.0A through

  3.11; the returned serial number is the one a DIR would display,

  the volume label is the NetWare volume label, and the file system

  is set to "FAT16".

this function is not supported by Novell DOS 7

the serial number is computed from the current date and time when the

  disk is created; the first part is the sum of the seconds/hundredths

  and month/day, the second part is the sum of the hours/minutes and

  year

the volume label which is read or set is the one stored in the extended

  BPB on disks formatted with DOS 4.0+, rather than the special root

  directory entry used by the DIR command in COMMAND.COM (use AH=11h

  to find that volume label)

SeeAlso: AX=440Dh


INT 21 69-- - DR-DOS 5.0 - NULL FUNCTION

Category: O - other operating systems

Inp.:

AH = 69h

Return: AL = 00h

SeeAlso: AH=18h


INT 21 6969 - VIRUS - "Rape-747" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 6969h

Return: AX = 0666h if resident

SeeAlso: AX=58CCh,AX=6304h"VIRUS",AH=76h"VIRUS"


INT 21 69FF - CUBIT v4.00 - GET CUBIT INT 21 HANDLER

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 69FFh

DX = 0000h

BX = CB00h (magic value)

Return: ES:BX -> CUBITR.EXE handler for INT 21

Note:	the installation check consists of testing that the first eight bytes

  at the returned interrupt handler are EBh 07h "CUBITR" (a short

  jump around the signature followed by the signature); the byte

  following the signature (i.e. ES:[BX+8]) indicates whether CUBITR

  is active (01h) or disabled (00h)

SeeAlso: AX=69FFh/DX=CFBFh

Index:	installation check;CUBIT


INT 21 69FF - CUBIT v4.00 - UNINSTALL

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 69FFh

DX = CFBFh

CX = EFCFh

BX = CB00h (magic value)

Return: ES:BX -> CUBITR.EXE handler for INT 21

CX = status

    2020h successful

    2222h failed

Note:	if DX is neither 0000h nor CFBFh on entry, some other code is executed

SeeAlso: AX=69FFh/DX=0000h


INT 21 6A-- - DOS 4.0+ - COMMIT FILE

undocumented function

Category: D - DOS kernel

Inp.:

AH = 6Ah

BX = file handle

Return: CF clear if successful

    AH = 68h

CF set on error

    AX = error code (06h) (see #0885 at AH=59h)

Note:	identical to AH=68h in DOS 5.0-6.0; not known whether this is the case

  in DOS 4.x

SeeAlso: AH=68h


INT 21 6B-- - DOS 4.0 internal - IFS IOCTL

undocumented function

Category: D - DOS kernel

Inp.:

AH = 6Bh

AL = subfunction

    00h ???

DS:SI -> Current Directory Structure???

CL = drive (1=A:)

    01h ???

DS:SI -> ???

CL = file handle???

    02h ???

DS:SI -> Current Directory Structure???

DI = ???

CX = drive (1=A:)

Return: CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	passed through to INT 2F/AX=112Fh with AX on top of stack

SeeAlso: AH=6Bh"DOS 5",INT 2F/AX=112Fh


INT 21 6B-- - DOS 5+ - NULL FUNCTION

undocumented function

Category: D - DOS kernel

Inp.:

AH = 6Bh

Return: AL = 00h

Note:	this function does nothing and returns immediately

SeeAlso: AH=6Bh"DOS 4"


INT 21 6C00 - DOS 4.0+ - EXTENDED OPEN/CREATE

Category: D - DOS kernel

Inp.:

AX = 6C00h

BL = open mode as in AL for normal open (see also AH=3Dh)

    bit 7: inheritance

    bits 4-6: sharing mode

    bit 3 reserved

    bits 0-2: access mode

BH = flags

    bit 6 = auto commit on every write (see also AH=68h)

    bit 5 = return error rather than doing INT 24h

CX = create attribute (see #0965)

DL = action if file exists/does not exist (see #0966)

DH = 00h (reserved)

DS:SI -> ASCIZ file name

Return: CF set on error

   AX = error code (see #0885 at AH=59h)

CF clear if successful

   AX = file handle

   CX = status (see #0964)

Notes:	the PC LAN Program only supports DL=01h, DL=10h/sharing=compatibility,

  and DL=12h

DR-DOS reportedly does not support this function and does not return

  an "invalid function call" error when this function is used.

the documented bits of BX are stored in the SFT when the file is opened

  (see #0853,#0854)

BUG:	this function has bugs (at least in DOS 5.0 and 6.2) when used with

  drives handled via the network redirector (INT 2F/AX=112Eh):

    - CX (attribute) is not passed to the redirector if DL=11h,

    - CX does not return the status, it is returned unchanged because

      DOS does a PUSH CX/POP CX when calling the redirector.

SeeAlso: AH=3Ch,AH=3Dh,AX=6C01h,AH=71h,INT 2F/AX=112Eh


INT 21 6C01 - OS/2 v2.0 - "DosOpen2"

undocumented function

Category: O - other operating systems

Inp.:

AX = 6C01h

BL = open mode as in AL for normal open (see also AH=3Dh)

    bit 7: inheritance

    bits 4-6: sharing mode

    bit 3 reserved

    bits 0-2: access mode

BH = flags

    bit 6 = auto commit on every write (see also AH=68h)

    bit 5 = return error rather than doing INT 24h

CX = create attribute (see #0965)

DL = action if file exists/does not exist (see #0966)

DH = 00h (reserved)

DS:SI -> ASCIZ file name

ES:DI -> EAOP structure

Return: CF set on error

   AX = error code (see #0885 at AH=59h)

CF clear if successful

   AX = file handle

   CX = status (see #0964)

Note:	this function is virtually identical to AX=6C00h, but supports OS/2's

  extended attributes

SeeAlso: AX=5704h,AX=6C00h,AH=6Fh"OS/2"


INT 21 6D-- - DOS 5+ ROM - FIND FIRST ROM PROGRAM

undocumented function

Category: D - DOS kernel

Inp.:

AH = 6Dh

DS:DX -> ASCIZ program name (may contain wildcrds)

Return: CF clear if found

    [DTA] = ROM search structure (see #0967)

CF set if not found

    AX = error code

0002h name not found in ROM

0003h name contains colon or backslash

Notes:	the '*' wildcard matches all remaining characters in a ROM program's

  name; any following characters in the search mask are ignored up to

  another asterisk, which must be matched by an asterisk in the

  found program's name.

the search mask and program names may contain multiple periods

SeeAlso: AH=1Ah,AH=4Eh,AH=6Eh,AX=6F00h,AX=6F02h


INT 21 6D-- - OS/2 v1.x FAPI - "DosMkDir2"

undocumented function

Category: O - other operating systems

Inp.:

AH = 6Dh

???

Return: ???

Note:	also supported by OS/2 v2.0+ Virtual DOS Machines

SeeAlso: AH=39h


INT 21 6D-- - Novell DOS 7 - NOP

undocumented function

Category: O - other operating systems

Inp.:

AH = 6Dh

Return: AX = 0000h

Note:	this function invokes the same code as other NOP functions such as

  AH=18h and AH=61h


INT 21 6E-- - DOS 5+ ROM - FIND NEXT ROM PROGRAM

undocumented function

Category: D - DOS kernel

Inp.:

AH = 6Eh

[DTA] = result of previous FindFirst ROM (see AH=6Dh)

Return: CF clear if found

    [DTA] = updated ROM search structure (see #0967)

CF set if not found

    AX = 0012h (no more matches)

SeeAlso: AH=4Fh,AH=6Dh


INT 21 6E-- - OS/2 v1.x FAPI - "DosENumAttrib"

undocumented function

Category: O - other operating systems

Inp.:

AH = 6Eh

???

Return: ???

Note:	also supported by OS/2 v2.0+ Virtual DOS Machines

SeeAlso: AX=5703h,AH=6Fh"OS/2",INT 2F/AX=112Dh


INT 21 6F-- - OS/2 v1.x FAPI - "DosQMaxEASize" - GET MAXIMUM SIZE OF EXTENDED ATTR

undocumented function

Category: O - other operating systems

Inp.:

AH = 6Fh

???

Return: ???

Note:	also supported by OS/2 v2.0+ Virtual DOS Machines

SeeAlso: AX=5703h,AX=6C01h,AH=6Eh"OS/2"


INT 21 6F00 - DOS 5+ ROM - GET ROM SCAN START ADDRESS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 6F00h

Return: CF clear

AL = 00h

BX = current ROM scan starting segment

SeeAlso: AH=6Dh,AX=6F01h,AX=6F02h


INT 21 6F01 - DOS 5+ ROM - SET ROM SCAN START ADDRESS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 6F01h

BX = new ROM scan starting address

Return: CF clear

AL = 00h

SeeAlso: AX=6F00h,AX=6F03h


INT 21 6F02 - DOS 5+ ROM - GET EXCLUSION REGION LIST

undocumented function

Category: D - DOS kernel

Inp.:

AX = 6F02h

ES:BX -> buffer for exclusion region list (see #0968)

Return: CF clear

AL = 00h

ES:BX = 0000h:0000h on error, unchanged if buffer filled

SeeAlso: AX=6F00h,AX=6F03h


INT 21 6F03 - DOS 5+ ROM - SET EXCLUSION REGION LIST

undocumented function

Category: D - DOS kernel

Inp.:

AX = 6F03h

DS:DX -> new exclusion region list (see #0968)

Return: CF clear

AL = 00h

Notes:	DOS saves only the pointer and assumes that the contents of the list

  are never changed, and that regions do not overlap

if AL > 03h on entry, DOS returns CF set/AL=01h

SeeAlso: AX=6F01h,AX=6F02h


INT 21 70-- - MS-DOS 7 (Windows95) - ??? (country-specific?)

Category: D - DOS kernel

Inp.:

AH = 70h

AL = subfunction

    00h get ??? info

CX = buffer size (3Ah bytes needed)

ES:DI -> buffer

    01h set above info

    02h set ??? info

CX = buffer size >= 26h;

first three bytes are skipped, the rest is copied to somewhere

  in the DOS data segment

Return: CF clear if successful

    ES:DI buffer filled (func 00h)

returned was (among others) "ENU USA GR"..."AM PM M/d/yy"...

 "dddd,MMMMdd,yyyy" in the German Preview version, and "US"

 instead of "GR" in the US build 450 version (with German

 country setting)

CF set on error

    AX = error code

7000h if function not supported


INT 21 7070 - PCW Weather Card interface - GET DATA SEGMENT

Category: - - (none)

Inp.:

AX = 7070h

BX = 6060h

CX = 7070h

DX = 7070h

SI = 7070h

DI = 7070h

Return: AX = segment of data structure (see #0969)

Notes:	the data structure is at offset 516 from this segment

the update byte is at offset 514 from this segment.  Updates are

  once per second while this byte is nonzero and it is decremented

  once per second.  While this byte is 0 updates are once per minute.

SeeAlso: AX=7070h/BX=7070h


INT 21 7070 - PCW Weather Card interface - INSTALLATION CHECK

Category: - - (none)

Inp.:

AX = 7070h

BX = 7070h

CX = 7070h

DX = 7070h

SI = 7070h

DI = 7070h

Return: AX = 0070h

BX = 0070h

CX = 0070h

DX = 0070h

SI = 0070h

DI = 0070h

SeeAlso: AX=7070h/BX=6060h,AX=8080h


INT 21 71-- - MS-DOS 7 (Chicago) - LONG FILENAME FUNCTIONS

Category: D - DOS kernel

Inp.:

AH = 71h

AL = function

    39h create directory

    3Ah remove directory

    3Bh set current directory

    41h delete file

    43h get file attributes (BL=00h), set file attributes (BL=01h)

    47h get current directory

    4Eh find first file

    4Fh find next file

    56h move (rename) file

    6Ch create/open file

Return: CF set on error

    AX = error code

7100h if function not supported

CF clear if successful

    other registers as for corresponding "old" DOS function

Notes:	if error 7100h is returned, the old-style function should be called

AX=714Eh returns a "search handle" which must be passed to AX=714Fh;

  when the search is complete, AX=71A1h must be called to terminate

  the search

SeeAlso: AH=39h,AH=3Ah,AH=3Bh,AH=41h,AH=43h,AH=47h,AH=4Eh,AH=4Fh,AH=56h,AH=6Ch

SeeAlso: AX=714Eh,AX=714Fh,AX=71A0h,AX=71A1h


INT 21 714E - Windows95 - LONG FILENAME - FIND FIRST MATCHING FILE

Category: D - DOS kernel

Inp.:

AX = 714Eh

SI = 0000h

DS:DX -> ASCIZ filespec

ES:DI -> FindData record (see #2695)

Return: CF clear if successful

    AX = filefind handle (needed to continue search)

CF set on error

    AX = error code

7100h if function not supported

Note:	this function is only available when IFSMgr is running, not under bare

  MS-DOS 7

SeeAlso: AX=714Fh,AX=71A1h


INT 21 714F - Windows95 - LONG FILENAME - FIND NEXT MATCHING FILE

Category: D - DOS kernel

Inp.:

AX = 714Fh

SI = 0000h

BX = filefind handle (from AX=714Eh)

ES:DI -> FindData record (see #2695)

Return: CF clear if successful

CF set on error

    AX = error code

7100h if function not supported

Note:	this function is only available when IFSMgr is running, not under bare

  MS-DOS 7

SeeAlso: AX=714Eh,AX=71A1h


INT 21 7160 - Windows95 - LONG FILENAME - "TRUENAME" - CANONICALIZE FILENAME OR PATH

Category: D - DOS kernel

Inp.:

AX = 7160h

CX = ??? (apparently must be 0002h)

DS:SI -> ASCIZ filename or path

ES:DI -> 128-byte buffer for canonicalized name

Return: CF set on error

    AX = error code

02h invalid component in directory path or drive letter only

03h malformed path or invalid drive letter

    ES:DI buffer unchanged

CF clear if successful

    AH = 00h

    AL = destroyed (00h or 5Ch or last char of current dir on drive)

    buffer filled with qualified name of form D:\PATH\FILE.EXT or

      \\MACHINE\PATH\FILE.EXT

Desc:	determine the canonical name of the specified filename or path,

  corresponding to the undocumented TRUENAME command in COMMAND.COM

SeeAlso: AH=60h


INT 21 71A0 - Windows95 - LONG FILENAME - GET VOLUME INFORMATION

Category: D - DOS kernel

Inp.:

AX = 71A0h

DS:SI -> ASCIZ root name (e.g. "C:\")

ES:DI -> buffer for file system name

CX = size of ES:DI buffer

Return: CF clear if successful

    BX = flags (see below)

    CX = maximum length of file name [usually 255]

    DX = maximum length of path [usually 260]

    ES:DI buffer filled (ASCIZ, e.g. "FAT","NTFS","CDFS")

CF set on error

    AX = error code

7100h if function not supported

Note:	for the file system name buffer, 32 bytes should be sufficient; that's

 what is used in some sample code by Walter Oney from Microsoft.

SeeAlso: AX=714Eh

Bitfields for flags:

Bit(s)	Description

 0	searches are case sensitive

 1	preserves case in directory entries

 2	uses Unicode characters in file and directory names

 3-13	reserved (0)

 14	supports DOS long filename functions

 15	volume is compressed


INT 21 71A1 - Windows95 - LONG FILENAME - "FindClose" - TERMINATE DIRECTORY SEARCH

Category: D - DOS kernel

Inp.:

AX = 71A1h

BX = filefind handle (from AX=714Eh)

Return: CF clear if successful

CF set on error

   AX = error code

7100h if function not supported

Notes:	this function must be called after starting a search with AX=714Eh,

  to indicate that the search handle returned by that function will

  no longer be used

this function is only available when IFSMgr is running, not under bare

  MS-DOS 7

SeeAlso: AH=4Eh,AX=714Eh,AX=714Fh


INT 21 72-- - MS-DOS 7 (Windows95) - ???

Category: D - DOS kernel

Inp.:

AH = 72h

details not available


INT 21 73-- - MS-DOS 7 (Windows95) - DRIVE LOCKING ???

Category: D - DOS kernel

Inp.:

AH = 73h

AL = subfunction

    00h get ???: CL =

00h: drive flag???

01h: ??? flag

    01h set ???: CL =

00h: drive flag???

    set to 06h if CH bit 1 =1, else to 00h

01h: ??? flag

    set flag bit 3 to bit 3 of CH

DL = drive (0=current, 1=A:, etc.)

Return: CF clear if successful

    for AL=00h:

AL = value of CL on entry

for CL=00h: AH = flag and 06h (i.e. bits 1 and 2 used)

for CL=01h: AH = flag and 08h (i.e. bit 3 used)

(flag being taken from a table of bytes)

CF set on error

    AX = error code

7300h if function not supported


INT 21 76-- - VIRUS - "Klaeren"/"Hate" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 76h

Return: AL = 48h if resident

SeeAlso: AX=6969h,AX=7700h"VIRUS"


INT 21 7700 - VIRUS - "Growing Block" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 7700h

Return: AX = 0920h if resident

SeeAlso: AH=76h,AX=7BCEh,AH=7Fh


INT 21 7734 - SCROLLit v1.7 - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = 7734h

Return: DX = 3477h if installed

    AX = segment of resident code

Program: ScrollIt is a shareware backscroll utility by Bromfield Software

  Products


INT 21 7761 - WATCH.COM v3.2+ - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 7761h ('wa')

Return: AX = 6177h

Note:	WATCH.COM is part of the "TSR" package by TurboPower Software

SeeAlso: INT 16/AX=7761h


INT 21 7BCE - VIRUS - "Whisper"/"Taipan" - INSTALLATION CHECK???

Category: v - virus/antivirus

Inp.:

AX = 7BCEh

Return: ???

SeeAlso: AX=7700h,AH=7Fh"VIRUS"


INT 21 7F-- - VIRUS - "Squeaker" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 7Fh

Return: AH = 80h if resident

SeeAlso: AX=7BCEh,AH=83h"VIRUS"


INT 21 80-- - European MS-DOS 4.0 - "AEXEC" - EXECUTE PROGRAM IN BACKGROUND

Category: D - DOS kernel

Inp.:

AH = 80h

CX = mode

    0000h place child in zombie mode on exit to preserve exit code

    0001h discard child process and exit code on termination

DS:DX -> ASCIZ full program name

ES:BX -> parameter block (as for AX=4B00h)

Return: CF clear if successful

    AX = Command Subgroup ID (CSID)

CF set on error

    AX = error code (see #0885 at AH=59h)

Program: European MS-DOS 4.0 was written for Siemens in Germany and then used

  by several other European OEMs; its release falls between mainstream

  versions 3.2 and 3.3

Desc:	asynchronously execute a program, creating a new process for it

Notes:	this function is called by the DETACH command

there is a system-wide limit of 32 processes

the CSID is used to identify all processes that have been spawned by

  a given process, whether directly or indirectly

programs to be run in the background must use the new executable format

  (see #0809 at AH=4Bh)

background processes may only perform asynchronous (background) EXECs,

  either this function or AX=4B04h

background processes may execute INT 11, INT 12, INT 21, INT 2A, and

  INT 2F at any time; they may execute INT 10 and INT 16 only while

  they have opened a popup screen via INT 2F/AX=1401h; no other

  interrupts may be executed from the background

background processes may not use drive B: or overlay their code

  segments

see AX=8700h for an installation check

the "NE" new executable format made its first appearance in European

  MS-DOS 4.0

SeeAlso: AH=4Bh,AH=87h,INT 2F/AX=1400h"POPUP"


INT 21 8080 - PCW Weather Card interface - UNINSTALL PCW.COM AND FREE MEMORY

Category: - - (none)

Inp.:

AX = 8080h

Return: ???

SeeAlso: AX=7070h/BX=7070h


INT 21 81-- - European MS-DOS 4.0 - "FREEZE" - STOP A PROCESS

Category: D - DOS kernel

Inp.:

AH = 81h

BX = flag (00h freeze command subtree, 01h only specified process)

CX = Process ID of head of command subtree

Return: CF clear if successful

CF set on error

    AX = error code (no such process)

Desc:	temporarily suspend a process or a process and all of its children

Note:	if BX=0001h, this call will not return until the process is actually

  frozen, which may not be until after it unblocks from an I/O

  operation

SeeAlso: AH=82h,AH=89h,AX=8E00h,INT 15/AX=101Dh


INT 21 82-- - European MS-DOS 4.0 - "RESUME" - RESTART A PROCESS

Category: D - DOS kernel

Inp.:

AH = 82h

BX = flag (00h resume command subtree, 01h only specified process)

CX = Process ID of head of command subtree

Return: CF clear if successful

CF set on error

    AX = error code (no such process)

Desc:	restart a previously-suspended process or a process and all of its

  children

SeeAlso: AH=81h,INT 15/AX=101Eh


INT 21 83-- - European MS-DOS 4.0 - "PARTITION" - GET/SET FOREGROUND PARTITION SIZE

Category: D - DOS kernel

Inp.:

AH = 83h

AL = function

    00h get size

    01h set new size

BX = new size in paragraphs

Return: CF clear if successful

    BX = current size (function 00h) or old size (function 01h)

CF set on error

    AX = error code (01h,07h,0Dh)(see #0885 at AH=59h)

Desc:	specify or determine how much memory may be allocated by the foreground

  process

Note:	if the partition size is set to 0000h, no partition management is done

  and all memory allocation is compatible with DOS 3.2.

the partition size can be changed regardless of what use is being made

  of the changed memory; subsequent allocations will follow the

  partition rules (foreground processes may allocate only foreground

  memory; background processes allocate background memory first, then

  foreground memory)

SeeAlso: AH=48h,AH=4Ah


INT 21 83-- - VIRUS - "SVC" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 83h

Return: DX = 1990h if resident

SeeAlso: AH=76h,AH=84h"VIRUS"


INT 21 84-- - VIRUS - "SVC 5.0" or "SVC 6.0" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 84h

Return: DX = 1990h if resident

    BH = version number (major in high nybble, minor in low)

SeeAlso: AH=83h"VIRUS",AH=89h"VIRUS"


INT 21 8400 - European MS-DOS 4.0 - "CREATMEM" - CREATE A SHARED MEMORY AREA

Category: D - DOS kernel

Inp.:

AX = 8400h

BX = size in bytes (0000h = 65536)

CX = flags

    bit 6: zero-initialize segment

DS:DX -> ASCIZ name (must begin with "\SHAREMEM\")

Return: CF clear if successful

    AX = segment address of shared memory global object

CF set on error

    AX = error code (06h,08h) (see #0885 at AH=59h)

Desc:	create an area of memory which may be accessed by multiple processes

Notes:	shared memory objects are created as special files (thus the

  restriction on the name)

on successful creation, the reference count is set to 1

SeeAlso: AX=8401h,AX=8402h,INT 15/AX=DE19h


INT 21 8401 - European MS-DOS 4.0 - "GETMEM" - OBTAIN ACCESS TO SHARED MEMORY AREA

Category: D - DOS kernel

Inp.:

AX = 8401h

CX = flags

    bit 7: writable segment (ignored by MS-DOS 4.0)

DS:DX -> ASCIZ name (must begin with "\SHAREMEM\")

Return: CF clear if successful

    AX = segment address of shared memory global object

    CX = size in bytes

CF set on error

    AX = error code (invalid name)

Desc:	get address of a previously-created area of memory which may be

  accessed by multiple processes

Note:	this call increments the reference count for the shared memory area

SeeAlso: AX=8400h,AX=8402h


INT 21 8402 - European MS-DOS 4.0 - "RELEASEMEM" - FREE SHARED MEMORY AREA

Category: D - DOS kernel

Inp.:

AX = 8402h

BX = handle (segment address of shared memory object)

Return: CF clear if successful

CF set on error

    AX = error code (no such name)

Desc:	indicate that the specified area of shared memory will no longer be

  used by the caller

Note:	the reference count is decremented and the shared memory area is

  deallocated if the new reference count is zero

SeeAlso: AX=8400h,AX=8401h,INT 15/AX=DE19h


INT 21 85-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 85h

???

Return: ???


INT 21 86-- - European MS-DOS 4.0 - "SETFILETABLE" - INSTALL NEW FILE HANDLE TABLE

Category: D - DOS kernel

Inp.:

AH = 86h

BX = total number of file handles in new table

Return: CF clear if successful

CF set on error

    AX = error code (06h,08h) (see #0885 at AH=59h)

Desc:	adjust the size of the per-process open file table, thus raising or

  lowering the limit on the number of files the caller can open

  simultaneously

Notes:	any currently-open files are copied to the new table

if the table is increased beyond the default 20 handles, only the

  first 20 will be inherited by child processes

error 06h is returned if the requested number of handles exceeds

  system limits or would require closing currently-open files

SeeAlso: AH=26h,AH=67h


INT 21 87-- - European MS-DOS 4.0 - "GETPID" - GET PROCESS IDENTIFIER

Category: D - DOS kernel

Inp.:

AH = 87h

Return: AX = PID

BX = parent process's PID

CX = Command Subgroup ID (CSID)

Program: European MS-DOS 4.0 was written for Siemens in Germany and then used

  by several other European OEMs; its release falls between mainstream

  versions 3.2 and 3.3

Desc:	determine an identifier by which to access the calling process

Notes:	called by MS C v5.1 getpid() function

this function apparently must return AX=0001h for INT 21/AH=80h to

  succeed

one possible check for European MS-DOS 4.0 is to issue this call with

  AL=00h and check whether AL is nonzero on return

SeeAlso: AH=30h,AH=62h,AH=80h

Index:	installation check;European MS-DOS 4.0


INT 21 88-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 88h

???

Return: ???

SeeAlso: AH=87h


INT 21 89-- - European MS-DOS 4.0 - SLEEP

Category: D - DOS kernel

Inp.:

AH = 89h

CX = time in milliseconds or 0000h to give up time slice

Return: CF clear if successful

    CX = 0000h

CF set on error

    AX = error code (interrupted system call)

    CX = sleep time remaining

Desc:	suspend the calling process for the specified duration

Notes:	the sleep interval is rounded up to the next higher increment of the

  scheduler clock, and may be extended further if other processes are

  running

this call may be interrupted by signals (see AH=8Dh)

reportedly called by Microsoft C 4.0 startup code

background processes have higher priority than the foreground process,

  and should thus periodically yield the CPU

SeeAlso: AH=81h,INT 15/AX=1000h,INT 2F/AX=1680h,INT 7A/BX=000Ah


INT 21 89-- - VIRUS - "Vriest" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 89h

Return: AX = 0123h if resident

SeeAlso: AH=84h"VIRUS",AH=90h"VIRUS"


INT 21 8A-- - European MS-DOS 4.0 - "CWAIT" - WAIT FOR CHILD TO TERMINATE

Category: D - DOS kernel

Inp.:

AH = 8Ah

BL = range (00h command subtree, 01h any child)

BH = suspend flag

    00h suspend if children exist but none are dead

    01h return if no dead children

CX = Process ID of head of command subtree

Return: CF clear if successful

    AH = termination type (see #0970)

    AL = return code from child or aborting signal

    BX = PID of child (0000h if no dead children)

CF set on error

    AX = error code (no child,interrupted system call)

Desc:	get return code from an asynchronously-executed child program,

  optionally waiting if no return code is available

SeeAlso: AH=4Bh,AH=4Dh,AH=80h,AH=8Dh


INT 21 8B-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 8Bh

???

Return: ???

SeeAlso: AH=87h


INT 21 8C-- - European MS-DOS 4.0 - SET SIGNAL HANDLER

Category: D - DOS kernel

Inp.:

AH = 8Ch

AL = signal number (see #0971)

BL = action (see #0972)

DS:DX -> signal handler (see #0973)

Return: CF clear if successful

    AL = previous action

    ES:BX -> previous signal handler

CF set on error

    AX = error code (01h,invalid SigNumber or Action)

  (see #0885 at AH=59h)

Desc:	set the routine which will be invoked on a number of exceptional

  conditions

Note:	all signals will be sent to the most recently installed handler

SeeAlso: AH=8Dh


INT 21 8D-- - European MS-DOS 4.0 - SEND SIGNAL

Category: D - DOS kernel

Inp.:

AH = 8Dh

AL = signal number (see #0971)

BH = signal argument

BL = action

    00h send to entire command subtree

    01h send only to specified process

DX = Process ID

Return: CF clear if successful

CF set on error

    AX = error code (01h,06h)(see #0885 at AH=59h)

Desc:	invoke the exceptional-condition handler for the specified process

Note:	error 06h may be returned if one or more of the affected processes

  have an error handler for the signal

SeeAlso: AH=8Ch


INT 21 8E00 - European MS-DOS 4.0 - "SETPRI" - GET/SET PROCESS PRIORITY

Category: D - DOS kernel

Inp.:

AX = 8E00h

BH = 00h

BL = action

    00h set priority for command subtree

    01h set priority for specified process only

CX = Process ID

DH = 00h

DL = change in priority (00h to get priority)

Return: CF clear if successful

    DL = process priority

    DH destroyed

CF set on error

    AX = error code (01h,no such process)(see #0885 at AH=59h)

Desc:	specify or determine the execution priority of the specified process

  or the process and all of its children

SeeAlso: AH=81h


INT 21 8F-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 8Fh

???

Return: ???

SeeAlso: AH=87h


INT 21 90-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 90h

???

Return: ???

SeeAlso: AH=87h


INT 21 90-- - VIRUS - "Carioca" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = 90h

Return: AH = 01h if resident

SeeAlso: AH=89h"VIRUS",AX=9753h"VIRUS"


INT 21 91-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 91h

???

Return: ???

SeeAlso: AH=87h


INT 21 92-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 92h

???

Return: ???

SeeAlso: AH=87h


INT 21 93-- - European MS-DOS 4.0 - "PIPE" - CREATE A NEW PIPE

Category: D - DOS kernel

Inp.:

AH = 93h

CX = size in bytes

Return: CF clear if successful

    AX = read handle

    BX = write handle

CF set on error

    AX = error code (08h) (see #0885 at AH=59h)

Desc:	create a communications channel which may be used for interprocess

  data and command exchanges

SeeAlso: AH=3Ch,AH=3Fh,AH=40h,AH=84h


INT 21 94-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 94h

???

Return: ???

SeeAlso: AH=87h


INT 21 95-- - European MS-DOS 4.0 - HARD ERROR PROCESSING

Category: D - DOS kernel

Inp.:

AH = 95h

AL = new state

   00h enabled

   01h disabled, automatically fail hard errors

Return: AX = previous setting

Desc:	specify whether hard (critical) errors should automatically fail the

  system call or invoke an INT 24

SeeAlso: INT 24


INT 21 96-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 96h

???

Return: ???


INT 21 97-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 97h

???

Return: ???


INT 21 9753 - VIRUS - "Nina" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 9753h

Return: never (executes original program) if virus resident

SeeAlso: AH=90h"VIRUS",AX=A1D5h"VIRUS",AX=9AD5h"VIRUS"


INT 21 98-- - European MS-DOS 4.0 - ???

undocumented function

Category: D - DOS kernel

Inp.:

AH = 98h

???

Return: ???


INT 21 99-- - European MS-DOS 4.0 - "PBLOCK" - BLOCK A PROCESS

partially documented function

Category: D - DOS kernel

Inp.:

AH = 99h

DS:BX -> memory location to block on

CX = timeout in milliseconds

DH = nonzero if interruptable

Return: CF clear if awakened by event

    AX = 0000h

CF set if unusual wakeup

    ZF set if timeout, clear if interrupted by signal

    AX = nonzero

Desc:	suspend calling process until another process sends a "restart" signal

  or a timeout occurs

SeeAlso: AH=9Ah,INT 2F/AX=0802h


INT 21 9A-- - European MS-DOS 4.0 - "PRUN" - UNBLOCK A PROCESS

partially documented function

Category: D - DOS kernel

Inp.:

AH = 9Ah

DS:BX -> memory location processes may have blocked on

Return: AX = number of processes awakened

ZF set if no processes awakened

Program: European MS-DOS 4.0 was written for Siemens in Germany and then used

  by several other European OEMs; its release falls between mainstream

  versions 3.2 and 3.3

Desc:	restart all processes waiting for the specified "restart" signal

SeeAlso: AH=99h,INT 2F/AX=0802h


INT 21 9AD5 - VIRUS - "Massacre/Beavis" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = 9AD5h

Return: AX = 9AD4h if resident

SeeAlso: AX=6969h"VIRUS",AX=A1D5h"VIRUS"


INT 21 A0-- - Attachmate Extra! - GET 3270 DISPLAY STATE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = A0h

Return: AL = display status (see #0974)

BX = host window status (see #0975)

Program: Attachmate Extra! is a 3270 emulator by Attachmate Corporation

SeeAlso: AH=A1h


INT 21 A1-- - Attachmate Extra! - SET 3270 DISPLAY STATE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = A1h

AL = new display status byte (see #0974)

SeeAlso: AH=A0h,AH=A2h


INT 21 A1D5 - VIRUS - "789"/"Filehider" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = A1D5h

Return: AX = 900Dh if resident

SeeAlso: AX=9753h,AX=9AD5h,AX=A55Ah


INT 21 A2-- - Attachmate Extra! - SET HOST WINDOW STATE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = A2h

AL = new host window status byte (see #0976)

SeeAlso: AH=A1h


INT 21 A3-- - Attachmate Extra! - SEND KEYSTROKES TO HOST WINDOW

Category: I - IBM workstation/terminal emulators

Inp.:

AH = A3h

AL = window number (1-4=host B-E)

CX = 0001h

DS:BX -> keystroke buffer

DL = zero if keystroke buffer contains host function code (see #0977),

      non-zero if keystroke buffer contains ASCII character

Return: CX = zero if character sent, non-zero if not

BX incremented if CX=0


INT 21 A4-- - Attachmate Extra! - GET HOST WINDOW BUFFER ADDRESS

Category: I - IBM workstation/terminal emulators

Inp.:

AH = A4h

AL = window number (1-4=host B-E)

Return: DS:BX -> 3270 display buffer

SeeAlso: AH=A5h,AH=B8h


INT 21 A5-- - Attachmate Extra! - GET HOST WINDOW CURSOR POSITION

Category: I - IBM workstation/terminal emulators

Inp.:

AH = A5h

AL = window number (1-4=host B-E)

Return: BX = cursor position (80 * row + column, where 0:0 is upper left)

Note:	if the host window is configured with the Extended Attribute (EAB)

  feature, multiply the cursor position by 2 to obtain the byte offset

  into the display buffer

SeeAlso: AH=A4h


INT 21 A55A - VIRUS - "Eddie-2" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = A55Ah

Return: AX = 5AA5h if resident

SeeAlso: AX=A1D5h,AX=AA00h


INT 21 AA00 - VIRUS - "Blinker" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = AA00h

Return: AX = 00AAh if resident

SeeAlso: AX=A55Ah,AX=AA03h


INT 21 AA03 - VIRUS - "Backtime" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = AA03h

Return: AX = 03AAh if resident

SeeAlso: AX=AA00h,AH=ABh


INT 21 AB-- - VIRUS - "600" or "Voronezh"-family - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = ABh

Return: AX = 5555h if resident

SeeAlso: AX=AA03h,AX=ABCDh,AX=BBBBh"VIRUS"


INT 21 ABCD - VIRUS - "SuperVirus 2" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = ABCDh

Return: AX = DCBAh if resident

SeeAlso: AH=ABh"VIRUS",AX=BBBBh"VIRUS"


INT 21 AF-- - Attachmate Extra! - GET TRANSLATE TABLE ADDRESS

Category: I - IBM workstation/terminal emulators

Inp.:

AH = AFh

Return: DS:BX -> translate tables (see #0978)


INT 21 B300 - Novell NetWare - CHECK LIP/PACKET SIGNING/IPX CHECKSUM SUPPORT???

undocumented function

Category: N - network

Inp.:

AX = B300h

Return: AX = 0000h if supported???

Note:	this function appeared with the packet signing/Large Internet Packets/

  IPX Checksum-aware NetWare shells

SeeAlso: AX=B301h,AX=B302h


INT 21 B301 - Novell NetWare - CHECK SIGNATURE LEVEL???

undocumented function

Category: N - network

Inp.:

AX = B301h

Return: AX = 0000h if supported???

    BX:CX indicate signature level (see #0979)

Note:	this function appeared with the packet signing/Large Internet Packets/

  IPX Checksum-aware NetWare shells

SeeAlso: AX=B300h,AX=B304h,#1581 at INT 2F/AX=7A20h/BX=0000h


INT 21 B302 - Novell NetWare - START PACKET SIGNING

undocumented function

Category: N - network

Inp.:

AX = B302h

CX = server connection (1-8)

DS:SI -> 24-byte buffer containing ???

Return: ???

Notes:	this function appeared with the packet signing/Large Internet Packets/

  IPX Checksum-aware NetWare shells

if packet signing is active, this call is required if and only if the

  last call successfully authenticated the workstation to the server

SeeAlso: AX=B300h,#1581


INT 21 B304 - Novell NetWare - SET SIGNATURE LEVEL

undocumented function

Category: N - network

Inp.:

AX = B304h

BX:CX = new signature level (see AX=B301h)

Return: ???

Note:	this function appeared with the packet signing/Large Internet Packets/

  IPX Checksum-aware NetWare shells

SeeAlso: AX=B300h,AX=B301h,AX=B306h,#1581


INT 21 B306 - Novell NetWare - RENEGOTIATE SECURITY LEVEL

Category: N - network

Inp.:

AX = B306h

CX = server connection number (01h-08h)

Return: ???

Note:	this function appeared with the packet signing/Large Internet Packets/

  IPX Checksum-aware NetWare shells

SeeAlso: AX=B300h,AX=B304h,#1581


INT 21 B4-- - Novell NetWare - "AttachHandle"

undocumented function

Category: N - network

Inp.:

AH = B4h

DS:SI -> input buffer (see #0980)

Return: AX = DOS file handle or return code

Note:	this is an interface provided by NetWare to give DOS file access to

  NetWare files on non-DOS systems such as Macintosh, OS/2, and Unix

SeeAlso: AX=E909h


INT 21 B500 - Novell NetWare - VNETWARE.386 API - GET INSTANCE DATA

undocumented function

Category: N - network

Inp.:

AX = B500h

Return: ES:BX -> data

CX = length

SeeAlso: AX=B501h,AX=B502h


INT 21 B501 - Novell NetWare - VNETWARE.386 API - END VIRTUAL MACHINE

undocumented function

Category: N - network

Inp.:

AX = B501h

SeeAlso: AX=B500h,AX=B502h


INT 21 B502 - Novell NetWare - VNETWARE.386 API - START VIRTUAL MACHINE

undocumented function

Category: N - network

Inp.:

AX = B502h

SeeAlso: AX=B500h,AX=B501h


INT 21 B5-- - Novell NetWare shell 3.01 - TASK MODE CONTROL

Category: N - network

Inp.:

AH = B5h

AL = subfunction

    03h get task mode

Return: AH = 00h

AL = current task mode byte (see #0981)

    04h get task mode pointer

Return: ES:BX -> task mode byte

Notes:	the task mode byte specifies how task cleanup should be performed, but

  is declared to be version-dependent

allows a program to disable the automatic cleanup for programs managing

  task swapping, etc.


INT 21 B505 - Novell NetWare - VNETWARE.386 API - SET VIRTUAL MACHINE ID

undocumented function

Category: N - network

Inp.:

AX = B505h

???

Return: ???

SeeAlso: AX=B502h,AX=B506h


INT 21 B506 - Novell NetWare - VNETWARE.386 API - GET VIRTUAL MACH SUPPORT LEVEL

undocumented function

Category: N - network

Inp.:

AX = B506h

Return: AX = ??? (0002h)

SeeAlso: AX=B505h


INT 21 B507 - Novell NetWare - NetWare Shell - GET NUMBER OF PACKET BURST BUFFERS

Category: N - network

Inp.:

AX = B507h

Return: AL = number of packet burst buffers (configured at shell load time)


INT 21 B6-- - Novell NetWare - FILE SERVICES - EXTENDED FILE ATTRIBUTES

Category: N - network

Inp.:

AH = B6h

AL = subfunction

    00h get extended file attributes

    01h set extended file attributes

CL = extended file attributes (see #0982)

DS:DX -> ASCIZ pathname (max 255 bytes)

Return: CF set on error

    AL = error code

8Ch caller lacks privileges

FEh not permitted to search directory

FFh file not found

CF clear if successful

    AL = 00h (success)

    CL = current extended file attributes (see #0982)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=4300h,AH=E3h/SF=0Fh


INT 21 B7-- - Novell NetWare - "HoldFileModeSet" (obsolete)

undocumented function

Category: N - network

Inp.:

AH = B7h

AL = new value for HoldFileFlag

Return: AL = previous value of HoldFileFlag

Note:	this function provided backward compatibility with a bug in early

  DOS versions and CP/M, but is no longer used or supported


INT 21 B8-- - Attachmate Extra! - DISABLE HOST BUFFER UPDATES

Category: I - IBM workstation/terminal emulators

Inp.:

AH = B8h

AL = window number (1-4=host B-E)

DL = 01h

Notes:	only valid in CUT mode

next AID keystroke (eg Enter) enables host buffer updates

SeeAlso: AH=A4h


INT 21 B800 - Novell NetWare - PRINT SERVICES - GET DEFAULT CAPTURE FLAGS

Category: N - network

Inp.:

AX = B800h

CX = size of reply buffer (01h-3Fh)

ES:BX -> reply buffer for capture flags table (see #0983)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 2.0+

SeeAlso: AX=B801h,AX=B802h,AH=DFh/DL=00h,AH=DFh/DL=04h


INT 21 B801 - Novell NetWare - PRINT SERVICES - SET DEFAULT CAPTURE FLAGS

Category: N - network

Inp.:

AX = B801h

CX = size of buffer (01h-3Fh)

ES:BX -> buffer containing capture flags table (see #0983)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 2.0+

SeeAlso: AX=B800h,AX=B803h,AH=DFh/DL=00h,AH=DFh/DL=04h


INT 21 B802 - Novell NetWare - PRINT SERVICES - GET SPECIFIC CAPTURE FLAGS

Category: N - network

Inp.:

AX = B802h

CX = size of reply buffer (01h-3Fh)

DH = LPT port (00h-02h)

ES:BX -> reply buffer for capture flags table (see #0983)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=B800h,AX=B803h,AH=DFh/DL=00h,AH=DFh/DL=04h


INT 21 B803 - Novell NetWare - PRINT SERVICES - SET SPECIFIC CAPTURE FLAGS

Category: N - network

Inp.:

AX = B803h

CX = size of buffer (01h-3Fh)

DH = LPT port (00h-02h)

ES:BX -> buffer containing capture flags table (see #0983)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=B800h,AX=B803h,AH=DFh/DL=00h,AH=DFh/DL=04h


INT 21 B804 - Novell NetWare - PRINT SERVICES - GET DEFAULT LOCAL PRINTER

Category: N - network

Inp.:

AX = B804h

Return: DH = default LPT port (00h-02h)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=B800h,AX=B805h,AH=DFh/DL=00h


INT 21 B805 - Novell NetWare - PRINT SERVICES - SET DEFAULT LOCAL PRINTER

Category: N - network

Inp.:

AX = B805h

DH = new default LPT port (00h-02h)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=B800h,AX=B804h,AH=DFh/DL=00h


INT 21 B806 - Novell NetWare - PRINT SERVICES - SET CAPTURE PRINT QUEUE

Category: N - network

Inp.:

AX = B806h

DH = LPT port (00h-02h)

BX:CX = print queue's object ID

Return: AL = status

    00h successful

    FFh job already set

Desc:	specify the print queue on which a print job is to be placed the next

  time a capture is started on the given printer port

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=B801h,AX=B807h,AH=E0h/SF=09h


INT 21 B807 - Novell NetWare - PRINT SERVICES - SET CAPTURE PRINT JOB

Category: N - network

Inp.:

AX = B807h

DH = LPT port (00h-02h)

BX = job number (see AH=E3h/SF=68h)

SI:DI:CX = NetWare file handle (see AH=E3h/SF=68h)

Return: AL = status

    00h successful

    FFh job already queued

Desc:	specify the capture file and print job to be used for subsequent

  output to the given printer port

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AX=B801h,AX=B806h,AH=E0/SF=09h,AH=E3h/SF=68h


INT 21 B808 - Novell NetWare - PRINT SERVICES - GET BANNER USER NAME

Category: N - network

Inp.:

AX = B808h

ES:BX -> 12-byte buffer for user name

Return: AL = status

    00h successful

Desc:	get the user name which is printed on the banner page

Notes:	this function is supported by Advanced NetWare 2.1+

the default name is the login name of the user

SeeAlso: AX=B809h


INT 21 B809 - Novell NetWare - PRINT SERVICES - SET BANNER USER NAME

Category: N - network

Inp.:

AX = B809h

ES:BX -> 12-byte buffer containing user name

Return: AL = status

    00h successful

Desc:	specify the user name which is printed on the banner page

Notes:	this function is supported by Advanced NetWare 2.1+

the default name is the login name of the user

SeeAlso: AX=B808h


INT 21 B9-- - Novell NetWare - "SpecialAttachableFunction"

undocumented function

Category: N - network

Inp.:

AH = B9h

AL = FFh to hook this function

    ES:BX -> function to invoke on AH=B9h when AL<>FFh

Note:	this function is no longer used or supported by current versions of

  NetWare


INT 21 BA-- - Novell NetWare - "ReturnCommandComPointers"

undocumented function

Category: N - network

Inp.:

AH = BAh

Return: DX = environment segment

ES:DI -> COMMAND.COM drive

Desc:	used to edit the COMSPEC and PATH variables in the master environment

  when mapping network drives

Note:	this function was documented in older Novell documents which are no

  longer available


INT 21 BB-- - Novell NetWare - WORKSTATION - SET END OF JOB STATUS

Category: N - network

Inp.:

AH = BBh

AL = new EOJ flag

    00h disable EOJs

    01h enable EOJs

Return: AL = old EOJ flag

Desc:	specify whether the network shell should automatically generate an

  End of Job call when the root command processor regains control

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=19h,AH=D6h


INT 21 BBBB - VIRUS - "Hey You" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = BBBBh

Return: AX = 6969h

SeeAlso: AH=ABh"VIRUS",AH=BEh"VIRUS"


INT 21 BC-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG PHYSICAL RECORD

Category: N - network

Inp.:

AH = BCh

AL = flags (see #0986)

BX = file handle

CX:DX = starting offset in file

SI:DI = length of region to lock

BP = timeout in timer ticks (1/18 sec)

0000h = don't wait if already locked

Return: AL = status (see #0985)

Desc:	add the specified physical record to the log table, optionally locking

  it

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=5Ch,AH=BDh,AH=BEh,AH=BFh,AH=C2h,AH=D0h


INT 21 BD-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE PHYSICAL RECORD

Category: N - network

Inp.:

AH = BDh

BX = file handle

CX:DX = starting offset in file

SI:DI = length of record

Return: AL = status

    00h successful

    FFh record not locked

Desc:	unlock the specified physical record but do not remove it from log

  table

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=BCh,AH=BEh"NetWare",AH=C0h,AH=C3h,AH=D2h


INT 21 BE-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR PHYSICAL RECORD

Category: N - network

Inp.:

AH = BEh

BX = file handle

CX:DX = starting offset within file

SI:DI = record length in bytes

Return: AL = status

    00h successful

    FFh specified record not locked

Desc:	unlock the physical record and remove it from the log table

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=5Ch,AH=BCh,AH=BDh,AH=C1h,AH=C4h,AH=D4h


INT 21 BE-- - VIRUS - "Datalock" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = BEh

Return: AX = 1234h if resident

SeeAlso: AX=BBBBh,AX=BE00h


INT 21 BE00 - VIRUS - "USSR-1049" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = BE00h

CF set

Return: CF clear if resident

SeeAlso: AH=BEh"VIRUS",AH=C0h"VIRUS"


INT 21 BF-- - Novell NetWare, Alloy NTNX - LOG/LOCK RECORD (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = BFh

AL = flags (see #0986)

DS:DX -> opened FCB (see #0574 at AH=0Fh)

BX:CX = offset

BP = lock timeout in timer ticks (1/18 sec) if AL nonzero

SI:DI = length

Return: AL = error code (see #0985)

Note:	this function was added in NetWare 4.6, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=BCh,AH=C0h"NetWare",AH=C2h"NetWare"


INT 21 C0-- - Novell NetWare, Alloy NTNX - RELEASE RECORD (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = C0h

DS:DX -> non-extended FCB (see #0574 at AH=0Fh)

BX:CX = offset

Return: AL = error code (see #0985)

Notes:	unlocks record but does not remove it from log table

this function was added in NetWare 4.6, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=BDh,AH=BFh,AH=C1h"NetWare",AH=C3h


INT 21 C0-- - VIRUS - "Slow"/"Zerotime", "Solano" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = C0h

Return: AX = 0300h if "Slow"/"Zerotime" resident

AX = 1234h if "Solano" resident

SeeAlso: AX=BE00h,AH=C1h"VIRUS",AX=C301h"VIRUS"


INT 21 C1-- - Novell NetWare, Alloy NTNX - CLEAR RECORD (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = C1h

DS:DX -> opened FCB (see #0574 at AH=0Fh)

BX:CX = offset

Return: AL = error code (see #0985)

Note:	unlocks record and removes it from log table

this function was added in NetWare 4.6, but was removed some time prior

  to Advanced NetWare, and is no longer listed in current Novell

  documentation

SeeAlso: AH=BEh,AH=C0h"NetWare",AH=C4h


INT 21 C1-- - VIRUS - "Solano" - ???

Category: v - virus/antivirus

Inp.:

AH = C1h

???

Return: ???

SeeAlso: AH=C0h"VIRUS"


INT 21 C2-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK PHYSICAL RECORD SET

Category: N - network

Inp.:

AH = C2h

AL = flags

    bit 1: non-exclusive lock

BP = lock timeout in timer ticks (1/18 sec) 0000h = no wait

Return: AL = status

    00h successful

    FEh timed out

    FFh failed

Desc:	attempt to lock all physical records listed in the log table

Notes:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

status FFh will be returned if one or more physical records have been

  exclusively locked by another process

SeeAlso: AH=BFh,AH=C3h,AH=D1h


INT 21 C2-- - VIRUS - "Scott's Valley" - ???

Category: v - virus/antivirus

Inp.:

AH = C2h

???

Return: ???

SeeAlso: AH=C0h"VIRUS"


INT 21 C3-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE PHYSICAL RECRD SET

Category: N - network

Inp.:

AH = C3h

Desc:	unlock all currently-locked physical records in the log table, but do

  not remove them from the table

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=BDh,AH=C0h,AH=C2h"NetWare",AH=C4h,AH=D3h


INT 21 C301 - VIRUS - "905"/"Backfont" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = C301h

DX = F1F1h

Return: DX = 0E0Eh if resident

SeeAlso: AH=C0h"VIRUS",AX=C500h"VIRUS"


INT 21 C4-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR PHYSICAL RECORD SET

Category: N - network

Inp.:

AH = C4h

Desc:	unlock all physical records in the log table and remove them from the

  log table

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=BEh,AH=C1h,AH=D5h


INT 21 C500 - Novell NetWare - SYNCHRONIZATION SERVICES - OPEN SEMAPHORE

Category: N - network

Inp.:

AX = C500h

DS:DX -> semaphore name (counted string, max 127 bytes)

CL = initial value for semaphore

Return: AL = status

    00h successful

BL = number of processes having semaphore open

CX:DX = semaphore handle

    03h name length greater than 127 (see Novell document FYI.A.4611)

    FEh invalid name length

    FFh invalid semaphore value

Notes:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

the semaphore's value is incremented by AX=C503h and decremented by

  AX=C502h

SeeAlso: AX=C501h,AX=C502h,AX=C503h,AX=C504h


INT 21 C500 - VIRUS - "Sverdlov" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = C500h

Return: AX = 6731h if resident

SeeAlso: AX=C301h"VIRUS",AH=C6h"VIRUS"


INT 21 C501 - Novell NetWare - SYNCHRONIZATION SERVICES - EXAMINE SEMAPHORE

Category: N - network

Inp.:

AX = C501h

CX:DX = semaphore handle

Return: AL = status

    00h successful

CX = semaphore value (-127 to 127)

DL = count of processes which have the semaphore open

    FFh invalid handle

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AX=C500h"NetWare",AX=C502h,AX=C504h


INT 21 C502 - Novell NetWare - SYNCHRONIZATION SERVICES - WAIT ON SEMAPHORE

Category: N - network

Inp.:

AX = C502h

CX:DX = semaphore handle

BP = timeout limit in timer ticks (1/18 sec)

0000h return immediately if semaphore already zero or negative

Return: AL = status

    00h successful

    FEh timeout

    FFh invalid handle

Desc:	decrement the semaphore's value, optionally waiting until its value

  becomes positive before decrementing

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AX=C500h"NetWare",AX=C501h,AX=C503h


INT 21 C503 - Novell NetWare - SYNCHRONIZATION SERVICES - SIGNAL SEMAPHORE

Category: N - network

Inp.:

AX = C503h

CX:DX = semaphore handle

Return: AL = status

    00h successful

    01h semaphore value overflowed

    FFh invalid handle

Desc:	increment the semaphore's value and signal the first process (if any)

  in the queue waiting on the semaphore

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AX=C500h"NetWare",AX=C502h


INT 21 C504 - Novell NetWare - SYNCHRONIZATION SERVICES - CLOSE SEMAPHORE

Category: N - network

Inp.:

AX = C504h

CX:DX = semaphore handle

Return: AL = status

    00h successful

    FFh invalid handle

Desc:	decrement the semaphore's open count, and delete the semaphore if the

  count reaches zero

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AX=C500h"NetWare",AX=C501h


INT 21 C6-- - Novell NetWare - SYNCHRONIZATION SERVICES - GET OR SET LOCK MODE

Category: N - network

Inp.:

AH = C6h

AL = subfunction

    00h set old "compatibility" mode (default)

    01h set new extended locks mode

    02h get lock mode

Return: AL = current lock mode

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

the locking mode should be 01h for NetWare 4.61+ and Advanced

  NetWare 1.0+ locking calls, and 00h for all older calls

SeeAlso: AH=BCh,AH=C4h,AH=D0h


INT 21 C6-- - VIRUS - "Socha" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = C6h

Return: AL = 55h if resident

SeeAlso: AX=C500h"VIRUS",AX=C603h


INT 21 C603 - VIRUS - "Yankee Doodle" or "MLTI" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = C603h

BX = version number (002Ch or 002Dh)

CF set

Return: CF clear if resident

ZF set if resident and input BX matches version

SeeAlso: AX=C500h"VIRUS",AX=C700h"VIRUS"


INT 21 C700 - Novell NetWare - TRANSACTION TRACKING SYSTEM - BEGIN TRANSACTION

Category: N - network

Inp.:

AX = C700h

Return: CF clear if successful

    AL = 00h

CF set on error

    AL = error code

96h out of memory

FEh implicit transaction already active, converted to explicit

FFh explicit transaction already active

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

SeeAlso: AX=C701h,AX=C702h,AX=C703h


INT 21 C700 - VIRUS - "MH-757" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = C700h

Return: AL = 07h if resident

SeeAlso: AX=C603h"VIRUS",AH=CBh"VIRUS"


INT 21 C701 - Novell NetWare - TRANSACTION TRACKING SYSTEM - END TRANSACTION

Category: N - network

Inp.:

AX = C701h

Return: AL = status (00h,FDh-FFh) (see #0987)

    00h successful

CX:DX = transaction number

CF clear except when AL=FFh

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

SeeAlso: AX=C700h"NetWare",AX=C703h


INT 21 C702 - Novell NetWare - TRANSACTION TRACKING SYSTEM - INSTALLATION CHECK

Category: N - network

Inp.:

AX = C702h

Return: AL = status

    00h not available

    01h available

    FDh available but disabled

Desc:	determine whether the default file server supports TTS

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+


INT 21 C703 - Novell NetWare - TRANSACTION TRACKING SYSTEM - ABORT TRANSACTION

Category: N - network

Inp.:

AX = C703h

Return: CF clear if successful

    AL = 00h

CF set on error

    AL = error code (FDh-FFh) (see #0987)

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

SeeAlso: AX=C700h"NetWare",AX=C701h,AX=C704h


INT 21 C704 - Novell NetWare - TRANSACTION TRACKING SYSTEM - TRANSACTION STATUS

Category: N - network

Inp.:

AX = C704h

CX:DX = transaction number (see AX=C701h)

Return: AL = status

    00h successful

    FFh not yet written to disk

Desc:	verify that a transaction has actually been written to disk

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

transactions are written to disk in the order in which they are ended,

  but it may take as much as five seconds for the data to be written

SeeAlso: AX=C700h"NetWare",AX=C701h,AX=C703h


INT 21 C705 - Novell NetWare - TRANSACTION TRACKING SYSTEM - GET APPLICTN THRESHOLDS

Category: N - network

Inp.:

AX = C705h

Return: AL = status

    00h successful

CL = maximum logical record locks (default 0)

CH = maximum physical record locks (default 0)

Desc:	get the per-application limits on record locks allowed before an

  implicit transaction is begun

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

if either limit is FFh, implicit transactions are disabled for the

  corresponding lock type

SeeAlso: AX=C706h,AX=C707h


INT 21 C706 - Novell NetWare - TRANSACTION TRACKING SYSTEM - SET APPLICTN THRESHOLDS

Category: N - network

Inp.:

AX = C706h

CL = maximum logical record locks (default 0)

CH = maximum physical record locks (default 0)

Return: AL = status

    00h successful

Desc:	specify the per-application limits on record locks allowed before an

  implicit transaction is begun

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

if either limit is set to FFh, implicit transactions are disabled for

  the corresponding lock type

SeeAlso: AX=C705h,AX=C708h


INT 21 C707 - Novell NetWare - TRANSACTION TRACKING SYSTEM - GET WORKSTN THRESHOLDS

Category: N - network

Inp.:

AX = C707h

Return: AL = status

    00h successful

CL = maximum logical record locks (default 0)

CH = maximum physical record locks (default 0)

Desc:	get the per-workstation limits on record locks allowed before an

  implicit transaction is begun

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

if either limit is FFh, implicit transactions are disabled for the

  corresponding lock type

SeeAlso: AX=C705h,AX=C708h


INT 21 C708 - Novell NetWare - TRANSACTION TRACKING SYSTEM - SET WORKSTN THRESHOLDS

Category: N - network

Inp.:

AX = C708h

CL = maximum logical record locks (default 0)

CH = maximum physical record locks (default 0)

Return: AL = status

    00h successful

Desc:	specify the per-workstation limits on record locks allowed before an

  implicit transaction is begun

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

if either limit is set to FFh, implicit transactions are disabled for

  the corresponding lock type

SeeAlso: AX=C706h,AX=C707h


INT 21 C8-- - Novell NetWare - BEGIN LOGICAL FILE LOCKING

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = C8h

if function C6h lock mode 00h:

    DL = mode

00h no wait

01h wait

if function C6h lock mode 01h:

    BP = timeout in timer ticks (1/18 sec)

Return: AL = error code

Desc:	used to provide TTS support for applications which are not aware of

  Novell's Transaction Tracking System

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=C9h


INT 21 C9-- - Novell NetWare - END LOGICAL FILE LOCKING

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = C9h

Return: AL = error code

Desc:	used to provide TTS support for applications which are not aware of

  Novell's Transaction Tracking System

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=C8h


INT 21 CA-- - Novell NetWare, Alloy NTNX - LOG/LOCK PERSONAL FILE (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = CAh

DS:DX -> FCB (see #0574 at AH=0Fh)

if function C6h lock mode 01h:

    AL = log and lock flag

00h log file only

01h lock as well as log file

    BP = lock timeout in timer ticks (1/18 sec)

Return: AL = error code

    00h successful

    96h no dynamic memory for file

    FEh timeout

    FFh failed

Desc:	provides file locking support for FCBs

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=CBh


INT 21 CA15 - VIRUS - "Piter" - ???

Category: v - virus/antivirus

Inp.:

AX = CA15h

???

Return: ???

SeeAlso: AH=CCh"VIRUS"


INT 21 CB-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK FILE SET

Category: N - network

Inp.:

AH = CBh

if function C6h lock mode 00h:

    DL = mode (00h no wait, 01h wait)

if function C6h lock mode 01h:

    BP = lock timeout in timer ticks (1/18 sec), 0000h = no wait

Return: AL = status (00h,FEh,FFh) (see #0988)

Desc:	attempt to lock all files listed in the log table

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

status FFh will be returned if one or more of the files have already

  been exclusively locked by another process

SeeAlso: AH=CAh,AH=CDh,AH=D1h,AH=EBh


INT 21 CB-- - VIRUS - "Milous" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = CBh

Return: AL = 07h if resident

SeeAlso: AX=C700h"VIRUS",AX=CB02h


INT 21 CB02 - VIRUS - "Witcode" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = CB02h

Return: AX = 02CBh if resident

SeeAlso: AH=CBh"VIRUS",AH=CCh"VIRUS"


INT 21 CC-- - Novell NetWare, Alloy NTNX - RELEASE FILE (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = CCh

DS:DX -> FCB (see #0574 at AH=0Fh)

Return: none

Desc:	unlocks file, but does not remove it from the log table or close it

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=CAh,AH=CDh


INT 21 CC-- - VIRUS - "Westwood" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = CCh

Return: AX = 0700h if resident

SeeAlso: AX=CB02h,AH=CDh"VIRUS",AX=D000h"VIRUS"


INT 21 CD-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE FILE SET

Category: N - network

Inp.:

AH = CDh

Return: none

Desc:	unlock all files listed in the log table, but don't remove them from

  the table

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=CBh,AH=CCh,AH=CFh,AH=D3h


INT 21 CD-- - VIRUS - "Westwood" - ???

Category: v - virus/antivirus

Inp.:

AH = CDh

???

Return: ???

SeeAlso: AH=CCh"VIRUS"


INT 21 CE-- - Novell NetWare, Alloy NTNX - CLEAR FILE (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = CEh

DS:DX -> FCB (see #0574 at AH=0Fh)

Return: AL = error code

Desc:	unlocks file and removes it from log table, then closes all opened and

  logged occurrences

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AH=CAh,AH=CFh,AH=EDh"NetWare"


INT 21 CF-- - LANstep - ???

Category: N - network

Inp.:

AH = CFh

???

Return: ???

Program: LANstep is a redesign of the Waterloo Microsystems PORT network


INT 21 CF-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR FILE SET

Category: N - network

Inp.:

AH = CFh

Return: AL = 00h

Desc:	unlock and remove all files from log table

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=CAh,AH=CEh,AH=EBh"NetWare"


INT 21 D0-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG LOGICAL RECORD

Category: N - network

Inp.:

AH = D0h

DS:DX -> record string (counted string, max 99 data bytes)

if function C6h lock mode 01h: (Novell, NTNX only)

    AL = flags

bit 0: lock as well as log the record

bit 1: non-exclusive lock

    BP = lock timeout in timer ticks (1/18 sec)

Return: AL = status

    00h successful

    96h no dynamic memory for file

    FEh timed out

    FFh unsuccessful

Desc:	add the specified logical record name to the log table, and optionally

  lock the record

Notes:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+,

  Banyan VINES, and Alloy NTNX

locks on logical record names are advisory and may be ignored by other

  applications

SeeAlso: AH=BCh,AH=D1h,AH=D2h,AH=D4h,AH=EBh


INT 21 D000 - VIRUS - "Fellowship" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = D000h

Return: BX = 1234h if resident

SeeAlso: AH=CCh"VIRUS",AH=D5h"VIRUS",AX=D5AAh


INT 21 D1-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK LOGICAL RECORD SET

Category: N - network

Inp.:

AH = D1h

AL = lock type (00h exclusive, 01h shareable)

if function C6h lock mode 00h:

    DL = mode (00h no wait, 01h wait)

if function C6h lock mode 01h: (Novell only)

    BP = lock timeout in timer ticks (1/18 sec), 0000h no wait

Return: AL = status (see #0988)

Desc:	attempt to lock all logical record names listed in the log table

Notes:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+,

  Banyan VINES, and Alloy NTNX

status FFh will be returned if one or more logical records have been

  exclusively locked by another process

locks on logical record names are advisory and may be ignored by other

  applications

SeeAlso: AH=C2h,AH=CBh,AH=D0h,AH=D3h,AH=D5h


INT 21 D2-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE LOGICAL RECORD

Category: N - network

Inp.:

AH = D2h

DS:DX -> semaphore identifier (counted string up to 99 chars long)

Return: AL = status

    00h successful

    FFh no such record

Desc:	unlock the logical record name but do not remove it from the log table

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+,

  Banyan VINES, and Alloy NTNX

locks on logical record names are advisory and may be ignored by other

  applications

SeeAlso: AH=BDh,AH=D0h,AH=D3h,AH=D4h


INT 21 D2-- - VIRUS???

Category: v - virus/antivirus

Inp.:

AH = D2h

???

Return: ???

Note:	this call is intercepted by the Search&Destroy SDRes v27.03 bundled

  with Novell DOS 7, and is presumably some virus's installation check

SeeAlso: AH=4Ah/BX=00B6h


INT 21 D3-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE LOGICAL RECORD SET

Category: N - network

Inp.:

AH = D3h

Desc:	unlock all currently-locked logical record names in the log table, but

  do not remove them from the table

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+,

  Banyan VINES, and Alloy NTNX

locks on logical record names are advisory and may be ignored by other

  applications

SeeAlso: AH=C3h,AH=CDh,AH=D1h,AH=D2h,AH=D5h


INT 21 D4-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR LOGICAL RECORD

Category: N - network

Inp.:

AH = D4h

DS:DX -> logical record name (counted string up to 99 chars long)

Return: AL = status (00h,FFh) (see #0989)

Desc:	unlock and remove the logical record name from the log table

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+,

  Banyan VINES, and Alloy NTNX

locks on logical record names are advisory and may be ignored by other

  applications

SeeAlso: AH=BEh,AH=D0h,AH=D2h,AH=D5h


INT 21 D5-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR LOGICAL RECORD SET

Category: N - network

Inp.:

AH = D5h

Return: AL = error code (00h,FFh) (see #0989)

Desc:	unlock and remove all logical record name from the log table

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+,

  Banyan VINES, and Alloy NTNX

locks on logical record names are advisory and may be ignored by other

  applications

SeeAlso: AH=D1h,AH=D3h,AH=D4h


INT 21 D5-- - VIRUS - "Carfield" - ???

Category: v - virus/antivirus

Inp.:

AH = D5h

???

Return: ???

SeeAlso: AX=D5AAh,AH=F3h"Carfield"


INT 21 D5AA - VIRUS - "Diamond-A", "Diamond-B" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = D5AAh

Return: AX = 2A55h if "Diamond-A" resident

AX = 2A03h if "Diamond-B"-family virus resident

SeeAlso: AX=D000h,AH=D5h"VIRUS",AX=D5AAh/BP=DEAAh


INT 21 D5AA - VIRUS - "Dir" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = D5AAh

BP = DEAAh

Return: SI = 4321h if resident

SeeAlso: AX=D5AAh,AX=DADAh"VIRUS"


INT 21 D6-- - Novell NetWare - WORKSTATION - END OF JOB

Category: N - network

Inp.:

AH = D6h

BX = job flag (0000h current job, FFFFh all processes on workstation)

Return: AL = error code

Desc:	unlocks and clears all locked or logged files and records held by the

  process(es), closes all files, resets error and lock modes, and

  releases all network resources

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=BBh,AH=D7h


INT 21 D7-- - Novell NetWare - CONNECTION SERVICES - SYSTEM LOGOUT

Category: N - network

Inp.:

AH = D7h

Return: AL = error code

Desc:	this function closes the caller's open files, logs it out from all

  file servers, detaches the workstation from all non-default file

  servers, and maps a drive to the default server's SYS:LOGIN directory

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=D6h,AH=E3h/SF=14h,AH=F1h


INT 21 D8-- - Novell NetWare, Banyan VINES - ALLOCATE RESOURCE

Category: N - network

Inp.:

AH = D8h

DL = resource number

Return: AL = status (00h successful, FFh unsucessful)

Note:	this function is no longer used or supported by NetWare, and is not

  documented in Novell documents

SeeAlso: AH=D9h


INT 21 D9-- - Novell NetWare, Banyan VINES - DEALLOCATE RESOURCE

Category: N - network

Inp.:

AH = D9h

DL = resource number

Return: AL = status (00h successful, FFh unsucessful)

Note:	this function is no longer used or supported by NetWare, and is not

  documented in Novell documents

SeeAlso: AH=D8h


INT 21 DA-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFO WITH NUMBER

Category: N - network

Inp.:

AH = DAh

DL = volume number

ES:DI -> reply buffer (see #0990)

Return: AL = 00h

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

operator console rights are not required to make this call

reported total blocks and total unused blocks include the Hot Fix

  Table; the NetWare shell's implementation of INT 21/AH=36h will

  report values larger than 268MB as 268MB.

SeeAlso: AH=36h,AH=E2h/SF=15h,AH=E3h/SF=E9h


INT 21 DADA - VIRUS - "Gotcha" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = DADAh

Return: AH = A5h

SeeAlso: AX=D5AAh,AX=DAFEh"VIRUS"


INT 21 DAFE - VIRUS - "Plovdiv 1.3" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = DAFEh

Return: AX = 1234h if resident

SeeAlso: AX=DADAh,AH=DDh"VIRUS",AH=DEh"VIRUS"


INT 21 DB-- - Novell NetWare - WORKSTATION - GET NUMBER OF LOCAL DRIVES

Category: N - network

Inp.:

AH = DBh

Return: AL = number of local disks as set by LASTDRIVE in CONFIG.SYS

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=0Eh


INT 21 DC-- - Novell NetWare - CONNECTION SERVICES - GET CONNECTION NUMBER

Category: N - network

Inp.:

AH = DCh

Return: AL = logical connection number

    00h if NetWare not loaded or this machine is a non-dedicated server

CX = station number in ASCII (CL = first digit)

Notes:	this function is supported by NetWare 4.0+, Banyan VINES, and Alloy

  NTNX

station number only unique for those PCs connected to same semaphore

  service

SeeAlso: AH=F2h"NetWare"


INT 21 DC-- - PCMag PCMANAGE/DCOMPRES - TURN ON/OFF

Category: d - disk I/O enhancements

Inp.:

AH = DCh

DX = state

    0000h turn on

    0001h turn off

SeeAlso: AX=FEDCh


INT 21 DD-- - Novell NetWare - WORKSTATION - SET NetWare ERROR MODE

Category: N - network

Inp.:

AH = DDh

DL = error mode

    00h invoke INT 24 on critical I/O errors (default)

    01h return NetWare extended error code in AL

    02h return error code in AL, mapped to standard DOS error codes

Return: AL = previous error mode

Note:	this function is supported by Advanced NetWare 2.0+

SeeAlso: INT 24


INT 21 DD-- - VIRUS - "Jerusalem"-family - RELOCATE VIRUS???

Category: v - virus/antivirus

Inp.:

AH = DDh

CX = number of bytes to copy

DS:SI -> source of copy

ES:DI -> destination of copy

Return: does not return normally; return address is caller's CS:0100h with

  AX = ???

SeeAlso: AX=DDEFh,AH=E0h"VIRUS",AH=EEh"VIRUS"


INT 21 DDEF - VIRUS- "GOLGI" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = DDEFh

Return: AX = EFDDh if resident

SeeAlso: AH=DDh"VIRUS",AH=DEh"VIRUS"


INT 21 DE-- - VIRUS - "Durban" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = DEh

Return: AH = DFh if resident

SeeAlso: AX=DAFEh,AX=DDEFh,AH=DEh"April 1st",AX=DEADh"90210"


INT 21 DE-- - VIRUS - "April 1st EXE" - ???

Category: v - virus/antivirus

Inp.:

AH = DEh

???

Return: ???


INT 21 DE-- - Novell NetWare - MESSAGE SERVICES - SET BROADCAST MODE

Category: N - network

Inp.:

AH = DEh

DL = broadcast mode

    00h receive server and workstation broadcasts (default)

    01h receive server broadcasts, discard user messages

    02h store server broadcasts for retrieval

    03h store all broadcasts for retrieval

Return: AL = new broadcast mode

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+


INT 21 DE-- - Novell NetWare - MESSAGE SERVICES - GET BROADCAST MODE

Category: N - network

Inp.:

AH = DEh

DL = 04h

Return: AL = current broadcast mode

    00h receive server and workstation broadcasts (default)

    01h receive server broadcasts, discard user message

    02h store server broadcasts for retrieval

    03h store all broadcasts for retrieval

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+


INT 21 DE-- - Novell NetWare - SHELL TIMER INTERRUPT CHECKS

Category: N - network

Inp.:

AH = DEh

DL = function

    05h disable shell timer interrupt checks

    06h enable shell timer interrupt checks

Return: ???

Note:	this function was added in NetWare 4.0, but is not listed in current

  Novell documentation and is probably no longer supported


INT 21 DEAD - VIRUS - "90210" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = DEADh

Return: AX = AAAAh if resident

SeeAlso: AH=DEh"VIRUS",AX=DEADh"Shifting",AX=DEDEh"VIRUS"


INT 21 DEAD - VIRUS - "Shifting Objective" - RELOCATE CODE ???

Category: v - virus/antivirus

Inp.:

AX = DEADh

SeeAlso: AX=FEADh

SeeAlso: AX=DEADh"90210",AX=DEDEh"VIRUS"


INT 21 DEDE - VIRUS - "Brothers" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = DEDEh

Return: AH = 41h if resident

SeeAlso: AX=DEADh"Shifting",AH=E0h"VIRUS"


INT 21 DF-- - Novell NetWare - PRINT SERVICES - START LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 00h

Return: AL = status

    00h successful

Desc:	this function redirects the default LPT to a capture file on the file

  server

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX; under NTNX, it sends a print break (see INT 17/AH=84h)

a print job is queued when the first character of output is captured

SeeAlso: AX=B800h,AX=B804h,AH=DFh/DL=01h,AH=DFh/DL=02h,AH=DFh/DL=03h

SeeAlso: AH=DFh/DL=04h,AX=F003h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - END LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 01h

Return: AL = status

    00h successful

Desc:	stop redirecting the default LPT, close the capture file, and release

  the job in the print queue for printing

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX; under NTNX, it sends a print break (see INT 17/AH=84h)

after this call, the default LPT defaults to local printing

SeeAlso: AH=DFh/DL=00h,AH=DFh/DL=02h,AH=DFh/DL=03h,AH=DFh/DL=05h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - CANCEL LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 02h

Return: AL = status

    00h successful

Desc:	this function ends the capture of the default LPT, removes the job from

  the print queue, and deletes the capture file unless it is a

  permanent capture file

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX; under NTNX, it sends a print break (see INT 17/AH=84h)

after this call, the default LPT defaults to local printing

SeeAlso: AH=DFh/DL=00h,AH=DFh/DL=06h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - FLUSH LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 03h

Return: AL = status

    00h successful

Desc:	this function closes the current capture file for the default LPT

  and starts printing it if it is not a permanent capture file

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX; under NTNX, it sends a print break (see INT 17/AH=84h)

if more data is sent to the LPT port after this call, a new capture

  file will be opeend

SeeAlso: AH=DFh/DL=00h,AH=DFh/DL=01h,AH=DFh/DL=02h,AH=DFh/DL=07h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - START SPECIFIC LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 04h

DH = LPT port (00h-02h)

Return: AL = status

    00h successful

Desc:	this function redirects the specified LPT to a capture file on the file

  server

Notes:	this function is supported by Advanced NetWare 2.1+

a print job is queued when the first character of output is captured

SeeAlso: AX=B800h,AH=DFh/DL=00h,AH=DFh/DL=05h,AH=DFh/DL=06h,AH=DFh/DL=07h

SeeAlso: AX=F003h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - END SPECIFIC LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 05h

DH = LPT port (00h-02h)

Return: AL = status

    00h successful

Desc:	stop redirecting the specified LPT, close the capture file, and release

  the job in the print queue for printing

Notes:	this function is supported by Advanced NetWare 2.1+

after this call, the specified LPT defaults to local printing

SeeAlso: AH=DFh/DL=01h,AH=DFh/DL=04h,AH=DFh/DL=06h,AH=DFh/DL=07h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - CANCEL SPECIFIC LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 06h

DH = LPT port (00h-02h)

Return: AL = status

    00h successful

Desc:	this function ends the capture of the specified LPT, removes the job

  from the print queue, and deletes the capture file unless it is a

  permanent capture file

Notes:	this function is supported by Advanced NetWare 2.1+

after this call, the specified LPT defaults to local printing

SeeAlso: AH=DFh/DL=02h,AH=DFh/DL=04h,AH=DFh/DL=05h,AH=DFh/DL=07h


INT 21 DF-- - Novell NetWare - PRINT SERVICES - FLUSH SPECIFIC LPT CAPTURE

Category: N - network

Inp.:

AH = DFh

DL = 07h

DH = LPT port (00h-02h)

Return: AL = status

    00h successful

Desc:	this function closes the current capture file for the specified LPT

  and starts printing it if it is not a permanent capture file

Notes:	this function is supported by Advanced NetWare 2.1+

if more data is sent to the LPT port after this call, a new capture

  file will be opeend

SeeAlso: AH=DFh/DL=03h,AH=DFh/DL=04h,AH=DFh/DL=05h,AH=DFh/DL=06h


INT 21 DF00 - Software Carousel - INSTALLATION CHECK

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF00h

DX = 534Ch ("SL")

DI = 534Ch ("SL")

Return: AX = 00FFh if installed

    ???

Program: Software Carousel is a task switcher by SoftLogic Solutions, Inc.


INT 21 DF01 - Software Carousel - SWITCH TO ANOTHER TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF01h

BL = task number (00h = next task)

Return: AL = status

    00h Carousel not running

    01h successful

    FFh unsucessful

AH = error code (01h,02h) (see #0991)


INT 21 DF02 - Software Carousel - KILL PROGRAM IN MEMORY PARTITION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF02h

BL = task number

Return: AL = status

    00h Carousel not running

    01h successful

    FFh unsucessful

AH = error code (01h,03h) (see #0991)


INT 21 DF03 - Software Carousel - GET PARTITION SIZE AND PROGRAM STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF03h

BL = task number

Return: AL = status

    00h Carousel not running

    01h successful

BL = partition state (00h no program running, 01h prog running)

DX = partition size in KB

    FFh unsucessful

AH = error code (01h) (see #0991)

SeeAlso: AX=DF05h


INT 21 DF04 - Software Carousel - GET PARTITION NAME

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF04h

BL = task number

Return: AL = status

    00h Carousel not running

    01h successful

CX = length of name (00h if default partition name)

ES:BX -> partition name (if CX nonzero)

    FFh unsucessful

AH = error code (01h) (see #0991)

SeeAlso: AX=DF06h


INT 21 DF05 - Software Carousel - CHANGE PARTITION SIZE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF05h

BL = task number

DX = new size in KB

Return: AL = status

    00h Carousel not running

    01h successful

    FFh unsucessful

AH = error code (01h,04h,05h) (see #0991)

BX = minimum size allowed

CX = maximum size available

SeeAlso: AX=DF03h


INT 21 DF06 - Software Carousel - CHANGE PARTITION NAME

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF06h

BL = task number

CX = length of new name (00h to use default, max 18h)

DS:SI -> new name

Return: AL = status

    00h Carousel not running

    01h successful

    FFh unsucessful

AH = error code (01h) (see #0991)

SeeAlso: AX=DF04h


INT 21 DF07 - Software Carousel - SEND COMMAND TO MEMORY SECTION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF07h

BL = task number

CX = length of command (max 8 chars)

DS:SI -> command line

Return: AL = status

    00h Carousel not running

    01h successful

    FFh unsucessful

AH = error code (01h,06h) (see #0991)

Note:	the maximum length seems too small and may be a typo for 80 characters


INT 21 DF08 - Software Carousel - SELECTIVELY ENABLE/DISABLE MENU AND SWITCHING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF08h

BL = new state of keyboard (00h disabled, 01h enabled)

Return: AL = status

    00h Carousel not running

    01h successful

Program: Software Carousel is a task switcher by SoftLogic Solutions, Inc.

Note:	when the keyboard is is disabled, the user may neither access the

  Carousel menu nor switch to another memory section


INT 21 DF09 - Software Carousel - BOOT THE SYSTEM

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF09h

Return: AL = status

    00h Carousel not running

    FFh unsucessful

AH = error code (01h,03h) (see #0991)

Note:	this function never returns if successful


INT 21 DF0A - Software Carousel - GET MEMORY SIZE/PARTITION NUMBER OF CURRENT TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF0Ah

Return: AL = status

    00h Carousel not running

    01h successful

BL = task number

DX = memory size in KB

    FFh unsucessful

AH = error code (01h,03h) (see #0991)


INT 21 DF0B - Software Carousel - SET TASK SWITCH CALLBACK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF0Bh

BH = interrupt number or 00h

BL = function number to invoke on partition switch

CL = function number to call when it is safe for resident programs

to perform DOS calls

DS:DX -> FAR function to call if BH=00h

Return: AL = status

    00h Carousel not running

    01h successful

    FFh unsucessful

AH = error code (01h,03h) (see #0991)

Notes:	the specified interrupt or FAR function is called with AH set to the

  appropriate one of the values specified in BL and CL, and BL set to

  the new task number

the function specified by CL will not be called until the notification

  is enabled with AX=DF0Ch

SeeAlso: AX=DF0Ch


INT 21 DF0C - Software Carousel - ENABLE DOS-CALL SAFETY NOTIFICATION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = DF0Ch

Return: AL = status

    00h Carousel not running

    01h successful

Program: Software Carousel is a task switcher by SoftLogic Solutions, Inc.

SeeAlso: AX=DF0Bh


INT 21 E0-- - Digital Research DOS Plus - CALL BDOS

Category: O - other operating systems

Inp.:

AH = E0h

CL = BDOS function number (see #2602 at INT E0"CP/M")

other registers as appropriate for function

Return: as appropriate for function

SeeAlso: AX=4459h,INT E0"CP/M"


INT 21 E0-- - OS/286, OS/386 - INITIALIZE REAL PROCEDURE

Category: E - DOS extenders

Inp.:

AH = E0h

???

Return: ???

SeeAlso: AH=E1h"OS/286"


INT 21 E0-- - DoubleDOS - MENU CONTROL

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = E0h

AL = subfunction

    01h exchange tasks

    73h resume invisible job if suspended

    74h kill other job

    75h suspend invisible job

Note:	identical to AH=F0h

SeeAlso: AH=F0h"DoubleDOS"


INT 21 E0-- - VIRUS - "Jerusalem", "Armagedon" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = E0h

Return: AX = 0300h if "Jerusalem" resident

AX = DADAh if "Armagedon" resident

SeeAlso: AH=DEh"VIRUS",AX=DEDEh"VIRUS",AX=E00Fh


INT 21 E0-- - Novell NetWare, Alloy NTNX - PRINT SPOOLING

Category: N - network

Inp.:

AH = E0h

DS:SI -> request buffer (see #0992)

ES:DI -> reply buffer

Return: AL = status

Note:	this function was added in NetWare 4.0, but is no longer listed in

  current Novell documentation and may no longer be supported

SeeAlso: AH-E3h/SF=68h


INT 21 E0-- - Novell NetWare - PRINT SERVICES - GET PRINTER STATUS

Category: N - network

Inp.:

AH = E0h subfn 06h

DS:SI -> request buffer (see #0993)

ES:DI -> reply buffer (see #0994)

Return: AL = status

    00h successful

    FFh no such printer

Desc:	get current state of specified printer attached to the server

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX


INT 21 E0-- - Novell NetWare - PRINT SERVICES - SPECIFY CAPTURE FILE

Category: N - network

Inp.:

AH = E0h subfn 09h

DS:SI -> request buffer (see #0995)

ES:DI -> reply buffer (see #0996)

Return: AL = status

    00h successful

    9Ch invalid path

Desc:	create a permanent capture file for the next print capture to be

  started

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

the caller must have read, write, and create rights for the directory

  containing the capture file


INT 21 E00F - VIRUS - "8-tunes" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = E00Fh

Return: AX = 4C31h if resident

SeeAlso: AH=E0h"VIRUS",AH=E1h"VIRUS"


INT 21 E1-- - OS/286, OS/386 - ISSUE REAL PROCEDURE CALL

Category: E - DOS extenders

Inp.:

AH = E1h

???

Return: ???

Note:	protected mode only???

SeeAlso: AH=E0h"OS/286",AH=E2h"OS/286",AH=E3h"OS/286",AX=250Eh,INT 31/AX=0301h


INT 21 E1-- - DoubleDOS - CLEAR KEYBOARD BUFFER FOR CURRENT JOB

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = E1h

SeeAlso: AH=E2h"DoubleDOS",AH=E3h"DoubleDOS",AH=E8h"DoubleDOS"

SeeAlso: AH=F1h"DoubleDOS"


INT 21 E1-- - VIRUS - "Mendoza", "Fu Manchu" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = E1h

Return: AX = 0300h if "Mendoza" resident

AX = 0400h if "Fu Manchu" resident

SeeAlso: AX=E00Fh,AH=E4h"VIRUS"


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - SEND BROADCAST MESSAGE

Category: N - network

Inp.:

AH = E1h subfn 00h

DS:SI -> request buffer (see #0997)

ES:DI -> reply buffer (see #0998)

Return: AL = status

    00h successful

    FEh I/O error or out of dynamic workspace

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

SeeAlso: AH=DEh"NetWare",AH=DEh/DL=04h,AH=E1h/SF=01h,AH=E1h/SF=04h

SeeAlso: AH=E1h/SF=09h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - GET BROADCAST MESSAGE

Category: N - network

Inp.:

AH = E1h subfn 01h

DS:SI -> request buffer (see #0999)

ES:DI -> reply buffer (see #1000)

Return: AL = status

    00h successful

    FCh full message queue

    FEh out of dynamic workspace

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

SeeAlso: AH=DEh/DL=04h,AH=E1h/SF=00h,AH=E1h/SF=05h,AH=E1h/SF=09h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - ENABLE/DISABLE BROADCAST MESSAGES

Category: N - network

Inp.:

AH = E1h

DS:SI -> request buffer (see #1001)

ES:DI -> reply buffer (see #1002)

Return: AL = error code

Note:	these functions are supported by NetWare 4.0+ but are not listed in

  _NetWare_System_Calls--DOS_; they may be obsolete

SeeAlso: AH=E1h/SF=00h,AH=E1h/SF=04h,AH=E1h/SF=09h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - SEND PERSONAL MESSAGE

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E1h subfn 04h

DS:SI -> request buffer (see #1003)

ES:DI -> reply buffer (see #1004)

Return: AL = status

    00h successful

    FEh I/O error or out of dynamic workspace

Notes:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0-2.x

message pipes use CPU time on the file server; IPX, SPX, or NetBIOS

  connections should be used for peer-to-peer communications as these

  protocols do not use file server time

SeeAlso: AH=E1h/SF=00h,AH=E1h/SF=05h,AH=E1h/SF=06h,AH=E1h/SF=08h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - GET PERSONAL MESSAGE

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E1h subfn 05h

DS:SI -> request buffer (see #1005)

ES:DI -> reply buffer (see #1006)

Return: AL = status

    00h successful

    FEh out of dynamic workspace

Desc:	return the oldest message in the default file server's message queue

  for the calling workstation

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0-2.x

SeeAlso: AH=E1h/SF=01h,AH=E1h/SF=04h,AH=E1h/SF=06h,AH=E1h/SF=08h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - OPEN MESSAGE PIPE

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E1h subfn 06h

DS:SI -> request buffer (see #1007)

ES:DI -> reply buffer (see #1008)

Return: AL = status

    00h successful

    FEh out of dynamic workspace

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0-2.x

SeeAlso: AH=E1h/SF=04h,AH=E1h/SF=07h,AH=E1h/SF=08h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - CLOSE MESSAGE PIPE

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E1h subfn 07h

DS:SI -> request buffer (see #1009)

ES:DI -> reply buffer (see #1010)

Return: AL = status

    00h successful

    FCh full message queue

    FEh out of dynamic workspace

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0-2.x

SeeAlso: AH=E1h/SF=05h,AH=E1h/SF=06h,AH=E1h/SF=08h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - CHECK PIPE STATUS

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E1h subfn 08h

DS:SI -> request buffer (see #1012)

ES:DI -> reply buffer (see #1013)

Return: AL = status (see #1011)

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0-2.x

SeeAlso: AH=E1h/SF=05h,AH=E1h/SF=06h,AH=E1h/SF=07h


INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - BROADCAST TO CONSOLE

Category: N - network

Inp.:

AH = E1h subfn 09h

DS:SI -> request buffer (see #1014)

ES:DI -> reply buffer (see #1015)

Return: AL = status (see #1011)

Desc:	send a one-line message to the system console on the default file

  server

Note:	this function is supported by NetWare 4.0+ and Advanced NetWare 1.0+

SeeAlso: AH=DEh/DL=04h,AH=E1h/SF=00h,AH=E1h/SF=01h,AH=E3h/SF=D1h


INT 21 E2-- - OS/286, OS/386 - SET REAL PROCEDURE SIGNAL HANDLER

Category: E - DOS extenders

Inp.:

AH = E2h

???

Return: ???

SeeAlso: AH=E0h"OS/286",AH=E1h"OS/286",AH=E6h"OS/286"


INT 21 E2-- - DoubleDOS - SEND CHARACTER TO KEYBOARD BUFFER OF OTHER JOB

Category: N - network

Inp.:

AH = E2h

AL = character

Return: AL = 00h successful

     01h buffer full (128 characters)

SeeAlso: AH=E1h"DoubleDOS",AH=E3h"DoubleDOS",AH=E8h"DoubleDOS"

SeeAlso: AH=F2h"DoubleDOS"


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SET DIRECTORY HANDLE

Category: N - network

Inp.:

AH = E2h subfn 00h

DS:SI -> request buffer (see #1017)

ES:DI -> reply buffer (see #1018)

Return: AL = status (00h,98h,9Bh,9Ch) (see #1016)

Desc:	set the target handle to reference the directory specified by the

  source handle and the source path; both handles must refer to the

  same file server

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

the target handle is not changed if this function fails

SeeAlso: AH=E2h/SF=01h,AH=E2h/SF=12h,AH=E2h/SF=13h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET DIRECTORY PATH

Category: N - network

Inp.:

AH = E2h subfn 01h

DS:SI -> request buffer (see #1019)

ES:DI -> reply buffer (see #1020)

Return: AL = status (00h,9Bh) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=02h,AH=E2h/SF=03h,AH=E2h/SF=1Ah,AH=E9h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SCAN DIRECTORY INFORMATION

Category: N - network

Inp.:

AH = E2h subfn 02h

DS:SI -> request buffer (see #1021)

ES:DI -> reply buffer (see #1022)

Return: AL = status (00h,98h,9Bh,9Ch) (see #1016)

Desc:	get information about the first or next subdirectory of the specified

  directory

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=01h,AH=E2h/SF=03h,AH=E2h/SF=19h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET EFFECTIVE DIRECTORY RIGHTS

Category: N - network

Inp.:

AH = E2h subfn 03h

DS:SI -> request buffer (see #1024)

ES:DI -> reply buffer (see #1025)

Return: AL = status (00h,98h,9Bh) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=01h,AH=E2h/SF=02h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - MODIFY MAXIMUM RIGHTS MASK

Category: N - network

Inp.:

AH = E2h subfn 04h

DS:SI -> request buffer (see #1027)

ES:DI -> reply buffer (see #1028)

Return: AL = status (00h,8Ch,98h,9Ch) (see #1016)

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=03h,AH=E2h/SF=0Ah,AH=E2h/SF=0Dh


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME NUMBER

Category: N - network

Inp.:

AH = E2h subfn 05h

DS:SI -> request buffer (see #1029)

ES:DI -> reply buffer (see #1030)

Return: AL = status (00h,98h) (see #1016)

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=DAh,AH=E2h/SF=02h,AH=E2h/SF=05h,AH=E2h/SF=15h,AH=E3h/SF=E9h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME NAME

Category: N - network

Inp.:

AH = E2h subfn 06h

DS:SI -> request buffer (see #1031)

ES:DI -> reply buffer (see #1032)

Return: AL = status (00h,98h) (see #1016)

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=DAh,AH=E2h/SF=02h,AH=E2h/SF=05h,AH=E2h/SF=15h,AH=E2h/SF=1Ah

SeeAlso: AH=E3h/SF=E9h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - CREATE DIRECTORY

Category: N - network

Inp.:

AH = E2h subfn 0Ah

DS:SI -> request buffer (see #1033)

ES:DI -> reply buffer (see #1034)

Return: AL = status (00h,84h,98h,FCh) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=39h,AH=E2h/SF=0Bh,AH=E2h/SF=0Fh


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DELETE DIRECTORY

Category: N - network

Inp.:

AH = E2h subfn 0Bh

DS:SI -> request buffer (see #1035)

ES:DI -> reply buffer (see #1034)

Return: AL = status (00h,8Ah,98h,9Bh,9Ch,9Fh,A0h) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=3Ah,AH=E2h/SF=0Ah,AH=E2h/SF=0Fh


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SCAN DIRECTORY FOR TRUSTEES

Category: N - network

Inp.:

AH = E2h subfn 0Ch

DS:SI -> request buffer (see #1036)

ES:DI -> reply buffer (see #1037)

Return: AL = status (00h,9Ch) (see also #1016)

    9Ch no more trustees

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E2h/SF=0Dh,AH=E2h/SF=0Eh,AH=E3h/SF=47h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ADD TRUSTEE TO DIRECTORY

Category: N - network

Inp.:

AH = E2h subfn 0Dh

DS:SI -> request buffer (see #1038)

ES:DI -> reply buffer (see #1040)

Return: AL = status (00h,8Ch,FCh) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=0Ch,AH=E2h/SF=0Eh,AH=E3h/SF=47h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DELETE TRUSTEE FROM DIRECTORY

Category: N - network

Inp.:

AH = E2h subfn 0Eh

DS:SI -> request buffer (see #1039)

ES:DI -> reply buffer (see #1040)

Return: AL = status (00h,98h,9Bh,9Ch) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=0Ch,AH=E2h/SF=0Dh


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - RENAME DIRECTORY

Category: N - network

Inp.:

AH = E2h subfn 0Fh

DS:SI -> request buffer (see #1041)

ES:DI -> reply buffer (see #1040)

Return: AL = status (00h,8Bh,9Bh,9Ch,9Eh) (see #1016)

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

directories SYS:LOGIN, SYS:MAIL, and SYS:PUBLIC must not be renamed

SeeAlso: AH=56h,AH=E2h/SF=0Ah,AH=E2h/SF=0Bh


INT 21 E2-- - Novell NetWare - FILE SERVICES - PURGE ERASED FILES

Category: N - network

Inp.:

AH = E2h subfn 10h

DS:SI -> request buffer (see #1042)

ES:DI -> reply buffer (see #1040)

Return: AL = status (00h,C6h) (see #1043)

Desc:	purges files marked for deletion on the file server by the calling

  workstation

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=13h,AH=41h,AH=E2h/SF=11h,AH=E3h/SF=CEh,AX=F244h


INT 21 E2-- - Novell NetWare - FILE SERVICES - RESTORE ERASED FILE

Category: N - network

Inp.:

AH = E2h subfn 11h

DS:SI -> request buffer (see #1044)

ES:DI -> reply buffer (see #1045)

Return: AL = status (00h,98h,FFh) (see #1043)

Desc:	restores one file marked for deletion which has not yet been purged

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=13h,AH=41h,AH=E2h/SF=10h,AH=E3h/SF=CEh,AX=F244h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC PERMANENT DIRECTORY HANDLE

Category: N - network

Inp.:

AH = E2h subfn 12h

DS:SI -> request buffer (see #1046)

ES:DI -> reply buffer (see #1047)

Return: AL = status (00h,98h,9Ch) (see #1043)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=00h,AH=E2h/SF=13h,AH=E2h/SF=14h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC TEMPORARY DIRECTORY HANDLE

Category: N - network

Inp.:

AH = E2h subfn 13h

DS:SI -> request buffer (see #1048)

ES:DI -> reply buffer (see #1050)

Return: AL = status (00h,98h,9Ch) (see #1043)

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

this call is the same as AH=E2h/SF=12h except that the directory handle

  will be automatically deallocated when the calling application

  executes an End of Job call (AH=D6h) or terminates

SeeAlso: AH=D6h,AH=E2h/SF=00h,AH=E2h/SF=12h,AH=E2h/SF=14h,AH=E2h/SF=16h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DEALLOCATE DIRECTORY HANDLE

Category: N - network

Inp.:

AH = E2h subfn 14h

DS:SI -> request buffer (see #1049)

ES:DI -> reply buffer (see #1050)

Return: AL = status (00h,9Bh) (see #1016)

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=12h,AH=E2h/SF=13h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFO WITH HANDLE

Category: N - network

Inp.:

AH = E2h subfn 15h

DS:SI -> request buffer (see #1051)

ES:DI -> reply buffer (see #1052)

Return: AL = status

    00h successful

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=DAh,AH=E2h/SF=02h,AH=E2h/SF=06h,AH=E2h/SF=19h,AH=E3h/SF=E9h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC SPECIAL TEMP DIR HANDLE

partially documented function

Category: N - network

Inp.:

AH = E2h subfn 16h

DS:SI -> request buffer (see #1053)

ES:DI -> reply buffer

Return: AL = status

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX,

  but is not described in _NetWare_System_Calls--DOS_

SeeAlso: AH=E2h/SF=13h,AH=E2h/SF=14h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SAVE DIRECTORY HANDLE

Category: N - network

Inp.:

AH = E2h subfn 17h

DS:SI -> request buffer (see #1054)

ES:DI -> reply buffer (see #1055)

Return: AL = status

    00h successful

    else network error code

Note:	this function is supported by Advanced NetWare 2.0+ and Alloy NTNX

SeeAlso: AH=E2h/SF=12h,AH=E2h/SF=17h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - RESTORE DIRECTORY HANDLE

Category: N - network

Inp.:

AH = E2h subfn 18h

DS:SI -> request buffer (see #1056)

ES:DI -> reply buffer (see #1057)

Return: AL = status

    00h successful

    else network error code

Desc:	restore a previously saved directory handle to reproduce an executing

  environment, possibly on a different execution site

Note:	this function is supported by Advanced NetWare 2.0+ and Alloy NTNX

SeeAlso: AH=E2h/SF=12h,AH=E2h/SF=17h


INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SET DIRECTORY INFORMATION

Category: N - network

Inp.:

AH = E2h subfn 19h

DS:SI -> request buffer (see #1058)

ES:DI -> reply buffer (see #1059)

Return: AL = status (00h,9Bh,9Ch) (see #1016)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E2h/SF=02h,AH=E2h/SF=0Fh


INT 21 E2-- - Novell NetWare - FILE SERVER - GET PATH FROM DIRECTORY ENTRY

Category: N - network

Inp.:

AH = E2h subfn 1Ah

DS:SI -> request buffer (see #1060)

ES:DI -> reply buffer (see #1061)

Return: AL = status

    00h successful

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=01h,AH=E2h/SF=06h,AH=E3h/SF=D7h


INT 21 E3-- - OS/286, OS/386 - ISSUE REAL INTERRUPT

Category: E - DOS extenders

Inp.:

AH = E3h

AL = interrupt number

???

Return: ???

Note:	protected mode only???

SeeAlso: AH=E1h"OS/286",INT 31/AX=0300h


INT 21 E3-- - DoubleDOS - ADD CHARACTER TO KEYBOARD BUFFER OF CURRENT JOB

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = E3h

AL = character

Return: AL = status

    00h successful

    01h buffer full (128 characters)

SeeAlso: AH=E1h"DoubleDOS",AH=E2h"DoubleDOS",AH=E8h"DoubleDOS"

SeeAlso: AH=F3h"DoubleDOS"


INT 21 E3-- - Novell NetWare - CONNECTION CONTROL

Category: N - network

Inp.:

AH = E3h

DS:SI -> request buffer (see #1062)

ES:DI -> reply buffer (see #1063)

Return: AL = status

    00h successful

    else error code

Note:	supported by NetWare 4.0+, Advanced NetWare 1.0+, and Alloy NTNX

SeeAlso: AH=E3h/SF=0Ah,AH=E3h/SF=32h,AH=E3h/SF=64h,AH=E3h/SF=C8h


INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - ENTER LOGIN AREA

Category: N - network

Inp.:

AH = E3h subfn 0Ah

DS:SI -> request buffer (see #1068)

ES:DI -> reply buffer (see #1069)

Return: AL = status

    00h successful

Desc:	change the login directory for the calling workstation

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=D7h,AH=E3h/SF=14h


INT 21 E3-- - Novell NetWare - VERIFY NETWORK SERIAL NUMBER

undocumented function

Category: N - network

Inp.:

AH = E3h subfn 0Ch

DS:SI -> request buffer (see #1070)

ES:DI -> reply buffer (see #1071)

Return: AL = status

    00h successful

Note:	if the network serial number to be verified is correct, the reply

  buffer will contain the corresponding application number

SeeAlso: AH=E3h/SF=12h


INT 21 E3-- - Novell NetWare - MESSAGE SERVICES - LOG NETWORK MESSAGE

Category: N - network

Inp.:

AH = E3h subfn 0Dh

DS:SI -> request buffer (see #1072)

ES:DI -> reply buffer (see #1069)

Return: AL = status

    00h successful

Desc:	append a line to the default file server's NET$LOG.MSG file

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E1h/SF=09h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK UTILIZATION

Category: N - network

Inp.:

AH = E3h subfn 0Eh

DS:SI -> request buffer (see #1074)

ES:DI -> reply buffer (see #1075)

Return: AL = status (00h,98h,F2h) (see #1073)

Notes:	this function is supported by Advanced NetWare 2.1+

the caller must have bindery object read privileges

SeeAlso: AH=E3h/SF=11h,AH=E3h/SF=D6h,AH=E3h/SF=D9h,AH=E3h/SF=E6h,AH=E3h/SF=E9h


INT 21 E3-- - Novell NetWare - FILE SERVICES - SCAN FILE INFORMATION

Category: N - network

Inp.:

AH = E3h subfn 0Fh

DS:SI -> request buffer (see #1077)

ES:DI -> reply buffer (see #1078)

Return: AL = status (see #1076)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=B6h,AH=E3h/SF=10h


INT 21 E3-- - Novell NetWare - FILE SERVICES - SET FILE INFORMATION

Category: N - network

Inp.:

AH = E3h subfn 10h

DS:SI -> request buffer (see #1079)

ES:DI -> reply buffer (see #1080)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

the caller must have modify privileges on the directory containing the

  file

SeeAlso: AH=B6h,AH=E3h/SF=0Fh


INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER INFORMATION

Category: N - network

Inp.:

AH = E3h subfn 11h

DS:SI -> request buffer (see #1081)

ES:DI -> reply buffer (see #1082)

Return: AL = status

    00h successful

Desc:	determine the version of software installed on the file server and

  how it is configured

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=0Eh,AE3h/SF=12h,AH=E3h/SF=CDh,AH=E3h/SF=D3h,AH=E3h/SF=E7h

SeeAlso: AH=E7h


INT 21 E3-- - Novell NetWare - GET NETWORK SERIAL NUMBER

Category: N - network

Inp.:

AH = E3h subfn 12h

AL = 00h

BX = CX = DX = 0000h

DS:SI -> request buffer (see #1083)

ES:DI -> reply buffer (see #1084)

Return: AL = status

    00h successful

Desc:	return the serial number and application number for the software

  installed on the file server

Notes:	this function is supported by Advanced NetWare 2.1+

reportedly, the workstation crashes if AL,BX,CX, and DX are not all

  zero

SeeAlso: AH=E3h/SF=0Ch,AH=E3h/SF=11h


INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET INTERNET ADDRESS

Category: N - network

Inp.:

AH = E3h subfn 13h

DS:SI -> request buffer (see #1085)

ES:DI -> reply buffer (see #1086)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=DCh"NetWare",AH=E3h/SF=16h,AH=EEh"NetWare"


INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - LOGIN TO FILE SERVER

Category: N - network

Inp.:

AH = E3h subfn 14h

DS:SI -> request buffer (see #1087)

ES:DI -> reply buffer (see #1088)

Return: AL = status

    00h successful

Desc:	this function retrieves a list indicating the connection numbers under

  which a bindery object is logged into the default file server

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=D7h"NetWare",AH=F1h"NetWare"


INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET OBJECT CONNECTION NUMBERS

Category: N - network

Inp.:

AH = E3h subfn 15h

DS:SI -> request buffer (see #1089)

ES:DI -> reply buffer (see #1090)

Return: AL = status

    00h successful

Desc:	this function retrieves a list indicating the connection numbers under

  which a bindery object is logged into the default file server

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=DCh"NetWare",AH=E3h/SF=16h


INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET CONNECTION INFORMATION

Category: N - network

Inp.:

AH = E3h subfn 16h

DS:SI -> request buffer (see #1091)

ES:DI -> reply buffer (see #1092)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=D7h,AH=DCh"NetWare",AH=E3h/SF=14h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CREATE BINDERY OBJECT

Category: N - network

Inp.:

AH = E3h subfn 32h

DS:SI -> request buffer (see #1095)

ES:DI -> reply buffer (see #1096)

Return: AL = status (see #1094)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=33h,AH=E3h/SF=34h,AH=E3h/SF=38h,AH=E3h/SF=39h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE BINDERY OBJECT

Category: N - network

Inp.:

AH = E3h subfn 33h

DS:SI -> request buffer (see #1097)

ES:DI -> reply buffer (see #1096)

Return: AL = status (see #1094)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=32h,AH=E3h/SF=34h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - RENAME BINDERY OBJECT

Category: N - network

Inp.:

AH = E3h subfn 34h

DS:SI -> request buffer (see #1098)

ES:DI -> reply buffer (see #1096)

Return: AL = status (see #1094)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=32h,AH=E3h/SF=33h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY OBJECT ID

Category: N - network

Inp.:

AH = E3h subfn 35h

DS:SI -> request buffer (see #1099)

ES:DI -> reply buffer (see #1100)

Return: AL = status (00h,96h,FCh,FEh,FFh) (see #1101)

Notes:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

the requesting workstation must be logged into the file server with

  read access to the bindery object

SeeAlso: AH=E3h/SF=36h,AH=E3h/SF=44h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY OBJECT NAME

Category: N - network

Inp.:

AH = E3h subfn 36h

DS:SI -> request buffer (see #1102)

ES:DI -> reply buffer (see #1103)

Return: AL = status (see #1101)

Notes:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

the requesting workstation must be logged into the file server with

  read access to the bindery object

SeeAlso: AH=E3h/SF=35h,AH=E3h/SF=44h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - SCAN BINDERY OBJECT

Category: N - network

Inp.:

AH = E3h subfn 37h

DS:SI -> request buffer (see #1104)

ES:DI -> reply buffer (see #1105)

Return: AL = status (see #1101)

Notes:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

the requesting workstation must be logged into the file server with

  read access to the bindery object

SeeAlso: AH=E3h/SF=32h,AH=E3h/SF=33h,AH=E3h/SF=38h,AH=E3h/SF=3Ch


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE BINDERY OBJECT SECURITY

Category: N - network

Inp.:

AH = E3h subfn 38h

DS:SI -> request buffer (see #1106)

ES:DI -> reply buffer (see #1109)

Return: AL = status (00h,96h,F0h,F1h,FBh,FCh,FEh,FFh) (see #1107)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=32h,AH=E3h/SF=3Bh


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CREATE PROPERTY

Category: N - network

Inp.:

AH = E3h subfn 39h

DS:SI -> request buffer (see #1108)

ES:DI -> reply buffer (see #1109)

Return: AL = status (see #1107)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=32h,AH=E3h/SF=3Bh


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE PROPERTY

Category: N - network

Inp.:

AH = E3h subfn 3Ah

DS:SI -> request buffer (see #1110)

ES:DI -> reply buffer (see #1109)

Return: AL = status (see #1107)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=32h,AH=E3h/SF=39h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE PROPERTY SECURITY

Category: N - network

Inp.:

AH = E3h subfn 3Bh

DS:SI -> request buffer (see #1112)

ES:DI -> reply buffer (see #1109)

Return: AL = status (see #1111)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=38h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - SCAN PROPERTY

Category: N - network

Inp.:

AH = E3h subfn 3Ch

DS:SI -> request buffer (see #1113)

ES:DI -> reply buffer (see #1114)

Return: AL = status (00h,96h,F1h,FBh,FCh,FEh,FFh) (see #1111)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=37h,AH=E3h/SF=3Bh


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - READ PROPERTY VALUE

Category: N - network

Inp.:

AH = E3h subfn 3Dh

DS:SI -> request buffer (see #1116)

ES:DI -> reply buffer (see #1117)

Return: AL = status (see #1115)

Desc:	retrieve one 128-byte segment of the specified property's value

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=39h,AH=E3h/SF=3Ch,AH=E3h/SF=3Eh


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - WRITE PROPERTY VALUE

Category: N - network

Inp.:

AH = E3h subfn 3Eh

DS:SI -> request buffer (see #1118)

ES:DI -> reply buffer (see #1119)

Return: AL = status (see #1115)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=39h,AH=E3h/SF=3Ch,AH=E3h/SF=3Eh


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - VERIFY BINDERY OBJECT PASSWORD

Category: N - network

Inp.:

AH = E3h subfn 3Fh

DS:SI -> request buffer (see #1121)

ES:DI -> reply buffer (see #1119)

Return: AL = status (see #1120)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=40h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE BINDERY OBJECT PASSWORD

Category: N - network

Inp.:

AH = E3h subfn 40h

DS:SI -> request buffer (see #1122)

ES:DI -> reply buffer (see #1123)

Return: AL = status (see #1120)

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=3Fh,AH=E3h/SF=41h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - ADD BINDERY OBJECT TO SET

Category: N - network

Inp.:

AH = E3h subfn 41h

DS:SI -> request buffer (see #1125)

ES:DI -> reply buffer (see #1123)

Return: AL = status (see #1124)

Desc:	add the specified object to a set property

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=40h,AH=E3h/SF=42h,AH=E3h/SF=43h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE BINDERY OBJECT FROM SET

Category: N - network

Inp.:

AH = E3h subfn 42h

DS:SI -> request buffer (see #1126)

ES:DI -> reply buffer (see #1127)

Return: AL = status (see #1124)

Desc:	delete the specified object from a set property

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=40h,AH=E3h/SF=42h,AH=E3h/SF=43h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - IS BINDERY OBJECT IN SET

Category: N - network

Inp.:

AH = E3h subfn 43h

DS:SI -> request buffer (see #1128)

ES:DI -> reply buffer (see #1127)

Return: AL = status (see #1124)

Desc:	determine whether the specified object is a member of the given set

  property

Notes:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

the caller must have read access to the property

SeeAlso: AH=E3h/SF=41h,AH=E3h/SF=42h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CLOSE BINDERY

Category: N - network

Inp.:

AH = E3h subfn 44h

DS:SI -> request buffer (see #1129)

ES:DI -> reply buffer (see #1127)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E3h/SF=45h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - OPEN BINDERY

Category: N - network

Inp.:

AH = E3h subfn 45h

DS:SI -> request buffer (see #1130)

ES:DI -> reply buffer (see #1127)

Return: AL = status

    00h successful

Notes:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

the bindery may only be opened by the supervisor or an object with

  equivalent privileges

SeeAlso: AH=E3h/SF=44h


INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY ACCESS LEVEL

Category: N - network

Inp.:

AH = E3h subfn 46h

DS:SI -> request buffer (see #1131)

ES:DI -> reply buffer (see #1132)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX


INT 21 E3-- - Novell NetWare - DIRECTORY SERVICES - SCAN BINDERY OBJ TRUSTEE PATHS

Category: N - network

Inp.:

AH = E3h subfn 47h

DS:SI -> request buffer (see #1133)

ES:DI -> reply buffer (see #1134)

Return: AL = status (00h,96h,F0h,F1h,FCh,FEh,FFh) (see #1135)

Desc:	iterate through the directories to which an object is a trustee

Note:	this function is supported by Advanced NetWare 1.0+ and Alloy NTNX

SeeAlso: AH=E2h/SF=0Ch,AH=E2h/SF=0Dh,AH=E2h/SF=0Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CREATE QUEUE

Category: N - network

Inp.:

AH = E3h subfn 64h

DS:SI -> request buffer (see #1136)

ES:DI -> reply buffer (see #1137)

Return: AL = status (00h,96h,99h,9Bh,9Ch,EDh-F1h,F5h,F7h,FCh,FEh,FFh)

(see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation with supervisor privileges

SeeAlso: AH=E3h/SF=65h,AH=E3h/SF=66h,AH=E3h/SF=68h,AH=E3h/SF=6Bh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - DESTROY QUEUE

Category: N - network

Inp.:

AH = E3h subfn 65h

DS:SI -> request buffer (see #1138)

ES:DI -> reply buffer (see #1143)

Return: AL = status (00h,96h,9Ch,D0h,D1h,FFh) (see also AH=E3h/SF=64h)

    FFh hardware failure

Desc:	abort all active jobs, detach all job servers, remove all job entries,

  delete all job files, remove the queue object and its properties

  from the bindery, and delete the queue's subdirectory

Notes:	this function is supported by Advanced NetWare 2.1+

caller must have SUPERVISOR privileges

SeeAlso: AH=E3h/SF=64h,AH=E3h/SF=66h,AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=70h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE CURRENT STATUS

Category: N - network

Inp.:

AH = E3h subfn 66h

DS:SI -> request buffer (see #1139)

ES:DI -> reply buffer (see #1140)

Return: AL = status (00h,96h,9Ch,D1h-D3h,F1h,FCh,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation which is security-equivalent to a

  member of the queue's Q_USERS or Q_OPERATORS properties

SeeAlso: AH=E3h/SF=64h,AH=E3h/SF=67h,AH=E3h/SF=6Fh,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SET QUEUE CURRENT STATUS

Category: N - network

Inp.:

AH = E3h subfn 67h

DS:SI -> request buffer (see #1142)

ES:DI -> reply buffer (see #1143)

Return: AL = status (00h,96h,9Ch,D0h,D1h,D3h,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must have operator privileges

SeeAlso: AH=E3h/SF=64h,AH=E3h/SF=66h,AH=E3h/SF=6Fh,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CREATE QUEUE JOB AND FILE

Category: N - network

Inp.:

AH = E3h subfn 68h

DS:SI -> request buffer (see #1144)

ES:DI -> reply buffer (see #1145)

Return: AL = status (00h,96h,99h,9Ch,D0h-D4h,DAh,EDh,EFh-F1h,F7h,FCh,FEh,FFh)

(see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation which is security-equivalent to a

  member of the queue's Q_USER property

SeeAlso: AX=B807h,AH=E0h"SPOOLING",AH=E3h/SF=69h,AH=E3h/SF=6Ah,AH=E3h/SF=6Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CLOSE FILE AND START QUEUE JOB

Category: N - network

Inp.:

AH = E3h subfn 69h

DS:SI -> request buffer (see #1146)

ES:DI -> reply buffer (see #1147)

Return: AL = status (00h,96h,D0h,D1h,D3h,D5h,D6h,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on the workstation which created the job

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=6Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - REMOVE JOB FROM QUEUE

Category: N - network

Inp.:

AH = E3h subfn 6Ah

DS:SI -> request buffer (see #1148)

ES:DI -> reply buffer (see #1147)

Return: AL = status (00h,96h,D0h,D1h,D5h,D6h,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must have created the job or be an operator

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=6Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - GET QUEUE JOB LIST

Category: N - network

Inp.:

AH = E3h subfn 6Bh

DS:SI -> request buffer (see #1149)

ES:DI -> reply buffer (see #1150)

Return: AL = status (00h,96h,9Ch,D0h-D3h,FCh,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation which is security-equivalent to a

  member of the Q_USERS or Q_OPERATORS properties

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=6Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE JOB ENTRY

Category: N - network

Inp.:

AH = E3h subfn 6Ch

DS:SI -> request buffer (see #1151)

ES:DI -> reply buffer (see #1152)

Return: AL = status (00h,96h,D0h-D3h,D5h,FCh,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation which is security-equivalent to a

  member of the Q_USERS, Q_OPERATORS, or Q_SERVERS properties

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=6Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE QUEUE JOB ENTRY

Category: N - network

Inp.:

AH = E3h subfn 6Dh

DS:SI -> request buffer (see #1154)

ES:DI -> reply buffer (see #1156)

Return: AL = status (00h,96h,D0h,D1h,D5h,D7h,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be an operator or the user who created the job

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=6Ch,AH=E3h/SF=6Eh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE QUEUE JOB POSITION

Category: N - network

Inp.:

AH = E3h subfn 6Eh

DS:SI -> request buffer (see #1155)

ES:DI -> reply buffer (see #1156)

Return: AL = status (00h,96h,D0h,D1h,D5h,D6h,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be an operator

if the specified position is greater than the number of jobs in the

  queue, the job is placed at the end of the queue

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ah,AH=E3h/SF=6Ch,AH=E3h/SF=6Dh


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ATTACH QUEUE SERVER TO QUEUE

Category: N - network

Inp.:

AH = E3h subfn 6Fh

DS:SI -> request buffer (see #1157)

ES:DI -> reply buffer (see #1156)

Return: AL = status (00h,96h,9Ch,D0h,D1h,D3h,DAh,DBh,FEh,FFh)

(see also AH=E3h/SF=64h)

    FFh bindery failure, or no such property, or no such member

Desc:	attach the calling job server to the specified queue

Notes:	this function is supported by Advanced NetWare 2.1+

a queue may have up to 25 job servers attached

the calling workstation must be security-equivalent to a member of the

  queue's Q_SERVERS property

SeeAlso: AH=E3h/SF=70h,AH=E3h/SF=71h,AH=E3h/SF=72h,AH=E3h/SF=73h,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - DETACH QUEUE SERVER FROM QUEUE

Category: N - network

Inp.:

AH = E3h subfn 70h

DS:SI -> request buffer (see #1158)

ES:DI -> reply buffer (see #1156)

Return: AL = status (00h,96h,9Ch,D0h,D1h,D2h,FEh,FFh) (see #1135)

Desc:	remove the calling job server from the specified queue's list of

  servers

Notes:	this function is supported by Advanced NetWare 2.1+

the caller must have previously attached itself to the queue

SeeAlso: AH=E3h/SF=6Fh,AH=E3h/SF=72h,AH=E3h/SF=73h,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SERVICE QUEUE JOB AND OPEN FILE

Category: N - network

Inp.:

AH = E3h subfn 71h

DS:SI -> request buffer (see #1159)

ES:DI -> reply buffer (see #1145)

Return: AL = status (00h,96h,9Ch,D0h,D1h,D3h,D5h,D9h,DAh,FEh,FFh)

(see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

the caller must be on a workstation which is security-equivalent to a

  member of the queue's Q_USERS, Q_OPERATORS, or Q_SERVERS properties

SeeAlso: AH=E3h/SF=6Fh,AH=E3h/SF=72h,AH=E3h/SF=73h,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - FINISH SERVICING QUEUE JOB AND FILE

Category: N - network

Inp.:

AH = E3h subfn 72h

DS:SI -> request buffer (see #1160)

ES:DI -> reply buffer (see #1162)

Return: AL = status (00h,96h,D0h,D1h,D6h) (see #1135)

Desc:	inform the Queue Management System (QMS) that the queue server has

  completed a job

Notes:	this function is supported by Advanced NetWare 2.1+

the caller must be a job server which has previously obtained a job

  for servicing

SeeAlso: AH=E3h/SF=6Fh,AH=E3h/SF=71h,AH=E3h/SF=73h,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ABORT SERVICING QUEUE JOB AND FILE

Category: N - network

Inp.:

AH = E3h subfn 73h

DS:SI -> request buffer (see #1161)

ES:DI -> reply buffer (see #1162)

Return: AL = status (00h,96h,D0h,D1h,D6h,D9h) (see #1135)

Desc:	inform the Queue Management System (QMS) that the queue server is

  unable to service a previously-accepted job

Notes:	this function is supported by Advanced NetWare 2.1+

this is an old version of the call (see AH=E3h/SF=84h)

only a job server which previously accepted a job for servicing may

  call this function

SeeAlso: AH=E3h/SF=6Fh,AH=E3h/SF=71h,AH=E3h/SF=72h,AH=E3h/SF=76h,AH=E3h/SF=84h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE TO CLIENT RIGHTS

Category: N - network

Inp.:

AH = E3h subfn 74h

DS:SI -> request buffer (see #1163)

ES:DI -> reply buffer (see #1162)

Return: AL = status (00h,96h,D0h,D1h,D5h,D9h) (see #1135)

Desc:	temporarily assume the login identity of the client submitting the

  job being serviced

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be a job server which has obtained a job for servicing

SeeAlso: AH=E3h/SF=75h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - RESTORE QUEUE SERVER RIGHTS

Category: N - network

Inp.:

AH = E3h subfn 75h

DS:SI -> request buffer (see #1164)

ES:DI -> reply buffer (see #1162)

Return: AL = status (00h,96h,9Ch,D0h,D1h,D3h,D5h,D9h,DAh,FEh,FFh) (see #1135)

Desc:	restore server's own identity after assuming the login identity of the

  client submitting the job being serviced

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be a job server which has previously changed its identity

SeeAlso: AH=E3h/SF=74h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE SERVER CURRENT STATUS

Category: N - network

Inp.:

AH = E3h subfn 76h

DS:SI -> request buffer (see #1165)

ES:DI -> reply buffer (see #1166)

Return: AL = status (00h,96h,9Ch,D1h-D3h,F1h,FCh,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation which is security-equivalent to a

  member of the Q_USERS or Q_OPERATORS properties

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ch,AH=E3h/SF=6Fh,AH=E3h/SF=77h,AH=E3h/SF=78h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SET QUEUE SERVER CURRENT STATUS

Category: N - network

Inp.:

AH = E3h subfn 77h

DS:SI -> request buffer (see #1167)

ES:DI -> reply buffer (see #1168)

Return: AL = status (00h,96h,9Ch,D0h,D1h,FEh,FFh) (see #1135)

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be a job server which has attached itself to the queue

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ch,AH=E3h/SF=6Fh,AH=E3h/SF=76h,AH=E3h/SF=78h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - GET QUEUE JOB'S FILE SIZE

Category: N - network

Inp.:

AH = E3h subfn 78h

DS:SI -> request buffer (see #1169)

ES:DI -> reply buffer (see #1170)

Return: AL = status (see also #1135)

    00h successful

Notes:	this function is supported by Advanced NetWare 2.1+

caller must be on a workstation which is security-equivalent to a

  member of the queue's Q_USERS, Q_OPERATORS, or Q_SERVERS properties

SeeAlso: AH=E3h/SF=68h,AH=E3h/SF=6Ch,AH=E3h/SF=71h


INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ABORT SERVICING QUEUE JOB

Category: N - network

Inp.:

AH = E3h subfn 84h

DS:SI -> request buffer (see #2692)

ES:DI -> reply buffer (see #2693)

Return: AL = status (00h,96h,D0h,D1h,D6h,D9h) (see #1135)

Desc:	inform the Queue Management System (QMS) that the queue server is

  unable to service a previously-accepted job

Notes:	this function is supported by Advanced NetWare 3.1+

this variant of Abort Servicing Queue Job allows use of the high

  connection byte in the NCP packet header, unlike AH=E3h/SF=73h

SeeAlso: AH=E3h/SF=6Fh,AH=E3h/SF=71h,AH=E3h/SF=72h,AH=E3h/SF=73h,AH=E3h/SF=76h


INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - GET ACCOUNT STATUS

Category: N - network

Inp.:

AH = E3h subfn 96h

DS:SI -> request buffer (see #1172)

ES:DI -> reply buffer (see #1173)

Return: AL = status (00h,C0h,C1h) (see #1171)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=97h,AH=E3h/SF=98h,AH=E3h/SF=99h


INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT CHARGE

Category: N - network

Inp.:

AH = E3h subfn 97h

DS:SI -> request buffer (see #1174)

ES:DI -> reply buffer (see #1176)

Return: AL = status (00h,C0h-C2h) (see #1171)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=96h,AH=E3h/SF=98h


INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT HOLD

Category: N - network

Inp.:

AH = E3h subfn 98h

DS:SI -> request buffer (see #1175)

ES:DI -> reply buffer (see #1176)

Return: AL = status (00h,C0h-C3h) (see #1171)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=96h,AH=E3h/SF=97h


INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT NOTE

Category: N - network

Inp.:

AH = E3h subfn 99h

DS:SI -> request buffer (see #1177)

ES:DI -> reply buffer (see #1176)

Return: AL = status (00h,C0h) (see #1171)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=96h


INT 21 E3-- - Novell NetWare - FILE SERVER - CHECK CONSOLE PRIVILEGES

Category: N - network

Inp.:

AH = E3h subfn C8h

DS:SI -> request buffer (see #1178)

ES:DI -> reply buffer (see #1176)

Return: AL = status (00h,C6h) (see #1181)

Desc:	determine whether the caller is a console operator

Notes:	this function is supported by Advanced NetWare 2.1+

NetWare determines console privileges by checking the file server's

  OPERATOR property for the caller's object ID

SeeAlso: AH=E3h/SF=C9h,AH=E3h/SF=D1h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER DESCRIPTION STRINGS

Category: N - network

Inp.:

AH = E3h subfn C9h

DS:SI -> request buffer (see #1179)

ES:DI -> reply buffer (see #1180)

Return: AL = status

    00h successful

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must be attached to the file server

SeeAlso: AH=E3h/SF=11h,AH=E3h/SF=CDh,AH=E3h/SF=E8h


INT 21 E3-- - Novell NetWare - FILE SERVER - SET FILE SERVER DATE AND TIME

Category: N - network

Inp.:

AH = E3h subfn CAh

DS:SI -> request buffer (see #1182)

ES:DI -> reply buffer (see #1184)

Return: AL = status (00h,C6h) (see #1181)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=2Bh,AH=2Dh,AH=E3h/SF=C8h,AH=E7h


INT 21 E3-- - Novell NetWare - FILE SERVER - DISABLE FILE SERVER LOGIN

Category: N - network

Inp.:

AH = E3h subfn CBh

DS:SI -> request buffer (see #1183)

ES:DI -> reply buffer (see #1184)

Return: AL = status (00h,C6h) (see #1181)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=CCh,AH=E3h/SF=D3h


INT 21 E3-- - Novell NetWare - FILE SERVER - ENABLE FILE SERVER LOGIN

Category: N - network

Inp.:

AH = E3h subfn CCh

DS:SI -> request buffer (see #1185)

ES:DI -> reply buffer (see #1184)

Return: AL = status (00h,C6h) (see #1181)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=CBh


INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER LOGIN STATUS

Category: N - network

Inp.:

AH = E3h subfn CDh

DS:SI -> request buffer (see #1186)

ES:DI -> reply buffer (see #1187)

Return: AL = status (00h,C6h) (see #1181)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=CBh,AH=E3h/SF=CCh


INT 21 E3-- - Novell NetWare - FILE SERVICES - PURGE ALL ERASED FILES

Category: N - network

Inp.:

AH = E3h subfn CEh

DS:SI -> request buffer (see #1188)

ES:DI -> reply buffer (see #1190)

Return: AL = status (00h,C6h) (see #1181)

Desc:	all files marked for deletion on the file server are purged, regardless

  of which workstation actually erased them

Notes:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

the calling workstation must have console operator privileges

SeeAlso: AH=13h,AH=E2h/SF=10h,AH=E3h/SF=C8h,AX=F244h


INT 21 E3-- - Novell NetWare - FILE SERVER - DISABLE TRANSACTION TRACKING

Category: N - network

Inp.:

AH = E3h subfn CFh

DS:SI -> request buffer (see #1189)

ES:DI -> reply buffer (see #1190)

Return: AL = status (00h,C6h) (see #1181)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=D0h


INT 21 E3-- - Novell NetWare - FILE SERVER - ENABLE TRANSACTION TRACKING

Category: N - network

Inp.:

AH = E3h subfn D0h

DS:SI -> request buffer (see #1191)

ES:DI -> reply buffer (see #1190)

Return: AL = status (00h,C6h) (see #1195)

Desc:	restart transaction tracking after being stopped either explicitly by

  AH=E3h/SF=CFh or automatically due to a full transaction volume

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=CFh


INT 21 E3-- - Novell NetWare - FILE SERVER - SEND CONSOLE BROADCAST

Category: N - network

Inp.:

AH = E3h subfn D1h

DS:SI -> request buffer (see #1192)

ES:DI -> reply buffer (see #1194)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

the broadcast message will not be received by workstations which have

  disabled broadcasts with AH=E1h/SF=02h

SeeAlso: AH=E1h/SF=02h,AH=E1h/SF=09h,AH=E3h/SF=C8h,AH=E3h/SF=D3h


INT 21 E3-- - Novell NetWare - FILE SERVER - CLEAR CONNECTION NUMBER

Category: N - network

Inp.:

AH = E3h subfn D2h

DS:SI -> request buffer (see #1193)

ES:DI -> reply buffer (see #1194)

Return: AL = status (00h,C6h) (see #1195)

Desc:	close the open files and release all file locks for a connection,

  abort transactions if a TTS file server, and detach from the file

  server

Notes:	this function is supported by Advanced NetWare 2.1+

the caller must have SUPERVISOR privileges

SeeAlso: AH=E3h/SF=C9h,AH=E3h/SF=D1h


INT 21 E3-- - Novell NetWare - FILE SERVER - DOWN FILE SERVER

Category: N - network

Inp.:

AH = E3h subfn D3h

DS:SI -> request buffer (see #1196)

ES:DI -> reply buffer (see #1194)

Return: AL = status (00h,C6h,FFh) (see #1195)

Desc:	take down the file server

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have SUPERVISOR privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=CBh,AH=E3h/SF=CFh,AH=E3h/SF=D1h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SYSTEM STATISTICS

Category: N - network

Inp.:

AH = E3h subfn D4h

DS:SI -> request buffer (see #1197)

ES:DI -> reply buffer (see #1198)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=0Eh,AH=E3h/SF=C8h,AH=E3h/SF=D9h,AH=E3h/SF=E7h,AH=E3h/SF=E8h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET TRANSACTION TRACKING STATISTICS

Category: N - network

Inp.:

AH = E3h subfn D5h

DS:SI -> request buffer (see #1199)

ES:DI -> reply buffer (see #1200)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=CFh,AH=E3h/SF=D0h,AH=E3h/SF=E8h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK CACHE STATISTICS

Category: N - network

Inp.:

AH = E3h subfn D6h

DS:SI -> request buffer (see #1201)

ES:DI -> reply buffer (see #1202)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=D5h,AH=E3h/SF=D8h,AH=E3h/SF=D9h,AH=E3h/SF=E6h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET DRIVE MAPPING TABLE

Category: N - network

Inp.:

AH = E3h subfn D7h

DS:SI -> request buffer (see #1203)

ES:DI -> reply buffer (see #1204)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=D6h,AH=E3h/SF=D9h,AH=E3h/SF=E6h,AH=E3h/SF=E9h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL DISK STATISTICS

Category: N - network

Inp.:

AH = E3h subfn D8h

DS:SI -> request buffer (see #1205)

ES:DI -> reply buffer (see #1206)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=D9h,AH=E3h/SF=E9h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK CHANNEL STATISTICS

Category: N - network

Inp.:

AH = E3h subfn D9h

DS:SI -> request buffer (see #1207)

ES:DI -> reply buffer (see #1208)

Return: AL = status (00h,C6h) (see #1195)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=D8h,AH=E3h/SF=E6h,AH=E3h/SF=E9h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S TASK INFORMATION

Category: N - network

Inp.:

AH = E3h subfn DAh

DS:SI -> request buffer (see #1211)

ES:DI -> reply buffer (see #1212)

Return: AL = status (00h,C6h) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DBh,AH=E3h/SF=DFh,AH=E3h/SF=E1h,AH=E3h/SF=E5h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S OPEN FILES

Category: N - network

Inp.:

AH = E3h subfn DBh

DS:SI -> request buffer (see #1215)

ES:DI -> reply buffer (see #1216)

Return: AL = status (00h,C6h) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E2h/SF=1Ah,AH=E3h/SF=C8h,AH=E3h/SF=DAh,AH=E3h/SF=DCh,AH=E3h/SF=DFh

SeeAlso: AH=E3h/SF=E1h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTIONS USING A FILE

Category: N - network

Inp.:

AH = E3h subfn DCh

DS:SI -> request buffer (see #1220)

ES:DI -> reply buffer (see #1221)

Return: AL = status (00h,C6h) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DAh,AH=E3h/SF=DBh,AH=E3h/SF=DFh,AH=E3h/SF=E1h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL RECORD LOCKS BY CONN&FILE

Category: N - network

Inp.:

AH = E3h subfn DDh

DS:SI -> request buffer (see #1224)

ES:DI -> reply buffer (see #1225)

Return: AL = status (00h,C6h,FFh) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DEh,AH=E3h/SF=DFh


INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL RECORD LOCKS BY FILE

Category: N - network

Inp.:

AH = E3h subfn DEh

DS:SI -> request buffer (see #1228)

ES:DI -> reply buffer (see #1229)

Return: AL = status (00h,C6h,FFh) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DDh,AH=E3h/SF=DFh


INT 21 E3-- - Novell NetWare - FILE SERVER - GET LOGICAL RECORDS BY CONNECTION

Category: N - network

Inp.:

AH = E3h subfn DFh

DS:SI -> request buffer (see #1231)

ES:DI -> reply buffer (see #1232)

Return: AL = status (00h,C6h) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DDh,AH=E3h/SF=E0h,AH=E3h/SF=E2h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET LOGICAL RECORD INFORMATION

Category: N - network

Inp.:

AH = E3h subfn E0h

DS:SI -> request buffer (see #1234)

ES:DI -> reply buffer (see #1235)

Return: AL = status (00h,C6h) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DDh,AH=E3h/SF=DFh,AH=E3h/SF=E2h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S SEMAPHORES

Category: N - network

Inp.:

AH = E3h subfn E1h

DS:SI -> request buffer (see #1237)

ES:DI -> reply buffer (see #1238)

Return: AL = status (00h,C6h) (see #1223)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DBh,AH=E3h/SF=DFh,AH=E3h/SF=E2h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET SEMAPHORE INFORMATION

Category: N - network

Inp.:

AH = E3h subfn E2h

DS:SI -> request buffer (see #1240)

ES:DI -> reply buffer (see #1241)

Return: AL = status (00h,C6h) (see #1245)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=E1h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET LAN DRIVER'S CONFIGURATION INFO

Category: N - network

Inp.:

AH = E3h subfn E3h

DS:SI -> request buffer (see #1243)

ES:DI -> reply buffer (see #1244)

Return: AL = status (00h,C6h) (see #1245)

Notes:	this function is supported by Advanced NetWare 2.1+

the calling workstation must have console operator privileges

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=E7h,AH=E3h/SF=E8h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S USAGE STATISTICS

Category: N - network

Inp.:

AH = E3h subfn E5h

DS:SI -> request buffer (see #1246)

ES:DI -> reply buffer (see #1247)

Return: AL = status (00h,C6h) (see #1245)

Notes:	this function is supported by Advanced NetWare 2.1+

one must have console operator privileges to get statistics for logical

  connections other than one's own

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=DAh,AH=E3h/SF=DBh,AH=E3h/SF=E1h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET BINDERY OBJECT DISK SPACE LEFT

Category: N - network

Inp.:

AH = E3h subfn E6h

DS:SI -> request buffer (see #1248)

ES:DI -> reply buffer (see #1249)

Return: AL = status (00h,C6h) (see #1245)

Notes:	this function is supported by Advanced NetWare 2.1+

one must have console operator privileges to get the free space for

  other bindery objects

SeeAlso: AH=E3h/SF=C8h,AH=E3h/SF=E8h,AH=E3h/SF=E9h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER LAN I/O STATISTICS

Category: N - network

Inp.:

AH = E3h subfn E7h

DS:SI -> request buffer (see #1250)

ES:DI -> reply buffer (see #1251)

Return: AL = status

    00h successful

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=0Eh,AH=E3h/SF=11h,AH=E3h/SF=D3h,AH=E3h/SF=E8h,AH=E7h


INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER MISC INFORMATION

Category: N - network

Inp.:

AH = E3h subfn E8h

DS:SI -> request buffer (see #1252)

ES:DI -> reply buffer (see #1253)

Return: AL = status (00h,C6h) (see #1245)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=E3h/SF=0Eh,AH=E3h/SF=11h,AH=E3h/SF=CDh,AH=E3h/SF=E7h


INT 21 E3-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFORMATION

Category: N - network

Inp.:

AH = E3h subfn E9h

DS:SI -> request buffer (see #1255)

ES:DI -> reply buffer (see #1256)

Return: AL = status

    00h successful

Notes:	this function is supported by Advanced NetWare 2.1+

SeeAlso: AH=DAh,AH=E2h/SF=15h


INT 21 E4-- - Novell NetWare - SET FILE ATTRIBUTES (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E4h

CL = file attributes (see #1257)

DX:DX -> FCB (see #0574 at AH=0Fh)

Return: AL = error code

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

SeeAlso: AX=4301h


INT 21 E4-- - VIRUS - "Anarkia" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = E4h

Return: AH = 04h if resident

SeeAlso: AH=E1h"VIRUS",AH=E7h"VIRUS"


INT 21 E400 - DoubleDOS - INSTALLATION CHECK/PROGRAM STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = E400h

Return: AL = program status

    00h if DoubleDOS not present

    01h if running in visible DoubleDOS partition

    02h if running in the invisible DoubleDOS partition

SeeAlso: AH=E5h"DoubleDOS",AX=F400h


INT 21 E400 - OS/286, OS/386 - CHAIN TO REAL-MODE HANDLER

Category: E - DOS extenders

Inp.:

AX = E400h

???

Return: ???

Note:	protected mode only???


INT 21 E402 - OS/286, OS/386 - SET PROTECTED-MODE TASK GATE

Category: E - DOS extenders

Inp.:

AX = E402h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=E403h


INT 21 E403 - OS/286, OS/386 - REMOVE PROTECTED-MODE TASK GATE

Category: E - DOS extenders

Inp.:

AX = E403h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=E402h


INT 21 E5-- - Novell NetWare - UPDATE FILE SIZE (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E5h

DS:DX -> FCB (see #0574 at AH=0Fh)

Return: AL = (unreliable) return code

Notes:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation

on success, NetWare sets AL to zero; on errors it restores AL


INT 21 E5-- - DoubleDOS - OTHER PROGRAM STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = E5h

Return: AL = status

    00h no program in other partition

    01h program in other partition is running

    02h program in other partition is suspended

SeeAlso: AX=E400h"DoubleDOS",AH=F5h"DoubleDOS"


INT 21 E500 - OS/286, OS/386 - HEAP MANAGEMENT STRATEGY

Category: E - DOS extenders

Inp.:

AX = E500h

???

Return: ???

SeeAlso: AX=E501h


INT 21 E501 - OS/286, OS/386 - FORCE HEAP COMPACTION

Category: E - DOS extenders

Inp.:

AX = E501h

???

Return: ???

SeeAlso: AX=E500h


INT 21 E6-- - Novell NetWare - COPY FILE TO FILE (FCB)

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E6h

CX:DX = number of bytes to copy

DS:SI -> opened source FCB

ES:DI -> opened destination FCB

Return: AL = error code

CX = ???

DX = ???

Note:	this function was added in NetWare 4.0, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation


INT 21 E6-- - OS/286, OS/386 - ISSUE REAL PROCEDURE SIGNAL FROM PROTECTED MODE

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = E6h

???

Return: ???

SeeAlso: AH=E2h"OS/286"


INT 21 E7-- - Novell NetWare - FILE SERVER - GET FILE SERVER DATE AND TIME

Category: N - network

Inp.:

AH = E7h

DS:DX -> date/time buffer (see #1258)

Return: AL = error code

    00h successful

    FFh unsuccessful

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+,

  Alloy NTNX, and Banyan VINES

SeeAlso: AH=2Ah,AH=2Ch,AX=5FC0h,AH=E3h/SF=CAh


INT 21 E7-- - OS/286, OS/386 - CREATE CODE SEGMENT

Category: E - DOS extenders

Inp.:

AH = E7h

???

Return: ???

SeeAlso: AH=E8h"OS/286",AH=E9h"OS/286",AH=EAh"OS/286"


INT 21 E7-- - VIRUS - "Spyer"/"Kiev" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = E7h

Return: AH = 78h if resident

SeeAlso: AH=E4h"VIRUS",AX=EC59h


INT 21 E8-- - Novell NetWare, Alloy NTNX - SET FCB RE-OPEN MODE

obsolete (no longer present in current versions)

Category: N - network

Inp.:

AH = E8h

DL = mode

    00h no automatic re-open

    01h auto re-open

Return: AL = error code

Desc:	provided backward compatibility with a bug in CP/M and early DOS vers

Note:	this function was added in NetWare 4.6, but was removed some time prior

  to Advanced NetWare 2.15, and is no longer listed in current Novell

  documentation


INT 21 E8-- - OS/286, OS/386 - SEGMENT CREATION

Category: E - DOS extenders

Inp.:

AH = E8h

AL = type

    00h data segment

    01h data window/alias

    02h real segment

    03h real window/alias

CX:DX = size in bytes

SI:BX -> start of desired memory block

Return:	AX = selector

    06h shareable segment

???

Return: ???

SeeAlso: AH=E7h"OS/286",AH=E9h"OS/286"


INT 21 E8-- - DoubleDOS - SET/RESET KEYBOARD CONTROL FLAGS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = E8h

AL = program for which to set flags (00h this program, 01h other)

DX = keyboard control flags (see #1259)

Return: DX = previous flags

Notes:	disabling Ctrl-PrtSc will allow the program to intercept the keystroke;

  disabling any of the other keystrokes disables them completely

identical to AH=F8h

SeeAlso: AH=E1h"DoubleDOS",AH=E2h"DoubleDOS",AH=E3h"DoubleDOS"

SeeAlso: AH=F8h"DoubleDOS"


INT 21 E9-- - OS/286, OS/386 - CHANGE SEGMENTS

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = E9h

AL = function

    01h change code segment parameters

    02h change data segment parameters

    05h adjust segment limit

    06h change segment base address

???

Return: ???

SeeAlso: AH=E7h"OS/286",AH=E8h"OS/286",AH=EAh"OS/286",AH=EDh"OS/286"

SeeAlso: INT 31/AX=0007h,INT 31/AX=0008h


INT 21 E9-- - DoubleDOS - SET TIMESHARING PRIORITY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = E9h

AL = new priority (see #1260)

Return: AL = priority setting if AL=05h on entry

Note:	identical to AH=F9h

SeeAlso: AH=EAh"DoubleDOS",AH=EBh"DoubleDOS",AH=F9h"DoubleDOS"


INT 21 E900 - Novell NetWare - DIRECTORY SERVICES - GET DIRECTORY HANDLE

Category: N - network

Inp.:

AX = E900h

DX = drive number to check (0 = A:, ..., 25 = Z:, 26 ... 31)

Return: AL = directory handle

AH = flags (drive not mapped if none set)

    bit 0: permanent handle

    bit 1: temporary handle

    bit 7: mapped to local drive

Note:	this function is supported by NetWare 4.0+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E2h/SF=00h,AH=E2h/SF=01h,AH=E2h/SF=0Ah


INT 21 E905 - Novell NetWare shell 3.01 - MAP A FAKE ROOT DIRECTORY

Category: N - network

Inp.:

AX = E905h

BL = drive number (0=default, 1=A:, ...)

DS:DX -> ASCIZ path for fake root (may include server name or be empty)

Return: CF set on error

    AL = error code (03h,0Fh,11h) (see #0885 at AH=59h)

CF clear if successful

Note:	if drive is not currently mapped, a drive mapping will be created

SeeAlso: AX=E906h


INT 21 E906 - Novell NetWare shell 3.01 - DELETE FAKE ROOT DIRECTORY

Category: N - network

Inp.:

AX = E906h

BL = drive number (0=default, 1=A:, ...)

Note:	drive remains mapped

SeeAlso: AX=E905h


INT 21 E907 - Novell NetWare shell 3.01 - GET RELATIVE DRIVE DEPTH

Category: N - network

Inp.:

AX = E907h

BL = drive number (0=default, 1=A:, ...)

Return: AL = number of directories below the fake root

    FFh if no fake root assigned

SeeAlso: AX=E905h


INT 21 E908 - Novell NetWare shell 3.01 - SET SHOW DOTS

Category: N - network

Inp.:

AX = E908h

BL = 00h	don't return '.' or '..' during directory scans

   = nonzero	directory scans will return '.' or '..' entries

Return: BL = previous show-dots setting


INT 21 E909 - Novell NetWare - NetWare shell - CONVERT DOS FILE HANDLE TO NETWARE

Category: N - network

Inp.:

AX = E909h

BX = DOS file handle

Return: AX = 0000h if successful

    BX:CX:DX = NetWare file handle

Notes:	this function is partially a reverse of "AttachHandle" (AH=B4h)

many NetWare 3.x functions use a four-byte file handle, which appears

  to be the high four bytes of the six-byte NetWare handle

SeeAlso: AH=B4h"NetWare"


INT 21 EA-- - Novell NetWare, Alloy NTNX - RETURN SHELL VERSION

Category: N - network

Inp.:

AH = EAh

AL = return version environment string

    00h	don't return string

    nonzero	return string in 40-byte buffer pointed to by ES:DI

Return: buffer filled with three null-terminated entries:

major operating system

version

hardware type

Return: AH = operating system (00h = MS-DOS)

AL = hardware type

    00h IBM PC

    01h Victor 9000

BH = major shell version

BL = minor shell version

CH = (v3.01+) shell type

    00h conventional memory

    01h expanded memory

    02h extended memory

CL = shell revision number

Note:	this function is supported by NetWare 4.6 and Advanced NetWare 1.0+


INT 21 EA-- - DoubleDOS - TURN OFF TASK SWITCHING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = EAh

Return: task switching turned off

SeeAlso: AH=E9h"DoubleDOS",AH=EBh"DoubleDOS",AH=FAh"DoubleDOS"

SeeAlso: INT FA"DoubleDOS"


INT 21 EA-- - OS/286, OS/386 - ALLOCATE HUGE SEGMENT

Category: E - DOS extenders

Inp.:

AH = EAh

???

Return: ???

Note:	protected mode only???

SeeAlso: AH=E7h"OS/286",AH=E8h"OS/286",AH=E9h"OS/286"


INT 21 EB-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG FILE

Category: N - network

Inp.:

AH = EBh

DS:DX -> ASCIZ filename

if function C6h lock mode 01h:

    AL = flags

00h log file only

01h lock as well as log file

    BP = lock timeout in timer ticks (1/18 second)

0000h = don't wait if file already locked

Return: AL = status (see #1261)

Desc:	add the location and size of the specified file to the log table and

  optionally lock the file

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=BCh"NetWare",AH=CAh,AH=D0h,AH=ECh"NetWare",AH=EDh"NetWare"


INT 21 EB-- - DoubleDOS - TURN ON TASK SWITCHING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = EBh

Return: task switching turned on

SeeAlso: AH=E9h"DoubleDOS",AH=EAh"DoubleDOS",AH=FBh"DoubleDOS"

SeeAlso: INT FB"DoubleDOS"


INT 21 EB00 - OS/386 VMM - GET A PAGE TABLE ENTRY BY LINEAR ADDRESS

Category: E - DOS extenders

Inp.:

AX = EB00h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB02h,AX=EB04h,INT 31/AX=0506h


INT 21 EB02 - OS/386 VMM - GET A PAGE TABLE ENTRY BY 16-BIT SEGMENT:OFFSET

Category: E - DOS extenders

Inp.:

AX = EB02h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB00h,AX=EB04h


INT 21 EB03 - OS/386 VMM - FREE MAPPED PAGES

Category: E - DOS extenders

Inp.:

AX = EB03h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB05h,INT 31/AX=0801h


INT 21 EB04 - OS/386 VMM - GET A PAGE TABLE ENTRY BY 32-BIT SEGMENT:OFFSET

Category: E - DOS extenders

Inp.:

AX = EB04h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB00h,AX=EB02h


INT 21 EB05 - OS/386 VMM - MAP PAGES

Category: E - DOS extenders

Inp.:

AX = EB05h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB03h,INT 31/AX=0800h


INT 21 EB06 - OS/386 VMM - LOCK PAGES IN MEMORY

Category: E - DOS extenders

Inp.:

AX = EB06h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB07h,INT 31/AX=0600h


INT 21 EB07 - OS/386 VMM - UNLOCK MEMORY PAGES

Category: E - DOS extenders

Inp.:

AX = EB07h

???

Return: ???

Note:	protected mode only???

SeeAlso: AX=EB06h,INT 31/AX=0601h


INT 21 EC-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE FILE

Category: N - network

Inp.:

AH = ECh

DS:DX -> ASCIZ filename

Return: AL = status

    00h successful

    FFh file not found

Desc:	unlock the specified file but retain it in the log table

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=CDh,AH=EBh"NetWare",AH=EDh"NetWare"


INT 21 EC-- - DoubleDOS - GET VIRTUAL SCREEN ADDRESS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = ECh

Return: ES = segment of virtual screen

Desc:	determine the address of the virtual screen to which the program

  should write instead of the actual video memory, so that the

  multitasked programs do not interfere with each other's output

Notes:	screen address can change if task-switching is on!!

identical to AH=FCh

SeeAlso: INT 10/AH=FEh,AH=FCh"DoubleDOS",INT FC"DoubleDOS"


INT 21 EC-- - OS/286, OS/386 - BLOCK TRANSFER

Category: E - DOS extenders

Inp.:

AH = ECh

???

Return: ???


INT 21 EC59 - VIRUS - "Terror" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = EC59h

Return: BP = EC59h if resident

SeeAlso: AH=E7h"VIRUS",AH=EEh"VIRUS"


INT 21 ED-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR FILE

Category: N - network

Inp.:

AH = EDh

DS:DX -> ASCIZ filename

Return: AL = status

    00h successful

    FFh no files found

Desc:	unlock the file and remove it from the log table

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=CBh"NetWare",AH=CEh,AH=CFh,AH=EBh"NetWare",AH=ECh"NetWare"


INT 21 ED-- - OS/286, OS/386 - GET SEGMENT OR WINDOW DESCRIPTOR

Category: E - DOS extenders

Inp.:

AH = EDh

???

Return: ???

Note:	protected mode only???

SeeAlso: AH=E9h"OS/286"


INT 21 EE-- - Novell NetWare - CONNECTION SERVICES - GET PHYSICAL STATION ADDRESS

Category: N - network

Inp.:

AH = EEh

Return: CX:BX:AX = six-byte physical address

Note:	this function is supported by NetWare 4.6+, Advanced NetWare 1.0+, and

  Alloy NTNX

SeeAlso: AH=E3h/SF=13h


INT 21 EE-- - DoubleDOS - GIVE AWAY TIME TO OTHER TASKS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = EEh

AL = number of 55ms time slices to give away

Return: returns after giving away time slices

SeeAlso: AH=FEh"DoubleDOS",INT FE"DoubleDOS"


INT 21 EE-- - VIRUS - "Jerusalem-G", "Pregnant" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = EEh

Return: AX = 0300h if "Jerusalem-G" resident

AL = 05h if "Pregnant" resident

SeeAlso: AH=DDh"VIRUS",AX=EC59h,AH=F0h"VIRUS"


INT 21 EF00 - Novell NetWare - WORKSTATION - GET DRIVE HANDLE TABLE

Category: N - network

Inp.:

AX = EF00h

Return: ES:SI -> network shell's 32-byte drive handle table

AX = 0000h

Notes:	this function is supported by Advanced NetWare 1.0+

each byte in the drive handle table contains the directory handle for

  the corresponding drive, or 00h if not mapped to a directory

SeeAlso: AX=EF01h,AX=EF02h,AX=EF03h,AX=EF04h


INT 21 EF01 - Novell NetWare - WORKSTATION - GET DRIVE FLAG TABLE

Category: N - network

Inp.:

AX = EF01h

Return: ES:SI -> network shell's 32-byte drive flag table (see #1262)

AX = 0000h

Notes:	this function is supported by Advanced NetWare 1.0+

each byte in the drive flag table corresponds to a drive

SeeAlso: AX=EF00h,AX=EF02h,AX=EF03h


INT 21 EF02 - Novell NetWare - WORKSTATION - GET DRIVE CONNECTION ID TABLE

Category: N - network

Inp.:

AX = EF02h

Return: ES:SI -> network shell's 32-byte drive conection ID table

AX = 0000h

Notes:	this function is supported by Advanced NetWare 1.0+

each byte in the connection ID table corresponds to a drive and

  contains either the connection ID (1-8) of the server for that drive

  or 00h if the drive is not mapped to a file server

SeeAlso: AX=EF01h,AX=EF03h,AX=F002h


INT 21 EF03 - Novell NetWare - WORKSTATION - GET CONNECTION ID TABLE

Category: N - network

Inp.:

AX = EF03h

Return: ES:SI -> network shell's connection ID table (see #1263)

AX = 0000h

Note:	this function is supported by Advanced NetWare 1.0+

SeeAlso: AX=EF00h,AX=EF02h,AX=EF04h,AX=F002h


INT 21 EF04 - Novell NetWare - WORKSTATION - GET FILE SERVER NAME TABLE

Category: N - network

Inp.:

AX = EF04h

Return: ES:SI -> network shell's file server name table (see #1264)

AX = 0000h

Note:	this function is supported by Advanced NetWare 1.0+

SeeAlso: AX=EF03h


INT 21 F0-- - DoubleDOS - MENU CONTROL

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F0h

AL = subfunction

    01h exchange tasks

    73h resume invisible job if suspended

    74h kill other job

    75h suspend invisible job

Note:	identical to AH=E0h

SeeAlso: AH=E0h"DoubleDOS"


INT 21 F0-- - VIRUS - "Frere Jacques" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = F0h

Return: AX = 0300h if resident

SeeAlso: AH=EEh"VIRUS",AH=F1h"VIRUS"


INT 21 F000 - Novell NetWare - WORKSTATION - SET PREFERRED CONNECTION ID

Category: N - network

Inp.:

AX = F000h

DL = connection ID of prefered file server (1-8) or 00h for none

Notes:	this function is supported by Advanced NetWare 1.0+

the preferred connection ID is set to 00h by the shell on EOJ

SeeAlso: AH=D6h,AX=EF03h,AX=F001h,AX=F002h,AX=F005h


INT 21 F001 - Novell NetWare - WORKSTATION - GET PREFERRED CONNECTION ID

Category: N - network

Inp.:

AX = F001h

Return: AL = connection ID of preferred file server (1-8), 00h if not set

Notes:	this function is supported by Advanced NetWare 1.0+

the preferred connection ID is set to 00h by the shell on EOJ

SeeAlso: AH=D6h,AX=EF03h,AX=F000h,AX=F002h,AX=F005h


INT 21 F002 - Novell NetWare - WORKSTATION - GET DEFAULT CONNECTION ID

Category: N - network

Inp.:

AX = F002h

Return: AL = connection ID of current default file server (1-8) (see AX=EF03h)

Note:	this function is supported by Advanced NetWare 1.0+

SeeAlso: AX=EF03h,AX=F000h,AX=F004h


INT 21 F003 - Novell NetWare - PRINT SERVICES - GET LPT CAPTURE STATUS

Category: N - network

Inp.:

AX = F003h

Return: AH = status

    00h not active

    FFh active

AL = connection ID (01h-08h)

Note:	this function is supported by Advanced NetWare 1.0+

SeeAlso: AX=B800h,AX=B804h,AH=DFh/DL=00h,AH=DFh/DL=04h


INT 21 F004 - Novell NetWare - WORKSTATION - SET PRIMARY CONNECTION ID

Category: N - network

Inp.:

AX = F004h

DL = connection ID of primary file server (1-8) or 00h for none

Note:	this function is supported by Advanced NetWare 2.0+

SeeAlso: AH=D6h,AX=EF03h,AX=F000h,AX=F002h,AX=F005h


INT 21 F005 - Novell NetWare - WORKSTATION - GET PRIMARY CONNECTION ID

Category: N - network

Inp.:

AX = F005h

Return: AL = connection ID of primary file server (1-8), 00h if not set

Notes:	this function is supported by Advanced NetWare 2.0+

by default, the primary file server is the one from which the login

  script executed; it is set to 00h if the workstation is not logged in

  and when it detaches from its primary file server

SeeAlso: AH=D6h,AX=EF03h,AX=F000h,AX=F002h,AX=F004h


INT 21 F1-- - Novell NetWare - CONNECTION SERVICES - FILE SERVER CONNECTION

Category: N - network

Inp.:

AH = F1h

AL = subfunction

    00h attach to file server

DL = preferred file server (01h-08h)

    01h detach from file server

DL = connection ID

    02h logout from file server

DL = connection ID

Return: AL = status (see #1265)

Note:	these functions are supported by Advanced NetWare 1.0+

SeeAlso: AH=D7h"NetWare",AH=E3h/SF=14h


INT 21 F1-- - DoubleDOS - CLEAR KEYBOARD BUFFER FOR CURRENT JOB

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F1h

SeeAlso: AH=E1h"DoubleDOS",AH=F2h"DoubleDOS",AH=F3h"DoubleDOS"

SeeAlso: AH=F8h"DoubleDOS"


INT 21 F1-- - VIRUS - "F1-337" - ???

Category: v - virus/antivirus

Inp.:

AH = F1h

???

Return: ???

SeeAlso: AH=F0h"VIRUS",AX=F1E9h


INT 21 F1E9 - VIRUS - "Tremor" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = F1E9h

Return: AX = installation state

    CADEh installed, and calling program is infected

    F100h not installed (normal DOS return value)

    else  installed, but calling program is not infected

SeeAlso: AH=F1h"VIRUS",AX=F2AAh


INT 21 F2-- - Novell NetWare v3.01+ shell interface - MULTIPLEXOR

partially documented function

Category: N - network

Inp.:

AH = F2h

AL = function (see #1266)

    (subfunction stored at DS:SI for AL=56h,57h,

      DS:SI+2 for AL=15h-17h,23h, DS:SI+11h for AL=68h)

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (contents vary by function)

ES:DI -> reply buffer (contents vary by function)

Return: AL = status

reply buffer filled as appropriate for function

Note:	this is a multiplexor providing a "raw" interface to the underlying

  NetWare Core Protocol.  Many functions which were accessed via a

  separate AH function in older versions can also be accessed here,

  but some NetWare 3.x calls appear to be available only here.

SeeAlso: AX=F244h,AX=F268h/SF=3Dh


INT 21 F2-- - DoubleDOS - SEND CHARACTER TO KEYBOARD BUFFER OF OTHER JOB

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F2h

AL = character

Return: AL = status

    00h successful

    01h buffer full (128 characters)

SeeAlso: AH=E2h"DoubleDOS",AH=F1h"DoubleDOS",AH=F3h"DoubleDOS"

SeeAlso: AH=F8h"DoubleDOS"


INT 21 F216 - Novell NetWare v3+ - ADD USER DISK SPACE RESTRICTION

Category: N - network

Inp.:

AX = F216h subfn 21h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1267)

ES:DI -> reply buffer (ignored)

Return: AL = status

SeeAlso: AX=F216h/SF=24h


INT 21 F216 - Novell NetWare v3+ - SET DIRECTORY DISK SPACE RESTRICTION

Category: N - network

Inp.:

AX = F216h subfn 24h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1268)

ES:DI -> reply buffer (ignored)

Return: AL = status

SeeAlso: AX=F216h/SF=21h


INT 21 F216 - Novell NetWare v3+ - SCAN FILE OR DIRECTORY FOR EXTENDED TRUSTEES

Category: N - network

Inp.:

AX = F216h subfn 26h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1269)

ES:DI -> reply buffer (see #1270)

Return: AL = status

Desc:	get up to 20 extended trustee entries per call for a file or directory


INT 21 F216 - Novell NetWare v3+ - ADD EXTENDED TRUSTEE TO DIRECTORY OR FILE

Category: N - network

Inp.:

AX = F216h subfn 27h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1271)

ES:DI -> reply buffer (ignored)

Return: AL = status


INT 21 F216 - Novell NetWare v3+ - GET OBJECT DISK RESTRICTIONS

Category: N - network

Inp.:

AX = F216h subfn 29h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1273)

ES:DI -> reply buffer (see #1274)

Return: AL = status

reply buffer filled

Note:	this function returns successfully, showing no restriction, if an

  invalid object ID is specified

SeeAlso: AX=F216h/SF=24h


INT 21 F216 - Novell NetWare v4 - GET EXTENDED VOLUME INFORMATION

Category: N - network

Inp.:

AX = F216h subfn 33h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #2733)

ES:DI -> reply buffer (see #2734)

Return: AL = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)

reply buffer filled


INT 21 F217 - Novell NetWare v3+ - GET CONNECTION INFORMATION

Category: N - network

Inp.:

AX = F217h subfn 1Ch

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1275)

ES:DI -> reply buffer (see #1276)

Return: AL = status

reply buffer filled

SeeAlso: AH=F2h"Novell"


INT 21 F217 - Novell NetWare v4 - CHANGE CONNECTION STATE

Category: N - network

Inp.:

AX = F217h subfn 1Dh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #2729)

ES:DI -> reply buffer

Return: AL = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)

reply buffer filled


INT 21 F217 - Novell NetWare v4 - SET WATCHDOG DELAY INTERVAL

Category: N - network

Inp.:

AX = F217h subfn 1Eh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #2732)

ES:DI -> reply buffer

Return: AL = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)

reply buffer filled


INT 21 F217 - Novell NetWare v4 - GET CONNECTION LIST

Category: N - network

Inp.:

AX = F217h subfn 1Fh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #2731)

ES:DI -> reply buffer

Return: AL = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)

reply buffer filled


INT 21 F217 - Novell NetWare v2.2+ - GET VOLUME EXTENDED INFORMATION

Category: N - network

Inp.:

AX = F217h subfn 33h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #2727)

ES:DI -> reply buffer (see #2728)

Return: AX = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)


INT 21 F217 - Novell NetWare v2.2+ - ADD OBJECT TO SET

Category: N - network

Inp.:

AX = F217h subfn 41h

BX = number of fragments in request packet (max 5)

CX = connection handle

DX = 0000h (length of reply buffer in bytes)

DS:SI -> request buffer (see #2694)

Return: AX = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)

Desc:	add a member to an object's group property

SeeAlso: AH=F2h"Novell"


INT 21 F217 - Novell NetWare v3+ - CLEAR CONNECTION NUMBER (LOGOUT STATION)

Category: N - network

Inp.:

AX = F217h subfn D2h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1277)

ES:DI -> reply buffer (ignored)

Return: AL = status

reply buffer filled


INT 21 F217 - Novell NetWare v3+ - GET CONNECTION'S OPEN FILES

Category: N - network

Inp.:

AX = F217h subfn EBh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1278)

ES:DI -> reply buffer (see #1279)

Return: AL = status

reply buffer filled


INT 21 F217 - Novell NetWare v3+ - GET CONNECTIONS USING A FILE

Category: N - network

Inp.:

AX = F217h subfn ECh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1281)

ES:DI -> reply buffer (see #1282)

Return: AL = status

reply buffer filled


INT 21 F217 - Novell NetWare v3+ - GET PHYSICAL RECORD LOCKS BY FILE

Category: N - network

Inp.:

AX = F217h subfn EEh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1284)

ES:DI -> reply buffer (see #1285)

Return: AL = status

reply buffer filled


INT 21 F217 - Novell NetWare v3+ - GET SEMAPHORE INFORMATION

Category: N - network

Inp.:

AX = F217h subfn F2h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1287)

ES:DI -> reply buffer (see #1288)

Return: AL = status

reply buffer filled


INT 21 F217 - Novell NetWare v3+ - MAP DIRECTORY NUMBER TO PATH

Category: N - network

Inp.:

AX = F217h subfn F3h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1289)

ES:DI -> reply buffer (see #1290)

Return: AL = status

reply buffer filled

SeeAlso: AX=F217h/SF=F4h


INT 21 F217 - Novell NetWare v3+ - CONVERT PATH TO DIRECTORY ENTRY

Category: N - network

Inp.:

AX = F217h subfn F4h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1291)

ES:DI -> reply buffer (see #1292)

Return: AL = status

reply buffer filled

SeeAlso: AX=F217h/SF=F3h


INT 21 F217 - Novell NetWare v4 - CLEAR CONNECTION NUMBER

Category: N - network

Inp.:

AX = F217h subfn FEh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #2730)

ES:DI -> reply buffer

Return: AL = status (see #1572 at INT 2F/AX=7A20h/BX=0000h)

reply buffer filled


INT 21 F244 - Novell NetWare - FILE SERVICES - ERASE FILES

Category: N - network

Inp.:

AX = F244h

DS:SI -> request buffer (see #1294)

ES:DI -> reply buffer (ignored???)

Return: AL = status (see #1293)

Note:	this function only marks the file for deletion; use AH=E2h/SF=CEh to

  actually delete all marked files

SeeAlso: AH=13h,AH=41h,AH=E2h/SF=0Bh,AH=E3h/SF=CEh


INT 21 F257 - Novell NetWare v3+ - GET INFORMATION ABOUT FILE OR DIRECTORY

Category: N - network

Inp.:

AX = F257h subfn 06h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1295)

ES:DI -> reply buffer (see #1297)

Return: AL = status

reply buffer filled


INT 21 F258 - Novell NetWare v4+ - GET VOLUME AUDITING STATISTICS

Category: N - network

Inp.:

AX = F258h subfn 01h

CX = length of request buffer in bytes (0005h)

DX = length of reply buffer in bytes (0020h)

DS:SI -> request buffer (see #1298)

ES:DI -> reply buffer (see #1299)

Return: AL = status

reply buffer filled

SeeAlso: AX=F268h/SF=C8h


INT 21 F268 - Novell NetWare v4+ - GET TREE NAME

Category: N - network

Inp.:

AX = F268h subfn 01h

CX = length of request buffer in bytes (0001h)

DX = length of reply buffer in bytes (0064h)

DS:SI -> request buffer (see #1300)

ES:DI -> reply buffer (see #1301)

Return: AL = status

reply buffer filled

SeeAlso: AX=F268h/SF=04h


INT 21 F268 - Novell NetWare v4+ - GET BINDERY CONTEXT

Category: N - network

Inp.:

AX = F268h subfn 04h

CX = length of request buffer in bytes (0001h)

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1302)

ES:DI -> reply buffer (see #1303)

Return: AL = status

reply buffer filled

SeeAlso: AX=F268h/SF=01h,AX=F268h/SF=C8h


INT 21 F268 - Novell NetWare v4+ - NDS LIST PARTITIONS

Category: N - network

Inp.:

AX = F268h subfn 16h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1304)

ES:DI -> reply buffer (see #1305)

Return: AL = status

reply buffer filled

Note:	the length specified in CX must be exactly 13 bytes more than the

  length field at offset 09h in the request buffer for this function

  to be successful

SeeAlso: AX=F268h/SF=35h


INT 21 F268 - Novell NetWare v4+ - NDS GET SERVER NAME AND ADDRESS

Category: N - network

Inp.:

AX = F268h subfn 35h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1306)

ES:DI -> reply buffer (see #1307)

Return: AL = status

reply buffer filled

Note:	the length specified in CX must be exactly 13 bytes more than the

  length field at offset 09h in the request buffer for this function

  to be successful

SeeAlso: AX=F268h/SF=16h


INT 21 F268 - Novell NetWare v4+ - NDS LOGOUT

Category: N - network

Inp.:

AX = F268h subfn 3Dh

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1308)

ES:DI -> reply buffer (see #1309)

Return: AL = status

reply buffer filled


INT 21 F268 - Novell NetWare v4+ - GET DS AUDITING STATISTICS

Category: N - network

Inp.:

AX = F268h subfn C8h

CX = length of request buffer in bytes (0001h)

DX = length of reply buffer in bytes (0020h)

DS:SI -> request buffer (see #1310)

ES:DI -> reply buffer (see #1311)

Return: AL = status

reply buffer filled

SeeAlso: AX=F258h/SF=01h,AX=F268h/SF=01h,AX=F268h/SF=04h


INT 21 F272 - Novell NetWare v4+ - GET FILE SERVER UTC TIME

Category: N - network

Inp.:

AX = F272h

CX = length of request buffer in bytes (0003h)

DX = length of reply buffer in bytes (0064h)

DS:SI -> request buffer (see #1312)

ES:DI -> reply buffer (see #1313)

Return: AL = status

reply buffer filled


INT 21 F27B - Novell NetWare v4+ - GET ROUTER INFO

Category: N - network

Inp.:

AX = F27Bh subfn 33h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1314)

ES:DI -> reply buffer (see #1315)

Return: AL = status

reply buffer filled

SeeAlso: AX=F27Bh/SF=35h


INT 21 F27B - Novell NetWare v4+ - GET KNOWN NETWORKS INFO

Category: N - network

Inp.:

AX = F27Bh subfn 35h

CX = length of request buffer in bytes

DX = length of reply buffer in bytes

DS:SI -> request buffer (see #1316)

ES:DI -> reply buffer (see #1317)

Return: AL = status

reply buffer filled

SeeAlso: AX=F27Bh/SF=33h


INT 21 F2AA - VIRUS - "PcVrsDs" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = F2AAh

Return: AH = AAh if resident

SeeAlso: AH=F1h"VIRUS",AH=F3h"VIRUS"


INT 21 F3-- - Novell NetWare - FILE SERVICES - FILE SERVER FILE COPY

Category: N - network

Inp.:

AH = F3h

ES:DI -> request buffer (see #1318)

Return: AL = status/error code

CX:DX = number of bytes copied

Notes:	this function is supported by Advanced NetWare 2.0+

both source and destination must be on the same file server

SeeAlso: AH=3Ch,AH=3Fh


INT 21 F3-- - DoubleDOS - ADD CHARACTER TO KEYBOARD BUFFER OF CURRENT JOB

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F3h

AL = character

Return: AL = 00h successful

     01h buffer full (128 characters)

SeeAlso: AH=E3h"DoubleDOS",AH=F1h"DoubleDOS",AH=F2h"DoubleDOS"

SeeAlso: AH=F8h"DoubleDOS"


INT 21 F3-- - VIRUS - "Carfield" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = F3h

Return: AX = 0400h if resident

SeeAlso: AH=D5h"Carfield",AX=F2AAh,AH=F7h"VIRUS"


INT 21 F400 - DoubleDOS - INSTALLATION CHECK/PROGRAM STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = F400h

Return: AL = program status

    00h if DoubleDOS not present

    01h if running in visible DoubleDOS partition

    02h if running in the invisible DoubleDOS partition

SeeAlso: AX=E400h,AH=F5h"DoubleDOS"


INT 21 F5-- - DoubleDOS - OTHER PROGRAM STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F5h

Return: AL = program status

    00h no program in other partition

    01h program in other partition is running

    02h program in other partition is suspended

SeeAlso: AH=E5h"DoubleDOS",AX=F400h"DoubleDOS"


INT 21 F7-- - VIRUS - "GP1" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = F7h

Return: AX = 0300h if resident

SeeAlso: AH=F0h"VIRUS",AH=F9h"VIRUS"


INT 21 F8-- - DOS v2.11-2.13 - SET OEM INT 21 HANDLER

Category: D - DOS kernel

Inp.:

AH = F8h

DS:DX -> OEM INT 21 handler for functions F9h to FFh

 FFFFh:FFFFh disables OEM handler

Notes:	this function is known to be supported by Toshiba T1000 ROM MS-DOS

  v2.11, Sanyo MS-DOS v2.11, and TI Professional Computer DOS v2.13

calls to AH=F9h through AH=FFH will return AL=00h if no handler set

handler is called with all registers exactly as set by caller, and

  should exit with IRET

SeeAlso: AH=F9h"OEM"


INT 21 F8-- - DoubleDOS - SET/RESET KEYBOARD CONTROL FLAGS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F8h

AL = program for which to set flags

    00h this program

    01h other program

DX = keyboard control flags (see #1259 at AH=E8h"DoubleDOS")

Return: DX = previous flags

Notes:	disabling Ctrl-PrtSc will allow the program to intercept the keystroke;

  disabling any of the other keystrokes disables them completely

this function is identical to AH=E8h

SeeAlso: AH=E8h"DoubleDOS",AH=F1h"DoubleDOS",AH=F2h"DoubleDOS"

SeeAlso: AH=F3h"DoubleDOS"


INT 21 F9-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = F9h

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=FAh"OEM"


INT 21 F9-- - DoubleDOS - SET TIMESHARING PRIORITY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = F9h

AL = priority

    00h visible program gets 70%, invisible gets 30% (default)

    01h visible program gets 50%, invisible gets 50%

    02h visible program gets 30%, invisible gets 70%

    03h Top program gets 70%, bottom program gets 30%

    04h Top program gets 30%, bottom program gets 70%

    05h get current priority

Return: AL = priority setting

Note:	identical to AH=E9h

SeeAlso: AH=E9h"DoubleDOS",AH=FAh"DoubleDOS",AH=FBh"DoubleDOS"


INT 21 F9-- - VIRUS - "Satans-Bug" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = F9h

Return: AX = AC0Ah if resident

SeeAlso: AH=F7h"VIRUS",AH=FBh"VIRUS",AX=FEDCh"VIRUS"


INT 21 FA-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = FAh

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=F9h"OEM",AH=FBh"OEM"


INT 21 FA-- - DoubleDOS - TURN OFF TASK SWITCHING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = FAh

Return: task switching turned off

SeeAlso: AH=EAh"DoubleDOS",AH=F9h"DoubleDOS",AH=FBh"DoubleDOS"

SeeAlso: INT FA"DoubleDOS"


INT 21 FA-- - PC Tools v7+ VDEFEND, VSAFE, VWATCH - API

undocumented function

Category: v - virus/antivirus

Inp.:

AH = FAh

DX = 5945h

AL = function (00h-02h for VDEFEND, 00h-07h for VSAFE and VWATCH)

Return: varies by function

Note:	this API is identical to the API on INT 13/AH=FAh and INT 16/AH=FAh,

  so it is listed in its entirety only under INT 16/AX=FA00h and

  following

SeeAlso: INT 13/AX=FA00h,INT 16/AX=FA00h


INT 21 FB-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = FBh

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=FAh"OEM",AH=FCh"OEM"


INT 21 FB-- - DoubleDOS - TURN ON TASK SWITCHING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = FBh

Return: task switching turned on

SeeAlso: AH=EBh"DoubleDOS",AH=F9h"DoubleDOS",AH=FAh"DoubleDOS"

SeeAlso: INT FB"DoubleDOS"


INT 21 FB-- - VIRUS - "Cinderella" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = FBh

Return: AH = 00h if resident

SeeAlso: AH=F9h"VIRUS",AX=FB0Ah


INT 21 FB0A - VIRUS - "dBASE" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FB0Ah

Return: AX = 0AFBh if resident

SeeAlso: AH=FBh"VIRUS",AH=FCh"VIRUS"


INT 21 FC-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = FCh

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=FBh"OEM",AH=FDh"OEM"


INT 21 FC-- - DoubleDOS - GET VIRTUAL SCREEN ADDRESS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = FCh

Return: ES = segment of virtual screen

Desc:	Determine the address of the virtual screen to which the program

  should write instead of the actual video memory, so that the

  multitasked programs do not interfere with each other's output.

Notes:	screen address can change if task-switching is on!!

identical to AH=ECh

SeeAlso: AH=ECh"DoubleDOS",INT FC"DoubleDOS"


INT 21 FC-- - VIRUS - "Troi" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = FCh

Return: AL = A5h if resident

SeeAlso: AX=FB0Ah"VIRUS",AH=FDh"VIRUS"


INT 21 FD-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = FDh

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=FCh"OEM",AH=FEh"OEM"


INT 21 FD-- - VIRUS - "Border" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = FDh

Return: AH = 13h if resident

SeeAlso: AH=FCh"VIRUS",AH=FEh"VIRUS"


INT 21 FD12 - Gravis UltraSound - MegaEm/MEGA_EM - INSTALLATION CHECK

Category: s - sound/speech

Inp.:

AX = FD12h

BX = 3457h

Return: AX = 5678h if installed

BX = 1235h if v1.x or v2.x installed

    CL = interrupt vector used by MegaEm (default 81h)

BX = 1237h if v3.x installed

    CL = interrupt vector used by MegaEm (default 81h)

    DX = version number

Program: MegaEm is a protected-mode SoundBlaster, SoundCanvas, and MT-32

  emulator for the Gravis UltraSound

SeeAlso: INT 2F/AX=CD00h/BX=464Fh,INT 7E/AX=00FEh"SBOS"


INT 21 FE-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = FEh

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=FDh"OEM",AH=FFh"OEM"


INT 21 FE-- - DoubleDOS - GIVE AWAY TIME TO OTHER TASKS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = FEh

AL = number of 55ms time slices to give away

Return: returns after giving away time slices

SeeAlso: AH=EEh"DoubleDOS",INT FE"DoubleDOS"


INT 21 FE-- - VIRUS - "483" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = FEh

Return: AH = 00h if resident

SeeAlso: AH=FDh"VIRUS",AX=FE01h


INT 21 FE01 - VIRUS - "Flip" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FE01h

Return: AX = 01FEh if resident

SeeAlso: AH=FEh"VIRUS",AX=FE02h


INT 21 FE02 - VIRUS - "2468"/"Tequila" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FE02h

Return: AX = 01FDh if resident

SeeAlso: AX=FE01h,AX=FE03h,AX=FEDCh"VIRUS"


INT 21 FE03 - VIRUS - "2468"/"Tequila" - DISPLAY VIRUS MESSAGE

Category: v - virus/antivirus

Inp.:

AX = FE03h

SeeAlso: AX=FE02h,AX=FEADh


INT 21 FEAD - VIRUS - "Shifting Objective" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FEADh

Return:	AX = D00Dh if resident

SeeAlso: AX=FE03h,AX=FEDCh"VIRUS"


INT 21 FEDC - PCMag PCMANAGE/DCOMPRES - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = FEDCh

Return: AX = CDEFh if installed

Program: the PCMANAGE/DCOMPRES combination from PC Magazine permits

  infrequently-used files to be compressed to save space and

  transparently expanded when accessed

SeeAlso: AH=DCh,INT 2D/AL=10h"dLite"


INT 21 FEDC - VIRUS - "Black Monday" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FEDCh

Return: AL = DCh if resident

SeeAlso: AX=FE02h,AX=FEFEh


INT 21 FEFE - VIRUS - "CIDER" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FEFEh

Return: SI = 1994h if resident

SeeAlso: AX=FEDCh"VIRUS",AH=FFh"VIRUS"


INT 21 FF-- - DOS v2.11-2.13 - OEM FUNCTION

Category: D - DOS kernel

Inp.:

AH = FFh

Return: AL = 00h if no OEM function handler installed (see AH=F8h"OEM")

SeeAlso: AH=F8h"OEM",AH=FEh"OEM"


INT 21 FF-- - CED (Command EDitor) - INSTALLABLE COMMANDS

Category: K - keyboard enhancers

Inp.:

AH = FFh

AL = subfunction

    00h add installable command

BL = mode

    bit 0 = 1 callable from DOS prompt

    bit 1 = 1 callable from application

DS:SI -> CR-terminated command name

ES:DI -> FAR routine entry point

    01h remove installable command

DS:SI -> CR-terminated command name

    02h reserved, may be used to test for CED installation

Return: CF clear if successful

CF set on error

    AX = error code

01h invalid function

02h command not found (subfunction 01h only)

08h insufficient memory (subfunction 00h only)

0Eh bad data (subfunction 00h only)

AH = FFh if CED not installed

Program: CED is a shareware DOS command-line enhancer by Christopher J. Dunford

SeeAlso: AX=0A00h


INT 21 FF-- - DJ GO32.EXE 80386+ DOS extender - DOS EXTENSIONS

Category: E - DOS extenders

Inp.:

AH = FFh

AL = function

    01h create file

    02h open file

    03h get file statistics

    04h get time of day

    05h set time of day

    06h stat

    07h system

Program: GO32.EXE is a DOS extender included as part of the 80386 port of the

  GNU C/C++ compiler by DJ Delorie and distributed as DJGPP

SeeAlso: INT 10/AH=FFh"GO32"


INT 21 FF-- - DOSED.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AH = FFh

DS:SI -> "DOSED"

ES = 0000h

Return: ES:DI -> "DOSED" if installed

Program: DOSED is a free DOS commandline editor/history buffer by Sverre H.

  Huseby


INT 21 FF-- - VIRUS - "Sunday", "Tumen 0.5", "Hero" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AH = FFh

Return: AH = 00h if "Tumen 0.5" or "Hero" resident

AX = 0400h if "Sunday" resident

SeeAlso: AX=FEDCh"VIRUS",AX=FF0Fh


INT 21 FF-- - Rational Systems DOS/4GW - API

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = function (00h-17h) (see also separate entries below)

DL = subfunction or argument

Return: CF clear if valid function number

    AX = status???

CF set if invalid function

SeeAlso: INT 15/AX=BFDCh


INT 21 FF-- - Rational Systems DOS/4GW - VERSION CHECK???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 00h

DL = ??? (78h seen)

Return: CF clear

EAX = 4734FFFFh (high word is byte-swapped "4G") if DOS/4G installed

Note:	Quarterdeck's DESQview/X X Toolkit library uses this call to determine

  whether the direct-mapped linear 4GB segment's selector is 34h or 38h

SeeAlso: INT 21/AH=FFh"DOS/4GW"


INT 21 FF-- - Rational Systems DOS/4GW - SET ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 02h

DL = ???

Return: CF clear


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 05h

BX = ???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 06h

BX = ???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 07h

BX = ???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 08h

BX = ???

CX = ???

ES = ???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - GET ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 09h

Return: ES:BX -> ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 0Ah

AL = ???

BX = ???

CX = ???

Return: ES = ??? or 0000h


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 0Bh

AL = ???

BX = ???

CX = ???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - GET/SET ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 0Ch

DL = ??? (00h or 01h)

Return: CF clear if successful

    AL = previous value of ???

CF set on error (DL out of range)

    AX = FFFFh


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 0Dh

???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 0Eh

Return: DX:AX -> XBRK structure (see #0382 at INT 15/AX=BF02h)

BX = ???

CX = ???

SeeAlso: INT 15/AX=BF02h


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 0Fh

???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 10h

AL = ???

BX = ???

CX = ???

DI = ???

SI = ???

Return: ???

Note:	among other things, frees two memory blocks via INT 21/AH=49h


INT 21 FF-- - Rational Systems DOS/4GW - NOP

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 11h


INT 21 FF-- - Rational Systems DOS/4GW - EXCHANGE ??? POINTERS

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 12h

DS:SI -> new ???

ES:DI -> new ???

Return: DS:SI -> previous ???

ES:DI -> previous ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 13h

AL = ???

ES = ???

Return: ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 14h

BX = ???

CX = ???

Return: CF clear

    AX = ???

    DX = ???


INT 21 FF-- - Rational Systems DOS/4GW - GET ??? FUNCTIONS

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 15h

Return: CF clear

    DX:AX -> FAR function for ???

    CX:BX -> FAR function for ???

    SI:DI -> FAR function for ???


INT 21 FF-- - Rational Systems DOS/4GW - GET ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 16h

Return: AX = ???


INT 21 FF-- - Rational Systems DOS/4GW - ???

undocumented function

available only in protected mode

Category: E - DOS extenders

Inp.:

AH = FFh

DH = 17h

AL = ???

DL = ???

Return: ???


INT 21 FF00 - TopWare Network OS v5.10+ - GET SYSTEM INFORMATION

Category: N - network

Inp.:

AX = FF00h

CL = what to get

    00h user information (see #1319)

    01h drive mapping (see #1320)

    02h printer server(s)

    05h local DOS drive number

Return: ES:BX -> desired information

Program: TopWare Network Operating System is manufactured by Grand Computer

  Company

Note:	this call is only supported on Workstations, not on the server

SeeAlso: AX=FF04h,INT 2F/AX=FF00h


INT 21 FF00 - Rational Systems DOS/4G - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = FF00h

DX = 0078h

Return: AL <> 00h if installed

    GS = segment of kernel if nonzero

SeeAlso: INT 15/AX=BF02h


INT 21 FF04 - TopWare Network OS v5.10+ - GET/SET DEFAULT FILE PROTECTION ATTRIBS

Category: N - network

Inp.:

AX = FF04h

CL = function

    00h get protections

Return: BH = read attribute

BL = write attribute

    01h set protections

BH = read attribute

BL = write attribute

Note:	this function is supported only on Workstations, not on the server

SeeAlso: AX=FF00h"TopWare"


INT 21 FF0F - FLU_SHOT+ v1.83 - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FF0Fh

Return: AX = 0101h if resident

Program: FLU_SHOT+ is an antivirus/antitrojan program by Ross M. Greenberg and

  Software Concepts Design

Note:	the "PSQR/1720" virus calls this function to determine whether

  FLU_SHOT+ is present

SeeAlso: AH=FFh"VIRUS",AX=FF10h


INT 21 FF10 - VIRUS - "Twins" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FF10h

Return: AL = 07h if resident

SeeAlso: AX=FF0Fh,AX=FFFEh


INT 21 FF80 - TopWare Network OS v5.10+ - SEND MESSAGE

Category: N - network

Inp.:

AX = FF80h

DH = FFh

DL = destination address (FFh for broadcast)

CX = message length (max 2000)

DS:SI -> message to be sent (see #1321)

Return: nothing

Program: TopWare Network Operating System is manufactured by Grand Computer

  Company

Notes:	this function is supported on both Workstations and the server

there is no guarantee that the message will be received correctly, or

  at all, by the destination


INT 21 FF82 - TopWare Network OS v5.10+ - GET STATION ADDRESS

Category: N - network

Inp.:

AX = FF82h

Return: AL = station address

Note:	this function is supported on both Workstations and the server

SeeAlso: AX=FF91h


INT 21 FF8C - TopWare Network OS v5.10+ - GET STATUS OF TopShow/Emulated FUNCTION

Category: N - network

Inp.:

AX = FF8Ch

BL = subfunction

    00h get TopShow status

    FFh get Emulated status

Return: AL = status

    00h not installed

    01h already installed


INT 21 FF8D - TopWare Network OS v5.10+ - CALL TopShow FUNCTION

Category: N - network

Inp.:

AX = FF8Dh

CH = monochrome flag (01h monochrome, 00h not monochrome)

CL = screen mode of station to be viewed (see #1322)

BL = graphic page number for monochrome

Return: AL = status (00h successful, else failed)

SeeAlso: AX=FF8Eh,AX=FFCFh


INT 21 FF8E - TopWare Network OS v5.10+ - CANCEL TopShow FUNCTION

Category: N - network

Inp.:

AX = FF8Eh

Return: AL = 00h (successful, TopShow removed)

SeeAlso: AX=FF8Dh


INT 21 FF91 - TopWare Network OS v5.10+ - GET FILE SERVER STATION NUMBER

Category: N - network

Inp.:

AX = FF91h

Return: AL = station number of file server

SeeAlso: AX=FF82h


INT 21 FF97 - TopWare Network OS v5.10+ - GET MAXIMUM STATION NUMBER (server only)

Category: N - network

Inp.:

AX = FF97h

Return: AL = maximum station number

SeeAlso: AX=FF98h


INT 21 FF98 - TopWare Network OS v5.10+ - GET MAXIMUM FILE NUMBER (server only)

Category: N - network

Inp.:

AX = FF98h

Return: AL = maximum file

SeeAlso: AX=FF97h


INT 21 FF9A - TopWare Network OS v5.10+ - RECEIVE OF USER-DEFINED PACKETS

Category: N - network

Inp.:

AX = FF9Ah

ES:BX -> buffer for user-defined packet (see #1323)

Return: nothing


INT 21 FF9F - TopWare Network OS v5.10+ - ENABLE/DISABLE TopTerm SERVICE

Category: N - network

Inp.:

AX = FF9Fh

CL = new state (00h disable [disregard TopTerm packets], 01h enable)

Return: AL = status (00h successful, FFh failed)

Note:	this function is only supported by Workstations, not the server


INT 21 FFB0 - TopWare Network OS v5.10+ - GET SPOOLER PRINTING PRIORITY

Category: N - network

Inp.:

AX = FFB0h

Return: AL = priority status (see #1324)

SeeAlso: AX=FFB1h


INT 21 FFB1 - TopWare Network OS v5.10+ - SET SPOOLER PRINTING PRIORITY

Category: N - network

Inp.:

AX = FFB1h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CH = new priority (00h normal, 01h high)

Return: nothing

SeeAlso: AX=FFB0h


INT 21 FFB3 - TopWare Network OS v5.10+ - GET DEFAULT START-OF-JOB FORMFEED STATUS

Category: N - network

Inp.:

AX = FFB3h

Return: AL = starting formfeed status (see #1325)

SeeAlso: AX=FFB4h,AX=FFC0h


INT 21 FFB4 - TopWare Network OS v5.10+ - SET DEFAULT START-OF-JOB FORMFEED STATUS

Category: N - network

Inp.:

AX = FFB4h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CH = new formfeed status (00h off, 01h on)

Return: nothing

SeeAlso: AX=FFB3h,AX=FFC1h


INT 21 FFBB - TopWare Network OS v5.10+ - GET PRINTER SERVER STATION ADDRESS

Category: N - network

Inp.:

AX = FFBBh

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

Return: AL = current mapping printer server station number

    00h if local

SeeAlso: AX=FFBCh


INT 21 FFBC - TopWare Network OS v5.10+ - CANCEL TopShow FUNCTION

Category: N - network

Inp.:

AX = FFBCh

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CL = printer server station address or 00h for local printer

Return: AL = status (00h successful, else failed)

SeeAlso: AX=FFBBh


INT 21 FFBD - TopWare Network OS v5.10+ - GET CURRENT AUTOPRINT TIME

Category: N - network

Inp.:

AX = FFBDh

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

Return: AX = current AutoPrint timeout in clock ticks

SeeAlso: AX=FFBEh


INT 21 FFBE - TopWare Network OS v5.10+ - SET AUTOPRINT TIME

Category: N - network

Inp.:

AX = FFBEh

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

BX = timeout in clock ticks

SeeAlso: AX=FFBDh


INT 21 FFBF - TopWare Network OS v5.10+ - GET LOGON USER INFORMATION

Category: N - network

Inp.:

AX = FFBFh

DX:BX -> buffer for logon information (see #1326)

Return: AL = status (00h successful, else failed)

AH = number of logged-in stations


INT 21 FFC0 - TopWare Network OS v5.10+ - GET DEFAULT END-OF-JOB FORMFEED STATUS

Category: N - network

Inp.:

AX = FFC0h

Return: AL = ending formfeed status (see #1327)

SeeAlso: AX=FFB3h,AX=FFC1h


INT 21 FFC1 - TopWare Network OS v5.10+ - SET DEFAULT END-OF-JOB FORMFEED STATUS

Category: N - network

Inp.:

AX = FFC1h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CH = new formfeed status (00h off, 01h on)

Return: nothing

SeeAlso: AX=FFB4h,AX=FFC0h


INT 21 FFC2 - TopWare Network OS v5.10+ - GET DEFAULT COPIES OF SPOOLING FILE

Category: N - network

Inp.:

AX = FFC2h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

Return: AL = default number of copies printed

SeeAlso: AX=FFC7h


INT 21 FFC3 - TopWare Network OS v5.10+ - GET SHARING STATUS OF PRINTER SERVER

Category: N - network

Inp.:

AX = FFC3h

Return: AL = sharing status of printers (see #1328)

    FFh if not a printer server


INT 21 FFC4 - TopWare Network OS v5.10+ - GET/SET LPT PORT ON PRINT SERVER

Category: N - network

Inp.:

AX = FFC4h

BL = subfunction

    00h get

Return: AL = mapped printer port on print server

    01h set

CL = network printer port (00h LPT1, 01h LPT2, 02h LPT3)

CH = local printer (00h LPT1, 01h LPT2, 02h LPT3)


INT 21 FFC6 - TopWare Network OS v5.10+ - SET DEFAULT PRINT FILE HEADER

Category: N - network

Inp.:

AX = FFC6h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CL = header state (00h off, 01h on)

SeeAlso: AX=FFC8h


INT 21 FFC7 - TopWare Network OS v5.10+ - SET DEFAULT PRINT COPIES

Category: N - network

Inp.:

AX = FFC7h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CL = new default number of copies to print

SeeAlso: AX=FFC2h


INT 21 FFC8 - TopWare Network OS v5.10+ - GET DEFAULT PRINT FILE HEADER STATUS

Category: N - network

Inp.:

AX = FFC8h

Return: AL = header status for printers (see #1329)

SeeAlso: AX=FFC6h


INT 21 FFC9 - TopWare Network OS v5.10+ - SET PRINTER SHARING

Category: N - network

Inp.:

AX = FFC9h

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CL = new sharing state (00h off, 01h on)

Return: AL = status (00h successful, FFh not printer server)


INT 21 FFCA - TopWare Network OS v5.10+ - MOVE FILE FROM ONE PRINT SERVER TO ANOTHER

Category: N - network

Inp.:

AX = FFCAh

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CL = original printer server station address

BL = target printer server station address

DS:DX -> filename (12 bytes)

Return: AL = status (00h successful, else failed)

SeeAlso: AX=FFCBh


INT 21 FFCB - TopWare Network OS v5.10+ - DELETE FILE FROM SPOOLING QUEUE

Category: N - network

Inp.:

AX = FFCBh

CH = printer number (00h LPT1, 01h LPT2, 02h LPT3)

CL = printer server station address

DS:DX -> filename (12 bytes)

Return: AL = status (00h successful, else failed)

SeeAlso: AX=FFCAh


INT 21 FFCC - TopWare Network OS v5.10+ - GET PRINT SERVER'S SPOOLING QUEUE STATUS

Category: N - network

Inp.:

AX = FFCCh

CL = printer server station address

BH = start item number of spooling file for print server

BL = number of the item to be retrieved

DS:DX -> buffer for queued file information (see #1330)

Return: AL = status

    00h successful

AH = number of spool files

DS:DX buffer filled

    nonzero failed


INT 21 FFCD - TopWare Network OS v5.10+ - GET STATUS OF ALL PRINT SERVERS

Category: N - network

Inp.:

AX = FFCDh

DS:DX -> buffer for server status (see #1331)

Return: AL = status

    00h successful

AH = number of print servers

    nonzero failed


INT 21 FFCF - TopWare Network OS v5.10+ - CALL TopLook FUNCTION

Category: N - network

Inp.:

AX = FFCFh

DH = page number (0-2, 2 is text mode)

DL = type

    00h look at specific screen

    01h AutoLook on

    FFh AutoLook off

BH = station number wishing to look

BL = station number to be looked at

CH = monochrome flag (01h monochrome, 00h not monochrome)

CL = screen mode (see #1322)

Return: AL = status (00h successful, nonzero failed)

SeeAlso: AX=FF8Dh


INT 21 FFD6 - TopWare Network OS v5.10+ - GET KEYCARD SERIAL NUMBER AND MAX USERS

Category: N - network

Inp.:

AX = FFD6h

ES:BX -> 12-byte buffer for keycard serial number

Return: CX = maximum number of users

ES:BX buffer filled


INT 21 FFD7 - TopWare Network OS v5.10+ - GET NETWORK PROTECTION ATTRIBUTES STATUS

Category: N - network

Inp.:

AX = FFD7h

Return: AL = status (00h disabled, 01h enabled)


INT 21 FFE3 - TopWare Network OS v5.10+ - INITIATE ACCESS TO SPECIFIC PACKET TYPE

Category: N - network

Inp.:

AX = FFE3h

DL = 00h

BX = packet type for Ethernet header (IP = 0800h, ARP = 0806h, etc.)

ES:DI -> receive routine (see #1333)

Return: CF clear if successful

    AX = handle number

CF set on error

    DH = error code (03h,05h,09h,0Ah,11h) (see #1332)

SeeAlso: AX=FFE3h/DL=01h


INT 21 FFE3 - TopWare Network OS v5.10+ - END ACCESS TO SPECIFIC PACKET TYPE

Category: N - network

Inp.:

AX = FFE3h

DL = 01h

BX = handle returned by AX=FFE3h/DL=00h

Return: CF clear if successful

CF set on error

    DH = error code (01h,11h) (see #1332)

Note:	the specified access handle will no longer be valid after this call

SeeAlso: AX=FFE3h/DL=00h


INT 21 FFE3 - TopWare Network OS v5.10+ - SEND PACKET

Category: N - network

Inp.:

AX = FFE3h

DL = 02h

CX = length of data buffer

DS:SI -> buffer containing data

Return: CF clear if successful

CF set on error

    DH = error code (0Ch,11h) (see #1332)


INT 21 FFE3 - TopWare Network OS v5.10+ - GET LOCAL NETWORK INTERFACE ADDRESS

Category: N - network

Inp.:

AX = FFE3h

DL = 03h

ES:DI -> 6-byte buffer for address

SeeAlso: AX=FFE3h/DL=00h


INT 21 FFFE - VIRUS - "08/15"/"Many Fingers" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FFFEh

Return: AX = 0815h if resident

SeeAlso: AX=FF10h,AX=FFFFh


INT 21 FFFF - VIRUS - "Ontario", "Year 1992"/"B1M92" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FFFFh

Return: AX = 0000h if "Ontario" resident

AX = 1992h if "Year 1992"/"B1M92" resident

SeeAlso: AX=FF0Fh,AX=FFFFh/CX=0000h,INT 6B"VIRUS"


INT 21 FFFF - VIRUS - "Revenge" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = FFFFh

CX = 0000h

Return: CX = 0006h if resident

SeeAlso: AX=FFFFh,INT 6B"VIRUS"


INT 22 ---- - DOS 1+ - PROGRAM TERMINATION ADDRESS

Category: D - DOS kernel

Inp.:

Desc:	this vector specifies the address of the routine which is to be given

  control after a program is terminated; it should never be called

  directly, since it does not point at an interrupt handler

Notes:	this vector is restored from the DWORD at offset 0Ah in the PSP during

  termination, and then a FAR JMP is performed to the address in INT 22

normally points at the instruction immediately following INT 21/AH=4Bh

  call which loaded the current program

SeeAlso: INT 20,INT 21/AH=00h,INT 21/AH=31h,INT 21/AH=4Ch

INT 22


INT 22 ---- - COMTROL HOSTESS i/ISA DEBUGGER - CHANGE FIRMWARE DEBUGGING PORT

Category: G - debuggers/debugging tools

Inp.:

AL = new firmware debugging port

Return: ???

SeeAlso: INT 21"COMTROL",INT 23"COMTROL"

INT 22


INT 23 ---- - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER

Category: D - DOS kernel

Inp.:

---DOS 1.x---

Return: AH = 00h abort program

if all registers preserved, restart DOS call

---DOS 2+---

CF clear

Return: all registers preserved

return via RETF with CF set or (MS-DOS 1,DR-DOS) RETF 2 with CF set

    DOS will abort program with errorlevel 0

else (RETF/RETF 2 with CF clear or IRET with CF ignored)

    interrupted DOS call is restarted

Notes:	this interrupt is invoked whenever DOS detects a ^C or ^Break; it

  should never be called directly

MS-DOS 1.25 also invokes INT 23 on a divide overflow (INT 00)

MS-DOS remembers the stack pointer before calling INT 23, and if it is

  not the same on return, pops and discards the top word; this is what

  permits a return with RETF as well as IRET or RETF 2

MS-DOS 2.1+ ignores the returned CF if SP is the same on return as it

  was when DOS called INT 23, so RETF 2 will not terminate the program

Novell DOS 7 always pops a word if CF is set on return, so one should

  not return with RETF 2 and CF set or IRET with the stored flags' CF

  set

any DOS call may safely be made within the INT 23 handler, although

  the handler must check for a recursive invocation if it does

  call DOS

SeeAlso: INT 1B

INT 23


INT 23 ---- - COMTROL HOSTESS i/ISA DEBUGGER - GET CONFIGURATION INFORMATION

Category: G - debuggers/debugging tools

Inp.:

AL = query type

    00h get old config map

Return: AX = old config map

    01h get dual-ported RAM map

Return: BX:AX = dual-ported RAM map

    02h get SCC port map

Return: BX:AX = SCC port map

SeeAlso: INT 22"COMTROL",INT 26"COMTROL"

INT 23


INT 24 ---- - DOS 1+ - CRITICAL ERROR HANDLER

callout or callback (usually hooked rather than called)

Category: D - DOS kernel

Inp.:

Notes:	invoked when a critical (usually hardware) error is encountered by DOS

  (see #1334); should never be called directly

when DOS terminates a program, it copies the previous value of the

  INT 24 vector out of the PSP (see #0603) and into the interrupt

  vector table

SeeAlso: INT 21/AH=95h

INT 24


INT 25 ---- - DOS 1+ - ABSOLUTE DISK READ (except partitions > 32M)

Category: D - DOS kernel

Inp.:

AL = drive number (00h = A:, 01h = B:, etc)

CX = number of sectors to read (not FFFFh)

DX = starting logical sector number (0000h - highest sector on drive)

DS:BX -> buffer for data

Return: CF clear if successful

CF set on error

    AH = status (see #1338)

    AL = error code (same as passed to INT 24 in DI)

    AX = 0207h if more than 64K sectors on drive -- use new-style call

may destroy all other registers except segment registers

Notes:	original flags are left on stack, and must be popped by caller

this call bypasses the DOS filesystem

examination of CPWIN386.CPL indicates that if this call fails with

  error 0408h on an old-style (<32M) call, one should retry the

  call with the high bit of the drive number in AL set

Novell DOS 7 decides whether the old-style or new-style (>32M) version

  of INT 25 must be used solely on the basis of the partition's size,

  thus forcing use of the new-style call even for data in the first

  32M of the partition

BUGS:	DOS 3.1 through 3.3 set the word at ES:[BP+1Eh] to FFFFh if AL is an

  invalid drive number

DR-DOS 3.41 will return with a jump instead of RETF, leaving the

  wrong number of bytes on the stack; use the huge-partition version

  (INT 25/CX=FFFFh) for all partition sizes under DR-DOS 3.41

SeeAlso: INT 13/AH=02h,INT 25/CX=FFFFh,INT 26

INT 25


INT 25 ---- - DOS 3.31+ - ABSOLUTE DISK READ (>32M hard-disk partition)

Category: D - DOS kernel

Inp.:

CX = FFFFh

AL = drive number (0=A, 1=B, etc)

DS:BX -> disk read packet (see #1339)

Return: CF clear if successful

CF set on error

    AH = status (see #1338)

    AL = error code (same as passed to INT 24 in DI)

    AX = 0207h if more than 64K sectors on drive -- use new-style call

may destroy all other registers except segment registers

Notes:	partition is potentially >32M (and requires this form of the call) if

  bit 1 of the device attribute word in the device driver is set

original flags are left on stack, and must be removed by caller

this call bypasses the DOS filesystem

SeeAlso: INT 13/AH=02h,INT 25,INT 26/CX=FFFFh

INT 25


INT 25 CDCD - Stacker - GET DEVICE DRIVER ADDRESS

Category: k - file/disk compression

Inp.:

AX = CDCDh

DS:BX -> buffer for address (see #1340)

CX = 0001h

DX = 0000h

Return: AX = CDCDh if Stacker installed

    DS:BX buffer filled

Note:	not supported by Stacker Anywhere; to obtain the Stacker device

  driver address and to detect drives controlled by all versions

  of Stacker, INT 21/AX=4404h"Stacker" or lookup via the CDS and DPB

  should be preferred (see INT 21/AH=52h)

Stacker Anywhere does not link its built-in device driver into

  the standard device driver chain, but it can be found via CDS/DPB

SeeAlso: INT 21/AX=4404h"Stacker"

INT 25


INT 25 --FF - PC-CACHE.SYS - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AL = FFh

SI = 4358h

Return: SI = 6378h if installed

    CX = segment of device driver PC-CACHE.SYS

    DX = version (major in DH, minor in DL)

Program: PC-CACHE.SYS is a small device driver used by PC-Cache v5.x to obtain

  access to certain disk drivers for devices such as Bernoulli drives

SeeAlso: INT 13/AH=A0h

INT 25


INT 26 ---- - DOS 1+ - ABSOLUTE DISK WRITE (except partitions > 32M)

Category: D - DOS kernel

Inp.:

AL = drive number (00h = A:, 01h = B:, etc)

CX = number of sectors to write (not FFFFh)

DX = starting logical sector number (0000h - highest sector on drive)

DS:BX -> data to write

Return: CF clear if successful

CF set on error

    AH = status (see #1338)

    AL = error code (same as passed to INT 24 in DI)

    AX = 0207h if more than 64K sectors on drive -- use new-style call

may destroy all other registers except segment registers

Notes:	original flags are left on stack, and must be popped by caller

this call bypasses the DOS filesystem, though DOS 5+ invalidates any

  disk buffers referencing sectors which are written with this call

examination of CPWIN386.CPL indicates that if this call fails with

  error 0408h on an old-style (<32M) call, one should retry the

  call with the high bit of the drive number in AL set

Novell DOS 7 decides whether the old-style or new-style (>32M) version

  of INT 26 must be used solely on the basis of the partition's size,

  thus forcing use of the new-style call even for data in the first

  32M of the partition

BUGS:	DOS 3.1 through 3.3 set the word at ES:[BP+1Eh] to FFFFh if AL is an

  invalid drive number

DR-DOS 3.41 will return with a jump instead of RETF, leaving the

  wrong number of bytes on the stack; use the huge-partition version

  (INT 26/CX=FFFFh) for all partition sizes under DR-DOS 3.41

SeeAlso: INT 13/AH=03h,INT 25,INT 26/CX=FFFFh

INT 26


INT 26 ---- - DOS 3.31+ - ABSOLUTE DISK WRITE (>32M hard-disk partition)

Category: D - DOS kernel

Inp.:

CX = FFFFh

AL = drive number (0=A, 1=B, etc)

DS:BX -> disk write packet (see #1343)

Return: CF clear if successful

CF set on error

    AH = status (see #1338)

    AL = error code (same as passed to INT 24 in DI)

    AX = 0207h if more than 64K sectors on drive -- use new-style call

may destroy all other registers except segment registers

Notes:	partition is potentially >32M (and requires this form of the call) if

  bit 1 of the device attribute word in the device driver is set

original flags are left on stack, and must be removed by caller

this call bypasses the DOS filesystem, though DOS 5+ invalidates any

  disk buffers referencing sectors which are written with this call

SeeAlso: INT 13/AH=03h,INT 25/CX=FFFFh,INT 26

INT 26


INT 26 ---- - COMTROL HOSTESS i/ISA DEBUGGER - ENTER/EXIT EXTENDED ADDRESSING MODE

Category: G - debuggers/debugging tools

Inp.:

???

Return: ???

SeeAlso: INT 23"COMTROL",INT 27"COMTROL"

INT 26


INT 27 ---- - DOS 1+ - TERMINATE AND STAY RESIDENT

Category: D - DOS kernel

Inp.:

DX = number of bytes to keep resident (max FFF0h)

CS = segment of PSP

Return: never

Notes:	this is an obsolete call

INT 22, INT 23, and INT 24 are restored from the PSP

does not close any open files

the minimum number of bytes which will remain resident is 110h for

  DOS 2.x and 60h for DOS 3.0+; there is no minimum for DOS 1.x, which

  implements this service in COMMAND.COM rather than the DOS kernel

SeeAlso: INT 21/AH=31h

INT 27


INT 27 ---- - COMTROL HOSTESS i/ISA DEBUGGER - INVOKE REMOTE TURBO DEBUGGER KERNEL

Category: G - debuggers/debugging tools

Inp.:

???

Return: ???

Desc:	invoke a copy of the remote Turbo Debugger kernel on the Hostess i

  controller

SeeAlso: INT 20"COMTROL",INT 26"COMTROL"

INT 27


INT 28 ---- - DOS 2+ - DOS IDLE INTERRUPT

callout or callback (usually hooked rather than called)

Category: D - DOS kernel

Inp.:

SS:SP = top of MS-DOS stack for I/O functions

Return: all registers preserved

Desc:	This interrupt is invoked each time one of the DOS character input

  functions loops while waiting for input.  Since a DOS call is in

  progress even though DOS is actually idle during such input waits,

  hooking this function is necessary to allow a TSR to perform DOS

  calls while the foreground program is waiting for user input.	 The

  INT 28h handler may invoke any INT 21h function except functions

  00h through 0Ch.

Notes:	under DOS 2.x, the critical error flag (the byte immediately after the

  InDOS flag) must be set in order to call DOS functions 50h/51h from

  the INT 28h handler without destroying the DOS stacks.

calls to INT 21/AH=3Fh,40h from within an INT 28 handler may not use a

  handle which refers to CON

at the time of the call, the InDOS flag (see INT 21/AH=34h) is normally

  set to 01h; if larger, DOS is truly busy and should not be reentered

the default handler is an IRET instruction

supported in OS/2 compatibility box

the _MS-DOS_Programmer's_Reference_ for DOS 5.0 incorrectly documents

  this interrupt as superseded

SeeAlso: INT 21/AH=34h,INT 2A/AH=84h,INT 2F/AX=1680h

INT 28


INT 29 ---- - DOS 2+ - FAST CONSOLE OUTPUT

callout or callback (usually hooked rather than called)

Category: D - DOS kernel

Inp.:

AL = character to display

Return: nothing

Notes:	automatically called when writing to a device with bit 4 of its device

  driver header set (see also INT 21/AH=52h)

COMMAND.COM v3.2 and v3.3 compare the INT 29 vector against the INT 20

  vector and assume that ANSI.SYS is installed if the segment is larger

the default handler under DOS 2.x and 3.x simply calls INT 10/AH=0Eh

the default handler under DESQview 2.2 understands the <Esc>[2J

  screen-clearing sequence, calls INT 10/AH=0Eh for all others

SeeAlso: INT 21/AH=52h,INT 2F/AX=0802h,INT 79

INT 29


INT 2A 00-- - NETWORK - INSTALLATION CHECK

Category: N - network

Inp.:

AH = 00h

Return: AH <> 00h if installed

CF set if NetWare v2.15 NetBIOS emulator installed

Note:	supported by PC LAN Program, LAN Manager, LANtastic, NetWare, 10NET,

  etc.

SeeAlso: INT 5C

INT 2A


INT 2A 0000 - AT&T Starlan Extended NetBIOS (var length names) - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 0000h

Return: AH = DDh

SeeAlso: INT 5B

INT 2A


INT 2A 01-- - NETWORK (Microsoft,LANtastic) - EXECUTE NETBIOS REQUEST,NO ERROR RETRY

Category: N - network

Inp.:

AH = 01h

ES:BX -> NCB (see #1894 at INT 5C)

Return: AL = NetBIOS error code

AH = status

    00h no error

    01h error occurred

SeeAlso: AH=04h,AX=0500h,INT 5B,INT 5C"NetBIOS"

INT 2A


INT 2A 02-- - NETWORK (Microsoft) - SET NET PRINTER MODE

Category: N - network

Inp.:

AH = 02h

???

Return: ???

INT 2A


INT 2A 0300 - NETWORK - CHECK DIRECT I/O

Category: N - network

Inp.:

AX = 0300h

DS:SI -> ASCIZ device name (may be full path or only drive specifier--

  must include the colon)

Return: CF clear if direct physical addressing (INT 13,INT 25) permissible

CF set if access via files only

Notes:	do not use direct disk accesses if this function returns CF set or the

  device is redirected (INT 21/AX=5F02h)

use AH=00h to determine whether the network is installed; if not,

  direct physical access is allowed

may take some time to execute, so programs which need to check

  frequently should save the result of the first call

this function is called by the DOS kernel on INT 25 and INT 26

supported by PC LAN Program, LAN Manage, LANtastic, NetWare, 10NET,

  etc.

SeeAlso: INT 13,INT 25,INT 26,INT 21/AX=5F02h

INT 2A


INT 2A 04-- - NETWORK - EXECUTE NetBIOS REQUEST

Category: N - network

Inp.:

AH = 04h

AL = error retry

    00h automatically retry request on errors 09h, 12h, and 21h

  (see #1893 at INT 5C"NetBIOS")

    01h no retry

    02h ???

ES:BX -> Network Control Block (see #1894 at INT 5C"NetBIOS")

Return: AX = 0000h if successful

AH = 01h on error

    AL = error code

Notes:	invokes either INT 5B or INT 5C as appropriate

supported by PC LAN Program, LANtastic, LAN Manager, NetWare, 10NET,

  etc.

NetWare 2.15 NetBIOS emulator returns CF clear if successful, CF set

  on error

PC LAN Program defines any non-zero return value in AH as an error

  indicator for subfunction 00h, and any non-zero return value in AX

  as an error indicator for subfunction 01h

SeeAlso: AH=00h,AH=01h,AX=0500h,INT 5B,INT 5C"NetBIOS"

INT 2A


INT 2A 0500 - NETWORK - GET NETWORK RESOURCE AVAILABILITY

Category: N - network

Inp.:

AX = 0500h

Return: AX reserved

BX = number of network names available

CX = number of network control blocks available

DX = number of network sessions available

Notes:	supported by PC LAN Program, LAN Manager, LANtastic, NetWare, 10NET,

  etc.

the application should call this function before using any network

  resources, and maintain its own count to avoid exceeding the

  network's resource limits

SeeAlso: AH=00h,AH=01h,AH=04h,INT 5C"NetBIOS"

INT 2A


INT 2A 06-- - NETBIOS, LANtastic - NETWORK PRINT-STREAM CONTROL

Category: N - network

Inp.:

AH = 06h

AL = function

    01h set concatenation mode

all printer output put in one job until return to DOS prompt

    02h set truncation mode (default)

printer open/close or BIOS/DOS output switch starts new job

    03h flush printer output and start new print job

Return: CF set on error

    AX = error code

CF clear if successful

Notes:	subfunction 03h is equivalent to Ctrl/Alt/keypad-*

supported by PC LAN Program, LANtastic, NetWare, 10NET, etc.

LANtastic v4.x no longer supports this call

this function sets the printer mode for all redirected printers

SeeAlso: INT 21/AX=5D08h,INT 21/AX=5D09h,INT 2F/AX=1125h

INT 2A


INT 2A 07-- - PC Network v1.00 - RECEIVER.COM - ???

undocumented function

Category: N - network

Inp.:

AH = 07h

???

Return: ???

Program: PC Network is an early networking package which was renamed the

  IBM PC Local Area Network Program (PC LAN Program) as of v1.10

SeeAlso: AH=86h

INT 2A


INT 2A 2001 - MS Networks or NETBIOS - ???

Category: N - network

Inp.:

AX = 2001h

???

Return: ???

Note:	intercepted by DESQview 2.x

INT 2A


INT 2A 2002 - NETWORK - ???

Category: N - network

Inp.:

AX = 2002h

???

Return: ???

Note:	called by MS-DOS 3.30-6.00 APPEND

INT 2A


INT 2A 2003 - NETWORK - ???

Category: N - network

Inp.:

AX = 2003h

???

Return: ???

Note:	called by MS-DOS 3.30-6.00 APPEND

INT 2A


INT 2A 7802 - NETWORK - PC LAN PROG v1.31+ - GET LOGGED ON USER NAME

Category: N - network

Inp.:

AX = 7802h

ES:DI -> 8-byte buffer to be filled

Return: AL = 00h if no user logged on to Extended Services

AL <> 00h if user logged on to Extended Services

    buffer at ES:DI filled with name, padded to 8 chars with blanks.

INT 2A


INT 2A 80-- - NETWORK - BEGIN DOS CRITICAL SECTION

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AH = 80h

AL = critical section number (00h-0Fh) (see #1344)

Notes:	normally hooked to avoid interrupting a critical section, rather than

  called

the handler should ensure that none of the critical sections are

  reentered, usually by suspending a task which attempts to reenter

  an active critical section

the DOS kernel does not invoke critical sections 01h and 02h unless it

  is patched.  DOS 3.1+ contains a zero-terminated list of words

  beginning at offset -11 from the Swappable Data Area

  (see #0892 at INT 21/AX=5D06h); each word contains the offset within

  the DOS data segment of a byte which must be changed from C3h (RET)

  to 50h (POP AX) under DOS 3.x or from 00h to a nonzero value under

  DOS 4.0+ to enable use of critical sections.	For DOS 4.0+, all

  words in this list point at the byte at offset 0D0Ch.

MS Windows patches the DOS kernel's calls to INT 2A/AH=80h-81h into

  far calls to its own handler, and does not reflect the calls back

  to INT 2A unless SYSTEM.INI contains ReflectDOSInt2A=1 or

  ModifyDOSInt2A=0 in the [386Enh] section

Novell NETX does not issue INT 2A/AH=80h and INT 2A/AH=81h calls when

  it intercepts INT 21 calls and processes them itself

SeeAlso: AH=81h,AH=82h,AX=8700h,INT 21/AX=5D06h,INT 21/AX=5D0Bh

INT 2A


INT 2A 81-- - NETWORK - END DOS CRITICAL SECTION

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AH = 81h

AL = critical section number (00h-0Fh) (see #1344)

Notes:	normally hooked rather than called

the handler should reawaken any tasks which were suspended due to an

  attempt to enter the specified critical section

MS Windows patches the DOS kernel's calls to INT 2A/AH=80h-81h into

  far calls to its own handler, and does not reflect the calls back

  to INT 2A unless SYSTEM.INI contains ReflectDOSInt2A=1 or

  ModifyDOSInt2A=0 in the [386Enh] section

SeeAlso: AH=80h,AH=82h,AX=8700h

INT 2A


INT 2A 82-- - NETWORK - END DOS CRITICAL SECTIONS 0 THROUGH 7

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AH = 82h

Notes:	called by the INT 21h function dispatcher for function 0 and functions

  greater than 0Ch except 59h, and on process termination

the handler should reawaken any tasks which were suspended due to an

  attempt to enter one of the critical sections 0 through 7

SeeAlso: AH=81h

INT 2A


INT 2A 84-- - NETWORK - KEYBOARD BUSY LOOP

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AH = 84h

Note:	similar to DOS's INT 28h, called from inside the DOS keyboard input

  loop (i.e. INT 21/AH=07h or INT 21/AH=08h) to allow the network

  software to process requests

SeeAlso: INT 28

INT 2A


INT 2A 86-- - PC Network v1.00 - RECEIVER.COM - ???

undocumented function

Category: N - network

Inp.:

AH = 86h

???

Return: ???

SeeAlso: AH=07h,AH=C4h

INT 2A


INT 2A 8700 - PRINT - BEGIN BACKGROUND PRINTING

callout or callback (usually hooked rather than called)

undocumented function

Category: P - printer enhancements

Inp.:

AX = 8700h

CF clear

Return: CF clear if OK to print in background now

CF set if background printing not allowed at this time

Desc:	used to inform interested programs that PRINT is about to start its

  background processing, and allow those programs to postpone the

  processing if necessary

Notes:	when PRINT gains control and wants to begin printing, it calls this

  function.  If CF is clear on return, PRINT begins its background

  processing, and calls AX=8701h when it is done.  If CF is set on

  return, PRINT will relinquish control immediately, and will not

  call AX=8701h

PCVENUS (an early network shell by IBM and CMU) hooks this call to

  prevent background printing while its own code is active

SeeAlso: AH=80h,AH=81h,AX=8701h

INT 2A


INT 2A 8701 - PRINT - END BACKGROUND PRINTING

callout or callback (usually hooked rather than called)

undocumented function

Category: P - printer enhancements

Inp.:

AX = 8701h

Desc:	used to inform interested programs that PRINT has completed its

  background processing

Note:	called by PRINT after it has performed some background printing; not

  called if AX=8700h returned with CF set.

SeeAlso: AX=8700h

INT 2A


INT 2A 89-- - PC Network v1.00 - RECEIVER.COM - ???

undocumented function

Category: N - network

Inp.:

AH = 89h

AL = ???  (ASSIGN uses 08h)

???

Return: ???

INT 2A


INT 2A 90-- - IBM PC 3270 EMULATION PROGRAM - ???

undocumented function

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 90h

???

Return: ???

Note:	the LANtastic redirector and SERVER.EXE use this function with AL=01h,

  03h-07h,0Ch-11h

INT 2A


INT 2A C2-- - Network - ???

undocumented function

Category: N - network

Inp.:

AH = C2h

AL = subfunction

    07h ???

    08h ???

BX = 0001h

???

Return: ???

Note:	this function is called by the DOS 3.30-6.00 APPEND

INT 2A


INT 2A C4-- - PC Network v1.00 - RECEIVER.COM - ???

undocumented function

Category: N - network

Inp.:

AH = C4h

AL = subfunction

    07h ???

    08h ???

BX = ???

???

Return: ???

SeeAlso: AH=86h

INT 2A


INT 2A D800 - Novell NetWare Lite - SERVER - SET ???

undocumented function

Category: N - network

Inp.:

AX = D800h

Return: nothing

Desc:	sets ??? flag, and sets ??? to initial value

Note:	called by CLIENT

SeeAlso: AX=D801h,AX=D850h

INT 2A


INT 2A D801 - Novell NetWare Lite - SERVER - RESET ???

undocumented function

Category: N - network

Inp.:

AX = D801h

Return: nothing

Desc:	clears the ??? flag set by AX=D800h

Note:	called by CLIENT

SeeAlso: AX=D800h,AX=D850h

INT 2A


INT 2A D850 - Novell NetWare Lite - CLIENT - INCREMENT ???

undocumented function

Category: N - network

Inp.:

AX = D850h

Return: nothing

Desc:	increments an internal byte-sized counter

Note:	this function is intercepted by DV/X 1.10 PEERSERV.DVR and the

  Advanced NetWare 4.0 DOS Requester

SeeAlso: AX=D851h

INT 2A


INT 2A D851 - Novell NetWare Lite - CLIENT - RESET ???

undocumented function

Category: N - network

Inp.:

AX = D851h

Return: nothing

Desc:	resets an internal byte-sized counter to zero

Note:	this function is intercepted by DV/X 1.10 PEERSERV.DVR and the

  Advanced NetWare 4.0 DOS Requester

SeeAlso: AX=D850h

INT 2A


INT 2A D852 - Novell NetWare - DOS Requester v1.03 - ???

undocumented function

Category: N - network

Inp.:

AX = D852h

Return: ???

Note:	calls the NetWare Lite SERVER installation check, and sets ??? pointer

SeeAlso: AX=D853h,INT 2F/AX=D880h

INT 2A


INT 2A D853 - Novell NetWare - DOS Requester v1.03 - ???

undocumented function

Category: N - network

Inp.:

AX = D853h

Return: ???

Note:	clears the pointer set by AX=D852h

SeeAlso: AX=D852h

INT 2A


INT 2A E0-- - PC Network 1.00 - ???

undocumented function

Category: N - network

Inp.:

AH = E0h

AL = subfunction??? (01h,02h, maybe others)

???

Return: ???

Note:	called by PCNet 1.00 NET.COM, a shell program from which others are run

INT 2A


INT 2A FF90 - PC/TCP PREDIR.EXE - ???

Category: N - network

Inp.:

AX = FF90h

Return: AX = ???

Note:	PREDIR.EXE is the network printer redirector included as part of the

  PC/TCP system by FTP Software, Inc.

INT 2A


INT 2A FF91 - PC/TCP PREDIR.EXE - ???

Category: N - network

Inp.:

AX = FF91h

BX = ???

Return: AX = status???

INT 2A


INT 2A FF92 - PC/TCP PREDIR.EXE - INSTALLATION CHECK

Category: N - network

Inp.:

AX = FF92h

Return: AX = 0000h if installed

   BX = redirected printer port (FFFFh if no printers redirected)

   CX = version (CH = major, CL = minor)

Note:	PREDIR.EXE is the network printer redirector included as part of the

  PC/TCP system by FTP Software, Inc.

INT 2A


INT 2A FF93 - PC/TCP PREDIR.EXE - ???

Category: N - network

Inp.:

AX = FF93h

Return: AX = ???

INT 2A


INT 2A FF94 - PC/TCP PREDIR.EXE - ???

Category: N - network

Inp.:

AX = FF94h

BX = ???

CX = ???

DX = ???

Return: AX = ???

Note:	PREDIR.EXE is the network printer redirector included as part of the

  PC/TCP system by FTP Software, Inc.

INT 2A


INT 2A FF95 - PC/TCP PREDIR.EXE - GET CONFIGURATION STRINGS

Category: N - network

Inp.:

AX = FF95h

CX = what to get

    0000h ??? (returned pointer to "C:\COMMAND.COM")

    0001h spooling program

    0002h ???

    0003h spool file name

    0004h swap file name

Return: AX = status

    0000h successful

BX:DX -> ASCIZ configuration string

INT 2A


INT 2A FF96 - PC/TCP PREDIR.EXE - SET PRINT JOB TERMINATION CONFIGURATION

Category: N - network

Inp.:

AX = FF96h

CX = what to set

    0000h ???

    0001h print-on-hotkey state

    0002h print-on-exit state

    0003h print job timeout in clock ticks

    0004h print-on-EOF state

BX = new value (0000h disabled, 0001h enabled except for timeout)

Return: AX = ???

SeeAlso: AX=FF97h

Note:	PREDIR.EXE is the network printer redirector included as part of the

  PC/TCP system by FTP Software, Inc.

INT 2A


INT 2A FF97 - PC/TCP PREDIR.EXE - GET PRINT JOB TERMINATION CONFIGURATION

Category: N - network

Inp.:

AX = FF97h

CX = what to get

    0000h ???

    0001h print-on-hotkey state

    0002h print-on-exit state

    0003h print job timeout in clock ticks

    0004h print-on-EOF state

Return: AX = status

    0000h successful

BX = old value (0000h disabled, 0001 enabled except for timeout)

SeeAlso: AX=FF96h

INT 2A


INT 2B ---- - DOS 2+ - RESERVED

Category: D - DOS kernel

Inp.:

Note:	this vector is not used in DOS versions <= 6.00, and points at an IRET

INT 2B


INT 2C ---- - DOS 2+ - RESERVED

Category: D - DOS kernel

Inp.:

Note:	this vector is not used in DOS versions <= 6.00, and points at an IRET

INT 2C


INT 2C ---- - STARLITE architecture - KERNEL API

Category: O - other operating systems

Inp.:

Note:	STARLITE is an architecture by General Software for a series of MS-DOS

  compatible operating systems (OEM DOS, NETWORK DOS, and SMP DOS) to

  be released in 1991.	The interrupt number is subject to change

  before the actual release.

INT 2C


INT 2C ---- - Cloaking - CALL PROTECTED-MODE PASSALONG CHAIN

available only in real or V86 mode

Category: m - memory management

Inp.:

Notes:	when this interrupt is invoked in V86 mode, RM386 will invoke the first

  in a chain of protected-mode handlers, and will only pass execution

  to the V86-mode INT 2C handler if none of the handlers in the

  passalong chain handle the call instead.  This is the method by which

  the real-mode stub of a cloaked application communicates with the

  protected-mode portion.

the cloaking host calls the passalong chain with EAX=58494E33h ('WIN3')

  when MS Windows starts up and with EAX=334E4958h ('3NIW') when

  Windows shuts down; between these two broadcasts, the additional

  Windows-only Cloaking services are available

this function was first introduced with RM386 (RAM-MAN/386) v6.00, the

  memory manager included in Helix Software's Netroom

SeeAlso: INT 2C/AX=0009h,INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C 0000 - Cloaking - ALLOCATE GDT SELECTOR

available only in protected mode

Category: m - memory management

Inp.:

AX = 0000h

EBX = base address

CL = access mode byte

CH = extended access mode byte (omit limit field)

EDX = segment limit

Return: CF clear if successful

    AX = selector

CF set on error

    AX = error code (see #1345)

Notes:	this INT 2C interface is used by Netroom's DPMI.EXE v3.00

to access extended memory, set the base address to the desired

  physical address plus 400000h (4M)

this function was first introduced with RM386 (RAM-MAN/386) v6.00, the

  memory manager included in Helix Software's Netroom

SeeAlso: AX=0001h,AX=0002h,AX=0003h,AX=0004h,AX=0005h,INT 31/AH=57h,#0377

INT 2C


INT 2C 0001 - Cloaking - FREE GDT SELECTOR

available only in protected mode

Category: m - memory management

Inp.:

AX = 0001h

SI = selector

Return: CF clear if successful

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0000h,INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C 0002 - Cloaking - SET SEGMENT BASE ADDRESS

available only in protected mode

Category: m - memory management

Inp.:

AX = 0002h

SI = selector

EBX = new physical base addres

Return: CF clear if successful

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0000h,AX=0003h,AX=0004h,INT 31/AX=0007h,#0377

INT 2C


INT 2C 0003 - Cloaking - SET SEGMENT LIMIT

available only in protected mode

Category: m - memory management

Inp.:

AX = 0003h

SI = selector

EBX = new limit

Return: CF clear if successful

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0000h,AX=0002h,AX=0004h,INT 31/AX=0008h

INT 2C


INT 2C 0004 - Cloaking - SET SEGMENT ACCESS MODE

available only in protected mode

Category: m - memory management

Inp.:

AX = 0004h

SI = selector

CL = new access mode byte (see #0378)

Return: CF clear if successful

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0000h,AX=0002h,AX=0003h,AX=0005h,INT 31/AX=0009h

INT 2C


INT 2C 0005 - Cloaking - SET SEGMENT EXTENDED ACCESS MODE

available only in protected mode

Category: m - memory management

Inp.:

AX = 0005h

SI = selector

CL = new extended access mode byte (limit field ignored) (see #1346)

Return: CF clear if successful

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0000h,AX=0002h,AX=0003h,AX=0004h,INT 31/AX=0009h

INT 2C


INT 2C 0006 - Cloaking - GET PROTECTED-MODE INTERRUPT VECTOR

available only in protected mode

Category: m - memory management

Inp.:

AX = 0006h

CL = vector (00h-7Fh)

Return: CF clear

DX:EBX -> current interrupt handler

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0007h,INT 31/AX=0204h

INT 2C


INT 2C 0007 - Cloaking - SET PROTECTED-MODE INTERRUPT VECTOR

available only in protected mode

Category: m - memory management

Inp.:

AX = 0007h

CL = vector (00h-7Fh)

DX:EBX -> interrupt handler

Return: CF clear

Notes:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

the IDT entry's type remains unchanged

SeeAlso: AX=0006h,INT 31/AX=0205h

INT 2C


INT 2C 0008 - Cloaking - GET PASSALONG ADDRESS

available only in protected mode

Category: m - memory management

Inp.:

AX = 0008h

Return: CF clear

DX:EBX = current passalong address

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0009h,AX=002Ch,INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C 0009 - Cloaking - SET PASSALONG ADDRESS

available only in protected mode

Category: m - memory management

Inp.:

AX = 0009h

DX:EBX = new value for passalong address (see #1347)

Return: CF clear

Notes:	when an INT 2C instruction is executed in V86 mode, the Cloaking host

  calls the passalong address.	The handler should check whether the

  upcall is of interest to it, and if not it should jump to the old

  passalong address (retrieved with AX=0008h before the handler was

  installed).  The final handler should return with CF clear to cause

  the interrupt to be reflected back to V86 mode if none of the

  passalong handlers is triggered

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0008h,AX=002Dh,INT 2C"CLOAKING"

INT 2C


INT 2C 000A - Cloaking - GET BASE ADDRESS OF GDT SELECTOR

available only in protected mode

Category: m - memory management

Inp.:

AX = 000Ah

SI = selector

Return: CF clear if successful

    EBX = segment base address

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00, the

  memory manager included in Helix Software's Netroom

SeeAlso: AX=0000h,AX=0002h,AX=000Bh

INT 2C


INT 2C 000B - Cloaking - GET SELECTOR LIMIT

available only in protected mode

Category: m - memory management

Inp.:

AX = 000Bh

SI = selector

Return: CF clear if successful

    EBX = segment base address

CF set on error

    AX = error code (see #1345)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=000Ah,INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C ---- - RM386 v6.00 - CLOAKING - RESERVED FOR CLOAKED BIOS USE UNDER WINDOWS

available only in protected mode

Category: m - memory management

Inp.:

AX = function (000Ch-001Fh)

INT 2C


INT 2C 000F - Cloaking v1.01 - "Simulate_Shell_Event"

available only in protected mode

Category: m - memory management

Inp.:

AX = 000Fh

ECX = event code (see #1349)

DX = subfunction for event

EDX high word = boost value (see #1350)

SI:EDI -> completion procedure

Return: CF clear if successful (event scheduled)

CF set on error

Note:	this function is only available while MS Windows is running

SeeAlso: AX=0011h,AX=0012h,INT 2F/AX=1605h,INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C 0011 - Cloaking v1.01 - "Switch_VMs_and_Call_back"

available only in protected mode

Category: m - memory management

Inp.:

AX = 0011h

EBX = handle of VM to be made active

SI:EDI -> 32-bit FAR completion procedure

Return: CF clear if successful (scheduled)

CF set on error

Notes:	this function is only available while MS Windows is running

the completion procedure is called with CF clear if the specified

  VM has been made active, or with CF set on error

SeeAlso: AX=000Fh,AX=0012h

INT 2C


INT 2C 0012 - Cloaking v1.01 - "Query_Current_VM"

available only in protected mode

Category: m - memory management

Inp.:

AX = 0012h

Return: CF clear

EBX = handle of active VM

ESI = handle of system VM

ECX = VM status flags (see #1351)

EDX = shell flags (see #1352)

Note:	this function is only available while MS Windows is running in enhanced

  mode

SeeAlso: AX=000Fh,AX=0011h,AX=0013h

INT 2C


INT 2C 0013 - Cloaking v1.01 - "Issue_System_Modal_Message"

available only in protected mode

Category: m - memory management

Inp.:

AX = 0013h

EDX = message box flags (see #1353)

DS:ECX -> ASCIZ message text

DS:EDI -> ASCIZ caption

Return: CF clear

EAX = response code

Note:	this function is only available while MS Windows is running in enhanced

  mode

SeeAlso: AX=000Fh,AX=0012h

INT 2C


INT 2C 001D - Cloaking v1.01 - GET INT 2C API HANDLER ENTRY POINT

available only in protected mode

Category: m - memory management

Inp.:

AX = 001Dh

Return: CF clear

DX:EBX = selector:offset of Cloaking host INT 2C handler

Desc:	get the Cloaking host's entry point to bypass any other programs

  which may have hooked INT 2C in protected mode

Note:	the returned entry point must be called with a simulated INT, i.e.

  a PUSHD must precede the far call to the handler

SeeAlso: INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C 001E - Cloaking v1.01 - CLEAR CRITICAL SECTION

available only in protected mode

Category: m - memory management

Inp.:

AX = 001Eh

Return: CF clear

Desc:	allow MS Windows to switch to another VM after having prevented it

  by invoking a critical section

SeeAlso: AX=001Fh,INT 15/AX=101Ch,INT 2F/AX=1682h

INT 2C


INT 2C 001F - Cloaking v1.01 - SET CRITICAL SECTION

available only in protected mode

Category: m - memory management

Inp.:

AX = 001Fh

Return: CF clear

Desc:	prevent MS Windows from switching to another VM

SeeAlso: AX=001Eh,INT 15/AX=101Bh,INT 2F/AX=1681h

INT 2C


INT 2C 0020 - Cloaking - GET SIZE OF PROTECTED-MODE STATE

available only in protected mode

Category: m - memory management

Inp.:

AX = 0020h

Return: EAX = number of bytes required for storing state

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0021h,AX=0022h

INT 2C


INT 2C 0021 - Cloaking - SAVE PROTECTED-MODE STATE

available only in protected mode

Category: m - memory management

Inp.:

AX = 0021h

ES:EDI -> buffer for protected-mode state

Return: CF clear

buffer filled

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0020h,AX=0022h

INT 2C


INT 2C 0022 - Cloaking - RESTORE PROTECTED-MODE STATE

available only in protected mode

Category: m - memory management

Inp.:

AX = 0022h

DS:ESI -> buffer containing previously-saved protected-mode state

Return: CF clear if successful

    state restored

CF set on error (invalid buffer contents)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0020h,AX=0021h

INT 2C


INT 2C 0023 - Cloaking - ISSUE PROTECTED-MODE XMS CALL

available only in protected mode

Category: m - memory management

Inp.:

AX = 0023h

Notes:	not currently implemented--NOP in RM386 v6.00

this function was first introduced with RM386 (RAM-MAN/386) v6.00

INT 2C


INT 2C 0024 - Cloaking - SET V86-MODE STACK

available only in protected mode

Category: m - memory management

Inp.:

AX = 0024h

DX:EBX = new value for V86-mode SS:ESP

Return: nothing

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

INT 2C


INT 2C 0025 - Cloaking - CALL V86-MODE PROCEDURE

available only in protected mode

Category: m - memory management

Inp.:

AX = 0025h

DS:EBX -> client register structure (see #1348)

Return: CF clear if successful

    client register structure updated

CF set if no more nested procedure call space available

Notes:	this call uses the V86-mode stack supplied in the client structure, and

  calls the routine specified by CS:IP in the client structure

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0026h,AX=0027h,INT 31/AX=0301h

INT 2C


INT 2C 0026 - Cloaking - CALL V86-MODE INTERRUPT HANDLER

available only in protected mode

Category: m - memory management

Inp.:

AX = 0026h

DS:EBX -> client register structure (see #1348)

CX = interrupt number

Return: CF clear if successful

    client register structure updated

CF set if no more nested procedure call space available

Notes:	this call uses the V86-mode stack supplied in the client structure

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0025h,AX=0027h,INT 31/AX=0300h

INT 2C


INT 2C 0027 - Cloaking - CHAIN TO V86-MODE INTERRUPT HANDLER

available only in protected mode

Category: m - memory management

Inp.:

AX = 0027h

DS:EBX -> client register structure (see #1348)

Return: CF clear if successful

    client register structure updated

CF set if no more nested procedure call space available

Notes:	this call uses the V86-mode stack supplied in the client structure,

  and jumps to the address specified by CS:IP in the client structure

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0025h,AX=0026h

INT 2C


INT 2C 0028 - Cloaking - GET ESP0 FROM TSS

available only in protected mode

Category: m - memory management

Inp.:

AX = 0028h

Return: CF clear

EAX = TSS's ESP0

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00, the

  memory manager included in Helix Software's Netroom

INT 2C


INT 2C 0029 - Cloaking - SET SECONDARY STACK

available only in protected mode

Category: m - memory management

Inp.:

AX = 0029h

DX:EBX = new value for SS:ESP of ring 3 secondary stack

Return: CF clear

Desc:	inform RM386 of the ring 3 interrupt stack location

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

INT 2C


INT 2C 002A - Cloaking - SET 8259 IRQ BASE VECTORS

available only in protected mode

Category: m - memory management

Inp.:

AX = 002Ah

BL = base vector of master interrupt controller

CL = base vector of slave interrupt controller

Notes:	this call merely informs RM386 that the caller has changed the

  interrupt mappings

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: INT 67/AX=DE0Bh

INT 2C


INT 2C 002B - Cloaking - PROTECTED-MODE VIRTUAL DMA SERVICES

available only in protected mode

Category: m - memory management

Inp.:

AX = 002Bh

CH = 81h

CL = subfunction (02h-0Ch)

other registers as appropriate for subfunction

Return: varies by function

CF set on error

Notes:	these functions are equivalent to the INT 4B/AX=81xxh subfunctions

  with the same numbers

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: INT 4B/AX=8102h,INT 4B/AX=810Ch

INT 2C


INT 2C 002C - Cloaking - GET PORT-TRAPPING PASSALONG

available only in protected mode

Category: m - memory management

Inp.:

AX = 002Ch

Return: CF clear

DX:EBX = current I/O trapping passalong address

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0008h,AX=002Dh

INT 2C


INT 2C 002D - Cloaking - SET PORT-TRAPPING PASSALONG

available only in protected mode

Category: m - memory management

Inp.:

AX = 002Dh

DX:EBX = new I/O trapping passalong address (see #1355)

Return: CF clear

Notes:	RM386 calls the passalong address whenever an access to a monitored

  I/O port is attempted; the handler should check whether it is a port

  that it is interested in, and if not call the previous passalong

  address (which was retrieved with AX=002Ch before installing the

  new handler)

this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=0009h,AX=002Ch,INT 67/AX=5DEAh

INT 2C


INT 2C 002E - Cloaking - TRAP I/O PORT

available only in protected mode

Category: m - memory management

Inp.:

AX = 002Eh

DX = port number to trap

Return: CF clear if successful

CF set on error (port out of range or reserved)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=002Fh,AX=0030h

INT 2C


INT 2C 002F - Cloaking - UNTRAP I/O PORT

available only in protected mode

undocumented function

Category: m - memory management

Inp.:

AX = 002Fh

DX = port number for which to cancel trapping

Return: CF clear if successful

CF set on error (port out of range or reserved)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=002Eh,AX=0030h

INT 2C


INT 2C 0030 - Cloaking - GET TRAPPING STATE OF SPECIFIED PORT

available only in protected mode

undocumented function

Category: m - memory management

Inp.:

AX = 0030h

DX = port number

Return: CF clear if successful

   BX = current state (0000h not trapped, 0001h trapped)

CF set on error (port out of range or reserved)

Note:	this function was first introduced with RM386 (RAM-MAN/386) v6.00

SeeAlso: AX=002Eh,AX=002Fh

INT 2C


INT 2C 0031 - RM386 v6.00 - BUG

available only in protected mode

undocumented function

Category: m - memory management

Inp.:

AX = 0031h

Program: RM386 (RAM-MAN/386) is the memory manager included in Helix Software's

  Netroom

Note:	due to a fencepost error, RM386 v6.00 will branch unpredictably if

  invoked with this function

INT 2C


INT 2C 0031 - Cloaking v1.01 - ALLOCATE V86 CALLBACK

available only in protected mode

Category: m - memory management

Inp.:

AX = 0031h

DX:EBX = CS:EIP of protected-mode routine to be invoked by callback

Return: CF clear if successful

    EBX = CS:IP of V86-mode callback handler

CF set on error

SeeAlso: AX=0032h

INT 2C


INT 2C 0032 - Cloaking v1.01 - FREE V86 CALLBACK

available only in protected mode

Category: m - memory management

Inp.:

AX = 0032h

EBX = CS:IP of V86-mode callback handler

Return: CF clear if successful

CF set on error

    AX = error code

0005h invalid callback address

0006h callback already free

SeeAlso: AX=0032h

INT 2C


INT 2C 0033 - Cloaking v1.01 - REGISTER CLOAKING CLIENT

available only in protected mode

Category: m - memory management

Inp.:

AX = 0033h

DS:EDX -> client registration structure (see #1356)

Return: CF clear if successful

CF set on error (linked list corrupt)

SeeAlso: AX=0034h,#1497 at INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2C 0034 - Cloaking v1.01 - UNREGISTER CLOAKING CLIENT

available only in protected mode

Category: m - memory management

Inp.:

AX = 0034h

DS:EDX -> client registration structure (see #1356)

Return: CF clear if successful

CF set on error (linked list corrupt)

Note:	the client must unregister before freeing the XMS block containing

  its registration structure(s)

SeeAlso: AX=0033h,#1497 at INT 2F/AX=4310h"Cloaking"

INT 2C


INT 2D ---- - DOS 2+ - RESERVED

Category: D - DOS kernel

Inp.:

Note:	this vector is not used in DOS versions <= 6.00, and points at an IRET

BUG:	RM386 v6.00-6.02 (as distributed with Helix's Netroom v3.x) contains

  a stack bug in its protected-mode INT 2D handler which causes a crash

  when INT 2D is invoked from V86 mode

INT 2D


INT 2D ---- - ALTERNATE MULTIPLEX INTERRUPT SPECIFICATION (AMIS) [v3.5.1]

Category: t - TSR libraries

Inp.:

AH = multiplex number

AL = function

    00h installation check

Return: AL = 00h if free

AL = FFh if multiplex number in use

    CX = binary version number (CH = major, CL = minor)

    DX:DI -> signature string (see #1357) identifying

    the program using the multiplex number

    01h get entry point

Return: AL = 00h if all API calls via INT 2D

AL = FFh if entry point supported

    DX:BX -> entry point for bypassing interrupt chain

    02h uninstall

DX:BX = return address for successful uninstall (may be

ignored by TSR)

Return: AL = status

    00h not implemented

    01h unsuccessful

    02h can not uninstall yet, will do so when able

    03h safe to remove, but no resident uninstaller

(TSR still enabled)

BX = segment of memory block with resident code

    04h safe to remove, but no resident uninstaller

(TSR now disabled)

BX = segment of memory block with resident code

    05h not safe to remove now, try again later

    FFh successful

return at DX:BX with AX destroyed if successful and

  TSR honors specific return address

    03h request pop-up

Return: AL = status

    00h not implemented or TSR is not a pop-up

    01h can not pop up at this time, try again later

    02h can not pop up yet, will do so when able

    03h already popped up

    04h unable to pop up, user intervention required

BX = standard reason code

    0000h unknown failure

    0001h interrupt chain passes through memory

  which must be swapped out to pop up

    0002h swap-in failed

CX = application's reason code if nonzero

    FFh TSR popped up and was exited by user

BX = return value

    0000h no return value

    0001h TSR unloaded

    0002h-00FFh reserved

    0100h-FFFFh application-dependent

    04h determine chained interrupts

BL = interrupt number (except 2Dh)

Return: AL = status

    00h not implemented

    01h (obsolete) unable to determine

    02h (obsolete) interrupt hooked

    03h (obsolete) interrupt hooked, address returned

DX:BX -> TSR's interrupt BL handler

    04h list of hooked interrupts returned

DX:BX -> interrupt hook list (see #1358)

    FFh interrupt not hooked

Notes:	since INT 2D is known to be hooked, the resident code

  need not test for BL=2Dh (to minimize its size), and

  the return value is therefore undefined in that case.

BL is ignored if the TSR returns AL=04h; in that case,

  the caller needs to scan the return list rather than

  making additional calls to this function.  If the

  return is not 00h or 04h, then the caller must cycle

  through the remaining interrupt numbers it wishes to

  check.

return values 01h thru 03h are disparaged and will be

  removed from the next version of this specification;

  they are included for compatibility with version 3.3,

  though they were probably never used in any

  implementation

    05h get hotkeys

Return: AL = status

    00h not implemented

    FFh supported

DX:BX -> hotkey list (see #1359)

    06h-0Fh reserved for future enhancements

Return: AL = 00h (not implemented)

    other  application-dependent

Notes:	programs should not use fixed multiplex numbers; rather, a program

  should scan all multiplex numbers from 00h to FFh, remembering the

  first unused multiplex in case the program is not yet installed.

  For multiplex numbers which are in use, the program should compare

  the first 16 bytes of the signature string to determine whether it

  is already installed on that multiplex number.  If not previously

  installed, it should use the first free multiplex number.

functions other than 00h are not valid unless a program is installed

  on the selected multiplex number

to be considered fully compliant with version 3.5 of the specification,

  programs must implement at least functions 00h, 02h (no resident

  uninstall code required), and 04h (return value 04h).	 TSRs that

  provide hotkeys with which the user can activate them must also

  implement function 05h.  The absolute minimum fully-compliant

  implementation has an overhead of 64 bytes (80 bytes with function

  05h) plus 22 bytes per hooked interrupt (for the interrupt sharing

  protocol header and hook list entry).

the signature string and description may be used by memory mappers

  to display the installed programs

users of this proposal should adhere to the IBM interrupt sharing

  protocol (see #1363), which will permit removal of TSRs in

  arbitrary order and interrupt handler reordering.  All TSRs

  following this proposal should be removable, though they need not

  keep the code for removing themselves resident; it is acceptable

  for a separate program to perform the removal.

A sample implementation including example TSRs and utility programs

  may be found in a separate package distributed as AMISLnnn.ZIP

  (AMISL091.ZIP as of this writing).

Please let me know if you choose to follow this proposal.  The

  signature and a list of the private API calls you use would be

  appreciated, as well.

SeeAlso: INT 2F

Index:	installation check;Alternate Multiplex Interrupt Specification

Index:	installation check;AMIS|installation check;FASTMOUS

Index:	installation check;SPELLER|installation check;Monitor

Index:	installation check;NOLPT|installation check;NOTE

Index:	installation check;RBkeyswp|installation check;SWITCHAR

Index:	installation check;VGABLANK|installation check;EATMEM

Index:	installation check;RECALL|installation check;XPTR2

Index:	uninstall;Alternate Multiplex Interrupt Specification|uninstall;AMIS

Index:	entry point;Alternate Multiplex Interrupt|entry point;AMIS

INT 2D


INT 2D --10 - RATSR 2.0+ - GET STATUS

Category: N - network

Inp.:

AL = 10h

AH = AMIS multiplex number for RATSR

Return: AL = status

    01h listening (no connection)

    02h receiving	      \

    03h sending	       > station being monitored

    04h initializing receive  /

AH = keyboard lock status (00h unlocked, 01h locked)

Program: RATSR is a utility by James Berry provided with

  RemoteAccess/Professional, a commercial bulletin board system, that

  allows remote control of a station over a network

SeeAlso: INT 2D"AMIS"

INT 2D


INT 2D --10 - dLite 1.0+ - GET PARAMETER BLOCK ADDRESS

Category: d - disk I/O enhancements

Inp.:

AL = 10h

AH = AMIS multiplex number for dLite

Return: CF clear if successful

    ES:BX -> parameter block (see #1365)

CF set on error

Program: dLite is a shareware TSR by Rainer Schuetze which transparently

  expands compressed files when they are read

SeeAlso: AL=11h"dLite",AL=12h"dLite",INT 21/AX=FEDCh"PCMANAGE"

INT 2D


INT 2D --10 - Burnout Plus v3.00 - GET STATE/CONTROL INFORMATION

Category: V - video

Inp.:

AL = 10h

AH = AMIS multiplex number for Burnout Plus

Return: AL = 01h

BX = Burnout Plus status (see #1367)

CX = record of features loaded (see #1368)

ES:DI -> Burnout Plus control structure (see #1369)

Program: Burnout Plus is a DOS screen saver from Cove Software

SeeAlso: INT 14/AX=AA01h,INT 2D"AMIS"

Index:	screen saver;Burnout Plus

INT 2D


INT 2D --10 - Screen Thief v1.00 - FREE HIGH MEMORY BUFFERS

undocumented function

Category: V - video

Inp.:

AL = 10h

AH = AMIS multiplex number for Screen Thief

Return: nothing

Program: Screen Thief is a graphics screen grabber

Note:	releases any code and data stored in EMS, DOS UMBs, or XMS UMBs, but

  does not release the low-memory stub; this may be used to effect a

  partial uninstall if INT 2D/AL=02h fails

SeeAlso: INT D8"Screen Thief"

INT 2D


INT 2D --10 - RAMLIGHT v1.0 - GET MONITORING INFORMATION

undocumented function

Category: i - system info/monitoring

Inp.:

AL = 10h

AH = AMIS multiplex number for RAMLIGHT

Return: ES:BX -> array of fake device driver headers used in monitoring

CX = number of drives being monitored???

INT 2D


INT 2D --10 - DTown Utilities v1.40+ - EXTENDED API INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AL = 10h

Return: AL = FFh

BL = extended API availability (00h no, 01h API is loaded)

SeeAlso: INT 2D/AL=11h"DTown",INT 2D/AL=20h,INT 2D/AL=50h

INT 2D


INT 2D --11 - dLite 1.0+ - CHECK FOR dPressed FILE AND GET ORIGINAL SIZE

Category: d - disk I/O enhancements

Inp.:

AL = 11h

AH = AMIS multiplex number for dLite

BX = file handle

Return: CF clear if successful

    DX:AX = size of uncompressed file

CF set on error (not dPressed file)

SeeAlso: AL=10h"dLite",AL=12h"dLite"

INT 2D


INT 2D --11 - DTown Utilities v1.40+ - UTILITY INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AL = 11h

BL = function

    00h get number of installed utilities

Return: BL = number of utilities

    01h get installed utilities

        DX:DI -> buffer containing one byte for each utility

Return: DX:DI buffer filled with flags (0=no,1=yes) indicating

  whether the corresponding utility is loaded

Return: AL = FFh if supported

Note:	this function is only available if the extended API has been installed

  in the resident portion

SeeAlso: INT 2D/AL=10h"DTown",INT 2D/AL=20h

INT 2D


INT 2D --12 - dLite 1.0+ - CHECK FOR dPressed FILE AND GET COMPRESSED SIZE

Category: d - disk I/O enhancements

Inp.:

AL = 12h

AH = AMIS multiplex number for dLite

BX = file handle

Return: CF clear if successful

    DX:AX = size of compressed file

CF set on error (not dPressed file)

SeeAlso: AL=10h"dLite",AL=11h"dLite"

INT 2D


INT 2D --20 - DTown Utilities v1.40+ - GET POP-UP HANDLER ADDRESS

Category: U - resident utilities

Inp.:

AL = 20h

Return: AL = FFh if available

    DX:DI -> DTU popup-handler

Note:	this function is only available if the extended API has been installed

  in the resident portion

SeeAlso: INT 2D/AL=10h"DTown",INT 2D/AL=21h,INT 2D/AL=50h,INT 2D/AL=51h

INT 2D


INT 2D --21 - DTown Utilities v1.40+ - POP UP

Category: U - resident utilities

Inp.:

AL = 21h

BL = which utility to bring up

    00h active utility

    01h help screen

    0Ah ASCII table

    0Bh memory view

    0Ch CPU status

    0Dh calculator

    0Eh miscellaneous

    0Fh file viewer

    10h disassembler

Return: AL = status

    00h already active

    FFh popped up successfully

BX = 0000h

Note:	this function is only available if the extended API has been installed

  in the resident portion

SeeAlso: INT 2D/AL=10h"DTown",INT 2D/AL=20h,INT 2D/AL=50h

INT 2D


INT 2D --50 - DTown Utilities v1.40+ - MEMORY VIEW SET ADDRESS

Category: U - resident utilities

Inp.:

AL = 50h

CX:DX = new address for start of memory view utility's display

Note:	this function is only available if the extended API has been installed

  in the resident portion

Return: AL = FFh if supported

SeeAlso: INT 2D/AL=10h"DTown",INT 2D/AL=20h,INT 2D/AL=21h,INT 2D/AL=51h

INT 2D


INT 2D --51 - DTown Utilities v1.40+ - MEMORY VIEW SET REFERENCE

Category: U - resident utilities

Inp.:

AL = 51h

BL = reference ("bookmark") number

CX:DX = new address for reference

Return: AL = status

    00h invalid index

    FFh reference set

Note:	this function is only available if the extended API has been installed

  in the resident portion

SeeAlso: INT 2D/AL=10h"DTown",INT 2D/AL=20h,INT 2D/AL=50h

INT 2D


INT 2D --DC - DAISY.SYS - BROADCAST: CHAIN RESCANNED

callout or callback (usually hooked rather than called)

Category: b - vendor-specific BIOS extensions

Inp.:

AL = DCh

AH = AMIS multiplex number for signature 'DAISYCHA' 'INDRIVER'

DL = LPT Port Rescanned

Program: DAISY.SYS is a daisy chain manager for parallel port peripherals

  conforming to the Advanced Parallel Port Committee's daisy chain

  specification.

Desc:	This Broadcast is sent whenever daisy chain IDs are reassigned to

  warn parallel port device drivers that their daisy chain ID may

  have been changed.

Note:	This function is a callout from DAISY.SYS, NOT a call into DAISY.SYS

SeeAlso: INT 17/AX=0200h"Advanced Parallel Port"

INT 2D


INT 2E ---- - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION

undocumented function

Category: l - shells/command interpreters

Inp.:

DS:SI -> commandline to execute (see #1371)

Return: all registers except CS:IP destroyed

AX = status (4DOS v4.0)

   0000h successful

   FFFFh error before processing command (not enough memory, etc)

   other error number returned by command

Notes:	this call allows execution of arbitrary commands (including COMMAND.COM

  internal commands) without loading another copy of COMMAND.COM

if COMMAND.COM is the user's command interpreter, the primary copy

  executes the command; this allows the master environment to be

  modified by issuing a "SET" command, but changes in the master

  environment will not become effective until all programs descended

  from the primary COMMAND.COM terminate

since COMMAND.COM processes the string as if typed from the keyboard,

  the transient portion needs to be present, and the calling program

  must ensure that sufficient memory to load the transient portion can

  be allocated by DOS if necessary

results are unpredictable if invoked by a program run from a batch file

  because this call is not reentrant and COMMAND.COM uses the same

  internal variables when processing a batch file

hooked but ignored by 4DOS v3.0 COMMAND.COM replacement unless SHELL2E

  has been loaded

the MS-DOS 5 Programmer's Reference calls this "Reload Transient"

INT 2E


INT 2E ---- - Windows NT - NATIVE API

undocumented function

available only in protected mode

Category: O - other operating systems

Inp.:

EAX = function number

EDX = address of parameter block

Return: ???

INT 2E


INT 2E ---- - 4DOS v2.x-3.03 SHELL2E.COM - UNINSTALL

Category: l - shells/command interpreters

Inp.:

BX = E22Eh

DS:SI -> zero byte

Return: if successful, SHELL2E terminates itself with INT 21/AH=4Ch

INT 2E


INT 2F ---- - Multiplex - NOTES

Category: - - (none)

Inp.:

AH = identifier of program which is to handle the interrupt

   00h-7Fh reserved for DOS

   B8h-BFh reserved for networks

   C0h-FFh reserved for applications

AL is the function code

   This is a general mechanism for verifying the presence of a TSR and

   communicating with it.  When searching for a free identifier code for AH

   using the installation check (AL=00h), the calling program should set

   BX/CX/DX to 0000h and must not depend on any registers other than CS:IP

   and SS:SP to be valid on return, since numerous programs now use additional

   registers on input and/or output for the installation check.

Notes:	Since the multiplex chain is growing so long, and beginning to

  experience multiplex number collisions, I am proposing an alternate

  multiplex interrupt on INT 2D.  If you decide to use the alternate

  multiplex, please let me know.

DOS and some other programs return values in the flags register, so

  any TSR which chains by calling the previous handler rather than

  jumping to it should ensure that the returned flags are preserved

  and passed back to the original caller

SeeAlso: INT 2D

INT 2F


INT 2F ---- - BMB Compuscience Canada Utilities Interface - INSTALLATION CHECK

Category: t - TSR libraries

Inp.:

AH = xx (dynamically assigned based upon a search for a multiplex

 number which doesn't answer installed)

AL = 00h installation check

ES:DI = EBEBh:BEBEh

Return: AL = 00h not installed

     01h not installed, not OK to install

     FFh installed; if ES:DI was EBEBh:BEBEh on entry, ES:DI will point

 to a string of the form 'MMMMPPPPPPPPvNNNN' where MMMM is a

 short form of the manufacturer's name, PPPPPPPP is a product

 name and NNNN is the product's version number

INT 2F


INT 2F ---- - Ross Wentworth's Turbo Pascal POPUP LIBRARY

Category: t - TSR libraries

Inp.:

AH = programmer-selected multiplex number

AL = function

    00h installation check

Return: AL = FFh if installed

    01h get TSR interrupt vectors

Return: DX:AX -> vector table (see #1372)

    02h get TSR code segment

Return: AX = code segment for all interrupt handlers

    03h call user exit routine and release TSR's memory

    04h get signature string

Return: DX:AX -> counted string containing signature

    05h get TSR's INT 2F handler

Return: DX:AX -> INT 2F handler

    06h enable/disable TSR

BL = new state (00h disabled, 01h enabled)

    07h activate TSR (popup if not disabled)

    08h get hotkeys

BL = which hotkey (00h = hotkey 1, 01h = hotkey 2)

Return: AX = hotkey (AH = keyflags, AL = scancode)

    09h set hotkey

BL = which hotkey (00h = hotkey 1, 01h = hotkey 2)

CX = new hotkey (CH = keyflags, CL = scancode)

    0Ah-1Fh reserved

Index:	installation check;Ross Wentworth POPUP library

Index:	hotkeys;Ross Wentworth POPUP library

INT 2F


INT 2F ---- - CiriSOFT Spanish University of Valladolid TSR's Interface

Category: t - TSR libraries

Inp.:

AH = xx (dynamically assigned based upon a search for a multiplex

 number from C0h to FFh which doesn't answer installed)

AL = 00h installation check

ES:DI = 1492h:1992h

Return: AL = 00h not installed

     01h not installed, not OK to install

     FFh installed; and if ES:DI was 1492h:1992h on entry, ES:DI will

   point to author_name_ver table (see #1373)

AH = FFh

Note:	this interface permits advanced communication with TSRs: it is possible

  to make a generic uninstall utility, advanced TSR relocator programs

  in order to fit fragmented memory areas, etc.

See also: INT 2D"AMIS",INT 2F"Compuscience"

Index:	installation check;CiriSOFT TSR interface

Index:	uninstall;CiriSOFT TSR interface

INT 2F


INT 2F 00-- - DOS 2.x only PRINT.COM - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 00h

???

Return: ???

Notes:	DOS 2.x PRINT.COM does not chain to previous INT 2F handler

values in AH other than 00h or 01h cause PRINT to return the number of

  files in the queue in AH

SeeAlso: AH=01h

INT 2F


INT 2F 00-- - PSPRINT - PRINT JOB CONTROL

undocumented function

Category: P - printer enhancements

Inp.:

AH = 00h

???

Return: ???

INT 2F


INT 2F 0080 - DOS 3.1+ PRINT - GIVE PRINT A TIME SLICE

Category: c - caches/spoolers

Inp.:

AX = 0080h

Return: after PRINT executes

Notes:	PRINT returns AL=01h if AH=00h but AL is not 80h on entry

this function is not supported by the Novell DOS 7 PRINT.COM

INT 2F


INT 2F 00D8 - Personal NetWare - VLM - ???

Category: N - network

Inp.:

AX = 00D8h

???

Return: ???

Note:	hooked by one of the .VLMs loaded by VLM.EXE v1.10, but apparently a

  NOP

INT 2F


INT 2F 01-- - DOS 2.x only PRINT.COM - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AH = 01h

???

Return: ???

Notes:	DOS 2.x PRINT.COM does not chain to previous INT 2F handler

values in AH other than 00h or 01h cause PRINT to return the number of

  files in the queue in AH

SeeAlso: AH=00h

INT 2F


INT 2F 0100 - DOS 3.0+ PRINT - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AX = 0100h

Return: AL = status

    00h not installed

    01h not installed, but not OK to install

    FFh installed

AH = 00h (Novell DOS 7)

SeeAlso: AX=0101h

INT 2F


INT 2F 0100 - PrintCache 3.1 PRINT.COM - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 0100h

SI = 20D6h

DI = 8761h

Return: AX = 00FFh if installed

DI = 0001h if PrintCache's PRINT.COM installed and magic values match

    SI = resident code segment

Program: PrintCache PRINT.COM is a DOS PRINT replacement included in

  LaserTools' PrintCache memory/disk-based print spooler package

Note:	if either of SI or DI differ from the indicated magic values, only AX

  will be modified on return, for compatibility with DOS PRINT

SeeAlso: AX=0101h/SI=20D6h,AX=C000h"PCACHE"

INT 2F


INT 2F 0101 - DOS 3.0+ PRINT - SUBMIT FILE FOR PRINTING

Category: c - caches/spoolers

Inp.:

AX = 0101h

DS:DX -> submit packet (see #1378)

Return: CF clear if successful

    AL = status

01h added to queue

9Eh now printing

CF set on error

    AX = error code (see #1379,#0885 at INT 21/AH=59h)

SeeAlso: AX=0102h

INT 2F


INT 2F 0101 - PrintCache v3.1 PRINT.COM - SUBMIT FILE FOR PRINTING

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 0101h

SI = 20D6h

DI = 8761h

DS:DX -> submit packet (see #1378)

CL = print options

    bit 4: use default options

Return: CF clear if successful

    AL = status

01h added to queue

9Eh now printing

CF set on error

    AX = error code (see #1379)

Program: PrintCache PRINT.COM is a DOS PRINT replacement included in

  LaserTools' PrintCache memory/disk-based print spooler package

Note:	if either SI or DI differs from the indicated magic values on entry,

  PrintCache will use the default print options for the file for

  compatibility with DOS PRINT

SeeAlso: AX=0100h/SI=20D6h,AX=0101h,AX=0107h"PrintCache"

INT 2F


INT 2F 0102 - DOS 3.0+ PRINT - REMOVE FILE FROM PRINT QUEUE

Category: c - caches/spoolers

Inp.:

AX = 0102h

DS:DX -> ASCIZ filename (wildcards allowed)

Return: CF clear if successful

CF set on error

    AX = error code (see #1379)

SeeAlso: AX=0101h,AX=0103h

INT 2F


INT 2F 0103 - DOS 3.0+ PRINT - CANCEL ALL FILES IN PRINT QUEUE

Category: c - caches/spoolers

Inp.:

AX = 0103h

Return: CF clear if successful

CF set on error

    AX = error code (see #1379)

SeeAlso: AX=0102h

INT 2F


INT 2F 0104 - DOS 3.0+ PRINT - FREEZE PRINT QUEUE TO READ JOB STATUS

Category: c - caches/spoolers

Inp.:

AX = 0104h

Return: CF clear if successful

    DX = error count since status last read

    DS:SI -> print queue

CF set on error

    AX = error code (see #1379)

Desc:	get the list of print jobs, temporarily suspending PRINT's activities

  to avoid changing the list while it is being examined

Notes:	the print queue is an array of 64-byte ASCIZ filenames terminated by

  an empty filename; the first name is the file currently being printed

printing is stopped until AX=0105h is called to prevent the queue

  from changing while the filenames are being read

SeeAlso: AX=0101h,AX=0105h

INT 2F


INT 2F 0105 - DOS 3.0+ PRINT - RESTART PRINT QUEUE AFTER STATUS READ

Category: c - caches/spoolers

Inp.:

AX = 0105h

Return: CF clear if successful

CF set on error

    AX = error code (see #1379)

Desc:	restart PRINT's activities once an application finishes examining the

  print queue

SeeAlso: AX=0104h

INT 2F


INT 2F 0106 - DOS 3.3+ PRINT - GET PRINTER DEVICE

Category: c - caches/spoolers

Inp.:

AX = 0106h

Return: CF set if files in print queue

    AX = error code 0008h (queue full)

    DS:SI -> device driver header

CF clear if print queue empty

    AX = 0000h

Desc:	determine which device, if any, PRINT is currently using for output

Notes:	undocumented prior to the release of MS-DOS 5.0

this function can be used to allow a program to avoid printing to the

  printer on which PRINT is currently performing output

SeeAlso: AX=0104h

INT 2F


INT 2F 0107 - PrintCache v3.1 PRINT.COM - SET TRAILING FORM FEEDS

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 0107h

CL bit 0: output form feed between print jobs

Return: AL destroyed

SeeAlso: AX=0100h/SI=20D6h,AX=0101h/SI=20D6h

INT 2F


INT 2F 0200 - PC LAN PROGRAM REDIR/REDIRIFS internal - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 0200h

Return: AL = FFh if installed

Desc:	determine whether the PC LAN Program redirector is installed

SeeAlso: AX=0201h,AX=0203h

INT 2F


INT 2F 0201 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

undocumented function

Category: N - network

Inp.:

AX = 0201h

Return: nothing???

Notes:	this function is called by the DOS 3.3+ PRINT.COM

AX=0202h appears to be the opposite function

these functions are supposedly used to signal opening and closing of

  printers

SeeAlso: AX=0202h

INT 2F


INT 2F 0202 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

undocumented function

Category: N - network

Inp.:

AX = 0202h

???

Return: nothing???

Notes:	this function is called by the DOS 3.3+ PRINT.COM

these functions are supposedly used to signal opening and closing of

  printers

SeeAlso: AX=0201h

INT 2F


INT 2F 0203 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

undocumented function

Category: N - network

Inp.:

AX = 0203h

Return: nothing???

Notes:	this function is called by the DOS 3.3+ PRINT.COM

AX=0204h appears to be the opposite function

these functions are supposedly used to signal opening and closing of

  printers

SeeAlso: AX=0200h,AX=0204h

INT 2F


INT 2F 0204 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

undocumented function

Category: N - network

Inp.:

AX = 0204h

???

Return: nothing???

Notes:	this function is called by the DOS 3.3+ PRINT.COM

AX=0203h appears to be the opposite function

these functions are supposedly used to signal opening and closing of

  printers

SeeAlso: AX=0200h,AX=0203h

INT 2F


INT 2F ---- - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

undocumented function

Category: N - network

Inp.:

AX = 02xxh

???

Return: ???

INT 2F


INT 2F 0500 - DOS 3.0+ CRITICAL ERROR HANDLER - INSTALLATION CHECK

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 0500h

Return: AL = 00h not installed, OK to install

     01h not installed, can't install

     FFh installed

Desc:	determine whether a critical error message override is installed

Note:	this set of functions allows a user program to partially or completely

  override the default critical error handler's message in COMMAND.COM

SeeAlso: AH=05h,INT 24

INT 2F


INT 2F 05-- - DOS 3.0+ CRITICAL ERROR HANDLER - EXPAND ERROR INTO STRING

callout or callback (usually hooked rather than called)

undocumented function

Category: l - shells/command interpreters

Inp.:

AH = 05h

---DOS 3.x---

AL = extended error code (not zero)

---DOS 4.0+ ---

AL = error type

    01h DOS extended error code

    02h parameter error

BX = error code

Return: CF clear if successful

    ES:DI -> ASCIZ error message (read-only)

    AL = completion state

00h message requires completion with device name, drive, etc.

01h message is complete as returned

CF set if error code can't be converted to string

    AX,DI,ES destroyed

other flags corrupted

Notes:	called at start of COMMAND.COM's default critical error handler if

  installed by a user program, allowing partial or complete overriding

  of the default error messages

subfunction 02h is called by many DOS 4 external programs

DR-DOS's COMMAND.COM appends additional info ("0 files copied") to the

  returned string

SeeAlso: AX=0500h,AX=122Eh,INT 24

INT 2F


INT 2F 0600 - DOS 3.0+ ASSIGN - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 0600h

Return: AL = status

    00h not installed

    01h not installed, but not OK to install

    FFh installed

Notes:	ASSIGN is not a TSR in DR-DOS 5.0; it is internally replaced by SUBST

  (see INT 21/AH=52h)

undocumented prior to the release of DOS 5.0

SeeAlso: AX=0601h,INT 21/AH=52h

INT 2F


INT 2F 0601 - DOS 3.0+ ASSIGN - GET DRIVE ASSIGNMENT TABLE

undocumented function

Category: U - resident utilities

Inp.:

AX = 0601h

Return: ES = segment of ASSIGN work area and assignment table

Note:	the 26 bytes starting at ES:0103h specify which drive each of A: to Z:

  is mapped to.	 Initially set to 01h 02h 03h....

SeeAlso: AX=0600h

INT 2F


INT 2F 0800 - DRIVER.SYS support - INSTALLATION CHECK

undocumented function

Category: D - DOS kernel

Inp.:

AX = 0800h

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

Desc:	determine whether the internal support code used by DRIVER.SYS is

  present; it is always present in DOS 3.2+

Note:	supported by DR-DOS 5.0

INT 2F


INT 2F 0801 - DRIVER.SYS support - ADD NEW BLOCK DEVICE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 0801h

DS:DI -> drive data table (see #1386,#1387,#1388)

Return: AX,BX,SI,ES destroyed

Notes:	moves down internal list of drive data tables, copying and modifying

  the drive description flags word for tables referencing same physical

  drive

the data table is appended to the chain of tables

supported by DR-DOS 5.0

SeeAlso: AX=0803h

INT 2F


INT 2F 0802 - DRIVER.SYS support - EXECUTE DEVICE DRIVER REQUEST

undocumented function

Category: D - DOS kernel

Inp.:

AX = 0802h

ES:BX -> device driver request header (see #1382)

Return: request header updated as per requested operation

Notes:	supported by DR-DOS 5.0

DOS 3.2 executes this function on any AL value from 02h through F7h;

  DOS 4.0+ executes this function on AL=02h and AL=04h-F7h

the command codes (see #1380) and structures described below apply

  to all drivers which support the appropriate commands; this call is

  just one of a number of ways in which a device driver request may

  be invoked

this call reportedly leaves one word on the stack under MS-DOS 6.2,

  so the stack pointer should be saved and restored around the call

  to this function

SeeAlso: AX=0800h,AX=0801h,AX=0803h,INT 21/AH=52h,INT 21/AH=99h,INT 21/AH=9Ah

INT 2F


INT 2F 0803 - DOS 4.0+ DRIVER.SYS support - GET DRIVE DATA TABLE LIST

undocumented function

Category: D - DOS kernel

Inp.:

AX = 0803h

Return: DS:DI -> first drive data table in list (see #1386,#1387,#1388)

Note:	not available under DR-DOS 5.0

SeeAlso: AX=0801h

INT 2F


INT 2F 1000 - SHARE - INSTALLATION CHECK

Category: f - file manipulation

Inp.:

AX = 1000h

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

BUGS:	values of AL other than 00h put DOS 3.x SHARE into an infinite loop

  (08E9: OR  AL,AL

   08EB: JNZ 08EB) <- the buggy instruction (DOS 3.3)

values of AL other than described here put PC-DOS 4.00 into the same

  loop (the buggy instructions are the same)

Notes:	supported by OS/2 v1.3+ compatibility box, which always returns AL=FFh

if DOS 4.01 SHARE was automatically loaded, file sharing is in an

  inactive state (due to the undocumented /NC flag used by the autoload

  code) until this call is made

DOS 5+ chains to the previous handler if AL <> 00h on entry

Windows Enhanced mode hooks this call and reports that SHARE is

  installed even when it is not

SeeAlso: AX=1080h,INT 21/AH=52h

INT 2F


INT 2F 1001 - DR-DOS 6.0 SHARE internal - SET ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = 1001h

DX:BX -> ???function

Notes:	this function is also supported by SuperStor, a disk-compression

  program by Addstor which is bundled with DR-DOS 6.0, and the

  Novell DOS 7 DELWATCH.EXE

the default handler for the pointer set by this call under DELWATCH

  simply returns with CF set

SeeAlso: AX=1000h,AX=F800h

INT 2F


INT 2F 1040 - DOS 4 only SHARE internal - ???

undocumented function

Category: f - file manipulation

Inp.:

AX = 1040h

???

Return: AL = FFh???

SeeAlso: AX=1000h

INT 2F


INT 2F 1080 - DOS 4 only SHARE internal - TURN ON FILE SHARING CHECKS

undocumented function

Category: f - file manipulation

Inp.:

AX = 1080h

Return: AL = status

    F0h successful

    FFh checking was already on

Note:	DOS 4.x SHARE has dual functions: FCB support for large (>32M) media

  and file sharing checks.  The undocumented commandline flag /NC can

  be used to disable the sharing code.

SeeAlso: AX=1000h,AX=1081h

INT 2F


INT 2F 1081 - DOS 4 only SHARE internal - TURN OFF FILE SHARING CHECKS

undocumented function

Category: f - file manipulation

Inp.:

AX = 1081h

Return: AL = status

    F0h successful

    FFh checking was already off

Note:	(see AX=1080h)

SeeAlso: AX=1000h,AX=1080h

INT 2F


INT 2F 10FE - Novell DOS 7 DELWATCH.EXE - INSTALLATION CHECK

undocumented function

Category: - - (none)

Inp.:

AX = 10FEh

Return: AX = 20FFh if installed and active

    DX:BX -> private entry point (see #1390)

INT 2F


INT 2F 10FF - Multiplex - DR-DOS 5.0 - ???

undocumented function

Category: O - other operating systems

Inp.:

AX = 10FFh

ES:BX -> ???

Note:	sets pointer in kernel

INT 2F


INT 2F 1100 - NETWORK REDIRECTOR - INSTALLATION CHECK

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 1100h

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

AH = product identifier (ad hoc by various manufacturers)

    00h if PC Tools v8 DRIVEMAP

    42h ('B') for Beame&Whiteside BWNFS v3.0a

    6Eh ('n') for NetWare Lite v1.1 CLIENT

Notes:	this function is called by the DOS 3.1+ kernel

in DOS 4.x only, the 11xx calls are all in IFSFUNC.EXE, not in the

  PC LAN Program redirector; DOS 5+ moves the calls back into the

  redirector

the PC Network 1.00 redirector (renamed to PC LAN Program in 1.1-1.3)

  only supports AL=00h-27h

INT 2F


INT 2F 1100 - MSCDEX (MS CD-ROM Extensions) - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = 1100h subfn DADAh

STACK: WORD DADAh

Return: AL = status

    00h not installed, OK to install

STACK unchanged

    01h not installed, not OK to install

STACK unchanged

    FFh installed

STACK: WORD	ADADh if MSCDEX installed

DADBh if Lotus CD/Networker installed

Note:	although MSCDEX sets the stack word to ADADh on return, any value other

  than DADAh is considered to mean that MSCDEX is already installed;

  Lotus CD/Networker v4+ uses this feature to fool MSCDEX into

  thinking it is already installed when it is in fact CD/Networker

  that is installed

Index:	installation check;Lotus CD/Networker

Index:	Lotus CD/Networker;installation check

INT 2F


INT 2F 1101 - NETWORK REDIRECTOR - REMOVE REMOTE DIRECTORY

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1101h

SS = DOS DS

SDA first filename pointer -> fully-qualified directory name

SDA CDS pointer -> current directory structure for drive with dir

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1103h,AX=1105h,INT 21/AH=3Ah,INT 21/AH=60h

INT 2F


INT 2F 1102 - IFSFUNC.EXE (DOS 4.x only) - REMOVE REMOTE DIRECTORY

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1102h

SS = DOS DS

SDA first filename pointer -> fully-qualified directory name

SDA CDS pointer -> current directory structure for drive with dir

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	appears to be identical to AX=1101h; MS internal documentation calls

  this function "SEQ_RMDIR"

SeeAlso: AX=1101h

INT 2F


INT 2F 1103 - NETWORK REDIRECTOR - MAKE REMOTE DIRECTORY

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1103h

SS = DOS DS

SDA first filename pointer -> fully-qualified directory name

SDA CDS pointer -> current directory structure for drive with dir

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1101h,AX=1105h,INT 21/AH=39h,INT 21/AH=60h

INT 2F


INT 2F 1104 - IFSFUNC.EXE (DOS 4.x only) - MAKE REMOTE DIRECTORY

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1104h

SS = DOS DS

SDA first filename pointer -> fully-qualified directory name

SDA CDS pointer -> current directory structure for drive with dir

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	appears to be identical to AX=1103h

SeeAlso: AX=1103h

INT 2F


INT 2F 1105 - NETWORK REDIRECTOR - CHDIR

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1105h

SS = DOS DS

SDA first filename pointer -> fully-qualified directory name

SDA CDS pointer -> current directory structure for drive with dir

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    CDS updated with new path

Notes:	this function is called by the DOS 3.1+ kernel

directory string in CDS should not have a terminating backslash unless

  the current directory is the root

SeeAlso: AX=1101h,AX=1103h,INT 21/AH=3Bh,INT 21/AH=60h

INT 2F


INT 2F 1106 - NETWORK REDIRECTOR - CLOSE REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1106h

BX = device info word from SFT

ES:DI -> SFT

    SFT DPB field -> DPB of drive containing file

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    SFT updated (redirector must decrement open count, which may be

  done with INT 2F/AX=1208h)

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1116h,AX=1201h,AX=1208h,AX=1227h,INT 21/AH=3Eh

INT 2F


INT 2F 1107 - NETWORK REDIRECTOR - COMMIT REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1107h

ES:DI -> SFT

    SFT DPB field -> DPB of drive containing file

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    all buffers for file flushed

    directory entry updated

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: INT 21/AH=68h,INT 21/AX=5D01h

INT 2F


INT 2F 1108 - NETWORK REDIRECTOR - READ FROM REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1108h

ES:DI -> SFT

    SFT DPB field -> DPB of drive containing file

CX = number of bytes

SS = DOS DS

SDA DTA field -> user buffer

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    CX = number of bytes read (0000h = end of file)

    SFT updated

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1109h,AX=1229h,INT 21/AH=3Fh,INT 21/AX=5D06h

INT 2F


INT 2F 1109 - NETWORK REDIRECTOR - WRITE TO REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1109h

ES:DI -> SFT

    SFT DPB field -> DPB of drive containing file

CX = number of bytes

SS = DOS DS

SDA DTA field -> user buffer

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    CX = number of bytes written

    SFT updated

Notes:	this function is called by the DOS 3.1+ kernel

PrintCache v3.1 PCACHE.EXE intercepts this function for SFTs where

  the Device Driver Header field points at PCACHE, but does not

  intercept any other network redirector functions

SeeAlso: AX=1107h,AX=1108h,INT 21/AH=40h,INT 21/AX=5D06h

INT 2F


INT 2F 110A - NETWORK REDIRECTOR (DOS 3.x only) - LOCK REGION OF FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Ah

BX = file handle

CX:DX = starting offset

SI = high word of size

STACK: WORD low word of size

ES:DI -> SFT

    SFT DPB field -> DPB of drive containing file

SS = DOS DS

Return: CF set on error

   AL = DOS error code (see #0885 at INT 21/AH=59h)

STACK unchanged

Notes:	this function is called by the DOS 3.10-3.31 kernel

the redirector is expected to resolve lock conflicts

SeeAlso: AX=110Bh,INT 21/AH=5Ch

INT 2F


INT 2F 110A - NETWORK REDIRECTOR (DOS 4.0+) - LOCK/UNLOCK REGION OF FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Ah

BL = function

    00h lock

    01h unlock

CX = number of lock/unlock parameters (0001h for DOS 4.0-6.1)

DS:DX -> parameter block (see #1391)

ES:DI -> SFT

    SFT DPB field -> DPB of drive containing file

SS = DOS DS

Return: CF set on error

   AL = DOS error code (see #0885 at INT 21/AH=59h)

Notes:	this function is called by the DOS 4.0+ kernel

the redirector is expected to resolve lock conflicts

SeeAlso: AX=110Bh,INT 21/AH=5Ch

INT 2F


INT 2F 110B - NETWORK REDIRECTOR (DOS 3.x only) - UNLOCK REGION OF FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Bh

BX = file handle

CX:DX = starting offset

SI = high word of size

STACK: WORD low word of size

ES:DI -> SFT for file

    SFT DPB field -> DPB of drive containing file

Return: CF set on error

   AL = DOS error code (see #0885 at INT 21/AH=59h)

STACK unchanged

Note:	this function is called by the DOS 3.1-3.31 kernel; DOS 4.0+ calls AX=110Ah instead

SeeAlso: AX=110Ah,INT 21/AH=5Ch

INT 2F


INT 2F 110C - NETWORK REDIRECTOR - GET DISK INFORMATION

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Ch

ES:DI -> current directory structure for desired drive

Return: CF clear if data valid

    AL = sectors per cluster

    AH = media ID byte

    BX = total clusters

    CX = bytes per sector

    DX = number of available clusters

CF set if data invalid

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: INT 21/AH=36h

INT 2F


INT 2F 110D - IFSFUNC.EXE (DOS 4.x only) - SET REMOTE FILE'S ATTRIBUTES

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Dh

SDA first filename pointer -> name of file

???

Return: ???

Note:	similar to AX=110Eh

SeeAlso: AX=110Eh

INT 2F


INT 2F 110E - NETWORK REDIRECTOR - SET REMOTE FILE'S ATTRIBUTES

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Eh

SS = DOS DS

SDA first filename pointer -> fully-qualified name of file

SDA CDS pointer -> current directory structure for drive with file

STACK: WORD new file attributes

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

STACK unchanged

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=110Dh,AX=110Fh,INT 21/AX=4301h,INT 21/AH=60h

INT 2F


INT 2F 110F - NETWORK REDIRECTOR - GET REMOTE FILE'S ATTRIBUTES AND SIZE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 110Fh

SS = DOS DS

SDA first filename pointer -> fully-qualified name of file

SDA CDS pointer -> current directory structure for drive with file

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    AX = file attributes

    BX:DI = file size

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=110Eh,INT 21/AX=4300h,INT 21/AH=60h

INT 2F


INT 2F 1110 - IFSFUNC.EXE (DOS 4.x only) - GET REMOTE FILE'S ATTRIBUTES AND SIZE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1110h

SDA first filename pointer -> name of file

???

Return: ???

Note:	appears to be similar to AX=110Fh

SeeAlso: AX=110Eh

INT 2F


INT 2F 1111 - NETWORK REDIRECTOR - RENAME REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1111h

SS = DS = DOS DS

SDA first filename pointer = offset of fully-qualified old name

SDA second filename pointer = offset of fully-qualified new name

SDA CDS pointer -> current directory structure for drive with file

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1112h,INT 21/AH=56h,INT 21/AH=60h

INT 2F


INT 2F 1112 - IFSFUNC.EXE (DOS 4.x only) - RENAME REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1112h

SS = DS = DOS DS

SDA first filename pointer -> name of file

???

Return: ???

Note:	similar to AX=1111h

SeeAlso: AX=1111h

INT 2F


INT 2F 1113 - NETWORK REDIRECTOR - DELETE REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1113h

SS = DS = DOS DS

SDA first filename pointer -> fully-qualified filename in DOS DS

SDA CDS pointer -> current directory structure for drive with file

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Notes:	this function is called by the DOS 3.1+ kernel

the filespec may contain wildcards

SeeAlso: AX=1114h,INT 21/AH=41h,INT 21/AH=60h

INT 2F


INT 2F 1114 - IFSFUNC.EXE (DOS 4.x only) - DELETE REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1114h

SDA first filename pointer -> name of file

???

Return: ???

Note:	similar to AX=1113h

SeeAlso: AX=1113h

INT 2F


INT 2F 1115 - IFSFUNC.EXE (DOS 4.x only) - OPEN REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1115h

SS = DOS DS

ES:DI -> SFT ???

???

Return: ???

Note:	similar to AX=1116h

SeeAlso: AX=1116h,AX=112Eh

INT 2F


INT 2F 1116 - NETWORK REDIRECTOR - OPEN EXISTING REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1116h

ES:DI -> uninitialized SFT

SS = DOS DS

SDA first filename pointer -> fully-qualified name of file to open

STACK: WORD file access and sharing modes (see #0627 at INT 21/AH=3Dh)

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    SFT filled (except handle count, which DOS manages itself)

STACK unchanged

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1106h,AX=1115h,AX=1117h,AX=1118h,AX=112Eh,INT 21/AH=3Dh

SeeAlso: INT 21/AH=60h

INT 2F


INT 2F 1117 - NETWORK REDIRECTOR - CREATE/TRUNCATE REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1117h

ES:DI -> uninitialized SFT

SS = DOS DS

SDA first filename pointer -> fully-qualified name of file to open

SDA CDS pointer -> current directory structure for drive with file

STACK: WORD file creation mode

low byte = file attributes (see #0626 at INT 21/AH=3Ch)

high byte = 00h normal create, 01h create new file

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    SFT filled (except handle count, which DOS manages itself)

STACK unchanged

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1106h,AX=1116h,AX=1118h,AX=112Eh,INT 21/AH=3Ch,INT 21/AH=60h

INT 2F


INT 2F 1118 - NETWORK REDIRECTOR - CREATE/TRUNCATE FILE WITHOUT CDS

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1118h

ES:DI -> uninitialized SFT

SS = DOS DS

SDA first filename pointer -> fully-qualified name of file

STACK: WORD file creation mode

low byte = file attributes

high byte = 00h normal create, 01h create new file

Return: ???

STACK unchanged

Note:	this function is called by the DOS 3.1+ kernel when creating a file

  on a drive for which the SDA CDS pointer has offset FFFFh

SeeAlso: AX=1106h,AX=1116h,AX=1117h,AX=112Eh,INT 21/AH=60h

INT 2F


INT 2F 1119 - NETWORK REDIRECTOR - FIND FIRST FILE WITHOUT CDS

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1119h

SS = DS = DOS DS

[DTA] = uninitialized 21-byte findfirst search data

      (see #0839 at INT 21/AH=4Eh)

SDA first filename pointer -> fully-qualified search template

SDA search attribute = attribute mask for search

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    [DTA] = updated findfirst search data

    (bit 7 of first byte must be set)

    [DTA+15h] = standard directory entry for file

Notes:	this function is called by the DOS 3.1+ kernel

DOS 4.x IFSFUNC returns CF set, AX=0003h

SeeAlso: AX=111Ah,AX=111Bh

INT 2F


INT 2F 111A - IFSFUNC.EXE (DOS 4.x only) - FIND NEXT FILE WITHOUT CDS

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 111Ah

???

Return: CF set

    AX = error code (03h for DOS 4.01 IFSFUNC)

Note:	use AX=111Ch for DOS 5+

SeeAlso: AX=1119h,AX=111Ch

INT 2F


INT 2F 111B - NETWORK REDIRECTOR - FINDFIRST

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 111Bh

SS = DS = DOS DS

[DTA] = uninitialized 21-byte findfirst search data

      (see #0839 at INT 21/AH=4Eh)

SDA first filename pointer -> fully-qualified search template

SDA CDS pointer -> current directory structure for drive with file

SDA search attribute = attribute mask for search

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    [DTA] = updated findfirst search data

    (bit 7 of first byte must be set)

    [DTA+15h] = standard directory entry for file

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1119h,AX=111Ch,INT 21/AH=4Eh,INT 21/AH=60h

INT 2F


INT 2F 111C - NETWORK REDIRECTOR - FINDNEXT

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 111Ch

SS = DS = DOS DS

ES:DI -> CDS

ES:DI -> DTA (MSDOS v5.0)

[DTA] = 21-byte findfirst search data

      (see #0839 at INT 21/AH=4Eh)

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    [DTA] = updated findfirst search data

    (bit 7 of first byte must be set)

    [DTA+15h] = standard directory entry for file

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: AX=1119h,AX=111Bh,INT 21/AH=4Fh

INT 2F


INT 2F 111D - NETWORK REDIRECTOR - CLOSE ALL REMOTE FILES FOR PROCESS (ABORT)

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 111Dh

SS = DOS DS

SDA PSP segment field = PSP of terminating process

Return: nothing

Notes:	used when a process is aborted; the process being terminated is

  indicated by the "sharing PSP" field in the SDA (offset 1Ah/1Ch)

this function is called by the DOS 3.1+ kernel

closes all FCBs opened by process

SeeAlso: INT 21/AX=5D04h

INT 2F


INT 2F 111E - NETWORK REDIRECTOR - DO REDIRECTION

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 111Eh

SS = DOS DS

STACK: WORD function to execute

5F00h  get redirection mode

BL = type (03h printer, 04h disk)

Return: BH = state (00h off, 01h on)

5F01h  set redirection mode

BL = type (03h printer, 04h disk)

BH = state (00h off, 01h on)

5F02h  get redirection list entry

BX = redirection list index

DS:SI -> 16-byte local device name buffer

ES:DI -> 128-byte network name buffer

Return: must set user's BX to device type and CX to

stored parameter value, using AX=1218h to get

stack frame address

5F03h  redirect device

BL = device type (see INT 21/AX=5F03h)

CX = stored parameter value

DS:SI -> ASCIZ source device name

ES:DI -> destination ASCIZ network path + ASCIZ passwd

5F04h  cancel redirection

DS:SI -> ASCIZ device name or network path

5F05h  get redirection list extended entry

BX = redirection list index

DS:SI -> buffer for ASCIZ source device name

ES:DI -> buffer for destination ASCIZ network path

Return: BH = status flag

BL = type (03h printer, 04h disk)

CX = stored parameter value

BP = NETBIOS local session number

5F06h  similar to 5F05h???

Return: CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

STACK unchanged

Notes:	this function is called by the DOS 3.1+ kernel on INT 21/AH=5Fh

  (including LAN Manager calls)

the PC Network 1.00 redirector does not support function 5F06h

SeeAlso: INT 21/AX=5F00h,INT 21/AX=5F01h,INT 21/AX=5F02h,INT 21/AX=5F03h

SeeAlso: INT 21/AX=5F04h,INT 21/AX=5F05h,INT 21/AX=5F06h

INT 2F


INT 2F 111F - NETWORK REDIRECTOR - PRINTER SETUP

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 111Fh

STACK: WORD function

5E02h  set printer setup

5E03h  get printer setup

5E04h  set printer mode

5E05h  get printer mode

Return: CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

STACK unchanged

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: INT 21/AX=5E02h,INT 21/AX=5E03h,INT 21/AX=5E04h,INT 21/AX=5E05h

INT 2F


INT 2F 1120 - NETWORK REDIRECTOR - FLUSH ALL DISK BUFFERS

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1120h

DS = DOS DS

???

Return: CF clear (successful)

Notes:	this function is called by the DOS 3.1+ kernel

uses CDS array pointer and LASTDRIVE= entries in DOS list of lists

SeeAlso: INT 21/AH=0Dh,INT 21/AX=5D01h

INT 2F


INT 2F 1121 - NETWORK REDIRECTOR - SEEK FROM END OF REMOTE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1121h

CX:DX = offset (in bytes) from end

ES:DI -> SFT

    SFT DPB field -> DPB of drive with file

SS = DOS DS

Return: CF set on error

    AL = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    DX:AX = new file position

Note:	this function is called by the DOS 3.1+ kernel, but only when seeking

  from the end of a file opened with sharing modes set in such a

  manner that another process is able to change the size of the file

  while it is already open

SeeAlso: AX=1228h,INT 21/AH=42h

INT 2F


INT 2F 1122 - NETWORK REDIRECTOR - PROCESS TERMINATION HOOK

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1122h

SS = DOS DS

DS = PSP of process about to terminate

Return: ???

Notes:	this function is called by the DOS 3.1+ kernel

after calling this function, the kernel calls INT 2F/AX=111Dh

SeeAlso: AX=111Dh,INT 21/AH=4Ch,INT 60/DI=0601h

INT 2F


INT 2F 1123 - NETWORK REDIRECTOR - QUALIFY REMOTE FILENAME

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1123h

DS:SI -> ASCIZ filename to canonicalize

ES:DI -> 128-byte buffer for qualified name

Return: CF set if not resolved

Notes:	called by MS-DOS 3.1+ kernel, but not called by DR-DOS 5.0 unless the

  filename matches the name of a character device

called first when DOS attempts to resolve a filename (unless inside an

  AX=5D00h server call); if this fails, DOS resolves the name locally

SeeAlso: AX=1221h,INT 21/AH=60h

INT 2F


INT 2F 1124 - NETWORK REDIRECTOR - TURN OFF REMOTE PRINTER

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1124h

ES:DI -> SFT

SS = DOS DS

???

Return: CX = ???

Note:	this function is called by the DOS 3.1+ kernel if AX=1126h returns CF set

SeeAlso: AX=1126h

INT 2F


INT 2F 1125 - NETWORK REDIRECTOR - REDIRECTED PRINTER MODE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1125h

STACK: WORD subfunction

5D07h get print stream state

Return: DL = current state

5D08h set print stream state

DL = new state

5D09h finish print job

Return: CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

STACK unchanged

Note:	this function is called by the DOS 3.1+ kernel

SeeAlso: INT 21/AX=5D07h,INT 21/AX=5D08h,INT 21/AX=5D09h

INT 2F


INT 2F 1126 - NETWORK REDIRECTOR - REMOTE PRINTER ECHO ON/OFF

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1126h

ES:DI -> SFT for file handle 4???

SS = DOS DS???

???

Return: CF set on error

Notes:	this function is called by the DOS 3.1+ kernel

called when print echoing (^P, ^PrtSc) changes state and STDPRN has

  bit 11 of the device information word in the SFT set

SeeAlso: AX=1124h

INT 2F


INT 2F 1127 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1127h

Return: CF set

    AX = 0001h (invalid function) (see #0885 at INT 21/AH=59h)

Note:	used by NetWare 4.0 for remote file copy within a server

INT 2F


INT 2F 1128 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1128h

Return: CF set

    AX = 0001h (invalid function) (see #0885 at INT 21/AH=59h)

INT 2F


INT 2F 1129 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1129h

Return: CF set

    AX = 0001h (invalid function) (see #0885 at INT 21/AH=59h)

INT 2F


INT 2F 112A - IFSFUNC.EXE (DOS 4.x only) - CLOSE ALL FILES FOR PROCESS

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 112Ah

DS = DOS DS

???

Return: ???

Note:	does something to each IFS driver

INT 2F


INT 2F 112B - IFSFUNC.EXE (DOS 4.x only) - GENERIC IOCTL

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 112Bh

SS = DOS DS

CX = function/category

DS:DX -> parameter block

STACK: WORD value of AX on entry to INT 21 (440Ch or 440Dh)

???

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	this function is called by the DOS 4.0 kernel

INT 2F


INT 2F 112C - NETWORK REDIRECTOR (DOS 4.0+) - "UPDATE_CB" - ???

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 112Ch

SS = DOS DS

SDA current SFT pointer -> SFT for file

???

Return: CF set on error

Note:	called by SHARE in DOS 5.0-6.0

INT 2F


INT 2F 112D - IFSFUNC.EXE (DOS 4.x only) - EXTENDED ATTRIBUTES

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 112Dh

BL = subfunction (value of AL on INT 21)

    02h get extended attributes

    03h get extended attribute properties

    04h set extended attributes

Return: CF clear

    else ???

Return: CX = ??? (00h or 02h for DOS 4.01)

ES:DI -> SFT for file

SS = DOS DS

Return: DS = DOS DS

Note:	this function is called by the DOS 4.0 kernel on INT 21/AX=5702h,

  INT 21/AX=5703h, and INT 21/AX=5704h

SeeAlso: INT 21/AX=5702h,INT 21/AX=5703h,INT 21/AX=5704h,INT 21/AH=6Eh

INT 2F


INT 2F 112E - NETWORK REDIRECTOR (DOS 4.0+) - EXTENDED OPEN/CREATE FILE

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 112Eh

SS = DS = DOS DS

ES:DI -> uninitialized SFT for file

STACK: WORD file attribute for created/truncated file

low byte = file attributes

high byte = 00h normal create/open, 01h create new file

SDA first filename pointer -> fully-qualified filename

SDA extended file open action = action code

      (see #0966 at INT 21/AX=6C00h)

SDA extended file open mode = open mode for file (see INT 21/AX=6C00h)

Return: CF set on error

    AX = error code

CF clear if successful

    CX = result code

01h file opened

02h file created

03h file replaced (truncated)

    SFT initialized (except handle count, which DOS manages itself)

Note:	this function is called by the DOS 4.0+ kernel

BUG:	this function is not called correctly under some DOS versions

  (at least 5.0 and 6.2):

    the file attribute on the stack is not correct if the action

      code is 11h,

    the result code in CX is not passed back to the application.

SeeAlso: AX=1115h,AX=1116h,AX=1117h,INT 21/AX=6C00h

INT 2F


INT 2F 112F - IFSFUNC.EXE (DOS 4.x only) - IFS IOCTL

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 112Fh

SS = DOS DS

STACK: WORD function in low byte

00h ???

    DS:SI -> Current Directory Structure???

    CL = drive (1=A:)

01h ???

    DS:SI -> ???

    CL = file handle???

02h ???

    DS:SI -> Current Directory Structure???

    DI = ???

    CX = drive (1=A:)

???

Return: CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

CF clear if successful

Note:	this function is called by the DOS 4.0 kernel

SeeAlso: INT 21/AH=6Bh

INT 2F


INT 2F 1130 - IFSFUNC.EXE (DOS 4.x only) - GET IFSFUNC SEGMENT

callout or callback (usually hooked rather than called)

undocumented function

Category: N - network

Inp.:

AX = 1130h

Return: ES = CS of resident IFSFUNC

INT 2F


INT 2F 1180 - LAN Manager Enhanced DOS Services - ???

Category: N - network

Inp.:

AX = 1180h

???

Return: ???

INT 2F


INT 2F 1182 - LAN Manager Enhanced DOS Services - INSTALL SERVICE

Category: N - network

Inp.:

AX = 1182h

???

Return: ???

INT 2F


INT 2F 1184 - LAN Manager Enhanced DOS - ???

Category: N - network

Inp.:

AX = 1184h

???

Return: ???

INT 2F


INT 2F 1186 - LAN Manager Enhanced DOS - DosReadAsynchNmPipe

Category: N - network

Inp.:

AX = 1186h

DS:SI -> stack frame (see #1392)

Return: CF clear if successful

CF set if error

    AX = error code

Note:	LAN Manager enhance mode adds features beyond the standard redirector

  file/printer services

SeeAlso: AX=118Fh,AX=1190h,AX=1191h,INT 21/AX=5F39h

INT 2F


INT 2F 118A - LAN Manager 2.0+ DOS Enhanced ENCRYPT.EXE - STREAM ENCRYPTION SERVICE

Category: N - network

Inp.:

AX = 118Ah

BX = function (0000h or 0001h)

Return: CF clear if successful

    AX = 1100h success

CF set if error

    AX = 0001h, etc.

SeeAlso: AX=1186h,AH=41h,AH=42h,AH=4Bh

INT 2F


INT 2F 118B - LAN Manager Enhanced DOS - ???

Category: N - network

Inp.:

AX = 118Bh

???

Return: ???

INT 2F


INT 2F 118C - LAN Manager Enhanced DOS - ???

Category: N - network

Inp.:

AX = 118Ch

???

Return: ???

INT 2F


INT 2F 118E - LAN Manager Enhanced DOS - ???

Category: N - network

Inp.:

AX = 118Eh

???

Return: ???

INT 2F


INT 2F 118F - LAN Manager Enhanced DOS - DosWriteAsynchNmPipe

Category: N - network

Inp.:

AX = 118Fh

DS:SI -> stack frame (see #1393)

Return: CF clear if successful

CF set if error

    AX = error code

SeeAlso: AX=1186h,AX=1191h,INT 21/AX=5F3Ah

INT 2F


INT 2F 1190 - LAN Manager Enhanced DOS - DosReadAsynchNmPipe2

Category: N - network

Inp.:

AX = 1190h

DS:SI -> stack frame (see #1394)

Return: CF clear if successful

CF set if error

    AX = error code

SeeAlso: AX=1186h,AX=1191h

INT 2F


INT 2F 1191 - LAN Manager Enhanced DOS - DosWriteAsynchNmPipe2

Category: N - network

Inp.:

AX = 1191h

DS:SI -> stack frame (see #1395)

Return: CF clear if successful

CF set if error

    AX = error code

SeeAlso: AX=118Fh,AX=1190h,INT 21/AX=5F3Ah

INT 2F


INT 2F 1200 - DOS 3.0+ internal - INSTALLATION CHECK

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1200h

Return: AL = FFh (for compatibility with other INT 2F functions)

INT 2F


INT 2F 1201 - DOS 3.0+ internal - CLOSE CURRENT FILE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1201h

SS = DOS DS (must be using a DOS internal stack)

SDA current SFT pointer -> SFT of file to close

Return: CF set on error

BX???

CX new reference count of SFT

ES:DI -> SFT for file

SeeAlso: AX=1106h,AX=1227h,INT 21/AH=3Eh

INT 2F


INT 2F 1202 - DOS 3.0+ internal - GET INTERRUPT ADDRESS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1202h

STACK: WORD vector number

Return: ES:BX -> interrupt vector

STACK unchanged

INT 2F


INT 2F 1203 - DOS 3.0+ internal - GET DOS DATA SEGMENT

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1203h

Return: DS = data segment of IBMDOS.COM/MSDOS.SYS

Note:	for DOS prior to version 5.0, the data segment is the same as the code

  segment

INT 2F


INT 2F 1204 - DOS 3.0+ internal - NORMALIZE PATH SEPARATOR

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1204h

STACK: WORD character to normalize

Return: AL = normalized character (forward slash turned to backslash, all

  others unchanged)

ZF set if path separator

STACK unchanged

INT 2F


INT 2F 1205 - DOS 3.0+ internal - OUTPUT CHARACTER TO STANDARD OUTPUT

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1205h

STACK: WORD character to output

Return: STACK unchanged

Note:	can be called only from within DOS

INT 2F


INT 2F 1206 - DOS 3.0+ internal - INVOKE CRITICAL ERROR

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1206h

DI = error code

BP:SI -> device driver header

SS = DOS DS (must be using a DOS internal stack)

STACK: WORD value to be passed to INT 24 in AX

Return: AL = 0-3 for Abort, Retry, Ignore, Fail

STACK unchanged

SeeAlso: INT 24

INT 2F


INT 2F 1207 - DOS 3.0+ internal - MAKE DISK BUFFER MOST-RECENTLY USED

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1207h

DS:DI -> disk buffer

Return: nothing

Desc:	move the indicated buffer to the end of the disk buffer chain (least-

  recently used is first); under DOS 3.3, the buffer is then moved to

  the start of the disk buffer chain if it was marked unused

Notes:	can be called only from within DOS

this function is nearly the same as AX=120Fh

SeeAlso: AX=120Fh

INT 2F


INT 2F 1208 - DOS 3.0+ internal - DECREMENT SFT REFERENCE COUNT

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1208h

ES:DI -> SFT

Return: AX = original value of reference count

Notes:	if the reference count was 1, it is set to FFFFh (since 0 indicates

  that the SFT is not in use).	It is the caller's responsibility to

  set the reference count to zero after cleaning up.

used by network redirectors such as MSCDEX

SeeAlso: AX=1106h

INT 2F


INT 2F 1209 - DOS 3.0+ internal - FLUSH AND FREE DISK BUFFER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1209h

DS:DI -> disk buffer

Return: disk buffer marked unused, contents written to disk if buffer dirty

Note:	can be called only from within DOS

SeeAlso: AX=120Eh,AX=1215h

INT 2F


INT 2F 120A - DOS 3.0+ internal - PERFORM CRITICAL ERROR INTERRUPT

undocumented function

Category: D - DOS kernel

Inp.:

AX = 120Ah

DS = SS = DOS DS (must be using a DOS internal stack)

STACK: WORD extended error code

Return: AL = user response (0=ignore, 1=retry, 2=abort, 3=fail)

CF clear if retry, set otherwise

STACK unchanged

Notes:	can only be called during a DOS function call, as it uses various

  fields in the SDA to set up the registers for the INT 24

reportedly sets current DPB's first root directory sector to 1

SeeAlso: INT 24

INT 2F


INT 2F 120B - DOS 3.0+ internal - SIGNAL SHARING VIOLATION TO USER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 120Bh

ES:DI -> system file table entry for previous open of file

STACK: WORD extended error code (should be 20h--sharing violation)

Return: CF clear if operation should be retried

CF set if operation should not be retried

    AX = error code (20h) (see #0885 at INT 21/AH=59h)

STACK unchanged

Notes:	can only be called during a DOS function call

should only be called if an attempt was made to open an already-open

  file contrary to the sharing rules

invokes INT 24 if SFT file opened via FCB or in compatibility mode with

  inheritance allowed

INT 2F


INT 2F 120C - DOS 3.0+ internal - OPEN DEVICE AND SET SFT OWNER/MODE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 120Ch

SDA current SFT pointer -> SFT for file

DS = DOS DS

SS = DOS DS (must be using a DOS internal stack)

Return: ES, DI, AX destroyed

Notes:	invokes "device open" call on device driver for SFT

changes owner of last-accessed SFT to calling process if it was opened

  via FCB

called by network redirectors such as MSCDEX

INT 2F


INT 2F 120D - DOS 3.0+ internal - GET DATE AND TIME

undocumented function

Category: D - DOS kernel

Inp.:

AX = 120Dh

SS = DOS DS (must be using a DOS internal stack)

Return: AX = current date in packed format (see #0877 at INT 21/AX=5700h)

DX = current time in packed format (see #0876 at INT 21/AX=5700h)

SeeAlso: INT 21/AH=2Ah,INT 21/AH=2Ch

INT 2F


INT 2F 120E - DOS 3.0+ internal - MARK ALL DISK BUFFERS UNREFERENCED

undocumented function

Category: D - DOS kernel

Inp.:

AX = 120Eh

SS = DOS DS (must be using a DOS internal stack)

Return: DS:DI -> first disk buffer

Notes:	clears "referenced" flag on all disk buffers

in DOS 5+, this has become essentially a NOP, invoking the same code

  used by AX=1224h (SHARING DELAY)

SeeAlso: AX=1209h,AX=1210h,INT 21/AH=0Dh

INT 2F


INT 2F 120F - DOS 3.0+ internal - MAKE BUFFER MOST RECENTLY USED

undocumented function

Category: D - DOS kernel

Inp.:

AX = 120Fh

DS:DI -> disk buffer

SS = DOS DS (must be using a DOS internal stack)

Return: DS:DI -> next buffer in buffer list

Desc:	move the indicated buffer to the end of the disk buffer chain (least-

  recently used is first); under DOS 3.3, the buffer is then moved to

  the start of the disk buffer chain if it was marked unused

Note:	this function is the same as AX=1207h except that it returns a

  pointer to the buffer following the specified buffer in the buffer

  chain

SeeAlso: AX=1207h

INT 2F


INT 2F 1210 - DOS 3.0+ internal - FIND UNREFERENCED DISK BUFFER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1210h

DS:DI -> first disk buffer to check

Return: ZF clear if found

    DS:DI -> first unreferenced disk buffer

ZF set if not found

Note:	in DOS 5+, this has become essentially a NOP, invoking the same code

  used by AX=1224h (SHARING DELAY)

SeeAlso: AX=120Eh

INT 2F


INT 2F 1211 - DOS 3.0+ internal - NORMALIZE ASCIZ FILENAME

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1211h

DS:SI -> ASCIZ filename to normalize

ES:DI -> buffer for normalized filename

Return: destination buffer filled with uppercase filename, with slashes turned

to backslashes

SeeAlso: AX=121Eh,AX=1221h

INT 2F


INT 2F 1212 - DOS 3.0+ internal - GET LENGTH OF ASCIZ STRING

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1212h

ES:DI -> ASCIZ string

Return: CX = length of string

SeeAlso: AX=1225h

INT 2F


INT 2F 1213 - DOS 3.0+ internal - UPPERCASE CHARACTER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1213h

STACK: WORD character to convert to uppercase

Return: AL = uppercase character

STACK unchanged

INT 2F


INT 2F 1214 - DOS 3.0+ internal - COMPARE FAR POINTERS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1214h

DS:SI = first pointer

ES:DI = second pointer

Return: ZF set if pointers are equal, ZF clear if not equal

INT 2F


INT 2F 1215 - DOS 3.0+ internal - FLUSH BUFFER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1215h

DS:DI -> disk buffer

SS = DOS DS (must be using a DOS internal stack)

STACK: WORD drives for which to skip buffer

ignore buffer if drive same as high byte, or bytes differ and

  the buffer is for a drive OTHER than that given in low byte

Return: STACK unchanged

Note:	can be called only from within DOS

SeeAlso: AX=1209h

INT 2F


INT 2F 1216 - DOS 3.0+ internal - GET ADDRESS OF SYSTEM FILE TABLE ENTRY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1216h

BX = system file table entry number

Return: CF clear if successful

    ES:DI -> system file table entry

    BX = relative entry number in system file table containing entry

    AX destroyed

CF set if BX greater than FILES=

Note:	supported by DR-DOS 5+

SeeAlso: AX=1220h

INT 2F


INT 2F 1217 - DOS 3.0+ internal - GET CURRENT DIRECTORY STRUCTURE FOR DRIVE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1217h

SS = DOS DS (must be using a DOS internal stack)

STACK: WORD drive (0 = A:, 1 = B:, etc)

Return: CF set on error

    (drive > LASTDRIVE)

CF clear if successful

    DS:SI -> current directory structure for specified drive

STACK unchanged

SeeAlso: AX=1219h

INT 2F


INT 2F 1218 - DOS 3.0+ internal - GET CALLER'S REGISTERS

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1218h

Return: DS:SI -> saved caller's AX,BX,CX,DX,SI,DI,BP,DS,ES (on stack)

Note:	only valid while within DOS

INT 2F


INT 2F 1219 - DOS 3.0+ internal - SET DRIVE???

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1219h

SS = DOS DS (must be using a DOS internal stack)

STACK: WORD drive (0 = default, 1 = A:, etc)

Return: ???

STACK unchanged

Notes:	calls AX=1217h

builds a current directory structure if inside server call

  (INT 21/AX=5D00h)

SeeAlso: AX=1217h,AX=121Fh

INT 2F


INT 2F 121A - DOS 3.0+ internal - GET FILE'S DRIVE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 121Ah

DS:SI -> filename

Return: AL = drive (0 = default, 1 = A:, etc, FFh = invalid)

DS:SI -> filename without leading X: (if present)

SeeAlso: INT 21/AH=19h,INT 21/AH=60h

INT 2F


INT 2F 121B - DOS 3.0+ internal - SET YEAR/LENGTH OF FEBRUARY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 121Bh

CL = year - 1980

Return: AL = number of days in February

Note:	requires DS to be set to the DOS data segment

SeeAlso: INT 21/AH=2Bh

INT 2F


INT 2F 121C - DOS 3.0+ internal - CHECKSUM MEMORY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 121Ch

DS:SI -> start of memory to checksum

CX = number of bytes

DX = initial checksum

SS = DOS DS (must be using a DOS internal stack)

Return: AX, CX destroyed

DX = checksum

DS:SI -> first byte after checksummed range

Notes:	used by DOS to determine day count since 1/1/80 given a date

supported by DR-DOS 5.0+

SeeAlso: AX=121Dh

INT 2F


INT 2F 121D - DOS 3.0+ internal - SUM MEMORY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 121Dh

DS:SI -> memory to add up

CX = 0000h

DX = limit

Return: AL = byte which exceeded limit

CX = number of bytes before limit exceeded

DX = remainder after adding first CX bytes

DS:SI -> byte beyond the one which exceeded the limit

Notes:	used by DOS to determine year or month given day count since 1/1/80

supported by DR-DOS 5.0+

SeeAlso: AX=121Ch

INT 2F


INT 2F 121E - DOS 3.0+ internal - COMPARE FILENAMES

undocumented function

Category: D - DOS kernel

Inp.:

AX = 121Eh

DS:SI -> first ASCIZ filename

ES:DI -> second ASCIZ filename

Return: ZF set if filenames equivalent, ZF clear if not

Note:	supported by DR-DOS 5.0+

SeeAlso: AX=1211h,AX=1221h

INT 2F


INT 2F 121F - DOS 3.0+ internal - BUILD CURRENT DIRECTORY STRUCTURE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 121Fh

SS = DOS DS (must be using a DOS internal stack)

STACK: WORD drive letter

Return: ES:DI -> current directory structure (will be overwritten by next call)

STACK unchanged

INT 2F


INT 2F 1220 - DOS 3.0+ internal - GET JOB FILE TABLE ENTRY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1220h

BX = file handle

Return: CF set on error

    AL = 6 (invalid file handle)

CF clear if successful

    ES:DI -> JFT entry for file handle in current process

Notes:	the byte pointed at by ES:DI contains the number of the SFT for the

  file handle, or FFh if the handle is not open

supported by DR-DOS 5.0+

SeeAlso: AX=1216h,AX=1229h

INT 2F


INT 2F 1221 - DOS 3.0+ internal - CANONICALIZE FILE NAME

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1221h

DS:SI -> file name to be fully qualified

ES:DI -> 128-byte buffer for resulting canonical file name

SS = DOS DS (must be using a DOS internal stack)

Return: (see INT 21/AH=60h)

Note:	identical to INT 21/AH=60h

SeeAlso: AX=1123h,INT 21/AH=60h

INT 2F


INT 2F 1222 - DOS 3.0+ internal - SET EXTENDED ERROR INFO

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1222h

SS = DOS data segment

SS:SI -> 4-byte records

BYTE	error code, FFh = last record

BYTE	error class, FFh = don't change

BYTE	suggested action, FFh = don't change

BYTE	error locus, FFh = don't change

SDA error code set

Return: SI destroyed

SDA error class, error locus, and suggested action fields set

Note:	can be called only from within DOS

SeeAlso: AX=122Dh,INT 21/AH=59h,INT 21/AX=5D0Ah

INT 2F


INT 2F 1223 - DOS 3.0+ internal - CHECK IF CHARACTER DEVICE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1223h

DS = DOS DS

SS = DOS DS (must be using a DOS internal stack)

SDA+218h (DOS 3.10-3.30) = eight-character blank-padded name

SDA+22Bh (DOS 4.0-6.0) = eight-character blank-padded name

Return: CF set if no character device by that name found

CF clear if found

    BH = low byte of device attribute word

Note:	can only be called from within DOS

SeeAlso: INT 21/AX=5D06h,INT 21/AX=5D0Bh

INT 2F


INT 2F 1224 - DOS 3.0+ internal - SHARING RETRY DELAY

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1224h

SS = DOS DS (must be using a DOS internal stack)

Return: after delay set by INT 21/AX=440Bh, unless in server call

  (INT 21/AX=5D00h)

Note:	delay is dependent on the processor speed, and is skipped entirely if

  inside a server call

SeeAlso: INT 21/AX=440Bh,INT 21/AH=52h,INT 62/AX=0097h

INT 2F


INT 2F 1225 - DOS 3.0+ internal - GET LENGTH OF ASCIZ STRING

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1225h

DS:SI -> ASCIZ string

Return: CX = length of string

Note:	supported by DR-DOS 5.0+

SeeAlso: AX=1212h

INT 2F


INT 2F 1226 - DOS 3.3+ internal - OPEN FILE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1226h

CL = access mode

DS:DX -> ASCIZ filename

SS = DOS DS (must be using a DOS internal stack)

Return: CF set on error

    AL = error code (see #0885 at INT 21/AH=59h)

CF clear if successful

    AX = file handle

Notes:	can only be called from within DOS

equivalent to INT 21/AH=3Dh

used by NLSFUNC to access COUNTRY.SYS when invoked by the DOS kernel

SeeAlso: AX=1227h,INT 21/AH=3Dh

INT 2F


INT 2F 1227 - DOS 3.3+ internal - CLOSE FILE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1227h

BX = file handle

SS = DOS DS (must be using a DOS internal stack)

Return: CF set on error

    AL = 06h invalid file handle

CF clear if successful

Notes:	can only be called from within DOS

equivalent to INT 21/AH=3Eh

used by NLSFUNC to access COUNTRY.SYS when invoked by the DOS kernel

SeeAlso: AX=1106h,AX=1201h,AX=1226h,INT 21/AH=3Eh

INT 2F


INT 2F 1228 - DOS 3.3+ internal - MOVE FILE POINTER

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1228h

BP = 4200h, 4201h, 4202h (see INT 21/AH=42h)

BX = file handle

CX:DX = offset in bytes

SS = DOS DS (must be using a DOS internal stack)

Return: as for INT 21/AH=42h

Notes:	equivalent to INT 21/AH=42h, but may only be called from inside a DOS

  function call

sets user stack frame pointer to dummy buffer, moves BP to AX, performs

  LSEEK, and restores frame pointer

used by NLSFUNC to access COUNTRY.SYS when invoked by the DOS kernel

SeeAlso: INT 21/AH=42h

INT 2F


INT 2F 1229 - DOS 3.3+ internal - READ FROM FILE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 1229h

BX = file handle

CX = number of bytes to read

DS:DX -> buffer

SS = DOS DS (must be using a DOS internal stack)

Return: as for INT 21/AH=3Fh

Notes:	equivalent to INT 21/AH=3Fh, but may only be called when already inside

  a DOS function call

used by NLSFUNC to access COUNTRY.SYS when invoked by the DOS kernel

SeeAlso: AX=1226h,INT 21/AH=3Fh

INT 2F


INT 2F 122A - DOS 3.3+ internal - SET FASTOPEN ENTRY POINT

undocumented function

Category: D - DOS kernel

Inp.:

AX = 122Ah

BX = entry point to set (0001h or 0002h)

DS:SI -> FASTOPEN entry point (see #1396,#1397)

(entry point not set if SI = FFFFh for DOS 4.0+)

Return: CF set if specified entry point already set

Notes:	entry point in BX is ignored under DOS 3.30

both entry points set to same handler by DOS 4.01

DOS 5.0 and 6.0 only set entry point 1

INT 2F


INT 2F 122B - DOS 3.3+ internal - IOCTL

undocumented function

Category: D - DOS kernel

Inp.:

AX = 122Bh

BP = 44xxh

SS = DOS DS (must be using a DOS internal stack)

additional registers as appropriate for INT 21/AX=44xxh

Return: as for INT 21/AH=44h

Notes:	equivalent to INT 21/AH=44h, but may only be called when already inside

  a DOS function call

sets user stack frame pointer to dummy buffer, moves BP to AX, performs

  IOCTL, and restores frame pointer

used by NLSFUNC in accessing COUNTRY.SYS when invoked by the DOS kernel

SeeAlso: INT 21/AH=44h

INT 2F


INT 2F 122C - DOS 3.3+ internal - GET DEVICE CHAIN

undocumented function

Category: D - DOS kernel

Inp.:

AX = 122Ch

Return: BX:AX -> header of second device driver (NUL is first) in driver chain

Note:	although this function exists in DR-DOS 5.0 and Novell DOS 7, it

  always returns 0000h:0000h

SeeAlso: INT 21/AH=52h

INT 2F


INT 2F 122D - DOS 3.3+ internal - GET EXTENDED ERROR CODE

undocumented function

Category: D - DOS kernel

Inp.:

AX = 122Dh

Return: AX = current extended error code

SeeAlso: AX=1222h,INT 21/AH=59h

INT 2F


INT 2F 122E - DOS 4.0+ internal - GET OR SET ERROR TABLE ADDRESSES

undocumented function

Category: D - DOS kernel

Inp.:

AX = 122Eh

DL = subfunction

    00h get standard DOS error table (see #1399)

Return: ES:DI -> error table

 (DOS 4: errors 00h-12h,50h-5Bh)

 (DOS 5: errors 00h-26h,4Fh,51h-59h)

    01h set standard DOS error table

ES:DI -> error table

    02h get parameter error table (errors 00h-0Ah)

Return: ES:DI -> error table

    03h set parameter error table

ES:DI -> error table

    04h get critical/SHARE error table (errors 13h-2Bh)

Return: ES:DI -> error table

    05h set critical/SHARE error table

ES:DI -> error table

    06h get ??? error table

Return: ES:DI -> error table or 0000h:0000h

    07h set ??? error table

ES:DI -> error table

    08h get error message retriever (see #1400)

Return: ES:DI -> FAR procedure to fetch error message

    09h set ??? error table

ES:DI -> error table

Notes:	if the returned segment on a "get" is 0001h, then the offset specifies

  the offset of the error message table within COMMAND.COM, and the

  procedure returned by DL=08h should be called

DOS 5+ COMMAND.COM does not allow setting any of the addresses (calls

  with DL odd are ignored); they are always returned with segment 0001h

for DOS 5.0, the standard and critical/SHARE error tables are combined

  into a single error table

SeeAlso: AX=0500h,INT 21/AH=59h

INT 2F


INT 2F 122F - DOS 4.x internal - SET DOS VERSION NUMBER TO RETURN

undocumented function

Category: D - DOS kernel

Inp.:

AX = 122Fh

DX = DOS version number (0000h = return true DOS version)

Note:	not available under DR-DOS 5.0 or 6.0

SeeAlso: INT 21/AH=30h,INT 21/AX=3306h

INT 2F


INT 2F 12FF - DR-DOS 6, Novell DOS 7 - EMM386.EXE - VIDEO MEMORY SPACE CONTROL

undocumented function

Category: m - memory management

Inp.:

AX = 12FFh

BX = 0006h

DX = 0000h

CX = function

    0000h get status of video memory space (MEMMAX /V)

    0001h map memory into video memory space (MEMMAX +V)

    0002h unmap memory from video memory space (MEMMAX -V)

Return: CF clear if successful

    AX = 0000h (successful)

    BX = segment of reserved video RAM

    CX = segment of used video RAM

    DX = segment of first upper MCB

Notes:	this functionality is provided by EMM386, and partially supported by

  HIDOS.SYS

BL specifies which program handles the call, BH is the function number

SeeAlso: AX=D201h/BX=4849h

INT 2F


INT 2F 12FF - Novell DOS 7 - SCRIPT.EXE - GET ???

undocumented function

Category: O - other operating systems

Inp.:

AX = 12FFh

BX = 0007h

CX = 0000h

Return: CF clear if installed

    AX = 0000h

    BX = ??? (4426h)

    CX = ??? (0068h)

    DX = PSP segment of resident code???

    SI = ??? (4AFAh)

    ES = resident code segment

INT 2F


INT 2F 12FF - Novell DOS 7 - EMM386.EXE - GET VERSION???

undocumented function

Category: m - memory management

Inp.:

AX = 12FFh

BX = 0106h

Return:	CF clear if successful

    AX = 0000h (successful)

    BX = EDC0h (signature)

    CL = memory manager variant (02h,03h)

(02h when DPMI/VCPI disabled, 03h when DPMI/VCPI loaded)

    CH = ??? (00h)

    DX = version??? (0300h for v3.0)

    ES = segment of EMM386 low-memory stub

Notes:	BL specifies which program handles the call, BH is the function number

if the word at ES:0012h is nonzero, if contains the offset within

  segment ES of the CEMM-compatible entry point (see #1402)

if no other program has hooked INT 67, an alternate installation

  check is to test for the string

  "NOVELL EXPANDED MEMORY MANAGER 386" at offset 14h in the INT 67

  handler's segment; the word immediately preceding this string

  contains the offset of the API entry point if it is nonzero

Index:	entry point;Novell EMM386

INT 2F


INT 2F 12FF - Novell DOS 7 - EMM386.EXE - ???

undocumented function

Category: m - memory management

Inp.:

AX = 12FFh

BL = 06h

BH = function (02h-09h)

???

Return: ???

INT 2F


INT 2F 12FF - Novell DOS 7 - EMM386.EXE - CHECK IF MULTITASKING SUPPORT LOADED???

undocumented function

Category: O - other operating systems

Inp.:

AX = 12FFh

BX = 0EDCh ('EDC' = Novell European Development Center)

Return: AX = 0000h if ??? loaded

    CF clear

    BX = 0000h

Notes:	called by Novell DOS 7 TaskMgr

if this function returns with AX=0000h, then the code necessary to

  support the API on INT 2F/AX=2780h is loaded and that API becomes

  available for use

because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this function must be invoked

  with an actual INT 2F instruction instead of some simulation such

  as a far call to the address in the interrupt vector table

SeeAlso: AX=2780h/CL=01h,AX=2780h/CL=02h,AX=2780h/CL=03h,AX=2780h/CL=04h

INT 2F


INT 2F 13-- - DOS 3.2+ - SET DISK INTERRUPT HANDLER

undocumented function

Category: D - DOS kernel

Inp.:

AH = 13h

DS:DX -> interrupt handler disk driver calls on read/write

ES:BX = address to restore INT 13 to on system halt (exit from root

 shell) or warm boot (INT 19)

Return: DS:DX set by previous invocation of this function

ES:BX set by previous invocation of this function

Notes:	IO.SYS hooks INT 13 and inserts one or more filters ahead of the

  original INT 13 handler.  The first is for disk change detection

  on floppy drives, the second is for tracking formatting calls and

  correcting DMA boundary errors, the third is for working around

  problems in a particular version of IBM's ROM BIOS

before the first call, ES:BX points at the original BIOS INT 13; DS:DX

  also points there unless IO.SYS has installed a special filter for

  hard disk reads (on systems with model byte FCh and BIOS date

  "01/10/84" only), in which case it points at the special filter

most DOS 3.2+ disk access is via the vector in DS:DX, although a few

  functions are still invoked via an INT 13 instruction

this is a dangerous security loophole for any virus-monitoring software

  which does not trap this call ("INT13", "Nomenklatura", and many

  Bulgarian viruses are known to use it to get the original ROM entry

  point)

SeeAlso: INT 13/AH=01h,INT 19,INT 9D"VIRUS"

INT 2F


INT 2F 13-- - MS-NET - ???

undocumented function

Category: N - network

Inp.:

AH = 13h

???

Return: ???

Note:	supposedly used to move (or control the movement of) NCBs

INT 2F


INT 2F 1400 - NLSFUNC.COM - INSTALLATION CHECK

callout or callback (usually hooked rather than called)

Category: U - resident utilities

Inp.:

AX = 1400h

Return: AL = 00h not installed, OK to install

     01h not installed, not OK

     FFh installed

Notes:	this function is called by the DOS v3.3+ kernel

supported by OS/2 v1.3+ compatibility box, which always returns AL=FFh

supported by DR-DOS 5.0

documented for MS-DOS 5+, but undocumented in prior versions

SeeAlso: AX=1401h"NLSFUNC",AX=1402h"NLSFUNC"

INT 2F


INT 2F 1400 - European MS-DOS 4.0 POPUP - "CheckPu" - INSTALLATION CHECK

Category: D - DOS kernel

Inp.:

AX = 1400h

Return: AX = FFFFh if installed

    BX = maximum memory required to save screen and keyboard info

CF clear if successful

CF set on error

    AX = error code

0002h invalid function

0004h unknown error

Note:	the POPUP interface is used by background programs (see INT 21/AH=80h)

  to communicate with the user

SeeAlso: AX=1401h"POPUP",AX=1402h"POPUP",AX=1403h"POPUP"

INT 2F


INT 2F 1401 - NLSFUNC.COM - CHANGE CODE PAGE

callout or callback (usually hooked rather than called)

undocumented function

Category: U - resident utilities

Inp.:

AX = 1401h

DS:SI -> internal code page structure (see #1403)

BX = new code page (see #0962 at INT 21/AX=6602h)

DX = country code???

Return: AL = status

     00h successful

     else DOS error code

Note:	this function is called by the DOS v3.3+ kernel

SeeAlso: AX=1400h"NLSFUNC",AX=1402h"NLSFUNC",INT 21/AH=66h

INT 2F


INT 2F 1401 - European MS-DOS 4.0 POPUP - "PostPu" - OPEN/CLOSE POPUP SCREEN

Category: D - DOS kernel

Inp.:

AX = 1401h

DL = function (00h open, 01h close)

DH = wait flag

    00h block until screen opens

    01h return error if screen is not available

    02h urgent--always open screen immediately

Return: CF clear if successful

    BX = amount of memory needed to save screen and keyboard info,

0000h if default save location can be used (only if DH was 02h)

CF set on error

Note:	the application using the screen is frozen until the popup screen is

  closed

SeeAlso: AX=1400h"POPUP",AX=1402h"POPUP",AX=1403h"POPUP"

INT 2F


INT 2F 1402 - NLSFUNC.COM - GET EXTENDED COUNTRY INFO

callout or callback (usually hooked rather than called)

undocumented function

Category: U - resident utilities

Inp.:

AX = 1402h

BP = subfunction (same as AL for INT 21/AH=65h)

BX = code page (see #0962 at INT 21/AX=6602h)

DX = country code (see #0625 at INT 21/AH=38h)

DS:SI -> internal code page structure (see #1403)

ES:DI -> user buffer

CX = size of user buffer

Return: AL = status

    00h successful

    else DOS error code

Notes:	this function is called by the DOS v3.3+ kernel on INT 21/AH=65h

code page structure apparently only needed for COUNTRY.SYS pathname

SeeAlso: AX=1401h"NLSFUNC",AX=1403h"NLSFUNC",AX=1404h,INT 21/AH=65h

INT 2F


INT 2F 1402 - European MS-DOS 4.0 POPUP - "SavePu" - SAVE POPUP SCREEN

Category: D - DOS kernel

Inp.:

AX = 1402h

ES:DI -> save buffer (0000h:0000h for default buffer in POPUP)

Return: CF clear if successful

CF set on error

    AX = error code (see #1404)

SeeAlso: AX=1400h"POPUP",AX=1401h"POPUP",AX=1403h"POPUP"

INT 2F


INT 2F 1403 - NLSFUNC.COM - SET CODE PAGE

callout or callback (usually hooked rather than called)

undocumented function

Category: U - resident utilities

Inp.:

AX = 1403h

DS:SI -> internal code page structure (see #1403)

BX = code page (see #0962 at INT 21/AX=6602h)

DX = country code (see #0625 at INT 21/AH=38h)

Return: AL = status

     ???

Note:	this function is called by the DOS v3.3+ kernel on INT 21/AH=38h

SeeAlso: AX=1402h"NLSFUNC",AX=1404h,INT 21/AH=38h"SET"

INT 2F


INT 2F 1403 - European MS-DOS 4.0 POPUP - "RestorePu" - RESTORE SCREEN

Category: D - DOS kernel

Inp.:

AX = 1403h

ES:DI -> buffer containing saved screen

(0000h:0000h for default buffer in POPUP)

Return: CF clear if successful

CF set on error

    AX = error code (see #1404)

SeeAlso: AX=1400h"POPUP",AX=1401h"POPUP",AX=1402h"POPUP"

INT 2F


INT 2F 1404 - NLSFUNC.COM - GET COUNTRY INFO

callout or callback (usually hooked rather than called)

undocumented function

Category: U - resident utilities

Inp.:

AX = 1404h

BX = code page (see #0962 at INT 21/AX=6602h)

DX = country code (see #0625 at INT 21/AH=38h)

DS:SI -> internal code page structure (see #1403)

ES:DI -> user buffer

Return: AL = status

     ???

Notes:	this function is called by the DOS v3.3+ kernel on INT 21/AH=38h

code page structure apparently only needed for COUNTRY.SYS pathname

SeeAlso: AX=1402h,AX=1403h,INT 21/AH=38h"GET"

INT 2F


INT 2F 14FE - DR-DOS 5.0 NLSFUNC - GET EXTENDED COUNTRY INFORMATION

undocumented function

Category: U - resident utilities

Inp.:

AX = 14FEh

BX = code page (FFFFh=global code page) (see #0962 at INT 21/AX=6602h)

DX = country ID (FFFFh=current country) (see #0625 at INT 21/AH=38h)

ES:DI -> country information buffer

CL = info ID

    01h get general internationalization info

    02h get pointer to uppercase table

    04h get pointer to filename uppercase table

    05h get pointer to filename terminator table

    06h get pointer to collating sequence table

    07h get pointer to Double-Byte Character Set table

CF set (used to return error if not installed)

Return: CF clear if successful

    DS:SI -> requested information

CF set on error

Notes:	DR-DOS 5.0 NLSFUNC returns CF set and AX=0001h if AL was not 00h, FEh,

  or FFh on entry.

the DR-DOS kernel calls this function on INT 21/AX=6501h

the value in CL is not range-checked by the DR-DOS 5.0 NLSFUNC

SeeAlso: #1405,AX=14FFh,INT 21/AH=65h

INT 2F


INT 2F 14FF - DR-DOS 5.0 NLSFUNC - PREPARE CODE PAGE

undocumented function

Category: U - resident utilities

Inp.:

AX = 14FFh

BX = code page

Return: AX = ???

ZF set if AX=0000h

Notes:	DR-DOS 5.0 NLSFUNC returns CF set and AX=0001h if AL was not 00h, FEh,

  or FFh on entry.

passes codepage preparation request to each character device supporting

  the generic IOCTL call

SeeAlso: AX=14FEh,INT 21/AX=440Ch,INT 21/AX=6602h

INT 2F


INT 2F 1500 - DOS 4.00 GRAPHICS.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 1500h

Return: AX = FFFFh

ES:DI -> ??? (graphics data?)

Note:	this installation check conflicts with the CD-ROM Extensions

  installation check; moved to AX=AC00h in later versions

SeeAlso: AX=AC00h

INT 2F


INT 2F 1500 - CD-ROM - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = 1500h

BX = 0000h

Return: BX = number of CD-ROM drive letters used

CX = starting drive letter (0=A:)

Notes:	this installation check DOES NOT follow the format used by other

  software

this installation check conflicts with the DOS 4.00 GRAPHICS.COM

  installation check

SeeAlso: AX=150Ch,AX=15FFh,INT 2F/AX=D000h/BX=4D44h"Lotus"

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 90h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CX = 1234h if installed

    CF clear

    DX = BCD version number (DH = major, DL = minor)

Program: CDBLITZ is a CD-ROM cache by Blitz 'n' Software, Inc.

SeeAlso: AX=1500h/CH=99h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - GET STATISTICS

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 91h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

ES:BX -> statistics record (see #1406)

SeeAlso: AX=1500h/CH=90h,AX=1500h/CH=97h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - ENABLE CACHE

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 92h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

SeeAlso: AX=1500h/CH=90h,AX=1500h/CH=93h,AX=1500h/CH=94h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - DISABLE CACHE

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 93h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

SeeAlso: AX=1500h/CH=90h,AX=1500h/CH=92h,AX=1500h/CH=95h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - SET 'MAX' MODE (CACHE BOTH DIRECTORIES AND DATA)

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 94h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

SeeAlso: AX=1500h/CH=90h,AX=1500h/CH=92h,AX=1500h/CH=95h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - SET 'MIN' MODE (CACHE ONLY DIRECTORY ENTRIES)

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 95h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

SeeAlso: AX=1500h/CH=90h,AX=1500h/CH=94h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - FLUSH CACHE

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 96h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

Note:	this function resets the counts for number of sectors read and number

  of cache hits, but no other values in the statistics record

  (see #1406)

SeeAlso: AX=1500h/CH=90h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - GET CACHE STATISTICS

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 97h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

AL = cache mode (01h 'min', 02h 'max') (see also AX=1500h/CH=94h)

AH = cache state (00h disabled, 01h enabled)

BX = cache size in KB

DX:CX = total number of reads

DI:SI = number of cache hits

SeeAlso: AX=1500h/CH=90h,AX=1500h/CH=91h

INT 2F


INT 2F 1500 - CDBLITZ v2.11 - UNINSTALL

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 1500h

CH = 99h (function number)

BX = 1234h (magic value for CDBLITZ)

Return: CF clear

???

Program: CDBLITZ is a CD-ROM cache by Blitz 'n' Software, Inc.

SeeAlso: AX=1500h/CH=90h

INT 2F


INT 2F 1501 - CD-ROM - GET DRIVE DEVICE LIST

Category: d - disk I/O enhancements

Inp.:

AX = 1501h

ES:BX -> buffer to hold drive letter list (5 bytes per drive letter)

Return: buffer filled, for each drive letter

  BYTE	subunit number in driver

  DWORD address of device driver header

INT 2F


INT 2F 1502 - CD-ROM - GET COPYRIGHT FILE NAME

Category: d - disk I/O enhancements

Inp.:

AX = 1502h

ES:BX -> 38-byte buffer for name of copyright file

CX = drive number (0=A:)

Return: CF set if drive is not a CD-ROM drive

    AX = 000Fh (invalid drive)

CF clear if successful

SeeAlso: AX=1503h

INT 2F


INT 2F 1503 - CD-ROM - GET ABSTRACT FILE NAME

Category: d - disk I/O enhancements

Inp.:

AX = 1503h

ES:BX -> 38-byte buffer for name of abstract file

CX = drive number (0=A:)

Return: CF set if drive is not a CD-ROM drive

    AX = 000Fh (invalid drive)

CF clear if successful

SeeAlso: AX=1502h,AX=1504h

INT 2F


INT 2F 1504 - CD-ROM - GET BIBLIOGRAPHIC DOC FILE NAME

Category: d - disk I/O enhancements

Inp.:

AX = 1504h

ES:BX -> 38-byte buffer for name of bibliographic documentation file

CX = drive number (0=A:)

Return: CF set if drive is not a CD-ROM drive

    AX = 000Fh (invalid drive)

CF clear if successful

SeeAlso: AX=1502h,AX=1503h

INT 2F


INT 2F 1505 - CD-ROM - READ VTOC

Category: d - disk I/O enhancements

Inp.:

AX = 1505h

ES:BX -> 2048-byte buffer

CX = drive number (0=A:)

DX = sector index (0=first volume descriptor,1=second,...)

Return: CF set on error

    AX = error code (15=invalid drive,21=not ready)

CF clear if successful

    AX = volume descriptor type (1=standard,FFh=terminator,0=other)

Note:   This function was not supported by Novell DOS 7 NWCDEX prior to the

          08/16/94 update

INT 2F


INT 2F 1506 - CD-ROM - TURN DEBUGGING ON

Category: d - disk I/O enhancements

Inp.:

AX = 1506h

BX = debugging function to enable

Note:	reserved for development

SeeAlso: AX=1507h

INT 2F


INT 2F 1507 - CD-ROM - TURN DEBUGGING OFF

Category: d - disk I/O enhancements

Inp.:

AX = 1507h

BX = debugging function to disable

Note:	reserved for development

SeeAlso: AX=1506h

INT 2F


INT 2F 1508 - CD-ROM - ABSOLUTE DISK READ

Category: d - disk I/O enhancements

Inp.:

AX = 1508h

ES:BX -> buffer

CX = drive number (0=A:)

SI:DI = starting sector number

DX = number of sectors to read

Return: CF set on error

    AL = error code (15=invalid drive,21=not ready)

CF clear if successful

SeeAlso: AX=1509h

INT 2F


INT 2F 1509 - CD-ROM - ABSOLUTE DISK WRITE

Category: d - disk I/O enhancements

Inp.:

AX = 1509h

ES:BX -> buffer

CX = drive number (0=A:)

SI:DI = starting sector number

DX = number of sectors to write

Note:	corresponds to INT 26h and is currently reserved and nonfunctional

SeeAlso: AX=1508h

INT 2F


INT 2F 150A - CD-ROM - RESERVED

Category: d - disk I/O enhancements

Inp.:

AX = 150Ah

INT 2F


INT 2F 150B - CD-ROM v2.00+ - DRIVE CHECK

Category: d - disk I/O enhancements

Inp.:

AX = 150Bh

CX = drive number (0=A:)

Return: BX = ADADh if MSCDEX.EXE installed

    AX = support status

0000h if drive not supported

nonzero if supported

SeeAlso: AX=150Dh

INT 2F


INT 2F 150C - CD-ROM v2.00+ - GET MSCDEX.EXE VERSION (VERSION CHECK)

Category: d - disk I/O enhancements

Inp.:

AX = 150Ch

Return: BH = major version

BL = minor version

Notes:	MSCDEX.EXE versions prior to 2.00 return BX=0

        Corel's CORELCDX.COM v1.01d returns 2.20, v1.12a returns 2.21

        Meridian Data's CDNETEX.EXE returns its own version number, e.g. 4.70

SeeAlso: AX=1500h

INT 2F


INT 2F 150D - CD-ROM v2.00+ - GET CD-ROM DRIVE LETTERS

Category: d - disk I/O enhancements

Inp.:

AX = 150Dh

ES:BX -> buffer for drive letter list (1 byte per drive)

Return: buffer filled with drive numbers (0=A:).  Each byte corresponds

to the drive in the same position for function 1501h

SeeAlso: AX=150Bh

INT 2F


INT 2F 150E - CD-ROM v2.00+ - GET/SET VOLUME DESCRIPTOR PREFERENCE

Category: d - disk I/O enhancements

Inp.:

AX = 150Eh

BX = subfunction

    00h get preference

DX = 0000h

Return: DX = preference settings

    01h set preference

DH = volume descriptor preference

    01h = primary volume descriptor

    02h = supplementary volume descriptor

DL = supplementary volume descriptor preference

    01h = shift-Kanji

CX = drive number (0=A:)

Return: CF set on error

    AX = error code (15=invalid drive,1=invalid function)

CF clear if successful

INT 2F


INT 2F 150F - CD-ROM v2.00+ - GET DIRECTORY ENTRY

Category: d - disk I/O enhancements

Inp.:

AX = 150Fh

CL = drive number (0=A:)

CH bit 0 = copy flag

clear if direct copy

set if copy to structure which removes ISO/High Sierra diffs

ES:BX -> ASCIZ path name

SI:DI -> buffer for directory entry (see #1407,#1408)

 minimum 255 bytes for direct copy

Return: CF set on error

    AX = error code

CF clear if successful

    AX = disk format (0=High Sierra,1=ISO 9660)

Note:	this function was not supported by Novell DOS 7 NWCDEX prior to the

  08/16/94 update

INT 2F


INT 2F 1510 - CD-ROM v2.10+ - SEND DEVICE DRIVER REQUEST

Category: d - disk I/O enhancements

Inp.:

AX = 1510h

CX = CD-ROM drive letter (0 = A, 1 = B, etc)

ES:BX -> CD-ROM device driver request header (see #1382 at AX=0802h)

Note:	MSCDEX initializes the device driver request header's subunit field

  based on the drive number specified in CX

BUG:	Novell DOS 7 NWCDEX prior to the 12/13/94 update did not initialize

  the subunit field

INT 2F


INT 2F 15FF - CD-ROM - CORELCDX - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

        AX = 15FFh

        BX = 0000h

Return: BX = ABCDh if CORELCDX loaded

Note:   Corel's CORELCDX.COM is a replacement for MSCDEX.EXE; it also supports

  the standard MSCDEX installation check calls AX=1500h and AX=150Ch

SeeAlso: AX=1500h,AX=150Ch

INT 2F


INT 2F 1600 - MS Windows - WINDOWS ENHANCED MODE INSTALLATION CHECK

Category: W - MS Windows

Inp.:

AX = 1600h

Return: AL = status

    00h neither Windows 3.x enhanced mode nor Windows/386 2.x running

    01h Windows/386 2.x running

    80h XMS version 1 driver installed (neither Windows 3.x enhanced

  mode nor Windows/386 2.x running) (obsolete--see note)

    FFh Windows/386 2.x running

AL = anything else

    AL = Windows major version number >= 3

    AH = Windows minor version number

Notes:	INT 2F/AH=16h comprises an API for non-Windows programs (DOS device

  drivers, TSRs, and applications) to cooperate with multitasking

  Windows/386 2.x and Windows 3.x and higher enhanced mode.

certain calls are also supported in the Microsoft 80286 DOS extender in

  Windows standard mode

this function served as the installation check and AX=1610h served to

  get the driver entry point for XMS version 1, which is now obsolete.

  Use AX=4300h and AX=4310h instead

SeeAlso: AX=160Ah,AX=1610h,AX=4300h,AX=4680h

Index:	installation check;XMS version 1

INT 2F


INT 2F 1602 - MS Windows/386 2.x - GET API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1602h

Return: ES:DI -> Windows/386 2.x API procedure entry point

Notes:	this interface is supported in Windows 3.x only for 2.x compatibility

to get the current virtual machine (VM) ID in Windows/386 2.x:

    AX = 0000h

    ES:DI -> return address

    JUMP to address returned from INT 2F/AX=1602h

After JUMP, at return address:

    BX = current VM ID.

SeeAlso: AX=C020h

INT 2F


INT 2F 1603 - MS Windows/386 - GET INSTANCE DATA

Category: W - MS Windows

Inp.:

AX = 1603h

Return: AX = 5248h ('RH') if supported

    DS:SI -> Windows/386 instance data (see #1409)

Notes:	reportedly supported by RM Nimbus MS-DOS 3.3 kernel

this function is called by DOSMGR when AX=1607h/BX=0015h is not

  supported, as is the case in DOS versions prior to 5.0

see Geoff Chappell's book _DOS_Internals_ for additional discussions of

  this function, DOSMGR's behavior, and instancing in general

SeeAlso: AX=1607h/BX=0015h

INT 2F


INT 2F 1605 - MS Windows - WINDOWS ENHANCED MODE & 286 DOSX INIT BROADCAST

Category: W - MS Windows

Inp.:

AX = 1605h

ES:BX = 0000h:0000h

DS:SI = 0000h:0000h

CX = 0000h

DX = flags

    bit 0 = 0 if Windows enhanced-mode initialization

    bit 0 = 1 if Microsoft 286 DOS extender initialization

    bits 1-15 reserved (undefined)

DI = version number (major in upper byte, minor in lower)

Return: CX = 0000h if okay for Windows to load

CX = FFFFh (other registers unchanged) if Windows 3.0 in standard mode

CX <> 0 if Windows should not load

ES:BX -> startup info structure (see #1410)

DS:SI -> virtual86 mode enable/disable callback or 0000h:0000h

      (see #1413)

Notes:	the Windows enhanced mode loader and Microsoft 286 DOS extender will

  broadcast an INT 2F/AX=1605h call when initializing.	Any DOS device

  driver or TSR can watch for this broadcast and return the appropriate

  values.  If the driver or TSR returns CX <> 0, it is also its

  responsibility to display an error message.

each handler must first chain to the prior INT 2F handler with

  registers unchanged before processing the call

if the handler requires local data on a per-VM basis, it must store the

  returned ES:BX in the "next" field of a startup info structure and

  return a pointer to that structure in ES:BX

a single TSR may set the V86 mode enable/disable callback; if DS:SI is

  already nonzero, the TSR must fail the initialization by setting CX

  nonzero

MSD checks for Windows 3.0 running in standard mode by testing whether

  CX=FFFFh and other registers are unchanged on return

Novell DOS v7.0 (Update 8 - Update 11) TASKMGR in multitasking mode

  uses this broadcast, even if TASKMGR.INI sets WinPresent= to OFF

Micrsoft's EMM386.EXE for DOS 5+ when installed with the NOEMS option

  changes its driver name from EMMQXXX0 to EMMXXXX0 while Windows is

  active

SeeAlso: AX=1606h,AX=1608h,AX=4B05h

INT 2F


INT 2F 1606 - MS Windows - WINDOWS ENHANCED MODE & 286 DOSX EXIT BROADCAST

Category: W - MS Windows

Inp.:

AX = 1606h

DX = flags

    bit 0 = 0 if Windows enhanced-mode exit

    bit 0 = 1 if Microsoft 286 DOS extender exit

    bits 1-15 reserved (undefined)

Notes:	if the init broadcast fails (AX=1605h returned CX <> 0), then this

  broadcast will be issued immediately.

this call will be issued in real mode

Novell DOS v7.0 (Update 8 - Update 10) TASKMGR in multitasking mode

  uses this broadcast, even if TASKMGR.INI sets WinPresent= to OFF

SeeAlso: AX=1605h,AX=1609h

INT 2F


INT 2F 1607 - MS Windows - VIRTUAL DEVICE CALL OUT API

Category: W - MS Windows

Inp.:

AX = 1607h

BX = virtual device ID (see #1419)

CX = (usually) callout subfunction

Return: (usually) AX,BX,CX,DX,ES contain results

Notes:	more of a convention than an API, this call specifies a standard

  mechanism for Windows enhanced-mode virtual devices (VxD's) to talk

  to DOS device drivers and TSRs

see below for details on several virtual devices

SeeAlso: AX=1605h,AX=1607h/BX=000Ch,AX=1607h/BX=0014h,AX=1607h/BX=0015h

SeeAlso: AX=1607h/BX=0018h,AX=1684h,AX=C020h

INT 2F


INT 2F 1607 - MS Windows - "V86MMGR" VIRTUAL DEVICE API

Category: W - MS Windows

Inp.:

AX = 1607h

BX = 0006h (VxD identifier of "V86MMGR")

CX = 0000h

Return: AX = status

    0000h if local A20 state changed

    1607h if A20 unchanged

    other if global A20 state changed

INT 2F


INT 2F 1607 - MS Windows - "VMD" VIRTUAL MOUSE DEVICE API

Category: W - MS Windows

Inp.:

AX = 1607h

BX = 000Ch (VxD identifier of "VMD")

Return: CX = nonzero if mouse driver already virtualized

Note:	VMD (Virtual Mouse Driver) calls this and then checks whether CX is

  nonzero; if yes, it will not automatically virtualize the mouse

  driver.  This would be used if MOUSE.COM already virtualizes

  itself using the Windows API.

SeeAlso: AX=1607h/BX=0014h,AX=1607h/BX=0015h

INT 2F


INT 2F 1607 - MS Windows 3.1 - "BLOCKDEV" VIRTUAL HARD DISK DEVICE API

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 1607h

BX = 0010h (VxD identifier of "BLOCKDEV")

CX = function

    0001h starting FastDisk compatibility tests

    0002h ending FastDisk compatibility tests

    0003h check if FastDisk installation allowed

Return: CX = 0000h if allowed

Note:	this interface is called by the Windows FastDisk driver (such as

  WDCTRL) when it thinks that the INT 13h handler immediately below

  IO.SYS's INT 13h code is not in ROM; it should be supported by any

  program which hooks itself underneath IO.SYS's INT 13h code with

  INT 2F/AH=13h

SeeAlso: AX=1607h/BX=0014h,INT 2F/AH=13h

INT 2F


INT 2F 1607 - MS Windows - "VNETBIOS" VIRTUAL DEVICE API

Category: W - MS Windows

Inp.:

AX = 1607h

BX = 0014h (VxD identifier of "VNETBIOS")

Return: ES:DI -> 128-byte table specifying VNETBIOS actions for each NetBIOS

command code (see #1414)

Note:	VNETBIOS (Virtual NetBIOS) calls this function to determine whether

  the NetBIOS has an extensions Windows should know about

SeeAlso: AX=1607h/BX=000Ch,AX=1607h/BX=0010h,AX=1607h/BX=0015h

INT 2F


INT 2F 1607 - MS Windows - "DOSMGR" VIRTUAL DEVICE API

callout or callback (usually hooked rather than called)

Category: D - DOS kernel

Inp.:

AX = 1607h

BX = 0015h (VxD identifier of "DOSMGR")

CX = function

    0000h query instance processing

DX = 0000h

Return: CX = state

    0000h not instanced

    other instanced (DOS 5+ kernel returns 0001h)

DX = segment of DOS drivers or 0000h for

default of 0070h

ES:BX -> patch table (see #1416)

    0001h set patches in DOS

DX = bit mask of patch requests (see #1415)

Return: AX = B97Ch

BX = bit mask of patches applied (see #1415)

DX = A2ABh

    0002h remove patches in DOS (ignored by DOS 5.0 kernel)

DX = bit mask of patch requests (see function 0001h)

Return: CX = 0000h (DOS 5-6)

Note:	return values are ignored by DOSMGR in Windows 3.1

    0003h get size of DOS data structures

DX = bit mask of request (only one bit can be set)

    bit 0: Current Directory Structure size

Return: if supported request:

    AX = B97Ch

    CX = size in bytes of requested structure

    DX = A2ABh

else:

    CX = 0000h

    all other registers preserved

    0004h determine instanced data structures

Return: AX = B97Ch if supported

DX = A2ABh if supported (DOS 5+ kernel returns 0000h)

BX = bit mask of instanced items

    bit 0: CDS

    bit 1: SFT

    bit 2: device list

    bit 3: DOS swappable data area

    0005h get device driver size

ES = segment of device driver

Return: DX:AX = 0000h:0000h on error (not dev. driver segment)

DX:AX = A2ABh:B97Ch if successful

    BX:CX = size of device driver in bytes

Notes:	DOSMGR (DOS Manager) will check whether the OEM DOS/BIOS data has

  been instanced via this API and will not perform its own default

  instancing of the normal DOS/BIOS data if so; if this API is not

  supported, DOSMGR will also try to access instancing data through

  INT 2F/AX=1603h

these functions are supported by the DOS 5+ kernel; DOSMGR contains

  tables of instancing information for earlier versions of DOS

see Geoff Chappell's book _DOS_Internals_ for additional discussions of

  DOSMGR's behavior and instancing in general

SeeAlso: AX=1603h,AX=1605h,AX=1607h/BX=000Ch,AX=1607h/BX=0014h,AX=1684h

INT 2F


INT 2F 1607 - MS Windows - "VMPoll" VIRTUAL DEVICE - IDLE CALLOUT

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 1607h

BX = 0018h (VMPoll VxD ID)

CX = 0000h

Return: AX = status

    0000h if timeslice used

    nonzero if timeslice not needed

Note:	when VMPoll makes this callout, all virtual machines are idle

SeeAlso: AX=1607h

INT 2F


INT 2F 1607 - MS Windows - "PageFile" VIRTUAL DEVICE - GET LOCK BYTE

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 1607h

BX = 0021h (PageFile VxD ID)

CX = 0000h

Return: AX = status

    0000h success

ES:DI -> cache lock byte in disk cacher

    other no disk cache or unsupported

Notes:	PageFile issues this call on real-mode initialization in order to allow

  disk caches to provide it with a byte which it can use to temporarily

  lock the disk cache; VMPOLL also issues this call, so it is made

  twice each time Windows starts up

if this call fails, PageFile falls back to other techniques for locking

  the disk cache

SeeAlso: AX=1607h

INT 2F


INT 2F 1607 - Rational Systems DOS/4GW - ???

Category: E - DOS extenders

Inp.:

AX = 1607h

BX = 22C0h

???

Return: ???

SeeAlso: INT 15/AX=BF02h,INT 15/AX=BF04h

INT 2F


INT 2F 1608 - MS Windows - WINDOWS ENHANCED MODE INIT COMPLETE BROADCAST

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 1608h

Notes:	called after all installable devices have been initialized

real-mode software may be called between the Windows enhanced-mode init

  call (AX=1605h) and this call; the software must detect this

  situation

SeeAlso: AX=1605h,AX=1609h

INT 2F


INT 2F 1609 - MS Windows - WINDOWS ENHANCED MODE BEGIN EXIT BROADCAST

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 1609h

Note:	called at the beginning of a normal exit sequence; not made in the

  event of a fatal system crash

SeeAlso: AX=1606h,AX=1608h

INT 2F


INT 2F 160A - MS Windows 3.1 - IDENTIFY WINDOWS VERSION AND TYPE

Category: W - MS Windows

Inp.:

AX = 160Ah

Return: AX = 0000h if call supported

    BX = version (BH=major, BL=minor)

    CX = mode (0002h = standard, 0003h = enhanced)

SeeAlso: AX=1600h,AX=4680h

INT 2F


INT 2F 160B - MS Windows 3.1 - IDENTIFY TSRs

Category: W - MS Windows

Inp.:

AX = 160Bh

ES:DI -> communication structure (see #1417) or 0000h:0000h

Return: ES:DI -> communication structure

Desc:	this call allows Windows-aware TSRs to make themselves known to

  Windows.

Note:	the TSR should allocate a communication structure, place the given

  ES:DI pointer in the first field, and return a pointer to the new

  structure

SeeAlso: AX=1605h,AX=160Ch,AX=4B01h,AX=4B05h

INT 2F


INT 2F 160C - MS Windows 3.1 - DETECT ROMs

Category: W - MS Windows

Inp.:

AX = 160Ch

???

Return: ???

Note:	used by ROM Windows

SeeAlso: AX=160Bh

INT 2F


INT 2F 1610 - XMS v1.x only - GET DRIVER ADDRESS

Category: m - memory management

Inp.:

AX = 1610h

details unavailable

Note:	this function and AX=1600h were only used in XMS version 1 and are now

  obsolete.  Use AX=4300h and AX=4310h instead

SeeAlso: AX=1600h,AX=4310h

INT 2F


INT 2F 1680 - MS Windows, DPMI, various - RELEASE CURRENT VIRTUAL MACHINE TIME-SLICE

Category: W - MS Windows

Inp.:

AX = 1680h

Return: AL = status

    00h if the call is supported

    80h (unchanged) if the call is not supported

Notes:	programs can use this function in idle loops to enhance performance

  under multitaskers; this call is supported by MS Windows 3.0, DOS 5+,

  DPMI 1.0+, and in OS/2 2.0+ for multitasking DOS applications

does not block the program; it just gives up the remainder of the time

  slice

should not be used by Windows-specific programs

when called very often without intermediate screen output under WIN 3+,

  the VM will go into an idle-state and will not receive the next slice

  before 8 seconds. This time can be changed in SYSTEM.INI through

  "IdleVMWakeUpTime=<seconds>". Setting to zero results in a long wait.

SeeAlso: INT 15/AX=1000h,INT 15/AX=5305h,INT 21/AH=89h,INT 7A/BX=000Ah

INT 2F


INT 2F 1681 - MS Windows 3+ - BEGIN CRITICAL SECTION

Category: W - MS Windows

Inp.:

AX = 1681h

Notes:	used to prevent a task switch from occurring

should be followed by an INT 2F/AX=1682h call as soon as possible

nested calls are allowed, and must be followed by an appropriate number

  of "end critical section" calls

not supported in Windows/386 2.x. Get INDOS flag with INT 21/AH=34h and

  increment by hand.

SeeAlso: AX=1682h,INT 15/AX=101Bh,INT 21/AH=34h

INT 2F


INT 2F 1682 - MS Windows 3+ - END CRITICAL SECTION

Category: W - MS Windows

Inp.:

AX = 1682h

Notes:	not supported in Windows/386 2.x.  Get InDOS flag with INT 21/AH=34h

  and decrement by hand, taking care not to decrement InDOS flag

  through zero

SeeAlso: AX=1681h,INT 15/AX=101Ch,INT 21/AH=34h

INT 2F


INT 2F 1683 - MS Windows 3+ - GET CURRENT VIRTUAL MACHINE ID

Category: W - MS Windows

Inp.:

AX = 1683h

Return: BX = current virtual machine (VM) ID

Notes:	Windows itself currently runs in VM 1, but this can't be relied upon

VM IDs are reused when VMs are destroyed

an ID of 0 will never be returned

SeeAlso: AX=1684h,AX=1685h,AX=168Bh

INT 2F


INT 2F 1684 - MS Windows - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = virtual device (VxD) ID (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point, or 0:0 if the VxD does not support an API

Note:	some Windows enhanced-mode virtual devices provide services that

  applications can access.  For example, the Virtual Display Device

  (VDD) provides an API used in turn by WINOLDAP.

SeeAlso: AX=1683h

INT 2F


INT 2F 1684 - MS Windows - VPICD - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0003h (virtual device ID for VPICD device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - VTD - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0005h (virtual device ID for VTD device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1420)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - REBOOT - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0009h (virtual device ID for REBOOT device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1421)

  0000h:0000h if the VxD does not support an API

SeeAlso: INT 14/AH=17h"FOSSIL",INT 16/AX=E0FFh

INT 2F


INT 2F 1684 - MS Windows - VMD - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 000Ch (virtual device ID for VMD device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - DOSMGR - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0015h (virtual device ID for DOSMGR device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1422,#2647)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - SHELL - GET DEVICE API ENTRY POINT

undocumented function

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0017h (virtual device ID for SHELL device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1423)

  0000h:0000h if the VxD does not support an API

SeeAlso: AX=1684h/BX=0021h

INT 2F


INT 2F 1684 - MS Windows - PAGEFILE - GET DEVICE API ENTRY POINT

undocumented function

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0021h (virtual device ID for PAGEFILE device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1427)

  0000h:0000h if the VxD does not support an API

SeeAlso: AX=1684h/BX=0017h

INT 2F


INT 2F 1684 - Intel Plug-and-Play - CONFIGURATION MANAGER - GET ENTRY POINT

undocumented function

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0034h (ID for Configuration Manager) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> API entry point (see #1429)

  0000h:0000h if Configuration Manager not loaded

Index:	installation check;Plug-and-Play Configuration Manager

INT 2F


INT 2F 1684 - MS Windows - VADMAD - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0444h (virtual device ID for VADMAD device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1431)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - VSWITCHD - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 0750h (virtual device ID for VSWITCHD device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1432)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - PHARLAPX - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 28A0h (virtual device ID for PHARLAPX device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #2648)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - EDOS - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 2925h (virtual device ID for EDOS device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1433)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - WPS - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 310Eh (virtual device ID for WPS device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1434)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - POSTMSG - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 8888h (virtual device ID for POSTMSG device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1436,#1438)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1684 - MS Windows - VbillD - GET DEVICE API ENTRY POINT

Category: W - MS Windows

Inp.:

AX = 1684h

BX = 8888h (virtual device ID for VbillD device) (see #1419)

ES:DI = 0000h:0000h

Return: ES:DI -> VxD API entry point (see #1439)

  0000h:0000h if the VxD does not support an API

INT 2F


INT 2F 1685 - MS Windows - SWITCH VMs AND CALLBACK

Category: W - MS Windows

Inp.:

AX = 1685h

BX = VM ID of virtual machine to switch to

CX = flags (see #1440)

DX:SI = priority boost (see VMM.INC)

ES:DI -> FAR procedure to callback

Return: CF set on error

    AX = error code

01h invalid VM ID

02h invalid priority boost

03h invalid flags

CF clear if successful

    event will be or has been called

Notes:	some DOS devices, such as networks, need to call functions in a

  specific VM. This call forces the appropriate VM to be installed.

the callback procedure must preserve all registers and return with IRET

SeeAlso: AX=1683h,INT 15/AX=1117h,AX=DB06h"WINGO"

INT 2F


INT 2F 1686 - DOS Protected-Mode Interface - DETECT MODE

Category: E - DOS extenders

Inp.:

AX = 1686h

Return: AX = 0000h if operating in protected mode under DPMI (INT 31 available)

AX nonzero if in real/V86 mode or no DPMI (INT 31 not available)

SeeAlso: AX=1687h

INT 2F


INT 2F 1687 - DOS Protected-Mode Interface - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = 1687h

Return: AX = 0000h if installed

    BX = flags

bit 0: 32-bit programs supported

    CL = processor type (02h=80286, 03h=80386, 04h=80486)

    DH = DPMI major version

    DL = two-digit DPMI minor version (binary)

    SI = number of paragraphs of DOS extender private data

    ES:DI -> DPMI mode-switch entry point (see #1441)

AX nonzero if not installed

SeeAlso: AX=1686h,AX=43E0h,AX=DE01h/BX=4450h,AX=FB42h/BX=0001h

SeeAlso: INT 31/AX=0400h,INT 31/AX=5702h,INT 38/AH=10h

INT 2F


INT 2F 1688 - MS Windows 3.0, 386MAX v6.01 - GET ALIAS SELECTOR TO LDT

undocumented function

Category: W - MS Windows

Inp.:

AX = 1688h

BX = 0BADh

Return: AX = 0000h if supported

    BX = alias selector for LDT

Note:	use the LSL instruction or GetSelectorLimit() to find LDT size

this call should be considered obsolete for Windows 3.1+, as the

  alias selector can be retrieved via the API entry point for

  "MS-DOS" retrieved from INT 2F/AX=168Ah (see #1443)

INT 2F


INT 2F 1689 - MS Windows 3.0+ - KERNEL IDLE CALL

undocumented function

Category: W - MS Windows

Inp.:

AX = 1689h

???

Return: ???

SeeAlso: AX=1680h,INT 15/AX=1000h,INT 28

INT 2F


INT 2F 168A - DPMI 0.9+ - GET VENDOR-SPECIFIC API ENTRY POINT

Category: E - DOS extenders

Inp.:

AX = 168Ah

DS:(E)SI = selector:offset of ASCIZ vendor name (see #1442)

Return: AL = status

    00h successful

       ES:(E)DI -> extended API entry point

    8Ah unsuccessful

Notes:	the vendor name is used to determine which entry point to return; it is

  case-sensitive

available in protected mode only

32-bit applications use ESI and EDI, 16-bit applications use SI and DI

this call is present but not documented for DPMI 0.9

the Borland C++ 3.1 DPMILOAD does not handle requests for entry points

  other than the MS-DOS one gracefully, producing an unhandled

  exception report; this has been fixed in the Borland Pascal 7 version

SeeAlso: INT 31/AX=0A00h,INT 31/AH=57h

INT 2F


INT 2F 168B - MS Windows 3.1 - SET FOCUS TO SPECIFIED VIRTUAL MACHINE

Category: W - MS Windows

Inp.:

AX = 168Bh

BX = virtual machine ID (see AX=1683h), 0000h for current DOS box

Return: AL = 00h if focus set to specified VM

Notes:	documented on the Microsoft Developer's Network CD-ROM

if the VM is a windowed DOS box, it will be set to full screen

SeeAlso: AX=1683h

INT 2F


INT 2F 168C - MS Windows 3.1 - RESTART COMMAND

Category: W - MS Windows

Inp.:

AX = 168Ch

???

Return: ???

Note:	WIN.COM executes specified application

INT 2F


INT 2F 1700 - MS Windows "WINOLDAP" - IDENTIFY WinOldAp VERSION

Category: W - MS Windows

Inp.:

AX = 1700h

Return: AX = 1700h if this version of WINOLDAP doesn't support clipboard

AX <> 1700h

    AL = WINOLDAP major version

    AH = WINOLDAP minor version

Program: WinOldAp (WINOLDAP.MOD) is a Microsoft Windows extension supporting

  "old" (character-mode) application access to Dynamic Data Exchange,

  menus, and the Windows clipboard.

Note:	this installation check DOES NOT follow the format used by other

  software of returning AL=FFh

SeeAlso: AX=1701h,AX=4601h

Index:	installation check;WINOLDAP

INT 2F


INT 2F 1701 - MS Windows "WINOLDAP" - OPEN CLIPBOARD

Category: W - MS Windows

Inp.:

AX = 1701h

Return: AX = status

    nonzero success

    0000h   clipboard is already open

SeeAlso: AX=1700h,AX=1702h,AX=1703h,AX=1704h,INT 16/AX=CB00h

INT 2F


INT 2F 1702 - MS Windows "WINOLDAP" - EMPTY CLIPBOARD

Category: W - MS Windows

Inp.:

AX = 1702h

Return: AX = status

    nonzero clipboard has been emptied

    0000h   failure

SeeAlso: AX=1700h,AX=1701h,AX=1703h,AX=1704h,INT 16/AX=CB05h

INT 2F


INT 2F 1703 - MS Windows "WINOLDAP" - SET CLIPBOARD DATA

Category: W - MS Windows

Inp.:

AX = 1703h

DX = clipboard format supported by WinOldAp (see #1445)

ES:BX -> data (see #1446,#1447)

SI:CX = size of data

Return: AX = status

    nonzero data copied into the Clipboard

    0000h   failure

SeeAlso: AX=1701h,AX=1705h,INT 16/AX=CB04h

INT 2F


INT 2F 1704 - MS Windows "WINOLDAP" - GET CLIPBOARD DATA SIZE

Category: W - MS Windows

Inp.:

AX = 1704h

DX = clipboard format supported by WinOldAp (see #1445)

Return:	DX:AX = size of data in bytes, including any headers

0000h:0000h if no data in this format in the Clipboard

Note:	Windows reportedly rounds up the size of the data to a multiple of 32

  bytes

SeeAlso: AX=1700h,AX=1703h,AX=1705h

INT 2F


INT 2F 1705 - MS Windows "WINOLDAP" - GET CLIPBOARD DATA

Category: W - MS Windows

Inp.:

AX = 1705h

DX = clipboard format supported by WinOldAp (see #1445)

ES:BX -> buffer

Return: AX = status

    nonzero success

    0000h   error, or no data in this format in Clipboard

SeeAlso: AX=1700h,AX=1704h,INT 16/AX=CB03h

INT 2F


INT 2F 1708 - MS Windows "WINOLDAP" - CloseClipboard

Category: W - MS Windows

Inp.:

AX = 1708h

Return: AX = status

    0000h failure

    nonzero success

INT 2F


INT 2F 1709 - MS Windows "WINOLDAP" - COMPACT CLIPBOARD

Category: W - MS Windows

Inp.:

AX = 1709h

SI:CX = desired size in bytes

Return: DX:AX = number of bytes in largest block of free memory

Note:	WinOldAp is responsible for including the size of any headers

INT 2F


INT 2F 170A - MS Windows "WINOLDAP" - GET DEVICE CAPABILITIES

Category: W - MS Windows

Inp.:

AX = 170Ah

DX = GDI information index (see #1448)

Return: AX = integer value of the desired item

      (see #1449,#1450,#1451,#1452,#1453,#1454,#1455)

Note:	This function returns the device-capability bits for the given display

INT 2F


INT 2F 18-- - MS-Manager

undocumented function

Category: - - (none)

Inp.:

AH = 18h

???

Return: ???

INT 2F


INT 2F 1900 - DOS 4.x only SHELLB.COM - INSTALLATION CHECK

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 1900h

Return: AL = status

    00h not installed

    FFh installed

INT 2F


INT 2F 1901 - DOS 4.x only SHELLB.COM - SHELLC.EXE INTERFACE

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 1901h

BL = SHELLC type

    00h transient

    01h resident

DS:DX -> far call entry point for resident SHELLC.EXE

Return: ES:DI -> SHELLC.EXE workspace within SHELLB.COM

Note:	SHELLB.COM and SHELLC.EXE are parts of the DOS 4.x shell

INT 2F


INT 2F 1902 - DOS 4.x only SHELLB.COM - COMMAND.COM INTERFACE

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 1902h

ES:DI -> ASCIZ full filename of current batch file, with at least the

  final filename element uppercased

DS:DX -> buffer for results

Return: AL = 00h  failed, either

(a) final filename element quoted at ES:DI does not match

      identity of shell batch file quoted as parameter of most

      recent call of SHELLB command, or

(b) no more Program Start Commands available.

AL= FFh	 success, then:

memory at DS:[DX+1] onwards filled as:

DX+1:	BYTE	count of bytes of PSC

DX+2: N BYTEs	Program Start Command text

BYTE	0Dh terminator

Desc:	COMMAND.COM executes the result of this call in preference to

  reading a command from a batch file.	Thus the batch file does not

  advance in execution for so long as SHELLB provides PSCs from its

  workspace.

Note:	The PSCs are planted in SHELLB workspace by SHELLC, the user

  menu interface.  The final PSC of a sequence is finished with a

  GOTO COMMON, which causes a loop back in the batch file which called

  SHELLC so as to execute SHELLC again.	 The check on batch file name

  permits PSCs to CALL nested batch files while PSCs are still stacked

  up for subsequent execution.

INT 2F


INT 2F 1903 - DOS 4.x only SHELLB.COM - COMMAND.COM interface

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 1903h

ES:DI -> ASCIZ batch file name as for AX=1902h

Return: AL = status

    FFh quoted batch file name matches last SHELLB parameter

    00h it does not

INT 2F


INT 2F 1904 - DOS 4.x only SHELLB.COM - SHELLB transient to TSR intrface

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 1904h

Return: ES:DI -> name of current shell batch file:

WORD	number of bytes of name following

BYTEs	(8 max) uppercase name of shell batch file

INT 2F


INT 2F 1A00 - DOS 4.0+ ANSI.SYS - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 1A00h

Return: AL = FFh if installed

Notes:	AVATAR.SYS also responds to this call

documented for DOS 5+, but undocumented for DOS 4.x

INT 2F


INT 2F 1A00 - ANSIPLUS.SYS v2.00+ - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 1A00h

BX = 414Eh ('AN')

CX = 5349h ('SI')

DX = 2B2Bh ('++')

Return: AL = FFh if installed

    CF clear

    ES:BX -> INT 29 entry point

    CX = ANSIPLUS BCD version number (v3.10+, CH=major, CL=minor)

    DL = capabilities (v4.00+)

00h full capability driver

01h reduced capability driver

2Bh full capability driver (before v4.00)

Program: ANSIPLUS.SYS is a CON device driver by Kristofer Sweger which

  replaces the normal ANSI.SYS is a more powerful version with many

  additional features

Notes:	ANSIPLUS also identifies itself as ANSI.SYS if BX,CX, or DX differ

  from the magic values above

an additional installation check is to test for the signature

  "ANSIPLUS" 12 bytes before the INT 29 entry point; the version

  number is also available as a four-character ASCII string (e.g.

  "4.00") four bytes before the entry point

SeeAlso: AX=1AA5h,AX=1AA6h,AX=1AA7h,AX=1AA8h,AX=1AA9h,AX=1AAAh,AX=D44Fh

INT 2F


INT 2F 1A00 - AVATAR.SYS - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 1A00h

BX = 4156h ('AV')

CX = 4154h ('AT')

DX = 4152h ('AR')

Return: AL = FFh if installed

    CF clear

    BX = AVATAR protocol level supported

    CX = driver type

0000h AVATAR.SYS

4456h DVAVATAR.COM inside DESQview window

    DX = 0016h

Program: AVATAR.SYS is a CON replacement by George Adam Stanislav which

  interprets AVATAR command codes in the same way that ANSI interprets

  ANSI command codes

Notes:	AVATAR also identifies itself as ANSI.SYS if BX, CX, or DX differ from

  the magic values

SeeAlso: AX=1A21h,AX=1A3Ch,AX=1A3Fh,AX=1A52h,AX=1A72h,AX=1A7Dh,AX=1AADh"AVATAR"

INT 2F


INT 2F 1A01 - DOS 4.0+ ANSI.SYS internal - GET/SET DISPLAY INFORMATION

undocumented function

Category: V - video

Inp.:

AX = 1A01h

CL = function

    7Fh for GET

    5Fh for SET

DS:DX -> parm block as for INT 21,AX=440Ch,CX=037Fh/035Fh respectively

Return:	CF clear if successful

    AX destroyed

CF set on error

    AX = error code (many non-standard)

Note:	presumably this is the DOS IOCTL interface to ANSI.SYS

SeeAlso: AX=1A02h,INT 21/AX=440Ch

INT 2F


INT 2F 1A02 - DOS 4.0+ ANSI.SYS internal - MISCELLANEOUS REQUESTS

undocumented function

Category: V - video

Inp.:

AX = 1A02h

DS:DX -> parameter block (see #1456)

Return: CF clear if successful

CF set on error

    AX = error code

Note:	DOS 5+ chains to previous handler if AL > 02h on call

SeeAlso: AX=1A01h

INT 2F


INT 2F 1A21 - AVATAR.SYS - SET DRIVER STATE

Category: V - video

Inp.:

AX = 1A21h (AL='!')

DS:SI -> command string with one or more state characters (see #1457)

CX = length of command string

Return: CF set on error (invalid subfunction)

CF clear if successful

Note:	the characters in the state string are interpreted left to right, and

  need not be in any particular order

SeeAlso: AX=1A00h/BX=4156h,AX=1A3Fh

INT 2F


INT 2F 1A3C - AVATAR.SYS v0.11 - ???

undocumented function

Category: V - video

Inp.:

AX = 1A3Ch

???

Return: CX = 0000h

SeeAlso: AX=1A00h/BX=4156h,AX=1A21h,AX=1A3Eh

INT 2F


INT 2F 1A3E - AVATAR.SYS v0.11 - ???

undocumented function

Category: V - video

Inp.:

AX = 1A3Eh

CL = ???

CH = ???

DL = ???

DH = ???

Return: CL = ???

CH = ???

DL = ???

DH = ???

SeeAlso: AX=1A3Ch,AX=1A3Fh

INT 2F


INT 2F 1A3F - AVATAR.SYS - QUERY DRIVER STATE

Category: V - video

Inp.:

AX = 1A3Fh (AL='?')

ES:DI -> buffer

CX = length of buffer in bytes

Return: CF clear

CX = actual size of returned info

Note:	the returned information consists of multiple letters whose meanings

  are described under AX=1A21h

SeeAlso: AX=1A00h/BX=4156h,AX=1A21h,AX=1A44h

INT 2F


INT 2F 1A42 - AVATAR Serial Dispatcher - INSTALL IRQ3 HANDLER

Category: S - serial I/O

Inp.:

AX = 1A42h

BX = 4156h ('AV')

ES:DI -> FAR handler for serial port using IRQ3

DS = data segment needed by handler

Return: AX = status/return value

    0000h if no more room

    1A42h if ASD not installed

    else handle to use when uninstalling

Notes:	the handler need not save/restore registers or signal EOI to the

  interrupt controller

the handler should return AX=0000h if the interrupt was meant for it,

  and either leave AX unchanged or return a non-zero value otherwise

the most recently installed handler will be called first, continuing

  to earlier handlers until one returns AX=0000h

SeeAlso: AX=1A43h,AX=1A62h

INT 2F


INT 2F 1A43 - AVATAR Serial Dispatcher - INSTALL IRQ4 HANDLER

Category: S - serial I/O

Inp.:

AX = 1A43h

BX = 4156h ('AV')

ES:DI -> FAR handler for serial port using IRQ4

DS = data segment needed by handler

Return: AX = status/return value

    0000h if no more room

    1A43h if ASD not installed

    else handle to use when uninstalling

Notes:	(see AX=1A42h)

SeeAlso: AX=1A42h,AX=1A63h

INT 2F


INT 2F 1A44 - AVATAR.SYS v0.11+ - GET DATA SEGMENT

Category: V - video

Inp.:

AX = 1A44h

BX = 4156h ('AV')

Return: AX = 0000h

DS = data segment

CX = size of data segment

Note:	AVATAR.SYS calls this function whenever it is invoked.	If each

  process under a multitasker hooks this function and provides a

  separate data segment, AVATAR.SYS becomes fully reentrant.

SeeAlso: AX=1A21h,AX=1A3Fh,AX=1A52h

INT 2F


INT 2F 1A52 - AVATAR.SYS v0.11 - GET ???

undocumented function

Category: V - video

Inp.:

AX = 1A52h

CX = size of buffer

ES:DI -> buffer

Return: ??? copied into user buffer

Note:	the maximum size of the data which may be copied is returned by

  AX=1A72h

SeeAlso: AX=1A53h,AX=1A72h

INT 2F


INT 2F 1A53 - AVATAR.SYS v0.11 - ???

undocumented function

Category: V - video

Inp.:

AX = 1A53h

CL = ??? (00h-05h)

???

Return: ???

SeeAlso: AX=1A00h/BX=4156h,AX=1A52h,AX=1A72h

INT 2F


INT 2F 1A62 - AVATAR Serial Dispatcher - UNINSTALL IRQ3 HANDLER

Category: S - serial I/O

Inp.:

AX = 1A62h

BX = 4156h ('AV')

CX = handle for IRQ routine returned by AX=1A42h

SeeAlso: AX=1A42h,AX=1A63h

INT 2F


INT 2F 1A63 - AVATAR Serial Dispatcher - UNINSTALL IRQ4 HANDLER

Category: S - serial I/O

Inp.:

AX = 1A63h

BX = 4156h ('AV')

CX = handle for IRQ routine returned by AX=1A43h

SeeAlso: AX=1A43h,AX=1A62h

INT 2F


INT 2F 1A72 - AVATAR.SYS v0.11 - GET ??? SIZE

undocumented function

Category: V - video

Inp.:

AX = 1A72h

Return: CX = maximum size of ???

SeeAlso: AX=1A00h/BX=4156h,AX=1A52h,AX=1A7Bh,AX=1AADh"AVATAR"

INT 2F


INT 2F 1A7B - AVATAR.SYS v0.11 - ???

undocumented function

Category: V - video

Inp.:

AX = 1A7Bh

Return: AX = 0000h

CX = 0000h

SeeAlso: AX=1A00h/BX=4156h,AX=1A72h,AX=1A7Dh

INT 2F


INT 2F 1A7D - AVATAR.SYS v0.11 - ???

undocumented function

Category: V - video

Inp.:

AX = 1A7Dh

Return: AX = ???

SeeAlso: AX=1A00h/BX=4156h,AX=1A7Bh

INT 2F


INT 2F 1AA5 - ANSIPLUS v4.00+ - GET/SET ANSIPLUS CLIPBOARD

Category: V - video

Inp.:

AX = 1AA5h

DH = subfunction

    00h get clipboard information

    01h get clipboard text

    02h set clipboard text

    03h append text to clipboard

    04h clear clipboard

    05h paste clipboard to keyboard

ES:BX -> data area for subfunctions 01h, 02h, and 03h

CX = size of data area (maximum size for subfunction 01h, actual size

    to add to clipboard for subfunctions 02h and 03h)

Return: AL = status

    00h successful

    01h unsupported subfunction (reduced capability driver)

    02h insufficient space

    A5h unsupported function (ANSIPLUS before v4.00)

ES:BX -> ANSIPLUS local clipboard data

CX = number of bytes currently in local clipboard

DX = maximum size of local clipboard

SeeAlso: AX=1A00h/BX=414Eh,AX=1AA6h

INT 2F


INT 2F 1AA6 - ANSIPLUS v4.00+ - ENABLE/DISABLE ANSIPLUS DRIVER

Category: V - video

Inp.:

AX = 1AA6h

BH = function

    00h get hooked interrupts

    01h set hooked interrupts mask

BL = new interrupts mask (see #1458)

Return: BL = previous interrupts mask (see #1458)

SeeAlso: AX=1A00h/BX=414Eh,AX=1AA7h

Desc:	used to temporarily disable any prior copies of ANSIPLUS when a new

  copy is installed, such as in a multitasking system like DESQview

Note:	only the most-recently loaded copy of ANSIPLUS on the current INT 2F

  chain responds to this call

INT 2F


INT 2F 1AA7 - ANSIPLUS v4.00+ - ENABLE/DISABLE ANSIPLUS FEATURES

Category: V - video

Inp.:

AX = 1AA7h

BL = function

    00h prevent scroll-back saves

    01h enable scroll-back saves

    02h disable key reprogramming and lock changes by escape sequences

    03h enable key reprogramming by escape sequences

    04h	disable and lock key stacking changes by escape sequences

    05h allow key stacking by escape sequences

Return: nothing

SeeAlso: AX=1AA6h

INT 2F


INT 2F 1AA8 - ANSIPLUS v3.10+ - GET NEXT ANSIPLUS SCROLLBACK LINE

Category: V - video

Inp.:

AX = 1AA8h

Return: AL = status

    00h successful

ES:BX -> screen line (character and attribute pairs)

CX = length of line in bytes, 0000h if no more lines or

      unsupported video mode

    01h unsupported video mode active

    02h screen currently scrolled back

    03h reduced capability driver

    A8h unsupported function (driver before v3.10)

SeeAlso: AX=1A00h/BX=414Eh,AX=1AA9h

INT 2F


INT 2F 1AA9 - ANSIPLUS v3.10+ - GET ANSIPLUS SCROLLBACK INFORMATION

Category: V - video

Inp.:

AX = 1AA9h

Return: AL = status

    00h successful

BX = current number of lines in scrollback buffer

CX = number of bytes in one line

    01h unsupported video mode active

    02h screen currently scrolled back

    03h reduced capability driver

    A9h unsupported function (driver before v3.10)

Desc:	determine how much data is in the scrollback buffer and initialize

  scrollback retrieval to return the first line on the next call to

  AX=1AA8h

SeeAlso: AX=1A00h/BX=414Eh,AX=1AA8h

INT 2F


INT 2F 1AAA - ANSIPLUS v3.01+ - GET/SET ANSIPLUS SCREEN SAVER BLANKING TIME

Category: V - video

Inp.:

AX = 1AAAh

BX = function

    FFFFh to get current blanking time

    other to set time

CX = blanking time in clock ticks (0000h-7FFFh)

Return: BX = current blanking time

CX = blanking time when last set

SeeAlso: AX=1A00h/BX=414Eh,AX=1AABh

INT 2F


INT 2F 1AAB - ANSIPLUS v3.01+ - SET ANSIPLUS KEY REPEAT RATE

Category: V - video

Inp.:

AX = 1AABh

BX = repeat rate in characters per second

    0000h use BIOS repeat rate

Return: nothing

SeeAlso: AX=1A00h/BX=414Eh,AX=1AAAh,AX=1AACh

INT 2F


INT 2F 1AAC - ANSIPLUS v3.00+ - LOAD CHARACTER GENERATOR

Category: V - video

Inp.:

AX = 1AACh

BH = number of bytes per character pattern

BL = VGA/EGA character table to be loaded

CX = number of characters to load

DX = starting character code (offset into Map2 block)

ES:BP -> user character table to be loaded

Return: AX = 1100h

Desc:	load the EGA/VGA character generator without the BIOS function's

  side effects of resetting the video mode and color palette

SeeAlso: AX=1A00h/BX=414Eh,AX=1AABh,AX=1AADh"ANSIPLUS",INT 10/AX=1100h

INT 2F


INT 2F 1AAD - ANSIPLUS v2.00+ - ANSIPLUS DEVICE STATUS REPORT

Category: V - video

Inp.:

AX = 1AADh

BL = report request code (81h-96h for v4.00)

CX = color selector or key code, if required by request

Return: AX = first reported result

BX = second result

CX = third result, if applicable (unchanged otherwise)

DX = fourth result, if applicable (unchanged otherwise)

Desc:	get device status reports equivalent to those for Esc [#n sequences

  while bypassing any device redirection and avoiding the need to

  parse the returned result

Note:	the report request code in BL is identical to the number in the

  corresponding Esc [#n sequence

SeeAlso: AX=1A00h/BX=414Eh,AX=1AACh

INT 2F


INT 2F 1AAD - AVATAR.SYS v0.11 - ???

undocumented function

Category: V - video

Inp.:

AX = 1AADh

DX = 0000h

CX = subfunction (00h-0Ch)

???

Return: AX = 0000h if DX was nonzero

???

SeeAlso: AX=1A00h/BX=4156h,AX=1A72h

INT 2F


INT 2F 1AAC - ANSIPLUS v3.00+ - LOAD CHARACTER GENERATOR

Category: V - video

Inp.:

AX = 1AACh

INT 2F


INT 2F 1B00 - DOS 4+ XMA2EMS.SYS extension internal - INSTALLATION CHECK

undocumented function

Category: m - memory management

Inp.:

AX = 1B00h

Return: AL = FFh if installed

Note:	XMA2EMS.SYS extension is only installed if DOS has page frames to hide.

This extension hooks onto INT 67/AH=58h and returns from that call data

  which excludes the physical pages being used by DOS.

SeeAlso: AH=1Bh"FRAME INFO"

INT 2F


INT 2F 1B-- - DOS 4+ XMA2EMS.SYS extension internal - GET HIDDEN FRAME INFORMATION

undocumented function

Category: m - memory management

Inp.:

AH = 1Bh

AL <> 00h

DI = hidden physical page number

Return: AX = FFFFh if failed (no such hidden page)

AX = 0000h if OK, then

    ES = segment of page frame

    DI = physical page number

Notes:	this corresponds to the data edited out of the INT 67/AH=58h call

FASTOPEN makes this call with AL = FFh

SeeAlso: AX=1B00h

INT 2F


INT 2F 2300 - DR-DOS 5.0 GRAFTABL - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 2300h

Return: AH = FFh

Note:	this installation check does not follow the usual format

SeeAlso: AH=23h,AX=2E00h

INT 2F


INT 2F 23-- - DR-DOS 5.0 GRAFTABL - GET GRAPHICS DATA

Category: V - video

Inp.:

AH = 23h

AL nonzero

Return: AH = FFh

ES:BX -> graphics data (8 bytes for each character from 80h to FFh)

SeeAlso: AX=2300h,AX=2E00h

INT 2F


INT 2F 2700 - DR-DOS 6.0 TaskMAX - INSTALLATION CHECK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2700h

Return: AL = status

    00h not installed

    FFh installed

Note:	the TaskMAX API is also supported by Novell DOS 7 TASKMGR in both

  taskswitching and multitasking modes

INT 2F


INT 2F 2701 - DR-DOS 6.0 TaskMAX - GET STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2701h

Return: AX = maximum simultaneous tasks

BX = index into TASK_IDS of current foreground task

CX = currently-active tasks

DX = version number (DL = major, DH = minor)

    (DR-DOS 6.0 = 0001h, Novell DOS 7 = 0002h)

ES:SI -> TASK_IDS

ES:DI -> name table (array of 8-byte names, NUL-terminated if <8 chars)

Notes:	do not attempt to create a new task if CX == AX

the task's index is its position on the task menu, while its ID is the

  position within the internal task name table

SeeAlso: AX=2714h,AX=2716h

INT 2F


INT 2F 2702 - DR-DOS 6.0 TaskMAX - GET PER-TASK EMS LIMIT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2702h

Return: DX = maximum pages INT 67/AH=42h will report available

Note:	TaskMAX does not limit EMS allocations other than by limiting the

  amount which is reported as being available at a given time

SeeAlso: AX=2703h,INT 67/AH=42h

INT 2F


INT 2F 2703 - DR-DOS 6.0 TaskMAX - SET PER-TASK EMS LIMIT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2703h

DX = maximum pages INT 67/AH=42h should report available

Return: DX = new maximum for reporting

Note:	the TaskMAX API is also supported by Novell DOS 7 TASKMGR in

  both taskswitching and multitasking modes

SeeAlso: AX=2702h,INT 67/AH=42h

INT 2F


INT 2F 2704 - DR-DOS 6.0 TaskMAX - REGISTER/UNREGISTER TASK MANAGER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2704h

DL = subfunction

    00h unregister task manager

    01h register task manager

Return: DL = status

    00h registered

    01h unregistered

Notes:	a task manager replaces TaskMAX's menu system with its own user

  interface; while one is registered, the TaskMAX hotkeys and

  Ctrl-Alt-Del invoke the manager rather than the built-in menu system

unregister the task manager before terminating it

SeeAlso: AX=2705h

Index:	hotkeys;TaskMAX

INT 2F


INT 2F 2705 - DR-DOS 6.0 TaskMAX - ENABLE/DISABLE DIRECT SWITCHING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2705h

DL = subfunction

    00h disable keystrokes for switching to next/prev/specified task

    01h enable

Return: nothing

Note:	should only be called by a registered task manager (see AX=2704h)

SeeAlso: AX=2704h,AX=2706h

INT 2F


INT 2F 2706 - DR-DOS 6.0 TaskMAX - SWITCH TO SPECIFIED TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2706h

DX = task index (see AX=2701h) of task to be activated

Return: DX = task index of previously-active task

Note:	the TaskMAX API is also supported by Novell DOS 7 TASKMGR in

  both taskswitching and multitasking modes

SeeAlso: AX=2705h,AX=2707h,AX=2715h

INT 2F


INT 2F 2707 - DR-DOS 6.0 TaskMAX - CREATE NEW TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2707h

DS:DX -> ASCIZ pathname of executable

ES:BX -> parameter block (see #1459)

CX = number of ticks before automatic return to task manager

(0000h = run until termination or explicitly switched)

Return: DX = new task's task index (FFFFh if task terminated)

SeeAlso: AX=2706h,AX=2708h

INT 2F


INT 2F 2708 - DR-DOS 6.0 TaskMAX - DELETE TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2708h

DX = task index

Return: DX = FFFFh (task deleted)

Notes:	this call should only be used for abnormal task termination, after

  first checking for open files with AX=270Ch; should not be used

  with programs that allocate EMS or XMS memory

switches to specified task first

SeeAlso: AX=2707h

INT 2F


INT 2F 2709 - DR-DOS 6.0 TaskMAX - NAME TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2709h

DX = task index

DS:SI -> 8-byte name (8 NULs = remove name)

Return: AL = task flags

    00h ID unused or task terminated

    01h ID in use, task name table entry valid

    81h ID in use, task name fixed

BX = task ID

ES:DI -> name in task name table (see AX=2701h)

Note:	the task retains the given name until it terminates or the name is

  removed by specifying a name of 8 NULs.

SeeAlso: AX=2701h,AX=2707h

INT 2F


INT 2F 270A - DR-DOS 6.0 TaskMAX - CONVERT TASK INDEX TO TASK ID

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 270Ah

DX = task index

Return: DX = task ID (FFFFh if index invalid)

Note:	task IDs stay constant, while indexes can change when other tasks are

  deleted

SeeAlso: AX=2701h,AX=270Bh

INT 2F


INT 2F 270B - DR-DOS 6.0 TaskMAX - CONVERT TASK ID TO TASK INDEX

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 270Bh

DX = task ID

Return: DX = task index (FFFFh if task not active)

Note:	the TaskMAX API is also supported by Novell DOS 7 TASKMGR in both

  taskswitching and multitasking modes

SeeAlso: AX=270Ah

INT 2F


INT 2F 270C - DR-DOS 6.0 TaskMAX - CHECK OPEN FILES

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 270Ch

DX = task index

Return: AX = number of files currently open for specified task

SeeAlso: AX=2708h

INT 2F


INT 2F 270D - DR-DOS 6.0 TaskMAX - CHECK IF TASK RUNNING PRIMARY COMMAND INTERPRETER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 270Dh

DX = task index

Return: DX = status

    0000h if primary command interpreter (COMMAND.COM, etc.) running

    0001h if not in root shell for task

Note:	TaskMAX will return 0001h if the specified task has spawned another

  command interpreter with AX=2707h

SeeAlso: AX=2707h,AX=270Ch

INT 2F


INT 2F 270E - DR-DOS 6.0 TaskMAX - GET/SET TEXT PASTE LEAD-IN

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 270Eh

CX = length of string (max 15 keystrokes, 0000h to get current string)

DS:SI -> pasting lead-in string (character/scan-code pairs)

Return: ES:DI -> current lead-in string

Note:	the specified sequence of keystrokes is sent to the application before

  every line of a text-mode spreadsheet paste

SeeAlso: AX=270Fh,AX=2710h,AX=2713h

INT 2F


INT 2F 270F - DR-DOS 6.0 TaskMAX - GET/SET NUMERIC PASTE LEAD-IN

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 270Fh

CX = length of string (max 15 keystrokes, 0000h to get current string)

DS:SI -> pasting lead-in string (character/scan-code pairs)

Return: ES:DI -> current lead-in string

Note:	the specified sequence of keystrokes is sent to the application before

  every number in a numeric-mode spreadsheet paste

SeeAlso: AX=270Eh,AX=2710h,AX=2711h,AX=2713h

INT 2F


INT 2F 2710 - DR-DOS 6.0 TaskMAX - GET/SET PASTE LINE TERMINATOR STRING

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2710h

CX = length of string (max 15 keystrokes, 0000h to get current string)

DS:SI -> pasting terminator string (character/scan-code pairs)

Return: ES:DI -> current terminator string

Note:	the specified sequence of keystrokes is sent to the application after

  every line of a spreadsheet paste operation

SeeAlso: AX=270Eh,AX=270Fh,AX=2713h

INT 2F


INT 2F 2711 - DR-DOS 6.0 TaskMAX - GET/SET NUMERIC PASTE DECIMAL POINT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2711h

DX = ASCII code for separator (FFFFh to get current)

Return: DL = current separator character

SeeAlso: AX=270Fh

INT 2F


INT 2F 2712 - DR-DOS 6.0 TaskMAX - INITIATE EXPORTING TASK DATA

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2712h

DX = task index

INT 2F


INT 2F 2713 - DR-DOS 6.0 TaskMAX - INITIATE PASTE OPERATION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2713h

DX = task index

CX = paste mode

    0000h alphanumeric

    0001h numeric

    0002h text

SeeAlso: AX=270Eh,AX=270Fh,AX=2710h,AX=2711h

INT 2F


INT 2F 2714 - DR-DOS 6.0 TaskMAX - GET SWAP SPACE INFO

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2714h

Return: CX = total KB of swap space

DX = available KB of swap space

Note:	the TaskMAX API is also supported by Novell DOS 7 TASKMGR in both

  taskswitching and multitasking modes

SeeAlso: AX=2701h

INT 2F


INT 2F 2715 - DR-DOS 6.0 TaskMAX - SWITCH TO TASK MANAGER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2715h

Return: only after calling task is again selected

SeeAlso: AX=2706h

INT 2F


INT 2F 2716 - DR-DOS 6.0 TaskMAX - GET PASTE BUFFER STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2716h

Return: AX = 0000h if AX=2716h,AX=2717h,AX=2718h supported

    CX = bytes in paste buffer

    DX = current generation number (updated after every copy operation)

SeeAlso: AX=2701h,AX=2713h,AX=2714h,AX=2717h,AX=2718h

INT 2F


INT 2F 2717 - DR-DOS 6.0 TaskMAX - PASTE DATA DIRECTLY TO APPLICATION BUFFER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2717h

CX = bytes in destination buffer

ES:DI -> destination buffer

Return: AX = 0000h if function supported

    CX = bytes actually copied (FFFFh if buffer too small)

    DX = current generation number for paste buffer

Note:	the destination buffer may be too small if another task adds more data

  to the paste buffer after the AX=2716h call but before this call

SeeAlso: AX=2713h,AX=2716h,AX=2718h

INT 2F


INT 2F 2718 - DR-DOS 6.0 TaskMAX - COPY DATA DIRECTLY INTO PASTE BUFFER

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2718h

CX = bytes in source buffer

DS:SI -> source buffer (plain ASCII, lines terminated with CR LF)

Return: AX = 0000h if function supported

    CX = bytes actually copied

    DX = current generation number for paste buffer

SeeAlso: AX=2712h,AX=2716h,AX=2717h

INT 2F


INT 2F 2719 - Novell DOS 7 TaskMGR - NOP

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2719h to 271Bh

INT 2F


INT 2F 271C - Novell DOS 7 TaskMGR - ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 271Ch

DX = ???

    bit 0: ???

Return: ???

---if DX bit 0 set---

AX = 0031h

CX = 0000h

BUG:	if the task switcher is running, and DX bit 0 is set on call, this

  function will crash because its exit code attempts to pop several

  registers which are not pushed when DX bit 0 is set

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = 01h (function number)

CH = subfunction

    00h unused

Return: CX = status (0002h) (see #1460)

    01h unused

Return: CX = status (0002h) (see #1460)

    02h ???

BX = ??? (0005h-000Fh)

Return: CX = status (0000h,0030h) (see #1460)

    03h allocate ???

DX = ???

Return: CX = status (0000h,0003h) (see #1460)

    04h get ???

Return: CX = 0000h (successful)

BX = selector for EMM386 data segment

EBX high word cleared

    05h ???

EDX = ???

Return: ???

    06h return to real mode via triple fault

    07h debugger break

Note:	calls INT 03, then INT 21/AH=02h to output a question

  mark

    08h get ???

Return: CX = 0000h (successful)

EBX = ??? (0 or 2)

    09h ???

    0Ah ???

    0Bh unused

Return: CX = status (0002h) (see #1460)

    0Ch ??? manipulates DOS memory chain

    0Dh ???

EBX = ???

EDX = ???

Return: ???

    0Eh ???

Return: CX = 0000h (successful)

BL = ???     \ or BX = 0000h

BH = ???     /

    0Fh get ???

Return: CX = 0000h (successful)

EBX = ???

    10h get and set ???

EDX = ???

Return: CX = 0000h (successful)

EBX = old value of ???

    11h get ???

Return: CX = 0000h (successful)

EBX = ??? (0100h)

    12h get and set ???

DX = ???

Return: CX = 0000h (successful)

AX = old value of ???

    13h ???

Return: CX = status (0000h,003Fh) (see #1460)

AX = ???

    14h ???

EDX = ???

Return: CX = status (0000h,003Fh) (see #1460)

    15h ???

BX = segment of ???

Return: CX = 0000h (successful)

BX = segment of ???

    16h ???

    17h ???

EBX = subfunction (0-2)

Return: CX = status (0002h if EBX>2) (see #1460)

???

    18h unused

Return: CX = status (0002h) (see #1460)

Return: CX = status (most subfunctions)

(E)AX and/or (E)BX contain return values, depending on function

Notes:	called by DPMS.EXE and EMM386.EXE

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=02h,AX=2780h/CL=03h,AX=2780h/CL=04h

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = 02h (function number)

CH = subfunction

    00h ???

???

Return: CX = status (0000h,0023h, others???) (see #1460)

BX = ??? (0000h if CX=0000h, FFFFh if CX=0023h)

Note:	calls func 04h/sf 03h, func 04h/sf 1Eh,func 02h/sf 43h,

  func 02h/sf 0Bh, and func 04h/sf 01h

    01h get and clear ???

DX = ??? handle or 0000h for default

Return: CX = status (0000h,000Bh) (see #1460)

EBX = old value of ??? if successful

EDX destroyed

    02h ???

DX = index of ???

Return: CX = status (0000h,0004h,0005h) (see #1460)

EBX = 0000FFFFh on error, 00000000h if successful

    03h ???

DX = index of ???

Return: CX = status (0000h,0004h,0006h) (see #1460)

BX = FFFFh on error, 0000h if successful

    04h ???

Return: CX = status (0000h,0007h,000Ah) (see #1460)

    05h ???

EDX -> ??? data (first 8 bytes seem to be name)

Return: CX = status (0000h,0009h,000Dh) (see #1460)

    06h ???

Note:	calls fn 02h/subfn 05h, then fn 02h/subfn 40h

    07h ???

EDX = ???

Return: CX = status (0000h,0009h,000Eh) (see #1460)

    08h ???

EDX = ???

Return: CX = status (0000h,0009h,000Eh) (see #1460)

    09h ???

EDX = ???

Return: CX = status (0000h,0009h,000Fh) (see #1460)

    0Ah ???

EDX = ???

Return: CX = status (0000h,0009h,000Fh) (see #1460)

    0Bh ???

DX = ???

Return: CX = 0000h (successful)

    0Ch ???

Return: CX = 0000h (successful)

    0Dh ???

Return: CX = status (0000h,0023h) (see #1460)

BX = FFFFh on error, 0000h if successful

Note:	calls fn 04h/subfn 03h, fn 04h/subfn 1Eh,

  fn 02h/subfn 43h, fn 02h/subfn 0Bh, fn 04h/sub 01h

    0Eh ???

???

Return: CX = status (0000h,000Ch) (see #1460)

EBX = ??? if successful

    0Fh ???

BX = ???

DX = ??? handle or 0000h for default

Return: CX = status (0000h,000Bh) (see #1460)

    10h get ??? handle

Return: CX = 0000h (successful)

BX = handle of default ???

EBX high word cleared

    11h ???

DX = ??? handle or 0000h for default

BX = ??? (handle???)

Return:	CX = status (0000h,000Bh,0014h) (see #1460)

    12h ???

BX = ???

DX = ???

Return: CX = 0000h (successful)

    13h ???

DX = ???

Return: CX = status (see #1460)

    14h ???

BX = ???

DX = ???

Return: CX = status (0000h,0014h) (see #1460)

BX = FFFFh on error, ??? if successful

    15h set ??? flags

BX = ??? (low two bits only)

DX = ??? handle or 0000h for default

Return: CX = status (0000h,000Bh) (see #1460)

BX = new value of ??? flags (entire word)

EBX high register cleared

    16h clear ??? flag for default ???

Return: CX = 0000h (successful)

    17h ???

    18h ???

    19h ???

    1Ah ???

    1Bh ???

    1Ch ???

    1Dh ???

    1Eh ???

    1Fh ???

    20h ???

    21h ???

    22h ???

    23h ???

    24h ???

    25h ???

    26h ???

    27h ???

    28h ???

    29h ???

    2Ah ???

    2Bh ???

    2Ch ???

    2Dh ???

    2Eh ???

    2Fh ???

    30h ???

    31h ???

    32h ???

    33h ???

    34h ???

    35h ???

    36h ???

    37h ???

    38h ???

    39h ???

    3Ah ???

    3Bh ???

    3Ch ???

    3Eh ???

    3Fh ???

    40h ???

    41h ???

    42h ???

    43h ???

    44h ???

    45h ???

    46h ???

    47h ???

Return: CX = status (most subfunctions)

(E)AX and/or (E)BX contain return values, depending on function

Notes:	called by DPMS.EXE and EMM386.EXE

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=01h,AX=2780h/CL=03h,AX=2780h/CL=04h

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = 03h (function number)

CH = subfunction

    00h ???

    01h ???

    02h ???

    03h ???

    04h ???

    05h ???

    06h ???

    07h ???

    08h ???

    09h ???

    0Ah ???

    0Bh ???

    0Ch ???

    0Dh ???

    0Eh ???

    0Fh ???

    10h ???

    11h ???

    12h ???

    13h ???

    14h ???

    15h ???

    16h ???

    17h ???

    18h ???

    19h ???

    1Ah ???

    1Bh ???

    1Ch ???

    1Dh ???

    1Eh ???

    1Fh ???

    20h ???

    21h ???

    22h ???

    23h ???

    24h ???

    25h ???

    26h ???

    27h ???

    28h ???

    29h ???

    2Ah ???

    2Bh ???

    2Ch ???

    2Dh ???

    2Eh ???

    2Fh ???

    30h ???

    31h ???

    32h ???

    33h ???

    34h ???

    35h ???

    36h ???

    37h ???

Return: CX = status (most subfunctions)

(E)AX and/or (E)BX contain return values, depending on function

Notes:	called by DPMS.EXE and EMM386.EXE

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=01h,AX=2780h/CL=02h,AX=2780h/CL=04h

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = 04h (function number)

CH = subfunction

    00h ???

    01h ???

    02h ???

    03h ???

    04h ???

    05h ???

    06h ???

    07h ???

    08h ???

    09h ???

    0Ah ???

    0Bh ???

    0Ch ???

    0Dh ???

    0Eh ???

    0Fh ???

    10h ???

    11h ???

    12h ???

    13h ???

    14h ???

    15h ???

    16h ???

    17h ???

    18h ???

    19h ???

    1Ah ???

    1Bh ???

    1Ch ???

    1Dh ???

    1Eh ???

    1Fh ???

    20h ???

    21h ???

    22h ???

    23h ???

    24h ???

    25h ???

    26h ???

    27h ???

    28h ???

    29h ???

    2Ah ???

    2Bh ???

    2Ch ???

    2Dh ???

    2Eh ???

    2Fh ???

    30h ???

    31h ???

    32h ???

Return: CX = status (most subfunctions)

(E)AX and/or (E)BX contain return values, depending on function

Notes:	called by DPMS.EXE and EMM386.EXE

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=01h,AX=2780h/CL=02h,AX=2780h/CL=03h

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = 05h

???

Return: ???

Notes:	called by DPMS.EXE and EMM386.EXE

the handler for this function may be set by one of the subfunctions

  of AX=2780h/CL=01h; the default handler returns AX=BX=FFFFh and

  CX=0001h (see #1460)

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=01h,AX=2780h/CL=02h,AX=2780h/CL=03h

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = 06h

???

Return: ???

Notes:	called by DPMS.EXE and EMM386.EXE

the handler for this function may be set by one of the subfunctions

  of AX=2780h/CL=01h; the default handler returns AX=BX=FFFFh and

  CX=0001h (see #1460)

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=01h,AX=2780h/CL=02h,AX=2780h/CL=03h

INT 2F


INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

undocumented function

Category: m - memory management

Inp.:

AX = 2780h

CL = function (07h-0Fh)

???

Return: ???

Notes:	called by DPMS.EXE and EMM386.EXE

the handlers for each of these functions may be set individually by

  one of the subfunctions of AX=2780h/CL=01h; the default handlers

  return with all registers unchanged

this API is only available if AX=12FFh/BX=0EDCh returns successfully;

  because the request is handled on the initial trap to the memory

  manager caused by INT instructions, this API must be invoked with

  an actual INT 2F instruction instead of some simulation such as a

  far call to the address in the interrupt vector table

SeeAlso: AX=12FF/BX=0EDCh,AX=2780h/CL=01h,AX=2780h/CL=02h,AX=2780h/CL=03h

INT 2F


INT 2F 2781 - Novell DOS 7 TaskMGR - BEGIN CRITICAL SECTION???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2781h

Return: ???

SeeAlso: AX=2782h

INT 2F


INT 2F 2782 - Novell DOS 7 TaskMGR - END CRITICAL SECTION???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 2782h

Return: ???

SeeAlso: AX=2781h

INT 2F


INT 2F 2783 - Novell DOS 7 - EMM386.EXE - GET ???

undocumented function

Category: m - memory management

Inp.:

AX = 2783h

Return: AX = ???

BX = ???

INT 2F


INT 2F 278F - Novell DOS 7 TaskMGR - ??? API

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 278Fh

as for INT 2F/AX=2780h

Return: as for INT 2F/AX=2780h

Note:	Novell DOS 7 TaskMGR passes this call through to INT 2F/AX=2780h

  without changing any other registers

SeeAlso: AX=2780h,AX=2782h

INT 2F


INT 2F 2A-- - Gammafax DOS Dispatcher INTERFACE

Category: F - FAX

Inp.:

AH = 2Ah

Note:	details not available at this time

SeeAlso: AX=8000h"FaxBIOS",AX=C000h/BX=444Bh,AX=CB00h,AX=CBDDh,INT 66"BitFax"

INT 2F


INT 2F 2E00 - Novell DOS 7 - GRAFTABL - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = 2E00h

Return: AH = FFh if installed

Note:	this installation check does not follow the usual format of setting

  AL to FFh

SeeAlso: AX=2300h,AH=2Eh"GRAFTABL"

INT 2F


INT 2F 2E-- - Novell DOS 7 - GRAFTABL - GET FONT TABLE

undocumented function

Category: V - video

Inp.:

AH = 2Eh

AL nonzero

Return: AH = FFh if installed

    ES:BX -> graphics data (8 bytes per character from 80h to FFh)

SeeAlso: AX=2E00h,AH=23h"GRAFTABL"

INT 2F


INT 2F 3900 - Kingswood TSR INTERFACE - COMPATIBILITY MODE

Category: t - TSR libraries

Inp.:

AX = 3900h

Return: AL = status

    00h not installed

    FFh one or more TSRs using this interface is installed

DX may be destroyed

Note:	this function is provided to that the multiplex number will appear used

  to other programs

SeeAlso: AH=39h/BL=00h

INT 2F


INT 2F 39-- - Kingswood TSR INTERFACE - INSTALLATION CHECK

Category: t - TSR libraries

Inp.:

AH = 39h

BL = 00h

AL = TSR ID number (01h-FFh, currently only 01h-1Bh used) (see #1461)

Return: AL = status

    00h not installed

    FFh installed

DX = segment address of resident module

Note:	All of Kingswood Software's TSRs use this interface.  Usually the

  resident module is installed by allocating a block of upper memory,

  setting its owner ID to 000Ah (used by DOS), and filling the MCB name

  field with the TSR's name.

SeeAlso: #1462,AX=3900h,AH=39h/BL=01h

INT 2F


INT 2F 39-- - Kingswood TSR INTERFACE - REMOVAL CHECK

Category: t - TSR libraries

Inp.:

AH = 39h

BL = 01h

AL = TSR ID number (01h-FFh) (see #1461)

Return: AL = status

    00h not ready to be removed

    FFh resident module may be removed by deassigning the interrupts

  hooked by the TSR and deallocating the TSR's memory block

AH,BX,CX,DX,ES may be destroyed

SeeAlso: AX=3900h,AH=39h/BL=00h

INT 2F


INT 2F 39-- - Kingswood TSR INTERFACE - APPLICATION-SPECIFIC FUNCTION CALLS

Category: t - TSR libraries

Inp.:

AH = 39h

BL = function number (02h-FFh)

AL = TSR ID number (01h-FFh) (see #1461)

CX,DX,SI,DI,DS,ES may contain parameters

BH reserved for use by the function dispatcher

Return: as appropriate for the called function

SeeAlso: AX=3900h,AH=39h/BL=00h,AX=3901h/BL=02h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - OPEN WINDOW

Category: r - runtime support

Inp.:

AX = 3901h

BL = 02h

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Notes:	opens the next TSR window on top of any others.	 Only three

  TSR windows can be opened at any one time.  The three windows

  are all 40x11 characters, partly overlapping.

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=03h,AX=3901h/BL=05h,AX=3901h/BL=06h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - HIDE WINDOWS

Category: r - runtime support

Inp.:

AX = 3901h

BL = 03h

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Notes:	Hide any visible TSR windows from view.

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=02h,AX=3901h/BL=05h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - SHOW WINDOWS

Category: r - runtime support

Inp.:

AX = 3901h

BL = 04h

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Notes:	Re-display all TSR windows after a HIDE WINDOWS call.

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=02h,AX=3901h/BL=03h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - CLOSE WINDOW

Category: r - runtime support

Inp.:

AX = 3901h

BL = 05h

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Notes:	Close the last opened TSR window.

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=02h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - SET WINDOW TITLE

Category: r - runtime support

Inp.:

AX = 3901h

BL = 06h

DS:SI -> title string

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=02h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - POSITION CURSOR

Category: r - runtime support

Inp.:

AX = 3901h

BL = 07h

CH = Y coordinate (0-10)

CL = X coordinate (0-39)

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Note:	the hardware cursor is always disabled when a TSR window is opened;

  this call only sets a text position

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=08h,AX=3901h/BL=09h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - DISPLAY STRING

Category: r - runtime support

Inp.:

AX = 3901h

BL = 08h

DS:SI -> string

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Notes:	The text is not clipped.

This routine understands Tab, NewLine and Carriage Return

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=07h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - SCROLL WINDOW

Category: r - runtime support

Inp.:

AX = 3901h

BL = 09h

CL = scroll direction: 01h up, FFh down, 00h clear window

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=07h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - SOUND BEEPER

Category: r - runtime support

Inp.:

AX = 3901h

BL = 0Ah

DX = sound divisor, or 0 for silence.

     (divide 1843200 by required frequency to get value for DX)

CL = sound length in 18.2 Hz clock ticks

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

SeeAlso: AH=39h/BL=00h

INT 2F


INT 2F 3901 - Kingswood TSR Windows - ADD OR REMOVE USER

Category: r - runtime support

Inp.:

AX = 3901h

BL = 0Bh

CL = number of users increment: +1 if adding a new user

-1 if removing a user

Return: AX = error code (0000h if successful)

SI,DI,DS,ES preserved

Note:	the TSR windows resident module may only be removed when the internal

  user count is zero

SeeAlso: AH=39h/BL=00h,AX=3901h/BL=02h

INT 2F


INT 2F 3912 - Kingswood ANSI display driver - SET COMPATIBILITY MODE

Category: V - video

Inp.:

AX = 3912h

BL = 03h

CL = new mode (00h fast, FFh BIOS)

Return: AL = old compatibility mode

SI,DI,DS,ES preserved

SeeAlso: AX=3900h,AX=3912h/BL=04h

INT 2F


INT 2F 3912 - Kingswood ANSI display driver - SET FLAGS

Category: V - video

Inp.:

AX = 3912h

BL = 04h

CL = new flags (see #1464)

Return: AL = old flags

SI,DI,DS,ES preserved

SeeAlso: AX=3900h,AX=3912h/BL=03h

INT 2F


INT 2F 4000 - Windows 3.x (OS/2 2.x???) - GET VIRTUAL DEVICE DRIVER (VDD) CAPABLTIES

Category: W - MS Windows

Inp.:

AX = 4000h

Return: AL = video virtualization (see #1465)

Note:	this function is used by display drivers to find out what capabilities

  exist for the VDD driver and also trigger the VDD driver to call

  functions 4005h and 4006h.  This function also gives the Video Driver

  hardware access to the video registers.

INT 2F


INT 2F 4001 - OS/2 compatibility box - SWITCHING DOS TO BACKGROUND

callout or callback (usually hooked rather than called)

Category: O - other operating systems

Inp.:

AX = 4001h

Note:	called by OS/2 when the DOS box is about to be placed in the background

  and the video driver should save any necessary state

SeeAlso: AX=4002h,AX=4005h

INT 2F


INT 2F 4002 - OS/2 compatibility box - SWITCHING DOS TO FOREGROUND

callout or callback (usually hooked rather than called)

Category: O - other operating systems

Inp.:

AX = 4002h

Note:	called by OS/2 when the DOS box is about to be placed in the foreground

  and the video driver should restore the previously-saved state

SeeAlso: AX=4001h,AX=4006h

INT 2F


INT 2F 4003 - Windows 3.x - ENTERING VIDEO DRIVER CRITICAL SECTION

Category: W - MS Windows

Inp.:

AX = 4003h

Note:	This critical section must be exited within 1 second.

SeeAlso: AX=4004h

INT 2F


INT 2F 4004 - Windows 3.x - EXITING VIDEO DRIVER CRITICAL SECTION

Category: W - MS Windows

Inp.:

AX = 4004h

SeeAlso: AX=4003h

INT 2F


INT 2F 4005 - Windows 3.x - SWITCHING DOS TO BACKGROUND

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 4005h

Note:	called by Windows when the DOS box is about to be placed in the

  background and the video driver should save any necessary state

  information (this may be called only in Standard mode)

SeeAlso: AX=4001h,AX=4006h

INT 2F


INT 2F 4006 - Windows 3.x - SWITCHING DOS TO FOREGROUND

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 4006h

Note:	called by Windows when the DOS box is about to be placed in the

  foreground and the video driver should restore any necessary state

  information (this may be called only in Standard mode)

SeeAlso: AX=4002h,AX=4005h

INT 2F


INT 2F 4007 - Windows 3.x - ENABLE VDD TRAPPING OF VIDEO REGISTERS

Category: W - MS Windows

Inp.:

AX = 4007h

Note:	used by Windows Standard mode

INT 2F


INT 2F 4010 - OS/2 v2.0+ - INSTALLATION CHECK / GET VERSION

Category: O - other operating systems

Inp.:

AX = 4010h

Return: AX = 4010h if OS/2 not installed

AX = 0000h for OS/2 Warp 3.0

BX = OS/2 version if installed

Note:	OS/2 Warp 3.0

SeeAlso: INT 21/AH=30h,INT 21/AX=3306h

INT 2F


INT 2F 4040 - PharLap 286|DOS-Extender Lite v2.5 - ???

Category: E - DOS extenders

Inp.:

AX = 4040h

Return: BX:CX -> ???

INT 2F


INT 2F 4100 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 4100h

Return: CF clear if successful

    AL = FFh

CF set on error

    AX = ???

Notes:	MINIPOP and NETPOPUP provide a network message popup service

LAN Manager enhanced mode adds features beyond the standard redirector

  file/printer services

SeeAlso: AX=118Ah,AX=4103h,AX=4104h,AH=42h,AH=4Bh

INT 2F


INT 2F 4103 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - ???

Category: N - network

Inp.:

AX = 4103h

Return: ???

SeeAlso: AX=4100h,AX=4104h

INT 2F


INT 2F 4104 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - ???

Category: N - network

Inp.:

AX = 4104h

Return: ???

SeeAlso: AX=4100h,AX=4103h

INT 2F


INT 2F 42-- - LAN Manager 2.0 DOS Enhanced MSRV.EXE - MESSENGER SERVICE

Category: N - network

Inp.:

AH = 42h

???

Return: ???

Note:	LAN Manager enhanced mode adds features beyond the standard redirector

  file/printer services

SeeAlso: AX=118Ah,AX=4100h,AH=4Bh

INT 2F


INT 2F 4300 - EXTENDED MEMORY SPECIFICATION (XMS) v2+ - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = 4300h

Return: AL = 80h XMS driver installed

AL <> 80h no driver

Notes:	XMS gives access to extended memory and noncontiguous/nonEMS memory

  above 640K

this installation check DOES NOT follow the format used by other

  software

SeeAlso: AX=4310h

Index:	installation check;XMS version 2+


INT 2F 4308 - HIMEM.SYS v2.77+ - GET A20 HANDLER NUMBER

undocumented function

Category: m - memory management

Inp.:

AX = 4308h

Return: AL = 43h if supported

    BL = A20 handler number (value of /MACHINE:nn switch)

    BH = AT A20 switch time (00h medium, 01h fast, 02h slow)

Note:	if the A20 handler number returned in BL is 00h, an external handler

  is being used (see AX=4330h)

SeeAlso: AX=4309h,AX=4330h


INT 2F 4309 - HIMEM.SYS v3.09+ - GET XMS HANDLE TABLE

undocumented function

Category: m - memory management

Inp.:

AX = 4309h

Return: AL = 43h if function supported

    ES:BX -> XMS handle table (see #1466)

Note:	HIMEM.SYS v3.09 is part of MS-DOS 6.0.

SeeAlso: AX=4308h


INT 2F 4310 - EXTENDED MEMORY SPECIFICATION (XMS) v2+ - GET DRIVER ADDRESS

Category: m - memory management

Inp.:

AX = 4310h

Return: ES:BX -> driver entry point (see #1468,#1469,#1472,#1479,#1488,#1493)

Notes:	HIMEM.SYS v2.77 chains to previous handler if AH is not 00h or 10h

HIMEM.SYS requires at least 256 bytes free stack space when calling

  the driver entry point

SeeAlso: AX=4300h,AX=4310h"Cloaking",AX=4310h"Netroom",AX=4310h"XMZ"

Table #1496


INT 2F 4310 - Cloaking - REAL-MODE API

Category: m - memory management

Inp.:

AX = 4310h

Return: ES:BX -> driver entry point (see #1468,#1497,#1498,#1499,#1500)

SeeAlso: AX=4310h"XMS"


INT 2F 4310 - Helix Netroom RM386 v6.00 - XMS EXTENSIONS

Category: m - memory management

Inp.:

AX = 4310h

Return: ES:BX -> driver entry point (see #1502,#1503,#1504,#1505)

Notes:	HIMEM.SYS v2.77 chains to previous handler if AH is not 00h or 10h

HIMEM.SYS requires at least 256 bytes free stack space when calling

  the driver entry point

SeeAlso: AX=4300h,AX=4310h"XMS",AX=4310h"Cloaking"


INT 2F 4310 - NEC PC-9800 - XMZ - PRIVATE API

Category: m - memory management

Inp.:

AX = 4310h

Return: ES:BX -> driver entry point (see #2712,2713)

Program: XMZ is an XMS 2.x-compatible driver for the NEC PC-98 series written

  by ZOBplus Hayami and available at

  ftp:/ftp.tohoku.ac.jp/pub/msdos/Memory/xmz/

SeeAlso: AX=4300h,AX=4310h"XMS"


INT 2F 4320 - HIMEM.SYS - Mach 20 SUPPORT

undocumented function

Category: m - memory management

Inp.:

AX = 4320h

???

Return: ???


INT 2F 4330 - HIMEM.SYS v2.77+ - GET EXTERNAL A20 HANDLER ADDRESS

callout or callback (usually hooked rather than called)

undocumented function

Category: m - memory management

Inp.:

AX = 4330h

Return: AL = 80h if external A20 handler provided

    ES:BX -> external A20 handler (see #1506)

    CL = A20 detection support

00h handler is unable to report A20 state

01h handler supports function 0002h to report A20 state

Note:	HIMEM.SYS calls this function to allow an external program to provide

  an A20 handler (i.e. to support a machine not supported by HIMEM

  itself)

SeeAlso: AX=4308h,AX=4310h


INT 2F 43E0 - DOS Protected Mode Services (DPMS) v1.0 - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = 43E0h

BX = 0000h

CX = 4450h ('DP')

DX = 4D53h ('MS')

Return: AX = 0000h if installed

    CF clear

    ES:DI -> server structure (see #1507)

    ES:BX -> registration structure (pre-NWDOS 7 beta spec) (see #1509)

Note:	the DPMS 1.0 server included with the original release of Novell DOS

  7.0 supports both the beta and 1.0 specification, setting ES:BX even

  if CX and DX are not as specified on entry (since the beta

  specification did not use those registers).  However, the DPMS 1.1

  server included with the March 1994 update does not support the beta

  specification

SeeAlso: AX=43E1h,AX=43E2h,AX=43E3h,INT 2F/AX=1687h

Index:	signature strings;DPMS


INT 2F 43E1 - DOS Protected Mode Services (DPMS) v1.0 - REGISTER CLIENT

Category: m - memory management

Inp.:

AX = 43E1h

CX = required protected-mode stack size in bytes

ES:DI -> DPMS client interface structure (see #1510)

Return: AX = 0000h if supported

   CF clear

   ES:DI buffer filled with API entry point code from offset 0Ah

Note:	the client is allowed to copy the returned API code to any location in

  memory, and need not keep the three code fields together

SeeAlso: AX=43E0h,AX=43E2h,AX=43E3h


INT 2F 43E2 - DOS Protected Mode Services (DPMS) v1.0 - ENABLE/DISABLE DPMS

Category: m - memory management

Inp.:

AX = 43E2h

BX = new state (0000h disable, 0001h enable)

Return: AX = 0000h if supported

Note:	this function should normally be called only by system software

SeeAlso: AX=43E0h,AX=43E1h,AX=43E3h


INT 2F 43E3 - DOS Protected Mode Services (DPMS) v1.0 - DPMS STARTUP BROADCAST

Category: m - memory management

Inp.:

AX = 43E3h

BX = 0000h

CX = 4450h ('DP')

DX = 4D53h ('MS')

SeeAlso: AX=43E0h,AX=43E4h


INT 2F 43E4 - DOS Protected Mode Services (DPMS) v1.0 - DPMS EXIT BROADCAST

Category: m - memory management

Inp.:

AX = 43E4h

BX = 0000h

CX = 4450h ('DP')

DX = 4D53h ('MS')

SeeAlso: AX=43E0h,AX=43E3h


INT 2F 44-- - DOS Extender support???

undocumented function

Category: E - DOS extenders

Inp.:

AH = 44h

AL = function (at least 0Bh, 15h, 17h)

???

Return: ???

Note:	called by Codeview for Windows

SeeAlso: AH=86h


INT 2F 4500 - Microsoft Profiler (PROF.COM/VPROD.386) - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4500h

Return: AL = installation status

    01h if PROF.COM installed

    02h if VPROD.386 installed

SeeAlso: AX=4501h,AX=4502h


INT 2F 4501 - Microsoft Profiler (PROF.COM/VPROD.386) - SETUP PROFILER

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4501h

BX = CSIPS buffer size in KB (first parameter for ProfSetup)

CX = output limit in KB (second parameter for ProfSetup)

Note:	this call is not supported by PROF.COM

SeeAlso: AX=4502h,AX=4503h


INT 2F 4502 - Microsoft Profiler (PROF.COM/VPROD.386) - SET SAMPLING RATE

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4502h

BL = sampling rate for PROF.COM (0 < BL <= 13)

    (01h = 8192/s, 04h = 1024/s, 08h = 32/s, 0Dh = 1/s)

CX = sampling rate for VPROD.386

Note:	for PROF.COM, this programs the CMOS clock by setting BL+2 as the

  low four bits of CMOS register 0Ah.  The interruption rate is

  1 SHL (15 - BL) per second.

SeeAlso: AX=4501h,AX=4503h


INT 2F 4503 - Microsoft Profiler (PROF.COM/VPROD.386) - START PROFILING

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4503h

Notes:	Profiling is also turned on by the key combinations

  LeftShift + RightShift + Alt and LeftShift + RightShift + Ctrl

for PROF.COM, this call programs the CMOS clock by reading register

  0Ch, and setting bit 6 of register 0Bh.  It then makes sure that IRQ8

  is unmasked

SeeAlso: AX=4504h


INT 2F 4504 - Microsoft Profiler (PROF.COM/VPROD.386) - STOP PROFILING

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4504h

Notes:	profiling is also turned off by the key combination

  LeftShift + RightShift

for PROF.COM, this programs the CMOS clock by reading register 0Ch

  and clearing bit 6 of register 0Bh.  It then masks IRQ8.

SeeAlso: AX=4503h,AX=4505h,AX=4506h,AX=4507h


INT 2F 4505 - Microsoft Profiler (PROF.COM/VPROD.386) - CLEAR PROFILING DATA

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4505h

SeeAlso: AX=4503h,AX=4504h,AX=4506h


INT 2F 4506 - Microsoft Profiler (PROF.COM/VPROD.386) - "ProfFlush"

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4506h

SeeAlso: AX=4505h,AX=4507h


INT 2F 4507 - Microsoft Profiler (PROF.COM/VPROD.386) - "ProfFinish"

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4507h

Note:	this call is essentially a "ProfStop" (AX=4504h) followed by

  "ProfFlush" (AX=4506h)

SeeAlso: AX=4504h,AX=4505h,AX=4506h


INT 2F 4508 - Microsoft Profiler (PROF.COM/VPROD.386) - ALTERNATE SEGDEBUG IFACE

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 4508h

BX = ordinal (or 0000h)

CX = segment

DX = instance (or 0000h)

SI = type (or 0000h)

ES:DI -> ASCIZ module name

Notes:	this call is an alternate entry to the profiler's SEGDEBUG

  interface, but only to function 0, for notifying the profiler of

  each new segment loaded.  The SHOWHITS utility then examines the

  profiler's output files (CSIPS.DAT and SEGENTRY.DAT) in conjunction

  with symbol files to provide information in a useful form.

this call does not have a corresponding Windows function

SeeAlso: AX=4500h


INT 2F 4601 - MS Windows WINOLDAP - SWITCHING ???

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AX = 4601h

Return: ???

Note:	the DOS 5+ kernel intercepts this function and copies the MCB

   following the caller's PSP memory block into the DOS data segment;

   in conjunction with AX=4602h, this intercept is used by DOS to

   avoid corruption of the Windows real-mode heap's end sentinel

SeeAlso: AX=1700h,AX=4602h


INT 2F 4602 - MS Windows WINOLDAP - SWITCHING ???

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AX = 4602h

Return: ???

Note:	the DOS 5+ kernel intercepts this function and copies the

  previously-saved MCB from the DOS data segment into the MCB following

  the caller's PSP memory block; in conjunction with AX=4601h, this

  intercept is used by DOS to avoid corruption of the Windows real-mode

  heap's end sentinel

SeeAlso: AX=1700h,AX=4601h


INT 2F 46-- - Windows/286 DOS Extender

undocumented function

Category: E - DOS extenders

Inp.:

AH = 46h

AL = subfunction (03h,04h)

Return: ???

Note:	these two subfunctions are called by MS Windows 3.0


INT 2F 4653 - F-PROT v1.x only - F-LOCK.EXE - API

Category: v - virus/antivirus

Inp.:

AX = 4653h

CX = 0002h

BX = subfunction

    0000h  installation check

Return: AX = FFFFh

    0001h  uninstall

Return: AX,BX,ES destroyed

    0002h  disable (v1.08 and below only)

    0003h  enable (v1.08 and below only)

Program: F-LOCK is part of the shareware F-PROT virus/trojan protection

  package by Fridrik Skulason

SeeAlso: AX=4653h/CX=0003h,AX=CA00h,INT 21/AX=4BEEh

Index:	installation check;F-LOCK|uninstall;F-LOCK


INT 2F 4653 - F-PROT v1.x only - F-XCHK.EXE - API

Category: v - virus/antivirus

Inp.:

AX = 4653h

CX = 0003h

BX = subfunction

    0000h  installation check

Return: AX = FFFFh

    0001h  uninstall

Return: AX,BX,ES destroyed

Program: F-XCHK is part of the shareware F-PROT virus/trojan protection

  package by Fridrik Skulason

SeeAlso: AX=4653h/CX=0002h,AX=4653h/CX=0004h,AX=CA00h

Index:	installation check;F-XCHK|uninstall;F-XCHK


INT 2F 4653 - F-PROT v1.x only - F-POPUP.EXE - API

Category: v - virus/antivirus

Inp.:

AX = 4653h

CX = 0004h

BX = subfunction

    0000h  installation check

Return: AX = FFFFh

    0001h  uninstall

Return: AX,BX,ES destroyed

    0002h  disable (v1.08 and below only)

   display message (v1.14+)

other registers: ???

    0003h  enable (v1.08 and below only)

   display message (v1.14+)

other registers: ???

Return: AX = key pressed by user

Program: F-POPUP is part of the shareware F-PROT virus/trojan protection

  package by Fridrik Skulason

SeeAlso: AX=4653h/CX=0003h,AX=4653h/CX=0005h,AX=CA00h

Index:	installation check;F-POPUP|uninstall;F-POPUP


INT 2F 4653 - F-PROT v1.x only - F-DLOCK.EXE - API

Category: v - virus/antivirus

Inp.:

AX = 4653h

CX = 0005h

BX = subfunction

    0000h installation check

Return: AX = FFFFh

    0001h uninstall

Return: AX,BX,ES destroyed

Program: F-DLOCK is part of the shareware F-PROT virus/trojan protection

  package by Fridrik Skulason

SeeAlso: AX=4653h/CX=0004h,AX=CA00h

Index:	installation check;F-DLOCK|uninstall;F-DLOCK


INT 2F 4680 - MS Windows v3.0 - INSTALLATION CHECK

undocumented function

Category: W - MS Windows

Inp.:

AX = 4680h

Return: AX = result

    0000h MS Windows 3.0 running in real (/R) or standard (/S) mode,

  or DOS 5 DOSSHELL active

    nonzero  no Windows, Windows prior to 3.0, or Windows3 in enhanced

  mode

Note:	Windows 3.1 finally provides an installation check which works in all

  modes (see AX=160Ah)

SeeAlso: AX=1600h,AX=160Ah


INT 2F 47-- - ???

undocumented function

Category: - - (none)

Inp.:

AH = 47h

???

Return: ???

Note:	reportedly called by Microsoft BASIC Compiler v7.0


INT 2F 4800 - DOS 5+ DOSKEY - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = 4800h

Return: AL = nonzero if installed (DOS 5.0 and 6.0 return AX=AA02h)

    ES = segment of DOSKEY resident portion

Note:	DOSKEY chains if AL is not 00h or 10h on entry

SeeAlso: AX=4800h"PCED",AX=4810h


INT 2F 4800 - PCED v2.1 - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = 4800h

Return: AX = AACDh if installed

    ES = segment of PCED kernel (PCED has multiple code segments)

Program: PCED v2.1 is a command line editor/history/macro facility by

  Cove Software.  It is the commercial version of the freeware CED.

Notes:	DOSKEY also responds to this call if installed, returning AX=AA02h.

unlike DOSKEY, PCED does *not* chain if AL contains an

  unsupported function code.  It IRETs with all registers intact.


INT 2F 4810 - DOS 5+ DOSKEY, PCED v2.1 - READ INPUT LINE FROM CONSOLE

Category: K - keyboard enhancers

Inp.:

AX = 4810h

DS:DX -> line buffer (see #0573 at INT 21/AH=0Ah)

Return: AX = 0000h if successful

Notes:	the first byte (length) of the buffer MUST be 80h, or DOSKEY chains to

  the previous handler; PCED allows sizes other than 80h

if the user's input is a macro name, no text is placed in the buffer

  even though AX=0000h on return; the program must immediately issue

  this call again to retrieve the expansion of the macro.  Similarly,

  if the user enters a special parameter such as $*, this call must

  be repeated to retrieve the expansion; on the second call, DOSKEY

  overwrites the macro name on the screen with its expansion.

unlike DOSKEY, PCED expands all macros on the first call, so it is

  not necessary to make two calls; since the buffer is not empty on

  return, DOSKEY-aware programs will not make the second call

DOSKEY chains if AL is not 00h or 10h on entry

SeeAlso: AX=4800h,INT 21/AH=0Ah


INT 2F 48C0 - PCED v2.1 - PCED API

Category: K - keyboard enhancers

Inp.:

AX = 48C0h

DX = API function code

other registers as required by the specified function

Return: CF clear if successful

CF set on error

    AX = PCED error code

other registers as appropriate for API function

Program: PCED v2.1 is a command line editor/history/macro facility by

  Cove Software.  It is the commercial version of the freeware CED.

Note:	the full API information is available from Cove Software

SeeAlso: AX=4800h"PCED",AX=48C1h,AX=48C2h,AX=48C3h


INT 2F 48C1 - PCED/VSTACK - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 48C1h

BL = 00h

Return: AX = 0000h if installed

    BX = VSTACK resident segment

Program: VSTACK is a resident backscroll utility included as part of the PCED

  package by Cove Software

Note:	chains if BL <> 00h on entry

SeeAlso: AX=48C0h,AX=48C2h


INT 2F 48C2 - PCED/ATTRIB - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 48C2h

BL = 00h

Return: AX = 0000h if installed

    BX = ATTRIB resident segment

Program: ATTRIB is a resident file attribute changer included as part of the

  PCED package by Cove Software

Note:	chains if BL <> 00h on entry

SeeAlso: AX=48C0h,AX=48C1h,AX=48C3h


INT 2F 48C3 - PCED/KEYDEF - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = 48C3h

BL = 00h

Return: AX = 0000h if installed

    BX = KEYDEF resident segment

Program: KEYDEF is a resident keyboard redefinition utility included as part

  of the PCED package by Cove Software

Note:	chains if BL <> 00h on entry

SeeAlso: AX=48C0h,AX=48C2h,AX=48C4h


INT 2F 48C4 - PCED/FLIST - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 48C4h

BL = 00h

Return: AX = 0000h if installed

    BX = FLIST resident segment

Program: FLIST is a resident filelist processor included as part of the PCED

  package by Cove Software

Note:	chains if BL <> 00h on entry

SeeAlso: AX=48C0h,AX=48C3h,AX=48C5h


INT 2F 48C5 - PCED/ASSOC - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 48C5h

BL = 00h

Return: AX = 0000h if installed

    BX = ASSOC resident segment

Program: ASSOC is a resident utility included as part of the PCED package which

  associated files with executable programs based on their extensions

Note:	chains if BL > 02h on entry

SeeAlso: AX=48C0h,AX=48C4h,AX=48C5h/BL=01h,AX=48C5h/BL=02h


INT 2F 48C5 - PCED/ASSOC - VERSION CHECK

Category: U - resident utilities

Inp.:

AX = 48C5h

BL = 01h

Return: AX = 0000h if installed

    BX = binary ASSOC version (BL = major, BH = minor)

Note:	chains if BL > 02h on entry

SeeAlso: AX=48C0h,AX=48C5h/BL=00h,AX=48C5h/BL=02h


INT 2F 48C5 - PCED/ASSOC - ASSOCIATION TEST

Category: U - resident utilities

Inp.:

AX = 48C5h

BL = 02h

DS:SI -> ASCIZ filename

Return: AX = status

    0000h if filename is unknown

    0001h if there is an association defined for the file

BX destroyed

Program: ASSOC is a resident utility included as part of the PCED package which

  associated files with executable programs based on their extensions

Note:	chains if BL > 02h on entry

SeeAlso: AX=48C0h,AX=48C5h/BL=00h,AX=48C5h/BL=01h


INT 2F 49-- - ???

undocumented function

Category: - - (none)

Inp.:

AH = 49h

???

Return: ???

Note:	reportedly called by DOS 5.0 installation


INT 2F 4A00 - DOS 5+ - FLOPPY-DISK LOGICAL DRIVE CHANGE NOTIFICATION

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AX = 4A00h

CX = 0000h

DH = new drive number

DL = current drive number

Return: CX = FFFFh to skip "Insert diskette for drive X:" message

Note:	called by MS-DOS 5.0+ IO.SYS just before displaying the message

  "Insert diskette for drive X:" on single-floppy systems


INT 2F 4A01 - DOS 5+ - QUERY FREE HMA SPACE

Category: D - DOS kernel

Inp.:

AX = 4A01h

Return: BX = number of bytes available in HMA (0000h if DOS not using HMA)

ES:DI -> start of available HMA area (FFFFh:FFFFh if not using HMA)

Notes:	called by Windows 3.1 DOSX.EXE

supported by Novell DOS 7

SeeAlso: AX=4310h,AX=4A02h


INT 2F 4A02 - DOS 5+ - ALLOCATE HMA SPACE

Category: D - DOS kernel

Inp.:

AX = 4A02h

BX = number of bytes

Return: ES:DI -> start of allocated HMA block or FFFFh:FFFFh

BX = number of bytes actually allocated (rounded up to next paragraph

      for DOS 5.0 and 6.0)

Notes:	this call is not valid unless DOS is loaded in the HMA (DOS=HIGH)

called by Windows 3.1 DOSX.EXE

supported by Novell DOS 7

SeeAlso: AX=4A01h


INT 2F 4A05 - DOS 5+ DOSSHELL - TASK SWITCHING API???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 4A05h

SI = function

    0000h reset???

    0001h ???

ES:BP -> 80-byte buffer containing ???

    0002h ???

    0003h ???

    0004h ???

BL = ???

    0005h ???

    0006h get ???

Return: ES:SI -> ???

    0007h get ???

Return: AX = ???

    0008h get ???

Return: DX:AX -> ??? (internal control data of some kind)

    0009h get ???

Return: ES:SI -> ??? (apparently identical to function 0006h)

    000Ah ???

BL = length of buffer

ES:BP -> buffer containing ???

    000Bh get ???

Return: AX = ???

    000Ch ???

BL = ???

Return: if BL nonzero on entry

    DX:AX -> ???

if BL = 00h on entry

    ES:SI -> ???

Notes:	DOSSHELL chains to the previous handler if SI is not one of the values

  listed above

the DOSSWAP.EXE module calls functions 03h,04h,05h,07h,08h,09h,0Ch

the Windows 3.1 DSWAP.EXE and WSWAP.EXE task switchers use these calls

SeeAlso: AX=4B01h


INT 2F 4A06 - DOS 5+ - DOS SUPERVISOR "REBOOT PANEL" - ADJUST MEMORY SIZE

callout or callback (usually hooked rather than called)

undocumented function

Category: D - DOS kernel

Inp.:

AX = 4A06h

DX = segment following last byte of conventional memory

Return: DX = segment following last byte of memory available for use by DOS

Desc:	used to override the default memory size when booting diskless

  workstations

Notes:	called by MS-DOS 5+ IO.SYS startup code if the signature "RPL" is

  present three bytes beyond the INT 2F handler; this call overrides

  the value returned by INT 12

hooked by RPL code at the top of memory to protect itself from being

  overwritten; DOS builds a memory block with owner = 0008h and name

  "RPL" which must be freed by the RPL code when it is done

SeeAlso: INT 12,INT 18


INT 2F 4A07 - RESERVED FOR PROTMAN SUPPORT

undocumented function

Category: N - network

Inp.:

AX = 4A07h

???

Return: ???


INT 2F 4A10 - SMARTDRV v4.00+ - INSTALLATION CHECK AND HIT RATIOS

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0000h

CX = EBABh (v4.1+; see Note)

Return: AX = BABEh if installed

    DX:BX = cache hits

    DI:SI = cache misses

    CX = number of dirty cache elements

    BP = version in BCD (4.10 = 0410h)

Notes:	most of the SMARTDRV API, including this call, is supported by

  PC-Cache v8.0 and recent versions of the Norton Caches

if DBLSPACE.BIN is installed but SMARTDRV has not yet been installed,

  then calls of this function with CX<>EBABh on entry cause

  DBLSPACE.BIN to display the error message

  "Cannot run SMARTDrive 4.0 with DoubleSpace" and abort the caller

  with INT 21/AX=4C00h

SMARTDRV v3.x had a completely different API using IOCTL calls, which

  was also supported by the Norton Caches

SeeAlso: AX=4A10h/BX=0001h,AX=4A10h/BX=0004h,AX=4A10h/BX=0005h

SeeAlso: AX=4A10h/BX=0007h,AX=4A10h/BX=1234h,AX=4A11h/BX=0000h

SeeAlso: INT 21/AX=4402h"SMARTDRV",INT 21/AX=4403h"SMARTDRV"


INT 2F 4A10 - Novell NWCACHE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0000h

CX = 0EDCh ('EDC' = Novell European Development Center)

Return: ???

SeeAlso: AX=4A10h/BX=0001h"NWCACHE"


INT 2F 4A10 - SMARTDRV v4.00+ - FLUSH BUFFERS (COMMIT CACHE)

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0001h

Note:	this function is also supported by PC-Cache v8.0.

SeeAlso: AX=4A10h/BX=0000h,AX=4A10h/BX=0002h


INT 2F 4A10 - Novell NWCACHE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0001h

CX = 0EDCh ('EDC' = Novell European Development Center)

Return: ???

SeeAlso: AX=4A10h/BX=0000h"NWCACHE"


INT 2F 4A10 - SMARTDRV v4.00+ - RESET CACHE

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0002h

Note:	this function is also supported by PC-Cache v8.0.

SeeAlso: AX=4A10h/BX=0000h,AX=4A10h/BX=0001h


INT 2F 4A10 - SMARTDRV v4.00+ - STATUS

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0003h

BP = drive number (0=A, 1=B, etc.)

DL = subfunction

    00h only get information

    01h turn on read cache

    02h turn off read cache

    03h turn on write cache

    04h turn off write cache

Return: AX = BABEh if OK

DL = status (see #1516)

DL = FFh if drive does not exist

Notes:	If the read cache is off, reads will not be cached, but writes will

  continue to be cached if the write-cache is enabled.

this function is also supported by PC-Cache v8.0.

SeeAlso: AX=4A10h/BX=0000h


INT 2F 4A10 - SMARTDRV v4.00+ - GET CACHE SIZE

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0004h

Return: AX = size in elements of full-sized cache

BX = current size in elements

CX = size of one element in bytes

DX = number of elements under Windows

Note:	this function is also supported by PC-Cache v8.0.

SeeAlso: AX=4A10h/BX=0000h,AX=4A10h/BX=0003h,AX=4A10h/BX=0005h


INT 2F 4A10 - SMARTDRV v4.00+ - GET DOUBLE-BUFFER STATUS

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0005h

BP = drive number (0=A, 1=B...)

Return: AX = BABEh if double-buffered

    ES:DI -> 16-byte array of status bytes for fixed disks (see #1517)

SeeAlso: AX=4A10h/BX=0000h,AX=4A10h/BX=0003h,AX=4A10h/BX=0006h


INT 2F 4A10 - SMARTDRV v4.00+ - CHECK IF DRIVE CACHEABLE

callout or callback (usually hooked rather than called)

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0006h

CL = drive number (01h = A:)

Return: AX = 0006h if drive should not be cached by SMARTDRV

Note:	called by SMARTDRV at startup to determine whether it should cache

  a particular drive

SeeAlso: AX=4A10h/BX=0000h


INT 2F 4A10 - SMARTDRV v4.00+ - GET DEVICE DRIVER FOR DRIVE

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0007h

BP = drive number (00h=A:)

Return: DL = unit number within device driver

ES:DI -> device driver header for drive

Note:	this function is also supported by PC-Cache v8.0.

this call is reported to always return the driver header of the

  standard block driver (A:-C:+) for SmartDrive v5.00 from MS-DOS 6.2

SeeAlso: AX=4A10h/BX=0000h,AX=4A11h/BX=0003h,AX=4A11h/BX=0004h


INT 2F 4A10 - SMARTDRV v4.20+ - GET/SET FLUSH BEFORE PROMPT, CD-ROM SUPPORT

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 0008h

DL = subfunction

    00h set

DH = new states

    bit 0: flush before prompt

    bits 1-7 reserved (0)

    01h get

Return: DH = status flags

    bit 0: (v4.2+) flush before prompt

    bit 1: (v5.0+) CD-ROM caching support installed

Note:	v4.2 was an interim release to fix problems in the SMARTDRV included

  with MS-DOS 6.00; v5.00 is included with MS-DOS 6.2


INT 2F 4A10 - SMARTDRV v4.00+ - GET ELEMENT STATUS TABLE

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 000Ah

Return: ES:BX -> information pointer table (see #1518)

Note:	this function is also supported by PC-Cache v8.0.

SeeAlso: AX=4A10h/BX=0000h


INT 2F 4A10 - SMARTDRV v4.00+ - SIGNAL SERIOUS ERROR

Category: c - caches/spoolers

Inp.:

AX = 4A10h

BX = 1234h

Desc:	this function pops up a message box saying that a serious error

  occurred and to hit R to retry, then waits for the keypress

Note:	this function is also supported by PC-Cache v8.0.

SeeAlso: AX=4A10h/BX=0000h


INT 2F 4A11 - DBLSPACE.BIN - "GetVersion" - INSTALLATION CHECK

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0000h

Return: AX = 0000h (successful)

BX = 444Dh ("DM")

CL = first drive letter used by DBLSPACE (41h ['A'] = A:)

CH = number of drive letters used by DBLSPACE

DX = internal DBLSPACE.BIN version number (bits 14-0)

bit 15 set if DBLSPACE.BIN has not yet been relocated to final

  position in memory (i.e. DBLSPACE.SYS /MOVE)

Program: DBLSPACE.BIN is the resident driver for DoubleSpace, the

  disk-compression software bundled with MS-DOS 6.0 and 6.20

Notes:	this function is also supported by the version of SuperStor bundled

  with IBM DOS 6.x and "preloading" versions of Stacker

the complete DBLSPACE.BIN API is still supported by MS-DOS 6.22's

  DRVSPACE.BIN

SeeAlso: AX=4A11h/BX=0001h,AX=4A11h/BX=0002h,AX=4A11h/BX=0003h

SeeAlso: AX=4A11h/BX=0005h,AX=4A11h/BX=0007h,AX=4A11h/BX=FFFFh

SeeAlso: INT 21/AX=4404h"DBLSPACE"


INT 2F 4A11 - DBLSPACE.BIN - "GetDriveMapping" - GET DRIVE MAPPING

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0001h

DL = drive number (0=A:)

Return: AX = status (see also #1519)

    0000h successful

if DL was compressed drive,

    BL = host drive (bit 7 set if drive is compressed)

else if DL was host drive,

    BL = compressed drive

else

    BL = specified drive (if available for DoubleSpace)

BH = DoubleSpace sequence number

    other error code (0101h) (see #1519)

apparently never returned for the MS-DOS 6.2 DoubleSpace

Note:	the compressed volume file for the specified compressed drive is

  host:\DBLSPACE.sequence

SeeAlso: AX=4A11h/BX=0000h


INT 2F 4A11 - DBLSPACE.BIN - "Swap Drive" - SWAP DRIVE LETTERS OF CVF AND HOST DRIVE

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0002h

DL = drive number (0=A:) of compressed drive to swap with its host

Return: AX = status (0000h,0101h,0102h,0103h) (see #1519)

Note:	this function is intended for use by DBLSPACE.EXE only

SeeAlso: AX=4A11h/BX=0000h


INT 2F 4A11 - DBLSPACE.BIN - "DSGetEntryPoints" - GET DEVICE DRIVER ENTRY POINTS

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0003h

CL = drive number (0=A:) of compressed drive

Return: CL = FFh on error (not compressed drive)

CL <> FFh driver unit number of host drive

    ES:SI -> device driver's strategy routine

    ES:DI -> device driver's interrupt routine

BX destroyed

Note:	in conjunction with subfunction 0004h, this call allows disk caches

  like SMARTDRV to apply a device driver wrapper to DoubleSpaced

  drives just like SMARTDRV applies to regular block devices

SeeAlso: AX=4A10h/BX=0007h,AX=4A11h/BX=0000h,AX=4A11h/BX=0004h


INT 2F 4A11 - DBLSPACE.BIN - "DSSetEntryPoints" - SET DEVICE DRIVER ENTRY POINTS

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0004h

CL = drive number (0=A:) of compressed drive

DL = unit number for new driver entry points

DH = 00h

ES:SI -> device driver strategy routine to call for drive

ES:DI -> device driver interrupt routine to call for drive

Return: CL = FFh on error (not a compressed drive)

BX destroyed

Program: DBLSPACE.BIN is the resident driver for DoubleSpace, the

  disk-compression software bundled with MS-DOS 6.0

Note:	in conjunction with subfunction 0003h, this call allows disk caches

  like SMARTDRV to apply a device driver wrapper to DoubleSpaced

  drives just like SMARTDRV applies to regular block devices

SeeAlso: AX=4A10h/BX=0007h,AX=4A11h/BX=0000h,AX=4A11h/BX=0003h


INT 2F 4A11 - DBLSPACE.BIN - "ActivateDrive" - MOUNT COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0005h

DL = drive number (0=A:) to assign to new drive

ES:SI -> activation record (see #1520)

Return: status returned in activation record (see #1521)

SeeAlso: AX=4A11h/BX=0000h,AX=4A11h/BX=0006h


INT 2F 4A11 - DBLSPACE.BIN - "DeactivateDrive" - UNMOUNT COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0006h

DL = drive number (0=A:) to unmount

Return: AX = status (0000h,0102h) (see #1519)

SeeAlso: AX=4A11h/BX=0000h,AX=4A11h/BX=0005h


INT 2F 4A11 - DBLSPACE.BIN - "GetDriveSpace" - GET SPACE AVAIL ON COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0007h

DL = compressed drive number (0=A:)

Return: AX = status (0000h,0102h) (see also #1519)

    0000h successful

DS:SI -> free space record (see #1522)

Program: DBLSPACE.BIN is the resident driver for DoubleSpace, the

  disk-compression software bundled with MS-DOS 6.0

SeeAlso: AX=4A11h/BX=0000h,AX=4A11h/BX=0008h


INT 2F 4A11 - DBLSPACE.BIN - "GetFileFragmentSpace" - GET SIZE OF FRAGMENT HEAP

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0008h

DL = compressed drive number (0=A:)

Return: AX = status (0000h,0102h) (see also #1519)

    0000h successful

BX = maximum entries in File Fragment heap

CX = available entries in File Fragment heap

SeeAlso: AX=4A11h/BX=0000h,AX=4A11h/BX=0007h,AX=4A11h/BX=0009h


INT 2F 4A11 - DBLSPACE.BIN - "GetExtraInfo" - DETERMINE NUMBER OF DISK_UNIT STRUCTS

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 0009h

DL = compressed drive number (0=A:)

Return: AX = status (see also #1519)

    0000h successful

CL = number of DISK_UNIT structures allocated

  (see AX=4A11h/BX=0005h)

CH = DoubleGuard enabled-checks bitflags in bits 6-0 (DOS 6.2)

Note:	the DoubleGuard checks are enabled or disabled as a block by the

  DoubleGuard= line in DBLSPACE.INI; they may be individually set with

  the CheckSum= line.

SeeAlso: AX=4A11h/BX=0000h,AX=4A11h/BX=0008h


INT 2F 4A11 - DBLSPACE.BIN v6.2 - SET AUTOMOUNT DRIVES

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 000Ah

CX:DX = bitmask of drives on which to enable AutoMount

(DX bit 0 = A:, CX bit 0 = P:, etc.)

Return: AX = 0000h if supported

    CX:DX = old mask or 0000h:0000h on error

BX destroyed

SeeAlso: AX=4A11h/BX=000Bh


INT 2F 4A11 - DBLSPACE.BIN v6.2 - GET AUTOMOUNT DRIVES

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = 000Bh

Return: AX = 0000h if supported

    CX:DX = mask of drives with AutoMount enabled

0000h:0000h on error

BX destroyed

SeeAlso: AX=4A11h/BX=000Ah


INT 2F 4A11 - DBLSPACE.BIN - RELOCATE

undocumented function

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = FFFEh

ES = segment to which to relocate DBLSPACE.BIN

Return: ???

Notes:	called by DBLSPACE.SYS to relocate DBLSPACE.BIN to its final position

  in memory

this function also unhooks and discards the code providing this

  function and AX=4A11h/BX=FFFFh

this function is also supported by the version of SuperStor bundled

  with IBM DOS 6.x and "preloading" versions of Stacker

SeeAlso: AX=4A11h/BX=FFFFh


INT 2F 4A11 - DBLSPACE.BIN - GET RELOCATION SIZE

undocumented function

Category: k - file/disk compression

Inp.:

AX = 4A11h

BX = FFFFh

Return: AX = number of paragraphs needed by DBLSPACE.BIN

Note:	used by DBLSPACE.SYS to relocate the DBLSPACE driver to its final

  position in memory

this function is also supported by the version of SuperStor bundled

  with IBM DOS 6.x and "preloading" versions of Stacker

SeeAlso: AX=4A11h/BX=0000h,AX=4A11h/BX=FFFEh


INT 2F 4A12 - Microsoft Realtime Compression Interface (MRCI) - RAM-BASED SERVER

Category: k - file/disk compression

Inp.:

AX = 4A12h

CX = 4D52h ("MR")

DX = 4349h ("CI")

Return: CX = 4943h ("IC") if installed

DX = 524Dh ("RM") if installed

    ES:DI -> MRCINFO structure (see #0544 at INT 1A/AX=B001h)

Note:	this call is functionally identical to INT 1A/AX=B001h, but should be

  called first, as the latter call is used for the first, ROM-based

  MRCI server, while this call is used for RAM-based servers which

  may be partially or entirely replacing a prior server

SeeAlso: AX=4A12h/CX=5354h,INT 1A/AX=B001h


INT 2F 4A12 - Stacker 4 LZS Compression Interface (LZSAPI)

Category: k - file/disk compression

Inp.:

AX = 4A12h

CX = 5354h ("ST")

DX = 4143h ("AC")

Return: AX = 4F4Bh ("OK") if installed

CX = 7374h ("st") if installed

DX = 6163h ("ac") if installed

    ES:DI -> entry point in LZSAPI server (usually, driver

      STACKER.COM) containing far address of an actual

      LZSINFO structure (see #1523)

SeeAlso: AX=4A12h/CX=4D52h,INT 25/AX=CDCDh


INT 2F 4A13 - DBLSPACE.BIN - GET ??? ENTRY POINTS

undocumented function

Category: k - file/disk compression

Inp.:

AX = 4A13h

Return: AX = 134Ah if supported

    ES:BX -> entry point record (see #1529)

SeeAlso: AX=4A11h/BX=0000h


INT 2F 4B-- - LAN Manager 2.0 DOS Enh NETWKSTA.EXE - NETWORK WORKSTATION REDIRECTOR

Category: N - network

Inp.:

AH = 4Bh

???

Return: ???

Note:	LAN Manager enhanced mode adds features beyond the standard redirector

  file/printer services

SeeAlso: AX=118Ah,AX=4100h,AH=42h


INT 2F 4B01 - DOS 5+ TASK SWITCHER - BUILD CALLOUT CHAIN

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 4B01h

CX:DX -> task switcher entry point (see #1532)

ES:BX = 0000h:0000h

Return: ES:BX -> callback info structure (see #1530) or 0000h:0000h

Notes:	called by the task switcher

this function is hooked by clients which require notification of task

  switcher activities; the call must first be passed on to the prior

  handler with registers unchanged using a simulated interrupt.	 On

  return, the client must build a callback info structure and store

  the returned ES:BX in the "next" field, then return the address of

  its own callback info structure.

a client program must add itself to the notification chain if it

  provides services to other programs; before terminating, it must

  remove itself from the chain by calling the task switcher's entry

  point with AX=0005h (see #1532)

the task switcher entry point should not be saved, as it is subject to

  change and will be provided on any notification call

the Windows 3.1 Standard Mode supports this API

SeeAlso: AX=160Bh,AX=4B02h


INT 2F 4B02 - DOS 5+ TASK SWITCHER - INSTALLATION CHECK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 4B02h

BX = 0000h

ES:DI = 0000h:0000h

Return: ES:DI = 0000h:0000h if task switcher not loaded

ES:DI -> task switcher entry point (see #1532) if loaded

    AX = 0000h

Notes:	the returned entry point is that for the most-recently loaded task

  switcher; the entry points for prior task switchers may be determined

  with the "get version" call (see #1532)

this function is supported by PC Tools v8+ CPTASK

SeeAlso: AX=4A05h,AX=4B03h


INT 2F 4B03 - DOS 5+ TASK SWITCHER - ALLOCATE SWITCHER ID

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 4B03h

ES:DI -> task switcher entry point (see #1532)

Return: AX = 0000h

BX = switcher ID (0001h-000Fh), or 0000h if no more available

Notes:	if a task switcher has determined that it is the first to be loaded, it

  must allocate an identifier for itself and provide this function to

  all subsequent task switchers; if it is not the first to be loaded,

  it must call this function to allocate an ID.	 The switcher ID is

  used as the high four bits of all session identifiers to ensure

  unique session IDs.

if no more switcher IDs are available, the new task switcher making the

  call must terminate or disable itself

the task switcher providing the identifiers may call the new task

  switcher's entry point as needed

this call is available from within DOSSHELL even if the task switcher

  is not installed

this function is supported by PC Tools v8+ CPTASK, but appears to

  always return an ID of 0000h

SeeAlso: AX=4B02h,AX=4B04h


INT 2F 4B04 - DOS 5+ TASK SWITCHER - FREE SWITCHER ID

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 4B04h

BX = switcher ID

ES:DI -> task switcher entry point (see #1532)

Return: AX = 0000h

BX = status

    0000h successful

    other error (invalid ID or ID not allocated)

Notes:	called by a task switcher when it exits, unless it was the first loaded

  and is providing the support for AX=4B03h and AX=4B04h

the task switcher providing the identifiers may call the terminating

  task switcher's entry point as needed

this call is available from within DOSSHELL even if the task switcher

  is not installed

this call is supported by PC Tools v8+ CPTASK, but appears to return

  sucessfully no matter which ID is given

SeeAlso: AX=4B02h,AX=4B03h


INT 2F 4B05 - DOS 5+ TASK SWITCHER - IDENTIFY INSTANCE DATA

callout or callback (usually hooked rather than called)

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = 4B05h

ES:BX = 0000h:0000h

CX:DX -> task switcher entry point (see #1532)

Return: ES:BX -> startup info structure (see #1535) or 0000h:0000h

Notes:	called by task switcher

clients with instance data should hook this call, pass it through to

  the previous handler with unchanged registers using a simulated

  interrupt.  On return, the client should create a startup info

  structure (see #1535), store the returned ES:BX in the "next"

  field, and return the address of the created structure in ES:BX

all MS-DOS function calls are available from within this call

SeeAlso: AX=1605h,AX=160Bh,AX=4B02h


INT 2F 4B06 - MS Windows - WIN.COM - GET ??? POINTER TO WIN.COM

Category: W - MS Windows

Inp.:

AX = 4B06h

Return:	AX = 0000h

ES:BX -> ??? function in WIN.COM

Note:	the entry point is called with

    AX = 0001h or 0003h

    BX = ???

SeeAlso: AX=4B80h


INT 2F 4B20 - MS Windows 3 - WIN.COM - SET PROGRAM TO EXECUTE ON EXIT

Category: W - MS Windows

Inp.:

AX = 4B20h

Return: AX = 0000h if successful

    DX:CX -> 256-byte buffer for pathname and commandline (see #1537)

Note:	when the Windows function ExitWindows is called with an exit code of

  44h, WIN.COM executes the program specified in the returned buffer

  and then restarts Windows


INT 2F 4B80 - MS Windows - WSWAP.EXE - RESET INTERNAL VARIABLES

Category: W - MS Windows

Inp.:

AX = 4B80h

Return: nothing

Note:	called by WINOLDAP.MOD

SeeAlso: AX=4B06h


INT 2F 4C-- - Advanced Power Management

undocumented function

Category: p - power management

Inp.:

AH = 4Ch

AL = function

    00h version check

    01h suspend system requested

    FFh suspend/resume battery notification

???

Return: ???


INT 2F 4D-- - ???

undocumented function

Category: - - (none)

Inp.:

AH = 4Dh

???

Return: ???

Note:	reportedly called by Kana Kanji Converter and MSKK


INT 2F 4E53 - SilverNET v2+ - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 4E53h ("NS")

BL = 00h (function "installation check")

BH = module ID (see #1538)

Return: AX = 0000h if specified module installed

BX = 4E53h if installed

Program: SilverNET is an SMB-compatible peer-to-peer NOS for DOS or

  Windows systems, by Net-Source, Inc. of Santa Clara, CA.

SeeAlso: AX=4E53h/BL=01h,AX=4E53h/BL=02h,AX=B800h,AX=B809h


INT 2F 4E53 - SilverNET - GET RUNTIME PARAMETER

Category: N - network

Inp.:

AX = 4E53h ("NS")

BL = 01h (function "get runtime parameter")

BH = module ID (see #1538)

CX = parameter index (see #1539,#1541,#1542)

Return: AX = WORD value at specified index (see #1540)

Desc:	retrieve a word of data from the specified SilverNET module


INT 2F 4E53 - SilverNET - SET RUNTIME PARAMETERS

Category: N - network

Inp.:

AX = 4E53h ("NS")

BL = 02h (function "set runtime parameters")

BH = module ID (see #1538)

CX = parameter index (see #1541,#1542)

DX = new value for specified parameter

Desc:	set a WORD value in the specified SilverNET module

Note:	not all indexed parameters are writable; modifying a read-only

  parameter can result in system crashes

SeeAlso: AX=4E53h/BL=00h,AX=4E53h/BL=01h


INT 2F 5100 - ODIHLP.EXE - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 5100h

Return: AL = FFh if installed

    BX = 0000h

    DX:SI -> signature string "ODI$HLP$"

Program: ODIHLP is a real-mode helper allowing the Windows for Workgroups 3.11

  protected-mode NDIS3 protocol to work with real-mode ODI drivers

  and LSL.COM

Note:	the returned signature string might be the first field of a structure

SeeAlso: AX=C000h"LSL.COM"


INT 2F 5200 - JAM.SYS v1.10+ - "GetVersion" - INSTALLATION CHECK

Category: k - file/disk compression

Inp.:

AX = 5200h

Return: AH = 80h (successful) if installed

BX = internal JAM.SYS version number

CX = size of JAMINFO structure (see #1543,#1544)

DX = JAM.SYS segment address

Program: JAM.SYS is a main component of the JAM Real-Time Data Compression

  Utilities by George A. Reznik and friends (JAM Software).

SeeAlso: AX=5201h


INT 2F 5201 - JAM.SYS v1.10+ - "GetInfo" - GET COMPRESSED DRIVE INFORMATION

Category: k - file/disk compression

Inp.:

AX = 5201h

DL = compressed drive number (0-default, 1-A:, etc.)

DS:BX -> buffer for JAMINFO structure (see #1543,#1544)

Return: AH = status (00h,01h) (see #1547)

SeeAlso: AX=5200h


INT 2F 5202 - JAM.SYS v1.10+ - "Attach" - MOUNT COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 5202h

DL = drive number (0-default, 1-A:, etc.) to attach to the JAM

      archive file

DS:BX -> pointer to JAMINFO structure (see #1543,#1544), which

      contains parameters of the JAM file to mount, and pointer

      to the host drive DPB (i.e. DPB of the drive on which the

      JAM file is located)

Return: AH = status (00h,02h,03h,08h,09h,0Dh) (see also #1547)

    03h archive file cluster size value is larger than driver's - not

  mounted

    09h bad entries in JAM descriptor table - file mounted read-only

AL = host drive error code (see #1383 at INT 2F/AX=0802h)

SeeAlso: AX=5203h


INT 2F 5203 - JAM.SYS v1.10+ - "Detach" - UNMOUNT COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 5203h

DL = drive number (0-default, 1-A:, etc.) to detach

Return: AH = status (00h,01h,04h,05h,08h,09h,0Bh,0Dh) (see #1547)

AL = host drive error code (see #1383 at INT 2F/AX=0802h)

SeeAlso: AX=5202h


INT 2F 5204 - JAM.SYS v1.10+ - "Lock" - LOCK COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 5204h

DL = drive number (0-default, 1-A:, etc.) to lock

Return: AH = status (00h,01h,04h,05h,08h,09h,0Bh,0Dh) (see #1547)

AL = host drive error code (see #1383 at INT 2F/AX=0802h)

SeeAlso: AX=5205h, AX=5206h, AX=5207h


INT 2F 5205 - JAM.SYS v1.10+ - "UnLock" - UNLOCK COMPRESSED DRIVE

Category: k - file/disk compression

Inp.:

AX = 5205h

DL = drive number (0-default, 1-A:, etc.) to unlock

Return: AH = status (00h,01h,04h,06h,08h,09h,0Dh) (see #1547)

AL = host drive error code (see #1383 at INT 2F/AX=0802h)

SeeAlso: AX=5204h, AX=5206h, AX=5207h

Note:	Lock and UnLock functions were added to the JAM API to prevent

  asynchronous physical-level access (see AX=5206h,AX=5207h) to

  compressed data on JAM drives. In other words, two or more programs

  which use JAM API (say, JMAX optimizer and JCHKDSK - disk checker)

  cannot be run on the same JAM drive simultaneously.


INT 2F 5206 - JAM.SYS v1.10+ - "Read" - PHYSICAL READ DATA FROM JAM ARCHIVE

Category: k - file/disk compression

Inp.:

AX = 5206h

DL = drive number (0-default, 1-A:, etc.)

DS:BX -> disk transfer packet (see #1548)

Return: AH = status (00h,01h,04h,06h,07h,08h,0Dh) (see #1547)

AL = host drive error code (see #1383 at INT 2F/AX=0802h)

Program: JAM.SYS is a main component of the JAM Real-Time Data Compression

  Utilities by George A. Reznik and friends (JAM Software).

SeeAlso: AX=5207h


INT 2F 5207 - JAM.SYS v1.10+ - "Write" - PHYSICAL WRITE DATA TO JAM ARCHIVE

Category: k - file/disk compression

Inp.:

AX = 5207h

DL = drive number (0-default, 1-A:, etc.)

DS:BX -> disk transfer packet (see #1548)

Return: AH = status (00h,01h,04h,06h,07h,08h,0Dh) (see #1547)

AL = host drive error code (see #1383 at INT 2F/AX=0802h)

SeeAlso: AX=5206h


INT 2F 53-- - POWER.EXE - APM event broadcasting???

undocumented function

Category: p - power management

Inp.:

AH = 53h

AL = event???

    05h CPU idle

    0Bh PM event broadcast API

Return: ???

Note:	called by MS Windows 3.1 POWER.DRV; hooked by MS Mouse driver v8.20+

  and PC-Cache v8.0

SeeAlso: AX=530Bh,AH=54h,INT 33/AX=002Fh


INT 2F 530B - ??? (MOUSEPWR.COM, others) - ???

undocumented function

Category: p - power management

Inp.:

AX = 530Bh

BX = subfunction

    0003h ???

    0004h ???

???

Return: ???

Note:	it appears that subfunction 0003h reads or restores the current mouse

  settings (the MS Mouse driver hooks AX=530Bh), and 0004h might be

  the converse


INT 2F 5400 - POWER.EXE - INSTALLATION CHECK

undocumented function

Category: p - power management

Inp.:

AX = 5400h

Return: AX = POWER.EXE version (AH = major, AL = minor) if installed

BX = 504Dh ("PM")

CF clear

Note:	called by MS Windows 3.1 POWER.DRV

SeeAlso: AH=53h,AX=5401h,AX=5402h,AX=5481h,AX=5482h


INT 2F 5401 - POWER.EXE - GET/SET POWER STATUS

undocumented function

Category: p - power management

Inp.:

AX = 5401h

BH = function

    00h get status

Return: BL = current power management status (see #1549)

    01h set status

BL = new power managment status (see #1549)

Return: AX = function status (see #1550)

Note:	called by MS Windows 3.1 POWER.DRV

SeeAlso: AH=53h,AX=5400h,AX=5402h,AX=5403h


INT 2F 5402 - POWER.EXE - GET/SET IDLE DETECTION STRATEGY

undocumented function

Category: p - power management

Inp.:

AX = 5402h

BH = subfunction

    00h get

    other set

BL = detection strategy (00h-0Fh or FFh)

Return: BX = current/new detection strategy

SeeAlso: AH=53h,AX=5400h,AX=5401h,AX=5481h,AX=5482h


INT 2F 5403 - POWER.EXE - GET/SET ADVANCED POWER MANAGEMENT SETTING

undocumented function

Category: p - power management

Inp.:

AX = 5403h

BX = new power management setting or 0000h to get current setting

Return: AX = status

    0000h successful

BX = power management setting (see #1551)

    other error code

SeeAlso: AX=5401h,AX=5480h


INT 2F 5453 - TesSeRact RAM-RESIDENT PROGRAM INTERFACE

Category: t - TSR libraries

Inp.:

AX = 5453h

BX = subfunction

    00h installation check

CX = 0000h

DS:SI -> 8-char blank-padded name (see #1552)

Return: AX = FFFFh installed

CX = ID number of already-installed copy

AX = anything else, not installed

CX = ID number for TSR when installed

    01h get user parameters

CX = TSR ID number

Return: AX = status

    0000h successful

ES:BX -> user parameter block (see #1553)

    nonzero failed

    02h check if hotkey in use

CL = scan code of hot key

Return: AX = FFFFh hot key conflicts with another TSR

     otherwise safe to use the hotkey

    03h replace default critical error handler

CX = TSR ID number

DS:SI -> new routine for INT 24h

Return: AX = nonzero, unable to install new handler

    04h get internal data area

CX = TSR ID number

Return: AX = status

    0000h successful

ES:BX -> TSR's internal data area (see #1554)

    nonzero, TSR not found

    05h set multiple hot keys

CX = TSR ID number

DL = number of additional hot keys to allocate

DS:SI -> table of hot keys

BYTE  hotkey scan code

BYTE  hotkey shift state

BYTE  flag value to pass to TSR (nonzero)

Return: AX = nonzero, unable to install hot keys

    06h - 0Fh reserved

    10h enable TSR

CX = TSR ID number

Return: AX = nonzero, unable to enable

    11h disable TSR

CX = TSR ID number

Return: AX = nonzero, unable to disable

    12h unload TSR

CX = TSR ID number

Return: AX = nonzero, invalid TSR number

Note: if any interrupts used by TSR have been grabbed by

another TSR, the TesSeRact routines will wait until

it is safe to remove the indicated TSR from memory

    13h restart TSR

CX = TSR ID number of TSR which was unloaded but is still in

     memory

Return: AX = nonzero, unable to restart TSR

    14h get status word

CX = TSR ID number

Return: AX = FFFFh invalid ID number

   = other, successful

BX = bit flags

    15h set status word

CX = TSR ID number

DX = new bit flags

Return: AX = nonzero, unable to set status word

    16h get INDOS state at popup

CX = TSR ID number

Return: AX = 0000h successful

    BX = value of INDOS flag

    17h - 1Fh reserved

    20h call user procedure

CX = TSR ID number

ES:DI -> user-defined data

Return: AX = 0000h successful

    21h stuff keystrokes into keyboard buffer

CX = TSR ID number

DL = speed

    00h stuff keystrokes only when buffer is empty

    01h stuff up to four keystrokes per clock tick

    02h stuff up to 15 keystrokes per clock tick

DH = scan code flag

    if zero, buffer contains alternating ASCII and scan codes

    if nonzero, buffer contains only ASCII codes

SI = number of keystrokes

ES:DI -> buffer to stuff

Return: AX = 0000h success

     F0F0h user aborted with ^C or ^Break

     other unable to stuff keystrokes

    22h (v1.10) trigger popup

CX = TSR ID number

Return: AX = 0000h success, TSR will either pop up or beep to

   indicate that it is unable to pop up

     nonzero invalid ID number

    23h (v1.10) invoke TSR's background function

CX = TSR ID number

Return: AX = 0000h success

     FFFFh not safe to call background function

     nonzero invalid ID number

    24h - 2Fh reserved

Notes:	Borland's THELP.COM popup help system for Turbo Pascal and Turbo C

  (versions 1.x and 2.x only) fully supports the TesSeRact API, as

  do the SWAP?? programs by Innovative Data Concepts.

AVATAR.SYS supports functions 00h and 01h (only the first three fields

  of the user parameter block) using the name "AVATAR  "

SeeAlso: AX=CAFEh,INT 16/AX=55FFh,INT 2D"AMIS"

Index:	installation check;TesSeRact TSR interface|uninstall;TesSeRact


INT 2F 5480 - POWER.EXE - GET/SET ???

undocumented function

Category: p - power management

Inp.:

AX = 5480h

BX = direction

    0000h get

    other set

CX = size of buffer (at least 0010h)

DS:SI -> buffer

Return: AX = status

    0000h successful

    other error code

SeeAlso: AX=5400h,AX=5481h,AX=548Fh


INT 2F 5481 - POWER.EXE - GET STATISTICS

undocumented function

Category: p - power management

Inp.:

AX = 5481h

BX = which statistics

    0000h idle detection

    0001h APM statistics

CX = length of buffer in bytes

DS:SI -> buffer for statistics (see #1555,#1556)

Return: AX = status

    0000h successful

    0071h "ERROR_PM_BUFFER_TOO_SMALL"

    0087h "ERROR_PM_INVALID_PARAMETER"

SeeAlso: AH=53h,AX=5400h,AX=5480h,AX=5402h,AX=5482h


INT 2F 5482 - POWER.EXE - GET/SET APM POLLING FREQUENCY

undocumented function

Category: p - power management

Inp.:

AX = 5482h

BX = new polling frequency or 0000h to get current frequency

Return: AX = 0000h (successful)

BX = current frequency if BX=0000h on entry

SeeAlso: AH=53h,AX=5400h,AX=5401h,AX=5480h,AX=5481h,AX=548Fh


INT 2F 548F - POWER.EXE - GET/SET ???

undocumented function

Category: p - power management

Inp.:

AX = 548Fh

BX = ??? or 0000h to get current ???

Return: AX = 0000h (successful)

BX = current ???

CX = ???

SeeAlso: AX=5400h,AX=5480h,AX=5482h


INT 2F 5500 - DOS 5+ - COMMAND.COM INTERFACE

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 5500h

Return: AX = 0000h if an instance of COMMAND.COM is already running

DS:SI -> entry point table

Notes:	used to access the shareable portion of COMMAND.COM, which may have

  been moved into the HMA; only the primary COMMAND.COM retains this

  portion

procedures called from a dispatcher in COMMAND's resident portion;

  most assume that the segment address of the resident portion is on

  the stack and are thus not of general use

SeeAlso: AX=5501h


INT 2F 5501 - DOS 5+ - ROM COMMAND.COM INTERFACE

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = 5501h

Return: ???

Note:	used to determine whether the caller is the first instance of ROM

  COMMAND.COM

SeeAlso: AX=5500h


INT 2F 5600 - INTERLNK - INSTALLATION CHECK

Category: R - remote control/file access

Inp.:

AX = 5600h

DX = magic value FFFFh

BL = instance number (00h = any, 01h = first loaded, etc.)

Return: AL = FFh if installed

    BL = instance number

    CX = ??? (apparently always 0001h)

    DX = resident CS of driver, DX:0000h -> header (see #1557)

SeeAlso: AX=5601h,AX=5602h,INT 60/AX=0000h


INT 2F 5601 - INTERLNK - CHECK IF REDIRECTED DRIVE

Category: R - remote control/file access

Inp.:

AX = 5601h

DX = magic value FFFFh

BH = drive number (0=A:)

BL = 00h

Return: (as for AL=00h if redirected drive)

SeeAlso: AX=5600h


INT 2F 5602 - INTERLNK - GET ???

Category: R - remote control/file access

Inp.:

AX = 5602h

DX = magic value FFFFh

Return: CX = ???

SeeAlso: AX=5600h


INT 2F 57-- - ???

undocumented function

Category: - - (none)

Inp.:

AH = 57h

???

Return: ???

Note:	reportedly used by Iomega Corp.


INT 2F 5758 - Helix Multimedia Cloaking - CACHECLK - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AX = 5758h

BX = 4858h ('HX')

DX = 4443h ('DC')

CX <> 5758h

Return: BX = 6878h if installed

DX = 6463h if installed

   CX = version (CH=major,CL=minor)

Program: CACHECLK is a 'Cloaked' disk cache by Helix Software

Note:	returns with registers unchanged if CX=5758h on entry

SeeAlso: INT 16/AX=5758h/BX=4858h,INT 2F/AX=4310h"Cloaking"


INT 2F 5D00 - PCMCIA - AWARD PCDISK - GET INFO FROM DRIVER ???

undocumented function

Category: X - expansion bus BIOSes

Inp.:

AX = 5D00h

Return: ES:BX -> ???

Note:	supported by Ventura Micro / Award PCDISK.EXE v1.02c PCMCIA/ATA driver

SeeAlso: AX=5D01h,INT 21/AX=440Dh


INT 2F 5D01 - PCMCIA - AWARD PCDISK - PUT INFO INTO DRIVER ???

undocumented function

Category: X - expansion bus BIOSes

Inp.:

AX = 5D01h

ES:BX -> ???

Return: nothing

Note:	supported by Ventura Micro / Award PCDISK.EXE v1.02c PCMCIA/ATA driver

SeeAlso: AX=5D00h,INT 21/AX=440Dh


INT 2F 60FF - IPLAY v1.00b - INSTALLATION CHECK

undocumented function

Category: s - sound/speech

Inp.:

AX = 60FFh

DL = 00h (function number)

BX = 5344h ('SD')

CX = 4D50h ('MP')

Return: AX = 4F4Bh ('OK') if installed

Program: IPLAY is the Inertia Player by Prime and Excalibur for .MODules

  (digitized music files)

Note:	in version 1.00b, any value for DL except 01h invokes this function

SeeAlso: AX=60FFh/DL=01h


INT 2F 60FF - IPLAY v1.00b - GET DATA SEGMENT

undocumented function

Category: s - sound/speech

Inp.:

AX = 60FFh

DL = 01h (function number)

BX = 5344h ('SD')

CX = 4D50h ('MP')

Return: AX = data segment

Program: IPLAY is the Inertia Player by Prime and Excalibur for .MODules

  (digitized music files)

SeeAlso: AX=60FFh/DL=00h


INT 2F 6282 - PC Tools v7.0+ VDEFEND, VSAFE, VWATCH, DATAMON - SET ??? ADDRESS

undocumented function

Category: v - virus/antivirus

Inp.:

AX = 6282h

CX:DX -> ??? or 0000h:0000h

DI = segment of ??? record (see #1558) or 0000h/FFFFh to ignore

Return: BX = 0062h

Note:	if CX:DX = 0000h:0000h on entry, the ??? address is not changed

  (DATAMON only)

SeeAlso: INT 13/AH=FAh"VSAFE",INT 21/AH=FAh"VDEFEND"


INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT	- INSTALLATION CHECK

undocumented function

Category: v - virus/antivirus

Inp.:

AX = 6284h

BX = 0000h

CX = 0000h

Return: AX = segment of resident code

BX = 5555h

CX = 5555h

Note:	also supported by DOS 6 UNDELETE which is licensed from PC Tools

SeeAlso: AX=6284h/BX=0001h,INT 16/AX=FFA3h


INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

undocumented function

Category: v - virus/antivirus

Inp.:

AX = 6284h

BX = 0001h

CX = 0001h

Return: AX:BX -> ??? data (see #1559)

CX = BX

SeeAlso: AX=6284h/BX=0000h


INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET OPTIONS

undocumented function

Category: v - virus/antivirus

Inp.:

AX = 6284h

BX = 0002h

CX = 0002h

Return: AX = options (see #1560)

BX = ??? (0000h for v9)

CX = AX

DX = BX

Note:	also supported by DOS 6 UNDELETE which is licensed from PC Tools

SeeAlso: AX=6284h/BX=0000h,AX=6284h/BX=0003h


INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - SET OPTION??? FLAGS

undocumented function

Category: v - virus/antivirus

Inp.:

AX = 6284h

BX = 0003h

CX = flags (see #1561)

DX = flags

    bit 15: ???

Note:	v9 DPROTECT only checks bit 12 of CX, and ignores DX entirely

SeeAlso: AX=6284h/BX=0002h


INT 2F 6284 - PC Tools v8 DATAMON, v9+ DPROTECT - ???

undocumented function

Category: v - virus/antivirus

Inp.:

AX = 6284h

BX = 0004h

CX = 0004h

Return: AX = 5555h

BX = ??? (0800h)

CX = ??? (FCCCh for v8, FCCBh for v9)


INT 2F 6400 - SCRNSAV2.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 6400h

Return: AL = installation state

    00h not installed

    FFh installed

Program: SCRNSAV2.COM is a screen saver for PS/2s with VGA by Alan Ballard

SeeAlso: INT 10/AX=5555h,INT 14/AX=AA01h

Index:	screen saver;SCRNSAV2


INT 2F 7000 - License Service API - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7000h

CX = license server index (0000h to 001Fh)

Return: AL = status

    00h not installed

    FFh installed

Notes:	The License Service API is being maintained by Microsoft but is being

  supported by a large number of companies including Apple, Banyan,

  DEC, HP, Lotus, Microsoft, Novell, Software Publishers Association,

  and Wordperfect (not a complete list!)

Each license service provider must search for the next free index

  slot to use

SeeAlso: AX=7001h,AX=7003h,AX=7004h,AX=7005h


INT 2F 7001 - License Service API - REQUEST LICENSE

Category: N - network

Inp.:

AX = 7001h

CX = license server index (0000h to 001Fh)

DS:DX -> SLSREQUEST structure (see #1562)

Return: AX = status

    0000h success

    else  provider error code

ES:BX = provider specific handle for the license context

SeeAlso: AX=7002h,AX=7004h,AX=7005h


INT 2F 7002 - License Service API - RELEASE LICENSE

Category: N - network

Inp.:

AX = 7002h

CX = license server index (0000h to 001Fh)

DS:DX -> SLSRELEASE structure (see #1564)

ES:BX = provider specific handle for the license context

Return: AL = status

    00h not installed

    FFh installed

SeeAlso: AX=7001h,AX=7005h


INT 2F 7003 - License Service API - UPDATE

Category: N - network

Inp.:

AX = 7003h

CX = license server index (0000h to 001Fh)

DS:DX -> SLSUPDATE structure (see #1565)

ES:BX = provider specific handle for the license context

Return: AL = status

    00h not installed

    FFh installed

SeeAlso: AX=7004h,AX=7005h


INT 2F 7004 - License Service API - GET ERROR

Category: N - network

Inp.:

AX = 7004h

CX = license server index (0000h to 001Fh)

DS:DX -> SLSGETERROR structure (see #1566)

ES:BX = provider specific handle for the license context

Return: AL = status

    00h not installed

    FFh installed

SeeAlso: AX=7000h,AX=7001h


INT 2F 7005 - License Service API - QUERY LICENSE

Category: N - network

Inp.:

AX = 7005h

CX = license server index (0000h to 001Fh)

DS:DX -> SLSQUERY structure (see #1567)

ES:BX = provider specific handle for the license context

Return: AL = status

    00h not installed

    FFh installed

SeeAlso: AX=7001h,AX=7002h


INT 2F 7041 - HP 200LX - KEY200 - INSTALLATION CHECK

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = 7041h

BX = 4B70h

Return: BX = 7965h if keyboard remapper KEY200.COM installed


INT 2F 7200 - SRDISK v1.30+ - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = 7200h

Return: AL = FFh if installed

    ES = segment of device driver header (see #1568)

Program: SRDISK is a freeware resizeable RAMdisk by Marko Kohtala

SeeAlso: AX=7201h


INT 2F 7201 - SRDISK v2.02 - GET CODE/DATA SEGMENT

Category: d - disk I/O enhancements

Inp.:

AX = 7201h

Return: AL = FFh if installed

    ES = segment of device driver header

Program: SRDISK is a freeware resizeable RAMdisk by Marko Kohtala

SeeAlso: AX=7200h


INT 2F 7A00 - Novell NetWare - LOW-LEVEL API (IPX) INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7A00h

Return: AL = status

    00h not installed

    FFh installed

ES:DI -> FAR entry point for routines accessed exclusively

  through INT 7A in NetWare versions through 2.0a.

  Call with same values as INT 7A

ES:BX -> two bytes containing IPX major/minor version

(IPXODI v2.12; BX unchanged by older IPX drivers)

SeeAlso: AX=7AFFh/BX=0000h,AX=D800h,INT 64"Novell",INT 7A"Novell"


INT 2F 7A10 - Novell NetWare - TBMI v1.1+ - GET TBMI STATUS

undocumented function

Category: N - network

Inp.:

AX = 7A10h

Return: DH = major TBMI version number

DL = minor TBMI version number (01h for v1.1)

CX = segment address of TBMI resident part

BX = status word of TBMI (see #1569)

Note:	TBMI is the Task-Switched Buffer Manager Interface

SeeAlso: AX=7A11h,AX=7A12h,AX=7A13h,AX=7A14h


INT 2F 7A11 - Novell NetWare - TBMI v1.1+ - GET INT2F HANDLERS

undocumented function

Category: N - network

Inp.:

AX = 7A11h

Return: ES:BX -> old INT 2F handler

DS:DX -> TBMI INT 2F handler

SeeAlso: AX=7A10h,AX=7A12h,AX=7A13h,AX=7A1Ah


INT 2F 7A12 - Novell NetWare - TBMI v1.1+ - GET INT64 HANDLERS

undocumented function

Category: N - network

Inp.:

AX = 7A12h

Return: ES:BX -> old INT 64 handler

DS:DX -> TBMI INT 64 handler

SeeAlso: AX=7A10h,AX=7A11h,AX=7A13h


INT 2F 7A13 - Novell NetWare - TBMI v1.1+ - GET INT7A HANDLERS

undocumented function

Category: N - network

Inp.:

AX = 7A13h

Return: ES:BX -> old INT 7A handler

DS:DX -> TBMI INT 7A handler

SeeAlso: AX=7A10h,AX=7A11h,AX=7A12h


INT 2F 7A14 - Novell NetWare - TBMI v1.1+ - GET STATISTICS

undocumented function

Category: N - network

Inp.:

AX = 7A14h

CX = statistic to retrieve

    0000h available diagnostic functions???

Return: CX = maximum available function??? (000Ch for v2.0)

    0001h buffers in use

Return: CX = TBMI buffers currently in use

    0002h maximum buffers used

Return: CX = maximum number of buffers ever in use

    0003h unavailable buffers

Return: CX = count of unavailable TBMI buffers

    0004h old interrupt usage

Return: CX = TBMI accesses to intercepted old vectors INT 2F,

      INT 64, and INT 7A

    0005h far call usage

Return: CX = TBMI accesses to IPX/SPX far call handler (not

      including internal accesses)

    0006h task buffering

Return: CX = TBMI task buffering status (enabled/disabled or

      disable/enable switch count???)

    0007h current task ID

Return: CX = TBMI current task ID number (0000h if ???)

    0008h outstanding ID count

Return: CX = number of outstanding TBMI IDs

    0009h configured ECBs

Return: CX = number of TBMI Event Control Blocks configured

    000Ah configured data ECBs

Return: CX = number of TBMI data ECBs configured

    000Bh configured sockets

Return: CX = number of TBMI sockets configured (from NETCFG)

    000Ch current sockets

Return: CX = number of TBMI sockets currently in use

Return: BX = maximum supported subfunction (000Ch)

SeeAlso: AX=7A10h


INT 2F 7A15 - Novell NetWare - TBMI v1.1 only - RESET ???

obsolete (no longer present in current versions)

undocumented function

Category: N - network

Inp.:

AX = 7A15h

Return: BX = new value of ???

Desc:	set ??? to its default value

Note:	this call is a NOP under TBMI v2.0 (TBMI2)

SeeAlso: AX=7A17h


INT 2F 7A16 - Novell NetWare - TBMI v1.1 only - ???

obsolete (no longer present in current versions)

undocumented function

Category: N - network

Inp.:

AX = 7A16h

CX = ???

???

Return: ???

Note:	this call is a NOP under TBMI v2.0 (TBMI2)


INT 2F 7A17 - Novell NetWare - TBMI v1.1 only - ???

obsolete (no longer present in current versions)

undocumented function

Category: N - network

Inp.:

AX = 7A17h

???

Return: BX = old value of ???

CX = new value of ???

Note:	this call is a NOP under TBMI v2.0 (TBMI2)

SeeAlso: AX=7A15h


INT 2F 7A18 - Novell NetWare - TASKID v1.0 - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 7A18h

Return: AL = FFh if installed

    BX = configuration flags (see #1570)

    CX = resident code segment

SeeAlso: AX=7A10h


INT 2F 7A19 - Novell NetWare - TASKID v1.0 - GET INT 08 HANDLERS

undocumented function

Category: N - network

Inp.:

AX = 7A19h

Return: AL = FFh

DS:DX -> TASKID INT 08 handler

ES:BX -> original INT 08 handler


INT 2F 7A1A - Novell NetWare - TASKID v1.0 - GET INT 2F HANDLERS

undocumented function

Category: N - network

Inp.:

AX = 7A1Ah

Return: AL = FFh

DX:DX -> TASKID INT 2F handler

ES:BX -> original INT 2F handler

SeeAlso: AX=7A11h,AX=7A19h


INT 2F 7A1B - Novell NetWare - TASKID v1.0 - GET DIAGNOSTICS INFORMATION

undocumented function

Category: N - network

Inp.:

AX = 7A1Bh

CX = desired information

    0000h supported functions

    0001h TASKID ID number

Return: CX = ID number

    0002h set-ID count

Return: CX = ID set count

Return: AL = FFh

BX = highest supported subfunction number (0002h)

SeeAlso: AX=7A14h,AX=7A18h


INT 2F 7A1C - Novell NetWare - TBMI v1.1+ - ???

undocumented function

Category: N - network

Inp.:

AX = 7A1Ch

BP = ???

CX:DX = ???

Return: AX = 70FFh


INT 2F 7A1D - Novell NetWare - TBMI v1.1+ - ???

undocumented function

Category: N - network

Inp.:

AX = 7A1Dh

???

Return: ES = ???

???

SI destroyed


INT 2F 7A1E - Novell NetWare - TBMI v1.1+ - ???

undocumented function

Category: N - network

Inp.:

AX = 7A1Eh

ES:SI -> ???

???

Return: ???


INT 2F 7A20 - Novell NetWare - Adv NetWare 4.0 DOS Requester - GET VLM CALL ADDRESS

Category: N - network

Inp.:

AX = 7A20h

BX = 0000h

Return: AX = 0000h on success (installed)

    ES:BX -> far call address for DOS Requester (see #1571)

Notes:	the DOS Requester replaces the NetWare Shell (ANETx, NETx) on

  NetWare LAN's as of the release of Advanced NetWare 4.0 (1993).  It

  is backward compatible with NetWare 2.1x through 3.11 servers as

  well.	 Note that there was a NetWare 4.0 in the early 1980's, which

  can cause confusion.

this call is used as the installation check by VLM.EXE, which is the

  loader for all the modules of the DOS Requester

.VLMs are standard old .EXE format executables whose normal entry point

  merely terminates to prevent loading from the command line.  The

  real entry point is found by looking at the VLM header at the

  beginning of the load image (see #1574)

Index:	installation check;NetWare 4.0 DOS Requester

Table #2653

Table #1589


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM CallA ADDRESS

Category: N - network

Inp.:

AX = 7A20h

BX = 0001h

Return: AX = 0000h if request was handled

    ES:BX -> CallA entry point (see #1590)


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM MULTIPLEX ADDRESS

Category: N - network

Inp.:

AX = 7A20h

BX = 0002h

Return: AX = 0000h

ES:BX -> VLM multiplex entry point (see #1592)

Note:	for v1.10, this function is only available while VLM.EXE is loading

  the .VLM modules, because ES is destroyed on return


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM PARSE API ADDRESS

Category: N - network

Inp.:

AX = 7A20h

BX = 0003h

Return: AX = 0000h if request was handled

    ES:BX -> VLM parse API entry point


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM MULTICAST CALLOUT

Category: N - network

Inp.:

AX = 7A20h

BX = 0004h

Return: AX = 0000h if request was handled

    ES:BX -> VLM multicast data (see #1593)


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM INT 24 ADDRESS

Category: N - network

Inp.:

AX = 7A20h

BX = 0005h

Return: AX = 0000h if request was handled

    ES:BX -> VLM INT 24 handler


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A20h

BX = 0006h

Return: AX = 0000h if request was handled

    ES:BX -> ??? entry point (RETF in v1.03 and v1.10)


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A20h

BX = 0007h

Return: AX = 0000h

ES:BX -> ??? entry point (RETF in v1.03 and v1.10)


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A20h

BX = 0008h

Return: AX = 0000h

ES:BX -> ??? entry point (RETF in v1.03 and v1.10)


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A20h

BX = 0080h

Return: AX = 0000h

ES:BX -> ??? entry point (RETF in v1.03 and v1.10)

Note:	this function is identical to AX=7A20h/BX=0006h in v1.03 and v1.10


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A20h

BX = 0081h

Return: AX = 0000h

ES:BX -> ??? entry point (RETF in v1.03 and v1.10)

Note:	this function is identical to AX=7A20h/BX=0007h in v1.03 and v1.10


INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A20h

BX = 0082h

Return: AX = 0000h

ES:BX -> ??? entry point (RETF in v1.03 and v1.10)

Note:	this function is identical to AX=7A20h/BX=0008h in v1.03 and v1.10


INT 2F 7A21 - Novell NetWare - DOS Requester - BROADCAST CALLBACK

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 7A21h

CX = server connection (FFFFh if message from Personal NetWare user)

Return: CX = 0000h if broadcast handled

SeeAlso: AX=7A22h,AX=7A85h


INT 2F 7A22 - Novell NetWare - DOS Requester - BROADCAST/SFT3 INFORM

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 7A22h

DL = function

    21h ('!') broadcast waiting for workstation

    40h ('@') SFT3 change inform

Return: AX = 0000h if event handled

Note:	this callback is made from within a hardware interrupt handler; a

  separate call to AX=7A21h is made once the system is in a safe

  state for receiving the message

SeeAlso: AX=7A21h


INT 2F 7A2F - Novell NetWare - IPXODI v2.12 - GET ???

undocumented function

Category: N - network

Inp.:

AX = 7A2Fh

Return: AX = 0000h if supported and active

    BX = version??? (0001h)

    ES:DI -> entry point (see #1595)

Note:	IPXODI v2.12 is distributed as part of the Personal NetWare system

  bundled with Novell DOS 7

SeeAlso: INT 7A/BX=001Fh


INT 2F 7A2F - Personal NetWare - HRMIB - UNINSTALL

undocumented function

Category: N - network

Inp.:

AX = 7A2Fh

BX = 0EDCh ('EDC' = Novell European Development Center)

Return: ???

SeeAlso: AX=7AA0h


INT 2F 7A40 - Novell NetWare - TCP/IP Protocol Stack - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 7A40h

Return: AX = 7AFFh if installed

    BX = ??? bit flags (see #1596)

    CX = version (CH=major, CL=minor)

    DX = 0000h

    ES:DI -> entry point for TCP/IP stack (see #1597)

Notes:	Novell's LAN Workplace for DOS TCPIP.EXE also supports this interface

this function is also supported by the Beame&Whiteside BWLWP40 shim,

  but it only returns AL and ES:DI, and does not support AX=7A41h

SeeAlso: AX=7A41h,INT 15/AX=DE2Eh,INT 60"Excelan"


INT 2F 7A41 - Novell NetWare - TCP/IP Protocol Stack - WINDOWS SUPPORT???

Category: N - network

Inp.:

AX = 7A41h

ES:DI -> FAR entry point for ??? (will be called with BX=1,2,3,4)

Return: AX = 7AFFh if supported

    BX = ??? (see #1596)

    CX = version (CH=major, CL=minor)

    DX = 0000h

    ES:SI -> DWORD containing passed value of ES:DI

    ES:DI -> entry point for TCP/IP stack

Notes:	Novell's LAN Workplace for DOS TCPIP.EXE also supports this interface

the pointer which is set to ES:DI is cleared to 0000h:0000h when

  a Windows exit broadcast is received

SeeAlso: AX=7A40h


INT 2F 7A42 - Novell NetWare - TCPIP.EXE v4.1 - GET ??? ENTRY POINT

Category: N - network

Inp.:

AX = 7A42h

Return: AX = 7AFFh if supported

    ES:DI -> ??? entry point (see #1600)


INT 2F 7A43 - Novell NetWare - TCPIP.EXE v4.1 - GET ???

Category: N - network

Inp.:

AX = 7A43h

Return: AX = 7AFFh if supported

    DX = offset of ???

SeeAlso: AX=7A44h


INT 2F 7A44 - Novell NetWare - TCPIP.EXE v4.1 - SET ???

Category: N - network

Inp.:

AX = 7A44h

DX = offset of ??? (see AX=7A43h)

Return: AX = 7AFFh if supported

SeeAlso: AX=7A43h


INT 2F 7A4C - Novell NetWare - TCPIP.EXE v4.1 - GET ???

Category: N - network

Inp.:

AX = 7A4Ch

Return: AX = 7AFFh if supported

    BX = ??? (0037h)

    CX = ??? (001Ch)


INT 2F 7A4D - Novell NetWare - ???

Category: N - network

Inp.:

AX = 7A4Dh

BX = 0001h

ES:DI -> ???

Return: AL = FFh if ???

    ES:DI -> ???

Note:	called by NETBIOS.EXE v3.01


INT 2F 7A4E - Novell LAN Workplace for DOS - RARPD.EXE - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7A4Eh

Return: AX = 7AFFh if installed

SeeAlso: AX=7A4Fh"RARPD"


INT 2F 7A4F - Novell LAN Workplace for DOS - RARPD.EXE - UNINSTALL

Category: N - network

Inp.:

AX = 7A4Fh

Return: AX = 7AFFh if installed

DX,ES destroyed

Note:	this call conflicts with SNMP.EXE (both RARPD and SNMP are supplied

  with LAN Workplace for DOS!), such that running SNMP will uninstall

  RARPD as SNMP checks whether it is already installed!

SeeAlso: AX=7A4Eh"RARPD",AX=7A4Fh/BX=0001h


INT 2F 7A4F - Novell NetWare - SNMP.EXE - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7A4Fh

BX = 0001h

Return: AX = 7AFFh if installed

Note:	this call conflicts with RARPD.EXE (both SNMP and RARPD are supplied

  with LAN Workplace for DOS!), such that running SNMP will uninstall

  RARPD as SNMP checks whether it is already installed!

SeeAlso: AX=7A4Fh"RARPD",AX=7A4Fh/BX=0002h


INT 2F 7A4F - Novell NetWare - SNMP.EXE - ???

Category: N - network

Inp.:

AX = 7A4Fh

BX = 0002h

Return: AL = status

    4Fh if failed

    FFh if successful

SeeAlso: AX=7A4Fh/BX=0001h


INT 2F 7A80 - Novell NetWare - SHELL 3.01d BROADCAST - ABNORMAL EXIT

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 7A80h

Return: nothing

Notes:	called on abnormal exit of the NetWare shell to notify other Novell

  TSRs that it is unsafe to call the shell in the future.

must be passed through so that all interested programs see the exit

on receiving this call, IPXODI clears an internal pointer to a

  default value; Novell's NETBIOS.EXE clears its INT 21h pointer to

  0000h:0000h and stops calling it

SeeAlso: AX=7A81h


INT 2F 7A81 - Novell NetWare - SHELL 3.01d BROADCAST - SET SHELL INT 21 HANDLER

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 7A81h

CX:DX -> shell's INT 21h entry point

Return: nothing

Notes:	the shell calls this function as it loads to allow interested TSRs

  and drivers to make a local copy of the shell's entry point

must be passed through so that all interested programs see it


INT 2F 7A85 - Novell NetWare - shell 3.01 - BROADCAST INFORM

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

AX = 7A85h

CX = broadcast server number

Return: CX = 0000h if broadcast message handled by another program

CX unchanged if broadcast not handled

SeeAlso: AX=7A21h


INT 2F 7A90 - Novell NetWare - NETBIOS.EXE 3+ - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 7A90h

Return: AL = 00h if present

    BX = ???

    CX = PSP segment of NETBIOS resident code

SeeAlso: AX=7AFEh


INT 2F 7AA0 - Personal NetWare - HRMIB - ???

undocumented function

Category: N - network

Inp.:

AX = 7AA0h

BX = function

    0000h ???

    0001h ???

Return: ???

SeeAlso: AX=7A2Fh/BX=0EDCh


INT 2F 7AC1 - LAN HiJack - LHR - DISABLE???

Category: N - network

Inp.:

AX = 7AC1h

Program: LAN HiJack is a NetWare utility by KDS Software which allows a user

  to take over control of a workstation remotely; LHR is the program

  run on the slave workstation

SeeAlso: AX=7AC8h,AX=7AC9h,AX=7ACFh


INT 2F 7AC2 - LAN HiJack - LHR - SYNCHRONIZE SHIFT STATES???

Category: N - network

Inp.:

AX = 7AC2h

Note:	sets BIOS keyboard status byte to an internal variable

SeeAlso: AX=7AC3h,AX=7ACFh


INT 2F 7AC3 - LAN HiJack - LHR - CLEAR ??? FLAG

Category: N - network

Inp.:

AX = 7AC3h

SeeAlso: AX=7AC2h,AX=7ACFh


INT 2F 7AC8 - LAN HiJack - LHR - ENABLE FUNCTIONS

Category: N - network

Inp.:

AX = 7AC8h

BL = function(s) to enable (see #1602)

SeeAlso: AX=7AC1h,AX=7AC9h,AX=7ACFh


INT 2F 7AC9 - LAN HiJack - LHR - DISABLE FUNCTIONS

Category: N - network

Inp.:

AX = 7AC9h

BL = function(s) to disable (see #1602)

SeeAlso: AX=7AC1h,AX=7AC8h


INT 2F 7ACA - LAN HiJack - LHJ - ???

Category: N - network

Inp.:

AX = 7ACAh

BL = ???

Return: ???

Program: LAN HiJack is a NetWare utility by KDS Software which allows a user

  to take over control of a workstation remotely; LHJ is the program

  run on the controlling workstation


INT 2F 7ACB - LAN HiJack - LHJ - ???

Category: N - network

Inp.:

AX = 7ACBh

BX = ???

Return: ???

Note:	this function appears to be related to the keyboard

SeeAlso: AX=7ACCh


INT 2F 7ACC - LAN HiJack - LHJ - ???

Category: N - network

Inp.:

AX = 7ACCh

BX = ???

Return: ???

Note:	this function appears to be related to the mouse

SeeAlso: AX=7ACBh


INT 2F 7ACF - LAN HiJack - LHR - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7ACFh

BX = 0000h

Return: BX = segment of resident code if installed

Program: LAN HiJack is a NetWare utility by KDS Software which allows a user

  to take over control of a workstation remotely; LHR is the program

  run on the slave workstation


INT 2F 7AF0 - Novell NetWare - DOSNP.EXE v1.30G - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7AF0h

Return: AL = FFh if present

    ES = 7AF0h

    CX = PSP segment of resident code


INT 2F 7AF1 - Novell NetWare - Access Server Driver - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7AF1h

BL = sequence number (01h first driver, 02h second, 00h no driver)

Return: AX <> 7AF1h if present

    BH = total number of drivers

    ---if BL nonzero on entry---

    AL = number of ports provided by specified driver

    ES:DI -> driver entry point

      (see #1603,#1604,#1605,#1606,#1607,#1608,#1609,#1610)

    ES:DX -> ID string

SeeAlso: INT 7A/BX=001Ch


INT 2F 7AFE - Novell NetWare - DOSNP.EXE - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 7AFEh

Return: AL = FFh if present

    ES = (data???) segment of DOSNP

Program: DOSNP.EXE provides "named pipes" support for DOS workstations running

   NetWare

Note:	the NetWare shell calls this function and refuses to load if DOSNP is

  present

SeeAlso: AX=7A90h


INT 2F 7AFF - Novell NetWare - TBMI v1.1+ - INSTALLATION CHECK / Windows SUPPORT

Category: N - network

Inp.:

AX = 7AFFh

BX = 0000h

CX = 4E65h ("Ne")

DX = 7457h ("tW")

ES:DI -> Windows support procedure (see #1619)

Return: AL = FFh if installed

    CX = configured sockets (14h)

    DS:SI -> data table ???

    ES:DI -> IPX far call handler

Notes:	for IPX/SPX this call reportedly returns DS:SI pointing to the table

  of pointers to service events queue head and tail

this function is also supported by IPXODI; v2.12 does not change DS,

  but does set SI to an internal address

SeeAlso: AX=7AFFh/BX=0001h


INT 2F 7AFF - Novell NetWare - TBMI v1.1+, shell v3.01d - INSTALLATION CHECK???

Category: N - network

Inp.:

AX = 7AFFh

BX = 0001h

CX = 4E65h ("Ne")

DX = 7457h ("tW")

Return: AL = FFh if installed

    CX = ???  (8000h)

    SI = ??? (or -> ???) (0002h and 0007h seen)

    ES:DI -> IPX far call handler

    ES:DX -> 6-byte data area ???

Note:	this function is also supported by IPXODI, but IPXODI v2.12 does not

  return ES:DX

SeeAlso: AX=7AFFh/BX=0000h


INT 2F 7F00 - Jim Harper's CD-ROM redirector SCSI driver - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = 7F00h

Return: AL = FFh if installed

SeeAlso: AX=7F01h,AX=7F02h,AX=7F03h


INT 2F 7F01 - Jim Harper's CD-ROM redirector SCSI driver - DO COMMAND

Category: d - disk I/O enhancements

Inp.:

AX = 7F01h

DS:DX -> command record (see #1620)

Return: AL = status

    00h successful

    else error code

SeeAlso: AX=7F00h,AX=7F02h,INT 11/AH=FFh"SDLP",INT 21/AX=4402h"ASPI"

SeeAlso: INT 4F/AX=8100h


INT 2F 7F02 - Jim Harper's CD-ROM redirector SCSI driver - DO RESET

Category: d - disk I/O enhancements

Inp.:

AX = 7F02h

SeeAlso: AX=7F00h,AX=7F01h


INT 2F 7F03 - Jim Harper's CD-ROM redirector SCSI driver - UNINSTALL

Category: d - disk I/O enhancements

Inp.:

AX = 7F03h

Return: AL = status

    00h successful

    01h unable to uninstall

SeeAlso: AX=7F00h


INT 2F 7F24 - Multiplex - ???

Category: - - (none)

Inp.:

AX = 7F24h

???

Return: ???

Note:	called by PC/370, an IBM 370 emulator by Donald S. Higgins


INT 2F 7F26 - Multiplex - ???

Category: - - (none)

Inp.:

AX = 7F26h

???

Return: ???

Note:	called by PC/370, an IBM 370 emulator by Donald S. Higgins


INT 2F 8000 - EASY-NET - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 8000h

Return: AL = 00h not installed

     FFh installed

Program: EASY-NET is a shareware two-machine serial-port network


INT 2F 8000 - Nanosoft, Inc. TurboNET server - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 8000h

Return: AL = FFh if installed

    BX = CS of resident code

    CX = ??? (03FCh)

Program: TurboNET is a NetBIOS-based file redirector and server; a

  demonstration version may be downloaded from Nanosoft's BBS

SeeAlso: AX=8100h


INT 2F 8000 - CS_TSR specification - TSR INSTALLATION CHECK

Category: t - TSR libraries

Inp.:

AX = 8000h

DS:SI -> 4-byte CS_TSR signature (11h 43h 53h 10h)

Return: AL = status

    00h no CS_TSR-compliant TSRs installed

    01h installed, but signature did not match

    FFh installed, signature matches

ES:DI -> resident process block (see #1621) of last installed

  TSR (if DS:SI pointed at signature on entry)

Program: the CS_TSR specification is a standardized TSR interface by Compact

  Soft group in Kiev, Ukraine

Desc:	determine whether any CS_TSR-compliant TSRs are installed on the

  selected multiplex number

Range:	AH=80h to AH=FFh

SeeAlso: AX=8001h"CS_TSR",AX=8002h"CS_TSR",AX=8003h"CS_TSR"


INT 2F 8000 - FaxBIOS interface - INSTALLATION CHECK

Category: F - FAX

Inp.:

AX = 8000h

DX = 0000h

DI = 0000h

Return: AL = FFh if installed

DX:DI -> signature "FaxBiosjpc"

Range:	AH=80h to AH=FFh, selected by scanning multiplex numbers for signature

SeeAlso: AH=2Ah,AX=80FBh


INT 2F 8001 - Nanosoft, Inc. TurboNET server - ???

Category: N - network

Inp.:

AX = 8001h

DS:SI -> 16-byte buffer for ???

Return: AH = status

    00h successful

    01h error (TurboNET busy)

Note:	makes NetBIOS calls


INT 2F 8001 - CS_TSR specification - GET HANDLE (TSR-SPECIFIC INSTALLATION CHECK)

Category: t - TSR libraries

Inp.:

AX = 8001h

DS:SI -> ASCIZ signature string for desired TSR (see #1622)

Return: BX = process handle or 0000h if specified TSR not installed

ES:DI -> process block for TSR (see #1621) if BX<>0000h

Note:	A widely-available copy of ASCII billing itself as "ASCII 2.OO by

  Nick Zaikin Jr." is in fact a hacked copy of the Compact Soft

  ASCII v4.23 which is identical except for the changed attribution

  and version (in fact, some instances of "4.23" were missed); the

  hacked copy requires the signature string

  "ASCII 2.OO by Nick Zaikin Jr." instead of the unhacked version's

  simple signature "ASCII"

SeeAlso: AX=8000h"CS_TSR",AX=8002h"CS_TSR"


INT 2F 8002 - CS_TSR specification - GET PROCESS BLOCK BY PROCESS HANDLE

Category: t - TSR libraries

Inp.:

AX = 8002h

BX = process handle for TSR (see AX=8001h"CS_TSR")

Return: ES:DI -> process block for specified TSR (see #1621)

unchanged if no match for process handle

Note:	This function is used to allocate a process handle when the TSR

  installs itself, by setting ES:DI to point at something other than

  a CS_TSR process block's signature string and iterating through the

  possible process handles (0001h to FFFFh) until ES:DI is returned

  unchanged

SeeAlso: AX=8000h"CS_TSR",AX=8001h"CS_TSR",AX=8003h"CS_TSR"


INT 2F 8003 - CS_TSR specification - CUSTOM SUBFUNCTION

Category: t - TSR libraries

Inp.:

AX = 8003h

BX = process handle for TSR (see AX=8001h"CS_TSR")

other registers vary by TSR

Return: vary by TSR, unchanged if not supported

Program: the CS_TSR specification is a standardized TSR interface by Compact

  Soft group in Kiev, Ukraine

SeeAlso: AX=8000h"CS_TSR",AX=8001h"CS_TSR",AX=8002h"CS_TSR"


INT 2F 80FB - FaxBIOS interface - COMMAND SUBMISSION

Category: F - FAX

Inp.:

AX = 80FBh

BX = function number (see #1623)

DX:DI -> command buffer

  (see #1625,#1628,#1629,#1630,#1631,#1632,#1637,#1643,#1650)

Return: AL = FFh if submitted OK

CX = result code (see #1624)

Range:	AH=80h to AH=FFh, selected by scanning multiplex numbers for signature

SeeAlso: AX=8000h"FaxBIOS",AX=CBDDh


INT 2F 8100 - Nanosoft, Inc. TurboNET redirector - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 8100h

Return: AL = FFh if installed

Program: TurboNET is a NetBIOS-based file redirector and server; a

  demonstration version may be downloaded from Nanosoft's BBS

SeeAlso: AX=8000h"TurboNET"


INT 2F 8101 - Nanosoft, Inc. TurboNET redirector - ???

undocumented function

Category: N - network

Inp.:

AX = 8101h

Return: AL = ???

DL = ???


INT 2F 8102 - Nanosoft, Inc. TurboNET redirector - ???

undocumented function

Category: N - network

Inp.:

AX = 8102h

Return: AL = ???

DL = ???


INT 2F 8103 - Nanosoft, Inc. TurboNET redirector - GET MACHINE NAME???

undocumented function

Category: N - network

Inp.:

AX = 8103h

ES:DI -> 17-byte buffer

Return: buffer filled


INT 2F 8104 - Nanosoft, Inc. TurboNET redirector - ???

undocumented function

Category: N - network

Inp.:

AX = 8104h

BL = ???

BH = ???

CX = ???

DX = ???

DS:SI -> 16-byte buffer containing ???

Return: AL = 00h ???


INT 2F 8105 - Nanosoft, Inc. TurboNET redirector - ???

undocumented function

Category: N - network

Inp.:

AX = 8105h

CX = ??? (don't change current value if 0000h)

DX = ??? (don't change current value if 0000h)

Return: AL = 00h successful


INT 2F 8200 - RESPLAY - SAMPLE/PLAYBACK

Category: s - sound/speech

Inp.:

AX = 8200h

DX:DI -> start of sample space

CX:BX = length in bytes

Return: AX = status (see #1651)

Program: RESPLAY is a freeware sound sampling/playback utility by Mark J. Cox

SeeAlso: AX=8201h"RESPLAY",AX=8210h


INT 2F 8200 - Nanosoft, Inc. CAPDOS - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 8200h

Return: AL = FFh if installed

Program: CAPDOS is a TSR by Nanosoft, Inc. which allows INT 21h calls to be

  captured and recorded for later analysis

SeeAlso: AX=8100h,AX=8201h"CAPDOS",AX=8202h"CAPDOS",AX=8203h"CAPDOS"

SeeAlso: AX=8204h"CAPDOS"


INT 2F 8201 - RESPLAY - INSTALLATION CHECK

Category: s - sound/speech

Inp.:

AX = 8201h

Return: AX = 7746h if installed

SeeAlso: AX=8202h"RESPLAY",AX=8210h


INT 2F 8201 - Nanosoft, Inc. CAPDOS - CLEAR QUEUE

Category: G - debuggers/debugging tools

Inp.:

AX = 8201h

Note:	resets queue of captured INT 21 calls

SeeAlso: AX=8200h"CAPDOS"


INT 2F 8202 - RESPLAY - UNINSTALL

Category: s - sound/speech

Inp.:

AX = 8202h

Return: AX = status

    1000h successful

SeeAlso: AX=8201h"RESPLAY",AX=8210h"RESPLAY"


INT 2F 8202 - Nanosoft, Inc. CAPDOS - START COLLECTION

Category: G - debuggers/debugging tools

Inp.:

AX = 8202h

SeeAlso: AX=8200h"CAPDOS",AX=8203h"CAPDOS"


INT 2F 8203 - Nanosoft, Inc. CAPDOS - STOP COLLECTION

Category: G - debuggers/debugging tools

Inp.:

AX = 8203h

SeeAlso: AX=8200h"CAPDOS",AX=8202h"CAPDOS",AX=8204h"CAPDOS"


INT 2F 8204 - Nanosoft, Inc. CAPDOS - GET QUEUE PARAMETERS

Category: G - debuggers/debugging tools

Inp.:

AX = 8204h

Return: AH = flag: queue wrapped if nonzero

BX = index of current start of queue

CX = size of queue in entries

SeeAlso: AX=8200h"CAPDOS",AX=8202h"CAPDOS",AX=8205h"CAPDOS"


INT 2F 8205 - Nanosoft, Inc. CAPDOS - GET QUEUE ITEM

Category: G - debuggers/debugging tools

Inp.:

AX = 8205h

BX = queue item number

Return: AX,BX,CX,DX,SI,DI,DS,ES as on entry to captured DOS call

SeeAlso: AX=8200h"CAPDOS",AX=8204h"CAPDOS"


INT 2F 8210 - RESPLAY - INITIALIZE

Category: s - sound/speech

Inp.:

AX = 8210h

BL = sound device number (see #1652)

BH = sample rate in multiples of 250 Hz (14h to A0h)

CL = direction

    00h playback

    01h sample

Return: AX = status (see #1651)

SeeAlso: AX=8200h"RESPLAY"


INT 2F 86-- - ???

undocumented function

Category: - - (none)

Inp.:

AH = 86h

AL = function (at least 06h and 07h)

???

Return: ???

Note:	called by Codeview for Windows

SeeAlso: AH=44h


INT 2F 8900 - WHOA!.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = 8900h

Return: AL = state

    00h not installed

    FFh installed

Program: WHOA!.COM is a system slow-down utility by Brad D Crandall

SeeAlso: AX=8901h,AX=8902h


INT 2F 8901 - WHOA!.COM - UNINSTALL

Category: U - resident utilities

Inp.:

AX = 8901h

Return: AL = status

    FDh successful

    FEh error

SeeAlso: AX=8900h


INT 2F 8902 - WHOA!.COM - SET DELAY COUNT

Category: U - resident utilities

Inp.:

AX = 8902h

BX = delay count (larger values slow system down more)

Return: AL = status

    FDh successful

    FEh error

Program: WHOA!.COM is a system slow-down utility by Brad D Crandall

SeeAlso: AX=8900h


INT 2F 9000 - RAID - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = 9000h

Return: AL = FFh if installed

Program: RAID (Resident AID) is a TSR utility program by Ross Neilson Wentworth

  that resides mostly in EMS


INT 2F 9001 - RAID - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 9001h

Return: DX:AX -> ???

SeeAlso: AX=9000h


INT 2F 9002 - RAID - GET RESIDENT SEGMENT

undocumented function

Category: U - resident utilities

Inp.:

AX = 9002h

Return: AX = segment of resident (conventional memory) portion

SeeAlso: AX=9000h


INT 2F 9003 - RAID - UNINSTALL

undocumented function

Category: U - resident utilities

Inp.:

AX = 9003h

Return: ???

SeeAlso: AX=9000h


INT 2F 9004 - RAID - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 9004h

Return: AX = first available paragraph past end of resident portion???

CX destroyed

SeeAlso: AX=9000h


INT 2F 92-- - Network Courier E-Mail - API

Category: e - electronic mail

Inp.:

AH = 92h

AL = function

    00h installation check

    01h uninstall

    02h pop down MICRO.EXE notification window

    03h ???

    04h ???

    05h ???

Return: ???

Program: The Network Courier is an electronic mail package by Consumers

  Software of Vancouver, BC which was bought by Microsoft in 1991 and

  renamed Microsoft Mail v3.0.

SeeAlso: AX=9400h,AX=9401h,AX=9402h,AH=9Ch

Index:	installation check;Network Courier E-Mail

Index:	uninstall;Network Courier E-Mail


INT 2F 9200 - PC Tools v8.0 DRIVEMAP - BUG

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9200h

Program: DRIVEMAP is a redirector which allows drives on computers connected

  over the parallel or serial ports to appear as local drives

BUG:	jumps to data because jump table entry is 0000h

Note:	DRIVEMAP returns AX=FFFFh if not a valid function number in AL


INT 2F 9201 - PC Tools v8.0 DRIVEMAP - CHECK IF MAPPED DRIVE

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9201h

DL = drive number (01h = A:, etc.)

Return: AL = 92h if mapped drive

AH may be destroyed (v8.0 DRIVEMAP returns AX=0000h if not mapped)

SeeAlso: AX=9204h,AX=920Bh


INT 2F 9202 - PC Tools v8.0 DRIVEMAP - UNINSTALL

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9202h

BX = caller's CS

Return: AX = status

    0000h failed

    nonzero successful

SeeAlso: AX=9204h


INT 2F 9203 - PC Tools v8.0 DRIVEMAP - GET VERSION

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9203h

Return: AH = major version

AL = minor version

CX = segment of resident code

Note:	the DRIVEMAP included with PC Tools v8.0 is version 1.00

SeeAlso: AX=9204h,INT 16/AX=FF70h


INT 2F 9204 - PC Tools v8.0 DRIVEMAP - INSTALLATION CHECK

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9204h

Return: AX = 9200h if installed

   BL = ???

   CX = segment of resident code

Program: DRIVEMAP is a redirector which allows drives on computers connected

  over the parallel or serial ports to appear as local drives

SeeAlso: AX=9201h,AX=9202h,AX=9203h


INT 2F 9205 - PC Tools v8.0 DRIVEMAP - SET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9205h

BX = ??? to set

Return: CX = new value of ???


INT 2F 9206 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9206h

???

Return: ???


INT 2F 9207 - PC Tools v8.0 DRIVEMAP - GET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9207h

???

Return: AX = ???


INT 2F 9208 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9208h

???

Return: ???


INT 2F 9209 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9209h

???

Return: AX = ???

BX = ???

CX = ???

DX = ???


INT 2F 920A - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 920Ah

BX = ???

Return: AX = ??? or FFFBh on error


INT 2F 920B - PC Tools v8.0 DRIVEMAP - SET DRIVE MAPPING

undocumented function

Category: R - remote control/file access

Inp.:

AX = 920Bh

BL = drive letter (41h ['A'] = A:, etc)

CX = ??? (0000h removes mapping)

Return: AX = ??? or FFF8h on error

SeeAlso: AX=9201h,AX=920Dh


INT 2F 920C - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 920Ch

???

Return: AX = ??? (0002h)

CX = ??? (0000h)


INT 2F 920D - PC Tools v8.0 DRIVEMAP - GET DRIVE TYPE

undocumented function

Category: R - remote control/file access

Inp.:

AX = 920Dh

BL = drive letter (41h ['A'] = A:, etc)

Return: AX = type flags

bit 0: ???

bit 1: available

bit 5: local

BX = ???

CX = segment of resident code (apparently an unintended side effect)

Program: DRIVEMAP is a redirector which allows drives on computers connected

  over the parallel or serial ports to appear as local drives

SeeAlso: AX=9218h,INT 16/AX=FF70h


INT 2F 920E - PC Tools v8.0 DRIVEMAP - SET LPT MAPPING

undocumented function

Category: R - remote control/file access

Inp.:

AX = 920Eh

BX = port number (0-2)

CX = ??? (0000h to unmap)

Return: ???


INT 2F 920F - PC Tools v8.0 DRIVEMAP - GET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 920Fh

ES:DI -> 3-byte buffer for ???

Return: CX = 0000h

ES:DI buffer filled


INT 2F 9210 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9210h

???

Return: ???


INT 2F 9211 - PC Tools v8.0 DRIVEMAP - GET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9211h

ES:DI -> 8-word buffer for ???

Return: CX = 0000h

ES:DI buffer filled


INT 2F 9212 - PC Tools v8.0 DRIVEMAP - CRITICAL SECTION???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9212h

BX = phase

    0000h leave critical section???

    nonzero enter critical section???


INT 2F 9213 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9213h

BX = function number (0000h-000Bh)

???

Return: ???


INT 2F 9214 - PC Tools v8.0 DRIVEMAP - GET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9214h

ES:DI -> 6-word buffer for ???

Return: CX = 0000h

AX = ???

ES:DI buffer filled


INT 2F 9215 - PC Tools v8.0 DRIVEMAP - GET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9215h

ES:DI -> 100-word buffer for ???

Return: CX = 0000h

ES:DI buffer filled


INT 2F 9216 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9216h

ES:DI -> ???

Return: ???


INT 2F 9217 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9217h

DS:SI -> 25-word buffer containing ???

Return: ???


INT 2F 9218 - PC Tools v8.0 DRIVEMAP - GET LPT TYPE???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9218h

BX = port number???

Return: AX = ???

BX = ??? (0000h)

CX = ??? (0000h)

Program: DRIVEMAP is a redirector which allows drives on computers connected

  over the parallel or serial ports to appear as local drives


INT 2F 9219 - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 9219h

???

Return: ???


INT 2F 921A - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 921Ah

???

Return: AH = ???

AL = ???

BX = ???


INT 2F 921B - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 921Bh

???

Return: AX = ???

CX = segment of resident code (apparently an unintended side effect)


INT 2F 921C - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 921Ch

???

Return: ???


INT 2F 921D - PC Tools v8.0 DRIVEMAP - GET ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 921Dh

Return: AX = ???


INT 2F 921E - PC Tools v8.0 DRIVEMAP - ???

undocumented function

Category: R - remote control/file access

Inp.:

AX = 921Eh

???

Return: ???

Program: DRIVEMAP is a redirector which allows drives on computers connected

  over the parallel or serial ports to appear as local drives

Note:	this function sets two variables to 24h each

SeeAlso: INT 16/AX=FF70h


INT 2F 93-- - InnerMission v1.7+ - INSTALLATION CHECK

Category: V - video

Inp.:

AH = 93h

BX = CX = AX

Return: AL = state

    FFh if installed and BX=CX=AX on entry

BX = segment of resident code

    01h if installed but BX or CX differ from AX (multiplex number not

  available)

Program: InnerMission is a shareware graphical screen blanker by Kevin Stokes

SeeAlso: INT 14/AX=AA01h,INT 2F/AX=6400h

Index:	screen saver;InnerMission


INT 2F 9400 - MICRO.EXE - INSTALLATION CHECK

Category: e - electronic mail

Inp.:

AX = 9400h

Return: AL = 07h or 08h if installed

Program: MICRO.EXE is a TSR of the Microsoft Mail part of Workgroup Connection

SeeAlso: AH=92h"Network Courier",AX=9401h,AX=9402h,AX=9403h,AX=9404h

SeeAlso: INT 21/AH=3Fh"WORKGRP.SYS"


INT 2F 9401 - MICRO.EXE - SET ??? FLAG

Category: e - electronic mail

Inp.:

AX = 9401h

SeeAlso: AX=9400h,AX=9403h


INT 2F 9402 - MICRO.EXE - ???

Category: e - electronic mail

Inp.:

AX = 9402h

???

Return: ???

SeeAlso: AX=9400h


INT 2F 9403 - MICRO.EXE - SET ??? FLAG

Category: e - electronic mail

Inp.:

AX = 9403h

SeeAlso: AX=9400h,AX=9404h


INT 2F 9404 - MICRO.EXE - CLEAR ??? FLAG

Category: e - electronic mail

Inp.:

AX = 9404h

ES:DI -> name of executable from which MICRO.EXE was started

Note:	if the specified name is identical to the name of the program file

  from which MICRO was started, the ??? flag is cleared; otherwise,

  it is left unchanged

SeeAlso: AX=9400h,AX=9403h


INT 2F 96C7 - STRETCH - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = 96C7h

Return: AX = AAAAh if installed

Program: stretch.exe is a TSR for Toshiba Laptops to avoid blank screen areas

  in VGA text modes by increasing inter-line spacing


INT 2F 9C-- - Network Courier E-Mail OPERATOR.EXE - API

Category: e - electronic mail

Inp.:

AH = 9Ch

AL = subfunction

    01h uninstall

Return: ???

Program: The Network Courier is an electronic mail package by Consumers

  Software of Vancouver, BC which was bought by Microsoft in 1991 and

  renamed Microsoft Mail v3.0.

SeeAlso: AH=92h

Index:	uninstall;Network Courier E-Mail OPERATOR.EXE


INT 2F 9E00 - INTMON v2.1 - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9E00h

Return: AX = FFFFh if installed

    BX = segment of resident code

Program: INTMON is a shareware interactive interrupt monitoring TSR for 386

  and higher machines by Celso Minnitti, Jr.

SeeAlso: AX=9E01h,AX=9E02h,AX=9E03h,AX=9F00h


INT 2F 9E01 - INTMON v2.1 - RESET

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9E01h

Return: ???

Desc:	this function specifies that INTMON should assume that any interrupts

  on which it is currently awaiting a return have completed (i.e.

  interrupts which never return such as INT 20 and INT 27)

SeeAlso: AX=9E00h,AX=9E03h


INT 2F 9E02 - INTMON v2.1 - DISPLAY CPU REGISTERS???

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9E02h

Return: ???

SeeAlso: AX=9E00h


INT 2F 9E03 - INTMON v2.1 - HOOK INTERRUPT???

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9E03h

BH = interrupt number???

Return: ???

Note:	if AL > 03h on entry, INTMON 2.1 returns immediately

SeeAlso: AX=9E00h,AX=9E01h


INT 2F 9F00 - INTCFG v2.1 - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9F00h

Return: AX = FFFFh if installed

Program: INTCFG is an optionally-resident control program for INTMON by Celso

  Minnitti, Jr.

SeeAlso: AX=9E00h,AX=9F01h,AX=9F30h,AX=9F49h


INT 2F 9F01 - INTCFG v2.1 - ???

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9F01h

???

Return: ???

SeeAlso: AX=9F00h


INT 2F 9F30 - INTCFG v2.1 - GET ???

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9F30h

Return: AX = ??? (0002h)

SeeAlso: AX=9F00h


INT 2F 9F49 - INTCFG v2.1 - UNINSTALL

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 9F49h

Return: AX,DX,DS,ES destroyed

SeeAlso: AX=9F00h


INT 2F A1-- - Ergo DOS extenders - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AH = A1h

BX = 0081h

AL = which

    FEh OS/286,OS/386

    FFh HummingBoard DOS extender

ES:DI -> 16-byte buffer

Return: if installed, first four bytes of ES:DI buffer are "IABH"

Note:	since TKERNEL is a licensed version, it is likely that subfunctions

  BX=0082h and BX=0084h are present and function identically to the

  AX=FBA1h/BX=008xh calls

SeeAlso: AX=ED00h,AX=FBA1h/BX=0081h,INT 15/AX=BF02h


INT 2F A189 - Biologic HRAMDEV.SYS - API

undocumented function

Category: m - memory management

Inp.:

AX = A189h

BX = subfunction

    0000h set ???

    0001h remove ???

    0002h get status ???

    0003h enable ???

    0004h disable ???

    0005h set ??? flag

    0006h clear ??? flag

    0007h set ??? flag

    0008h clear ??? flag

    0009h set ???

ES:DI -> function-specific arguments

if func 0000h: 20-byte buffer containing ???

if func 0001h: 20-byte buffer for returned ???

if func 0002h: 16-byte buffer for returned ???

if func 0009h: WORD containing ???

Return: BX = A189h if installed

AH = status

    00h successful

    FFh failed or invalid function number

Program: HRAMDEV.SYS is a part of the shareware package HRAM by Biologic which

  provides improved high memory access under MS-DOS 5.0

Note:	functions 00h and 01h use a stack of four entries; function 01h always

  removes the values stored with the most recent function 00h call

  which has not yet been matched with a function 01h call.


INT 2F A4E0 - Futurus Team - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = A4E0h

Return: AL = 52h ("R") if installed

    AH = major version plus 30h ("0")

    ES:BX -> ??? (INT A4 handler???)

Note:	older versions of Right Hand Man (from which Team evolved) store the

  signature "RH" at offset 103h in the INT 2F handler's segment

SeeAlso: INT A4"Right Hand Man"


INT 2F A900 - METZTSR.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = A900h

CF set

Return: CF clear if resident

    AX = 97FFh

CF set if not present

Notes:	METZTSR.COM prevents METZ applications (such as the MAGIC screen

  saver) inactivity timeout while running a DOSapp under MS Windows.

the default multiplex number is A9h, but may be set to any value from

  80h to FFh with a commandline switch

SeeAlso: AX=A901h,AX=A902h


INT 2F A901 - METZTSR.COM - GET TIME OF LAST KEYBOARD ACTIVITY

Category: U - resident utilities

Inp.:

AX = A901h

CF set

Return: CF clear if successful

    AX:DX = BIOS time at which INT 09 was last invoked

CF set if not present

SeeAlso: INT 09,INT 1A/AH=00h


INT 2F A902 - METZTSR.COM - SET METZ Ctrl-Alt-Del FLAG

Category: U - resident utilities

Inp.:

AX = A902h

BL = new value

    00h Ctrl-Alt-Del not allowed

    else Ctrl-Alt-Del allowed (startup default is 01h)

CF set

Return: CF clear if successful

    AX = 97FFh

CF set if not resident

SeeAlso: AX=A903h


INT 2F A903 - METZTSR.COM - GET METZ Ctrl-Alt-Del FLAG

Category: U - resident utilities

Inp.:

AX = A903h

CF set

Return: CF clear if successful

    AX = 97FFh if Ctrl-Alt-Del allowed

    AX = 0000h if Ctrl-Alt-Del not allowed

CF set if not resident

SeeAlso: AX=A902h


INT 2F AA00 - VIDCLOCK.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = AA00h

Return: AL = 00h not installed

     FFh installed

Program: VIDCLOCK.COM is a memory-resident clock by Thomas G. Hanlin III


INT 2F AB00 - Btrieve Multi-User - INSTALLATION CHECK

Category: f - file manipulation

Inp.:

AX = AB00h

Return: AL = 4Dh if installed

SeeAlso: AX=AB01h,AX=AB02h,INT 7B"Btrieve"


INT 2F AB01 - Btrieve Multi-User - EXECUTE Btrieve OPERATION

Category: f - file manipulation

Inp.:

AX = AB01h

BX = process ID

DS:DX -> 38-byte parameter record (see #2425 at INT 7B"Btrieve")

Return: AL = status

    00h OK

    other retry after calling INT 7F/AX=0200h

SeeAlso: AX=AB00h,AX=AB02h,INT 7B"Btrieve",INT 7F/AX=0200h


INT 2F AB02 - Btrieve Multi-User - GET NEW PROCESS ID

Category: f - file manipulation

Inp.:

AX = AB02h

Return: AL = 00h successful

    BX = process ID

AL > 00h failed, retry after calling INT 7F/AX=0200h

SeeAlso: AX=AB00h,AX=AB01h,INT 7B"Btrieve",INT 7F/AX=0200h


INT 2F AC00 - DOS 4.01+ GRAPHICS.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AX = AC00h

Return: AX = FFFFh

ES:DI -> ??? (graphics data?) (not documented)

Note:	this installation check was moved here to avoid the conflict with the

  CD-ROM extensions that occurred in DOS 4.00

SeeAlso: AX=1500h"GRAPHICS"


INT 2F AC00 - QRIP/TSR - GIVE CPU TO QRIP

Category: V - video

Inp.:

AX = AC00h

DI = 1092h

Return: nothing

Program: QRIP/TSR is a shareware TSR by Shane Hathaway implementing the Remote

  Imaging Protocol (RIP, RIPscrip) used by several BBS systems to

  provide a graphical user interface

Desc:	give QRIP some CPU time to update music and flashing timers

Notes:	if DI <> 1092h on entry, QRIP chains the call

this function should be called regularly whenever the terminal program

  is otherwise idle; the updates are automatically performed on any

  other QRIP call

SeeAlso: AX=AC01h,AX=ACF0h


INT 2F AC01 - QRIP/TSR - CHANGE INTERNAL FLAGS

Category: V - video

Inp.:

AX = AC01h

DI = 1092h

BX = flags to be turned on (see #1653)

CX = flags to be turned off (see #1653)

Return: AX = 9142h if installed

    DX = DOS-takeover flag (nonzero if QRIP able to take over DOS)

    ---if DX nonzero---

    BX = QRIP version number in hex (BH = major, BL = minor)

    CX = new flags (see #1653)

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC00h/DI=1092h,AX=ACF0h


INT 2F AC02 - QRIP/TSR - TURN OFF GRAPHICS SCREEN

Category: V - video

Inp.:

AX = AC02h

DI = 1092h

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC03h,AX=ACF0h


INT 2F AC03 - QRIP/TSR - TURN ON GRAPHICS SCREEN

Category: V - video

Inp.:

AX = AC03h

DI = 1092h

Return: nothing

Notes:	if DI <> 1092h on entry, QRIP chains the call

this function does not restore the contents of the screen (see AX=AC15h)

SeeAlso: AX=AC02h,AX=AC14h,AX=AC15h


INT 2F AC04 - QRIP/TSR - OUTPUT STRING THROUGH QRIP

Category: V - video

Inp.:

AX = AC04h

DI = 1092h

DX:BX -> string

CX = length of string

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC05h,AX=AC09h,AX=AC0Ah,AX=ACF0h


INT 2F AC05 - QRIP/TSR - OUTPUT NULL-TERMINATED STRING THROUGH QRIP

Category: V - video

Inp.:

AX = AC05h

DI = 1092h

DX:BX -> ASCIZ string

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC04h,AX=AC06h,AX=AC09h,AX=AC0Ah,AX=ACF0h


INT 2F AC06 - QRIP/TSR - RECEIVE CHARACTERS FROM QRIP

Category: V - video

Inp.:

AX = AC06h

DI = 1092h

Return: AX = character to send to BBS (0001h-00FFh) or special code (see #1654)

BX = string-waiting flag

    0001h entire string waiting to be sent to terminal (call AX=AC0Ch)

CX = DX = AX

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC04h,AX=AC05h,AX=AC0Ch,AX=AC16h,AX=AC18h,AX=AC1Ah


INT 2F AC07 - QRIP/TSR - GET FONT DIRECTORY

Category: V - video

Inp.:

AX = AC07h

DI = 1092h

Return: DX:BX -> 80-byte internal buffer containing ASCIZ font directory name

Notes:	if DI <> 1092h on entry, QRIP chains the call

the application may change the font directory by overwriting the

  returned buffer, ensuring that it does not exceed 80 bytes incl. NUL

if changed, the new path will not become effective until the graphics

  screen is reinitialized

SeeAlso: AX=AC08h,AX=ACF0h


INT 2F AC08 - QRIP/TSR - GET ICON DIRECTORY

Category: V - video

Inp.:

AX = AC08h

DI = 1092h

Return: DX:BX -> 80-byte internal buffer containing ASCIZ icon directory name

Notes:	if DI <> 1092h on entry, QRIP chains the call

the application may change the icon directory by overwriting the

  returned buffer, ensuring that it does not exceed 80 bytes incl. NUL,

  and includes a trailing backslash

if changed, the new path becomes effective immediately

SeeAlso: AX=AC07h,AX=ACF0h


INT 2F AC09 - QRIP/TSR - OUTPUT STRING THROUGH QRIP

Category: V - video

Inp.:

AX = AC09h

DI = 1092h

DX:BX -> string

CX = length of string

Return: AX = character to send to BBS (0001h-00FFh) or special code (see #1654)

BX = string-waiting flag

    0001h entire string waiting to be sent to terminal (call AX=AC0Ch)

CX = DX = AX

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC04h,AX=AC06h,AX=AC0Ah,AX=ACF0h


INT 2F AC0A - QRIP/TSR - OUTPUT NULL-TERMINATED STRING THROUGH QRIP

Category: V - video

Inp.:

AX = AC0Ah

DI = 1092h

DX:BX -> ASCIZ string

Return: AX = character to send to BBS (0001h-00FFh) or special code (see #1654)

BX = string-waiting flag

    0001h entire string waiting to be sent to terminal (call AX=AC0Ch)

CX = DX = AX

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC05h,AX=AC06h,AX=AC09h,AX=ACF0h


INT 2F AC0B - QRIP/TSR - EXECUTE RIP "END SCENE" COMMAND

Category: V - video

Inp.:

AX = AC0Bh

DI = 1092h

Return: nothing

Notes:	if DI <> 1092h on entry, QRIP chains the call

enables all mouse buttons and cancels the RIP timeout

SeeAlso: AX=AC01h,AX=AC04h,AX=ACF0h


INT 2F AC0C - QRIP/TSR - GET STRING TO BE SENT TO BBS

Category: V - video

Inp.:

AX = AC0Ch

DI = 1092h

Return: AX = status

    0000h nothing to be sent

    0001h a string is waiting to be sent

DX:BX -> string to be sent (may contain NULs)

CX = length of string

    0002h special code waiting (call AX=AC06h)

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC06h,AX=ACF0h


INT 2F AC0D - QRIP/TSR - SET PROTECTED SCREEN AREA

Category: V - video

Inp.:

AX = AC0Dh

DI = 1092h

CL = number of text lines at bottom of screen to protect (00h = off)

BL = attribute with which to fill area (bit 7 = high-int. background)

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC0Eh,AX=AC0Fh,AX=AC10h,AX=ACF0h


INT 2F AC0E - QRIP/TSR - WRITE ASCIZ STRING IN PROTECTED AREA

Category: V - video

Inp.:

AX = AC0Eh

DI = 1092h

DX:BX -> ASCIZ string to be written

CL = column at which to begin writing

CH = row number within protected area (00h = first line)

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC0Dh,AX=AC0Fh,AX=AC10h,AX=ACF0h


INT 2F AC0F - QRIP/TSR - SCROLL PROTECTED AREA

Category: V - video

Inp.:

AX = AC0Fh

DI = 1092h

BH,BL = row,column of upper-left corner in protected area

DH,DL = row,column of lower-right corner

CL = number of lines to scroll up

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC0Dh,AX=AC0Eh,AX=AC10h,AX=ACF0h


INT 2F AC10 - QRIP/TSR - SET OUTPUT COLOR FOR PROTECTED AREA

Category: V - video

Inp.:

AX = AC10h

DI = 1092h

BL = new attribute (bit 7 set for high-intensity background)

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC0Dh,AX=AC0Eh,AX=AC0Fh,AX=AC11h,AX=ACF0h


INT 2F AC11 - QRIP/TSR - CONVERT PROTECTED AREA TO ENTIRE SCREEN

Category: V - video

Inp.:

AX = AC11h

DI = 1092h

BX = mode (0000h = normal protect, 0001h = allow full-screen access)

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC0Dh,AX=AC0Eh,AX=AC0Fh,AX=AC10h,AX=AC12h,AX=ACF0h


INT 2F AC12 - QRIP/TSR - BEGIN POPUP-WINDOW MODE

Category: V - video

Inp.:

AX = AC12h

DI = 1092h

Return: nothing

Notes:	if DI <> 1092h on entry, QRIP chains the call

while popup-mode is in effect, the terminal program can write to the

  screen (and easily restore it) by outputting a RIP file with AX=AC04h

  or AX=AC05h

QRIP will automatically drop out of popup-window mode if the terminal

  program invokes RIP pick-lists

any changes to the protected area will be restored when popup-window

  mode is cancelled

SeeAlso: AX=AC04h,AX=AC11h,AX=AC13h,AX=ACF0h


INT 2F AC13 - QRIP/TSR - END POPUP-WINDOW MODE

Category: V - video

Inp.:

AX = AC13h

DI = 1092h

Return: nothing

Notes:	if DI <> 1092h on entry, QRIP chains the call

restores screen

SeeAlso: AX=AC12h,AX=ACF0h


INT 2F AC14 - QRIP/TSR - SAVE GRAPHICS SCREEN AND SWITCH TO TEXT MODE

Category: V - video

Inp.:

AX = AC14h

DI = 1092h

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC03h,AX=AC15h


INT 2F AC15 - QRIP/TSR - RESTORE GRAPHICS SCREEN

Category: V - video

Inp.:

AX = AC15h

DI = 1092h

Return: nothing

Desc:	restores the graphics screen saved by the last call to AX=AC14h

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC03h,AX=AC14h


INT 2F AC16 - QRIP/TSR - REPORT MODE CHANGE TO QRIP

Category: V - video

Inp.:

AX = AC16h

DI = 1092h

BL = new mode

    00h terminate key wait

    01h status bar on

    02h status bar off

    03h VT-102 mode on

    04h VT-102 mode off

    05h doorway mode on

    06h doorway mode off

    07h hotkeys mode on

    08h hotkeys mode off

    09h tabkey mode on

    0Ah tabkey mode off

Return: nothing

Notes:	if DI <> 1092h on entry, QRIP chains the call

all modes default to OFF when QRIP is first installed


INT 2F AC17 - QRIP/TSR - CALL (EXECUTE) A RIP FILE

Category: V - video

Inp.:

AX = AC17h

DI = 1092h

DX:BX -> ASCIZ filename for RIP file to be executed

Return: nothing

Notes:	if DI <> 1092h on entry, QRIP chains the call

the specified file may be in the current icon directory, the QRIP

  startup directory, or the current directory; any pathnames specified

  with the filename are ignored


INT 2F AC18 - QRIP/TSR - SEND USER KEY TO QRIP

Category: V - video

Inp.:

AX = AC18h

DI = 1092h

BX = key (00xxh is normal ASCII, xx00h is an extended key)

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC06h,AX=ACF0h


INT 2F AC19 - QRIP/TSR - HANGUP

Category: V - video

Inp.:

AX = AC19h

DI = 1092h

Return: nothing

Desc:	inform QRIP that carrier has been lost

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=ACF0h


INT 2F AC1A - QRIP/TSR - GET RIP_ENTER_BLOCK_MODE INFORMATION

Category: V - video

Inp.:

AX = AC1Ah

DI = 1092h

Return: AH = requested protocol (see #1655)

AL = file type (see #1656)

DX:BX -> ASCIZ filename or 0000h:0000h

CX = length of filename

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=ACF0h


INT 2F AC1B - QRIP/TSR - SET SYSTEM FONT SIZE

Category: V - video

Inp.:

AX = AC1Bh

DI = 1092h

BX = font size (see #1657)

Return: nothing

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC04h,AX=ACF0h


INT 2F ACF0 - QRIP/TSR - INSTALLATION CHECK

Category: V - video

Inp.:

AX = ACF0h

DI = 1092h

Return: AX = 9142h if installed

    DX = DOS-takeover flag (nonzero if QRIP able to take over DOS)

    ---if DX nonzero---

    BX = QRIP version number in hex (BH = major, BL = minor)

    CX = current flags (see AX=AC01h)

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=AC00h/DI=1092h,AX=AC01h,AX=AC04h,AX=AC06h,AX=AC1Ah,AX=ACFFh


INT 2F ACFF - QRIP/TSR - UNINSTALL

Category: V - video

Inp.:

AX = ACFFh

DI = 1092h

Return: AX = status

    0000h unable to remove (interrupt vector hooked by another prog)

    0001h successful

    0002h unable to take over DOS at this time (retry uninstall)

Note:	if DI <> 1092h on entry, QRIP chains the call

SeeAlso: AX=ACF0h


INT 2F AD00 - DOS 3.3+ DISPLAY.SYS internal - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = AD00h

Return: AL = FFh if installed

    BX = ??? (0100h for MS-DOS 3.3+)

Note:	DOS 5+ DISPLAY.SYS chains to previous handler if AL is not one of the

  subfunctions listed here


INT 2F AD00 - DR-DOS 3.41,5.0 KEYB - INSTALLATION CHECK

undocumented function

Category: O - other operating systems

Inp.:

AX = AD00h

Return: AX = FFFFh if installed

SeeAlso: AX=AD80h


INT 2F AD01 - DOS 3.3+ DISPLAY.SYS internal - SET ACTIVE CODE PAGE

undocumented function

Category: V - video

Inp.:

AX = AD01h

BX = new code page

Return: CF clear if successful

    AX = 0001h

CF set on error (unsupported code page)

    AX = 0000h

SeeAlso: AX=AD02h


INT 2F AD01 - DR-DOS 3.41,5.0 KEYB - GET CONFIGURATION

undocumented function

Category: O - other operating systems

Inp.:

AX = AD01h

Return: BX = current code page

CX = current keyboard layout (0100h = US, 0102h = foreign)

ES = resident code segment

SeeAlso: AX=AD83h


INT 2F AD02 - DOS 3.3+ DISPLAY.SYS internal - GET ACTIVE CODE PAGE

undocumented function

Category: V - video

Inp.:

AX = AD02h

Return: CF set if code page never set

    AX = 0001h

    BX = FFFFh (assume first hardware code page)

CF clear if successful

    BX = current code page

SeeAlso: AX=AD01h,AX=AD03h


INT 2F AD03 - DOS 3.3+ DISPLAY.SYS internal - GET CODE PAGE INFORMATION

undocumented function

Category: V - video

Inp.:

AX = AD03h

ES:DI -> buffer for code page information (see #1658)

CX = size of buffer in bytes

Return: CF set if buffer too small

CF clear if successful

    ES:DI buffer filled

SeeAlso: AX=AD01h,AX=AD02h


INT 2F AD04 - DOS 4.x only DISPLAY.SYS internal - ???

undocumented function

Category: V - video

Inp.:

AX = AD04h

???

Return: ???


INT 2F AD10 - DOS 4.x DISPLAY.SYS internal - INSTALLATION CHECK???

undocumented function

Category: V - video

Inp.:

AX = AD10h

???

Return: AX = FFFFh

BX = ??? (0100h in PC-DOS 4.01)


INT 2F AD10 - DOS 5+ DISPLAY.SYS internal - ???

undocumented function

Category: V - video

Inp.:

AX = AD10h

???

Return: CF clear if successful

CF set on error

Note:	this function is a NOP if the active code page has never been set

  (AX=AD02h returns BX=FFFFh); its purpose otherwise is not known


INT 2F AD40 - DOS 4.0+ - ???

Category: V - video

Inp.:

AX = AD40h

DX = ???

???

Return: ???

Note:	called by PC-DOS 4.01 PRINT.COM


INT 2F AD80 - DOS 3.3+ KEYB.COM internal - INSTALLATION CHECK

partially documented function

Category: K - keyboard enhancers

Inp.:

AX = AD80h

Return: AL = FFh if installed

    BX = version number (BH = major, BL = minor)

    ES:DI -> internal data (see #1659)

Notes:	MS-DOS 3.30, PC-DOS 4.01, and MS-DOS 5.00 all report version 1.00.

this function was undocumented prior to the release of DOS 5.0


INT 2F AD81 - DOS 3.3+ KEYB.COM - SET KEYBOARD CODE PAGE

Category: K - keyboard enhancers

Inp.:

AX = AD81h

BX = code page (see #0962 at INT 21/AX=6601h)

Return: CF set on error

    AX = 0001h (code page not available)

CF clear if successful

Notes:	called by DISPLAY.SYS

this function was undocumented prior to the release of DOS 5.0

SeeAlso: AX=AD82h


INT 2F AD82 - DOS 3.3+ KEYB.COM - SET KEYBOARD MAPPING

Category: K - keyboard enhancers

Inp.:

AX = AD82h

BL = new state

    00h US keyboard (Control-Alt-F1)

    FFh foreign keyboard (Control-Alt-F2)

Return: CF set on error (BL not 00h or FFh)

CF clear if successful

Note:	this function was undocumented prior to the release of DOS 5.0

SeeAlso: AX=AD81h,AX=AD83h


INT 2F AD83 - DOS 5+ KEYB.COM - GET KEYBOARD MAPPING

Category: K - keyboard enhancers

Inp.:

AX = AD83h

Return: BL = current state

    00h US keyboard

    FFh foreign keyboard

SeeAlso: AX=AD82h


INT 2F AE00 - DOS 3.3+ internal - INSTALLABLE COMMAND - INSTALLATION CHECK

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = AE00h

DX = magic value FFFFh

CH = FFh

CL = length of command line tail (4DOS v4.0)

DS:BX -> command line buffer (see #1662)

DS:SI -> command name buffer (see #1663)

DI = 0000h (4DOS v4.0)

Return: AL = FFh if this command is a TSR extension to COMMAND.COM

AL = 00h if the command should be executed as usual

Notes:	This call provides a mechanism for TSRs to install permanent

  extensions to the command repertoire of COMMAND.COM.	It appears

  that COMMAND.COM makes this call before executing the current

  command line, and does not execute it itself if the return is FFh.

APPEND hooks this call, to allow subsequent APPEND commands to

  execute without re-running APPEND

SeeAlso: AX=AE01h


INT 2F AE01 - DOS 3.3+ internal - INSTALLABLE COMMAND - EXECUTE

undocumented function

Category: l - shells/command interpreters

Inp.:

AX = AE01h

DX = magic value FFFFh

CH = 00h

CL = length of command name (4DOS v4.0)

DS:BX -> command line buffer (see #1662)

DS:SI -> command name buffer (see #1663)

Return: DS:SI buffer updated

  if length byte is nonzero, the following bytes contain the uppercase

  internal command to execute and the command line buffer contains the

  command's parameters (the first DS:[SI] bytes are ignored)

Notes:	this call requests execution of the command which a previous call to

  AX=AE00h indicated was resident

APPEND hooks this call

BUG:	Novell DOS 7.0's COMMAND.COM will attempt to run a disk program with

  the indicated name even if the returned length byte is zero, because

  the register used to flag this case is clobbered without first

  checking it.	The workaround is to set the command name buffer to

  "REM" followed by enough blanks to pad out the original command's

  length, which will also work with MS-DOS 6.

  (from padgett@tccslr.dnet.mmc.com)

SeeAlso: AX=AE00h


INT 2F AF00 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF00h

???

Return: AX = 0000h if interface supported

SeeAlso: AX=AF02h,AX=AF03h,AX=AF04h,AX=AF13h,AX=AF30h


INT 2F AF02 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF02h

???

Return: ES = ???

SeeAlso: AX=AF00h


INT 2F AF03 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF03h

???

Return: DX = ???

SeeAlso: AX=AF00h


INT 2F AF04 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF04h

???

Return: ???

SeeAlso: AX=AF00h


INT 2F AF05 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF05h

???

Return: ???

SeeAlso: AX=AF00h


INT 2F AF12 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF12h

???

Return: ES = ???

SeeAlso: AX=AF00h


INT 2F AF13 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF13h

???

Return: ???

SeeAlso: AX=AF00h


INT 2F AF30 - ???

undocumented function

Category: - - (none)

Inp.:

AX = AF30h

???

Return: ???

SeeAlso: AX=AF00h


INT 2F AFDE - Disk-Emu - INSTALLATION CHECK / VERSION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = AFDEh

ES:DI -> 14-byte buffer for data (see #1664)

Return: AX = CFDEh (Carlos Fernandez Disk-Emu) if installed

    BX = version (BH = major, BL = minor)


INT 2F B000 - DOS 3.3+ GRAFTABL.COM - INSTALLATION CHECK

Category: V - video

Inp.:

AX = B000h

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

Notes:	called by DISPLAY.SYS

documented for DOS 5.0, but undocumented in prior versions

SeeAlso: AX=2300h,AX=2E00h,AX=B001h


INT 2F B001 - DOS 3.3+ GRAFTABL.COM - GET GRAPHICS FONT TABLE

Category: V - video

Inp.:

AX = B001h

DS:BX -> DWORD buffer for address of 8x8 font table

Return: buffer filled

AL = FFh

Note:	PC-DOS 3.30/4.01 and MS-DOS 6.0 set the font table offset to 0130h,

  MS-DOS 3.30 sets it to 0030h

SeeAlso: AH=2Eh"GRAFTABL",AX=B000h


INT 2F B400 - IBM PC3270 EMULATION PROG v3 - INSTALLATION CHECK

Category: I - IBM workstation/terminal emulators

Inp.:

AX = B400h

Return: AL = FFh if installed


INT 2F B401 - IBM PC3270 EMULATION PROG v3 - GET HOST BUFFER ADDRESS

Category: I - IBM workstation/terminal emulators

Inp.:

AX = B401h

Return: ES -> host screen buffer (PC ASCII format)

ES unchanged if communications not started


INT 2F B402 - IBM PC3270 EMULATION PROG v3 - ???

Category: I - IBM workstation/terminal emulators

Inp.:

AX = B402h

BX = ???

Return: ???


INT 2F B403 - IBM PC3270 EMULATION PROG v3 - ???

Category: I - IBM workstation/terminal emulators

Inp.:

AX = B403h

???

Return: ???


INT 2F B404 - IBM PC3270 EMULATION PROG v3 - ???

Category: I - IBM workstation/terminal emulators

Inp.:

AX = B404h

???

Return: ???


INT 2F B405 - IBM PC3270 EMULATION PROG v3 - ???

Category: I - IBM workstation/terminal emulators

Inp.:

AX = B405h

???

Return: ???


INT 2F B700 - APPEND - INSTALLATION CHECK

Category: f - file manipulation

Inp.:

AX = B700h

Return: AL = status

    00h not installed

    FFh installed

Note:	MS-DOS 3.30 APPEND refuses to install itself when run inside TopView or

  a TopView-compatible environment

SeeAlso: AX=B702h


INT 2F B701 - APPEND v3.21 only - GET APPEND PATH

undocumented function

Category: f - file manipulation

Inp.:

AX = B701h

Return: ES:DI -> active APPEND path

Notes:	the only version of APPEND known to support this call is the APPEND

  shipped with Microtek MS-DOS 3.21; MS-DOS 3.30-6.00 APPEND displays

  "Incorrect APPEND Version" and aborts the caller

use AX=B704h first, and only call this function if that one is not

  supported

SeeAlso: AX=B700h,AX=B704h


INT 2F B702 - APPEND - VERSION CHECK

Category: f - file manipulation

Inp.:

AX = B702h

Return: AX = FFFFh if not DOS 4.0 APPEND (also if DOS 5.0 APPEND)

AL = major version number

AH = minor version number, otherwise

SeeAlso: AX=B700h,AX=B710h


INT 2F B703 - DOS 3.3, DOS 5.0 APPEND - HOOK INT 21

undocumented function

Category: f - file manipulation

Inp.:

AX = B703h

ES:DI -> INT 21 handler APPEND should chain to

Return: ES:DI -> APPEND's INT 21 handler

Note:	each invocation of this function toggles a flag which APPEND uses to

  determine whether to chain to the user handler or the original

  INT 21

SeeAlso: AX=B700h,AX=B706h


INT 2F B704 - DOS 3.3+ APPEND - GET APPEND PATH

Category: f - file manipulation

Inp.:

AX = B704h

Return: ES:DI -> active APPEND path (128 bytes max)

Note:	some versions of append do not support this call, and return ES

  unchanged; in this case, you should call AX=B701h to get the APPEND

  path

SeeAlso: AX=B701h


INT 2F B706 - DOS 4.0+ APPEND - GET APPEND FUNCTION STATE

Category: f - file manipulation

Inp.:

AX = B706h

Return: BX = APPEND state (see #1665)

SeeAlso: AX=B700h,AX=B707h


INT 2F B707 - DOS 4.0+ APPEND - SET APPEND FUNCTION STATE

Category: f - file manipulation

Inp.:

AX = B707h

BX = APPEND state bits (see #1665)

SeeAlso: AX=B700h,AX=B706h


INT 2F B710 - DOS 3.3+ APPEND - GET VERSION INFO

undocumented function

Category: f - file manipulation

Inp.:

AX = B710h

Return: AX = current APPEND state (see #1665)

BX = ??? (0000h in MS-DOS 3.30 and 5.00)

CX = ??? (0000h in MS-DOS 3.30 and 5.00)

DL = major version

DH = minor version

SeeAlso: AX=B700h,AX=B702h


INT 2F B711 - DOS 4.0+ APPEND - SET RETURN FOUND NAME STATE

Category: f - file manipulation

Inp.:

AX = B711h

Note:	if the next INT 21h call (and ONLY the next) is function 3Dh, 43h, or

  6Ch (also 4B03h and 4Eh if /X active), the fully qualified filename

  is written over top of the filename passed to the INT 21h call.  The

  application must provide a sufficiently large buffer.	 This state is

  reset after the next INT 21h call processed by APPEND.

APPEND uses the byte at offset 3Dh in the PSP

  (see #0603 at INT 21/AH=26h) to store the flag telling it to

  overwrite the filename

BUG:	DOS 4.0 APPEND reportedly overwrites DS:DX instead of DS:SI for

  INT 21/AH=6Ch

SeeAlso: INT 21/AH=26h,INT 21/AH=4Eh


INT 2F B800 - NETWORK - INSTALLATION CHECK

Category: N - network

Inp.:

AX = B800h

Return: AL = status

    00h	    not installed

    nonzero installed

      BX = installed component flags (test in this order!)

   bit 6   server

   bit 2   messenger

   bit 7   receiver

   bit 3   redirector

   bit 1   LANPUP (LANtastic 4.0)

Notes:	this function is supported by PC LAN Program, LAN Manager, LANtastic,

  NetWare Lite, SilverNET, 10NET, etc.

LANtastic and NetWare Lite use only BL for the return value, preserving

  BH; LAN Manager and DOS LAN Requester return BH=00h.	This permits

  differentiation between those two groups by setting BH to a nonzero

  value before the call and checking its value on return.

SeeAlso: AX=4E53h,AX=B809h


INT 2F B800 - 10NET - INSTALLATION CHECK

Category: N - network

Inp.:

AX = B800h

CX = F041h

Return: AL = status

    00h	    not installed

    nonzero installed

BX = installed component flags (test in this order!)

   bit 6   server

   bit 2   messenger

   bit 7   receiver

   bit 3   redirector

   bit 1   LANPUP (LANtastic 4.0)

CX = 10Net data segment

CX:DX -> 10Net Configuration Table

  (see #0896 at INT 21/AX=5E01h"10NET")

Note:	if CX <> F041h on entry, neither CX nor DX will be changed, and this

  call becomes identical to the standard installation check above

SeeAlso: AX=B800h"network",INT 21/AX=5E01h"10NET"


INT 2F B803 - NETWORK - GET NETWORK EVENT POST HANDLER

Category: N - network

Inp.:

AX = B803h

Return: ES:BX -> current event post handler (see AX=B804h)

Note:	this function is supported by PC LAN Program, 10NET v5.0

SeeAlso: AC=B800h,AX=B804h,AX=B903h


INT 2F B804 - NETWORK - SET NETWORK EVENT POST HANDLER

Category: N - network

Inp.:

AX = B804h

CX = (10NET) 0370h if 10Windows is hooking post handler

ES:BX -> new event post handler (see #1666)

Notes:	used in conjunction with AX=B803h to hook into the network event post

  routine

this function is supported by PC LAN Program, 10NET v5.0

The specified handler is called on any network event.  Two events are

  defined: message received and critical network error.

SeeAlso: AX=B800h,AX=B803h,AX=B904h


INT 2F B807 - NETWORK - GET NetBIOS NAME NUMBER OF MACHINE NAME

Category: N - network

Inp.:

AX = B807h

Return: CH = NetBIOS name number of the machine name

SeeAlso: INT 21/AX=5E00h


INT 2F B808 - NETWORK - RELINK KEYBOARD HANDLER

undocumented function

Category: N - network

Inp.:

AX = B808h

ES:BX -> INT 09 handler network should call after it finishes INT 09

Notes:	this call replaces the address to which the network software chains on

  an INT 09 without preserving the original value.  This allows a prior

  handler to unlink, but does not allow a new handler to be added

  such that the network gets the INT 09 first unless the new handler

  completely takes over INT 09 and never chains.

this function is called by the DOS 3.2 KEYBxx.COM

SeeAlso: AX=B908h


INT 2F B809 - NETWORK - LANtastic, NetWare Lite - VERSION CHECK

Category: N - network

Inp.:

AX = B809h

Return: AH = major version

AL = minor version (decimal)

Notes:	this function is supported in this form by LANtastic, NetWare Lite,

  SilverNET, ...

NetWare Lite returns its own version number rather than a PC LAN

  compatibility version

SeeAlso: AX=4E53h,AX=B800h,AX=B809h"PC LAN Program"


INT 2F B809 - NETWORK - PC LAN Program - VERSION CHECK

Category: N - network

Inp.:

AX = B809h

Return: AH = minor version (decimal)

AL = major version

Notes:	this function is supported in this form by PC LAN Program, LAN Manager,

  the DOS LAN Requester, and 10NET v5.0

10NET returns version 1.10 (AX=0A01h) for compatibility

SeeAlso: AX=4E53h,AX=B800h,AX=B809h"LANtastic"


INT 2F B80A - PC Network 1.00 - ???

partially documented function

Category: N - network

Inp.:

AX = B80Ah

???

Return: ???

Program: PC Network is an early networking package which was renamed the

  IBM PC Local Area Network Program (PC LAN Program) as of v1.10

Note:	called by RECEIVER (equivalent to NetWare Lite SERVER)


INT 2F B80F - DOS LAN Requester - GET START PARAMETERS

Category: N - network

Inp.:

AX = B80Fh

CX = size of return data buffer

ES:DI -> return data buffer (see #1668)

Return: AX = status

     00h     network started

     nonzero network not started

CX = number of bytes returned in buffer

ES:DI buffer filled

SeeAlso: AX=B809h"PC LAN Program"


INT 2F B900 - PC Network RECEIVER.COM - INSTALLATION CHECK

Category: N - network

Inp.:

AX = B900h

Return: AL = state

    00h if not installed

    FFh if installed


INT 2F B901 - PC Network RECEIVER.COM - GET RECEIVER.COM INT 2F HANDLER ADDRESS

Category: N - network

Inp.:

AX = B901h

Return: AL = ???

ES:BX -> RECEIVER.COM INT 2F handler

Desc:	allows more efficient execution by letting the caller bypass any other

  INT 2F handlers which have been added since RECEIVER.COM was

  installed


INT 2F B903 - PC Network RECEIVER.COM - GET RECEIVER.COM POST ADDRESS

Category: N - network

Inp.:

AX = B903h

Return: ES:BX -> POST handler

SeeAlso: AX=B803h,AX=B904h


INT 2F B904 - PC Network RECEIVER.COM - SET RECEIVER.COM POST ADDRESS

Category: N - network

Inp.:

AX = B904h

ES:BX -> new POST handler

SeeAlso: AX=B804h,AX=B903h


INT 2F B905 - PC Network RECEIVER.COM - GET FILENAME

Category: N - network

Inp.:

AX = B905h

DS:BX -> 128-byte buffer for filename 1

DS:DX -> 128-byte buffer for filename 2

Return: buffers filled from RECEIVER.COM internal buffers

Note:	use of filenames is unknown, but one appears to be for storing messages

SeeAlso: AX=B906h


INT 2F B906 - PC Network RECEIVER.COM - SET FILENAME

Category: N - network

Inp.:

AX = B906h

DS:BX -> 128-byte buffer for filename 1

DS:DX -> 128-byte buffer for filename 2

Return: RECEIVER.COM internal buffers filled from user buffers

Note:	use of filenames is unknown, but one appears to be for storing messages

SeeAlso: AX=B905h


INT 2F B908 - PC Network RECEIVER.COM - UNLINK KEYBOARD HANDLER

Category: N - network

Inp.:

AX = B908h

ES:BX -> INT 09 handler RECEIVER should call after it finishes INT 09

Note:	this call replaces the address to which RECEIVER.COM chains on an

  INT 09 without preserving the original value.	 This allows a prior

  handler to unlink, but does not allow a new handler to be added

  such that RECEIVER gets the INT 09 first.

SeeAlso: AX=B808h


INT 2F BC00 - Windows 3.0, DOS 5+ EGA.SYS - INSTALLATION CHECK

Category: V - video

Inp.:

AX = BC00h

Return: AL = state

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

BX = 5456h ("TV")

Range:	AH=80h to AH=FFh, selected by commandline switch

SeeAlso: AX=BC06h"EGA",INT 10/AH=FAh"EGA"


INT 2F BC00 - MediaVision MVSOUND.SYS - INSTALLATION CHECK

Category: s - sound/speech

Inp.:

AX = BC00h

BX = 3F3Fh ('??')

CX = 0000h

DX = 0000h

Return: if installed, BX XOR CX XOR DX = 4D56h ('MV')

Program: MVSOUND.SYS is a driver for the MediaVision ProAudio Spectrum family

  of sound boards; its primary programmer was Bryan Crane

SeeAlso: AX=BC01h"MVSOUND",AX=BC02h,AX=BC03h,AX=BC04h,AX=BC06h"MVSOUND"


INT 2F BC01 - MediaVision MVSOUND.SYS - GET VERSION

Category: s - sound/speech

Inp.:

AX = BC01h

BX = magic value 6D20h ('m ')

CX = magic value 2076h (' v')

DX = magic value 2020h ('  ')

Return: BX = ASCII major version (leading zeros significant)

CX = ASCII minor version (leading zeros significant)

SeeAlso: AX=BC00h/BX=3F3Fh


INT 2F BC02 - MediaVision MVSOUND.SYS - GET STATE TABLE POINTER

Category: s - sound/speech

Inp.:

AX = BC02h

Return: BX:DX -> state table

SeeAlso: AX=BC00h/BX=3F3Fh,AX=BC03h


INT 2F BC03 - MediaVision MVSOUND.SYS - GET FUNCTION TABLE POINTER

Category: s - sound/speech

Inp.:

AX = BC03h

Return: BX:DX -> function table

SeeAlso: AX=BC00h/BX=3F3Fh,AX=BC02h


INT 2F BC04 - MediaVision MVSOUND.SYS - GET DMA AND IRQ CHANNELS

Category: s - sound/speech

Inp.:

AX = BC04h

Return: AX = 4D56h ('MV')

BL = DMA channel

CL = IRQ number

SeeAlso: AX=BC00h/BX=3F3Fh,AX=BC01h"MVSOUND"


INT 2F BC06 - MS Windows 3.0, DOS 5+ EGA.SYS - GET VERSION INFO

undocumented function

Category: V - video

Inp.:

AX = BC06h

Return: BX = 5456h ("TV")

CH = major version

CL = minor version

DL = revision

SeeAlso: AX=BC00h"EGA",INT 10/AH=FAh"EGA"


INT 2F BC06 - MediaVision MVSOUND.SYS - GET STATUS STRING

Category: s - sound/speech

Inp.:

AX = BC06h

Return: AX = 4D56h ('MV')

DX:BX -> status string (first byte 0Ch if no status message to display)

SeeAlso: AX=BC00h/BX=3F3Fh,AX=BC01h"MVSOUND",AX=BC0Bh"MVSOUND"


INT 2F BC0B - MediaVision MVSOUND.SYS - GET EXECUTABLE PATH

Category: s - sound/speech

Inp.:

AX = BC0Bh

Return: BX:DX -> ASCIZ path for MVPROAS.EXE, 0000h:0000h if not available

SeeAlso: AX=BC00h/BX=3F3Fh


INT 2F BE00 - REDVIEW - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = BE00h

Return: AL = FFh if installed

Program: REDVIEW is a public-domain TSR by Alexandr Novy and Petr Horak which

  copies data sent to standard output to standard error when the

  former has been redirected to a file, thus allowing the data to

  be seen on the screen at the same time it is captured in a file


INT 2F BF00 - PC LAN PROGRAM REDIRIFS.EXE internal - INSTALLATION CHECK

Category: N - network

Inp.:

AX = BF00h

Return: AL = FFh if installed


INT 2F BF01 - PC LAN PROGRAM REDIRIFS.EXE internal - ???

undocumented function

Category: N - network

Inp.:

AX = BF01h

???

Return: ???


INT 2F BF80 - PC LAN PROG REDIR.SYS internal - SET REDIRIFS ENTRY POINT

Category: N - network

Inp.:

AX = BF80h

ES:DI -> FAR entry point to IFS handler in REDIRIFS

Return: AL = FFh if installed

    ES:DI -> internal workspace

Note:	all future IFS calls to REDIR.SYS are passed to the ES:DI entry point


INT 2F C0-- - MTEZ XpressFax Hardware TSR (CLASS2) - API

Category: F - FAX

Inp.:

AH = C0h

AL = function code (01h to 15h)

Return: ???

SeeAlso: AX=C000h/BX=444Bh,AX=CB00h/BX=4D53h


INT 2F C000 - Novell ODI Link Support Layer (LSL.COM) - INSTALLATION CHECK

Category: N - network

Inp.:

AX = C000h

Return: AL = FFh if installed

    DX:BX -> FAR entry point (see #1670,#1671,#1672)

    ES:SI -> signature string "LINKSUP$"

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	on return, ES = DX for LSL v1.10 and v2.05; LSL makes use of this in

  its search for a previous installation

SeeAlso: AX=5100h,AX=C000h"NESL"


INT 2F C000 - Novell NetWare Event Service Layer (NESL) 1.0 - INSTALLATION CHECK

Category: N - network

Inp.:

AX = C000h

Return: AL = FFh if installed

    DX:BX -> FAR entry point (see #1697,#1698,#1699,#1700,#1701,#1702)

    ES:SI -> signature string "NESL_EVENTS"

Program: NESL is a generic interface for event handling in ODI drivers and

  other NetWare-oriented modules.  Primarily intended to support

  power management and "hot swapping" of PCMCIA cards, but it is not

  limited to this.

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"Link Support Layer",AX=C000h"NETWARN"


INT 2F C000 - Novell NetWare Connect NETWARN - INSTALLATION CHECK

Category: N - network

Inp.:

AX = C000h

Return: AL = FFh if installed

    SI = segment of resident portion

Program: NETWARN is a utility supplied with NetWare Connect to warn a

  remote dialup user when programs are about to be loaded slowly over

  the modem link.

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	on return, verify that it is NETWARN responding by examining signature

  at in NETWARN's data table in the resident segment (see #1711)

SeeAlso: AX=C000h"ODI",AX=C000h"NESL"


INT 2F C000 - FN32 32 character filename utilities - INSTALLATION CHECK

Category: f - file manipulation

Inp.:

AX = C000h

Return: AL = FFh if installed

   ES:DI -> signature string "FN32 32CHAR TSR"

Program: FN32 is a TSR which supports 32 character filenames under PC/MS-DOS

Note:	the TSR intercepts INT 21 calls and performs filename substitution by

  managing dictionary files in each directory which contains long

  filenames


INT 2F C000 - QMR - INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = C000h

Return: AL = FFh if installed

    ES:DI -> signature string "QMR1!"

Program: QMR (Cove Software, Quick Mouse Reset) monitors the mouse

  service interrupt (int 33h) and substitutes a fast software

  reset (mouse fn 21h) for the slow hardware reset (mouse fn 0).

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C001h"QMR",AX=C002h"QMR",AX=C003h"QMR"


INT 2F C000 - VGAsave v1.93 - INSTALLATION CHECK

Category: V - video

Inp.:

AX = C000h

Return: AL = FFh if installed

    BX = segment of resident code

Program: VGAsave is a freeware VGA-specific, mouse-aware screenblanker by Bill

  Javurek

Range:	AH=C0h to AH=FFh, selected by scanning for a free multiplex number

Note:	the transient portion of VGAsave compares the first 38 bytes of the

  resident code (addressed through BX) against its own copy of the

  resident code to complete the installation check

SeeAlso: INT 14/AX=AA01h,INT 2F/AH=93h

Index:	screen saver;VGAsave


INT 2F C000 - AD-DOS - INSTALLATION CHECK

Category: V - video

Inp.:

AX = C000h

Return: AL = FFh if installed

    BX = 4144h ('AD')

    CX = 2D44h ('-D')

    DX = 4F53h ('OS')

Program: AD-DOS is the DOS version of the After Dark screen blanker for

  MS Windows

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C001h,AX=C003h,AX=C005h,AX=C007h,AX=C009h,AX=C020h,INT 14/AX=AA01h

Index:	screen saver;AD-DOS


INT 2F C000 - WANG_ER.COM - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = C000h

Return: AL = FFh if installed

    ES = segment of resident code

Program: WANG_ER is a TSR from Compaq which permits Compaq systems equipped

  with 3-mode floppy drives to read Wang document diskettes

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	The installation check is completed by comparing the resident code

  with the copy in the transient program


INT 2F C000 - ASPIHOOK.SYS - INSTALLATION CHECK

obsolete (no longer present in current versions)

Category: i - system info/monitoring

Inp.:

AX = C000h

Return: AL = FFh if multiplex number in use

    ES:DI -> ASCIZ signature "ASPIHOOK" if ASPIHOOK.SYS installed

Program: ASPIHOOK is a device driver for monitoring SCSI activity through an

  ASPI host manager; it is part of the Personal Measure system

  activity monitor from Spirit of Performance, Inc.

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"PMEASURE"


INT 2F C000 - PMEASURE.EXE - INSTALLATION CHECK

Category: i - system info/monitoring

Inp.:

AX = C000h

Return: AL = FFh if multiplex number in use

    ES:DI -> ASCIZ signature "PMEASURE.EXE" if PMEASURE.EXE installed

Program: PMEASURE.EXE is a TSR for monitoring system hardware activity which

  is part of the Personal Measure system activity monitor from Spirit

  of Performance, Inc.

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	If a Personal Measure Hook Module, such as ASPIHOOK.SYS, is already

  installed, PMEASURE.EXE uses the next highest free multiplex number.

SeeAlso: AX=C000h"ASPIHOOK",AX=C000h"PERSONAL MEASURE"


INT 2F C000 - PERSONAL MEASURE - HOOK MODULE INSTALLATION CHECK

Category: i - system info/monitoring

Inp.:

AX = C000h

Return: AL = FFh if installed

ES:DI -> signature string "PMEASUREHOOK"

AX = C000 if not installed, per mux id conventions

DH = major release number (binary)

DL = minor release number (binary)

Program: The Personal Measure system activity monitor from Spirit of

  Performance, Inc. uses an extensible series of modules to hook

  into various operating system interfaces and monitor system calls.

  Current hook modules are ASPIHOOK.SYS for ASPI device activity

  and CDRHOOK.SYS for non-ASPI CD-ROM activity.	 All hook modules

  share the same mux id.

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"PMEASURE.EXE",AX=C001h"PERSONAL MEASURE"


INT 2F C000 - PrintCache v3.1 PCACHE.EXE - INSTALLATION CHECK

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C000h

Return: AL = FFh if installed

    SI = signature value 20D6h

    DI = signature value 8761h

    ES:BX -> configuration table (see #1713)

    CX = ??? (0300h)

    DX = ??? (0020h)

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=0100h/SI=20D6h,AX=C001h"PCACHE"


INT 2F C000 - Frank Kintrup TSR Utilities - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = C000h

Return: AL = FFh if installed

    BX = program ID (see #1715)

    CX = 464Bh (signature "FK")

    DX = revision number (DH = major, DL = minor)

    ES = resident segment of TSR

Range:	AH=C0h to AH=FFh, selected by searching for a free multiplex number

SeeAlso: AX=C001h"Kintrup",AX=C002h"Kintrup"


INT 2F C000 - HP 100LX/200LX - PUSHKEYS - INSTALLATION CHECK

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = C000h

Return: AL = FFh if possibly installed

Range:	AH=C0h to AH=FFh, selected by scanning for signature with AL=AEh

SeeAlso: AX=C001h"HP 100LX",AX=C0AEh"HP 100LX",AX=C0AFh"HP 100LX"


INT 2F C000 - DIMWIT - INSTALLATION CHECK

Category: V - video

Inp.:

AX = C000h

Return: AL = FFh if installed

    ES:DI -> signature string "DIMDOS" or "DIMWIN"

Program: DIMWIT is a freeware Windows-aware screen blanker by Larry Board

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"AD-DOS",AX=C001h"DIMWIT"

Index:	screen saver;DIMWIT


INT 2F C000 - MTEZ XpressFax Hardware TSR (CLASS2) - INSTALLATION CHECK

Category: F - FAX

Inp.:

AX = C000h

BX = 444Bh ('DK')

CX = 4A4Eh ('AN')

Return: AL = status

    00h not installed, OK to install

    FFh installed

BX = 646Bh ('dk')

CX = 6A6Eh ('an')

Range:	AH=C0h to AH=FFh, selected automatically

SeeAlso: AH=C0h"MTEZ"


INT 2F C000 - TSENGP.COM - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = C000h

Return: AL = status

    00h not installed, OK to install

    FFh installed

DS = segment of resident code

Program: TSENGP.COM is a TSR supplied by Compaq to fix an incompatibility

  between some applications and Tseng ET4000-based video adapters

Range:	AH=C0h to AH=FFh, selected automatically

Note:	the installation check is completed by comparing the first eleven

  bytes at DS:005Fh against the TSR's code (80h FCh 06h 74h 0Ah

  80h FCh 07h 74h 05h EAh)


INT 2F C000 - LapLink RemoteAccess (LLRA) - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = C000h

Return: AL = FFh if one of the components is installed

CX:BX -> signature within LLRA component:

    "TSI_LapLinkCore" for LLRA1.EXE

    "TSI_Blackbird"   for LLRA2.EXE

    "TSI_Redirector"  for LLRA3.EXE

    "TSI_Compression" for LLRA4.EXE

DL = major version number

DH = minor version number

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	LapLink components are installed in the order listed above, but not

  necessarily all four; each gets its own multiplex number (default

  C0h-C3h)

SeeAlso: AX=C002h"LapLink",AX=C205h"LapLink",AX=C2F0h"LapLink"

SeeAlso: AX=C2F1h"LapLink",AX=C301h"LapLink",AX=C3F0h"LapLink"

SeeAlso: AX=C3F1h"LapLink"


INT 2F C001 - QMR - REQUEST HARDWARE RESET

Category: M - mouse/pointing device

Inp.:

AX = C001h

Return: ES = QMR code segment

AL destroyed

Desc:	this function is used to force a full mouse reset when QMR is installed

SeeAlso: AX=C000h"QMR",AX=C002h"QMR"


INT 2F C001 - DIMWIT - GET CONFIGURATION DATA

Category: V - video

Inp.:

AX = C001h

Return: ES:DI -> TSR configuration data (see #1716)

Program: DIMWIT is a freeware Windows-aware screen blanker by Larry Board

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"DIMWIT",AX=C001h"AD-DOS"

Index:	screen saver;DIMWIT


INT 2F C001 - AD-DOS - GET RESIDENT CODE SEGMENT

Category: V - video

Inp.:

AX = C001h

ES = 0000h

Return: AL = 00h if successful

    ES = AD-DOS TSR Code Segment

SeeAlso: AX=C000h"AD-DOS",AX=C001h"DIMWIT"

Index:	screen saver;AD-DOS


INT 2F C001 - PrintCache v3.1 PCACHE.EXE - GET ENTRY POINTS

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C001h

Return: AL = FFh if installed

    ES:BX -> ???

    ES:DX -> ???

    ES:SI -> ???

    ES:DI -> ??? (equivalent to AX=C002h)

SeeAlso: AX=C000h"PCACHE",AX=C002h"PCACHE"


INT 2F C001 - Frank Kintrup TSR Utilities - CLOCK - DISABLE DISPLAY UPDATE

Category: U - resident utilities

Inp.:

AX = C001h

Range:	AH=C0h to AH=FFh, selected by searching for a free multiplex number

SeeAlso: AX=C000h"Kintrup",AX=C002h"Kintrup"


INT 2F C001 - HP 100LX/200LX - PUSHKEYS - INTERNAL - UNINSTALL

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = C001h

CX = 03FBh return address to continue uninstall if possible

Return: program uninstalled

Range:	AH=C0h to AH=FFh, selected by scanning for signature with AL=AEh

SeeAlso: AX=C000h"HP 100LX",AX=C0AEh"HP 100LX",AX=C0AFh"HP 100LX"


INT 2F C001 - PERSONAL MEASURE - PASS PARAMETERS TO HOOK MODULE(S)

Category: i - system info/monitoring

Inp.:

AX = C001h

DX = segment of PMEASURE.EXE or 0000h

BX = offset in PMEASURE.EXE or 0000h

CX = offset in PMEASURE.EXE or 0000h

Return: None

Program: PMEASURE.EXE is a TSR for monitoring system hardware activity which

  is part of the Personal Measure system activity monitor from Spirit

  of Performance, Inc.	PMEASURE uses this call to inform its hook

  modules whether or not it is running and to pass information about

  shared data and procedures.

Warning: This information documents a function that is private to Personal

  Measure and is provided as information only.	It should NOT be called

  by any software other than Personal Measure.

SeeAlso: AX=C000h"PERSONAL MEASURE HOOK MODULE"


INT 2F C002 - AD-DOS - CHECK FOR NEW INPUT

Category: V - video

Inp.:

AX = C002h

Return: AL = 00h if successful

    BX = status

0000h no input since last check

0001h new input available

Note:	this call also resets the new-input flag

SeeAlso: AX=C000h"AD-DOS",AX=C004h

Index:	screen saver;AD-DOS


INT 2F C002 - QMR - DISABLE QMR

Category: M - mouse/pointing device

Inp.:

AX = C002h

Return: ES = QMR code segment

AL destroyed

Desc:	this call temporarily disables QMR

SeeAlso: AX=C000h"QMR",AX=C003h"QMR"


INT 2F C002 - PrintCache v3.1 PCACHE.EXE - GET BUFFER SIZE

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C002h

Return: AX = ??? in K

BX = size of print buffer in K

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

SeeAlso: AX=C000h"PCACHE"


INT 2F C002 - Frank Kintrup TSR Utilities - CLOCK - ENABLE DISPLAY UPDATE

Category: U - resident utilities

Inp.:

AX = C002h

Range:	AH=C0h to AH=FFh, selected by searching for a free multiplex number

SeeAlso: AX=C000h"Kintrup",AX=C002h"Kintrup"


INT 2F C002 - LapLink RemoteAccess (LLRA) - Core - ???

undocumented function

Category: N - network

Inp.:

AX = C002h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C2F0h"LapLink"

SeeAlso: AX=C2F1h"LapLink",AX=C301h"LapLink"


INT 2F C003 - AD-DOS - SET MINUTES TO WAIT

Category: V - video

Inp.:

AX = C003h

BX = minutes to wait before blanking screen

Return: AL = 00h if successful

Program: AD-DOS is the DOS version of the After Dark screen blanker for

  MS Windows

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	this call also resets the delay timer

SeeAlso: AX=C000h"AD-DOS",AX=C004h

Index:	screen saver;AD-DOS


INT 2F C003 - QMR - ENABLE QMR

Category: M - mouse/pointing device

Inp.:

AX = C003h

Return: ES = QMR code segment

AL destroyed

Desc:	this call enables QMR after it has been disabled

SeeAlso: AX=C000h"QMR",AX=C002h"QMR"


INT 2F C003 - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C003h

Return: BX destroyed

SeeAlso: AX=C004h"PCACHE"


INT 2F C004 - AD-DOS - GET MINUTES TO WAIT

Category: V - video

Inp.:

AX = C004h

Return: AL = 00h if successful

    BX = minutes to wait before blanking screen

SeeAlso: AX=C000h"AD-DOS",AX=C003h"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C004 - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C004h

Return: BX destroyed

SeeAlso: AX=C003h"PCACHE"


INT 2F C005 - AD-DOS - SET BLANKER STATUS

Category: V - video

Inp.:

AX = C005h

BX = new state (0000h inactive, 0001h active) (default 0001h)

Return: AL = 00h if successful

SeeAlso: AX=C006h"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C005 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C005h

???

Return: BX destroyed

???

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=C000h"PCACHE"


INT 2F C006 - AD-DOS - GET BLANKER STATUS

Category: V - video

Inp.:

AX = C006h

Return: AL = 00h if successful

    BX = current state of screen blanker (0000h inactive, 0001h active)

Program: AD-DOS is the DOS version of the After Dark screen blanker for

  MS Windows

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"AD-DOS",AX=C005h"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C006 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C006h

???

Return: BX destroyed

???

Note:	this function appears to be identical to AX=C007h

SeeAlso: AX=C000h"PCACHE",AX=C007h"PCACHE"


INT 2F C007 - AD-DOS - SET HOT KEY

Category: V - video

Inp.:

AX = C007h

BX = hot key

CL = hot key shift status

Return: AL = 00h if successful

SeeAlso: AX=C008h"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C007 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C007h

???

Return: BX destroyed

???

Note:	this function appears to be identical to AX=C006h

SeeAlso: AX=C000h"PCACHE",AX=C006h"PCACHE"


INT 2F C008 - AD-DOS - GET CURRENT HOT KEY

Category: V - video

Inp.:

AX = C008h

Return: AX = status

    0000h successful

BX = Hot Key

CL = Hot Key Shift Status

    0008h otherwise

SeeAlso: AX=C000h"AD-DOS",AX=C007h"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C008 - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C008h

Return: BX destroyed

SeeAlso: AX=C000h"PCACHE",AX=C009h"PCACHE"


INT 2F C009 - AD-DOS - UNBLANK MONITOR

Category: V - video

Inp.:

AX = C009h

Return: AL = 00h if successful

Program: AD-DOS is the DOS version of the After Dark screen blanker for

  MS Windows

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	this function works by simulating keyboard activity

Index:	screen saver;AD-DOS


INT 2F C009 - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C009h

Return: BX destroyed

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=C000h"PCACHE",AX=C008h"PCACHE"


INT 2F C00A - AD-DOS - ???

Category: V - video

Inp.:

AX = C00Ah

Return: AX = status

    0000h successful

BH = ??

BL = ??

    000Ah failed

Index:	screen saver;AD-DOS


INT 2F C00A - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C00Ah

???

Return: AH = bit flags

    bit 5: ???

AL = bit flags

    bit 4: ???

    bit 3: ???

BX destroyed

???

SeeAlso: AX=C000h"PCACHE"


INT 2F C00B - AD-DOS - ???

Category: V - video

Inp.:

AX = C00Bh

Return: AX = status

    0000h successful

    000Bh failed

Index:	screen saver;AD-DOS


INT 2F C00B - PrintCache v3.1 PCACHE.EXE - NOP

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C00Bh

Return: BX destroyed

SeeAlso: AX=C000h"PCACHE"


INT 2F C00C - AD-DOS - SET ??? INTERNAL FLAG TO 01h

Category: V - video

Inp.:

AX = C00Ch

Return: AX = status

    0000h successful

    000Ch failed

Program: AD-DOS is the DOS version of the After Dark screen blanker for

  MS Windows

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Index:	screen saver;AD-DOS


INT 2F C00C - PrintCache v3.1 PCACHE.EXE - GET ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C00Ch

Return: AX = ??? (0000h)

BX = ??? (0000h)

CX = ??? (0100h)

DL = ???

DH = ???

SeeAlso: AX=C000h"PCACHE"


INT 2F C00D - PrintCache v3.1 PCACHE.EXE - SET ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C00Dh

DL = ???

Return: BX destroyed

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=C000h"PCACHE"


INT 2F C00E - AD-DOS - SET PASSWORD STATUS

Category: V - video

Inp.:

AX = C00Eh

BX = new state (0000h disabled, 0001h enabled)

Return: ???

SeeAlso: AX=C000h"AD-DOS",AX=C00Fh"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C00E - PrintCache v3.1 PCACHE.EXE - INSTALL ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C00Eh

ES:DX -> ???

Return: BX destroyed

Note:	ES:DX is stored internally if the variable is currently 0000h:0000h,

  but ignored if already set; a counter is incremented

SeeAlso: AX=C000h"PCACHE",AX=C00Fh"PCACHE"


INT 2F C00F - AD-DOS - GET PASSWORD STATUS

Category: V - video

Inp.:

AX = C00Fh

Return: BX = current state (0000h disabled, 0001h enabled)

SeeAlso: AX=C00Eh"AD-DOS"

Index:	screen saver;AD-DOS


INT 2F C00F - PrintCache v3.1 PCACHE.EXE - REMOVE ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C00Fh

Return: BX destroyed

Note:	this function decrements the counter used by AX=C00Eh, and clears the

  internal pointer variable to 0000h:0000h when it reaches zero

SeeAlso: AX=C000h"PCACHE",AX=C00Eh"PCACHE"


INT 2F C010 - PrintCache v3.1 PCACHE.EXE - GET ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C010h

CX = index of ??? table (00h-02h, others treated as 00h)

SI = offset into data table

Return:	AL = byte at specified offset into table

BX destroyed

SeeAlso: AX=C000h"PCACHE"


INT 2F C011 - PrintCache v3.1 PCACHE.EXE - GET ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C011h

Return: AX = ??? (0007h)

BX = ??? (0001h)

CH = ???

CL = ???

SeeAlso: AX=C000h"PCACHE"


INT 2F C012 - PrintCache v3.1 PCACHE.EXE - GET ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C012h

Return: AX = ???

BX = ???

CX = ???

DX = ???

SeeAlso: AX=C000h"PCACHE"


INT 2F C013 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C013h

???

Return: BX destroyed

???

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=C000h"PCACHE"


INT 2F C014 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C014h

???

Return: BX destroyed

???

SeeAlso: AX=C000h"PCACHE"


INT 2F C015 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C015h

???

Return: BX destroyed

???

SeeAlso: AX=C000h"PCACHE"


INT 2F C016 - PrintCache v3.1 PCACHE.EXE - INCREMENT ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C016h

Return: BX destroyed

SeeAlso: AX=C000h"PCACHE",AX=C017h"PCACHE"


INT 2F C017 - PrintCache v3.1 PCACHE.EXE - DECREMENT ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C017h

Return: BX destroyed

SeeAlso: AX=C000h"PCACHE",AX=C016h"PCACH"


INT 2F C018 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C018h

???

Return: BX destroyed

???

Note:	the first instruction of this function is an indirect jump which points

  at a RET by default

SeeAlso: AX=C000h"PCACHE",AX=C019h"PCACHE"


INT 2F C019 - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C019h

???

Return: BX destroyed

???

Note:	the first instruction of this function is an indirect jump which points

  at a RET by default

SeeAlso: AX=C000h"PCACHE",AX=C018h"PCACHE"


INT 2F C01A - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C01Ah

Return: BX destroyed

SeeAlso: AX=C000h"PCACHE",AX=C01Bh"PCACHE"


INT 2F C01B - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C01Bh

Return: BX destroyed

SeeAlso: AX=C000h"PCACHE",AX=C01Ah"PCACHE"


INT 2F C01C - PrintCache v3.1 PCACHE.EXE - ???

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C01Ch

???

Return: AX = ???

BX destroyed

SeeAlso: AX=C000h"PCACHE"


INT 2F C01D - PrintCache v3.1 PCACHE.EXE - NOP

undocumented function

Category: c - caches/spoolers

Inp.:

AX = C01Dh to C01Fh

Return: BX destroyed

Program: PCACHE is the resident print spooler portion of PrintCache by

  LaserTools; it may use either memory or disk space to spool output

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=C000h"PCACHE"


INT 2F C020 - AD-DOS - GET AND RESET VxD API STATUS

Category: V - video

Inp.:

AX = C020h

Return: AL = 00h if successful

    BX = VxD API Status

0000h no error

0001h error

0100h neither Windows 3.X enhanced mode nor Windows/386 2.x

  is running

0200h VM API entry point not found (VxD not installed)

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

Note:	this call resets the VxD API Status to zero

SeeAlso: AX=1602h,AX=1607h

Index:	screen saver;AD-DOS


INT 2F C04E - Explosiv v2.00+ - NON-TSR EXECUTING CHECK

Category: V - video

Inp.:

AX = C04Eh

Return: AL = 4Fh if Explosiv is running but not memory-resident

Program: Explosiv is a shareware animated screen blanker for DOS and Windows 3

  by H&G Software (Reidar Gresseth and Chris Hook)

Range:	AH=C0h to AH=C9h, selected by configuration

SeeAlso: AX=C050h

Index:	screen saver;Explosiv


INT 2F C050 - Explosiv v2.00+ - INSTALLATION CHECK

Category: V - video

Inp.:

AX = C050h

Return: AL = 51h if installed

---v3.0+ ---

    BX = interval in clock ticks

    CH = animation display color (00h mono, 01h tinge, 02h color)

    CL = animation delay factor

    DH = animation parameters

    DL = INT 10 checking (00h on, 01h off)

    SI = number of bytes available for animation code

    DI = display type (00h VGA, 01h EGA, 02h CGA, 03h HGC, 04h MDA)

Program: Explosiv is a shareware animated screen blanker for DOS and Windows 3

  by H&G Software (Reidar Gresseth and Chris Hook)

Range:	AH=C0h to AH=C9h, selected by configuration

SeeAlso: AH=93h,AX=C000h"AD-DOS",AX=C04Eh,AX=C052h,AX=C054h"v3"

SeeAlso: INT 14/AX=AA01h

Index:	screen saver;Explosiv


INT 2F C052 - Explosiv v2.00+ - UNINSTALL

Category: V - video

Inp.:

AX = C052h

DX:BX = address to return to on successful uninstall

Return: at specified address if successful

AL = 53h on error

Note:	specified return address must have the segment of the caller's PSP

SeeAlso: AX=C050h

Index:	screen saver;Explosiv


INT 2F C054 - Explosiv v2.x - GET ANIMATION DELAY FACTOR

Category: V - video

Inp.:

AX = C054h

Return: AL = delay factor

SeeAlso: AX=C057h

Index:	screen saver;Explosiv


INT 2F C054 - Explosiv v3.0+ - UPDATE PARAMETERS

Category: V - video

Inp.:

AX = C054h

BX = new interval in clock ticks

CH = animation display color (00h mono, 01h tinge, 02h color)

CL = animation delay factor

DH = animation parameters

DL = INT 10 checking (00h on, 01h off)

SeeAlso: AX=C050h

Index:	screen saver;Explosiv


INT 2F C055 - Explosiv v2.x - SET BLANKING INTERVAL

Category: V - video

Inp.:

AX = C055h

BX = new interval in clock ticks

Index:	screen saver;Explosiv


INT 2F C056 - Explosiv v2.x - SET ANIMATION DISPLAY TYPE

Category: V - video

Inp.:

AX = C056h

BL = animated display type (00h mono, 01h color)

SeeAlso: AX=C058h"v2.x"

Index:	screen saver;Explosiv


INT 2F C056 - Explosiv v3.0+ - ENABLE/DISABLE EXPLOSIV

Category: V - video

Inp.:

AX = C056h

BX = new state

    0000h disabled

    0100h enabled

    0101h enabled, but never blank

    0102h enabled, always blank


INT 2F C057 - Explosiv v2.x - SET ANIMATION DELAY FACTOR

Category: V - video

Inp.:

AX = C057h

BL = delay factor

SeeAlso: AX=C054h"v2.x"

Index:	screen saver;Explosiv


INT 2F C058 - Explosiv v2.x - SET ANIMATION PARAMETER

Category: V - video

Inp.:

AX = C058h

BL = animation parameter

Note:	the animation parameter has different interpretations for each display

SeeAlso: AX=C056h"v2.x"

Index:	screen saver;Explosiv


INT 2F C058 - Explosiv v3.0+ - LOAD NEW ANIMATION DISPLAY CODE

Category: V - video

Inp.:

AX = C058h

BX = file handle for file containing display code

CX = number of bytes to load

DX = offset at which animation code should be loaded

Return: AL = status (see #1717)

Note:	if AL=00h-03h on return, the file will be closed

Index:	screen saver;Explosiv


INT 2F C059 - Explosiv v2.x - DISABLE EXPLOSIV

Category: V - video

Inp.:

AX = C059h

Note:	clears flag set by AX=C05Ah

SeeAlso: AX=C05Ah

Index:	screen saver;Explosiv


INT 2F C05A - Explosiv v2.x - ENABLE EXPLOSIV

partially documented function

Category: V - video

Inp.:

AX = C05Ah

BL = ???

Note:	sets flag cleared by AX=C059h then stores BL

SeeAlso: AX=C059h,AX=C05Bh

Index:	screen saver;Explosiv


INT 2F C05B - Explosiv v2.x - CHANGE ANIMATION DISPLAY

Category: V - video

Inp.:

AX = C05Bh

BL = animation display

Note:	this function fails silently if the requested display is not in memory

SeeAlso: AX=C05Ah,AX=C05Ch

Index:	screen saver;Explosiv


INT 2F C05C - Explosiv v2.x - SET INT 10 CHECKING

Category: V - video

Inp.:

AX = C05Ch

BL = new state of INT 10 checking (00h enabled, 01h disabled)

SeeAlso: AX=C05Bh

Index:	screen saver;Explosiv


INT 2F C0AE - HP 100LX/200LX - PUSHKEYS - INSTALLATION CHECK

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = C0AEh

Return: AX = 4453h if installed

CX = 5259h if installed

Range:	AH=C0h to AH=FFh, selected by scanning for signature

SeeAlso: AX=C000h"HP 100LX",AX=C001h"HP 100LX",AX=C0AFh"HP 100LX"


INT 2F C0AF - HP 100LX/200LX - PUSHKEYS - INTERNAL - GET BUFFER ADDRESS

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = C0AFh

Return: ES:DI -> buffer (behind code)

Range:	AH=C0h to AH=FFh, selected by scanning for signature with AL=AEh

SeeAlso: AX=C000h"HP 100LX",AX=C001h"HP 100LX",AX=C0AEh"HP 100LX"


INT 2F C100 - Personal NetWare - STPIPX v1.00 - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = C100h

Return: AL = FFh if installed

    ES:SI -> signature string "STP-IPX$"

    BX = version??? (0001h for v1.00)

    DI corrupted

Note:	AH=C1h is the default value; STPIPX probably scans a range of

  multiplex numbers to find a free one, as LSL does

SeeAlso: AX=C000h"LSL",AX=C101h


INT 2F C101 - Personal NetWare - STPIPX v1.00 - UNINSTALL

undocumented function

Category: N - network

Inp.:

AX = C101h

Return: AL = status???

BX corrupted

SeeAlso: AX=C101h


INT 2F C205 - LapLink RemoteAccess (LLRA) - Redirector - ???

undocumented function

Category: N - network

Inp.:

AX = C205h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C2F0h"LapLink"

SeeAlso: AX=C2F1h"LapLink",AX=C301h"LapLink"


INT 2F C2F0 - LapLink RemoteAccess (LLRA) - Redirector - ???

undocumented function

Category: N - network

Inp.:

AX = C2F0h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C205h"LapLink"

SeeAlso: AX=C2F1h"LapLink",AX=C301h"LapLink"


INT 2F C2F1 - LapLink RemoteAccess (LLRA) - Redirector - ???

undocumented function

Category: N - network

Inp.:

AX = C2F1h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C205h"LapLink"

SeeAlso: AX=C2F0h"LapLink",AX=C301h"LapLink"


INT 2F C300 - SETWPR.COM - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = C300h

Return: AL = FFh if installed

Program: SETWPR is a hard-disk write-protection TSR by Jaroslaw Rafa

SeeAlso: AX=C302h"SETWPR"


INT 2F C300 - SpaceManager - INSTALLATION CHECK

undocumented function

Category: k - file/disk compression

Inp.:

AX = C300h

DX = 0000h

Return: AL = FFh if any SpaceManager programs installed

    BX = 6F73h

    CX = 6F68h

Program: SpaceManager is an enhancement for MS-DOS DoubleSpace by Vertisoft

  Systems, Inc.

Range:	AH=C3h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C300h/DX=0666h


INT 2F C300 - SpaceManager - INSTALLATION VERIFICATION

undocumented function

Category: k - file/disk compression

Inp.:

AX = C300h

DX = program identifier (see #1718) or 0666h for any SpaceManager prog

BX = 4F53h ('OS')

CX = 4F48h ('OH')

Return: AL = FFh if BX/CX as specified and specified program installed

    BX = 6F73h ('os')

    CX = 6F68h ('oh')

Range:	AH=C3h to AH=FFh, selected by scanning for first free multiplex number

Note:	this call is chained if BX,CX, or DX are not as specified above

SeeAlso: AX=C300h/DX=0000h


INT 2F C301 - SpaceManager - ???

undocumented function

Category: k - file/disk compression

Inp.:

AX = C301h

DX = program identifier (9000h,9001h,9003h) (see #1718)

???

Return: ???


INT 2F C301 - LapLink RemoteAccess (LLRA) - Compression - ???

undocumented function

Category: N - network

Inp.:

AX = C301h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C205h"LapLink"

SeeAlso: AX=C2F0h"LapLink",AX=C3F0h"LapLink",AX=C3F1h"LapLink"


INT 2F C302 - SpaceManager - ENABLE PROGRAM

undocumented function

Category: k - file/disk compression

Inp.:

AX = C302h

DX = program identifier (9000h,9001h,9003h) (see #1718)

Return: AX destroyed

SeeAlso: AX=C303h,AX=C306h


INT 2F C302 - SETWPR.COM - SET WRITE-PROTECTION STATE

Category: d - disk I/O enhancements

Inp.:

AX = C302h

BL = new state

    00h disk may be written

    01h disk write-protected

Return: AL = FFh if installed

Program: SETWPR is a hard-disk write-protection TSR by Jaroslaw Rafa

SeeAlso: AX=C300h"SETWPR"


INT 2F C303 - SpaceManager - DISABLE PROGRAM

undocumented function

Category: k - file/disk compression

Inp.:

AX = C303h

DX = program identifier (9000h,9001h,9003h) (see #1718)

Return: AX destroyed

SeeAlso: AX=C302h,AX=C306h


INT 2F C304 - SpaceManager - GET PER-DRIVE ENABLEMENT TABLE

undocumented function

Category: k - file/disk compression

Inp.:

AX = C304h

DX = program identifier (9000h,9001h,9003h) (see #1718)

Return: ES:BX -> 26-byte drive table (00h disabled for drive, 01h enabled)

AX destroyed


INT 2F C305 - SpaceManager - FORTUNE.EXE - NOP

undocumented function

Category: k - file/disk compression

Inp.:

AX = C305h

DX = 9003h

Return: AX destroyed


INT 2F C305 - SpaceManager - ???

undocumented function

Category: k - file/disk compression

Inp.:

AX = C305h

DX = program identifier (9000h,9001h) (see #1718)

???

Return: ???


INT 2F C306 - SpaceManager - CHECK WHETHER PROGRAM ENABLED

undocumented function

Category: k - file/disk compression

Inp.:

AX = C306h

DX = program identifier (9000h,9001h,9003h) (see #1718)

Return: AL = current state (00h disabled, FAh enabled)

AH destroyed

SeeAlso: AX=C302h,AX=C303h


INT 2F C307 - SpaceManager - SELECTC - ???

undocumented function

Category: k - file/disk compression

Inp.:

AX = C307h

DX = 9001h

BX = ???

CX = ???

???

Return: ???


INT 2F C308 - SpaceManager - SELECTC - ???

undocumented function

Category: k - file/disk compression

Inp.:

AX = C308h

DX = 9001h

???

Return: ???


INT 2F C3F0 - LapLink RemoteAccess (LLRA) - Compression - ???

undocumented function

Category: N - network

Inp.:

AX = C3F0h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C205h"LapLink"

SeeAlso: AX=C2F0h"LapLink",AX=C301h"LapLink",AX=C3F1h"LapLink"


INT 2F C3F1 - LapLink RemoteAccess (LLRA) - Compression - ???

undocumented function

Category: N - network

Inp.:

AX = C3F1h

details not yet available

Range:	AH=C0h to AH=FFh, selected by scanning for first free multiplex number

SeeAlso: AX=C000h"LapLink",AX=C002h"LapLink",AX=C205h"LapLink"

SeeAlso: AX=C2F0h"LapLink",AX=C301h"LapLink",AX=C3F0h"LapLink"


INT 2F C64C - Smart Prompt - INSTALLATION CHECK

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = C64Ch

BX = 5553h

Return: AX = 4CC6h if installed

BX = 5355h if installed

Program: Smart Prompt (SMARTPMT) is a freeware TSR by Steve Gibson which forces

  an immediate flush of SmartDrive's (and compatible caches') buffers

  on returning to the DOS prompt


INT 2F C700 - COLAP - INSTALLATION CHECK

partially documented function

Category: V - video

Inp.:

AX = C700h

CX = 434Ch  "CL"

Return: AL = FFh if installed

Program: colap.com is a freeware TSR by Eric Meyer which controls contrast

  and brightness of color laptops by changing the VGA palette colors;

  for Toshiba laptops there are more hotkeys for shutting off display

  and harddisk.


INT 2F C900 - ThunderByte??? - INSTALLATION CHECK

undocumented function

Category: v - virus/antivirus

Inp.:

AX = C900h

BP = 0000h

Return: AL = FFh if installed

    BP >= 0014h

Note:	called by TBSCANX

SeeAlso: AX=C987h,AX=CA00h


INT 2F C987 - ThunderByte??? - DISINFECT FILE???

undocumented function

Category: v - virus/antivirus

Inp.:

AX = C987h

BX:DX -> filename

BX:CX -> virus name

Return: AX = status

    0000h successful???

Note:	called by TBSCANX

SeeAlso: AX=CA00h


INT 2F C9FF - StackMan - INSTALLATION BROADCAST

callout or callback (usually hooked rather than called)

Category: r - runtime support

Inp.:

AX = C9FFh

BL = BCD version number

CX = number of stacks

DX = stack size in bytes

Program: StackMan is a freeware stack manager by Franz Veldman of ESaSS B.V.

  which functions as a replacement for the DOS STACK= command as well

  as permitting multiple TSRs to share a pool of stack space

Notes:	called by StackMan when it goes resident to inform interested TSRs that

  its API is available

the installation check consists of testing for the string "STACKXXX" at

  offset 0Ah from the INT B4 handler

SeeAlso: INT B4"StackMan",INT B5"StackMan"

Index:	installation check;STACKMAN|broadcasts;STACKMAN installation


INT 2F CA-- - FAXPLUS - FAX TSR

Category: F - FAX

Inp.:

AH = CAh

???

Return: ???

Program: FAXTSR is a resident FAX send/receive module for FAXPLUS by Frans

  Veldman

SeeAlso: AH=2Ah"Gammafax"


INT 2F CA00 - TBSCANX - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

AX = CA00h

BX = 5442h ('TB')

Return: AL = state

    00h not installed

    FFh installed

BX = 7462h ('tb') if BX was 5442h on entry

Program: TBSCANX is a resident virus scanning module by Frans Veldman.

Note:	programs may perform virus checks on themselves, other program files,

  or their data files by invoking the TBSCANX API.

SeeAlso: AX=4653h,AX=C900h


INT 2F CA01 - TBSCANX - GET STATUS

Category: v - virus/antivirus

Inp.:

AX = CA01h

Return: AH = BCD version number (v2.2+)

    CAh for versions before 2.2

AL = state (00h = disabled, 01h = enabled)

CX = number of signatures which will be searched

---v2.0---

BX = EMS handle, 0000h if not using EMS

---v2.3+---

BX = segment of swap area, 0000h if not swapped

DX = EMS or XMS handle (XMS handle if BX=0000h), FFFFh if not using EMS

SeeAlso: AX=CA02h


INT 2F CA02 - TBSCANX - SET STATE

Category: v - virus/antivirus

Inp.:

AX = CA02h

BL = new state (00h = disabled, 01h = enabled)

SeeAlso: AX=CA01h


INT 2F CA03 - TBSCANX - SCAN BUFFER

Category: v - virus/antivirus

Inp.:

AX = CA03h

CX = size of buffer

DS:DX -> buffer containing data to scan

Return: CF clear if no virus signatures found

    BX,ES destroyed

CF set if signature found

    ES:BX -> ASCIZ virus name (v2.3+)

    DS:DX -> ASCIZ virus name (v2.0)

AX,CX,DX destroyed (v2.3+)

all other registers except CS:IP and SS:SP destroyed (v2.0)

SeeAlso: AX=CA04h


INT 2F CA04 - TBSCANX - SCAN FILE

Category: v - virus/antivirus

Inp.:

AX = CA04h

DS:DX -> filename

Return: CF clear if no virus signatures found

    BX,ES destroyed

CF set if signature found

    ES:BX -> ASCIZ virus name

AX,CX,DX destroyed

Note:	this function requires at least 4K free memory

SeeAlso: AX=CA03h


INT 2F CAFE - THELP v3.0 - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = CAFEh

BX = 0000h

Return: BX = segment of resident code if installed

    0000h if not installed

SeeAlso: AX=5453h,INT 2D"AMIS"


INT 2F CB00 - Communicating Applications Specification - INSTALLATION CHECK

Category: F - FAX

Inp.:

AX = CB00h

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

Note:	AH = CBh is the default identifier, but may be reconfigured

SeeAlso: AH=2Ah,AX=8000h"FaxBIOS",AX=CB0Eh,AX=CBDCh


INT 2F CB00 - MTEZ XpressFax CASMGR - INSTALLATION CHECK

Category: F - FAX

Inp.:

AX = CB00h

BX = 4D53h ('MS')

CX = 4949h ('II')

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

BX = 6D73h ('ms')

CX = 6969h ('ii')

Note:	this function is equivalent to the standard CASMGR installation check,

  but uses the additional magic values to identify which CAS is

  installed

SeeAlso: AH=2Ah,AX=8000h"FaxBIOS",AX=C000h/BX=444Bh,AX=CB0Eh,AX=CB16h


INT 2F CB01 - Communicating Applications Specification - SUBMIT A TASK

Category: F - FAX

Inp.:

AX = CB01h

DS:DX -> ASCIZ name of task control file

Return: AX >= 0: event handle

AX < 0: two's complement of error code (see #1719)

Note:	files needed for an event must be kept until task is complete or error

SeeAlso: AX=CB0Bh,AX=CB15h


INT 2F CB02 - Communicating Applications Specification - ABORT CURRENT EVENT

Category: F - FAX

Inp.:

AX = CB02h

Return: AX >= 0: event handle of aborted event

AX < 0: error code (see #1719)

Note:	termination could take up to 30 seconds

SeeAlso: AX=CB08h,AX=CB10h


INT 2F CB05 - Communicating Applications Specification - FIND FIRST QUEUE ENTRY

Category: F - FAX

Inp.:

AX = CB05h

CX = status of events to find

    0000h successful completion

    0001h waiting to be processed

    0002h number has been dialed

    0003h connection established, sending

    0004h connection established, receiving

    0005h event aborted

    FFFFh find any event, regardless of status

    other negative values, match error code

DH = direction

    00h chronological order, earliest to latest

    01h reverse chronological order, latest to earliest

DL = queue to search

    00h task queue

    01h receive queue

    02h log queue

Return: AX = 0000h successful

    BX = event handle for found event

AX < 0	   error code (see #1719)

SeeAlso: AX=CB06h,AX=CB07h


INT 2F CB06 - Communicating Applications Specification - FIND NEXT QUEUE ENTRY

Category: F - FAX

Inp.:

AX = CB06h

DL = queue to search

    00h task queue

    01h receive queue

    02h log queue

Return: AX = 0000h successful

    BX = event handle for found event

AX < 0	   error code (see #1719)

Note:	direction of search is same as preceding FIND FIRST call

SeeAlso: AX=CB05h


INT 2F CB07 - Communicating Applications Specification - OPEN FILE

Category: F - FAX

Inp.:

AX = CB07h

BX = event handle from find (AL=05h,06h) or submit task (AL=01h)

CX = receive file number (ignored for task queue and log queue)

    0000h  open receive control file

    N	   open Nth received data file

DL = queue

    00h task queue

    01h receive queue control file or received file, as given by CX

    02h log queue

    03h group file in task queue (v1.2+)

    04h group file in log queue (v1.2+)

Return: AX = 0000h successful

    BX = DOS file handle for requested file

AX < 0	   error code (see #1719)

Note:	the returned file handle has been opened in read-only mode and should

  be closed with INT 21/AH=3Eh after use

SeeAlso: AX=CB01h,AX=CB05h,AX=CB14h


INT 2F CB08 - Communicating Applications Specification - DELETE FILE

Category: F - FAX

Inp.:

AX = CB08h

BX = event handle

CX = receive file number

    0000h delete ALL received files and receive control file

    N	  delete Nth received file

DL = queue

    00h delete control file in task queue and corresponding group file

  if it exists

    01h delete file in receive queue, as given by CX

    02h delete control file in log queue (individual deletions not

  recommended, to maintain integrity of log) and corresponding

  group file if it exists

Return: AX = 0000h successful

AX < 0	   error code (see #1719)

SeeAlso: AX=CB02h,AX=CB09h


INT 2F CB09 - Communicating Applications Specification - DELETE ALL FILES IN Q

Category: F - FAX

Inp.:

AX = CB09h

DL = queue

    00h delete all control files in task queue, including all group

  files

    01h delete all files in receive queue

    02h delete all control files in log queue, including all group

  files

Return: AX = 0000h successful

AX < 0	   error code (see #1719)

SeeAlso: AX=CB08h


INT 2F CB0A - Communicating Applications Specification - GET EVENT DATE

Category: F - FAX

Inp.:

AX = CB0Ah

BX = event handle

DL = queue

    00h task queue

    01h receive queue

    02h log queue

Return: AX = 0000h successful

    CX = year

    DH = month

    DL = day

AX < 0	   error code (see #1719)

SeeAlso: AX=CB0Bh,AX=CB0Ch


INT 2F CB0B - Communicating Applications Specification - SET TASK DATE

Category: F - FAX

Inp.:

AX = CB0Bh

BX = event handle (task event only)

CX = year

DH = month

DL = day

Return: AX = 0000h successful

AX < 0	   error code (see #1719)

Note:	setting a task's date and time to before the current date and time

  causes it to execute immediately

SeeAlso: AX=CB01h,AX=CB0Ah,AX=CB0Dh


INT 2F CB0C - Communicating Applications Specification - GET EVENT TIME

Category: F - FAX

Inp.:

AX = CB0Ch

BX = event handle

DL = queue

    00h task queue

    01h receive queue

    02h log queue

Return: AX = 0000h successful

    CH = hour

    CL = minute

    DH = second

    DL = 00h

AX < 0	   error code (see #1719)

SeeAlso: AX=CB0Ah,AX=CB0Dh


INT 2F CB0D - Communicating Applications Specification - SET TASK TIME

Category: F - FAX

Inp.:

AX = CB0Dh

BX = event handle (task events only)

CH = hour

CL = minute

DH = second

DL unused

Return: AX = 0000h successful

AX < 0	   error code (see #1719)

Note:	setting a task's date and time to before the current date and time

  causes it to execute immediately

SeeAlso: AX=CB0Bh,AX=CB0Ch,AX=CB10h


INT 2F CB0E - Communicating Applications Specification - GET EXTERNAL DATA BLOCK

Category: F - FAX

Inp.:

AX = CB0Eh

DS:DX -> 256-byte buffer for external data block (see #1720)

Return: AX = 0000h successful

    DS:DX buffer filled

AX < 0	   error code (see #1719)


INT 2F CB0F - Communicating Applications Specification - GET/SET AUTORECEIVE

Category: F - FAX

Inp.:

AX = CB0Fh

DL = subfunction

    00h get current autoreceive state

    01h set autoreceive state

DH = number of rings before answer, 00h = never

Return: AX = 0000h autoreceive disabled

AX = N	   number of rings before answer

AX < 0	   error code (see #1719)


INT 2F CB10 - Communicating Applications Specification - GET CURRENT EVENT STATUS

Category: F - FAX

Inp.:

AX = CB10h

DS:DX -> 512-byte buffer for status area (see #1722)

Return: AX = 0000h successful

BX = event handle of current event or negative error code if

      no current event

buffer filled

AX < 0	   error code (see #1719)

SeeAlso: AX=CB02h,AX=CB0Dh


INT 2F CB11 - Communicating Applications Specification - GET QUEUE STATUS

Category: F - FAX

Inp.:

AX = CB11h

DL = queue to get status of

    00h task queue

    01h receive queue

    02h log queue

    03h send events (v1.2+)

    04h receive events (v1.2+)

Return: AX >= 0	 total number of changes made to queue, modulo 32768

    BX = number of control files currently in queue

    CX = number of received files (zero for task and log queues)

AX < 0	error code (see #1719)

SeeAlso: AX=CB12h


INT 2F CB11 - Communicating Applications Spec v1.2+ - GET NUMBER OF SEND EVENTS

Category: F - FAX

Inp.:

AX = CB11h

DL = 03h

Return: AX = number of successful sends since resident manager started

BX = number of unsuccessful sends, including warnings

SeeAlso: AX=CB11h/DL=04h


INT 2F CB11 - Communicating Applications Spec v1.2+ - GET NUMBER OF RECEIVE EVENTS

Category: F - FAX

Inp.:

AX = CB11h

DL = 04h

Return: AX = number of received file events since resident manager started

BX = number of received FAX events

SeeAlso: AX=CB11h/DL=03h


INT 2F CB12 - Communicating Applications Specification - GET HARDWARE STATUS

Category: F - FAX

Inp.:

AX = CB12h

DS:DX -> 128-byte status buffer (see #1725,#1727)

Return: AX = 0000h successful

    DS:DX buffer filled with hardware-dependent status information

   < 0	   error code (see #1719)

SeeAlso: AX=CB10h,AX=CB11h


INT 2F CB13 - Communicating Applications Specification - GET DIAGNOSTICS RESULTS

Category: F - FAX

Inp.:

AX = CB13h

DL = 00h

Return: AX = 0040h in progress

   >= 0	   passed

   < 0	   hardware-dependent failure code (see #1735,#1736)

SeeAlso: AX=CB13h/DL=01h


INT 2F CB13 - Communicating Applications Specification - START DIAGNOSTICS

Category: F - FAX

Inp.:

AX = CB13h

DL = 01h

Return: AX = 0000h successfully started

AX < 0	   error code (see #1719)

SeeAlso: AX=CB13h/DL=00h


INT 2F CB14 - Communicating Applications Specification - MOVE RECEIVED FILE

Category: F - FAX

Inp.:

AX = CB14h

BX = event handle

CX = receive file number

    0001h first received file

    N	  Nth received file

DS:DX -> ASCIZ string specifying new name for file (must not exist)

Return: AX = 0000h successful

AX < 0	   error code (see #1719)


INT 2F CB15 - Communicating Applications Specification - SUBMIT FILE TO SEND

Category: F - FAX

Inp.:

AX = CB15h

DS:DX -> variable-length data area (see #1737)

Return: AX >= 0 event handle

AX < 0	error code (see #1719)

SeeAlso: AX=CB01h


INT 2F CB16 - Communicating Applications Spec v1.2+ - UNLOAD RESIDENT MANAGER

Category: F - FAX

Inp.:

AX = CB16h

BX = 1234h

CX = 5678h

DX = 9ABCh

Return: AX = 0000h successful

AX < 0	   error code

Note:	the MTEZ XpressFax CASMGR ignores the values in BX,CX, and DX

SeeAlso: AX=C000h/BX=444Bh,AX=CB00h

Index:	uninstall;CAS Manager


INT 2F CB17 - Communicating Applications Spec v1.2+ - SET COVER PAGE STATUS

Category: F - FAX

Inp.:

AX = CB17h

BX = event handle

CL = cover page status

    00h not read

    01h read by user

Return: AX = 0000h successful

AX < 0	   error code


INT 2F CB80 - Intel SatisFAXtion CASMGR - ???

Category: F - FAX

Inp.:

AX = CB80h

???

Return: ???


INT 2F CB81 - Intel SatisFAXtion CASMGR - ???

Category: F - FAX

Inp.:

AX = CB81h

???

Return: ???


INT 2F CB82 - Intel SatisFAXtion CASMGR - ???

Category: F - FAX

Inp.:

AX = CB82h

???

Return: ???


INT 2F CBDC - Comwave Microfax Specification - GET STATUS ARRAY

Category: F - FAX

Inp.:

AX = CBDCh

BL = 56h

BH = line number (starts with 1)

CX:DX -> 32-byte status buffer or 80 character string

Return: AX = number of cards installed, or FFFFh on error

Program: Comwave manufacturers the Microfax line of fax cards which are a high-

  performance multi-card FAX solution for OEMs.

Note:	defaults to AH=CBh but can be changed

SeeAlso: AX=CBDDh,AX=DA00h


INT 2F CBDD - Comwave Microfax Specification - COMMAND SUBMISSION

Category: F - FAX

Inp.:

AX = CBDDh

BL = 56h

BH = ?

CX:DX -> command to execute

Return: AX = status

    0000h success

    FFFFh on error

SeeAlso: AH=2Ah,AX=CBDCh,AX=80FBh


INT 2F CC-- - PC-Kwik Programs - API

undocumented function

Category: c - caches/spoolers

Inp.:

AH = CCh

SI = 5453h or 7473h

AL = function number (at least 00h,01h,04h,05h,07h,80h)

DL = program identifier (see #1738)

Return: SI = 7473h

other registers vary by function

Note:	Qualitas Qcache v4.00 is an OEM version of Super PC-Kwik v4.00, and

  thus supports this call

SeeAlso: INT 21/AH=2Bh/CX=4358h


INT 2F CC00 - Tsoft NFSDRVR - INSTALLATION CHECK

Category: N - network

Inp.:

AX = CC00h

Return: AX = 7777h

BX = ???

CX = ???

DX = ???

ES = data segment of resident portion

SeeAlso: AX=CC01h,AX=CC06h


INT 2F CC01 - Tsoft NFSDRVR - ???

Category: N - network

Inp.:

AX = CC01h

???

Return: ???

SeeAlso: AX=CC00h


INT 2F CC02 - Tsoft NFSDRVR - ???

Category: N - network

Inp.:

AX = CC02h

???

Return: ???

SeeAlso: AX=CC00h


INT 2F CC03 - Tsoft NFSDRVR - ???

Category: N - network

Inp.:

AX = CC03h

???

Return: ???

SeeAlso: AX=CC00h


INT 2F CC04 - Tsoft NFSDRVR - ???

Category: N - network

Inp.:

AX = CC04h

???

Return: ???

SeeAlso: AX=CC00h


INT 2F CC05 - Tsoft NFSDRVR - ???

Category: N - network

Inp.:

AX = CC05h

???

Return: ???

SeeAlso: AX=CC00h


INT 2F CC06 - Tsoft NFSDRVR - ???

Category: N - network

Inp.:

AX = CC06h

???

Return: ???

SeeAlso: AX=CC00h


INT 2F CD00 - Intel Image Processing Interface - INSTALLATION CHECK

Category: - - (none)

Inp.:

AX = CD00h

Return: AL = state

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

SeeAlso: AX=CD02h"Image"


INT 2F CD00 - LaserPort Interface - INSTALLATION CHECK

Category: P - printer enhancements

Inp.:

AX = CD00h

Return: AL = status

    FFh installed

SeeAlso: AX=CD0Fh"LaserPort"


INT 2F CD00 - SWELL.EXE - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = CD00h

Return: AX = 00FFh installed

    BH = major version

    BL = minor version

Program: SWELL.EXE is a TSR which swaps programs to disk when they EXEC a child

  process with INT 21/AH=4Bh


INT 2F CD00 - Forte/Gravis ULTRAMID - INSTALLATION CHECK

Category: s - sound/speech

Inp.:

AX = CD00h

BX = 464Fh ('FO')

CX = 5254h ('RT')

DX = 4520h ('E ')

Return: AL = FFh if installed

    BX = 4155h ('AU')

    CX = 4449h ('DI')

    DX = 4F20h ('O ')

    ES:SI -> program ID string

Program: ULTRAMID is a MIDI driver for the Gravis UltraSound which allows use

  of AIL drivers with other software

Range:	AH=CDh-ECh, selected by scanning for an available multiplex number

SeeAlso: INT 21/AX=FD12h


INT 2F CD01 - Intel Image Processing Interface - SET DEVICE NAME

Category: - - (none)

Inp.:

AX = CD01h

CX:BX -> ASCIZ character device name ("LPTn", "COMn", "PRN")

Return: AL = status

    00h successful

CX:BX -> internal character device name

    80h error


INT 2F CD01 - SWELL.EXE - SUSPEND ONCE

Category: U - resident utilities

Inp.:

AX = CD01h

Return: AX = 0000h

SeeAlso: AX=CD02h"SWELL"


INT 2F CD02 - Intel Image Processing Interface - GET VERSION NUMBER

Category: - - (none)

Inp.:

AX = CD02h

Return: AL = status

    00h/01h successful

BH = major version number (BCD)

BL = minor version number (BCD)

    80h error

Note:	if return AL = 01h, the IPI supports network redirection

SeeAlso: AX=CD00h"Image"


INT 2F CD02 - SWELL.EXE - SUSPEND

Category: U - resident utilities

Inp.:

AX = CD02h

Return: AX = 0000h

SeeAlso: AX=CD03h"SWELL"


INT 2F CD03 - Intel Image Processing Interface - SELECT SCAN LINE

Category: - - (none)

Inp.:

AX = CD03h

BX = scan line

CX = requested density in dots per inch (300, 600, or 1200)

Return: AL = status (see also AX=CD04h"Image")

    00h successful

CX = density at which scan line was mapped

ES:DI -> start of scan line

    80h unsuccessful

    81h scan line out of range

    82h unsupported scan line density

    83h out of memory

SeeAlso: AX=CD04h"Image"


INT 2F CD03 - SWELL.EXE - ACTIVATE

Category: U - resident utilities

Inp.:

AX = CD03h

Return: AX = 0000h

SeeAlso: AX=CD02h"SWELL"


INT 2F CD04 - Intel Image Processing Interface - MOVE BITMAP TO SCANLINE

Category: - - (none)

Inp.:

AX = CD04h

CX:BX -> structure (see #1740)

Return: AL = status (see #1739)

SeeAlso: AX=CD03h"Image"


INT 2F CD04 - SWELL.EXE - TURN OFF VERBOSE MODE

Category: U - resident utilities

Inp.:

AX = CD04h

Return: AX = 0000h

SeeAlso: AX=CD05h"SWELL"


INT 2F CD05 - Intel Image Processing Interface - PRINT PAGE

Category: - - (none)

Inp.:

AX = CD05h

Return: AL = status (00h,80h) (see #1739)

Note:	page image is retained, so multiple calls will print multiple copies of

  the page

SeeAlso: AX=CD06h"Image"


INT 2F CD05 - SWELL.EXE - TURN ON VERBOSE MODE

Category: U - resident utilities

Inp.:

AX = CD05h

Return: AX = 0000h

SeeAlso: AX=CD04h"SWELL"


INT 2F CD06 - Intel Image Processing Interface - CLEAR PAGE

Category: - - (none)

Inp.:

AX = CD06h

Return: AL = status (00h,80h) (see #1739)

Note:	palette is reset to default

SeeAlso: AX=CD09h"Image"


INT 2F CD06 - SWELL.EXE - UNINSTALL

Category: U - resident utilities

Inp.:

AX = CD06h

Return: AX = status

    0000h uninstalled

    8002h programs still swapped, not uninstalled


INT 2F CD07 - Intel Image Processing Interface - reserved

Category: - - (none)

Inp.:

AX = CD07h

SeeAlso: AX=CD00h"Image"


INT 2F CD07 - SWELL.EXE - GET INFO

Category: U - resident utilities

Inp.:

AX = CD07h

ES:BX -> 32-byte buffer for info (see #1741)

Return: AX = status

    0000h successful

ES:BX buffer filled

    8001h buffer wrong size


INT 2F CD08 - Intel Image Processing Interface - SCREEN IMAGE

Category: - - (none)

Inp.:

AX = CD08h

CX:BX -> structure (see #1742)

Return: AL = status (00h,80h-85h) (see #1739)

SeeAlso: AX=CD05h"Image",AX=CD09h"Image"


INT 2F CD08 - SWELL.EXE - UNUSED

Category: U - resident utilities

Inp.:

AX = CD08h

Return: AX = FFFFh (error)


INT 2F CD09 - Intel Image Processing Interface - LOAD SCREEN

Category: - - (none)

Inp.:

AX = CD09h

CX:BX -> structure (see #1743)

Return: AL = status (00h,80h) (see #1739)

SeeAlso: AX=CD06h"Image Processing",AX=CD0Ah"Image Processing"


INT 2F CD09 - SWELL.EXE - TURN OFF "BORLAND SUPPORT"

Category: U - resident utilities

Inp.:

AX = CD09h

Return: AX = 0000h

SeeAlso: AX=CD0Ah"SWELL"


INT 2F CD0A - Intel Image Processing Interface - LOAD PALETTE

Category: - - (none)

Inp.:

AX = CD0Ah

CX:BX -> palette structure (see #1744)

Return: AL = status (00h,80h) (see #1739)

SeeAlso: AX=CD09h"Image Processing"


INT 2F CD0A - SWELL.EXE - TURN ON "BORLAND SUPPORT"

Category: U - resident utilities

Inp.:

AX = CD0Ah

Return: AX = 0000h

SeeAlso: AX=CD09h"SWELL"


INT 2F CD0F - LaserPort Interface - EXECUTE FUNCTION

Category: P - printer enhancements

Inp.:

AX = CD0Fh

BL = function

01h enable

02h disable

03h ???

Return: AL = status

    00h success

SeeAlso: AX=CD00h"LaserPort"


INT 2F CF00 - TEMPLEXX 1.0 - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = CF00h

Return: AL = FFh if installed

Program: TEMPLEXX is a popup keyboard template by Henson Scientific, Inc.

Note:	values in AL other than 00h cause an immediate return without modifying

  any registers


INT 2F D000 - MDEBUG display driver - GET DRIVER STATUS

callout or callback (usually hooked rather than called)

Category: G - debuggers/debugging tools

Inp.:

AX = D000h

Return: CF set on error

    all other registers must be unchanged)

CF clear if successful

    AL = FFh

    AH = driver semaphor

00h driver is not active

01h driver is active

    BX = CS of the driver

    CX = driver version (CH = major, CL = minor, must be >= 013Ch)

    DL = buffer semaphor

00h driver is not pending

01h driver is pending between functions 02h and 03h

    DH = show semaphor

00h driver is not pending

01h driver is pending between functions 04h and 05h

Program: MDEBUG is a shareware memory-resident debugging tool by Bernd

  Schemmer, including a memory monitor, an interpreter and a

  disassembler

Range:	AH=C0h to AH=FFh, selected by switch or programmatically

Notes:	MDEBUG can use any two consecutive multiplex numbers between C0h and

  FFh; the default is D0h for the display driver and D1h for the

  command driver (see INT 60/AH=00h"MDEBUG" for the actual multiplex

  numbers used)

this function MUST be reentrant, as MDEBUG calls it after every popup

  before any other actions.  The handler should not change any

  registers if the display is in an unsupported mode or in a mode

  MDEBUG supports itself, e.g. a normal text mode with at least 80x25

  characters (i.e. 80x43 or 132x44 (v1.60+)). In this case MDEBUG will

  not call any of the other functions for this popup session.

MDEBUG will not call the other functions if the returned version is

  less than the actual version of MDEBUG.

if the driver is reentrant, DL and DH should be 00h

SeeAlso: AX=D001h,AX=D002h,AX=D003h,AX=D004h,AX=D005h


INT 2F D000 - ZWmous - INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = D000h

Return: AX = 5A57h ("ZW") if installed

    BX = segment of resident code

Program: ZWmous is a shareware TSR by Zen Wu which permits the use of a mouse

  with many non-mouse applications by entering the letter under the

  mouse cursor on button presses

SeeAlso: INT 33/AX=0003h


INT 2F D000 - Lotus CD/Networker - INSTALLATION CHECK

Category: N - network

Inp.:

AX = D000h

Return: AL = FFh if CD/Networker TSR is loaded

BX = 4D44h ("MD") signature

CX = Windows mode word (from INT 2F/AX=1600h) at time of TSR load

DX = bitmap identifying all loaded CD/Networker TSRs.

Notes:	INT 2F/AH=D0h is used by CD/Networker to communicate between a

  resident redirector TSR and a transient program that controls the

  TSR's CD-ROM drive emulation (volume attachments, caching, etc).

At present there is only one CD/Networker TSR; the bitmap always = 4.

SeeAlso: AX=D002h"Lotus",INT 2F/AX=1500h"CD-ROM"


INT 2F D001 - MDEBUG display driver - INITIALIZE DRIVER

callout or callback (usually hooked rather than called)

Category: G - debuggers/debugging tools

Inp.:

AX = D001h

Return: CF set on error

AL = driver semaphor

AH = buffer semaphor

Range:	AH=C0h to AH=FFh, selected by switch or programmatically

Notes:	MDEBUG calls this function after every successful call of the function

  00h. The function should reset all internal data and the status of

  the driver. If this function returns an error, MDEBUG will not call

  the other functions in this popup session.

MDEBUG can use any two consecutive multiplex numbers between C0h and

  FFh; the default is D0h for the display driver and D1h for the

  command driver

SeeAlso: AX=D000h


INT 2F D002 - MDEBUG display driver - SAVE GRAPHIC DATA

callout or callback (usually hooked rather than called)

Category: G - debuggers/debugging tools

Inp.:

AX = D002h

Return: CF set on error

CF clear if successful

    display memory saved and display switched to one of the text modes

      02h, 03h or 07h.

Note:	MDEBUG calls this function only once every popup session before

  displaying its windows.

SeeAlso: AX=D000h,AX=D003h


INT 2F D002 - Multiplex - Lotus CD/Networker GET DATA AREA

Category: N - network

Inp.:

AX = D002h

BX = 4D44h

DX = bitmap identifying one loaded CD/Networker TSR

Return: ES:DI -> data area owned by TSR

Note:	the format of the data area changes with each minor revision, so it

  cannot be counted on

SeeAlso: AX=D000h"Lotus"


INT 2F D003 - MDEBUG display driver - RESTORE GRAPHIC DATA

callout or callback (usually hooked rather than called)

Category: G - debuggers/debugging tools

Inp.:

AX = D003h

Return: CF set on error

CF clear if successful

    display restored to the mode it was in before calling AX=D002h and

      the display memory is restored

Note:	MDEBUG calls this function only once every popup session just before

 it exits to normal DOS.

SeeAlso: AX=D000h,AX=D002h


INT 2F D004 - MDEBUG display driver - SHOW SAVED DATA

Category: G - debuggers/debugging tools

Inp.:

AX = D004h

Return: CF set on error

CF clear if successful

    display switched to mode it was in before calling AX=D002h and the

      display memory is restored

Note:	This function needn't save the display memory before changing it.

SeeAlso: AX=D000h,AX=D005h


INT 2F D005 - MDEBUG display driver - SWITCH BACK TO TEXT SCREEN

Category: G - debuggers/debugging tools

Inp.:

AX = D005h

Return: CF set on error

CF clear if successful

    display restored to mode it was in before calling AX=D004h

Note:	This function needn't save or change the display memory

SeeAlso: AX=D000h,AX=D004h


INT 2F D0-- - MDEBUG display driver - RESERVED FUNCTION NUMBERS

Category: G - debuggers/debugging tools

Inp.:

AH = D0h

AL = 06h-7Fh

Note:	these functions are reserved for future use


INT 2F D0-- - MDEBUG display driver - USER DEFINED FUNCTION NUMBERS

Category: G - debuggers/debugging tools

Inp.:

AH = D0h

AL = 80h-FFh

Note:	these functions numbers are reserved for user defined features (e.g.

  communication between the transient und resident parts of the driver)


INT 2F D100 - MDEBUG command driver - GET STATUS

callout or callback (usually hooked rather than called)

Category: G - debuggers/debugging tools

Inp.:

AX = D100h

BX = version of MDEBUG (BH = major, BL = minor)

CX = command driver counter

---v1.60+---

DS:SI -> MDEBUG identification table (see #1745)

ES = segment of display memory used by MDEBUG

DI = size of video mode used by MDEBUG

    (high byte = lines, low byte = columns)

Return: DL = FFh

BX = version number of the driver if it is less than the version in BX,

      else unchanged

CX incremented

Program: MDEBUG is a shareware memory-resident debugging tool by Bernd

  Schemmer, including a memory monitor, an interpreter, and a

  disassembler

Range:	AH=C0h to AH=FFh, selected by switch or programmatically

Notes:	called by MDEBUG at start of popup session; if the version number

  returned in BX is less than 1.52 (1.60 for MDEBUG v1.70), MDEBUG will

  not call any of the other functions during this popup session

MDEBUG can use any two consecutive multiplex numbers between C0h and

  FFh; the default is D0h for the display driver and D1h for the

  command driver (see INT 60/AH=00h"MDEBUG" for the multiplex numbers

  actually used)

this function must end with a far call to the old INT 2F handler after

  changing the registers

this function MUST be reentrant

command drivers must also declare the following data at the given

  offsets in the code segment

100h  3 BYTEs	JMP-command in .COM-files

103h	BYTE	NOP-command (90h)

104h 26 BYTEs	signature "Kommandotreiber für MDEBUG"

11Eh 12 BYTEs	name of driver, e.g. "MDHISDRV.COM"

each driver must have a unique name

MDEBUG will pass every key and command to the command driver(s) before

  checking for a valid internal command

SeeAlso: AX=D000h,AX=D101h


INT 2F D101 - MDEBUG command driver - INITIALIZE DRIVER

Category: G - debuggers/debugging tools

Inp.:

AX = D101h

CX = command driver counter

Return: DL = status

    FFh if successful

CX incremented

    else error: all registers unchanged

Note:	this function must end with a  far call to the old INT 2F handler after

  changing the registers

this function must be reentrant


INT 2F D102 - MDEBUG command driver - EXECUTE INTERPRETER COMMAND

Category: G - debuggers/debugging tools

Inp.:

AX = D102h

BL = first character of the interpreter command

BH = last character of the interpreter command (or blank)

DS:SI -> parameter for the interpreter command as ASCIZ string

DS:DI -> MDEBUG data structure (see #1747)

Return: AL = FFh

CF set on error

    AH = error number (see #1746)

    DS:SI -> ASCIZ error message (max 30 characters) if AH=0Ch

CF clear if successful

    AH = return code

00h continue processing the command line

01h leave MDEBUG popup session

02h leave MDEBUG popup session and automatically popup again

      if the InDOS flag is zero

03h not used (same as 00h)

04h not used (same as 00h)

05h put new command line into the input buffer,

    DS:SI -> new command line (ASCIZ string, max 66 chars)

06h process new command line

    DS:SI -> new command line (ASCIZ string, max 66 chars)

       else unknown status, but continue processing commmand line

Note:	this function must end with a far call to the old INT 2F handler (with

  registers unchanged) if the driver does not support the interpreter

  command in BX.  Otherwise, the driver must not chain to the old

  INT 2F.


INT 2F D103 - MDEBUG command driver - EXECUTE KEY IN THE MONITOR

Category: G - debuggers/debugging tools

Inp.:

AX = D103h

BX = key code (like result of an interrupt 16h call)

CX = cursor position

    0000h in the ASCII column of the monitor

    0001h in one of the hex fields of the monitor

DS:SI -> MDEBUG data structure (see #1747)

ES:DI -> actual byte in the monitor

Return: AL = FFh

AH = return code

    00h key processed, read next key

    01h leave MDEBUG popup session

    02h leave MDEBUG popup session and automatically popup again if DOS

  is not busy

    03h signal an error (beep)

    04h driver has redefined the key, proceed with the new key

BX = new key code

MDEBUG will not pass the new key to the command driver(s)

   else treat like code 00h

Note:	this function must end with a far call to the old INT 2F handler (with

  registers unchanged) if the driver does not support the key in BX.

  Otherwise, the driver must not chain to the old INT 2F.

SeeAlso: AX=D104h


INT 2F D104 - MDEBUG command driver - EXECUTE KEY IN THE INTERPRETER

Category: G - debuggers/debugging tools

Inp.:

AX = D104h

DS:SI -> MDEBUG data structure (see #1747)

Return: AL = FFh

AH = return code

    00h key processed, read next key

    01h leave MDEBUG popup session

    02h leave MDEBUG popup session and automactically popup again if

  DOS is not busy

    03h signal an error (beep)

    04h driver has redefined the key, proceed with the new key

BX = new key code

MDEBUG won't pass the new key to the command driver(s)

    05h put new command line into the input buffer

DS:SI -> new command line (ASCIZ string, max 66 chars)

    06h process new command line

DS:SI -> new command line (ASCIZ string, max 66 chars)

   else treat like code 00h

Note:	this function must end with a far call to the old INT 2F handler if the

  driver does not support the key in BX.  Otherwise, the driver must

  not chain to the old INT 2F.

SeeAlso: AX=D103h


INT 2F D1-- - MDEBUG command driver - RESERVED FUNCTIONS

Category: G - debuggers/debugging tools

Inp.:

AH = D1h

AL = 05h-0Ah

Note:	these functions are reserved for future use


INT 2F D110 - MDEBUG command driver - GET ADDRESS OF THE OLD INT 2F

Category: G - debuggers/debugging tools

Inp.:

AX = D110h

Return: DL = FFh

ES:BX -> next program in the chain for INT 2F

CX = code segment of this driver

DI = offset of driver identification table (see #1748) (v1.60+)

Notes:	only called by the transient part of the driver

must be reentrant and the driver must not chain this function to the

  old INT 2F


INT 2F D111 - MDEBUG command driver - START DRIVER

Category: G - debuggers/debugging tools

Inp.:

AX = D111h

Return: DL = FFh

Notes:	only called by the transient part of the driver to inform the resident

  part that it is installed

the function must be reentrant and the driver mustn't chain this

  function to the old INT 2F

SeeAlso: AX=D101h,AX=D112h


INT 2F D112 - MDEBUG command driver - END DRIVER

Category: G - debuggers/debugging tools

Inp.:

AX = D112h

Return: DL = FFh

Notes:	only called by the transient part of the driver to inform the resident

  part that it will be released after this function

the function must be reentrant and the driver mustn't chain this

  function to the old INT 2F

SeeAlso: AX=D101h,AX=D111h


INT 2F D1-- - MDEBUG command driver - RESERVED FUNCTIONS

Category: G - debuggers/debugging tools

Inp.:

AH = D1h

AL = 13h-7Fh

Note:	these functions are reserved for future use


INT 2F D1-- - MDEBUG command driver - USER DEFINED FUNCTIONS

Category: G - debuggers/debugging tools

Inp.:

AH = D1h

AL = 80h-FFh

Note:	these functions are reserved for user defined features (e.g.

  communication between the transient und resident parts of the driver)


INT 2F D200 - PCL-838.EXE - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = D200h

Return: AL = FFh if installed??? (documented as AX = return value)

Program: PCL-838 is a resident utility for controlling a stepmotor adapter

  board by Advantec

SeeAlso: AX=D201h"PCL-838",AX=D202h"PCL-838"


INT 2F D200 - Quarterdeck RPCI - INSTALLATION CHECK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = D200h

BX = 5144h ("QD")

CX = 4D45h ("ME")

DX = 4D30h ("M0")

Return: AL = FFh installed

if BX,CX,DX registers were as specified on entry:

    BX = 4D45h ("ME")

    CX = 4D44h ("MD")

    DX = 5652h ("VR")

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

Notes:	the Quarterdeck RPCI (Resident Program Communication Interface) is

  supported by QEMM v5.0+, QRAM, MANIFEST, VIDRAM, etc.

for AL <> 0, if the BX/CX/DX values don't match the identifier of a

  Quarterdeck product, it just chains to the previous INT 2F handler

SeeAlso: AX=D201h/BX=4849h,AX=D201h/BX=4D41h,AX=D201h/BX=4D45h

SeeAlso: AX=D201h/BX=5145h,AX=D201h/BX=5649h


INT 2F D201 - PCL-838.EXE - UNINSTALL

Category: U - resident utilities

Inp.:

AX = D201h

Return: AX = return value

SeeAlso: AX=D200h"PCL-838",AX=D202h"PCL-838"


INT 2F D201 - Quarterdeck RPCI - GET QD HIMEM PRESENCE

Category: m - memory management

Inp.:

AX = D201h

BX = 4849h ("HI")

CX = 4D45h ("ME")

DX = 4D51h ("MQ")

Return: BX = 4F4Bh ("OK")

ES:DI -> HIMEM entry point

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

SeeAlso: AX=D200h,AX=D201h/BX=5145h


INT 2F D201 - Quarterdeck RPCI - QEMM/QRAM v5.0+ - GET HIRAM MEMORY CHAIN

Category: m - memory management

Inp.:

AX = D201h

BX = 4849h ("HI")

CX = 5241h ("RA")

DX = 4D30h ("M0")

Return: BX = 4F4Bh ("OK")

CX = segment of start of HIRAM chain

DX = reserved block owner (QEMM/QRAM code segment)

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

Note:	the HIRAM memory chain has the same format as the regular DOS 4.0

  memory chain (see #0841 at INT 21/AH=52h), except that XMS Upper

  Memory Blocks have the block header program name field set to

  "UMB"; blocks whose "owner" field is set to the reserved segment

  returned in DX are locked-out regions such as video memory and ROMs.

SeeAlso: AX=12FFh/BX=0006h,AX=D200h


INT 2F D201 - Quarterdeck RPCI - MANIFEST v1.0+ - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = D201h

BX = 4D41h ("MA")

CX = 4E49h ("NI")

DX = 4645h ("FE")

Return: BX = 5354h ("ST") if installed

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

SeeAlso: AX=D200h


INT 2F D201 - Quarterdeck RPCI - DVDOS4GX.DVR - ???

undocumented function

Category: E - DOS extenders

Inp.:

AX = D201h

BX = 4D45h ("ME")

CX = 5155h ("QU")

DX = 5044h ("PD")

Return: AL = FFh

BX = 4F4Bh ("OK")

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

Note:	this function is called by QEMM 6.03

performs a variety of actions before setting return registers

SeeAlso: AX=D200h


INT 2F D201 - Quarterdeck RPCI - QEMM v5.0+ - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = D201h

BX = 5145h ("QE")

CX = 4D4Dh ("MM")

DX = 3432h ("42")

Return: BX = 4F4Bh ("OK")

ES:DI -> QEMM API entry point (see INT 67/AH=3Fh)

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

Note:	this call is not available under QEMM v6.00 unless Windows3 support

  has been disabled with the NW3 switch to QEMM386.SYS

SeeAlso: AX=D200h,AX=D201h/BX=4849h,INT 67/AH=3Fh


INT 2F D201 - Quarterdeck RPCI - VIDRAM v5.0+ - INSTALLATION CHECK

partially documented function

Category: V - video

Inp.:

AX = D201h

BX = 5649h ("VI")

CX = 4452h ("DR")

DX = 414Dh ("AM")

Return: BX = 4F4Bh ("OK")

ES:DI -> VIDRAM entry point (see #1749)

Range:	AH=C0h to AH=FFh, selected by scanning AH=D2h-FFh, then AH=C0h-D1h

SeeAlso: AX=D200h


INT 2F D202 - PCL-838.EXE - EXECUTE PCL838 COMMANDS

Category: U - resident utilities

Inp.:

AX = D202h

CX:BX -> parameter table

Return: AX = return value

SeeAlso: AX=D200h"PCL-838",AX=D201h"PCL-838"


INT 2F D300 - TeleReplica - INSTALLATION CHECK

undocumented function

Category: R - remote control/file access

Inp.:

AX = D300h

BX = 4562h

CX = 2745h

DX = serial port I/O base address??? (03F8h for v3.9)

Return: SI = segment of resident code

AX = 251Dh

BX = DF21h

CX = F321h

DX = ???


INT 2F D3CB - LapLink Quick Connect v6 - API

undocumented function

Category: R - remote control/file access

Inp.:

AX = D3CBh

CX = function

    0002h get ???

Return: BX:AX -> ???

CL = ???

CH = ???

DX = ???

DI = COM1 I/O port???

SI = COM2 I/O port???

    0003h initialization???

    0004h ???

    0005h initialization???

    0006h reset/clear ???

Return: AX = 0000h

ES:DI -> next byte after ??? cleared by this call

    0007h initialization???

    0008h uninstall

Return: BX = status

    0000h successful

    FFFFh incomplete, stub remains in memory

Return: CX = 534Bh (except function 0002h)

Index:	uninstall;LapLink Quick Connect


INT 2F D44D - 4DOS.COM v2.1+ - API

Category: l - shells/command interpreters

Inp.:

AX = D44Dh

BH = function

    00h installation check

Return: AX = 44DDh

BL = major version number

BH = minor version number

CX = PSP segment address for current invocation

DL = 4DOS shell number (0 for the first (root) shell,

      updated each time a new copy is loaded)

    01h (internal, v2.1-3.03) terminate current copy of 4DOS

Return: nothing

(internal, v4.0) ???

Return: AX = 44DDh

ES:BX -> data area (see #1755)

    02h ???

DX = ???

---v2.1-3.03 only---

    03h EXEC program

CX:DX -> EXEC record (see #1756)

    FEh deallocate shell number (passed through to root shell)

???

    FFh allocate shell number (passed through to root shell)

Note:	bug in v3.00 will crash system if unrecognized value in BH

SeeAlso: AX=D44Eh,AX=E44Dh,INT 21/AX=4403h

Index:	installation check;4DOS|installation check;NDOS


INT 2F D44E - 4DOS v3.0+ - AWAITING USER INPUT

callout or callback (usually hooked rather than called)

Category: l - shells/command interpreters

Inp.:

AX = D44Eh

---4DOS v3.01+---

BX = condition

    0000h 4DOS is ready to display prompt

    0001h 4DOS has displayed the prompt, about to accept user input

Return: the handler must preserve SI, DI, BP, SP, DS, ES, and SS

Note:	v3.00 only makes the call corresponding to BX=0001h, does not set BX

SeeAlso: AX=D44Dh


INT 2F D44F - 4DOS v4.0+ - KSTACK.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = D44Fh

BX = 0000h

Return: AX = 44DDh if installed

Note:	this function is also supported by ANSIPLUS v3.01+ and K3PLUS v6.20+,

  which emulate the 4DOS and NDOS keystack

SeeAlso: AX=D44Fh/BX=0001h,AX=E44Fh/BX=0000h


INT 2F D44F - 4DOS v4.0+ - KSTACK.COM - PLACE KEYSTROKES INTO KEYSTACK

Category: K - keyboard enhancers

Inp.:

AX = D44Fh

BX = 0001h

CX = number of keystrokes (01h-FFh)

DS:DX -> keystroke list (one word per keystroke)

Return: AX = status

    0000h successful

    nonzero failed

BX,CX,DX destroyed

Notes:	the keystrokes are the exact values to return from subsequent calls to

  INT 16 with AH=00h,01h,10h, or 11h, with the following exceptions:

0000h causes subfunctions 01h and 11h to indicate an empty

      keyboard buffer

FFFFh is followed by a word indicating the number of clock

      ticks to delay before the next faked keystroke

v4.00 KSTACK overwrites any unread keystrokes from the previous

  invocation, and does not range-check CX; it will overwrite memory

  following the resident portion if CX is greater than 100h.

this function is also supported by ANSIPLUS v3.01+ and K3PLUS v6.20+,

  which emulate the 4DOS and NDOS keystack

SeeAlso: AX=D44Fh/BX=0000h,INT 16/AH=00h,INT 21/AX=4403h


INT 2F D600 - HEART.COM - INSTALLATION CHECK

Category: G - debuggers/debugging tools

Inp.:

AX = D600h

Return: AX = 0303h (two hearts) if installed

    ES:DI -> buffer (see #1757)

Program: HEART.COM is a CPU lock-up/critical indicator utility by Mitch Davis.

Notes:	Once the host program has identified the address of the data area, it

  can change this to indicate safe/critical, alternate colours, etc.

The entries for the color table are in char/attrib form.  Every two

  entries form a pair which is alternated between 68 times a minute.

  The first half of the table is for color videos, the second mono.

  Within each half, the first half is for the safe chars, and the

  second for the critical chars.


INT 2F D600 - VEDIT VSWAP - INSTALLATION CHECK

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = D600h

Return: AL = D6h if installed

Program: VSWAP is the resident portion of VEDIT's "swapper" capability; VEDIT

  is a programmer's text editor by Greenview Data.

SeeAlso: AX=D601h,AX=D602h


INT 2F D601 - VEDIT VSWAP - ???

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = D601h

BL = subfunction number???

Return: BL = return code ???

ES = resident portion's data??? segment

DX = resident portion's code segment

SeeAlso: AX=D600h"VSWAP"


INT 2F D602 - VEDIT VSWAP - EXEC PROGRAM WITH SWAP

undocumented function

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = D602h

other registers set as for INT 21/AX=4B00h

Return: CF set on error

    AL = error code

82h = failure due to ???

CF clear on success

SeeAlso: AX=D600h"VSWAP",INT 21/AH=4Bh"EXEC"


INT 2F D701 - Banyan VINES v4+ - GET BANV INTERRUPT NUMBER

Category: N - network

Inp.:

AX = D701h

BX = 0000h

Return: AX = 0000h if installed

    BX = interrupt number (60h to 66h)

   nonzero not present

Note:	if AX is nonzero, VINES 3.x or earlier may be installed, thus it is

  necessary to examine the four bytes preceding the handlers for

  INT 60 through INT 66 for the string "BANV"

SeeAlso: AX=D702h,AX=D703h,AX=D704h


INT 2F D702 - Banyan VINES v4+ - PCPRINT interface

undocumented function

Category: N - network

Inp.:

AX = D702h

BX = function

???

Return: ???

SeeAlso: AX=D701h,AX=D703h,INT 61/AX=0005h"Banyan"


INT 2F D703 - Banyan VINES v4+ - MAIL interface

undocumented function

Category: N - network

Inp.:

AX = D703h

BX = function

???

Return: ???

SeeAlso: AX=D702h,AX=D704h


INT 2F D704 - Banyan VINES v4+ - Streettalk Directory Assistance interface

undocumented function

Category: N - network

Inp.:

AX = D704h

BX = function

???

Return: ???

SeeAlso: AX=D703h,INT 61/AX=0007h/BX=0002h"Banyan",INT 61/AX=0007h/BX=0008h


INT 2F D800 - Novell NetWare Lite - CLIENT.EXE - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = D800h

Return: AL = FFh if installed

    DX = version number (0100h for v1.0, 0101h for v1.1)

    BX = data segment of resident copy

    ES:DI -> private API entry point (see #1758)

    SI = segment of resident code

SeeAlso: AX=7A00h,AX=D880h


INT 2F D856 - Novell NetWare Lite v1.1 - SERVER - GET ???

undocumented function

Category: N - network

Inp.:

AX = D856h

Return: AX = 0001h if supported???

BX = ??? (0004h for v1.1)

CX = ??? (0F20h for v1.1)

DS = segment of resident code

ES = data segment of resident copy

Note:	this function is also supported by Personal NetWare SERVER, bundled

  with Novell DOS 7


INT 2F D880 - Novell NetWare Lite v1.0+ - SERVER - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = D880h

Return: AL = FFh if installed

    DX = version number (0100h for v1.0, 0101h for v1.1)

    BX = data segment of resident copy

    CL = current state (00h SERVER is disabled, 01h SERVER is active)

    ES:DI -> private API entry point (see #1759)

    SI = ??? (offset of configuration info?)

Note:	this function is also supported by Personal NetWare SERVER, but DI is

  not set; instead, ES:SI points at the API entry point

SeeAlso: AX=7A00h,AX=D800h,INT 2A/AX=D852h


INT 2F D8C0 - Novell NLCACHE,NWCACHE - INSTALLATION CHECK

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = D8C0h

Return: AL = FFh if installed

    CL = cache variant (01h NLCACHEC, 02h NLCACHEX, 03h NLCACHEM)

    DH = major version??? (01h for v1.1)

    DL = minor version??? (01h for v1.1)

    ES:DI -> private API entry point (see #1760)

Program: NLCACHE is a disk cache included with NetWare Lite

SeeAlso: AX=D800h,AX=D880h


INT 2F DA00 - ZyXEL ZFAX - INSTALLATION CHECK

Category: F - FAX

Inp.:

AX = DA00h

Return: AH = enabled state (00h = enabled, 01h = disabled)

AL = 5Ah installed

Program: ZFAX is the bundled FAX software which comes with the ZyXEL model

  fax modems.

Note:	This function, and the other DAxxh functions, may apply only to version

  1 of the software; see AX=DB00h for the version 2 installation check

SeeAlso: AX=CBDCh,AX=DA01h,AX=DA02h,AX=DA03h,AX=DB00h


INT 2F DA01 - ZyXEL ZFAX - UNINSTALL

Category: F - FAX

Inp.:

AX = DA01h

Return: AL = 00h Success

     01h Failure

SeeAlso: AX=DA00h,AX=DB01h


INT 2F DA02 - ZyXEL ZFAX - DISABLE

Category: F - FAX

Inp.:

AX = DA02h

Return: AL = 00h

SeeAlso: AX=DA03h,AX=DB02h


INT 2F DA03 - ZyXEL ZFAX - ENABLE

Category: F - FAX

Inp.:

AX = DA03h

Return: AL = 00h

SeeAlso: AX=DA02h,AX=DB03h


INT 2F DA55 - TRAP.COM - INSTALLATION CHECK

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = DA55h

DL = interrupt number

DH = ???

Return: if installed

    AH = interrupt number

    AL = ???

    ES:BX -> ???

Program: TRAP is an interrupt call tracer by Patrick Phillipot/Udo Chrosziel

Note:	a separate copy of TRAP is loaded for each interrupt to be traced; thus

  the interrupt number is part of the installation check


INT 2F DAB2 - Beame&Whiteside BWSNMP - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = DAB2h

Return: AX = 00FFh if installed

    BX:CX -> MIB table

Program: BWSNMP is part of the BW-NFS package

SeeAlso: INT 62/AH=00h"ETHDEV"


INT 2F DB00 - ZyXEL ZFAX v2+ - INSTALLATION CHECK

Category: F - FAX

Inp.:

AX = DB00h

Return:	AL = 5Bh if installed (v2.x)

    ES:BX -> ???

AX = 00DBh if installed (v3)

    ES:BX -> ZFAX configuration table (see #1761)

Program: ZFAX is the bundled FAX software which comes with the ZyXEL model

  fax modems.

SeeAlso: AX=CBDCh,AX=DA00h,AX=DB01h,AX=DB02h,AX=DB03h


INT 2F DB00 - WINGO.COM - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = DB00h

Return: AX = FFFFh if installed

CX = 5749h ('WI') if installed

DX = 4E47h ('NG') if installed

    ES = segment of resident code

Program: WINGO.COM is TSR for starting Windows programs from DOS

  prompt (together with companion Windows program

  WINSTART.EXE) written by Douglas Boling, contributing editor of

  PC Magazine

Range:	AH=DBh to AH=FFh, selected by scanning for a free multiplex number

SeeAlso: AX=DB01h"WINGO",AX=DB02h"WINGO",AX=DB03h"WINGO",AX=DB04h"WINGO"

SeeAlso: AX=DB05h"WINGO",AX=DB06h"WINGO"


INT 2F DB01 - ZyXEL ZFAX v2+ - UNINSTALL

Category: F - FAX

Inp.:

AX = DB01h

Return: AX = status

    0000h successful

    0001h ZFAX is busy

    0002h another program resident above ZFAX

Note:	this function unhooks the vectors taken by the ZFAX TSR if they have

  not been hooked by other TSRs and releases the TSR's memory

ZFAX v2.x crashes the contributor's machine when this function is

  called

SeeAlso: AX=DA01h,AX=DB00h


INT 2F DB01 - WINGO.COM - SET CALLBACK FUNCTION POINTER

undocumented function

Category: U - resident utilities

Inp.:

AX = DB01h

CX:DX -> new callback function

Return: AX = 0000h

CX:DX -> end of resident code (stack ???)

Desc:	the callback function is used for WINGO <-> WINSTART communication

SeeAlso: AX=DB00h"WINGO",AX=DB02h"WINGO",AX=DB03h"WINGO",AX=DB04h"WINGO"

SeeAlso: AX=DB05h"WINGO",AX=DB06h"WINGO"


INT 2F DB02 - ZyXEL ZFAX v2.x - DISABLE

Category: F - FAX

Inp.:

AX = DB02h

Return: AL = 00h

SeeAlso: AX=DA02h,AX=DB00h,AX=DB03h


INT 2F DB02 - WINGO.COM - RESET CALLBACK FUNCTION POINTER

undocumented function

Category: U - resident utilities

Inp.:

AX = DB02h

Return: AX = 0000h

Desc:	the callback function is used for WINGO <-> WINSTART communication

SeeAlso: AX=DB00h"WINGO",AX=DB01h"WINGO",AX=DB03h"WINGO",AX=DB04h"WINGO"

SeeAlso: AX=DB05h"WINGO",AX=DB06h"WINGO"


INT 2F DB03 - ZyXEL ZFAX v2.x - ENABLE

Category: F - FAX

Inp.:

AX = DB03h

Return: AL = 00h

SeeAlso: AX=DA03h,AX=DB00h,AX=DB02h


INT 2F DB03 - WINGO.COM - SET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = DB03h

Return: AX = 0000h

SeeAlso: AX=DB00h"WINGO",AX=DB04h"WINGO",AX=DB05h"WINGO",AX=DB06h"WINGO"


INT 2F DB04 - WINGO.COM - RESET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = DB04h

Return: AX = 0000h

SeeAlso: AX=DB00h"WINGO",AX=DB03h"WINGO",AX=DB05h"WINGO",AX=DB06h"WINGO"


INT 2F DB05 - WINGO.COM - GET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = DB05h

Return: AX = 0000h

DX = unknown flag - 0 or 1

Program: WINGO.COM is TSR for starting Windows programs from DOS

  prompt (together with companion Windows program

  WINSTART.EXE) written by Douglas Boling, contributing editor of

  PC Magazine

SeeAlso: AX=DB00h"WINGO",AX=DB03h"WINGO",AX=DB04h"WINGO"


INT 2F DB06 - WINGO.COM - CALL CALLBACK FUNCTION

undocumented function

Category: U - resident utilities

Inp.:

AX = DB06h

Return: AX = return value of INT 2F/AX=1685h

Note:	uses Windows service INT 2F/AX=1685h (SWITCH VMs AND CALLBACK) to

  call the callback function previously set by AX=DB01h

used for WINGO <-> WINSTART communication

SeeAlso: AX=1685h, AX=DB00h"WINGO",AX=DB01h"WINGO",AX=DB02h"WINGO",

SeeAlso: AX=DB03h"WINGO",AX=DB04h"WINGO",AX=DB05h"WINGO"


INT 2F DB10 - ZyXEL ZFAX v3 - EXECUTE ZFAX MAIN MENU

Category: F - FAX

Inp.:

AX = DB10h


INT 2F DB11 - ZyXEL ZFAX v3 - SEND FAX

Category: F - FAX

Inp.:

AX = DB11h

DS:SI -> filename including path

DS:BX -> remote FAX number

Return:	AX = status (see #1765)

SeeAlso: AX=DB12h,AX=DB13h,AX=DB14h,AX=DB20h,AX=DB21h


INT 2F DB12 - ZyXEL ZFAX v3 - PRINT FAX

Category: F - FAX

Inp.:

AX = DB12h

DS:SI -> filename, including path

Return: AX = status

SeeAlso: AX=DB11h,AX=DB13h,AX=DB14h


INT 2F DB13 - ZyXEL ZFAX v3 - CONVERT FAX

Category: F - FAX

Inp.:

AX = DB13h

DS:SI -> source filename, including path

DS:BX -> destination filename, including path

CX = destination file format

    00h FAX, 01h PCX, 02h TIFF, 03h PRN

Return: AX = status

SeeAlso: AX=DB11h,AX=DB12h,AX=DB14h,AX=DB22h


INT 2F DB14 - ZyXEL ZFAX v3 - VIEW FAX

Category: F - FAX

Inp.:

AX = DB14h

DS:SI -> source filename, including path

Return: AX = status

SeeAlso: AX=DB11h,AX=DB12h,AX=DB14h


INT 2F DB20 - ZyXEL ZFAX v3 - POLL FAX

Category: F - FAX

Inp.:

AX = DB20h

DS:SI -> remote FAX number

Return: AX = status

SeeAlso: AX=DB11h,AX=DB21h


INT 2F DB21 - ZyXEL ZFAX v3 - SEND VOICE

Category: F - FAX

Inp.:

AX = DB21h

DS:SI -> filename including path

DS:BX -> remote phone number

Return:	AX = status

SeeAlso: AX=DB11h,AX=DB20h,AX=DB22h,AX=DB23h,AX=DB24h


INT 2F DB22 - ZyXEL ZFAX v3 - CONVERT VOICE FILE

Category: F - FAX

Inp.:

AX = DB22h

DS:SI -> source filename, including path

DS:BX -> destination filename, including path

CX = destination format

    00h two-bit ADPCM, 01h three-bit ADPCM, 02h VOC

Return:	AX = status

SeeAlso: AX=DB13h,AX=DB20h,AX=DB21h,AX=DB23h


INT 2F DB23 - ZyXEL ZFAX v3 - RECORD VOICE FILE

Category: F - FAX

Inp.:

AX = DB23h

DS:SI -> destination filename, including path

CX = recording channel (0 = telephone line, 1 = microphone/speaker)

DX = voice file format

    00h CELP, 01h two-bit ADPCM, 02h three-bit ADPCM

Return: AX = status

SeeAlso: AX=DB21h,AX=DB22h,AX=DB24h


INT 2F DB24 - ZyXEL ZFAX v3 - PLAY VOICE FILE

Category: F - FAX

Inp.:

AX = DB24h

DS:SI -> name of voice file, including path

CX = playback channel (0 = telephone line, 1 = microphone/speaker)

Return: AX = status

SeeAlso: AX=DB21h,AX=DB22h,AX=DB24h


INT 2F DB25 - ZyXEL ZFAX v3 - ANSWER MODEM WITH VOICE SYSTEM

Category: F - FAX

Inp.:

AX = DB25h

Return: AX = status

SeeAlso: AX=DB21h,AX=DB22h,AX=DB26h,AX=DB27h,AX=DB28h


INT 2F DB26 - ZyXEL ZFAX v3 - DIAL PHONE

Category: F - FAX

Inp.:

AX = DB26h

DS:SI -> remote phone number

Return: AX = status

SeeAlso: AX=DB25h


INT 2F DB27 - ZyXEL ZFAX v3 - RECEIVE FAX - ANSWER MODEM AND SET TO FAX MODE

Category: F - FAX

Inp.:

AX = DB27h

Return: AX = status

SeeAlso: AX=DB25h,AX=DB28h


INT 2F DB28 - ZyXEL ZFAX v3 - RECEIVE FAX DATA - ANSWER MODEM IN MULTI-AUDIO MODE

Category: F - FAX

Inp.:

AX = DB28h

Return: AX = status

SeeAlso: AX=DB25h,AX=DB27h,AX=DB31h


INT 2F DB31 - ZyXEL ZFAX v3 - SEND DATA - DIAL NUMBER AND UPLOAD FILE WITH ZMODEM

Category: F - FAX

Inp.:

AX = DB31h

DS:SI -> source file name, including path

DS:BX -> remote data number

Return: AX = status

SeeAlso: AX=DB00h,AX=DB28h


INT 2F DB40 - ZyXEL ZFAX v3 - INTERNAL TERMINAL

Category: F - FAX

Inp.:

AX = DB40h

Return: AX = status

SeeAlso: AX=DB00h


INT 2F DC00 - GOLD.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = DC00h

Return: AL = state

    00h not installed

    FFh installed

Program: GOLD is a TSR by Bob Eager which makes the NumLock key return the code

  for F1; the purpose is to improve Kermit's VTxxx emulation


INT 2F DC01 - GOLD.COM - GET STATE

Category: K - keyboard enhancers

Inp.:

AX = DC01h

Return: AL = status

    00h off

    01h on

SeeAlso: AX=DC00h,AX=DC02h


INT 2F DC02 - GOLD.COM - SET STATE

Category: K - keyboard enhancers

Inp.:

AX = DC02h

DL = new state

    00h off

    01h on

Return: AL = 00h (OK)

SeeAlso: AX=DC01h


INT 2F DD-- - CappaCom programs - API

Category: t - TSR libraries

Inp.:

AH = DDh

AL = 00h general installation check

    Return: AL = FFh if any CappaCom programs are resident

AL = FEh get info

    Return: ES:BX -> TSR info list (see #1766)

AL = program identifier

    BH = function

FDh get version

    Return: BX = version

FFh installation check

    Return: AL = FFh if installed

BX = version

ES = segment of resident code

others vary by program

Return: AL = status

    bit 7 set on error

    AL = 81h unknown function

Note:	CappaCom was originally SoftCom but changed its name due to a trademark

  conflict

Index:	installation check;SoftCom programs

Index:	installation check;CappaCom programs


INT 2F DD-- - MIXFIX.EXE - API

Category: - - (none)

Inp.:

AH = DDh

AL = function

    00h installation check

Return: AX = 00DDh if installed

    BX = version (BH = major, BL = minor)

    41h/61h get From: address

Return: AX = 0001h

ES:BX -> ASCIZ 4d address of mail sender ("1:2/3.4")

    49h/69h get To: address

Return: AX = 0001h

ES:BX -> ASCIZ 4d address of recipient ("1:2/3.4")

    4Ah/6Ah get subject of mail

Return: AX = 0001h

ES:BX -> ASCIZ subject of handled mail

    4Dh/6Dh get mail name

Return: AX = 0001h

ES:BX -> ASCIZ full name of current mail file

    4Eh/6Eh get From: field

Return: AX = 0001h

ES:BX -> ASCIZ From: field of mail (mail sender's name)

Program: MIXFIX by "KIV without Co" is a FidoNet mail robot which may execute

  other programs for mail handling.  The called programs may use the

  services described here to retrieve information about the mail being

  handled.

Index: installation check;MIXFIX.EXE


INT 2F DD-- - xDISK v3.32+ - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AH = DDh

BX = 7844h ('xD')

CX = 4953h ('IS')

DX = 4B3Fh ('K?')

AL = desired drive (01h-1Ah) or 00h to check for xDISK on any drive

ES:DI -> 25-byte data buffer (see #1767)

Return: AX = DDFFh if installed (on specified drive if AL nonzero on entry)

   BX = 87BBh

   DX = B4C0h

   ES:DI buffer filled

CX,CF destroyed

SeeAlso: INT 21/AX=4404h"xDISK",INT 21/AX=4405h"xDISK"


INT 2F DE00 - Novell Netware - RPRINTER, NPRINTER - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = DE00h

BL = 00h

Return: AL = FFh If Rprinter/Nprinter Installed

BX -> Program Segment Prefix N/Rprinter.exe


INT 2F DE00 - DESQview v2.26+ External Device Interface - INSTALLATION CHECK

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE00h

BX = 4456h ("DV")

CX = 5844h ("XD")

DX = 4931h ("I1")

Return: AL = FFh if installed (even if other registers do not match)

if BX,CX, and DX were as specified on entry,

    BX = 4845h ("HE")

    CX = 5245h ("RE")

    DX = 4456h ("DV")

Range:	AH=C0h to AH=FFh, selected by scanning AH=DEh-FFh, then AH=C0h-DDh

Note:	the XDI handler should not issue any DOS or BIOS calls, nor should it

  issue DESQview API calls other than those allowed from hardware ints

SeeAlso: AX=DE02h,INT 15/AX=5400h


INT 2F DE01 - DESQview v2.26+ External Device Interface - DRIVER CUSTOM SUBFUNCTION

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE01h

BX = driver ID

other registers as needed by driver

Notes:	XDI drivers should pass this call through to previous handler if ID

  does not match

DESQview never calls this function


INT 2F DE01 - Quarterdeck QDPMI.SYS v1.0 - INSTALLATION CHECK

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE01h

BX = 4450h ("DP")

CX = 4D49h ("MI")

DX = 3039h ("09")

Return: AL = FFh if installed

    BX = 4D42h ("MB")

    CX = 4921h ("I!")

    DX = 8F4Fh

    ES:DI -> filename of DPMI host overlay

Note:	the installation check consists of testing for the existence of the

  character device QDPMI$$$

SeeAlso: INT 2F/AX=1687h,INT 31/AX=0000h

Index:	installation check;QDPMI


INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, Ralf Brown's XDI drivers

Category: U - resident utilities

Inp.:

AX = DE01h

BX = 5242h ("RB")

CX:DX = program identifier

656F7000h ("eop",0) for DVeop

Return: AX = 5242h ("RB") if installed

    ES:BX -> data or entry point (see #1768)

    CX = version number (CH = major, CL = minor)


INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, DVTXDI.COM

Category: U - resident utilities

Inp.:

AX = DE01h

BX = 7474h

CL = function

    00h installation check

Return: AL = FFh

    01h get process handle

DX = keys on Open Window menu (DL = first, DH = second)

Return: AX = process handle or 0000h if not running

    02h (v1.3+) set TMAN handle

DX = TMAN process handle

    03h (v1.3+) set open keys to ignore on next CL=01h call

DX = keys on Open Window menu (DL = first, DH = second)

Return: BX = 4F4Bh ("OK")

DL destroyed

Note:	DVTXDI is distributed as part of the shareware products DVTree (DOS

 shell/DESQview process manager) and DVTMAN by Mike Weaver

Index:	installation check;DVTXDI


INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, DVSIXDI.COM

Category: U - resident utilities

Inp.:

AX = DE01h

BX = 7575h

CX = function

    0000h installation check

Return: AX = 00FFh if installed

    0001h turn on notification (currently unused)

Return: AX = 0001h

    0002h turn off notification (currently unused)

Return: AX = 0001h

    0003h get process information

Return: AX = status

    0000h failed

    0001h successful

BX = last instantaneous time slice

    in 1/100s (v1.10)

    in 1/18s (v1.11+)

CX = number of processes

DX = number of "(starting)" records (v2.00+)

SI = number of records in process info array

      (v2.00+) (always 15 for v1.x)

ES:DI -> process info array (see #1769,#1770)

    0004h get version

Return: AH = major version

AL = minor version

    0005h (v1.10+) get time since DESQview started

Return: DX:AX = 1/100s since DV start (v1.10)

DX:AX = 1/18s since DV start (v1.11+)

    0006h (v1.10+) get number of task switches

Return: DX:AX = total task switches

CX = task switches in last instantaneous interval

Notes:	DVSIXDI is part of the DVSI (DESQview System Information) package by

  Daniel J. Bodoh

for v1.00, function 0003h allocates common memory, which the caller

  must deallocate after reading the process information; only the

  currently used records are placed in the buffer

for v1.10+, function 0003h merely returns a pointer to the internal

  array of process information; the caller should make a copy of the

  array while inside a critical section (see INT 15/AX=101Bh).	Only

  those records with bit 7 of the first byte set are valid.

Index:	installation check;DVSIXDI


INT 2F DE01 - DESQview v2.26+ XDI - DVXMS.DVR - ???

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE01h

BX = FFFEh

CX = 4D47h ("MG")

DX = 0052h (0,"R")

Return: AL = FFh

DX = 584Dh


INT 2F DE02 - DESQview v2.26+ External Dev Interface - DV INITIALIZATION COMPLETE

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE02h

BX = mapping context of DESQview

DX = handle of DESQview system task

Note:	driver should pass this call to previous handler after doing its work

SeeAlso: AX=DE03h,AX=DE0Fh,INT 15/AX=5400h


INT 2F DE03 - DESQview v2.26+ External Dev Interface - DV TERMINATION

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE03h

BX = mapping context of DESQview

DX = handle of DESQview system task

Notes:	driver should pass this call to previous handler before doing its work

DESQview makes this call when it is exiting, but before unhooking any

  interrupt vectors

SeeAlso: AX=DE02h,AX=DE0Fh,INT 15/AX=5407h


INT 2F DE04 - DESQview v2.26+ External Dev Interface - ADD PROCESS

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE04h

BX = mapping context of new process (see #0306 at INT 15/AX=1016h)

DX = handle of process

Return: nothing

Notes:	XMS XDI handler (installed by default) allocates a 22-byte record

  (see #1772) from "common" memory to control access to XMS memory

all DOS, BIOS, and DV API calls are valid in handler

driver should pass this call to previous handler after processing it

SeeAlso: AX=DE05h,AX=DE06h,INT 15/AX=5401h


INT 2F DE05 - DESQview v2.26+ External Dev Interface - REMOVE PROCESS

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE05h

BX = mapping context of process (see #0306 at INT 15/AX=1016h)

DX = handle of last task in process

Return: nothing

Notes:	XMS XDI handler releases the structure allocated by AX=DE04h

driver should pass this call to previous handler before processing it

all DOS, BIOS, and DV API calls except those generating a task switch

  are valid in handler

SeeAlso: AX=DE04h,AX=DE07h,INT 15/AX=5402h


INT 2F DE06 - DESQview v2.26+ External Dev Interface - CREATE TASK

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE06h

BX = mapping context of process containing task

DX = handle of new task

Notes:	driver should pass this call to previous handler after processing it

all DOS, BIOS, and DV API calls are valid in handler


INT 2F DE07 - DESQview v2.26+ External Dev Interface - TERMINATE TASK

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE07h

BX = mapping context of process containing task

DX = handle of task

Notes:	driver should pass this call to previous handler before processing it

all DOS, BIOS, and DV API calls except those generating a task switch

  are valid in handler

SeeAlso: AX=DE04h,AX=DE06h,AX=DE10h


INT 2F DE08 - DESQview v2.26+ External Dev Interface - SAVE STATE

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE08h

BX = mapping context of task being switched from

      (see #0306 at INT 15/AX=1016h)

DX = handle of task being switched from

Notes:	invoked prior to task swap, interrupts, etc

driver should pass this call to previous handler after processing it

SeeAlso: AX=DE09h,INT 15/AX=5403h,INT 15/AX=DE27h


INT 2F DE09 - DESQview v2.26+ External Dev Interface - RESTORE STATE

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE09h

BX = mapping context of task being switched to

      (see #0306 at INT 15/AX=1016h)

DX = handle of task being switched to

Notes:	state is restored except for interrupts

driver should pass this call to previous handler before processing it

SeeAlso: AX=DE08h,INT 15/AX=5404h,INT 15/AX=DE27h


INT 2F DE0A - DESQview v2.26+ External Dev Interface - CHANGE KEYBOARD FOCUS

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Ah

BX = mapping context of task receiving focus

DX = handle of running task

Notes:	driver should pass this call to previous handler before processing it

this call often occurs inside a keyboard interrupt

DV 2.42 does not provide this call to XDI handlers running inside a

  window; instead, it directly calls the INT 2F handler which was

  active at the time DV started

SeeAlso: INT 15/AX=DE26h,INT 15/AX=DE2Fh


INT 2F DE0B - DESQview v2.26+ External Dev Interface - DVP PROCESSING COMPLETE

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Bh

BX = mapping context of DESQview system task

CX = number of system memory paragraphs required for the use of all

      XDI drivers (DV will add this to system memory in DVP buffer)

DX = handle of DESQview system task

SI = mapping context of new process if it starts

ES:DI -> DVP buffer

Return: CX incremented as needed

Notes:	once DV invokes this function, the DVP buffer contents may be changed

driver should pass this call to previous handler before processing it


INT 2F DE0C - DESQview v2.26+ External Dev Interface - SWAP OUT PROCESS

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Ch

BX = mapping context of task being swapped out

      (see #0306 at INT 15/AX=1016h)

DX = handle of DESQview system task

Note:	driver should pass this call to previous handler after processing it


INT 2F DE0D - DESQview v2.26+ External Dev Interface - SWAP IN PROCESS

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Dh

BX = mapping context of process just swapped in

      (see #0306 at INT 15/AX=1016h)

DX = handle of DESQview system task

Note:	driver should pass this call to previous handler before processing it


INT 2F DE0E - DESQview v2.26+ External Dev Interface - DVP START FAILED

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Eh

BX = mapping context of DESQview system task

DX = handle of DESQview system task

SI = mapping context of failed process (same as for call to AX=DE0Bh)

Note:	driver should pass this call to previous handler after processing it


INT 2F DE0F - DESQview v2.50+ External Dev Interface - INITIALIZE DV

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE0Fh

Note:	DESQview 2.50+ calls this function just before it completes its

  initialization.  At the time of the call, DESQview has not yet

  changed any interrupt vectors

SeeAlso: AX=DE02h


INT 2F DE10 - DESQview v2.50+ External Dev Interface - FREE TASK

callout or callback (usually hooked rather than called)

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DE10h

BX = mapping context of process (see #0306 at INT 15/AX=1016h)

DX = task handle of process

Note:	DESQview 2.50+ calls this function before it frees the task; it is

  similar to AX=DE07h but allows the XDI handler to make calls which

  cause context switches

SeeAlso: AX=DE06h,AX=DE07h


INT 2F DF00 - HyperWare programs - INSTALLATION CHECK

Category: c - caches/spoolers

Inp.:

AX = DF00h

BX = product code (see #1773)

CX = 0000h

DX = 0000h

Return: AL = status

    00h not installed

    FFh multiplex number in use

CX = 5948h ('YH') if selected product installed

---HyperDisk---

BX = code segment of resident portion

DX = HyperDisk local data version

Program: HyperDisk is a shareware disk cache by HyperWare (Roger Cross)

Range:	AH=C0h to AH=FFh, selected by scanning AH=DFh, then AH=C0h-FFh

SeeAlso: INT 13/AX=8EEDh

Index:	installation check;HyperDisk|installation check;HyperStb

Index:	installation check;HyperKey|installation check;HyperScreen

Index:	HyperDisk;installation check|HyperStb;installation check

Index:	HyperKey;installation check|HyperScreen;installation check


INT 2F DF00 - Quarterdeck TELTSR.COM - INSTALLATION CHECK

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DF00h

BX = 5445h ('TE')

CX = 4C54h ('LT')

DX = 5352h ('SR')

Return: BX = 5454h ('TT') if installed

CX = 494Eh ('IN') if installed

DX = 5454h ('ST') if installed

Program: TELTSR is a Telnet TSR included with Quarterdeck's DESQview/X v2.00

  which provides an INT 14h interface to the network

Range:	AH=DEh to AH=FFh and AH=C0h to AH=DDh, selected by scanning

SeeAlso: AX=DF01h"TELTSR",AX=DF02h"TELTSR",INT 14/AH=56h


INT 2F DF01 - MSG.COM - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = DF01h

BX = 0000h

Return: AX = FDFFh if installed

   BX = segment of resident code

Program: MSG.COM is a TSR for intercepting incoming Novell broadcast

  messages written by Gary Dobbins (Dobbins@Arizona.Edu)


INT 2F DF01 - HyperDisk v4.50+ - GET CURRENT CACHE STATE

Category: c - caches/spoolers

Inp.:

AX = DF01h

BX = 4448h ('DH')

Return: AX = 0000h if function supported

    BX = number of cache buffers in use

    CX = number of cache buffers which have been modified

    DL = caching flags (see #1774)

Range:	AH=C0h to AH=FFh, selected by scanning AH=DFh, then AH=C0h-FFh

SeeAlso: AX=DF00h,AX=DF02h


INT 2F DF01 - Quarterdeck TELTSR.COM - CLOSE CONNECTION

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DF01h

Return: nothing???

Note:	invokes the DESQview/X socket API (see INT 15/AX=DE2Eh) function 0006h

  to close the socket corresponding to the file handle set with

  AX=DF02h; NOP if no file handle was ever set

SeeAlso: AX=DF00h"TELTSR",AX=DF02h"TELTSR"


INT 2F DF02 - HyperDisk v4.50+ - SET CACHE STATE

Category: c - caches/spoolers

Inp.:

AX = DF02h

BX = 4448h ('DH')

DL = new caching flags (see #1774)

Return: AX = 0000h if supported

    BX = number of cache buffers in use

    CX = number of cache buffers which have been modified

    DL = previous caching flags (see #1774)

Program: HyperDisk is a shareware disk cache by HyperWare (Roger Cross)

Range:	AH=C0h to AH=FFh, selected by scanning AH=DFh, then AH=C0h-FFh

SeeAlso: AX=DF00h,AX=DF01h


INT 2F DF02 - Quarterdeck TELTSR.COM - OPEN CONNECTION

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = DF02h

BX = file handle for connection's socket

Return: AX = status

    0000h successful

    FFFFh no more room in TELTSR's JFT

Program: TELTSR is a Telnet TSR included with Quarterdeck's DESQview/X v2.00

Notes:	the indicated file handle becomes owned by TELTSR, and is closed in

  the caller's JFT

multiple calls to this function will override the previous assignment

  without closing the previous file; use AX=DF01h before further calls

SeeAlso: AX=DF00h"TELTSR",AX=DF01h"TELTSR"


INT 2F E000 - SETDRVER.COM v2.10+ - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = E000h

Return: AX = 4A52h ("JR") if present

Program: SETDRVER is a public domain TSR by Jacob Rieper which sets the

  apparent DOS version analogously to MS-DOS SETVER

Note:	this installation check differs from the usual one of returning AL=FFh

SeeAlso: AX=E001h,INT 21/AH=52h


INT 2F E000 - StuffIt v3.21+ - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = E000h

DX = 5354h ("ST")

Return: AL = FFh if installed

    BX = version (BH = major, BL = BCD minor)

    DX = segment of resident code

Program: StuffIt is a freeware delayed keyboard stuffer by Terje Mathisen


INT 2F E001 - SETDRVER.COM v2.10+ - GET SETDRVER VERSION

Category: U - resident utilities

Inp.:

AX = E001h

Return: AH = major version

AL = minor version

SeeAlso: AX=E000h


INT 2F E002 - SETDRVER.COM v2.10+ - GET ORIGINAL DOS VERSION INFO

Category: U - resident utilities

Inp.:

AX = E002h

Return: AL = FFh if successful

    BH = major DOS version

    BL = minor DOS version

    CH = DOS version flag

    CL = OEM number

    DH = major DR-DOS version number (FFh if unknown)

    DL = minor DR-DOS version number (FFh if unknown)

SeeAlso: AX=E003h,AX=E007h,INT 21/AH=30h


INT 2F E003 - SETDRVER.COM v2.10+ - RESET INTERNAL VARIABLES

Category: U - resident utilities

Inp.:

AX = E003h

BH = new major DOS version

BL = new minor DOS version

CH = new DOS version flag

CL = new DOS revision number

DH = new OEM number

SeeAlso: AX=E002h


INT 2F E004 - SETDRVER.COM v2.10+ - ENABLE TSR

Category: U - resident utilities

Inp.:

AX = E004h

Return: AL = FFh if successful

SeeAlso: AX=E000h,AX=E005h,AX=E006h


INT 2F E005 - SETDRVER.COM v2.10+ - DISABLE TSR

Category: U - resident utilities

Inp.:

AX = E005h

Return: AL = FFh if successful

SeeAlso: AX=E000h,AX=E004h,AX=E006h


INT 2F E006 - SETDRVER.COM v2.10+ - GET TSR STATUS

Category: U - resident utilities

Inp.:

AX = E006h

Return: AL = FFh if successful

    BL = status

01h resident and active

02h resident and inactive


INT 2F E007 - SETDRVER.COM v2.10+ - GET TaskMAX STATUS AT INSTALLATION

Category: U - resident utilities

Inp.:

AX = E007h

Return: AL = FFh if successful

    BL = status

00h if TaskMAX not loaded before SETDRVER

FFh if TaskMAX was loaded before SETDRVER

SeeAlso: AX=E003h


INT 2F E0-- - SETDRVER.COM - RESERVED FOR FUTURE USE

Category: U - resident utilities

Inp.:

AH = E0h

AL = 08h-10h


INT 2F E100 - Phantom2 v1.1+ - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = E100h

Return: AX = 0001h if installed

    DS:SI -> ASCIZ hotkey name

    DS:DI -> ASCIZ recording filename

Program: Phantom of the Keyboard II is a shareware keystroke recorder/replayer

  by P2 Enterprises

SeeAlso: AX=E101h,AX=E102h,AX=E103h,AX=E300h

Index:	hotkeys;Phantom2


INT 2F E101 - Phantom2 v1.1+ - FUNCTION REQUEST

Category: K - keyboard enhancers

Inp.:

AX = E101h

BX = function mask (see #1775)

CX = code for hotkey (as returned by INT 16/AH=00h) if BX bit 6 set

DS:DX -> ASCIZ filespec if BX bit 7 set

SeeAlso: AX=E100h

Index:	hotkeys;Phantom2


INT 2F E102 - Phantom2 v1.1+ - UNINSTALL

Category: K - keyboard enhancers

Inp.:

AX = E102h

Return: AX = status

    0001h removal successful

    0002h not installed as TSR

    FFFFh disabled but not removed

SeeAlso: AX=E100h


INT 2F E103 - Phantom2 v2.8 - SET ??? FLAG

Category: K - keyboard enhancers

Inp.:

AX = E103h

Return: AX = 0001h

SeeAlso: AX=E100h


INT 2F E200 - SecureDevice - LOGIN TO DRIVE

Category: y - security

Inp.:

AX = E200h

DL = drive number (0 = A:)

DS:SI -> 104-byte key

Return: AL = status

    00h unable to determine key's validity

    01h key is valid

    FFh key is invalid

Program: SecureDevice is a copylefted device driver by Max Loewenthal and

  Arthur Helwig which turns one or more disk files into encrypted

  logical drives

SeeAlso: AX=E201h,AX=E203h,AX=E209h


INT 2F E201 - SecureDevice - GET INFORMATION

Category: y - security

Inp.:

AX = E201h

DX = driver index (0000h = first loaded)

Return: AL = number of volumes handled by driver

DL = drive number of first volume (00h = A:)

SeeAlso: AX=E200h,AX=E203h,AX=E209h


INT 2F E203 - SecureDevice - DESTROY PASSWORD (LOGOUT FROM DRIVE)

Category: y - security

Inp.:

AX = E203h

DL = drive number (00h = A:) or FFh for all drives

Return: nothing

SeeAlso: AX=E200h,AX=E209h


INT 2F E209 - SecureDevice - INSTALLATION CHECK

Category: y - security

Inp.:

AX = E209h

DX = 0000h

Return: AX = 1DEAh if installed

    DX = number of drivers installed


INT 2F E300 - ANARKEY.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = E300h

Return: AL = state

    00h not installed

    FEh if installed but suspended (v3.0+)

    FFh installed

Program: ANARKEY.COM is a commandline recall program by Steven Calwas

Range:	AH=C0h to AH=FFh, selected by commandline switch

SeeAlso: AX=E100h,AX=E301h,AX=E302h,AX=E303h,AX=E304h,AX=E305h,AX=E306h

SeeAlso: AX=E307h,INT 66"Newkey"


INT 2F E300 - Blank - INSTALLATION CHECK

Category: V - video

Inp.:

AX = E300h

Return: AL = FFh if installed

    ES = resident code segment

Program: Blank is a shareware screen blanker by Yonah Schmeidler

Note:	AH=E3h is the default, which may be reconfigured by the installation

  program in the registered version

SeeAlso: AH=93h,AX=C050h,INT 14/AX=AA01h

Index:	screen saver;Blank


INT 2F E301 - ANARKEY.COM v2+ - GET ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E301h

Return: DX:BX -> ??? (see #1776,#1777)

SeeAlso: AX=E300h


INT 2F E302 - ANARKEY.COM v3+ - ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E302h

BL = ???

Return: ???

SeeAlso: AX=E300h


INT 2F E303 - ANARKEY.COM v3+ - ANARKMD API

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E303h

BL = function

    01h toggle insert mode

    02h display contents of history buffer

    03h write history buffer to file

ES:DX -> file name

    04h clear history buffer

    05h undefine all aliases

    06h show aliases

    07h list programs using Unix switchar

    08h jump to bottom of history buffer

    09h (v4.0) add string to history buffer

ES:DX -> ASCIZ string

    0Ah (v4.0) ???

ES:DX -> ???

    0Bh (v4.0) copy string to edit buffer for use as next input line

ES:DX -> ASCIZ string

    0Ch (v4.0) ???

    0Dh (v4.0) copy ??? to ???

    0Eh (v4.0) ???

    0Fh (v4.0) ???

    10h (v4.0) set ??? flag

    11h (v4.0) display error message about running in EMS under Windows

Return: ???

SeeAlso: AX=E300h


INT 2F E304 - ANARKEY.COM v2+ - ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E304h

BL = ???

Return: ???

SeeAlso: AX=E300h


INT 2F E305 - ANARKEY.COM v3+ - ENABLE/SUSPEND ANARKEY

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E305h

BL = new state

    01h suspended

    00h enabled

SeeAlso: AX=E300h


INT 2F E306 - ANARKEY.COM v4.0 - GET ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E306h

Return: AX = ???

SeeAlso: AX=E300h


INT 2F E307 - ANARKEY.COM v4.0 - GET ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = E307h

Return: AX = ???

BL = ???

SeeAlso: AX=E300h


INT 2F E44D - NDOS - API

Category: l - shells/command interpreters

Inp.:

AX = E44Dh

Program: NDOS is a version of 4DOS licensed to Symantec for inclusion in the

  Norton Utilities

Note:	as NDOS is a licensed version of 4DOS v3.03, the API is identical to

  that for 4DOS, except that AH=E4h instead of D4h and the installation

  check returns AX=44EEh instead of AX=44DDh

SeeAlso: AX=D44Dh,AX=E44Eh


INT 2F E44E - NDOS - AWAITING USER INPUT

callout or callback (usually hooked rather than called)

Category: l - shells/command interpreters

Inp.:

AX = E44Eh

BX = condition

    0000h NDOS is ready to display prompt

    0001h NDOS has displayed the prompt, about to accept user input

Return: handler must preserve SI, DI, BP, SP, DS, ES, and SS

SeeAlso: AX=E44Dh


INT 2F E44F - NDOS v4.0+ - KSTACK.COM - INSTALLATION CHECK

Category: K - keyboard enhancers

Inp.:

AX = E44Fh

BX = 0000h

Return: AX = 44EEh if installed

Program: NDOS is a version of 4DOS licensed to Symantec for inclusion in the

  Norton Utilities

Note:	this function is also supported by ANSIPLUS v3.01+ and K3PLUS v6.20+,

  which emulate the 4DOS and NDOS keystack

SeeAlso: AX=D44Fh/BX=0000h,AX=E44Fh/BX=0001h


INT 2F E44F - NDOS v4.0+ - KSTACK.COM - PLACE KEYSTROKES INTO KEYSTACK

Category: K - keyboard enhancers

Inp.:

AX = E44Fh

BX = 0001h

CX = number of keystrokes (01h-FFh)

DS:DX -> keystroke list (one word per keystroke)

Return: AX = status

    0000h successful

    nonzero failed

BX,CX,DX destroyed

Notes:	the keystrokes are the exact values to return from subsequent calls to

  INT 16 with AH=00h,01h,10h, or 11h, with the following exceptions:

0000h causes subfunctions 01h and 11h to indicate an empty

      keyboard buffer

FFFFh is followed by a word indicating the number of clock

      ticks to delay before the next faked keystroke

v4.00 KSTACK overwrites any unread keystrokes from the previous

  invocation, and does not range-check CX; it will overwrite memory

  following the resident portion if CX is greater than 100h.

this function is also supported by ANSIPLUS v3.01+ and K3PLUS v6.20+,

  which emulate the 4DOS and NDOS keystack

SeeAlso: AX=E44Fh/BX=0000h,INT 16/AH=00h,INT 21/AX=4403h


INT 2F E77E - CTDEMN - INSTALLATION CHECK

Category: f - file manipulation

Inp.:

AX = E77Eh

BX = 0000h

CX = 4F4Dh ('OM')

DX = 5453h ('TS')

Return: AX = 7EE7h if installed

    BX = resident code segment

    CX = 6F6Dh ('om')

    DX = 7473h ('ts')

Program: CTDEMN is a file daemon TSR by Simultan AG


INT 2F ED00 - Phar Lap DOS EXTENDERS - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = ED00h

BL = DOS extender ID (see #1778)

Return: AL = status

    00h not installed

    FFh installed

SI = 5048h ("PH")

DI = 4152h ("AR")

CH = major version number

CL = minor version number

DX = flags

    bit 0: running under DPMI

    bit 1: running under Phar Lap VMM

if running under DPMI:

    BX = DPMI version (BH = major, BL = minor)

SeeAlso: AH=A1h,AX=F100h,AX=FBA1h


INT 2F ED03 - Phar Lap 386/DOS-Extender v4.1 - GET EXTENDER ENTRY POINT

available only in real or V86 mode

Category: E - DOS extenders

Inp.:

AX = ED03h

CX = real-mode code segment

DX = real-mode data segment

Return: CF clear if successful

    CX = protected-mode code segment selector

    DX = protected-mode data segment selector

    ES:DI -> real-mode entry point for calling protected-mode functions

      (see INT 21/AX=250Dh)

CF set on error

    AX = error code

0008h unable to allocate LDT descriptors


INT 2F ED10 - Pharlap DOS Extender - ???

Category: E - DOS extenders

Inp.:

AX = ED10h

BL = 05h

ES:SI -> ??? structure

Return:	AX = ???

SI = ???

DI = ???

SeeAlso: AX=ED00h,AX=ED11h


INT 2F ED11 - Pharlap DOS Extender - FATAL EXIT TO REAL MODE ???

Category: E - DOS extenders

Inp.:

AX = ED11h

BL = 05h

CX = ???

DX = ???

ES:SI -> ??? structure

SS:SP = new stack ???

Return: ???

Note:	called immediately prior to terminating program with INT 21/AX=4CFFh

SeeAlso: AX=ED00h,AX=ED10h


INT 2F ED58 - K5.COM - INSTALLATION CHECK

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = ED58h

Return: AX = 000Dh if installed

    BX = 9999h if driver active

    ???

Program: K5 is an extended keyboard driver by Martin Gerdes, based on his K3

SeeAlso: INT 16/AX=AF20h


INT 2F ED80 - Phar Lap 286|DOS Extender Lite v2.5 - ???

Category: E - DOS extenders

Inp.:

AX = ED80h

BL = DOS extender ID (see #1778)

SI = 5048h ("PH")

DI = 4152h ("AR")

???

Return: ???


INT 2F EDC8 - Novell ??? - INSTALLATION CHECK???

Category: - - (none)

Inp.:

AX = EDC8h ('EDC' = Novell European Development Center)

BX = 0000h

CX = 0000h

DX = 1234h

Return: ???

Desc:	called by Novell DOS 7 LOCK command during installation; purpose

  unknown


INT 2F EE00 - GRIDLOC.EXE - INSTALLATION CHECK

Category: y - security

Inp.:

AX = EE00h

Return: AL = FFh if installed

Program: GRIDLOC is a PC security program by Intelligent Security Systems, Inc.

SeeAlso: INT 21/AH=40h"NB.SYS"


INT 2F EE00 - XVIEW - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = EE00h

Return: AX = 00FFh if installed

Program: XVIEW is a hypertext viewer by Flambeaux Software, Inc.


INT 2F EE00 - WEB v4.02 - INSTALLATION CHECK

Category: N - network

Inp.:

AX = EE00h

Return: AL = status

    00h not installed

    FFh installed

Program: WEB is an IPX-based peer-to-peer network by Webcorp.

SeeAlso: AH=EEh"WEB",AX=EEF0h


INT 2F EE01 - XVIEW - POP UP GIVING TOPIC SEARCH KEYWORD

Category: U - resident utilities

Inp.:

AX = EE01h

DS:DX -> ASCIZ string containing case-insensitive keyword to look up

Return: AX = status (see #1779)

Note:	the specified keyword should be a hyperlink in the _IndexPage of some

  database; the current database is searched first

SeeAlso: AX=EE00h"XVIEW",AX=EE02h,AX=EE03h,AX=EE04h,AX=EE06h


INT 2F EE02 - XVIEW - POP UP GIVING A PAGE NUMBER

Category: U - resident utilities

Inp.:

AX = EE02h

DX = physical page number or anchor page number (see #1780)

Return: AX = status (see #1779)

Note:	physical page numbers are assigned by the hypertext compiler, and

  will change if a page is inserted in the middle

SeeAlso: AX=EE00h"XVIEW",AX=EE01h,AX=EE05h,AX=EE06h


INT 2F EE03 - XVIEW - POP UP GIVING FILENAME AND SEARCH TOPIC OR PAGE NUMBER

Category: U - resident utilities

Inp.:

AX = EE03h

DS:DX -> data packet (see #1781)

Return: AX = status (see #1779)

SeeAlso: AX=EE00h"XVIEW",AX=EE01h,AX=EE02h,AX=EE06h


INT 2F EE04 - XVIEW - POP UP AND READ SCREEN FOR SEARCH TOPIC KEYWORD

Category: U - resident utilities

Inp.:

AX = EE04h

Return: AX = status (see #1779)

Note:	equivalent to the action taken when the user presses the Alt-L hotkey

SeeAlso: AX=EE00h"XVIEW",AX=EE01h,AX=EE03h,AX=EE06h


INT 2F EE05 - XVIEW - POP UP TO MOST-RECENTLY VIEWED PAGE

Category: U - resident utilities

Inp.:

AX = EE05h

Return: AX = status (see #1779)

Note:	equivalent to the action taken when the user presses the Alt-H hotkey

SeeAlso: AX=EE00h"XVIEW",AX=EE02h,AX=EE06h


INT 2F EE06 - XVIEW - WAIT FOR POP-DOWN AND GET EXIT CODE

Category: U - resident utilities

Inp.:

AX = EE06h

Return: AX = status (see also AX=EE01h)

    0001h specified filename is not an xText database

    0002h no databases found

    0003h bad data in file

    0004h memory shortage

    0005h unable to open the requested file

    0007h invalid page number for file

Note:	although this call is not required, the exit code can alert the

  caller to problems; if the call is not made, the program should

  enforce a delay of about 1/2 second to allow the viewer to pop up,

  and should not get keyboard input or attempt disk accesses during

  the delay

SeeAlso: AX=EE00h"XVIEW",AX=EE01h,AX=EE02h,AX=EE03h,AX=EE04h,AX=EE05h


INT 2F EE-- - WEB v4.02 - WEB MODULE INSTALLATION CHECK

Category: N - network

Inp.:

AH = EEh

AL = module ID (see #1782)

Return: AX = 0000h if installed

    ES:DI -> far entry point for module-specific API calls

  (see #1783,#1784,#1785,#1786,#1787)

Program: WEB is an IPX-based peer-to-peer network by Webcorp.

SeeAlso: AX=EE00h"WEB"


INT 2F EEF0 - WEB v4.02 - WEB GENERAL NOTIFICATION

Category: N - network

Inp.:

AX = EEF0h

BX = notification function ID (see #1792)

Return: varies by notification function

Program: WEB is an IPX-based peer-to-peer network by Webcorp.

Note:	the notification functions are used internally by WEB modules to notify

  other modules and external programs of actions or event, and should

  never be called by an application

SeeAlso: AX=EE00h"WEB"


INT 2F F000 - 4MAP - INSTALLATION CHECK

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = F000h

Return: AX = 00FFh

Program: 4MAP is a keybinding program for 4DOS (see AX=D44Dh) by Ho-Ping Tseng

Note:	returns AX=00FFh for any value of AL not listed here

SeeAlso: AX=D44Dh,AX=F001h,AX=F002h


INT 2F F001 - 4MAP - GET KEY MAPPINGS

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = F001h

Return: ES:BX -> key mappings

SeeAlso: AX=F000h


INT 2F F002 - 4MAP - INSERT CHARACTER INTO ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = F002h

BL = character to insert

Return: AX = status

    0000h successful

    0001h buffer full

SeeAlso: AX=F000h,AX=F003h


INT 2F F003 - 4MAP - INSERT CHARACTER INTO ???

undocumented function

Category: K - keyboard enhancers

Inp.:

AX = F003h

BL = character to insert

Return: AX = status

    0000h successful

    0001h buffer full

Program: 4MAP is a keybinding program for 4DOS (see AX=D44Dh) by Ho-Ping Tseng

SeeAlso: AX=F000h,AX=F002h


INT 2F F1-- - MIN-MEM v2.11 - INSTALLATION CHECK

undocumented function

Category: m - memory management

Inp.:

AH = F1h

AL <> F1h

Return: AL = F1h if installed

Program: MIN-MEM is a shareware TSR manager by Biologic which permits up to 24

  popup TSRs to be loaded but swapped out to disk, EMS, or XMS.	 One

  TSR at a time is brought back into memory at the user's request.


INT 2F F100 - DOS EXTENDER INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = F100h

Return: AL = FFh if DOS extender present

    SI = 444Fh ("DO")

    DI = 5358h ("SX")

Note:	supported or soon to be supported by Phar Lap, Rational, Ergo, and IGC

SeeAlso: AH=A1h,AX=ED00h,AX=FBA1h/BX=0081h,INT 15/AX=BF02h


INT 2F F200 - WINX - INSTALLATION CHECK

Category: W - MS Windows

Inp.:

AX = F200h

Return: AX = 00FFh if installed

Program: WINX is a DOS/Windows utilities by Al Williams which can be used to

  launch Windows applications from a DOS Box; it was published in

  "DOS and Windows Protected Mode-Programming with DOS Extenders"

  (Addison-Wesley) and should not be confused with the Windows driver

  of the same name which is part of the DESQview/X package


INT 2F F201 - WINX - RETURN ADDRESS OF SERVER BUFFER

Category: W - MS Windows

Inp.:

AX = F201h

Return: AX = status

    FFFFh if WINX is busy processing a different request

    0000h if successful

BX:CX = address of server buffer (see #1793)


INT 2F F202 - WINX - SET SERVER'S WORKING DIRECTORY

Category: W - MS Windows

Inp.:

AX = F202h

BX:CX -> directory

Return: AX = status

    FFFFh if WINX is busy processing a different request

    0000h if successful

SeeAlso: AX=F200h,AX=F203h


INT 2F F203 - WINX - EXECUTE COMMAND

Category: W - MS Windows

Inp.:

AX = F203h

BX:CX -> command

Return: AX = status

    0000h if successful

    FFFFh if WINX is busy processing a different request

SeeAlso: AX=F200h,AX=F202h


INT 2F F400 - FINDIRQ.COM - INSTALLATION CHECK

Category: G - debuggers/debugging tools

Inp.:

AX = F400h

Return: AL = 01h if installed

Program: FINDIRQ is a program by Rick Knoblaugh published in the 9/28/93 issue

  of PC Magazine; when run as a TSR it can determine which IRQs are

  used only when a device is active

SeeAlso: AX=F401h


INT 2F F401 - PowerLAN - VERSION CHECK

Category: N - network

Inp.:

AX = F401h

Return: ES:BX -> WORD containing 100*version (in decimal)

Program: PowerLAN is by Performance Technology


INT 2F F401 - FINDIRQ.COM - GET HOOKED INTERRUPTS

Category: G - debuggers/debugging tools

Inp.:

AX = F401h

CX = 5121h ('Q!')

Return: AX:DX -> hooked interrupt table (see #1794)

SeeAlso: AX=F400h


INT 2F F700 - AUTOPARK.COM - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = F700h

Return: AL = state

    00h not installed

    FFh installed

Program: AUTOPARK.COM is a resident hard disk parker by Alan D. Jones


INT 2F F701 - AUTOPARK.COM - SET PARKING DELAY

Category: d - disk I/O enhancements

Inp.:

AX = F701h

BX:CX = 32-bit count of 55ms timer ticks


INT 2F F800 - SuperStor PRO 2XON.COM - INSTALLATION CHECK

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = F800h

CX = 4455h ("DU")

DL = 45h ("E")

Return: AL = FFh if installed

    ES:BX -> ASCII signature "Universal Data Exchange"

Program: SuperStor is a disk-compression program by Addstor.

Note:	returns AX=0001h if AL is not 00h or 01h

SeeAlso: AX=1001h,AX=F801h


INT 2F F801 - SuperStor PRO 2XON.COM - UNINSTALL

undocumented function

Category: d - disk I/O enhancements

Inp.:

AX = F801h

CX = 4455h ("DU")

DL = 45h ("E")

ES:BX = return address if successful

Return: at specified address if successfully removed from memory

else

    AL = error code

    ???

Program: SuperStor is a disk-compression program by Addstor.

Note:	returns AX=0001h if AL is not 00h or 01h

SeeAlso: AX=1001h,AX=F800h


INT 2F FB-- - Multiplex - RESERVED BY BORLAND INTERNATIONAL

Category: * - reserved (and not otherwise classified)

Inp.:

AH = FBh

SeeAlso: AX=FB42h/BX=0001h


INT 2F FB-- - Conner Backup Exec AUTORES - API

undocumented function

Category: f - file manipulation

Inp.:

AH = FBh

BL = function number (00h-07h)

???

Return: ???

Program: AUTORES is a resident program launcher for unattended backups


INT 2F FB00 - AutoBraille v1.1A - INSTALLATION CHECK

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB00h

Return: AX = 00FFh if installed

Program: AutoBraille is a shareware text-to-braille converter by KANSYS, Inc.

SeeAlso: INT 10/AX=3800h,INT 14/AX=F0F1h


INT 2F FB00 - Jot-It! v1.50 - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = FB00h

Return: AX = FFFFh if installed

    BX = version (BCD, BH=major, BL=minor)

SeeAlso: AX=FB03h"Jot-It",AX=FB01h"Jot-It"


INT 2F FB01 - AutoBraille v1.1A - ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB01h

???

Return: ???


INT 2F FB01 - Jot-It! v1.50 - GET USER NAME

undocumented function

Category: U - resident utilities

Inp.:

AX = FB01h

Return: DX:BX -> ASCIZ user name

SeeAlso: AX=FB02h"Jot-It"


INT 2F FB02 - AutoBraille v1.1A - ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB02h

Return: AH = ???

AL = ???


INT 2F FB02 - Jot-It! v1.50 - GET MESSAGE DIRECTORY

undocumented function

Category: U - resident utilities

Inp.:

AX = FB02h

Return: DX:BX -> ASCIZ name of directory in which messages are stored

SeeAlso: AX=FB01h"Jot-It"


INT 2F FB03 - AutoBraille v1.1A - GET NEXT ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB03h

Return: AX = ???


INT 2F FB03 - Jot-It! v1.50 - UNINSTALL

undocumented function

Category: U - resident utilities

Inp.:

AX = FB03h

Return: resident code removed from memory

Note:	CAUTION: NO checks are performed to ensure that the interrupt vectors

  being unhooked (08h,09h,28h,2Fh) actually point at the Jot-It! code

SeeAlso: AX=FB00h"Jot-It"


INT 2F FB-- - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AH = FBh

AL = 04h-08h

Return: AX = 0000h


INT 2F FB-- - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AH = FBh

AL = 09h-0Fh (???, 0Eh = COM1, 0Fh = COM2)

Return: ???

Program: AutoBraille is a shareware text-to-braille converter by KANSYS, Inc.


INT 2F FB-- - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AH = FBh

AL = 10h-1Fh

???

Return: ???


INT 2F FB20 - AutoBraille v1.1A - SET ??? FLAGS

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB20h

BL = flags to set

SeeAlso: AX=FB21h"AutoBraille"


INT 2F FB21 - AutoBraille v1.1A - CLEAR ??? FLAGS

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB21h

BL = flags to clear

SeeAlso: AX=FB20h"AutoBraille"


INT 2F FB22 - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB22h

BL = ???

Program: AutoBraille is a shareware text-to-braille converter by KANSYS, Inc.


INT 2F FB28 - AutoBraille v1.1A - ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB28h

BX = ???

???

Return: ???

SeeAlso: AX=FB29h"AutoBraille"


INT 2F FB29 - AutoBraille v1.1A - ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB29h

BX = ???

???

Return: ???

SeeAlso: AX=FB28h"AutoBraille"


INT 2F FB-- - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AH = FBh

AL = 2Bh-34h

BX = ???


INT 2F FB35 - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB35h

BL = ???


INT 2F FB36 - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB36h

BL = ???


INT 2F FB37 - AutoBraille v1.1A - SET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB37h

BL = ???

Program: AutoBraille is a shareware text-to-braille converter by KANSYS, Inc.


INT 2F FB42 - Borland C++ DPMILOAD.EXE - INSTALLATION CHECK???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0001h

Return: AX = version number??? (AL=major, AH=minor)

CX = next-selector increment

---BC2.0---

ES:BX -> 80-byte buffer for ???

DX = DPMI version

---BC3.0---

BX = ??? (0000h)

DX = ???

ES:SI -> list of valid selectors ???

Notes:	The version of DPMILOAD distributed with BC++ v2.0 identifies itself

  as version 1.000, while the version distributed with BC++ 3.0

  identifies itself as version 1.0; the former is 10864 bytes, the

  latter 22180 bytes.  The BC2.0 version is a DPMI loader, while

  the BC3.0 version also adds a DPMI host and DOS extender

the BC++ 2.0 version displays an error message if called with BX

  values other than 0001h-0008h

SeeAlso: AX=1687h,AX=FB42h/BX=1001h,AX=FB43h


INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - ALLOCATE MEMORY

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0002h

CX = size in bytes

DX = bit flags

    bit 2: set to allocate DOS memory, clear for DPMI memory

SI = selector of descriptor to be modified to access allocated memory

DI = selector of a second descriptor to be modified

Return: AX = ??? or 0000h on error

CX:DX = linear base address of DPMI memory block

SI:DI = handle for DPMI memory block or FFFFh:FFFFh

???

Note:	two segment descriptors may be set if a code and an aliased data

  segment are required; if only one descriptor is needed, SI should

  equal DI on entry

BUG:	when allocating DOS memory, the code computes the linear address by

  multiplying the segment number by 4 rather than shifting by 4

SeeAlso: AX=FB42h/BX=0003h,AX=FB42h/BX=0008h,INT 31/AX=0501h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ALLOCATE MEMORY

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0002h

ES:SI -> memory block info (see #1795)

Return: ???

Note:	The version of DPMILOAD distributed with BC++ v2.0 identifies itself

  as version 1.000, while the version distributed with BC++ 3.0

  identifies itself as version 1.0; the former is 10864 bytes, the

  latter 22180 bytes.

SeeAlso: AX=FB42h/BX=0003h,AX=FB42h/BX=0008h,INT 31/AX=0501h


INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET AVAILABLE MEMORY

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0003h

Return: DX:AX = size of largest free block in paragraphs

0000h:0000h on error (BC3.0 version only)

Note:	AX and DX are destroyed on error, but no other error indicator is

  returned, under the BC++ 2.0 version of DPMILOAD

SeeAlso: AX=FB42h/BX=0002h


INT 2F FB42 - Borland C++ DPMILOAD.EXE - LOAD PROTECTED-MODE EXECUTABLE???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0004h

DS:DX -> ASCIZ filename of protected-mode executable

Return: CX = selector of ??? or 0000h

---BC3.0---

DX = status (0000h,FFF4h,others???) (see #1797)

Note:	the filename may also be terminated by a CR rather than a NUL under the

  BC++ 3.0 version of DPMILOAD


INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET ADDRESS OF ??? BY NAME

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0005h

CX = selector of DPMILOAD data (see #1798)

DS:DX -> ASCIZ or CR-terminated name of ??? (case ignored)

Return: DX = status (see #1797)

    0000h successful

AX:BX -> ??? FAR function (called with two words on top of stk)

    else

BX destroyed

SeeAlso: AX=FB42h/BX=0006h,AX=FB42h/BX=000Eh


INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET ADDRESS OF ??? BY NUMBER

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0006h

CX = selector of DPMILOAD data (see #1798)

DX = 1-based index into array of ??? 6-byte objects

Return: DX = status (see #1797)

    0000h successful

AX:BX -> ??? FAR function (called with two words on top of stk)

    else

BX destroyed

SeeAlso: AX=FB42h/BX=0005h,AX=FB42h/BX=000Eh


INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0007h

CX = selector of ???

Return: ???

Note:	The version of DPMILOAD distributed with BC++ v2.0 identifies itself

  as version 1.000, while the version distributed with BC++ 3.0

  identifies itself as version 1.0; the former is 10864 bytes, the

  latter 22180 bytes.


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0007h

CX = selector of DPMILOAD data (see #1798)

???

Return: DX = status (see #1797)

    0000h successful

AX = ???


INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - FREE MEMORY BLOCK

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0008h

CX = bit flags

    bit 2: set if DPMI memory, clear if DOS memory

DX = selector of DOS memory block

SI:DI = handle of DPMI memory block

Return: DX = 0000h on error, unchanged if succcessful

Note:	The version of DPMILOAD distributed with BC++ v2.0 identifies itself

  as version 1.000, while the version distributed with BC++ 3.0

  identifies itself as version 1.0; the former is 10864 bytes, the

  latter 22180 bytes.

SeeAlso: AX=FB42h/BX=0002h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - FREE MEMORY BLOCK

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0008h

ES:SI -> memory block info (see #1795)

Return: ???

SeeAlso: AX=FB42h/BX=0009h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - RESIZE MEMORY BLOCK

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0009h

ES:SI -> memory block info (see #1795)

???

Return: ???

SeeAlso: AX=FB42h/BX=0008h"3.0"


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - INIT DPMI HOST AND SPAWN SUBSHELL

available only in real or V86 mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 000Ah

CX = 0001h

DX = ???

SI = ???

Return: after user exits subshell

Notes:	this call is used by DPMIRES; unlike most of the DPMILOAD calls, this

  function is not available in protected mode.

the BC2.0 version of DPMILOAD is purely a DPMI loader, while the BC3.0

  version also adds a DPMI host and DOS extender.

SeeAlso: AX=FB42h/BX=0004h,AX=FB42h/BX=0015h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - UNUSED

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 000Bh


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - FREE DESCRIPTORS FOR MEMORY BLOCK???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 000Ch

ES:SI -> memory block info ??? (see #1795)

Return: DX = status???

SeeAlso: AX=FB42h/BX=000Fh


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SIMULATE REAL MODE INTERRUPT

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 000Dh

CX = number of words to copy from protected-mode to real mode stack

DL = interrupt number

DH = flags

    bit 0: reset the interrupt controller and A20 line

ES:DI -> real-mode call structure (see #1815 at INT 31/AX=0300h)

Return: CX = status

    0000h successful

    0001h failed

SeeAlso: INT 31/AX=0300h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ADDRESS OF ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 000Eh

DS:DX -> ASCIZ or CR-terminated name of ???

Return: CX = selector of DPMILOAD data (see #1798) corresponding to name,

      0000h on error

SeeAlso: AX=FB42h/BX=0006h,AX=FB42h/BX=001Fh


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - REALLOCATE LDT DESCRPS TO MEMBLK???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 000Fh

ES:SI -> memory block info (see #1795)

Return: ???

SeeAlso: AX=FB42h/BX=000Ch


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - CONVERT SEGMENT TO SELECTOR

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0010h

DX = segment number

Return: CX = status (0000h,0008h) (see also AX=FB42h/BX=0004h)

    0000h successful

DX = selector number for descriptor

    0008h failed

SeeAlso: AX=FB42h/BX=0023h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0011h

CX = selector of DPMILOAD data (see #1798)

???

Return: DX = status (0000h,0002h,FFFEh) (see also #1797)

    0000h successful

AX:BX -> ??? name

    FFFEh ??? error


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0012h

CX = selector for ???

Return: CX = selector for ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0013h

CX = selector of DPMILOAD data (see #1798)

DX = 1-based index of ???

Return: CX = status (0000h,0002h,FFF9h) (see also #1797)

    0000h successful

BX = ??? or 0000h

    FFF9h ??? error


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - INSTALLATION CHECK

available only in real or V86 mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0014h

CX = 0001h

Return: BX = 0000h if installed

Note:	unlike most of the DPMILOAD functions, this call is available only in

  real or V86 mode

SeeAlso: AX=FB42h/BX=0001h,AX=FB42h/BX=000Ah


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - UNINSTALL

available only in real or V86 mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0015h

CX = 0001h

Return: ???

Note:	unlike most of the DPMILOAD functions, this call is available only in

  real or V86 mode

SeeAlso: AX=FB42h/BX=000Ah


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0016h

CX = selector of DPMILOAD data (see #1798)

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

CX = ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0017h

CX = ???

DX = ???

???

Return: DX = status (0000h,0001h) (see #1797)


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0018h

CX = ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0019h

CX = selector for ???

???

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

CX = selector for ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 001Ah

CX = selector for ???

???

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

    0004h failed

CX:BX -> ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 001Bh

CX = selector of DPMILOAD data (see #1798)

DX = offset of ???

Return: DX = status (0000h,0002h) (see also #1797)

    0000h successful

BX = selector for ???

CX = selector for ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 001Ch

ES = selector for DPMILOAD data (see #1798)

CX = 1-based index of ???

DX = 1-based index of ???

Return: DX = status (0000h,0002h,FFF9h) (see #1797)


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 001Dh

Return: CX:DX = ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 001Eh

CX = ???

???

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

    FFF7h ??? error

CX:BX -> ???


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ADDRESS OF ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 001Fh

DS:DX -> 8-character name of ???

???

Return: CX = selector of DPMILOAD data (see #1798) for ???

0000h on error

SeeAlso: AX=FB42h/BX=000Eh


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - NULL FUNCTION???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0020h

Return: DX = ??? (always 0000h)


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET PROCESSOR EXCEPTION HANDLER VECT

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0021h

CL = exception number (00h-1Fh)

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

AX:BX = selector:offset of handler

    FFF2h unable to get exception handler vector

SeeAlso: AX=FB42h/BX=0022h,AX=FB42h/BX=0024h,INT 31/AX=0202h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET PROCESSOR EXCEPTION HANDLER VECT

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0022h

CL = exception number (00h-1Fh)

SI:DX = selector:offset of new handler

Return: DX = status (0000h,0004h,FFF2h) (see #1797)

SeeAlso: AX=FB42h/BX=0021h,AX=FB42h/BX=0025h,INT 31/AX=0203h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - CONVERT SELECTOR TO SEGMENT NUMBER

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0023h

CX = selector

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

CX = real-mode segment number

    FFF2h descriptor has invalid base address for real-mode segment

SeeAlso: AX=FB42h/BX=0010h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET PROTECTED-MODE INTERRUPT VECTOR

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0024h

CL = interrupt number

Return: DX = status (0000h) (see also AX=FB42h/BX=0004h)

AX:BX = selector:offset of handler

SeeAlso: AX=FB42h/BX=0025h,INT 31/AX=0204h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET PROTECTED-MODE INTERRUPT VECTOR

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0025h

CL = interrupt number

SI:DX = selector:offset of new handler

Return: DX = status (0000h,0004h,FFF2h) (see #1797)

SeeAlso: AX=FB42h/BX=0024h,INT 31/AX=0205h


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0026h

CX = selector of DPMILOAD data (see #1798)

DX = 1-based index of ???

???

Return: DX = status (0000h,0002h,FFF9h) (see #1797)

    0000h successful

BX = offset of ??? within data structure


INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0027h

CX = selector of DPMILOAD data (see #1798)

DX = offset of ???

Return: DX = status (see also AX=FB42h/BX=0004h)

    0000h successful

BX = ???


INT 2F FB42 - ??? - CALLED BY Borland C++ 3.0 DPMILOAD.EXE

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0080h

???

Return: AX = ???

???


INT 2F FB42 - ??? - CALLED BY Borland C++ 3.0 DPMILOAD.EXE

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 0081h

???

Return: AX = ???

???


INT 2F FB42 - Borland RTM.EXE 1.0 - INSTALLATION CHECK???

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 1001h

Return: BX = 0000h

SeeAlso: AX=FB42h/BX=0001h,AX=FB42h/BX=1002h,AX=FB42h/BX=1003h


INT 2F FB42 - Borland RTM.EXE 1.0 - ???

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 1002h

???

Return: ???

SeeAlso: AX=FB42h/BX=1001h


INT 2F FB42 - Borland RTM.EXE 1.0 - ???

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB42h

BX = 1003h

???

Return: ???

SeeAlso: AX=FB42h/BX=1001h


INT 2F FB43 - Borland C++ 3.0 DPMILOAD.EXE - NULL FUNCTION

available only in protected mode

undocumented function

Category: E - DOS extenders

Inp.:

AX = FB43h

BX = subfunction (at least 0000h-000Eh)

Notes:	this function is only present in protected mode; it does nothing but

  an immediate IRET

DPMILOAD.EXE itself calls various subfunctions:

    subfunction 0004h is called with CX=selector of ???, DI=selector

  of DPMILOAD data

    subfunction 0008h is called with CX=selector of DPMILOAD data

SeeAlso: AX=FB42h/BX=0001h


INT 2F FB43 - Borland TDX - INSTALLATION CHECK

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = FB43h

BX = 0100h

Return: BX = FB43h if loaded

Program: TDX is Borland's Turbo Debugger variant for DPMI programs

Note:	Borland Pascal 7 DPMI programs use this call to check whether they

  should install their own stack and general protection exception

  handlers, or allow TDX to handle those exceptions


INT 2F FB64 - AutoBraille v1.1A - GET ???

undocumented function

Category: a - access software (screen readers, etc)

Inp.:

AX = FB64h

Return: AX = ??? (0006h seen)

Program: AutoBraille is a shareware text-to-braille converter by KANSYS, Inc.


INT 2F FBA1 - TKERNEL (Borland DOS extender) - INSTALLATION CHECK

undocumented function

Category: E - DOS extenders

Inp.:

AX = FBA1h

BX = 0081h

ES:DI -> 16-byte buffer

Return: if installed, first four bytes of ES:DI buffer are "IABH"

Program: TKERNEL is a licensed version of AI Architects/Ergo's OS/x86.

Note:	TKERNEL was present only in Borland C++ 2.0; with version 3.0, the DOS

  extender was moved into DPMILOAD.

SeeAlso: AH=A1h,AX=F100h,AX=FBA1h/BX=0082h,AX=FBA1h/BX=0084h,INT 15/AX=BF02h

SeeAlso: INT 21/AX=4403h"TKERNEL"


INT 2F FBA1 - TKERNEL (Borland DOS extender) - GET ENTRY POINT

undocumented function

Category: E - DOS extenders

Inp.:

AX = FBA1h

BX = 0082h

ES:DI -> response buffer (see #1802)

Return: ES:DI buffer filled

SeeAlso: AX=FBA1h/BX=0081h,AX=FBA1h/BX=0084h


INT 2F FBA1 - TKERNEL (Borland DOS extender) - UNINSTALL

undocumented function

Category: E - DOS extenders

Inp.:

AX = FBA1h

BX = 0084h

ES:DI -> response buffer (see #1804)

Return: ES:DI buffer filled

SeeAlso: AX=FBA1h/BX=0081h,AX=FBA1h/BX=0084h


INT 2F FBFB - SoundBlaster speech driver - INSTALLATION CHECK

undocumented function

Category: s - sound/speech

Inp.:

AX = FBFBh

ES = 0000h

Return: ES nonzero if installed

    ES:BX -> entry point data structure (see #1805)

SeeAlso: INT 80/BX=0000h,INT F3"SoundBlaster"


INT 2F FE00 - PC-NFS ??? - INSTALLATION CHECK

Category: N - network

Inp.:

AX = FE00h

BX = 4454h ("DT")

CX = 4B52h ("KR")

DX = 4E4Dh ("NM")

Return: AL = FFh if installed

   BX = 524Eh ("RM")

   CX = 4D44h ("MD")

   DX = 544Bh ("TK")

Note:	DV/X 1.10 DVPCNFS.DVR searches AH=FEh,FFh,C0h-FDh for a valid response

SeeAlso: AX=FE08h


INT 2F FE00 - PC-NFS ??? - INSTALLATION CHECK

Category: N - network

Inp.:

AX = FE00h

BX = 4454h ("DT")

CX = 4B52h ("KR")

DX = 544Dh ("TM")

Return: AL = FFh if installed

   BX = 5254h ("RT")

   CX = 4D44h ("MD")

   DX = 544Bh ("TK")

Note:	DV/X 1.10 DVPCNFS.DVR searches AH=FEh,FFh,C0h-FDh for a valid response

SeeAlso: AX=FE08h


INT 2F FE00 - NORTON UTILITIES 5.0+ TSRs - INSTALLATION CHECK/STATUS REPORT

undocumented function

Category: U - resident utilities

Inp.:

AX = FE00h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply

    lowercase version of SI on entry (i.e. SI OR 2020h)

AH = status

    00h installed but disabled internally

    01h installed and enabled

AL = installed product

    00h NCACHE-x or DISKREET

    01h SPEEDRV / FILESAVE / EP / DISKMON v6+ installed

    02h NCACHE2 / SMARTCAN

    45h DISKMON v5 installed

BX = length of *.INI file (DISKMON and FILESAVE/EP/SMARTCAN only)

      (see #1808,#1809)

CX = segment of resident portion

    FFFFh if completely loaded high (NCACHE)

---FILESAVE/EP---

DL = ??? (apparently always 00h)

---DISKMON---

DX = ??? (apparently always 1AE6h [v5] / 1B86h [v6] / 1C26h [v7])

Notes:	the value returned in CX is incorrect for NCACHE 6.00

all Norton Caches install as SMARTAAR drivers like SMARTDRV v3

NCACHE2 and SPEEDRV both support the SMARTDRV v4+ installation check

to detect Diskreet NDisk drives use CDS/DPB (see INT 21/AH=52h)

SeeAlso: AX=4A10h/BX=0000h,AX=FE01h,AX=FE02h,AX=FE03h,AX=FE04h,AX=FE05h

SeeAlso: INT 21/AX=4402h"SMARTDRV"


INT 2F FE00 - GO! v3.22+ - API

Category: U - resident utilities

Inp.:

AX = FE00h

DX = 474Fh ('GO')

SI = function number

    0063h (BCD for '?') installation check

    0078h (BCD for 'N') non-registered search (two levels only)

    0082h (BCD for 'R') reserved for registered version

    0083h (BCD for 'S') reserved for registered version

    0085h (BCD for 'U') uninstall

BX:CX -> buffer (for search functions)

buffer filled with search spec, i.e. "APL" to get first

  directory containing the substring APL, ":\APL" to find

  the first top-level directory beginning with the letters

  APL

Return: BX:CX buffer filled with result (search functions only)

result is counted ASCIZ directory name, empty string if

no matches (i.e. first byte is length of name, followed by

name)

Program: GO! is a shareware directory locator TSR by Steve Ryckman

Note:	the application-supplied buffer for the requests and results which

  BX:CX points at must lie outside the conventional (low-640K)

  memory, since the TSR swaps memory on pop-up; a common location is

  the last 96 bytes of the video memory or a UMB


INT 2F FE01 - NORTON UTILITIES 5.0+ TSRs - ENABLE

undocumented function

Category: U - resident utilities

Inp.:

AX = FE01h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply (lowercase version of entry SI, i.e. SI OR 2020h)

AX = status

    0002h successful (DISKMON, FILESAVE, EP)

    FE00h successful (NCACHE-x, DISKREET)

Notes:	if the enable/disable calls are used on DISKMON or NCACHE-x, the status

  report generated by the programs still indicates the previous state,

  and DISKMON.INI is not updated

apparently has no effect on DISKREET

SeeAlso: AX=FE00h,AX=FE02h


INT 2F FE02 - NORTON UTILITIES 5.0+ TSRs - DISABLE

undocumented function

Category: U - resident utilities

Inp.:

AX = FE02h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply (lowercase version of entry SI, i.e. SI OR 2020h)

AX = status

    0004h successful (DISKMON, FILESAVE)

    FE00h successful (NCACHE-x, DISKREET)

Notes:	(see also AX=FE01h)

this function appears to be unsafe, as the cache buffers are not

  flushed

SeeAlso: AX=FE00h,AX=FE01h


INT 2F FE03 - NORTON UTILITIES 5.0+ TSRs - FLUSH BUFFERS

undocumented function

Category: U - resident utilities

Inp.:

AX = FE03h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply (lowercase version of entry SI, i.e. SI OR 2020h)

AX = status

    0006h successful???

Notes:	only supported by DISKMON, FILESAVE, and NCACHE-x

useful for flushing NCACHE before rebooting

SeeAlso: AX=FE00h,AX=FE10h


INT 2F FE04 - NORTON UTILITIES 5.0+ DISKMON, FILESAVE / EP - internal - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FE04h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply (lowercase version of entry SI, i.e. SI or 2020h)

AX = status

    0008h successful???

SeeAlso: AX=FE00h


INT 2F FE05 - NORTON UTILITIES 5.0+ DISKMON, FILESAVE / EP - internal - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = FE05h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply (lowercase version of entry SI, i.e. SI or 2020h)

AX = status

    000Ah successful???

Note:	reportedly dangerous

SeeAlso: AX=FE00h


INT 2F FE08 - PC-NFS ??? - GET ???

Category: N - network

Inp.:

AX = FE08h

Return: ES:BX -> ???

Notes:	DV/X 1.10 DVPCNFS.DVR searches AH=FEh,FFh,C0h-FDh for a valid response

both the driver responding to AX=FE00h/DX=4E4Dh and the one responding

  to AX=FE00h/DX=544Dh support this function

SeeAlso: AX=FE00h/BX=4454h


INT 2F FE10 - NORTON UTILITIES 6.0 NCACHE - REBOOT

undocumented function

Category: U - resident utilities

Inp.:

AX = FE10h

DI = 4E55h ("NU")

SI = TSR identifier (see #1807)

Return: SI = TSR reply (lowercase version of entry SI, i.e. SI or 2020h)

AX = status

Note:	probably used to flush NCACHE buffers and reboot when Ctrl-Alt-Del is

  detected

SeeAlso: AX=FE03h


INT 2F FEEF - RTS Control TSR - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AX = FEEFh

Return: AX = EFFEh if installed

    BX = port address

Program: RTS Control TSR is a utility by Michal Szokolo to lower the RTS

  signal on a COM port during disk accesses to avoid losing incoming

  data


INT 2F FF00 - Topware Network Operating System - INSTALLATION CHECK

Category: N - network

Inp.:

AX = FF00h

Return: AL = status

    00h not installed, OK to install

    01h not installed, not OK to install

    FFh installed

SeeAlso: AX=FF01h,AX=FF02h,AX=FF10h,INT 21/AX=FF00h"Topware",INT 7A"Topware"


INT 2F FF01 - Topware Network Operating System - GET VERSION

Category: N - network

Inp.:

AX = FF01h

Return: AX = version

SeeAlso: AX=FF00h,AX=FF02h


INT 2F FF02 - TopWare Network OS v5.10+ - GET TopNet VERSION STRING

Category: N - network

Inp.:

AX = FF02h

Return: ES:BX -> version string

SeeAlso: AX=FF00h,AX=FF01h


INT 2F FF10 - TopWare Network OS v5.10+ - TopTerm - INSTALLATION CHECK

Category: N - network

Inp.:

AX = FF10h

Return: AL = status (00h not installed, 01h installed)

SeeAlso: AX=FF00h,AX=FF11h,AX=FF12h,AX=FF13h


INT 2F FF11 - TopWare Network OS v5.10+ - TopTerm - ENABLE KEYBOARD SERVICE

Category: N - network

Inp.:

AX = FF11h

Note:	this function is only available on workstations, not on the server

SeeAlso: AX=FF10h,AX=FF12h


INT 2F FF12 - TopWare Network OS v5.10+ - TopTerm - DISABLE KEYBOARD SERVICE

Category: N - network

Inp.:

AX = FF12h

Note:	this function is only available on workstations, not on the server

SeeAlso: AX=FF10h,AX=FF11h


INT 2F FF13 - TopWare Network OS v5.10+ - TopTerm - SET INSTALLATION FLAG

Category: N - network

Inp.:

AX = FF13h

CL = new state (00h off, 01h on)

SeeAlso: AX=FF10h


INT 2F FF14 - TopWare Network OS v5.10+ - START BACKGROUND RECEIVE VIDEO DATA

Category: N - network

Inp.:

AX = FF14h

Note:	this function is only available on workstations, not on the server

SeeAlso: AX=FF10h,AX=FF15h


INT 2F FF15 - TopWare Network OS v5.10+ - END BACKGROUND RECEIVE VIDEO DATA

Category: N - network

Inp.:

AX = FF15h

Note:	this function is only available on workstations, not on the server

SeeAlso: AX=FF10h,AX=FF14h


INT 2F FF16 - TopWare Network OS v5.10+ - SET CONTROL NUMBER OF "SHOW" SCREEN

Category: N - network

Inp.:

AX = FF16h

BL = which to set (00h TopShow, FFh TopTerm)

CX = destination screen

    0000h all stations

    0000h-00FFh (TopTerm only) send to group CL

    8001h-80FEh send to station CL

SeeAlso: AX=FF18h


INT 2F FF18 - TopWare Network OS v5.10+ - SEND FULL SCREEN OF DATA FOR TopShow

Category: N - network

Inp.:

AX = FF18h

SeeAlso: AX=FF00h,AX=FF16h,AX=FF27h


INT 2F FF23 - TopWare Network OS v5.10+ - CLOSE SPOOL FILES AND START PRINTING

Category: N - network

Inp.:

AX = FF23h

SeeAlso: AX=FF00h


INT 2F FF27 - TopWare Network OS v5.10+ - GET "SHOW" TYPE

Category: N - network

Inp.:

AX = FF27h

Return: AL = type (00h complete version, 01h simple version)

BL = "show" functions flag (00h disabled, 01h enabled)

SeeAlso: AX=FF16h,AX=FF18h


INT 30 ---- - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction for CP/M-style calls

Category: D - DOS kernel

Inp.:

   the CALL 5 entry point does a FAR jump to here

Note:	under DOS 2+, the instruction at PSP:0005 points two bytes too low in

  memory

SeeAlso: INT 21/AH=26h

INT 30


INT 30 ---- - QRIP/TSR - USED BY GRAPHICS LIBRARY

Category: V - video

Inp.:

Program: QRIP/TSR is a shareware TSR by Shane Hathaway implementing the Remote

  Imaging Protocol (RIP, RIPscrip) used by several BBS systems to

  provide a graphical user interface

SeeAlso: INT 2F/AX=ACF0h

INT 30


INT 31 ---- - overwritten by CP/M jump instruction in INT 30

Category: D - DOS kernel

Inp.:

INT 31


INT 31 ---- - VIRUS - "Vacsina" series - INSTALLATION CHECK (NOT A VECTOR!)

Category: v - virus/antivirus

Inp.:

Note:	if one of the Vacsina viruses is resident, the low byte of this

  interrupt still contains the last byte of the INT 30 CP/M JMP

  instruction, but the remaining three bytes are 7Fh 39h followed

  by the Vacsina version number

SeeAlso: INT 21/AX=FFFFh"VIRUS",INT 32"VIRUS"

INT 31


INT 31 0000 - DPMI 0.9+ - ALLOCATE LDT DESCRIPTORS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0000h

CX = number of descriptors to allocate

Return: CF clear if successful

    AX = base selector

CF set on error

    AX = error code (DPMI 1.0+) (see #1810)

Notes:	DPMI is the DOS Protected-Mode Interface

the base and limit of the returned descriptors will be 0, and the type

  will be "data"

add the value returned by INT 31/AX=0003h to move to subsequent

  descriptors if multiple descriptors were allocated

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0001h,AX=000Dh,INT 21/AX=3501h

INT 31


INT 31 0001 - DPMI 0.9+ - FREE LDT DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0001h

BX = selector to free

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8022h) (see #1810)

Notes:	only one descriptor is freed per call

the program's initial CS, DS, and SS descriptors may be freed

(DPMI 1.0+) any segment registers containing the freed selector are

  set to 0000h

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0000h,AX=000Ah,AX=000Dh,INT 21/AX=3502h

INT 31


INT 31 0002 - DPMI 0.9+ - SEGMENT TO DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0002h

BX = real mode segment

Return: CF clear if successful

    AX = selector corresponding to real mode segment (64K limit)

CF set on error

    AX = error code (DPMI 1.0+) (8011h) (see #1810)

Notes:	multiple calls for the same real mode segment return the same selector

the returned descriptor can never be modified or freed

not supported by MS Windows 3.0 in Standard mode

INT 31


INT 31 0003 - DPMI 0.9+ - GET NEXT SELECTOR INCREMENT VALUE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0003h

Return: CF clear

    AX = value to add to get next sequential selector

Notes:	the increment will be a power of two

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0000h

INT 31


INT 31 0004 - DPMI 0.9+ - LOCK SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0004h

BX = selector to lock (prevent paging)

Return: ???

Note:	although marked as reserved in versions 0.9 and 1.0 of the DPMI

  specification, this function is called by MS Windows TASKMAN,

  PROGMAN, and KERNEL

SeeAlso: AX=0005h,AX=0600h

INT 31


INT 31 0005 - DPMI 0.9+ - UNLOCK SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0005h

BX = selector to unlock (permit paging)

Return: ???

Note:	although marked as reserved in versions 0.9 and 1.0 of the DPMI

  specification, this function is called by MS Windows TASKMAN,

  PROGMAN, and KERNEL

SeeAlso: AX=0004h,AX=0601h

INT 31


INT 31 0006 - DPMI 0.9+ - GET SEGMENT BASE ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0006h

BX = selector

Return: CF clear if successful

    CX:DX = linear base address of segment

CF set on error

    AX = error code (DPMI 1.0+) (8022h) (see #1810)

Note:	not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0007h,INT 21/AX=3504h

INT 31


INT 31 0007 - DPMI 0.9+ - SET SEGMENT BASE ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0007h

BX = selector

CX:DX = linear base address

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8022h,8025h) (see #1810)

Notes:	only modify descriptors allocated with INT 31/AX=0000h

only the low 24 bits of the address will be used by 16-bit DPMI

  implementations even on a 386 or higher

DPMI 1.0+ automatically reloads any segment registers containing the

  selector being modified

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0006h,AX=0008h,AX=0009h,AX=000Ch,INT 21/AX=3503h

SeeAlso: INT 21/AH=E9h"OS/286",INT 2C/AX=0002h

INT 31


INT 31 0008 - DPMI 0.9+ - SET SEGMENT LIMIT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0008h

BX = selector

CX:DX = segment limit

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8021h,8022h,8025h) (see #1810)

Notes:	CX must be zero for 16-bit DPMI implementations

limits greater than 1MB must be page aligned (low 12 bits set)

only modify descriptors allocated with INT 31/AX=0000h

DPMI 1.0+ automatically reloads any segment registers containing the

  selector being modified

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0007h,AX=0009h,AX=000Ch,INT 21/AX=3505h,INT 21/AH=E9h"OS/286"

SeeAlso: INT 2C/AX=0003h,#0377 at INT 15/AH=89h

INT 31


INT 31 0009 - DPMI 0.9+ - SET DESCRIPTOR ACCESS RIGHTS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0009h

BX = selector

CL = access rights/type byte (see #0378 at INT 15/AH=89h)

CH = 80386 extended rights/type byte (see #0379 at INT 15/AH=89h)

    (32-bit DPMI implementations only)

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8021h,8022h,8025h) (see #1810)

Notes:	if the Present bit is clear, CL bits 0-3 may have any value

DPMI 1.0+ automatically reloads any segment registers containing the

  selector being modified

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0007h,AX=0008h,AX=000Ch,INT 21/AX=2514h,INT 2C/AX=0004h

SeeAlso: INT 2C/AX=0005h

INT 31


INT 31 000A - DPMI 0.9+ - CREATE ALIAS DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 000Ah

BX = selector

Return: CF clear if successful

    AX = new data selector

CF set on error

    AX = error code (DPMI 1.0+) (8011h,8022h) (see #1810)

Notes:	fails if selector in BX is not a code segment or is invalid

use INT 31/AX=0001h to free new selector

future changes to the original selector will not be reflected in the

  returned alias selector

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0001h

INT 31


INT 31 000B - DPMI 0.9+ - GET DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 000Bh

BX = LDT selector

ES:(E)DI -> 8-byte buffer for copy of descriptor

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (DPMI 1.0+) (8022h) (see #1810)

Notes:	16-bit programs use ES:DI as pointer, 32-bit must use ES:EDI

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=000Ch

INT 31


INT 31 000C - DPMI 0.9+ - SET DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 000Ch

BX = LDT selector

ES:(E)DI -> 8-byte buffer containing descriptor

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8021h,8022h,8025h) (see #1810)

Notes:	16-bit programs use ES:DI as pointer, 32-bit must use ES:EDI

only modify descriptors allocated with INT 31/AX=0000h

DPMI 1.0+ automatically reloads any segment registers containing the

  selector being modified

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=000Bh

INT 31


INT 31 000D - DPMI 0.9+ - ALLOCATE SPECIFIC LDT DESCRIPTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 000Dh

BX = LDT selector

Return: CF clear if successful

    descriptor allocated

CF set on error

    AX = error code (DPMI 1.0+) (8011h,8022h) (see #1810)

Notes:	free descriptor with INT 31/AX=0001h

the first 16 descriptors (04h-7Ch) are reserved for this function, but

  some may already be in use by other applications under DPMI 0.9;

  DPMI 1.0 guarantees 16 descriptors per client

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0000h,AX=0001h

INT 31


INT 31 000E - DPMI 1.0+ - GET MULTIPLE DESCRIPTORS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 000Eh

CX = number of descriptors to copy

ES:(E)DI -> descriptor buffer (see #1811)

Return: CF clear if successful

    descriptors copied

CF set on error

    AX = error code (8022h) (see #1810)

    CX = number of descriptors successfully copied

Notes:	16-bit programs use ES:DI as pointer, 32-bit must use ES:EDI

if the function fails, the first CX descriptors are valid; the

  remainder are not modified

SeeAlso: AX=000Bh,AX=000Fh

INT 31


INT 31 000F - DPMI 1.0+ - SET MULTIPLE DESCRIPTORS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 000Fh

CX = number of descriptors to copy

ES:(E)DI -> descriptor buffer (see #1812)

Return: CF clear if successful

    descriptors copied

CF set on error

    AX = error code (8021h,8022h,8025h) (see #1810)

    CX = number of descriptors successfully copied

Notes:	16-bit programs use ES:DI as pointer, 32-bit must use ES:EDI

if the function fails, the first CX descriptors are valid; the

  remainder are not modified

DPMI 1.0+ automatically reloads any segment registers containing a

  selector being modified

SeeAlso: AX=000Ch,AX=000Eh

INT 31


INT 31 0100 - DPMI 0.9+ - ALLOCATE DOS MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0100h

BX = number of paragraphs to allocate

Return: CF clear if successful

    AX = real mode segment of allocated block

    DX = first selector for allocated block

CF set on error

    AX = DOS error code (07h,08h) (see #0885 at INT 21/AH=59h)

(DPMI 1.0+) DPMI error code (8011h) (see #1810)

    BX = size (in paragraphs) of largest available block

Notes:	multiple contiguous selectors are allocated for blocks of more than 64K

  if the caller is a 16-bit program

never modify or deallocate returned descriptors

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0101h,AX=0501h

INT 31


INT 31 0101 - DPMI 0.9+ - FREE DOS MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0101h

DX = selector of block

Return: CF set if successful

CF set on error

    AX = DOS error code (07h,09h) (see #0885 at INT 21/AH=59h)

Notes:	all descriptors allocated for the block are automatically freed

DPMI 1.0+ automatically zeros any segment registers containing a

  selector freed by this function

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0100h,AX=0102h,AX=0502h

INT 31


INT 31 0102 - DPMI 0.9+ - RESIZE DOS MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0102h

BX = new block size in paragraphs

DX = selector of block

Return: CF clear if successful

CF set on error

    AX = DOS error code (07h,08h,09h) (see #0885 at INT 21/AH=59h)

(DPMI 1.0+) DPMI error code (8011h,8022h) (see #1810)

    BX = maximum block size (in paragraphs) possible

Notes:	increasing the size of a block past a 64K boundary will fail if the

  next descriptor in the LDT is already in use

shrinking a block past a 64K boundary will cause some selectors to be

  freed; DPMI 1.0+ automatically zeros any segment registers containing

  a selector freed by this function

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0100h

INT 31


INT 31 0200 - DPMI 0.9+ - GET REAL MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0200h

BL = interrupt number

Return: CF clear

CX:DX = segment:offset of real mode interrupt handler

Note:	the DPMI implementation is required to support all 256 vectors

SeeAlso: AX=0201h,AX=0204h,INT 21/AX=2503h

INT 31


INT 31 0201 - DPMI 0.9+ - SET REAL MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0201h

BL = interrupt number

CX:DX = segment:offset of real mode handler

Return: CF clear

Note:	all memory that may be touched by a hardware interrupt handler must be

  locked down with INT 31/AX=0600h

SeeAlso: AX=0200h,AX=0205h,AX=0600h,INT 21/AX=2505h

INT 31


INT 31 0202 - DPMI 0.9+ - GET PROCESSOR EXCEPTION HANDLER VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0202h

BL = exception number (00h-1Fh)

Return: CF clear if successful

    CX:(E)DX = selector:offset of handler

CF set on error

    AX = error code (DPMI 1.0+) (8021h) (see #1810)

Notes:	16-bit programs receive the pointer in CX:DX, 32-bit programs in CX:EDX

DPMI 1.0+ supports this function only for backward compatibility; use

   AX=0210h or AX=0211h instead

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0203h,AX=0210h,AX=0211h,INT 2F/AX=FB42h/BX=0021h

INT 31


INT 31 0203 - DPMI 0.9+ - SET PROCESSOR EXCEPTION HANDLER VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0203h

BL = exception number (00h-1Fh)

CX:(E)DX = selector:offset of handler

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8021h,8022h) (see #1810)

Notes:	32-bit programs must supply an offset in EDX and use a 32-bit interrupt

  stack frame on chaining to the next exception handler

the handler should return using a FAR return

all fault stack frames contain an error code, but it is only valid for

  exceptions 08h and 0Ah-0Eh

handlers will only be called if the exception occurs in protected mode,

  and the DPMI host does not transparently handle the exception

the handler may change certain values on the stack frame

  (see #1813,#1814)

DPMI 1.0+ supports this function only for backward compatibility; use

   AX=0212h or AX=0213h instead

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0202h,AX=0212h,AX=0213h,INT 2F/AX=FB42h/BX=0022h

INT 31


INT 31 0204 - DPMI 0.9+ - GET PROTECTED MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0204h

BL = interrupt number

Return: CF clear

CX:(E)DX = selector:offset of handler

Notes:	16-bit programs use CX:DX, 32-bit programs use CX:EDX

DPMI implementations are required to support all 256 vectors

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0200h,AX=0205h,INT 21/AX=2502h,INT 2C/AX=0006h

SeeAlso: INT 2F/AX=FB42h/BX=0024h

INT 31


INT 31 0205 - DPMI 0.9+ - SET PROTECTED MODE INTERRUPT VECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0205h

BL = interrupt number

CX:(E)DX = selector:offset of handler

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8022h) (see #1810)

Notes:	16-bit programs use CX:DX, 32-bit programs use CX:EDX

32-bit programs must use a 32-bit interrupt stack frame when chaining

  to the next handler

DPMI implementations are required to support all 256 vectors

hardware interrupts are reflected to the virtual machine's primary

  client, software interrupts to the current client

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0201h,AX=0204h,INT 21/AX=2504h,INT 2C/AX=0007h

SeeAlso: INT 2F/AX=FB42h/BX=0025h

INT 31


INT 31 0210 - DPMI 1.0+ - GET PROTECTED MODE EXTENDED PROCESSOR EXCEPTION HANDLER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0210h

BL = exception number (00h-1Fh)

Return: CF clear if successful

    CX:(E)DX = selector:offset of exception handler

CF set on error

    AX = error code (8021h) (see #1810)

Note:	DPMI host reflects exception to current client's handler

SeeAlso: AX=0202h,AX=0211h,AX=0212h

INT 31


INT 31 0211 - DPMI 1.0+ - GET REAL MODE EXTENDED PROCESSOR EXCEPTION HANDLER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0211h

BL = exception number (00h-1Fh)

Return: CF clear if successful

    CX:(E)DX = selector:offset of exception handler

CF set on error

    AX = error code (8021h) (see #1810)

Notes:	returns address of protected-mode handler for real-mode exception

DPMI host performs a switch to protected mode, reflects the exception

  to the virtual machine's primary client, and returns to real mode

  on the handler's completion

SeeAlso: AX=0202h,AX=0210h,AX=0213h

INT 31


INT 31 0212 - DPMI 1.0+ - SET PROTECTED MODE EXTENDED PROCESSOR EXCEPTION HANDLER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0212h

BL = exception or fault number (00h-1Fh)

CX:(E)DX = exception handler selector:offset

Return: CF clear if successful

CF set on error

    AX = error code (8021h,8022h) (see #1810)

Note:	DPMI host sends exception to current client's handler

SeeAlso: AX=0203h,AX=0210h,AX=0213h

INT 31


INT 31 0213 - DPMI 1.0+ - SET REAL MODE EXTENDED PROCESSOR EXCEPTION HANDLER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0213h

BL = exception or fault number (00h-1Fh)

CX:(E)DX = exception handler selector:offset

Return: CF clear if successful

CF set on error

    AX = error code (8021h,8022h) (see #1810)

Notes:	specifies address of protected-mode handler for real-mode exception

DPMI host performs a switch to protected mode, reflects the exception

  to the virtual machine's primary client, and returns to real mode

  on the handler's completion

SeeAlso: AX=0203h,AX=0211h,AX=0212h

INT 31


INT 31 0300 - DPMI 0.9+ - SIMULATE REAL MODE INTERRUPT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0300h

BL = interrupt number

BH = flags

    bit 0: reset the interrupt controller and A20 line (DPMI 0.9)

    reserved, must be 0 (DPMI 1.0+)

    others: reserved, must be 0

CX = number of words to copy from protected mode to real mode stack

ES:(E)DI = selector:offset of real mode call structure (see #1815)

Return: CF clear if successful

    real mode call structure modified (all fields except SS:SP, CS:IP

      filled with return values from real mode interrupt)

CF set on error

    AX = error code (DPMI 1.0+) (8012h,8013h,8014h,8021h)(see #1810)

protected mode stack unchanged

Notes:	16-bit programs use ES:DI as pointer, 32-bit programs use ES:EDI

CS:IP in the real mode call structure is ignored for this call,

  instead, the indicated interrupt vector is used for the address

the flags in the call structure are pushed on the real mode stack to

  form an interrupt stack frame, and the trace and interrupt flags are

  clear on entry to the handler

DPMI will provide a small (30 words) real mode stack if SS:SP is zero

the real mode handler must return with the stack in the same state as

  it was on being called

SeeAlso: AX=0302h,AX=FF01h,INT 21/AX=2511h,INT 21/AH=E3h"OS/286"

SeeAlso: INT 2C/AX=0026h,INT 2F/AX=FB42h/BX=000Dh

INT 31


INT 31 0301 - DPMI 0.9+ - CALL REAL MODE PROCEDURE WITH FAR RETURN FRAME

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0301h

BH = flags

    bit 0: reset the interrupt controller and A20 line (DPMI 0.9)

    reserved, must be 0 (DPMI 1.0+)

    others: reserved must be 0

CX = number of words to copy from protected mode to real mode stack

ES:(E)DI = selector:offset of real mode call structure

  (see #1815 at INT 31/AX=0300h)

Return: CF clear if successful

    real mode call structure modified (all fields except SS:SP, CS:IP

      filled with return values from real mode interrupt)

CF set on error

    AX = error code (DPMI 1.0+) (8012h,8013h,8014h,8021h)(see #1810)

protected mode stack unchanged

Notes:	16-bit programs use ES:DI as pointer, 32-bit programs use ES:EDI

the real mode procedure must exit with a FAR return

DPMI will provide a small (30 words) real mode stack if SS:SP is zero

the real mode handler must return with the stack in the same state as

  it was on being called

SeeAlso: AX=0300h,AX=0302h,AX=FF02h,INT 21/AX=250Eh,INT 21/AH=E1h"OS/286"

SeeAlso: INT 2C/AX=0025h

INT 31


INT 31 0302 - DPMI 0.9+ - CALL REAL MODE PROCEDURE WITH IRET FRAME

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0302h

BH = flags

    bit 0: reset the interrupt controller and A20 line (DPMI 0.9)

    reserved, must be 0 (DPMI 1.0+)

    others: reserved, must be 0

CX = number of words to copy from protected mode to real mode stack

ES:(E)DI = selector:offset of real mode call structure

  (see #1815 at INT 31/AX=0300h)

Return: CF clear if successful

    real mode call structure modified (all fields except SS:SP, CS:IP

      filled with return values from real mode interrupt)

CF set on error

    AX = error code (DPMI 1.0+) (8012h,8013h,8014h,8021h)(see #1810)

protected mode stack unchanged

Notes:	16-bit programs use ES:DI as pointer, 32-bit programs use ES:EDI

the flags in the call structure are pushed on the real mode stack to

  form an interrupt stack frame, and the trace and interrupt flags are

  clear on entry to the handler

the real mode procedure must exit with an IRET

DPMI will provide a small (30 words) real mode stack if SS:SP is zero

the real mode handler must return with the stack in the same state as

  it was on being called

SeeAlso: AX=0300h

INT 31


INT 31 0303 - DPMI 0.9+ - ALLOCATE REAL MODE CALLBACK ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0303h

DS:(E)SI = selector:offset of procedure to call

ES:(E)DI = selector:offset of real mode call structure (see #1815)

Return: CF clear if successful

    CX:DX = segment:offset of real mode call address (see #1816)

CF set on error

    AX = error code (DPMI 1.0+) (8015h) (see #1810)

Notes:	the real mode call structure is static, causing reentrancy problems;

  its contents are only valid at the time of a callback

the called procedure must modify the real mode CS:IP before returning

values are returned to real mode by modifying the real mode call struc

DPMI hosts must provide at least 16 callbacks per client

the limited DPMI host built into Phar Lap's 286|DOS-Extender v2.5 does

  not support this function

SeeAlso: AX=0304h,AX=0C00h

INT 31


INT 31 0304 - DPMI 0.9+ - FREE REAL MODE CALLBACK ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0304h

CX:DX = real mode callback address

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8024h) (see #1810)

Note:	the limited DPMI host built into Phar Lap's 286|DOS-Extender v2.5 does

  not support this function

SeeAlso: AX=0303h

INT 31


INT 31 0305 - DPMI 0.9+ - GET STATE SAVE/RESTORE ADDRESSES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0305h

Return: CF clear

AX = size in bytes of state buffer

BX:CX = real mode address of procedure to save/restore state

SI:(E)DI = protected mode procedure to save/restore state (see #1817)

Notes:	the buffer size will be zero if it is not necessary to preserve state

16-bit programs should call SI:DI, 32-bit programs should call SI:EDI

this function is only needed if using the raw mode switch service

SeeAlso: AX=0306h

INT 31


INT 31 0306 - DPMI 0.9+ - GET RAW MODE SWITCH ADDRESSES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0306h

Return: CF clear

BX:CX -> procedure to switch from real to protected mode (see #1818)

SI:(E)DI -> procedure to switch from protected to real mode

Notes:	16-bit programs should jump to SI:DI, 32-bit programs should use SI:EDI

the caller must save and restore the state of the task with AX=0305h

not supported by MS Windows 3.0 in Standard mode

SeeAlso: AX=0305h

INT 31


INT 31 0400 - DPMI 0.9+ - GET DPMI VERSION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0400h

Return: CF clear

AH = major version of DPMI spec supported

AL = two-digit minor version of DPMI spec supported

BX = DPMI host flags (see #1819)

CL = processor type (02h=80286, 03h=80386, 04h=80486)

DH = curr value of virtual master interrupt controller base interrupt

DL = curr value of virtual slave interrupt controller base interrupt

BUG:	Windows NT versions from the March 1993 beta to at least the Final

  release with fixes to CSD002 report version 0090h (0.144); this has

  reportedly been corrected in the Windows NT 3.5 beta

SeeAlso: AX=0401h,INT 21/AX=250Ch,INT 2F/AX=1687h,INT 67/AX=DE0Ah

INT 31


INT 31 0401 - DPMI 1.0+ - GET DPMI CAPABILITIES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0401h

ES:(E)DI -> 128-byte buffer for host description (see #1820)

Return: CF clear if successful

    AX = capabilities (see #1821)

    CX = reserved (00h)

    DX = reserved (00h)

    buffer filled

CF set on error (DPMI 0.9 only)

SeeAlso: AX=0400h

INT 31


INT 31 0500 - DPMI 0.9+ - GET FREE MEMORY INFORMATION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0500h

ES:(E)DI -> buffer for memory information (see #1822)

Return: CF clear

Notes:	16-bit programs use ES:DI, 32-bit programs use ES:EDI

this function must be considered advisory because other applications

  may affect the results at any time after the call

fields not supported by the DPMI implementation are filled with

  FFFFFFFFh

DPMI 1.0+ supports this function solely for backward compatibility; use

  AX=050Bh instead

the limited DPMI host built into Phar Lap's 286|DOS-Extender v2.5 only

  returns the first field in the memory information record

SeeAlso: AX=0501h,AX=050Bh,AX=0604h

INT 31


INT 31 0501 - DPMI 0.9+ - ALLOCATE MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0501h

BX:CX = size in bytes

Return: CF clear if successful

    BX:CX = linear address of block

    SI:DI = memory block handle for resizing and freeing block

CF set on error

    AX = error code (DPMI 1.0+) (8012h-8014h,8016h,8021h)(see #1810)

Notes:	no selectors are allocated

the memory block is allocated unlocked (can be locked with AX=0600h)

allocations are often page granular (see AX=0604h)

under MS Windows 3.10 Enhanced mode with paging enabled, it is possible

  for this function to fail even if AX=0500h indicates that enough

  memory is available

SeeAlso: AX=0000h,AX=0100h,AX=0500h,AX=0502h,AX=0503h,AX=0504h,AX=0D00h

SeeAlso: INT 2F/AX=FB42h/BX=0002h

INT 31


INT 31 0502 - DPMI 0.9+ - FREE MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0502h

SI:DI = handle of memory block

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8023h) (see #1810)

Note:	any selectors allocated for the memory block must also be freed,

  preferably before freeing the memory block

SeeAlso: AX=0001h,AX=0101h,AX=0501h,AX=0D01h

INT 31


INT 31 0503 - DPMI 0.9+ - RESIZE MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0503h

BX:CX = new size in bytes (nonzero)

SI:DI = handle of memory block

Return: CF clear if successful

    BX:CX = new linear address

    SI:DI = new handle of memory block

CF set on error

    AX = error code (DPMI 1.0+) (8012h-8014h,8016h,8021h,8023h)

(see #1810)

Notes:	any selectors pointing at the block must be updated

the previous memory block handle becomes invalid

an error is returned if the new size is 0

SeeAlso: AX=0102h,AX=0501h,AX=0505h

INT 31


INT 31 0504 - DPMI 1.0+ - ALLOCATE LINEAR MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0504h

EBX = page-aligned linear address of memory block (00000000h if any

      address is acceptable)

ECX = size in bytes (nonzero)

EDX = flags

    bit 0: set to create committed pages instead of uncommitted pages

    bits 1-31 reserved (0)

Return: CF clear if successful

    EBX = linear address of memory block

    ESI = memory block handle

CF set on error

    AX = error code (8001h,8012h-8014h,8016h,8021h,8025h)(see #1810)

Note:	only supported by 32-bit DPMI hosts, but may be used by 16-bit clients

SeeAlso: AX=0501h,AX=0505h

INT 31


INT 31 0505 - DPMI 1.0+ - RESIZE LINEAR MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0505h

ESI = memory block handle

ECX = new size in bytes (nonzero)

EDX = flags

    bit 0: create committed pages rather than uncommitted pages

    bit 1: segment descriptor update required

ES:EBX -> buffer containing array of WORDs with selectors

EDI = number of selectors in array

    bits 2-31 reserved (0)

Return: CF clear if successful

    EBX = new linear base address

    ESI = new memory block handle

CF set on error

    AX = error code (8001h,8012h-8014h,8016h,8021h,8023h)(see #1810)

Notes:	only supported by 32-bit DPMI hosts, but may be used by 16-bit clients

the old memory block handle becomes invalid

if EDX bit 1 set and the block's base address is changed, DPMI updates

  all descriptors for selectors in the update buffer which fall within

  the memory block

SeeAlso: AX=0503h,AX=0504h

INT 31


INT 31 0506 - DPMI 1.0+ - GET PAGE ATTRIBUTES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0506h

ESI = memory block handle

EBX = offset in memory block of first page

ECX = number of pages

ES:EDX -> array of WORDs to hold page attributes (see #1823)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (8001h,8023h,8025h) (see #1810)

Notes:	only supported by 32-bit DPMI hosts, but may be used by 16-bit clients

if EBX is not page-aligned, it will be rounded down

SeeAlso: AX=0504h,AX=0507h,INT 21/AX=251Dh,INT 21/AX=EB00h

INT 31


INT 31 0507 - DPMI 1.0+ - MODIFY PAGE ATTRIBUTES

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0507h

ESI = memory block handle

EBX = offset in memory block of first page

ECX = number of pages

ES:EDX -> array of WORDs with new page attributes (see #1823)

Return: CF clear if successful

CF set on error

    AX = error code (8001h,8002h,8013h,8014h,8021h,8023h,8025h)

(see #1810)

    ECX = number of pages which have been set

Notes:	only supported by 32-bit DPMI hosts, but may be used by 16-bit clients

if EBX is not page-aligned, it will be rounded down

SeeAlso: AX=0504h,AX=0506h,INT 21/AX=251Eh

INT 31


INT 31 0508 - DPMI 1.0+ - MAP DEVICE IN MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0508h

ESI = memory block handle

EBX = page-aligned offset within memory block of page(s) to be mapped

ECX = number of pages to map

EDX = page-aligned physical address of device

Return: CF clear if successful

CF set on error

    AX = error code (8001h,8003h,8023h,8025h) (see #1810)

Notes:	only supported by 32-bit DPMI hosts, but may be used by 16-bit clients

support of this function is optional; hosts are also allowed to support

  the function for some devices but not others

SeeAlso: AX=0504h,AX=0509h,AX=0800h,AX=0801h

INT 31


INT 31 0509 - DPMI 1.0+ - MAP CONVENTIONAL MEMORY IN MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0509h

ESI = memory block handle

EBX = page-aligned offset within memory block of page(s) to map

ECX = number of pages to map

EDX = page-aligned linear address of conventional (below 1M) memory

Return: CF clear if successful

CF set on error

    AX = error code (8001h,8003h,8023h,8025h) (see #1810)

Notes:	only supported by 32-bit DPMI hosts, but may be used by 16-bit clients

support of this function is optional

SeeAlso: AX=0504h,AX=0508h,AX=0801h

INT 31


INT 31 050A - DPMI 1.0+ - GET MEMORY BLOCK SIZE AND BASE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 050Ah

SI:DI = memory block handle

Return: CF clear if successful

    SI:DI = size in bytes

    BX:CX = base address

CF set on error

    AX = error code (8023h) (see #1810)

SeeAlso: AX=0501h,AX=0504h

INT 31


INT 31 050B - DPMI 1.0+ - GET MEMORY INFORMATION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 050Bh

ES:(E)DI -> 128-byte buffer for memory information (see #1824)

Return: CF clear if successful

CF set on error (DPMI 0.9 only)

Note:	16-bit programs use ES:DI, 32-bit programs must use ES:EDI

SeeAlso: AX=0500h

INT 31


INT 31 0600 - DPMI 0.9+ - LOCK LINEAR REGION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0600h

BX:CX = starting linear address

SI:DI = size of region in bytes

Return: CF clear if successful

CF set on error

    none of the memory is locked

    AX = error code (DPMI 1.0+) (8013h,8017h,8025h) (see #1810)

Notes:	pages at beginning and end will be locked if the region overlaps them

may be called multiple times for a given page; the DPMI host keeps a

  lock count for each page

SeeAlso: AX=0004h,AX=0601h,INT 21/AX=251Ah,INT 21/AX=EB06h

INT 31


INT 31 0601 - DPMI 0.9+ - UNLOCK LINEAR REGION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0601h

BX:CX = starting linear address

SI:DI = size of region in bytes

Return: CF clear if successful

CF set on error

    none of the memory is unlocked

    AX = error code (DPMI 1.0+) (8002h,8025h) (see #1810)

Notes:	pages at beginning and end will be unlocked if the region overlaps them

memory whose lock count has not reached zero remains locked

SeeAlso: AX=0005h,AX=0600h,INT 21/AX=251Bh,INT 21/AX=EB07h

INT 31


INT 31 0602 - DPMI 0.9+ - MARK REAL MODE REGION AS PAGEABLE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0602h

BX:CX = starting linear address

SI:DI = size of region in bytes

Return: CF clear if successful

CF set on error

    none of the memory is made pageable

    AX = error code (DPMI 1.0+) (8002h,8025h) (see #1810)

Notes:	must relock all unlocked real mode memory before terminating process

  for DPMI 0.9; DPMI 1.0+ automatically relocks real mode memory

pages at beginning and end will be unlocked if the region overlaps them

pageability of real mode pages is binary, not a count

SeeAlso: AX=0600h,AX=0603h

INT 31


INT 31 0603 - DPMI 0.9+ - RELOCK REAL MODE REGION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0603h

BX:CX = starting linear address

SI:DI = size of region in bytes

Return: CF clear if successful

CF set on error

    none of the memory is relocked

    AX = error code (DPMI 1.0+) (8002h,8013h,8025h) (see #1810)

Notes:	pages at beginning and end will be relocked if the region overlaps them

pageability of real mode pages is binary, not a count

SeeAlso: AX=0602h

INT 31


INT 31 0604 - DPMI 0.9+ - GET PAGE SIZE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0604h

Return: CF clear if successful

    BX:CX = page size in bytes

CF set on error

    AX = error code (DPMI 1.0+) (see also #1810)

8001h unsupported, 16-bit host

BUG:	the Borland C++ 3.1 DPMILOAD returns with CF clear but BX and CX

  unchanged

INT 31


INT 31 0700 - DPMI 0.9+ - MARK PAGES AS PAGING CANDIDATES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 0700h

BX:CX = starting linear page number

SI:DI = number of pages to mark as paging candidates

Return: ???

Note:	although marked as reserved in versions 0.9 and 1.0 of the DPMI

  specification, this function is called by MS Windows TASKMAN,

  PROGMAN, and KERNEL

SeeAlso: AX=0701h,AX=0702h

INT 31


INT 31 0701 - DPMI 0.9+ - DISCARD PAGES

available only in protected mode

partially documented function

Category: E - DOS extenders

Inp.:

AX = 0701h

BX:CX = starting linear page number

SI:DI = number of pages to discard

Return: ???

Note:	although marked as reserved in versions 0.9 and 1.0 of the DPMI

  specification, this function is called by MS Windows TASKMAN,

  PROGMAN, and KERNEL

SeeAlso: AX=0700h,AX=0703h

INT 31


INT 31 0702 - DPMI 0.9+ - MARK PAGE AS DEMAND PAGING CANDIDATE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0702h

BX:CX = starting linear address

SI:DI = number of bytes to mark as paging candidates

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8025h) (see #1810)

Notes:	this function is advisory, and does not force immediate paging

partial pages will not be discarded

SeeAlso: AX=0700h,AX=0703h

INT 31


INT 31 0703 - DPMI 0.9+ - DISCARD PAGE CONTENTS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0703h

BX:CX = starting linear address

SI:DI = number of bytes to mark as discarded

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8025h) (see #1810)

Notes:	this function is advisory, and may be ignored by DPMI implementations

partial pages will not be discarded

SeeAlso: AX=0701h,AX=0702h

INT 31


INT 31 0800 - DPMI 0.9+ - PHYSICAL ADDRESS MAPPING

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0800h

BX:CX = physical address (should be above 1 MB)

SI:DI = size in bytes

Return: CF clear if successful

    BX:CX = linear address which maps the requested physical memory

CF set on error

    AX = error code (DPMI 1.0+) (8003h,8021h) (see #1810)

Notes:	implementations may refuse this call because it can circumvent protects

the caller must build an appropriate selector for the memory

do not use for memory mapped in the first megabyte

SeeAlso: AX=0002h,AX=0508h,AX=0509h,AX=0801h,INT 21/AX=250Ah,INT 21/AX=EB05h

INT 31


INT 31 0801 - DPMI 1.0+ - FREE PHYSICAL ADDRESS MAPPING

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0801h

BX:CX = linear address returned by AX=0800h

Return: CF clear if successful

CF set on error

    AX = error code (8025h) (see #1810)

Note:	should be called at end of access to device mapped with AX=0800h

SeeAlso: AX=0508h,AX=0509h,AX=0800h,INT 21/AX=EB03h

INT 31


INT 31 0900 - DPMI 0.9+ - GET AND DISABLE VIRTUAL INTERRUPT STATE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0900h

Return: CF clear

virtual interrupts disabled

AL = previous interrupt state (00h disabled, 01h enabled)

AH preserved

Notes:	the previous state may be restored simply by executing another INT 31

a CLI instruction may be used if the previous state is unimportant,

  but should be assumed to be very slow due to trapping by the host

SeeAlso: AX=0901h,AX=0902h

INT 31


INT 31 0901 - DPMI 0.9+ - GET AND ENABLE VIRTUAL INTERRUPT STATE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0901h

Return: CF clear

virtual interrupts enabled

AL = previous interrupt state (00h disabled, 01h enabled)

AH preserved

Notes:	the previous state may be restored simply by executing another INT 31

a STI instruction may be used if the previous state is unimportant,

  but should be assumed to be very slow due to trapping by the host

SeeAlso: AX=0900h,AX=0902h

INT 31


INT 31 0902 - DPMI 0.9+ - GET VIRTUAL INTERRUPT STATE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0902h

Return: CF clear

AL = current interrupt state (00h disabled, 01h enabled)

Note:	should be used rather than PUSHF because that instruction yields the

  physical interrupt state rather than the per-client virtualized

  interrupt flag

SeeAlso: AX=0900h,AX=0901h

INT 31


INT 31 0A00 - DPMI 0.9+ - GET VENDOR SPECIFIC API ENTRY POINT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0A00h

DS:(E)SI -> case-sensitive ASCIZ vendor name or identifier

Return: CF clear if successful

    ES:(E)DI -> FAR extended API entry point

    DS, FS, GS, EAX, EBX, ECX, EDX, ESI, EBP destroyed

CF set on error

    AX = error code (DPMI 1.0+) (8001h) (see #1810)

Notes:	extended API parameters are vendor-specific

DPMI 1.0+ supports this function solely for backward compatibility; use

  INT 2F/AX=168Ah instead

this function is not supported by MS Windows 3.10, BC++ 3.1 DPMILOAD,

  or QDPMI v1.0x; use INT 2F/AX=168Ah instead.	It is supported by

  386MAX v7.01.

SeeAlso: INT 2F/AX=168Ah

INT 31


INT 31 0B00 - DPMI 0.9+ - SET DEBUG WATCHPOINT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0B00h

BX:CX = linear address

DL = size (1,2,4 bytes)

DH = type (00h execute, 01h write, 02h read/write)

Return: CF clear if successful

    BX = watchpoint handle

CF set on error

    AX = error code (DPMI 1.0+) (8016h,8021h,8025h) (see #1810)

SeeAlso: AX=0212h,AX=0601h

INT 31


INT 31 0B01 - DPMI 0.9+ - CLEAR DEBUG WATCHPOINT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0B01h

BX = watchpoint handle

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8023h) (see #1810)

Note:	the watchpoint handle is freed

SeeAlso: AX=0B00h

INT 31


INT 31 0B02 - DPMI 0.9+ - GET STATE OF DEBUG WATCHPOINT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0B02h

BX = watchpoint handle

Return: CF clear if successful

    AX = status flags

bit 0: watch point has been executed since AX=0B00h or AX=0B03h

CF set on error

    AX = error code (DPMI 1.0+) (8023h) (see #1810)

SeeAlso: AX=0B00h,AX=0B03h

INT 31


INT 31 0B03 - DPMI 0.9+ - RESET DEBUG WATCHPOINT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0B03h

BX = watchpoint handle

Return: CF clear if successful

CF set on error

    AX = error code (DPMI 1.0+) (8023h) (see #1810)

SeeAlso: AX=0B02h

INT 31


INT 31 0C00 - DPMI 1.0+ - INSTALL RESIDENT HANDLER INIT CALLBACK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0C00h

ES:(E)DI -> resident service provider structure (see #1825)

Return: CF clear if successful

CF set on error

    AX = error code (8015h,8021h,8025h) (see #1810 at AX=0000h)

Note:	calling this function declares an intent to provide resident

  protected mode services after terminating with AX=0C01h

SeeAlso: AX=0303h,AX=0C01h

INT 31


INT 31 0C01 - DPMI 1.0+ - TERMINATE AND STAY RESIDENT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0C01h

BL = return code

DX = number of paragraphs of DOS memory to reserve (0 or >= 6)

Return: never

Notes:	should only be used if the program will only provide services to

  other DPMI programs

any protected mode memory remains allocated to the program unless

  explicitly freed before this call

must first call AX=0C00h or program will simply be terminated

SeeAlso: AX=0C00h,INT 21/AH=31h

INT 31


INT 31 0D00 - DPMI 1.0+ - ALLOCATE SHARED MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0D00h

ES:(E)DI -> shared memory allocation request structure (see #1826)

Return: CF clear if successful

    request structure updated

CF set on error

    AX = error code (8012h,8013h,8014h,8016h,8021h) (see #1810)

Note:	first 16 bytes of memory block will be initialized to zeros on the

  first allocation

SeeAlso: AX=0501h,AX=0D01h,AX=0D02h

INT 31


INT 31 0D01 - DPMI 1.0+ - FREE SHARED MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0D01h

SI:DI = shared memory block handle

Return: CF clear if successful

CF set on error

    AX = error code (8023h) (see #1810)

Notes:	handle becomes invalid after this call

DPMI maintains separate global and virtual machine use counts for each

  shared memory block; when the global use counts reaches zero, the

  block is finally destroyed

SeeAlso: AX=0502h,AX=0D00h

INT 31


INT 31 0D02 - DPMI 1.0+ - SERIALIZE SHARED MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0D02h

SI:DI = shared memory block handle

DX = flags

    bit 0: return immediately rather than suspending if serialization

  unavailable

    bit 1: shared rather than exclusive serialization

    bits 2-15 reserved (0)

Return: CF clear if successful

CF set on error

    AX = error code (8004h,8005h,8017h-8019h,8023h) (see #1810)

Notes:	an exclusive serialization blocks any other serialization attempts for

  the same block by another virtual machine; a shared serialization

  blocks attempts at exclusive serialization by another virtual machine

hosts are not required to detect deadlock

a client's interrupt handler can cancel a serialization call which

  caused it to block by calling AX=0D03h

SeeAlso: AX=0D00h,AX=0D03h

INT 31


INT 31 0D03 - DPMI 1.0+ - FREE SERIALIZATION ON SHARED MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0D03h

SI:DI = shared memory block handle

DX = flags

    bit 0: release shared serialization rather than exclusive serialztn

    bit 1: free pending serialization

    bits 2-15 reserved (0)

Return: CF clear if successful

CF set on error

    AX = error code (8002h,8023h) (see #1810 at AX=0000h)

SeeAlso: AX=0D00h,AX=0D02h

INT 31


INT 31 0E00 - DPMI 1.0+ - GET COPROCESSOR STATUS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0E00h

Return: CF clear

AX = coprocessor status (see #1827)

Note:	supported by 386MAX v6.01, which otherwise only supports DPMI 0.9

SeeAlso: AX=0E01h

INT 31


INT 31 0E01 - DPMI 1.0+ - SET EMULATION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = 0E01h

BX = coprocessor flag bits (see #1828)

Return: CF clear if successful

CF set on error

    AX = error code (8026h) (see #1810 at AX=0000h)

Note:	supported by 386MAX v6.01, which otherwise only supports DPMI 0.9

SeeAlso: AX=0E00h

INT 31


INT 31 57-- - Netroom3 DPMI.EXE v3.00 - ???

Category: E - DOS extenders

Inp.:

AH = 57h

AL = subfunction (at least 02h,03h,04h,05h,07h,08h,09h,0Ah)

???

Return: ???

SeeAlso: INT 2C/AX=0000h"RM386"

INT 31


INT 31 5702 - Netroom3 DPMI.EXE v3.00 - SWITCH TO PROTECTED MODE

Category: E - DOS extenders

Inp.:

AX = 5702h

DX = PSP segment of caller

STACK: WORD	???

       WORD	flags (bit 0 set if 32-bit program)

Return: as for DPMI mode-switch entry point (see #1441 at INT 2F/AX=1687h)

Note:	this function is called by the real-mode DPMI mode-switch entry point

SeeAlso: INT 2F/AX=1687h

INT 31


INT 31 EE00 - DOS32 v3.0+ - GET DOS32 VERSION AND SELECTOR VALUES

Category: E - DOS extenders

Inp.:

AX = EE00h

Return: AL = minor version (BCD)

AH = major version (BCD)

DL = system type (1=raw DOS, 2=XMS, 4=VCPI, 8=DPMI)

BX = selector of 4GB data segment with zero base address

Program: DOS32 is a 32 bit DOS extender by Adam Seychell.

SeeAlso: AX=EE02h

INT 31


INT 31 EE02 - DOS32 v3.0+ - GET DOS32 ADDRESS INFORMATION

Category: E - DOS extenders

Inp.:

AX = EE02h

Return: EBX = 32bit linear address of the program segment

EDX = Total size in bytes of the programs .EXE file after linking.

ESI = offset address of PSP

EDI = offset address of program environment

ECX = offset address of the program's .EXE ASCIZ file name and path

SeeAlso: AX=EE00h,AX=EE20h

INT 31


INT 31 EE20 - DOS32 v3.0+ - GET REAL MODE CALL BACK ADDRESS WITH RETF STACK FRAME

Category: E - DOS extenders

Inp.:

AX = EE20h

ESI = offset of the real mode call back function

Return: CF clear if successful

    CX:DX = real mode address to call up to the protected mode

  procedure

CF set on error

SeeAlso: AX=EE02h,AX=EE21h

INT 31


INT 31 EE21 - DOS32 v3.0+ - GET REAL MODE CALL BACK ADDRESS WITH IRET STACK FRAME

Category: E - DOS extenders

Inp.:

AX = EE21h

ESI = offset of the real mode call back function

Return: CF clear if successful

    CX:DX = real mode address to call up to the protected mode

  procedure

CF set on error

SeeAlso: AX=EE20h

INT 31


INT 31 EE30 - DOS32 v3.0+ - TERMINATE AND STAY RESIDENT

Category: E - DOS extenders

Inp.:

AX = EE30h

SeeAlso: AX=EE21h,AX=EE40h,INT 21/AH=31h

INT 31


INT 31 EE40 - DOS32 v3.0+ - UNDO PREVIOUS MEMORY ALLOCATION or DMA BUFFER

Category: E - DOS extenders

Inp.:

AX = EE40h

Return: CF clear if successful

CF set on error

SeeAlso: AX=EE41h,AX=EE42h

INT 31


INT 31 EE41 - DOS32 v3.0+ - ALLOCATE 16KB DMA BLOCK

Category: E - DOS extenders

Inp.:

AX = EE41h

Return: CF clear if successful

    EBX -> 16KB DMA block (Physical address)

    EDX -> ???

CF set on error

SeeAlso: AX=EE42h

INT 31


INT 31 EE42 - DOS32 v3.0+ - ALLOCATE MEMORY BLOCK

Category: E - DOS extenders

Inp.:

AX = EE42h

EDX = size in bytes

Return: CF clear if successful

    EAX = size in bytes

    EDX -> memory block

CF set on error

Note:	Size is rounded off to the next 4kb boundary

SeeAlso: AX=EE41h

INT 31


INT 31 FF00 - CauseWay - "Info" - GET SYSTEM SELECTORS/FLAGS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF00h

Return: AX = selector for flag address space (base 00000000h, limit 4GB)

BX = selector for current PSP segment (limit 0100h)

(E)CX = size of DOS transfer buffer (max 64K)

DX = real-mode segment address of DOS transfer buffer

ES:(E)SI = protected-mode address of DOS transfer buffer

EDI = system flags (see #2670)

Program: CauseWay is a 386 DOS extender by Michael Devore and John Wildsmith

  for use with assembly language programs

Notes:	the entire transfer buffer can be addressed with a 16-bit offset in

  protected mode

CauseWay always maps selector 0040h to the BIOS data segment at

  real-mode segment 0040h; when not running under a DPMI host, CauseWay

  also provides selectors A000h, B000h, and B800h mapped to video

  memory

SeeAlso: AX=FF25h

INT 31


INT 31 FF01 - CauseWay - "IntXX" - SIMULATE REAL-MODE INTERRUPT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF01h

BL = interrupt number

ES:(E)DI -> real-mode register list (see #1815 at AX=0300h)

Return: register list updated

Note:	CauseWay fills in the values for SS, SP, and FLAGS itself, and ignores

  the values specified for CS and IP

SeeAlso: AX=0300h,AX=FF02h

INT 31


INT 31 FF02 - CauseWay - "FarCallReal" - SIMULATE REAL-MODE FAR CALL

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF02h

ES:(E)DI -> real-mode register list (see #1815 at AX=0300h)

Return: register list updated

SeeAlso: AX=0301h,AX=FF01h

INT 31


INT 31 FF03 - CauseWay - "GetSel" - ALLOCATE NEW SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF03h

Return: CF clear if successful

    BX = new selector

CF set on error

Note:	the new selector is initialized with a base address of 000000h, a limit

  of 0000h, and attributes read/write expand-up data

SeeAlso: AX=FF04h,AX=FF05h,AX=FF06h

INT 31


INT 31 FF04 - CauseWay - "RelSel" - RELEASE A SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF04h

BX = selector

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF03h,AX=FF06h

INT 31


INT 31 FF05 - CauseWay - "CodeSel" - CONVERT SELECTOR TO EXECUTABLE CODE SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF05h

BX = selector

CL = default operation size (00h = 16-bit, 01h = 32-bit)

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF03h

INT 31


INT 31 FF06 - CauseWay - "AliasSel" - CREATE READ/WRITE DATA ALIAS SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF06h

BX = original selector

Return: CF clear if successful

    AX = new data selector aliasing original selector

CF set on error

SeeAlso: AX=FF03h,AX=FF04h

INT 31


INT 31 FF07 - CauseWay - "GetSelDet" - GET SELECTOR BASE AND LIMIT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF07h

BX = selector

Return: CF clear if successful

    CX:DX = base address

    SI:DI = limit (bytes)

CF set on error

SeeAlso: AX=FF08h,AX=FF09h

INT 31


INT 31 FF08 - CauseWay - "GetSelDet32" - GET SELECTOR BASE AND LIMIT (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF08h

Return: CF clear if successful

    EDX = base address

    ECX = limit (bytes)

CF set on error

SeeAlso: AX=FF07h,AX=FF0Ah

INT 31


INT 31 FF09 - CauseWay - "SetSelDet" - SET SELECTOR BASE AND LIMIT

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF09h

BX = selector

CX:DX = new base address

SI:DI = new byte-granular limit

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF07h,AX=FF0Ah

INT 31


INT 31 FF0A - CauseWay - "SetSelDet32" - SET SELECTOR BASE AND LIMIT (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF0Ah

BX = selector

EDX = new base address

ECX = new byte-granular limit

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF08h,AX=FF09h

INT 31


INT 31 FF0B - CauseWay - "GetMem" - ALLOCATE BLOCK OF MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF0Bh

CX:DX = size in bytes (FFFFh:FFFFh to get size of largest available)

Return: CF clear if successful

    BX = selector for accessing block if requested size not FFFFh:FFFFh

    CX:DX = size of largest available block if requested FFFFh:FFFFh

CF set on error

SeeAlso: AX=FF0Ch,AX=FF0Dh,AX=FF0Fh,AX=FF10h

INT 31


INT 31 FF0C - CauseWay - "GetMem32" - ALLOCATE BLOCK OF MEMORY (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF0Ch

ECX = size in bytes (FFFFFFFFh to get size of largest available block)

Return: CF clear if successful

    BX = selector for accessing block if requested size not FFFFh:FFFFh

    ECX = size of largest available block if requested FFFFh:FFFFh

CF set on error

SeeAlso: AX=FF0Bh,AX=FF0Eh,AX=FF0Fh,AX=FF11h

INT 31


INT 31 FF0D - CauseWay - "ResMem" - RESIZE MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF0Dh

BX = selector for block to be resized

CX:DX = new size in bytes

Return: CF clear if successful

CF set on error

Note:	the memory block may have to be copied to another location in order

  to satisfy the requested new size, in which case the base address

  of the selector is updated

SeeAlso: AX=FF0Bh,AX=FF0Eh,AX=FF12h

INT 31


INT 31 FF0E - CauseWay - "ResMem32" - RESIZE MEMORY BLOCK (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF0Eh

BX = selector for block to be resized

ECX = new size in bytes

Return: CF clear if successful

CF set on error

Note:	the memory block may have to be copied to another location in order

  to satisfy the requested new size, in which case the base address

  of the selector is updated

SeeAlso: AX=FF0Ch,AX=FF0Dh,AX=FF13h

INT 31


INT 31 FF0F - CauseWay - "RelMem" - RELEASE PREVIOUSLY ALLOCATED MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF0Fh

BX = selector for block to be released

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF0Bh,AX=FF0Ch,AX=FF14h

INT 31


INT 31 FF10 - CauseWay - "GetMemLinear" - ALLOCATE MEMORY WITHOUT SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF10h

CX:DX = size of block in bytes

Return: CF clear if successful

    SI:DI = linear address of allocated block

CF set on error

Note:	this function may return addresses above 16M

SeeAlso: AX=FF0Bh,AX=FF11h,AX=FF12h,AX=FF14h

INT 31


INT 31 FF11 - CauseWay - "GetMemLinear32" - ALLOCATE MEMORY WITHOUT SELECTOR

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF11h

ECX = size of block in bytes

Return: CF clear if successful

    ESI = linear address of allocated block

CF set on error

Note:	this function may return addresses above 16M

SeeAlso: AX=FF0Ch,AX=FF10h,AX=FF13h,AX=FF14h

INT 31


INT 31 FF12 - CauseWay - "ResMemLinear" - RESIZE LINEAR MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF12h

CX:DX = new size in bytes

SI:DI = linear address of block to be resized

Return: CF clear if successful

   SI:DI = new linear address of block

CF set on error

SeeAlso: AX=FF0Dh,AX=FF10h,AX=FF13h

INT 31


INT 31 FF13 - CauseWay - "ResMemLinear32" - RESIZE LINEAR MEMORY BLOCK (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF13h

ECX = new size in bytes

ESI = linear address of block to be resized

Return: CF clear if successful

   ESI = new linear address of block

CF set on error

SeeAlso: AX=FF0Eh,AX=FF11h,AX=FF12h

INT 31


INT 31 FF14 - CauseWay - "RelMemLinear" - RELEASE LINEAR MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF14h

SI:DI = linear address of block to be released

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF0Fh,AX=FF10h,AX=FF15h

INT 31


INT 31 FF15 - CauseWay - "RelMemLinear32" - RELEASE LINEAR MEMORY BLOCK (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF15h

ESI = linear address of block to be released

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF0Fh,AX=FF11h,AX=FF15h

INT 31


INT 31 FF16 - CauseWay - "GetMemNear" - ALLOCATE APPLICATION-RELATIVE MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF16h

EBX = size in bytes of block to allocate

Return: CF clear if successful

   ESI = application-relative linear address of allocated block

CF set on error

SeeAlso: AX=FF17h,AX=FF18h,AX=FF19h

INT 31


INT 31 FF17 - CauseWay - "ResMemNear" - RESIZE APPLICATION-RELATIVE MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF17h

EBX = size in bytes of block to allocate

ESI = application-relative linear address of block

Return: CF clear if successful

    ESI = new application-relative linear address of block

CF set on error

SeeAlso: AX=FF16h,AX=FF18h,AX=FF19h

INT 31


INT 31 FF18 - CauseWay - "RelMemNear" - RELEASE APPLICATION-RELATIVE MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF18h

ESI = application-relative linear address of block

Return: CF clear if successful

CF set on error

SeeAlso: AX=FF16h,AX=FF17h,AX=FF19h

INT 31


INT 31 FF19 - CauseWay - "Linear2Near" - CONVERT LINEAR TO APP-RELATIVE ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF19h

ESI = linear address

Return: ESI = application-relative linear address

SeeAlso: AX=FF1Ah

INT 31


INT 31 FF1A - CauseWay - "Near2Linear" - CONVERT APP-RELATIVE TO LINEAR ADDRESS

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF1Ah

ESI = application-relative linear address

Return: ESI = linear address

SeeAlso: AX=FF19h

INT 31


INT 31 FF1B - CauseWay - "LockMem" - LOCK REGION OF MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF1Bh

BX:CX = starting linear address

SI:DI = size of region in bytes

Return: CF clear if successful

CF set on error

Desc:	prevent memory from being swapped out by the virtual memory manager

Note:	locks are applied on 4K page boundaries, so memory above and below

  the specified region may be locked as well

SeeAlso: AX=FF1Ch,AX=FF1Dh

INT 31


INT 31 FF1C - CauseWay - "LockMem32" - LOCK REGION OF MEMORY (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF1Ch

ESI = starting linear address

ECX = size of region in bytes

Return: CF clear if successful

CF set on error

Desc:	prevent memory from being swapped out by the virtual memory manager

Note:	locks are applied on 4K page boundaries, so memory above and below

  the specified region may be locked as well

SeeAlso: AX=FF1Bh,AX=FF1Eh,AX=FF1Fh

INT 31


INT 31 FF1D - CauseWay - "UnLockMem" - UNLOCK REGION OF MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF1Dh

BX:CX = starting linear address

SI:DI = size of region in bytes

Return: CF clear if successful

CF set on error

Desc:	allow memory to be swapped out by the virtual memory manager

Note:	locks are applied on 4K page boundaries, so memory above and below

  the specified region may be unlocked as well

SeeAlso: AX=FF1Bh,AX=FF1Eh

INT 31


INT 31 FF1E - CauseWay - "UnLockMem32" - UNLOCK REGION OF MEMORY (32-bit)

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF1Eh

ESI = starting linear address

ECX = size of region in bytes

Return: CF clear if successful

CF set on error

Desc:	allow memory to be swapped out by the virtual memory manager

Note:	locks are applied on 4K page boundaries, so memory above and below

  the specified region may be unlocked as well

SeeAlso: AX=FF1Ch,AX=FF1Dh,AX=FF20h

INT 31


INT 31 FF1F - CauseWay - "LockMemNear" - LOCK APPLICATION-RELATIVE MEMORY REGION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF1Fh

ESI = starting application-relative linear address

EBX = size of region in bytes

Return: CF clear if successful

CF set on error

Desc:	prevent memory from being swapped out by the virtual memory manager

Note:	locks are applied on 4K page boundaries, so memory above and below

  the specified region may be locked as well

SeeAlso: AX=FF1Ch,AX=FF20h

INT 31


INT 31 FF20 - CauseWay - "UnLockMemNear" - UNLOCK APP-RELATIVE MEMORY REGION

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF20h

ESI = starting application-relative linear address

ECX = size of region in bytes

Return: CF clear if successful

CF set on error

Desc:	allow memory to be swapped out by the virtual memory manager

Note:	locks are applied on 4K page boundaries, so memory above and below

  the specified region may be unlocked as well

SeeAlso: AX=FF1Eh,AX=FF1Fh

INT 31


INT 31 FF21 - CauseWay - "GetMemDOS" - ALLOCATE CONVENTIONAL MEMORY

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF21h

BX = number of paragraphs to allocate

Return: CF clear if successful

    AX = real-mode segment of allocated block

    DX = initial selector for block

CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

    BX = size of largest available block

Note:	if the requested size is greater than 64K, contiguous selectors will

  be allocated, one for each 64K; for 32-bit applications, the first

  selector's limit will be set to the size of the entire block, while

  that selector will have a limit of 64K for 16-bit applications.  All

  selectors after the first one have a limit of 64K except the final

  one

SeeAlso: AX=FF22h,AX=FF23h,INT 21/AH=48h

INT 31


INT 31 FF22 - CauseWay - "ResMemDOS" - RESIZE CONVENTIONAL MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF22h

BX = new size in paragraphs

DX = initial selector for block

Return: CF clear if successful

CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

    BX = maximum number of paragraphs available

Note:	this function will also fail if the block is expanded past a 64K

  boundary and the next selector is already in use

SeeAlso: AX=FF21h,AX=FF23h,INT 21/AH=49h

INT 31


INT 31 FF23 - CauseWay - "RelMemDOS" - RELEASE CONVENTIONAL MEMORY BLOCK

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF23h

DX = initial selector for block

Return: CF clear if successful

CF set on error

    AX = DOS error code (see #0885 at INT 21/AH=59h)

Note:	all descriptors allocated for the block are freed

SeeAlso: AX=FF21h,AX=FF22h,INT 21/AH=4Ah

INT 31


INT 31 FF24 - CauseWay - "ExecOverlay" - LOAD AND OPTIONALLY EXECUTE APP CODE

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF24h

EBX = flags

    bit 0: don't execute (overlay only)

    bit 1: don't preserve relocation information

ES:EDX -> filename (see also #2669)

FS:ESI -> commandline (ESI = 00000000h if no commandline)

GS:EDI -> name (CW's /o option)

Return: CF clear if successful

    ---EBX bit 0 set---

    CX:EDX = program entry point (CS:EIP)

    SI = segment of PSP

    ---EBX bit 1 set---

    BX:EAX = initial SS:ESP

    EDI high word = base segment

    EDI low word = number of segments

    EBP = start of segment definitions

CF set on error

    AX = error code

0001h DOS file access error

0002h not a CuaseWay 3P file

0003h not enough memory

SeeAlso: INT 21/AH=4Bh

INT 31


INT 31 FF25 - CauseWay - "GetDOSTrans" - GET DOS TRANSFER BUFFER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF25h

Return: BX = real-mode segment of transfer buffer

ECX = transfer buffer size

DX = protected-mode selector for transfer buffer

Note:	the default buffer size of 8K is sufficient for most applications,

  but an application performing large amounts of file I/O may benefit

  from allocating its own, larger buffer

SeeAlso: AX=FF00h,AX=FF26h

INT 31


INT 31 FF26 - CauseWay - "SetDOSTrans" - SET DOS TRANSFER BUFFER

available only in protected mode

Category: E - DOS extenders

Inp.:

AX = FF26h

BX = real-mode segment of new transfer buffer

ECX = new transfer buffer size

DX = protected-mode selector for new transfer buffer

Return: nothing

Note:	the specific buffer must be located in conventional memory; only the

  first 64K will be used

SeeAlso: AX=FF25h

INT 31


INT 32 ---- - VIRUS - reportedly used by "Tiny" Viruses

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 21/AX=FFFFh"VIRUS",INT 31"VIRUS",INT 44"VIRUS"

INT 32


INT 32 ---- - VIRUS - "Plovdiv 1.3"/"Damage 1.3" - ORIGINAL INT 21h VECTOR

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 31"VIRUS",INT 9E"VIRUS"

INT 32


INT 33 0000 - MS MOUSE - RESET DRIVER AND READ STATUS

Category: M - mouse/pointing device

Inp.:

AX = 0000h

Return: AX = status

    0000h hardware/driver not installed

    FFFFh hardware/driver installed

BX = number of buttons

    0000h other than two

    0002h two buttons (many drivers)

    0003h Mouse Systems/Logitech three-button mouse

    FFFFh two buttons

Notes:	to use mouse on a Hercules-compatible monographics card in graphics

  mode, you must first set 0040h:0049h to 6 for page 0 or 5 for page 1,

  and then call this function.	Logitech drivers v5.01 and v6.00

  reportedly do not correctly use Hercules graphics in dual-monitor

  systems, while version 4.10 does.

the Logitech mouse driver contains the signature string "LOGITECH"

  three bytes past the interrupt handler; many of the Logitech mouse

  utilities check for this signature.

Logitech MouseWare v6.30 reportedly does not support CGA video modes

  if no CGA is present when it is started and the video board is

  later switched into CGA emulation

SeeAlso: AX=0011h,AX=0021h,AX=002Fh,INT 62/AX=007Ah,INT 74

INT 33


INT 33 0001 - MS MOUSE v1.0+ - SHOW MOUSE CURSOR

Category: M - mouse/pointing device

Inp.:

AX = 0001h

SeeAlso: AX=0002h,INT 16/AX=FFFEh,INT 62/AX=007Bh,INT 6F/AH=06h"F_TRACK_ON"

INT 33


INT 33 0002 - MS MOUSE v1.0+ - HIDE MOUSE CURSOR

Category: M - mouse/pointing device

Inp.:

AX = 0002h

Note:	multiple calls to hide the cursor will require multiple calls to

  function 01h to unhide it.

SeeAlso: AX=0001h,AX=0010h,INT 16/AX=FFFFh,INT 62/AX=007Bh

SeeAlso: INT 6F/AH=08h"F_TRACK_OFF"

INT 33


INT 33 0003 - MS MOUSE v1.0+ - RETURN POSITION AND BUTTON STATUS

Category: M - mouse/pointing device

Inp.:

AX = 0003h

Return: BX = button status (see #1829)

CX = column

DX = row

Note:	in text modes, all coordinates are specified as multiples of the cell

  size, typically 8x8 pixels

SeeAlso: AX=0004h,AX=000Bh,INT 2F/AX=D000h"ZWmous"

INT 33


INT 33 0004 - MS MOUSE v1.0+ - POSITION MOUSE CURSOR

Category: M - mouse/pointing device

Inp.:

AX = 0004h

CX = column

DX = row

Note:	the row and column are truncated to the next lower multiple of the cell

  size (typically 8x8 in text modes); however, some versions of the

  Microsoft documentation incorrectly state that the coordinates are

  rounded

SeeAlso: AX=0003h,INT 62/AX=0081h,INT 6F/AH=10h"F_PUT_SPRITE"

INT 33


INT 33 0005 - MS MOUSE v1.0+ - RETURN BUTTON PRESS DATA

Category: M - mouse/pointing device

Inp.:

AX = 0005h

BX = button number (see #1830)

Return: AX = button states (see #1829)

BX = number of times specified button has been pressed since last call

CX = column at time specified button was last pressed

DX = row at time specified button was last pressed

Note:	at least for the Genius mouse driver, the number of button presses

  returned is limited to 7FFFh

SeeAlso: AX=0006h,INT 62/AX=007Ch

INT 33


INT 33 0006 - MS MOUSE v1.0+ - RETURN BUTTON RELEASE DATA

Category: M - mouse/pointing device

Inp.:

AX = 0006h

BX = button number (see #1830)

Return: AX = button states (see #1829)

BX = number of times specified button has been released since last call

CX = column at time specified button was last released

DX = row at time specified button was last released

Note:	at least for the Genius mouse driver, the number of button releases

  returned is limited to 7FFFh

SeeAlso: AX=0005h,INT 62/AX=007Ch

INT 33


INT 33 0007 - MS MOUSE v1.0+ - DEFINE HORIZONTAL CURSOR RANGE

Category: M - mouse/pointing device

Inp.:

AX = 0007h

CX = minimum column

DX = maximum column

Note:	in text modes, the minimum and maximum columns are truncated to the

  next lower multiple of the cell size, typically 8x8 pixels

SeeAlso: AX=0008h,AX=0010h,AX=0031h,INT 62/AX=0080h

SeeAlso: INT 6F/AH=0Ch"F_SET_LIMITS_X"

INT 33


INT 33 0008 - MS MOUSE v1.0+ - DEFINE VERTICAL CURSOR RANGE

Category: M - mouse/pointing device

Inp.:

AX = 0008h

CX = minimum row

DX = maximum row

Note:	in text modes, the minimum and maximum rows are truncated to the

  next lower multiple of the cell size, typically 8x8 pixels

SeeAlso: AX=0007h,AX=0010h,AX=0031h,INT 62/AX=0080h

SeeAlso: INT 6F/AH=0Eh"F_SET_LIMITS_Y"

INT 33


INT 33 0009 - MS MOUSE v3.0+ - DEFINE GRAPHICS CURSOR

Category: M - mouse/pointing device

Inp.:

AX = 0009h

BX = column of cursor hot spot in bitmap (-16 to 16)

CX = row of cursor hot spot (-16 to 16)

ES:DX -> mask bitmap (see #1831)

Notes:	in graphics modes, the screen contents around the current mouse cursor

  position are ANDed with the screen mask and then XORed with the

  cursor mask

the Microsoft mouse driver v7.04 and v8.20 uses only BL and CL, so the

  hot spot row/column should be limited to -128..127

Microsoft KnowledgeBase article Q19850 states that the high bit is

  right-most, but that statement is contradicted by all other available

  documentation

SeeAlso: AX=000Ah,AX=0012h,AX=002Ah,INT 62/AX=007Fh,INT 6F/AH=0Ah"F_DEF_MASKS"

INT 33


INT 33 000A - MS MOUSE v3.0+ - DEFINE TEXT CURSOR

Category: M - mouse/pointing device

Inp.:

AX = 000Ah

BX = hardware/software text cursor

    0000h software

CX = screen mask

DX = cursor mask

    0001h hardware

CX = start scan line

DX = end scan line

Note:	when the software cursor is selected, the character/attribute data at

  the current screen position is ANDed with the screen mask and then

  XORed with the cursor mask

SeeAlso: AX=0009h,INT 62/AX=007Eh

INT 33


INT 33 000B - MS MOUSE v1.0+ - READ MOTION COUNTERS

Category: M - mouse/pointing device

Inp.:

AX = 000Bh

Return: CX = number of mickeys mouse moved horizontally since last call

DX = number of mickeys mouse moved vertically

Notes:	a mickey is the smallest increment the mouse can sense

positive values indicate down/right

SeeAlso: AX=0003h,AX=001Bh,AX=0027h

INT 33


INT 33 000C - MS MOUSE v1.0+ - DEFINE INTERRUPT SUBROUTINE PARAMETERS

Category: M - mouse/pointing device

Inp.:

AX = 000Ch

CX = call mask (see #1832)

ES:DX -> FAR routine (see #1833)

SeeAlso: AX=0018h

INT 33


INT 33 000D - MS MOUSE v1.0+ - LIGHT PEN EMULATION ON

Category: M - mouse/pointing device

Inp.:

AX = 000Dh

SeeAlso: AX=000Eh,INT 10/AH=04h

INT 33


INT 33 000E - MS MOUSE v1.0+ - LIGHT PEN EMULATION OFF

Category: M - mouse/pointing device

Inp.:

AX = 000Eh

SeeAlso: AX=000Dh

INT 33


INT 33 000F - MS MOUSE v1.0+ - DEFINE MICKEY/PIXEL RATIO

Category: M - mouse/pointing device

Inp.:

AX = 000Fh

CX = number of mickeys per 8 pixels horizontally (default 8)

DX = number of mickeys per 8 pixels vertically (default 16)

SeeAlso: AX=0013h,AX=001Ah,INT 62/AX=0082h

INT 33


INT 33 0010 - MS MOUSE v1.0+ - DEFINE SCREEN REGION FOR UPDATING

Category: M - mouse/pointing device

Inp.:

AX = 0010h

CX,DX = X,Y coordinates of upper left corner

SI,DI = X,Y coordinates of lower right corner

Note:	mouse cursor is hidden in the specified region, and needs to be

  explicitly turned on again

SeeAlso: AX=0001h,AX=0002h,AX=0007h,AX=0010h"Genius MOUSE",AX=0031h

INT 33


INT 33 0010 - Genius MOUSE - DEFINE SCREEN REGION FOR UPDATING

Category: M - mouse/pointing device

Inp.:

AX = 0010h

ES:DX -> update region list (see #1834)

Notes:	mouse cursor is hidden in the specified region, and needs to be

  explicitly turned on again

this version of the call is described in an August 1988 version of the

  Genius Mouse programmer's reference; it has been changed to conform

  to the Microsoft version shown above by version 9.06 (and possibly

  earlier versions)

SeeAlso: AX=0001h,AX=0002h,AX=0007h,AX=0010h"MS MOUSE"

INT 33


INT 33 0011 - Genius Mouse 9.06 - GET NUMBER OF BUTTONS

Category: M - mouse/pointing device

Inp.:

AX = 0011h

Return: AX = FFFFh

BX = number of buttons

SeeAlso: AX=0000h

INT 33


INT 33 0012 - MS MOUSE - SET LARGE GRAPHICS CURSOR BLOCK

Category: M - mouse/pointing device

Inp.:

AX = 0012h

BH = cursor width in words

CH = rows in cursor

BL = horizontal hot spot (-16 to 16)

CL = vertical hot spot (-16 to 16)

ES:DX -> bit map of screen and cursor maps

Return: AX = FFFFh if successful

SeeAlso: AX=0009h,AX=002Ah,AX=0035h

INT 33


INT 33 0013 - MS MOUSE v5.0+ - DEFINE DOUBLE-SPEED THRESHOLD

Category: M - mouse/pointing device

Inp.:

AX = 0013h

DX = threshold speed in mickeys/second, 0000h = default of 64/second

Note:	if speed exceeds threshold, the cursor's on-screen motion is doubled

SeeAlso: AX=000Fh,AX=001Bh,AX=002Ch

INT 33


INT 33 0014 - MS MOUSE v3.0+ - EXCHANGE INTERRUPT SUBROUTINES

Category: M - mouse/pointing device

Inp.:

AX = 0014h

CX = call mask (see #1832)

ES:DX -> FAR routine

Return: CX = call mask of previous interrupt routine

ES:DX = FAR address of previous interrupt routine

SeeAlso: AX=000Ch,AX=0018h

INT 33


INT 33 0015 - MS MOUSE v6.0+ - RETURN DRIVER STORAGE REQUIREMENTS

Category: M - mouse/pointing device

Inp.:

AX = 0015h

Return: BX = size of buffer needed to store driver state

SeeAlso: AX=0016h,AX=0017h,AX=0042h

INT 33


INT 33 0016 - MS MOUSE v6.0+ - SAVE DRIVER STATE

Category: M - mouse/pointing device

Inp.:

AX = 0016h

BX = size of buffer (see AX=0015h)

ES:DX -> buffer for driver state

Note:	although not documented (since the Microsoft driver does not use it),

  many drivers appear to require BX on input

SeeAlso: AX=0015h,AX=0017h

INT 33


INT 33 0017 - MS MOUSE v6.0+ - RESTORE DRIVER STATE

Category: M - mouse/pointing device

Inp.:

AX = 0017h

BX = size of buffer (see AX=0015h)

ES:DX -> buffer containing saved state

Notes:	although not documented (since the Microsoft driver does not use it),

  many drivers appear to require BX on input

some mouse drivers range-check the values in the saved state based on

  the current video mode; thus, the video mode should be restored

  before the mouse driver's state is restored

SeeAlso: AX=0015h,AX=0016h

INT 33


INT 33 0018 - MS MOUSE v6.0+ - SET ALTERNATE MOUSE USER HANDLER

Category: M - mouse/pointing device

Inp.:

AX = 0018h

CX = call mask (see #1835)

ES:DX -> FAR routine to be invoked on mouse events (see #1836)

Return: AX = status

    0018h if successful

    FFFFh on error

Notes:	up to three handlers can be defined by separate calls to this function,

  each with a different combination of shift states in the call mask;

  calling this function again with a call mask of 0000h undefines the

  specified handler (official documentation); specifying the same

  call mask and an address of 0000h:0000h undefines the handler (real

  life)

some versions of the documentation erroneously reverse the order of

  the bits in the call mask

SeeAlso: AX=000Ch,AX=0014h,AX=0019h

INT 33


INT 33 0019 - MS MOUSE v6.0+ - RETURN USER ALTERNATE INTERRUPT VECTOR

Category: M - mouse/pointing device

Inp.:

AX = 0019h

CX = call mask (see #1835)

Return: BX:DX = user interrupt vector

CX = call mask (0000h if not found)

Note:	attempts to find a user event handler (defined by function 18h)

  whose call mask matches CX

SeeAlso: AX=0018h

INT 33


INT 33 001A - MS MOUSE v6.0+ - SET MOUSE SENSITIVITY

Category: M - mouse/pointing device

Inp.:

AX = 001Ah

BX = horizontal speed \

CX = vertical speed   / (see AX=000Fh)

DX = double speed threshold (see AX=0013h)

SeeAlso: AX=0013h,AX=001Bh,INT 62/AX=0082h

INT 33


INT 33 001B - MS MOUSE v6.0+ - RETURN MOUSE SENSITIVITY

Category: M - mouse/pointing device

Inp.:

AX = 001Bh

Return: BX = horizontal speed

CX = vertical speed

DX = double speed threshold

SeeAlso: AX=000Bh,AX=001Ah

INT 33


INT 33 001C - MS MOUSE v6.0+ - SET INTERRUPT RATE

Category: M - mouse/pointing device

Inp.:

AX = 001Ch

BX = rate (see #1837)

Notes:	only available on InPort mouse

values greater than 4 may cause unpredictable driver behavior

INT 33


INT 33 001D - MS MOUSE v6.0+ - DEFINE DISPLAY PAGE NUMBER

Category: M - mouse/pointing device

Inp.:

AX = 001Dh

BX = display page number

Note:	the cursor will be displayed on the specified page

SeeAlso: AX=001Eh

INT 33


INT 33 001E - MS MOUSE v6.0+ - RETURN DISPLAY PAGE NUMBER

Category: M - mouse/pointing device

Inp.:

AX = 001Eh

Return: BX = display page number

SeeAlso: AX=001Dh

INT 33


INT 33 001F - MS MOUSE v6.0+ - DISABLE MOUSE DRIVER

Category: M - mouse/pointing device

Inp.:

AX = 001Fh

Return: AX = status

    001Fh successful

ES:BX = INT 33 vector before mouse driver was first installed

    FFFFh unsuccessful

Notes:	restores vectors for INT 10 and INT 71 (8086) or INT 74 (286/386)

if you restore INT 33 to ES:BX, driver will be completely disabled

many drivers return AX=001Fh even though the driver has been disabled

SeeAlso: AX=0020h

INT 33


INT 33 0020 - MS MOUSE v6.0+ - ENABLE MOUSE DRIVER

Category: M - mouse/pointing device

Inp.:

AX = 0020h

Return: AX = status

    0020h successful

    FFFFh unsuccessful

Notes:	restores vectors for INT 10h and INT 71h (8086) or INT 74h (286/386)

  which were removed by function 1Fh

Microsoft's documentation states that no value is returned

SeeAlso: AX=001Fh

INT 33


INT 33 0021 - MS MOUSE v6.0+ - SOFTWARE RESET

Category: M - mouse/pointing device

Inp.:

AX = 0021h

Return: AX = status

    FFFFh if mouse driver installed

BX = number of buttons (FFFFh = two buttons)

    0021h if mouse driver not installed

Note:	this call is identical to funtion 00h, but does not reset the mouse

SeeAlso: AX=0000h

INT 33


INT 33 0022 - MS MOUSE v6.0+ - SET LANGUAGE FOR MESSAGES

Category: M - mouse/pointing device

Inp.:

AX = 0022h

BX = language (see #1838)

Note:	only available on international versions of the driver; US versions

  ignore this call

SeeAlso: AX=0023h

INT 33


INT 33 0023 - MS MOUSE v6.0+ - GET LANGUAGE FOR MESSAGES

Category: M - mouse/pointing device

Inp.:

AX = 0023h

Return: BX = language (see #1838)

Note:	the US version of the driver always returns zero

SeeAlso: AX=0022h

INT 33


INT 33 0024 - MS MOUSE v6.26+ - GET SOFTWARE VERSION, MOUSE TYPE, AND IRQ NUMBER

Category: M - mouse/pointing device

Inp.:

AX = 0024h

Return: AX = FFFFh on error

otherwise,

    BH = major version

    BL = minor version

    CH = type (1=bus, 2=serial, 3=InPort, 4=PS/2, 5=HP)

    CL = interrupt (0=PS/2, 2=IRQ2, 3=IRQ3,...,7=IRQ7)

SeeAlso: AX=004Dh,AX=006Dh

INT 33


INT 33 0025 - MS MOUSE v6.26+ - GET GENERAL DRIVER INFORMATION

Category: M - mouse/pointing device

Inp.:

AX = 0025h

Return: AX = general information (see #1839)

BX = cursor lock flag for OS/2 to prevent reentrancy problems

CX = mouse code active flag (for OS/2)

DX = mouse driver busy flag (for OS/2)

INT 33


INT 33 0026 - MS MOUSE v6.26+ - GET MAXIMUM VIRTUAL COORDINATES

Category: M - mouse/pointing device

Inp.:

AX = 0026h

Return: BX = mouse-disabled flag (0000h mouse enabled, nonzero disabled)

CX = maximum virtual X (for current video mode)

DX = maximum virtual Y

Note:	for driver versions before 7.05, this call returns the currently-set

  maximum coordinates; v7.05+ returns the absolute maximum coordinates

SeeAlso: AX=0031h

INT 33


INT 33 0026 - Genius Mouse 9.06 - ???

Category: M - mouse/pointing device

Inp.:

AX = 0026h

Return: CX = 0204h if CX was 0105h on entry, else unchanged

INT 33


INT 33 0027 - MS MOUSE v7.01+ - GET SCREEN/CURSOR MASKS AND MICKEY COUNTS

Category: M - mouse/pointing device

Inp.:

AX = 0027h

Return: AX = screen-mask value (or hardware cursor scan-line start for v7.02+)

BX = cursor-mask value (or hardware cursor scan-line stop for v7.02+)

CX = horizontal mickeys moved since last call

DX = vertical mickeys moved since last call

SeeAlso: AX=000Bh

INT 33


INT 33 0028 - MS MOUSE v7.0+ - SET VIDEO MODE

Category: M - mouse/pointing device

Inp.:

AX = 0028h

CX = new video mode (call is NOP if 0000h)

DH = Y font size (00h = default)

DL = X font size (00h = default)

Return: CL = status (00h = successful)

Notes:	DX is ignored unless the selected video mode supports font size control

when CX=0000h, an internal flag that had been set by a previous call

  is cleared; this is required before a mouse reset

SeeAlso: AX=0029h,INT 10/AH=00h

INT 33


INT 33 0029 - MS MOUSE v7.0+ - ENUMERATE VIDEO MODES

Category: M - mouse/pointing device

Inp.:

AX = 0029h

CX = previous video mode

    0000h get first supported video mode

    other get next supported mode after mode CX

Return: CX = first/next video mode (0000h = no more video modes)

DS:DX -> description of video mode or 0000h:0000h if none

Notes:	the enumerated video modes may be in any order and may repeat

the description string (if available) is terminated by '$' followed by

  a NUL byte

SeeAlso: AX=0028h

INT 33


INT 33 002A - MS MOUSE v7.02+ - GET CURSOR HOT SPOT

Category: M - mouse/pointing device

Inp.:

AX = 002Ah

Return: AX = internal counter controlling cursor visibility

BX = cursor hot spot column

CX = cursor hot spot row

DX = mouse type (see #1840)

Note:	the hot spot location is relative to the upper left corner of the

  cursor block and may range from -128 to +127 both horizontally and

  vertically

SeeAlso: AX=0009h,AX=0012h,AX=0035h

INT 33


INT 33 002B - MS MOUSE v7.0+ - LOAD ACCELERATION PROFILES

Category: M - mouse/pointing device

Inp.:

AX = 002Bh

BX = active acceleration profile

    0001h-0004h or FFFFh to restore default curves

ES:SI -> buffer containing acceleration profile data (see #1841)

Return: AX = success flag

SeeAlso: AX=002Ch,AX=002Dh,AX=0033h

INT 33


INT 33 002C - MS MOUSE v7.0+ - GET ACCELERATION PROFILES

Category: M - mouse/pointing device

Inp.:

AX = 002Ch

Return: AX = status (0000h success)

BX = currently-active acceleration profile

ES:SI -> acceleration profile data (see #1841)

SeeAlso: AX=002Bh,AX=002Dh,AX=0033h

INT 33


INT 33 002D - MS MOUSE v7.0+ - SELECT ACCELERATION PROFILE

Category: M - mouse/pointing device

Inp.:

AX = 002Dh

BX = acceleration level

    0001h-0004h to set profile, or FFFFh to get current profile

Return: AX = status

    0000h successful

ES:SI -> 16-byte blank-padded name of acceleration profile

    FFFEh invalid acceleration curve number

ES:SI destroyed

BX = active acceleration curve number

SeeAlso: AX=0013h,AX=002Bh,AX=002Ch,AX=002Eh

INT 33


INT 33 002E - MS MOUSE v8.10+ - SET ACCELERATION PROFILE NAMES

Category: M - mouse/pointing device

Inp.:

AX = 002Eh

BL = flag (if nonzero, fill ES:SI buffer with default names on return)

ES:SI -> 64-byte buffer containing profile names (16 bytes per name)

Return: AX = status (0000h success)

    FFFEh error for ATI Mouse driver

ES:SI buffer filled with default names if BL nonzero on entry

Notes:	not supported by Logitech driver v6.10

supported by ATI Mouse driver v7.04

SeeAlso: AX=002Ch,AX=002Dh,AX=012Eh,AX=022Eh

INT 33


INT 33 002F - MS MOUSE v7.02+ - MOUSE HARDWARE RESET

Category: M - mouse/pointing device

Inp.:

AX = 002Fh

Return: AX = status

Note:	invoked by mouse driver v8.20 on being called with INT 2F/AX=530Bh

SeeAlso: INT 2F/AH=53h

INT 33


INT 33 0030 - MS MOUSE v7.04+ - GET/SET BallPoint INFORMATION

Category: M - mouse/pointing device

Inp.:

AX = 0030h

CX = command

    0000h get status of BallPoint device

    other set rotation angle and masks

BX = rotation angle (-32768 to 32767 degrees)

CH = primary button mask

CL = secondary button mask

Return: AX = button status (FFFFh if no BallPoint) (see #1842)

BX = rotation angle (0-360 degrees)

CH = primary button mask

CL = secondary button mask

Note:	not supported by the ATI Mouse driver which calls itself v7.04

INT 33


INT 33 0031 - MS MOUSE v7.05+ - GET CURRENT MINIMUM/MAXIMUM VIRTUAL COORDINATES

Category: M - mouse/pointing device

Inp.:

AX = 0031h

Return: AX = virtual X minimum

BX = virtual Y minimum

CX = virtual X maximum

DX = virtual Y maximum

Note:	the minimum and maximum values are those set by AX=0007h and AX=0008h;

  the default is minimum = 0 and maximum = absolute maximum

  (see AX=0026h)

SeeAlso: AX=0007h,AX=0008h,AX=0010h,AX=0026h

INT 33


INT 33 0032 - MS MOUSE v7.05+ - GET ACTIVE ADVANCED FUNCTIONS

Category: M - mouse/pointing device

Inp.:

AX = 0032h

Return: AX = active function flags (FFFFh for v8.10)

    bit 15: function 0025h supported

    bit 14: function 0026h supported

    ...

    bit 0:  function 0034h supported

BX = ??? (0000h) officially unused

CX = ??? (E000h) officially unused

DX = ??? (0000h) officially unused

Note:	the Italian version of MS MOUSE v8.20 reportedly indicates that

  functions 0033h and 0034h are not supported even though they are

INT 33


INT 33 0033 - MS MOUSE v7.05+ - GET SWITCH SETTINGS AND ACCELERATION PROFILE DATA

Category: M - mouse/pointing device

Inp.:

AX = 0033h

CX = size of buffer

    0000h get required buffer size

Return: AX = 0000h

CX = required size (0154h for Logitech v6.10, 0159h

for MS v8.10-8.20)

    other

ES:DX -> buffer of CX bytes for mouse settings

Return: AX = 0000h

CX = number of bytes returned

ES:DX buffer filled (see #1843)

SeeAlso: AX=002Bh

INT 33


INT 33 0034 - MS MOUSE v8.0+ - GET INITIALIZATION FILE

Category: M - mouse/pointing device

Inp.:

AX = 0034h

Return: AX = status (0000h successful)

ES:DX -> ASCIZ initialization (.INI) file name

INT 33


INT 33 0035 - MS MOUSE v8.10+ - LCD SCREEN LARGE POINTER SUPPORT

Category: M - mouse/pointing device

Inp.:

AX = 0035h

BX = function

    FFFFh get current settings

Return: AX = 0000h

BH = style (see #1844)

BL = size (see below)

CH = threshold

CL = active flag (00h disabled, 01h enabled)

DX = delay

    other

BH = pointer style (see #1844)

BL = size (00h small "1", 01h medium "1.5", 02h large "2")

CH = threshold (00h-64h)

CL = active flag (00h disable size change, 01h enable)

DX = delay (0000h-0064h)

Return: AX = 0000h

Note:	not supported by Logitech driver v6.10

SeeAlso: AX=0012h,AX=002Ah

INT 33


INT 33 0042 - PCMOUSE - GET MSMOUSE STORAGE REQUIREMENTS

Category: M - mouse/pointing device

Inp.:

AX = 0042h

Return: AX = status

    0000h MSMOUSE not installed

    0042h functions 42h, 50h, and 52h not supported

    FFFFh successful

BX = buffer size in bytes for functions 50h and 52h

Note:	this function is also supported by the Genius Mouse 9.06 driver

SeeAlso: AX=0015h,AX=0050h,AX=0052h

INT 33


INT 33 0043 - Mouse Systems MOUSE DRIVER v7.01+ - CONFIGURE MOUSE???

Category: M - mouse/pointing device

Inp.:

AX = 0043h

CX:BX -> configuration buffer (see #1845)

DL = ???

Return: ???

Notes:	also calls routines for INT 33/AX=0053h and INT 33/AX=004Fh

this function is also supported by the Genius Mouse 9.06 driver

INT 33


INT 33 0044 - Mouse Systems MOUSE DRIVER v7.01+ - TOGGLE IGNORE ACCELERATION CMDS

Category: M - mouse/pointing device

Inp.:

AX = 0044h

CX = CDEFh

Return: AX = new state of "Ignore Application Acceleration Commands" flag

Note:	this function is also supported by the Genius Mouse 9.06 driver

SeeAlso: AX=0045h

INT 33


INT 33 0045 - Mouse Systems MOUSE DRIVER v7.01+ - TOGGLE RESOLUTION DOUBLING

Category: M - mouse/pointing device

Inp.:

AX = 0045h

CX = CDEFh

Return: AX = new state of resolution doubling flag

Note:	this function is also supported by the Genius Mouse 9.06 driver

SeeAlso: AX=0044h

INT 33


INT 33 0047 - Mouse Systems MOUSE DRIVER v7.01+ - SET BUTTON ASSIGNMENTS

Category: M - mouse/pointing device

Inp.:

AX = 0047h

ES:BX -> button assignments (3 bytes, combinations of "L", "M", "R")

Return: ???

Note:	also supported by Genius Mouse 9.06 driver

SeeAlso: AX=0067h

INT 33


INT 33 0048 - Mouse Systems MOUSE DRIVER v7.01+ - GET ???

Category: M - mouse/pointing device

Inp.:

AX = 0048h

BX = CDEFh

Return: CX = ???

BH = ???

BL = ??? (if 50h, driver is using PS/2 pointing device BIOS interface)

Note:	also supported by Genius Mouse 9.06 driver

INT 33


INT 33 004B - Z-NIX MOUSE DRIVER v7.04d - INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = 004Bh

Return: ES:DI -> signature/description string if installed

Note:	the signature string in v7.04d is

  "Z-NIX;BUS,AUX,Serial 3-byte and 5-byte Mouse Driver;ZMOUSE;v7.04d"

INT 33


INT 33 004C - Mouse Systems MOUSE DRIVER v7.01+ - SET ??? FLAG

Category: M - mouse/pointing device

Inp.:

AX = 004Ch

BX = CDEFh

Note:	also supported by Genius Mouse 9.06

SeeAlso: AX=006Ch

INT 33


INT 33 004D - MS MOUSE - RETURN POINTER TO COPYRIGHT STRING

Category: M - mouse/pointing device

Inp.:

AX = 004Dh

Return: ES:DI -> copyright message "*** This is Copyright 1983 Microsoft" or

"Copyright 19XX...."

Notes:	also supported by Logitech, Kraft, Genius Mouse, and Mouse Systems

  mouse drivers

in the Genius Mouse 9.06 driver, the ASCIZ signature "KYE" immediately

  follows the above copyright message (KYE Corp. manufactures the

  driver)

SeeAlso: AX=0024h,AX=006Dh,AX=0666h

INT 33


INT 33 004F - Mouse Systems MOUSE DRIVER v7.01+ - ENABLE MOUSE

Category: M - mouse/pointing device

Inp.:

AX = 004Fh

Return: nothing

Note:	also supported by Genius Mouse 9.06

SeeAlso: AX=0043h,AX=0053h

INT 33


INT 33 0050 - PCMOUSE - SAVE MSMOUSE STATE

Category: M - mouse/pointing device

Inp.:

AX = 0050h

BX = buffer size (ignored by some driver versions)

ES:DX -> buffer

Return: AX = FFFFh if successful

Notes:	the buffer must be large enough to hold the entire state, or following

  data will be overwritten by state data in versions which ignore BX;

  use INT 33/AX=0042h to get the required size

this function is also supported by the Genius Mouse 9.06 driver

SeeAlso: AX=0042h,AX=0052h

INT 33


INT 33 0052 - PCMOUSE - RESTORE MSMOUSE STATE

Category: M - mouse/pointing device

Inp.:

AX = 0052h

BX = buffer size (ignored by some driver versions)

ES:DX -> buffer

Return: AX = FFFFh if successful

Note:	also supported by Genius Mouse 9.06 driver

SeeAlso: AX=0050h

INT 33


INT 33 0053 - Mouse Systems MOUSE DRIVER v7.01+ - DISABLE MOUSE

Category: M - mouse/pointing device

Inp.:

AX = 0053h

Return: nothing

Note:	also supported by Genius Mouse 9.06

SeeAlso: AX=0043h,AX=004Fh

INT 33


INT 33 0054 - Mouse Systems MOUSE DRIVER v7.01+ - SELECT ULTRARES ACCELERATION LEVEL

Category: M - mouse/pointing device

Inp.:

AX = 0054h

CX = CDEFh

BX = new acceleration level (0-9)

Return: ???

Note:	this function is also supported by the Genius Mouse 9.06 driver

SeeAlso: AX=005Ah

INT 33


INT 33 0055 - Kraft Mouse - GET ???

Category: M - mouse/pointing device

Inp.:

AX = 0055h

Return: CX = ???

DX = ???

ES = ???

INT 33


INT 33 0058 - Mouse Systems MOUSE DRIVER v7.01+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 0058h

Return: AX = CS of driver

CX:BX = original INT 33 vector

DX = ???

Note:	this function is also supported by the Genius Mouse 9.06 driver

INT 33


INT 33 005A - Mouse Systems MOUSE DRIVER v7.01+ - SET ULTRARES ACCELERATIONS

Category: M - mouse/pointing device

Inp.:

AX = 005Ah

CX = number of WORDs to copy (max 0014h, but not range-checked)

DX:SI -> buffer containing thresholds??? (CX words)

DX:BX -> buffer containing acceleration values???

(9*14h words, only first CX of each 14h used)

???

Return: CF clear

???

Note:	this function is also supported by Genius Mouse 9.06

SeeAlso: AX=0054h

INT 33


INT 33 0061 - Mouse Systems MOUSE DRIVER v7.01+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 0061h

BX = CDEFh

Return: CX = ???

Note:	also supported by Genius Mouse 9.06

INT 33


INT 33 0067 - Mouse Systems MOUSE DRIVER v7.01+ - GET MOUSE BUTTONS???

Category: M - mouse/pointing device

Inp.:

AX = 0067h

Return: BL = number of buttons???

Note:	also supported by Genius Mouse 9.06

SeeAlso: AX=0047h

INT 33


INT 33 006A - ATI Mouse - INSTALLATION CHECK

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 006Ah

Return: AL = AAh

AH = ???

BH = ???

BL = ???

CL = ???

CH = ???

Program: ATI's MOUSE.COM and MOUSE.SYS are drivers for the mouse port found on

  some of ATI's video adapters

SeeAlso: AX=006Dh

INT 33


INT 33 006C - TRUEDOX Mouse driver v4.01 - GET/SET HARDWARE PARAMETERS

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 006Ch

BX = new IRQ (0003h or 0004h), or 0000h to get current values only

CL = new IRQmask (sent to 8259)

DX = new base I/O port

Return: BX = current IRQ

DX = light pen state???

Note:	this is the mouse driver for the Dell Dimension series of computers, by

  TRUEDOX Technology Corporation

SeeAlso: AX=00A1h,AX=0666h

INT 33


INT 33 006C - Mouse Systems MOUSE DRIVER v7.01+ - CLEAR ??? FLAG

Category: M - mouse/pointing device

Inp.:

AX = 006Ch

BX = CDEFh

Note:	also supported by Genius Mouse 9.06

SeeAlso: AX=004Ch

INT 33


INT 33 006D - MS MOUSE - GET VERSION STRING

Category: M - mouse/pointing device

Inp.:

AX = 006Dh

Return: ES:DI -> Microsoft version number of resident driver (see #1846)

Notes:	also supported by Logitech, Mouse Systems, Kraft, and Genius mouse

  drivers

the Mouse Systems 7.01 and Genius Mouse 9.06 drivers report their

  Microsoft version as 7.00 even though they do not support any of the

  functions from 0025h through 002Dh supported by the MS 7.00 driver

  (the Genius Mouse driver supports function 0026h, but it differs

  from the Microsoft function)

the TRUEDOX 4.01 driver reports its version as 6.26 through this call,

  but as 6.24 through AX=0024h

SeeAlso: AX=0024h,AX=004Dh,AX=006Ah,AX=266Ch

INT 33


INT 33 0070 - Mouse Systems MOUSE DRIVER - POPUP.COM - INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = 0070h

BX = ABCDh

Return: AX = ABCDh if installed

    BX:CX -> data structure (see #1847)

Notes:	this function is also supported by the Genius Mouse 9.06 driver

the v7.01 POPUP.COM and menu drivers also check for the signature

  CDh ABh BAh DCh at offset -2Ch from the interrupt handler

if POPUP is not loaded, the returned data structure contains the proper

  signature at offset 00h, but not at offset 08h

INT 33


INT 33 0072 - Mouse Systems MOUSE DRIVER v7.01+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 0072h

BX = ABCDh

Return: ???

Note:	this function is also supported by the Genius Mouse 9.06 driver

INT 33


INT 33 0073 - Mouse Systems MOUSE DRIVER v7.01+ - GET BUTTON ASSIGNMENTS

Category: M - mouse/pointing device

Inp.:

AX = 0073h

BX = CDEFh

ES:DX -> 3-byte buffer for button assignments

Return: CX = number of buttons???

ES:DX buffer filled (default is "LMR")

Note:	also supported by Genius Mouse 9.06

SeeAlso: AX=0067h

INT 33


INT 33 00A0 - TRUEDOX Mouse driver - SET HARDWARE PC MODE (3 button)

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 00A0h

Return: nothing

Note:	this function is only available if the mouse mode is switchable

  through the power pins

SeeAlso: AX=006Ch"TRUEDOX",AX=00A1h"TRUEDOX"

INT 33


INT 33 00A1 - TRUEDOX Mouse driver - SET HARDWARE MS MODE (2 button)

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 00A1h

Return: nothing

Notes:	this function is only available if the mouse mode is switchable

  through the power pins

this is the mouse driver for the Dell Dimension series of computers, by

  TRUEDOX Technology Corporation

SeeAlso: AX=006Ch"TRUEDOX",AX=00A0h"TRUEDOX",AX=00A6h,AX=0666h

INT 33


INT 33 00A6 - TRUEDOX Mouse driver - SET RESOLUTION

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 00A6h

BX = new software resolution

    0001h 50-200 dpi

    0002h 200-400 dpi

    0003h 400-800 dpi

Note:	this is the mouse driver for the Dell Dimension series of computers, by

  TRUEDOX Technology Corporation

SeeAlso: AX=00A0h,AX=00A1h,AX=0666h

INT 33


INT 33 0100 - GRTMOUSE v1.00+ - INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = 0100h

CX = 4752h ('GR')

DX = 544Dh ('TM')

Return: AX = 474Dh ('GM') if installed

    CX = version number (CH = major, CL = minor)

Program: GRTMOUSE is a graphical-cursor driver for textmode by Tommer Leyvand

SeeAlso: AX=0101h,AX=0102h,AX=0103h,AX=0104h

INT 33


INT 33 0101 - GRTMOUSE v1.00+ - SET MOUSE CURSOR SHAPE

Category: M - mouse/pointing device

Inp.:

AX = 0101h

DS:SI -> 16-byte cursor pattern

Return: CF clear if successful

SeeAlso: AX=0100h,AX=0102h

INT 33


INT 33 0102 - GRTMOUSE v1.00+ - GET MOUSE CURSOR SHAPE

Category: M - mouse/pointing device

Inp.:

AX = 0102h

ES:DI -> 16-byte buffer for cursor pattern

SeeAlso: AX=0100h,AX=0101h

INT 33


INT 33 0103 - GRTMOUSE v1.00+ - SET ACTIVE CHARACTERS

Category: M - mouse/pointing device

Inp.:

AX = 0103h

CH,CL,DH,DL = ASCII codes to be remapped to display mouse pointer

Note:	the default active characters are D0h,D1h,D6h,D8h; the active

 characters should be in the range C0h to DFh

SeeAlso: AX=0100h,AX=0104h

INT 33


INT 33 0104 - GRTMOUSE v1.00+ - GET ACTIVE CHARACTERS

Category: M - mouse/pointing device

Inp.:

AX = 0104h

Return: CH,CL,DH,DL = ASCII codes for the active characters

SeeAlso: AX=0100h,AX=0103h

INT 33


INT 33 012E - MS MOUSE v8.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 012Eh

BL = ???

Return: AX = 0000h (MS)

AX = FFFFh (ATI Mouse v7.04)

Note:	not supported by Logitech driver v6.10

SeeAlso: AX=002Eh,AX=022Eh

INT 33


INT 33 022E - MS MOUSE v8.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 022Eh

BL = ???

Return: AX = 0000h (MS)

AX = FFFFh (ATI Mouse v7.04)

Note:	not supported by Logitech driver v6.10

SeeAlso: AX=002Eh,AX=012Eh

INT 33


INT 33 0666 - TRUEDOX Mouse driver v4.01 - GET COPYRIGHT STRING

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 0666h

Return: DX:AX -> ASCII "Copyright 1987-1992 TRUEDOX Technology Corporation"

Note:	this is the mouse driver for the Dell Dimension series of computers,

  by TRUEDOX Technology Corporation

SeeAlso: AX=004Dh,AX=00A6h,AX=0666h

INT 33


INT 33 136C - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 136Ch

BX = ???

Return: AX = ???

BX = ???

INT 33


INT 33 146C - LOGITECH MOUSE v6.10+ - GET/SET ???

Category: M - mouse/pointing device

Inp.:

AX = 146Ch

BL = function

    00h set ???

BH = new value (zero/nonzero to clear/set)

    else get ???

Return: ???

INT 33


INT 33 156C - LOGITECH MOUSE v6.10+ - GET SIGNATURE AND VERSION STRINGS

Category: M - mouse/pointing device

Inp.:

AX = 156Ch

Return: ES:DI -> signature "LOGITECH MOUSE DRIVER"

ES:SI -> version string, terminated with CRLF

INT 33


INT 33 166C - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 166Ch

BL = ???

    00h ???

    01h ???

    other ???

BH = new value of ???

Return: AX = FFFFh

INT 33


INT 33 176C - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 176Ch

???

Return: ???

INT 33


INT 33 186C - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 186Ch

???

Return: ???

INT 33


INT 33 196C - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 196Ch

???

Return: ???

INT 33


INT 33 1A6C - LOGITECH MOUSE v6.10+ - GET ???

Category: M - mouse/pointing device

Inp.:

AX = 1A6Ch

Return: AX = FFFFh

BX = ???

CX = ???

SeeAlso: AX=1B6Ch

INT 33


INT 33 1B6C - LOGITECH MOUSE v6.10+ - SET ???

Category: M - mouse/pointing device

Inp.:

AX = 1B6Ch

BX = new value for ??? (0000h-0003h)

Return: AX = FFFFh

SeeAlso: AX=1A6Ch

INT 33


INT 33 1C6C - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 1C6Ch

BX = ???

    <42h ???

    =42h ???

    >42h ???

ES:DI -> ???

Return: AX = ???

INT 33


INT 33 1D6C - LOGITECH MOUSE - GET COMPASS PARAMETER

Category: M - mouse/pointing device

Inp.:

AX = 1D6Ch

Return: BX = direction (0=north, 1=south, 2=east, 3=west)

SeeAlso: AX=1E6Ch

INT 33


INT 33 1E6C - LOGITECH MOUSE - SET COMPASS PARAMETER

Category: M - mouse/pointing device

Inp.:

AX = 1E6Ch

BX = direction (0=north, 1=south, 2=east, 3=west)

SeeAlso: AX=1D6Ch

INT 33


INT 33 1F6C - LOGITECH MOUSE - GET BALLISTICS INFORMATION

Category: M - mouse/pointing device

Inp.:

AX = 1F6Ch

Return: BX = 0=off, 1=on

CX = 1=low, 2=high

SeeAlso: AX=002Ch,AX=236Ch

INT 33


INT 33 206C - LOGITECH MOUSE - SET LEFT OR RIGHT PARAMETER

Category: M - mouse/pointing device

Inp.:

AX = 206Ch

BX = parameter (00h = right, FFh = left)

SeeAlso: AX=216Ch

INT 33


INT 33 216C - LOGITECH MOUSE - GET LEFT OR RIGHT PARAMETER

Category: M - mouse/pointing device

Inp.:

AX = 216Ch

Return: BX = parameter (00h = right, FFh = left)

SeeAlso: AX=206Ch

INT 33


INT 33 226C - LOGITECH MOUSE - REMOVE DRIVER FROM MEMORY

Category: M - mouse/pointing device

Inp.:

AX = 226Ch

Note:	this only frees memory; does not restore hooked interrupts

INT 33


INT 33 236C - LOGITECH MOUSE - SET BALLISTICS INFORMATION

Category: M - mouse/pointing device

Inp.:

AX = 236Ch

BX = 0=off, 1=on

CX = 1=low, 2=high

SeeAlso: AX=002Ch,AX=1F6Ch

INT 33


INT 33 246C - LOGITECH MOUSE - GET PARAMETERS AND RESET SERIAL MOUSE

Category: M - mouse/pointing device

Inp.:

AX = 246Ch

ES:DX -> parameter table buffer (see #1849)

Return: AX = FFFFh if driver installed for serial mouse

SeeAlso: AX=0000h,AX=256Ch/BX=0000h,AX=256Ch/BX=0001h,AX=256Ch/BX=0003h

INT 33


INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET BAUD RATE (SERIAL MOUSE ONLY)

Category: M - mouse/pointing device

Inp.:

AX = 256Ch

BX = 0000h

CX = rate (0=1200, 1=2400, 2=4800, 3=9600)

Return: AX = FFFFh if driver installed for serial mouse

SeeAlso: AX=246Ch,AX=256Ch/BX=0001h,AX=256Ch/BX=0002h,AX=276Ch

INT 33


INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET EMULATION (SERIAL MOUSE ONLY)

Category: M - mouse/pointing device

Inp.:

AX = 256Ch

BX = 0001h

CX = emulation type (see #1850)

Return: AX = FFFFh if driver installed for serial mouse

SeeAlso: AX=246Ch,AX=256Ch/BX=0000h,AX=256Ch/BX=0003h,AX=276Ch

INT 33


INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET REPORT RATE (SERIAL MOUSE ONLY)

Category: M - mouse/pointing device

Inp.:

AX = 256Ch

BX = 0002h

CX = rate (0=10, 1=20, 2=35, 3=50, 4=70, 5=100, 6=150)

Return: AX = FFFFh if driver installed for serial mouse

SeeAlso: AX=246Ch,AX=256Ch/BX=0001h,AX=256Ch/BX=0003h,AX=276Ch

INT 33


INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET MOUSE PORT (SERIAL MOUSE ONLY)

Category: M - mouse/pointing device

Inp.:

AX = 256Ch

BX = 0003h

CX = port (1, 2)

Return: AX = FFFFh if driver installed for serial mouse

SeeAlso: AX=246Ch,AX=256Ch/BX=0000h,AX=256Ch/BX=0004h,AX=276Ch

INT 33


INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET MOUSE LOGICAL BUTTONS

Category: M - mouse/pointing device

Inp.:

AX = 256Ch

BX = 0004h

CX = buttons (2, 3)

Return: AX = FFFFh if driver installed for serial mouse

SeeAlso: AX=246Ch,AX=276Ch

INT 33


INT 33 266C - LOGITECH MOUSE - GET VERSION???

Category: M - mouse/pointing device

Inp.:

AX = 266Ch

Return: BX = 'SS'

CH = '4'  major version number

CL = '1'  minor version number

SeeAlso: AX=006Dh

INT 33


INT 33 276C - LOGITECH MOUSE - ??? Tries MMSeries, Baud 2400

Category: M - mouse/pointing device

Inp.:

AX = 276Ch

SeeAlso: AX=256Ch

INT 33


INT 33 3000 - Smooth Mouse Driver, PrecisePoint - INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = 3000h

Return: AX = FFFFh if installed

    BX = version number (BH = major, BL = minor)

Program: SMD is a programmer's library by Andy Hakim which provides a

  graphics-style mouse cursor in text mode.  PrecisePoint is an

  SMD-based TSR which replaces the block mouse cursor in text

  applications.

SeeAlso: AX=0000h,AX=3001h,AX=3003h

INT 33


INT 33 3001 - Smooth Mouse Driver, PrecisePoint - ENABLE SMOOTH MOUSE

Category: M - mouse/pointing device

Inp.:

AX = 3001h

Return: AX = status (0000h = disabled, 0001h = enabled)

Note:	SMD remains disabled if running under Desqview or in graphics mode

SeeAlso: AX=0001h,AX=0002h,AX=3002h

INT 33


INT 33 3002 - Smooth Mouse Driver, PrecisePoint - DISABLE SMOOTH MOUSE

Category: M - mouse/pointing device

Inp.:

AX = 3002h

Return: AX = status (0000h = disabled, 0001h = enabled)

SeeAlso: AX=0001h,AX=0002h,AX=3000h,AX=3001h

INT 33


INT 33 3003 - Smooth Mouse Driver, PrecisePoint - GET INFORMATION

Category: M - mouse/pointing device

Inp.:

AX = 3003h

BL = data structure selector

    00h Primary Bitmap (used for 25 line mode) (see #1851)

    01h Secondary Bitmap (used for 43/50 line modes) (see #1851)

    02h Sacrifice Character Map (see #1852)

    03h Program Information (see #1853)

Return: ES:DX -> selected data structure

SeeAlso: AX=3000h

INT 33


INT 33 3004 - Smooth Mouse Driver, PrecisePoint - RESERVED FUTURE EXPANSION

Category: M - mouse/pointing device

Inp.:

AX = 3004h

SeeAlso: AX=3000h

INT 33


INT 33 3005 - Smooth Mouse Driver, PrecisePoint - RESERVED FUTURE EXPANSION

Category: M - mouse/pointing device

Inp.:

AX = 3005h

SeeAlso: AX=3000h

INT 33


INT 33 4F00 - LOGITECH MOUSE v6.10+ - GET ???

Category: M - mouse/pointing device

Inp.:

AX = 4F00h

Return: AX = 004Fh if supported

BX = ???

ES:DI -> ???

SeeAlso: AX=4F01h

INT 33


INT 33 4F01 - LOGITECH MOUSE v6.10+ - ???

Category: M - mouse/pointing device

Inp.:

AX = 4F01h

ES = ???

Return: AX = 004Fh if supported

ES:DI -> ???

SeeAlso: AX=4F00h

INT 33


INT 33 6F00 - Hewlett Packard - HP MOUSE DRIVER INSTALLATION CHECK

Category: M - mouse/pointing device

Inp.:

AX = 6F00h

BX <> 4850h

Return: BX = 4850h ('HP') if mouse driver written by Hewlett Packard

SeeAlso: INT 10/AX=6F00h,INT 14/AX=6F00h,INT 16/AX=6F00h,INT 17/AX=6F00h

INT 33


INT 33 8800 - InfoTrack IMOUSE.COM - UNHOOK MOUSE IRQ

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 8800h

BX <> FFFFh

Note:	the code is written to expect a subfunction number in AL, but only

  function 00h has been implemented

SeeAlso: AX=8800h/BX=FFFFh

INT 33


INT 33 8800 - InfoTrack IMOUSE.COM - GET ACTIVE IRQ

undocumented function

Category: M - mouse/pointing device

Inp.:

AX = 8800h

BX = FFFFh

Return: BL = number of IRQ being used by the mouse

SeeAlso: AX=8800h

INT 33


INT 33 FFE6 - Switch-It v3.23 - GET ??? PROGRAM

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFE6h

CX = length of buffer

ES:DI -> buffer for program name

Return: ES:DI buffer filled

Program: Switch-It is a task switcher supporting up to 100 programs

  simultaneously by Better Software Technology, Inc.

INT 33


INT 33 FFE7 - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFE7h

Return: AX = ???

INT 33


INT 33 FFE8 - Switch-It v3.23 - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFE8h

CX = length of name including terminating NUL

DS:SI -> ASCIZ program pathname

INT 33


INT 33 FFE9 - Switch-It v3.23 - SET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFE9h

BX = ???

INT 33


INT 33 FFEA - Switch-It v3.23 - SET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFEAh

BL = ???

INT 33


INT 33 FFEB - Switch-It v3.23 - SET ??? FLAG

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFEBh

INT 33


INT 33 FFEC - Switch-It v3.23 - SET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFECh

BL = ???

INT 33


INT 33 FFED - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFEDh

Return: AX = ??? (0001h)

BX = ???

Program: Switch-It is a task switcher supporting up to 100 programs

  simultaneously by Better Software Technology, Inc.

INT 33


INT 33 FFEE - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFEEh

Return: AX = ???

INT 33


INT 33 FFEF - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFEFh

Return: BX:AX -> ???

INT 33


INT 33 FFF0 - Switch-It v3.23 - SET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF0h

BL = ???

INT 33


INT 33 FFF1 - Switch-It v3.23 - GET CONFIGURATION FILE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF1h

Return: BX:AX -> ASCIZ pathname of configuration file

Program: Switch-It is a task switcher supporting up to 100 programs

  simultaneously by Better Software Technology, Inc.

INT 33


INT 33 FFF2 - Switch-It v3.23 - SET ??? FLAG

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF2h

Return: AL = 01h

INT 33


INT 33 FFF3 - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF3h

Return: AX = ???

INT 33


INT 33 FFF4 - Switch-It v3.23 - SET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF4h

BX = ???

CX = ???

INT 33


INT 33 FFF5 - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF5h

Return: AX = ???

INT 33


INT 33 FFF6 - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF6h

Return: AX = ???

INT 33


INT 33 FFF7 - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF7h

BX = index of ???

Return: AX = ???

INT 33


INT 33 FFF8 - Switch-It v3.23 - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF8h

BX = ???

CX = length of program name, including terminating NUL

DS:SI -> ASCIZ program pathname

Return: ???

Program: Switch-It is a task switcher supporting up to 100 programs

  simultaneously by Better Software Technology, Inc.

INT 33


INT 33 FFF9 - Switch-It v3.23 - NOP

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFF9h

INT 33


INT 33 FFFA - Switch-It v3.23 - SET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFAh

BX = index of program

SeeAlso: AX=FFFBh,AX=FFFCh

INT 33


INT 33 FFFB - Switch-It v3.23 - GET ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFBh

BX = index of program

Return: AX = ??? (0000h or 0001h)

SeeAlso: AX=FFFAh,AX=FFFCh

INT 33


INT 33 FFFC - Switch-It v3.23 - CLEAR ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFCh

BX = index of program

SeeAlso: AX=FFFAh,AX=FFFCh

INT 33


INT 33 FFFD - Switch-It v3.23 - GET MEMORY ADDRESSES???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFDh

Return: AX = first available segment???

BX = paragraph of top of conventional memory

DX = PSP segment of SI.EXE

INT 33


INT 33 FFFE - Switch-It v3.23 - INSTALLATION CHECK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFEh

Return: BX = ???

DX = 5349h ("SI")

INT 33


INT 33 FFFF - Switch-It v3.23 - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

AX = FFFFh

BX = ???

Program: Switch-It is a task switcher supporting up to 100 programs

  simultaneously by Better Software Technology, Inc.

INT 33


INT 34 ---- - FLOATING POINT EMULATION - OPCODE D8h

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of D8h

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 35,INT 3E

INT 34


INT 35 ---- - FLOATING POINT EMULATION - OPCODE D9h

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of D9h

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 34,INT 36

INT 35


INT 36 ---- - FLOATING POINT EMULATION - OPCODE DAh

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of DAh

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 35,INT 37

INT 36


INT 37 ---- - FLOATING POINT EMULATION - OPCODE DBh

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of DBh

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 36,INT 38

INT 37


INT 38 ---- - FLOATING POINT EMULATION - OPCODE DCh

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of DCh

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 37,INT 39

INT 38


INT 38 ---- - PC-MOS/386 v3.0 - API

Category: O - other operating systems

Inp.:

Note:	this API was been moved to INT D4h sometime between versions 3.0 and

  5.01; v3.0 supported at least functions 02h,04h,0703h,10h,11h, and

  12h

SeeAlso: INT D4/AH=02h,INT D4/AH=04h,INT D4/AH=07h,INT D4/AH=10h,INT D4/AH=11h

INT 38


INT 39 ---- - FLOATING POINT EMULATION - OPCODE DDh

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of DDh

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 38,INT 3A

INT 39


INT 3A ---- - FLOATING POINT EMULATION - OPCODE DEh

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of DEh

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 39,INT 3B

INT 3A


INT 3B ---- - FLOATING POINT EMULATION - OPCODE DFh

Category: r - runtime support

Inp.:

Desc:	this interrupt is used to emulate floating-point instructions with

  an opcode of DFh

Note:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

SeeAlso: INT 3A,INT 3C

INT 3B


INT 3C ---- - FLOATING POINT EMULATION - INSTRUCTIONS WITH SEGMENT OVERRIDE

Category: r - runtime support

Inp.:

Notes:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

the generated code is  CD 3C xy mm ....

  where xy is a modified ESC instruction and mm is the modR/M byte.

  The xy byte appears to be encoded as

s s 0 1 1 x x x	  or	s s 0 0 0 x x x

  where "ss" specifies the segment override:

00 -> DS:

01 -> SS:

10 -> CS:

11 -> ES:

SeeAlso: INT 3B,INT 3D

INT 3C


INT 3D ---- - FLOATING POINT EMULATION - STANDALONE FWAIT

Category: r - runtime support

Inp.:

Notes:	the floating-point emulators in Borland and Microsoft languages and

  Lahey FORTRAN use this interrupt

this vector is modified but not restored by Direct Access v4.0, and

  may be left dangling by other programs written with the same version

  of compiled BASIC

SeeAlso: INT 3C,INT 3E

INT 3D


INT 3E ---- - FLOATING POINT EMULATION - Borland LANGUAGES "SHORTCUT" CALL

Category: r - runtime support

Inp.:

Notes:	the two bytes following the INT 3E instruction are the subcode

  (see #1854) and a NOP (90h), except for subcodes DCh and DEh, where

  the second byte is a register count (01h-08h)

this vector is modified but not restored by Direct Access v4.0, and

  may be left dangling by other programs written with the same version

  of compiled BASIC

SeeAlso: INT 3D

INT 3E


INT 3F ---- - Overlay manager interrupt (Microsoft LINK.EXE, Borland TLINK VROOMM)

Category: r - runtime support

Inp.:

Notes:	INT 3F is the default, and may be overridden while linking

this vector is modified but not restored by Direct Access v4.0, and

  may be left dangling by other programs written with the same version

  of compiled BASIC

SeeAlso: INT FE"OVERLAY"

INT 3F


INT 3F ---- - Microsoft Dynamic Link Library manager

Category: r - runtime support

Inp.:

SeeAlso: INT 21/AH=4Bh

INT 3F


INT 40 ---- - DISKETTE - ROM BIOS DISKETTE HANDLER RELOCATED BY HARD DISK BIOS

Category: B - BIOS

Inp.:

SeeAlso: INT 13,INT 47"SuperBIOS",INT 63

INT 40


INT 40 ---- - Z100 - Master 8259 - Parity error or S100 error

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 41"Z100",INT FF"Z100"

INT 40


INT 40 ---- - Acorn BBC Master 512 - "OSFIND" - OPEN FILE

Category: O - other operating systems

Inp.:

AL = operation

    00h close file

    40h open file for reading

    80h open file for writing

    C0h open file for random access

DS:BX -> CR-terminated filename

Return: AL = file handle (00h if file closed or could not be opened)

Note:	the Acorn BBC Master 512 is an 80186-based add-on board for the

  6502-based Master 128 which uses the original CPU as an I/O processor

SeeAlso: INT 41"Acorn",INT 42"Acorn",INT 43"Acorn",INT 44"Acorn",INT 4C"Acorn"

INT 40


INT 40 ---- - TI Professional PC - IRQ0

Category: h - vendor-specific hardware

Inp.:

Note:	on the TI Pro, IRQ0 is connected to the same pin on the expansion bus

  that IBM connects to IRQ2

SeeAlso: INT 0A"IRQ2",INT 41"TI Professional"

INT 40


INT 41 ---- - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE

Category: B - BIOS

Inp.:

Notes:	the default parameter table array is located at F000h:E401h in 100%

  compatible BIOSes; the pointer may be overridden by the hard disk

  controller's BIOS to support drive formats unknown to the ROM BIOS

not used by some PS/2 models

SeeAlso: #1855,INT 13/AH=09h,INT 1E,INT 46,INT 60"Adaptec",INT C0"AMI"

INT 41


INT 41 ---- - Z100 - Master 8259 - Processor Swap

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 40"Z100",INT 42"Z100"

INT 41


INT 41 ---- - TI Professional PC - IRQ1

Category: h - vendor-specific hardware

Inp.:

Note:	on the TI Pro, IRQ1 is connected to the same pin on the expansion bus

  that IBM connects to IRQ3

SeeAlso: INT 0B"IRQ3",INT 40"TI Professional",INT 42"TI Professional"

INT 41


INT 41 ---- - Acorn BBC Master 512 - "OSGBPB" - MULTI-BYTE GET/PUT

Category: O - other operating systems

Inp.:

AL = function

    01h put bytes sequentially

    02h put bytes, ignoring sequential pointer

    03h get bytes sequentially

    04h get bytes, ignoring sequential pointer

    05h get media title and boot option

    06h get current device and directory

    07h get current library and device

    08h search directory

DS:BX -> control block (see #1858)

Return: CF clear if successful

CF set on error

AL = 00h if operation attempted

AL unchanged if unsupported function

SeeAlso: INT 40"Acorn",INT 42"Acorn",INT 43"Acorn"

INT 41


INT 41 0000 - MS Windows debugging kernel - OUTPUT CHARACTER FOR USER

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0000h

DS:DX -> character

Note:	the kernel calls this function when it wants the user program to

  output a character

SeeAlso: AX=0001h

INT 41


INT 41 0001 - MS Windows debugging kernel - INPUT CHARACTER

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0001h

Return: AL = character

Note:	the kernel calls this function when it needs to input a character

SeeAlso: AX=0000h

INT 41


INT 41 000D - MS Windows debugging kernel - TASK GOING OUT

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 000Dh

SeeAlso: AX=000Eh

INT 41


INT 41 000E - MS Windows debugging kernel - TASK COMING IN

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 000Eh

SeeAlso: AX=000Dh

INT 41


INT 41 0012 - MS Windows debugging kernel - "OutputDebugString"

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0012h

DS:SI -> string (Windows 3.0)

ES:SI -> string (Windows 3.1)

Return: nothing???

Note:	this function is called by the kernel when it wants to output a

  string through the debugger

SeeAlso: AX=0050h,INT 68/AH=47h

INT 41


INT 41 004F - MS Windows debugging kernel - DEBUGGER INSTALLATION CHECK

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 004Fh

Return: AX = F386h if debugger is present

SeeAlso: INT 68/AX=4400h

INT 41


INT 41 0050 - MS Windows debugging kernel - "DefineDebugSegment"

available only in protected mode

Category: G - debuggers/debugging tools

Inp.:

AX = 0050h

BX = segment number in executable (0-based)

CX = selector

DX = instance handle

SI = segment flags (0=code, 1=data)

ES:DI -> module name of owner

Return: ???

SeeAlso: AX=0012h,AX=004Fh

INT 41


INT 41 0051 - MS Windows debugging kernel - MOVE SEGMENT

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0051h

???

Return: ???

SeeAlso: AX=0050h,AX=0052h

INT 41


INT 41 0052 - MS Windows debugging kernel - FREE SEGMENT

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0052h

BX = freed selector

SeeAlso: AX=0050h,AX=0051h,AX=005Ch

INT 41


INT 41 0059 - MS Windows debugging kernel - LOAD TASK

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0059h

???:BX = CS:IP of new task's starting point

INT 41


INT 41 005C - MS Windows debugging kernel - FREE INITIAL SEGMENT

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 005Ch

BX = freed selector

Note:	called only when KERNEL starts, once for CS and once for the DS alias

  to CS

SeeAlso: AX=0052h

INT 41


INT 41 0060 - MS Windows debugging kernel -  END OF SEGMENT LOAD

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0060h

???

Return: ???

SeeAlso: AX=0061h

INT 41


INT 41 0061 - MS Windows debugging kernel - END OF SEGMENT DISCARD

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0061h

???

Return: ???

SeeAlso: AX=0060h

INT 41


INT 41 0062 - MS Windows debugging kernel - APPLICATION TERMINATING

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0062h

STACK:	BYTE	exit code

Return: ???

STACK unchanged???

SeeAlso: AX=0064h

INT 41


INT 41 0063 - MS Windows debugging kernel - ASYNCHRONOUS STOP (Ctrl-Alt-SysReq)

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0063h

INT 41


INT 41 0064 - MS Windows debugging kernel - DLL LOADED

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0064h

CX:BX = DLL entry point CS:IP

SI = module handle

SeeAlso: AX=0062h,AX=0065h

INT 41


INT 41 0065 - MS Windows debugging kernel - MODULE REMOVED

callout or callback (usually hooked rather than called)

available only in protected mode

undocumented function

Category: G - debuggers/debugging tools

Inp.:

AX = 0065h

ES = module handle

SeeAlso: AX=0064h

INT 41


INT 42 ---- - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)

Category: V - video

Inp.:

Desc:	contains the address of the original INT 10 handler which an EGA+

  video adapter replaces with its own on-board BIOS code

SeeAlso: INT 10

Note:	not used by PS/2 built-in VGA or XGA

INT 42


INT 42 ---- - Z100 - Master 8259 - Timer

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 41"Z100",INT 43"Z100"

INT 42


INT 42 ---- - TI Professional PC - IRQ2

Category: h - vendor-specific hardware

Inp.:

Note:	on the TI Pro, IRQ0 is connected to the same pin on the expansion bus

  that IBM connects to IRQ4

SeeAlso: INT 0C"IRQ4",INT 41"TI Professional",INT 43"TI Professional"

INT 42


INT 42 ---- - Western Digital WD1002 SuperBIOS - INT 40 CASCADE

Category: b - vendor-specific BIOS extensions

Inp.:

Note:	if the second WD1002 controller in the system finds INT 40 already in

  use, it uses this vector to cascade to the first controller's BIOS

SeeAlso: INT 40"DISKETTE",INT 47"SuperBIOS"

INT 42


INT 42 ---- - Acorn BBS Master 512 - "OSBPUT" - WRITE SINGLE BYTE TO FILE

Category: O - other operating systems

Inp.:

AL = byte to be written

BH = file handle

Return: flags destroyed

SeeAlso: INT 40"Acorn",INT 41"Acorn",INT 43"Acorn",INT 47"Acorn",INT 49"Acorn"

INT 42


INT 42 7500 - Toshiba laptops - ???

undocumented function

Category: V - video

Inp.:

AX = 7500h

BL = ??? (00h or 01h)

Return: ???

Note:	used by Toshiba utility VCHAD.EXE

SeeAlso: AX=7501h,AX=7503h

INT 42


INT 42 7501 - Toshiba laptop - GET ??? DATA

undocumented function

Category: V - video

Inp.:

AX = 7501h

DS:DI -> data area to be filled ???

Return: area filled with data ???

Note:	used by Toshiba utility VCHAD.EXE

SeeAlso: AX=7500h,AX=7502h,AX=7503h

INT 42


INT 42 7502 - Toshiba laptops - SET ??? DATA

undocumented function

Category: V - video

Inp.:

AX = 7502h

DS:DI -> data area ???

Return: ???

Note:	used by Toshiba utility VCHAD.EXE

SeeAlso: AX=7501h,AX=7503h

INT 42


INT 42 7503 - Toshiba laptops - GET DISPLAY STATUS

Category: V - video

Inp.:

AX = 7503h

Return: AX = 7575h if supported

CX = 0001h if supported

BH = display type (00h color, 03h monochrome)

BL = display state

    01h internal LCD display is active

    02h external VGA display is active

    03h both displays active / DeskStation display mode enabled

(not possible on all machines)

Note:	used by VCHAD.EXE and supported by all Toshiba VGA laptops until about

  1994 (string "TOSHIBA " at F000:E010h should be checked before call)

        no longer supported by T21xx series, use INT 10/AX=5F50h instead

INT 42 normally points to F000:F065h but may be redirected by QEMM386

SeeAlso: AX=7500h,AX=7504h,INT 10/AX=5F50h,INT 15/AH=C0h

INT 42


INT 42 7504 - Toshiba laptops - ???

undocumented function

Category: V - video

Inp.:

AX = 7504h

BL = ???

Return: BH = ???

Note:	used by Toshiba utility VCHAD.EXE

SeeAlso: AX=7500h,AX=7503h

INT 42


INT 43 ---- - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)

Category: V - video

Inp.:

Desc:	points at graphics data for characters 00h-7Fh of the current font

  in 8x8 dot modes, graphics data for all characters in 8x14 and 8x16

  modes

Note:	this is not a callable vector!

SeeAlso: INT 06"no-name",INT 1F,INT 44"VIDEO"

INT 43


INT 43 ---- - Z100 - Master 8259 - Slave 8259 input

Category: h - vendor-specific hardware

Inp.:

Note:	slave runs in special fully nested mode

SeeAlso: INT 42"Z100",INT 44"Z100"

INT 43


INT 43 ---- - TI Professional PC - IRQ3 - TIMER1 25ms INTERVAL INTERRUPT

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0B"IRQ3",INT 42"TI Professional",INT 44"TI Professional"

SeeAlso: INT 58"TI Professional"

INT 43


INT 43 ---- - Acorn BBC Master 512 - "OSBGET" - READ SINGLE BYTE FROM FILE

Category: O - other operating systems

Inp.:

BH = file handle

Return: CF clear if successful

    AL = byte read from file

CF set on error

SeeAlso: INT 40"Acorn",INT 41"Acorn",INT 42"Acorn",INT 46"Acorn"

INT 43


INT 44 ---- - VIDEO DATA - ROM BIOS CHARACTER FONT, CHARACTERS 00h-7Fh (PCjr)

Category: V - video

Inp.:

Desc:	this vector points at graphics data for current character font

SeeAlso: INT 1F,INT 43"VIDEO"

INT 44


INT 44 ---- - Novell NetWare - HIGH-LEVEL LANGUAGE API

Category: N - network

Inp.:

INT 44


INT 44 ---- - IBM 3270-PC High Level Language API

Category: I - IBM workstation/terminal emulators

Inp.:

DS:SI -> parameter control block

INT 44


INT 44 ---- - Z100 - Master 8259 - Serial A

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 43"Z100",INT 45"Z100"

INT 44


INT 44 ---- - TI Professional PC - IRQ4

Category: h - vendor-specific hardware

Inp.:

Note:	on the TI Pro, IRQ4 is connected to the same pin on the expansion bus

  that IBM connects to IRQ5

SeeAlso: INT 0D"IRQ5",INT 43"TI Professional",INT 45"TI Professional"

INT 44


INT 44 ---- - VIRUS - "Lehigh" - ORIGINAL INT 21h VECTOR

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 32"VIRUS",INT 60"VIRUS",INT 70"VIRUS",INT 9E"VIRUS"

INT 44


INT 44 00-- - Acorn BBC Master 512 - "OSARGS" - GET/SET FILE PARAMS FOR OPEN FILE

Category: O - other operating systems

Inp.:

AH = 00h

AL = function

    00h get current filing system

Return: AL = filing system (see #1859)

    01h get address of commandline tail

Return: BX buffer filled with address of command tail in I/O

      processor address space (use INT 4A/AL=05h to

      retrieve)

    FFh flush all files onto secondary storage

BX -> 4-byte data buffer

Note:	the commandline tail is terminated with a carriage return (0Dh)

SeeAlso: INT 40"Acorn",INT 45"Acorn"

INT 44


INT 44 ---- - Acorn BBC Master 512 - "OSARGS" - GET/SET FILE PARAMS FOR OPEN FILE

Category: O - other operating systems

Inp.:

AH = nonzero file handle

AL = function

    00h get sequential pointer for file

    01h set sequential pointer for file

    02h get length of file

BX -> 4-byte data buffer

Return: BX buffer updated if appropriate

SeeAlso: INT 40"Acorn",INT 41"Acorn",INT 44/AH=00h,INT 45"Acorn",INT 4A"Acorn"

INT 44


INT 45 ---- - Z100 - Master 8259 - Serial B

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 44"Z100",INT 46"Z100"

INT 45


INT 45 ---- - TI Professional PC - IRQ5

Category: h - vendor-specific hardware

Inp.:

Note:	on the TI Pro, IRQ5 is connected to the same pin on the expansion bus

  that IBM connects to IRQ6

SeeAlso: INT 0E"IRQ6",INT 44"TI Professional",INT 46"TI Professional"

INT 45


INT 45 ---- - Acorn BBC Master 512 - "OSFILE" - READ/WRITE FILE OR DIRECTORY INFO

Category: O - other operating systems

Inp.:

AL = function

    00h save block of memory as file

    01h update directory entry for existing file

    02h set load address for existing file

    03h set execution address for existing file

    04h set attributes for existing file

    05h read directory

    06h delete file

    FFh load file

DS:BX -> control block (see #1860)

Return: FLAGS destroyed

AL = file type

    00h not found

    01h file found

    02h directory found

    FFh protected file

SeeAlso: INT 40"Acorn",INT 41"Acorn",INT 44"Acorn",INT 46"Acorn"

INT 45


INT 46 ---- - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE

Category: B - BIOS

Inp.:

Note:	not used by some PS/2 models

SeeAlso: INT 13/AH=09h,INT 41,INT 60"Adaptec",INT C0"AMI"

INT 46


INT 46 ---- - Z100 - Master 8259 - Keyboard, Retrace, and Light Pen

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 45"Z100",INT 47"Z100"

INT 46


INT 46 ---- - TI Professional PC - IRQ6

Category: h - vendor-specific hardware

Inp.:

Note:	on the TI Pro, IRQ6 is connected to the same pin on the expansion bus

  that IBM connects to IRQ7

SeeAlso: INT 0F"IRQ7",INT 45"TI Professional",INT 47"TI Professional"

INT 46


INT 46 ---- - Acorn BBC Master 512 - "OSRDCH" - GET CHARACTER FROM CUR INPUT STREAM

Category: O - other operating systems

Inp.:

Return: CF clear if successful

    AL = character read

CF set on error

    AL = error code

SeeAlso: INT 40"Acorn",INT 43"Acorn",INT 47"Acorn",INT 49"Acorn"

INT 46


INT 47 ---- - Z100 - Master 8259 - Printer

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 46"Z100",INT 48"Z100"

INT 47


INT 47 ---- - TI Professional PC - IRQ7 - KEYBOARD USART

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 09"IRQ1",INT 46"TI Professional"

INT 47


INT 47 ---- - Acorn BBC Master 512 - "OSWRCH" - WRITE CHARACTER TO CUR OUTPUT STREAM

Category: O - other operating systems

Inp.:

AL = character to be written

Return: FLAGS destroyed

SeeAlso: INT 40"Acorn",INT 46"Acorn",INT 49"Acorn"

INT 47


INT 47 ---- - Western Digital WD1002-27X SuperBIOS - INT 40 CASCADE

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	used by the second WD1002-27X controller to cascade to the first

  controller's INT 40

SeeAlso: INT 40"DISKETTE",INT 42"SuperBIOS",INT 48"SuperBIOS"

INT 47


INT 47 8000 - SQL Base - DATABASE ENGINE API

Category: - - (none)

Inp.:

AX = 8000h

DS:BX -> parameter block, first word is function number (see #1862)

Program: SQL Base is a network-oriented database engine by Gupta Technologies

SeeAlso: AX=8001h

INT 47


INT 47 8001 - SQL Base - GET VERSION NUMBER

Category: - - (none)

Inp.:

AX = 8001h

Return: ???

Program: SQL Base is a network-oriented database engine by Gupta Technologies

SeeAlso: AX=8000h

INT 47


INT 48 ---- - KEYBOARD - CORDLESS KEYBOARD TRANSLATION (PCjr)

Category: B - BIOS

Inp.:

SeeAlso: INT 49"PCjr"

INT 48


INT 48 ---- - Z100 - Slave 8259 - S100 vectored line 0

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 47"Z100",INT 49"Z100"

INT 48


INT 48 ---- - Watstar PC Network data pointer 1

Category: N - network

Inp.:

SeeAlso: INT 49"Watstar"

INT 48


INT 48 ---- - TI Professional PC - SPEAKER DEVICE SERVICE ROUTINE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 40"TI Professional",INT 49"TI Professional"

SeeAlso: INT 4A"TI Professional",INT 4C"TI Professional",INT 4D/AH=00h

INT 48


INT 48 ---- - Acorn BBC Master 512 - "OSNEWL" - SEND NEWLINE TO OUTPUT STREAM

Category: O - other operating systems

Inp.:

Return: FLAGS destroyed

Note:	writes a carriage return (0Dh) followed by a linefeed (0Ah)

SeeAlso: INT 40"Acorn",INT 47"Acorn",INT 49"Acorn"

INT 48


INT 48 ---- - Western Digital WD1002-27X SuperBIOS - DRIVE DATA (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Note:	the second WD1002-27X controller in a system uses the low byte to

  store the number of drives controlled by the second controller,

  and the high word for temporary storage during track recalculation;

  the first controller uses offsets 74h-77h in the BIOS data area

  (see MEMORY.LST) to store data

SeeAlso: INT 47"SuperBIOS"

INT 48


INT 48 ---- - Compaq UILIB.EXE - API

undocumented function

Category: V - video

Inp.:

AX = function (see #1863)

BX = call type (0002h) (see #1864)

???

Return: ???

Note:	returns AX=FFFFh if 1000h<=AX<=2000h and AX is not one of the functions

  listed below

SeeAlso: AX=1A70h

INT 48


INT 48 1A70 - Compaq UILIB.EXE - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

AX = 1A70h

BX = call type (see #1864)

Return: CX = 5649h ('VI') if installed

DX = 4557h ('EW') if installed

    AX = version??? (0106h)

INT 48


INT 49 ---- - SYSTEM DATA - NON-KEYBOARD SCAN-CODE TRANSLATION TABLE (PCjr)

Category: B - BIOS

Inp.:

SeeAlso: #1865,INT 48"PCjr"

INT 49


INT 49 ---- - Z100 - Slave 8259 - S100 vectored line 1

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 48"Z100",INT 4A"Z100"

INT 49


INT 49 ---- - TI Professional PC - CRT DEVICE SERVICE ROUTINE

Category: V - video

Inp.:

apparently provides direct video display on the TI Professional PC

SeeAlso: INT 40"TI Professional",INT 48"TI Professional"

SeeAlso: INT 4A"TI Professional",INT 4B"TI Professional",INT 4D/AH=00h

SeeAlso: INT 57"TI Professional"

INT 49


INT 49 ---- - Watstar PC Network data pointer 2

Category: N - network

Inp.:

SeeAlso: INT 48"Watstar"

INT 49


INT 49 ---- - Acorn BBC Master 512 - "OSASCI" - WRITE CHARACTER TO CUR OUTPUT STREAM

Category: O - other operating systems

Inp.:

AL = character to be written

Return: FLAGS destroyed

Note:	converts carriage return (0Dh) into CRLF sequence (0Dh 0Ah)

SeeAlso: INT 40"Acorn",INT 46"Acorn",INT 47"Acorn",INT 48"Acorn"

INT 49


INT 49 0001 - MAGic v1.16+ - TURN ON MAGNIFICATION

Category: a - access software (screen readers, etc)

Inp.:

AX = 0001h

Return: AX = status (see #1866)

BX,CX,DX destroyed

Program: MAGic (MAGnification In Color) is a TSR by Microsystems Software, Inc.

  providing 2x2 text and graphics magnification on VGA, XGA, and SVGA

Note:	INT 49 is the default, but may be overridden on the commandline.  The

  actual interrupt in use may be found by searching for the signature

  "MAGic" or "xMAGic" (for the deluxe version) immediately preceding

  the interrupt handler (this is also the installation check).	MAGic

  uses CodeRunneR, which places the signature "RT" at offset 0000h in

  the interrupt handler's segment, followed by MAGic's TSR ID of

  "VMAG".

SeeAlso: AX=0002h,AX=0003h,AX=0004h,AX=0008h

Index:	installation check;MAGic

INT 49


INT 49 0002 - MAGic v1.16+ - TURN OFF MAGNIFICATION

Category: a - access software (screen readers, etc)

Inp.:

AX = 0002h

Return: AX = status (see #1866)

BX,CX,DX destroyed

SeeAlso: AX=0001h

INT 49


INT 49 0003 - MAGic v1.16+ - SHIFT MAGNIFIED WINDOW TO INCLUDE SPECIFIED LOCATION

Category: a - access software (screen readers, etc)

Inp.:

AX = 0003h

BX = vertical position (character row [text] or pixel row [graphics])

DX = horizontal position (char column [text] or 8-pixel units [gr])

Return: AX = status

    0000h successful

    FFFFh MAGic busy, retry later

BX,CX,DX destroyed

Note:	window is not moved if the position is inside the current window

SeeAlso: AX=0001h,AX=0004h,AX=0005h

INT 49


INT 49 0004 - MAGic v1.16+ - REPOSITION MAGNIFIED WINDOW

Category: a - access software (screen readers, etc)

Inp.:

AX = 0004h

BX = vertical position of upper left corner

DX = horizontal position

Return: AX = status (see AX=0003h)

BX,CX,DX destroyed

SeeAlso: AX=0001h,AX=0003h,AX=0005h

INT 49


INT 49 0005 - MAGic v1.16+ - GET POSITION OF MAGNIFIED WINDOW

Category: a - access software (screen readers, etc)

Inp.:

AX = 0005h

Return: AX = status

    0000h successful

BX = vertical position (char row or pixel row)

DX = horizontal position (char column or 8-pixel units)

    FFFFh MAGic busy, retry later

BX,DX destroyed

CX destroyed

SeeAlso: AX=0001h,AX=0003h,AX=0004h,AX=0006h,AX=0007h

INT 49


INT 49 0006 - MAGic v1.16+ - GET SIZE OF FULL SCREEN

Category: a - access software (screen readers, etc)

Inp.:

AX = 0006h

Return: AX = status

    0000h successful

BX = vertical size (char rows or pixel rows)

DX = horizontal size (char cols or 8-pixel units)

    FFFFh MAGic busy, retry later

BX,DX destroyed

CX destroyed

SeeAlso: AX=0001h,AX=0005h,AX=0007h

INT 49


INT 49 0007 - MAGic v1.16+ - GET SIZE OF MAGNIFICATION WINDOW

Category: a - access software (screen readers, etc)

Inp.:

AX = 0007h

Return: AX = status

    0000h successful

BX = vertical size (char rows or pixel rows)

DX = horizontal size (char cols or 8-pixel units)

    FFFEh invalid function

    FFFFh MAGic busy, retry later

BX,DX destroyed

CX destroyed

BUG:	in v1.16 and v1.17, this function is not recognized as valid, but

  AX=0000h is accepted and will branch into hyperspace

SeeAlso: AX=0001h,AX=0006h

INT 49


INT 49 0008 - MAGic v1.23+ - SET TEXT MODE MAGNIFICATION SIZE

Category: a - access software (screen readers, etc)

Inp.:

AX = 0008h

BX = scaling factor (01h=1.4 times, 02h, 04h, 06h, 08h, 09h=12 times)

Return: AX = status

    0000h successful

    FFFBh scaling factor only available in MAGic Deluxe

    FFFCh already in magnified state, can't set size

Notes:	this call specifies the amount a subsequent call to AX=0001h should

  magnify the display

scaling factors greater than 2 are only available in MAGic Deluxe

SeeAlso: AX=0001h

INT 49


INT 4A ---- - SYSTEM - USER ALARM HANDLER

callout or callback (usually hooked rather than called)

Category: B - BIOS

Inp.:

Desc:	This interrupt is invoked by the BIOS when a real-time clock alarm

  occurs; an application may use it to perform an action at a

  predetermined time.

Note:	this interrupt is called from within a hardware interrupt handler,

  so all usual precautions against reentering DOS must be taken

SeeAlso: INT 1A/AH=06h

INT 4A


INT 4A ---- - Z100 - Slave 8259 - S100 vectored line 2

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 49"Z100",INT 4B"Z100"

INT 4A


INT 4A ---- - TI Professional PC - KEYBOARD DEVICE SERVICE ROUTINE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 47"TI Professional",INT 48"TI Professional"

SeeAlso: INT 49"TI Professional",INT 4C"TI Professional",INT 4D/AH=00h

SeeAlso: INT 5B"TI Professional"

INT 4A


INT 4A ---- - Acorn BBC Master 512 - "OSWORD" - MISC FUNCTIONS USING CONTROL BLOCK

Category: O - other operating systems

Inp.:

AL = function code

    FAh transfer data between 80186 and 65C12 I/O processor

DS:BX -> control block (see #1867)

Return: FLAGS destroyed

control block updated

Note:	there are more functions than are listed here, but details are not

  available

SeeAlso: INT 40"Acorn",INT 4B"Acorn",INT 4C"Acorn"

INT 4A


INT 4B ---- - Z100 - Slave 8259 - S100 vectored line 3

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 4A"Z100",INT 4C"Z100"

INT 4B


INT 4B ---- - TI Professional PC - PARALLEL PORT DEVICE SERVICE ROUTINE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 40"TI Professional",INT 48"TI Professional"

SeeAlso: INT 49"TI Professional",INT 4C"TI Professional",INT 4D/AH=00h

INT 4B


INT 4B ---- - Common Access Method SCSI interface (draft revision 1.9)

Category: d - disk I/O enhancements

Inp.:

ES:DI -> CAM Control Block (see #1880 at INT 4F/AX=8100h)

Notes:	the CAM committee moved the interface to INT 4F after revision 1.9

  to avoid conflicting with the IBM SCSI interface and the Virtual

  DMA specification

the installation check for the driver is the string "SCSI_CAM" eight

  bytes past the INT 4Bh handler

the only driver to date reported to use the CAM interface on INT 4B

  instead of INT 4F is from Future Domain (which has drivers for CAM

  on either interrupt)

SeeAlso: INT 4F/AX=8100h

Index:	installation check;Common Access Method SCSI interface

INT 4B


INT 4B ---- - Acorn BBC Master 512 - "OSBYTE" - MISC FUNCTIONS USING REGISTER PARAMS

Category: O - other operating systems

Inp.:

AL = function code

BL = first parameter

BH = second parameter (if needed)

Return: BL = first return parameter

BH = second return parameter

CF depends on function

SeeAlso: INT 40"Acorn",INT 4A"Acorn",INT 4C"Acorn"

INT 4B


INT 4B 80-- - IBM SCSI interface

Category: d - disk I/O enhancements

Inp.:

AH = 80h

AL = 00h-10h (Corel PowerSCSI INT4BCAM.SYS)

further details not yet available

INT 4B


INT 4B 8102 - Virtual DMA Specification (VDS) - GET VERSION

Category: d - disk I/O enhancements

Inp.:

AX = 8102h

DX = 0000h

Return: CF clear if successful

    AH = major version number

    AL = minor version number

    BX = product number (see #1869)

    CX = product revision number

always 0000h for QMAPS and HPMM.SYS

always 0001h for Microsoft's EMM386.EXE v4.20-4.41

    DX = flags (see #1871)

    SI:DI = maximum DMA buffer size

CF set on error

    AL = error code (see #1870)

Note:	bit 5 of 0040h:007Bh is supposed to be set if VDS is supported; this is

  apparently not always the case

SeeAlso: INT 2C/AX=002Bh,INT 31

Index:	installation check;Virtual DMA Spec

INT 4B


INT 4B 8103 - Virtual DMA Specification - LOCK DMA REGION

Category: d - disk I/O enhancements

Inp.:

AX = 8103h

DX = flags (see #1872)

ES:DI -> DMA descriptor structure (see #1873,#1874,#1875)

Return: CF clear if successful

    DDS physical address field filled in

    DDS buffer ID field filled (0000h if no buffer allocated)

CF set on error

    AL = error code (see #1870)

    DDS region size field filled wth maximum contiguous length in bytes

BUGS:	Windows 3.0 does not correctly support automatic remapping or copying

  in enhanced mode

Windows 3.0 in enhanced mode does not return a correct code on error

SeeAlso: AX=8104h,AX=8105h

INT 4B


INT 4B 8104 - Virtual DMA Specification - UNLOCK DMA REGION

Category: d - disk I/O enhancements

Inp.:

AX = 8104h

DX = flags

    bit 0: reserved (zero)

    bit 1: data should be copied out of buffer

    bits 2-15 reserved (zero)

ES:DI -> DMA descriptor structure (see #1873,#1874) with region size,

  physical address, and buffer ID fields set

Return: CF clear if successful

    DDS physical address field set

    DDS buffer ID field set (0000h if no buffer allocated)

CF set on error

    AL = error code (see #1870)

    DDS region size field filled wth maximum contiguous length in bytes

Note:	Windows 3.0 does not check whether the region extends beyond the end of

  a segment

BUG:	Windows 3.0 in enhanced mode does not return a correct code on error

SeeAlso: AX=8103h,AX=8106h

INT 4B


INT 4B 8105 - Virtual DMA Specification - SCATTER/GATHER LOCK REGION

Category: d - disk I/O enhancements

Inp.:

AX = 8105h

DX = flags (see #1876)

ES:DI -> Extended DMA descriptor structure (see #1874,#1875)

  region size, linear segment, linear offset, and number avail

  fields set

Return: CF clear if successful

    EDDS number used field set

    if DX bit 6 set, lower 12 bits of BX = offset in first page

CF set on error

    AL = error code (see #1870)

    EDDS region size field filled with max length in bytes that can be

  locked and described in the EDDS table

BUG:	Windows 3.0 in enhanced mode may return zero instead of the physical

  page address for pages which were originally not present

SeeAlso: AX=8103h,AX=8106h

INT 4B


INT 4B 8106 - Virtual DMA Specification - SCATTER/GATHER UNLOCK REGION

Category: d - disk I/O enhancements

Inp.:

AX = 8106h

DX = flags (see #1877)

ES:DI -> Extended DMA descriptor structure (see #1874,#1875) returned

  by AX=8105h

Return: CF clear if successful

CF set on error

    AL = error code (see #1870)

Note:	according to the Microsoft version of the VDS specification, the

  actual scatter/gather list is ignored, while according to the IBM

  version of the specification, "the result of a LOCK operation"

  must be provided to this function

SeeAlso: AX=8104h,AX=8105h

INT 4B


INT 4B 8107 - Virtual DMA Specification - REQUEST DMA BUFFER

Category: d - disk I/O enhancements

Inp.:

AX = 8107h

DX = flags

    bit 0: reserved (zero)

    bit 1: data should be copied into buffer

    bits  2-15 reserved (zero)

ES:DI -> DMA descriptor structure (see #1873) with region size set

  (also region offset and region segment if DX bit 1 set)

Return: CF clear if successful

    DDS physical address and buffer ID set

    DDS region size filled with length of buffer

CF set on error

    AL = error code (see #1870)

SeeAlso: AX=8108h

INT 4B


INT 4B 8108 - Virtual DMA Specification - RELEASE DMA BUFFFER

Category: d - disk I/O enhancements

Inp.:

AX = 8108h

DX = flags

    bit 0: reserved (zero)

    bit 1: data should be copied out of buffer

    bits 2-15 reserved (zero)

ES:DI -> DMA descriptor structure (see #1873,#1874) with buffer ID set

  (also region size/region offset/segment if DX bit 1 set)

Return: CF clear if successful

CF set on error

    AL = error code (see #1870)

BUG:	under Windows 3.0 Enhanced mode, you must specify that data be copied

  for this function to work correctly

SeeAlso: AX=8107h

INT 4B


INT 4B 8109 - Virtual DMA Specification - COPY INTO DMA BUFFER

Category: d - disk I/O enhancements

Inp.:

AX = 8109h

DX = 0000h

ES:DI -> DMA descriptor structure (see #1873,#1874) with buffer ID,

  region segment/offset, and region size fields set

BX:CX = starting offset into DMA buffer

Return: CF clear if successful

CF set on error

    AL = error code (see #1870)

BUG:	Windows 3.0 Enhanced mode does not correctly interpret the copy count

SeeAlso: AX=810Ah

INT 4B


INT 4B 810A - Virtual DMA Specification - COPY OUT OF DMA BUFFER

Category: d - disk I/O enhancements

Inp.:

AX = 810Ah

DX = 0000h

ES:DI -> DMA descriptor structure (see #1873,#1875) with buffer ID,

  region segment/offset, and region size fields set

BX:CX = starting offset into DMA buffer

Return: CF clear if successful

CF set on error

    AL = error code (see #1870)

BUG:	Windows 3.0 Enhanced mode does not correctly interpret the copy count

SeeAlso: AX=8109h

INT 4B


INT 4B 810B - Virtual DMA Specification - DISABLE DMA TRANSLATION

Category: d - disk I/O enhancements

Inp.:

AX = 810Bh

BX = DMA channel number

DX = 0000h

Return: CF clear if successful

CF set on error

    AL = error code (see #1870)

SeeAlso: AX=810Ch

INT 4B


INT 4B 810C - Virtual DMA Specification - ENABLE DMA TRANSLATION

Category: d - disk I/O enhancements

Inp.:

AX = 810Ch

BX = DMA channel number

DX = 0000h

Return: CF clear if successful

    ZF set if disable count decremented to zero

CF set on error

    AL = error code (see #1870)

SeeAlso: AX=810Bh

INT 4B


INT 4B 810D - QEMM-386 - BUG

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

AX = 810Dh

Note:	the code in QEMM v5.11 and 6.00 jumps to an invalid location on this

  call

INT 4B


INT 4C ---- - Z100 - Slave 8259 - S100 vectored line 4

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 4B"Z100",INT 4D"Z100"

INT 4C


INT 4C ---- - TI Professional PC - CLOCK/ANALOG INTERFACE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 40"TI Professional",INT 49"TI Professional"

SeeAlso: INT 4A"TI Professional",INT 4B"TI Professional",INT 4D/AH=00h

SeeAlso: INT 58"TI Professional"

INT 4C


INT 4C ---- - Acorn BBC Master 512 - "OSCLI" - INTERPRET COMMAND LINE

Category: O - other operating systems

Inp.:

DS:BX -> CR-terminated command string

Return: FLAGS destroyed

SeeAlso: INT 40"Acorn",INT 4A"Acorn",INT 4B"Acorn"

INT 4C


INT 4D ---- - Z100 - Slave 8259 - S100 vectored line 5

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 4C"Z100",INT 4E"Z100"

INT 4D


INT 4D 00-- - TI Professional PC - DISK - RESET DISK SYSTEM

Category: B - BIOS

Inp.:

AH = 00h

DL = drive (if bit 7 is set both hard disks and floppy disks reset)

Return: AH = status (see #0140 at INT 13/AH=01h)

CF clear if successful (returned AH=00h)

CF set on error

Note:	this function is the same as INT 13/AH=00h on a standard PC BIOS

SeeAlso: AH=01h,AH=02h,AH=08h,AH=0Bh,INT 13/AH=00h,INT 46"TI Professional"

SeeAlso: INT 48"TI Professional",INT 4A"TI Professional"

INT 4D


INT 4D 01-- - TI Professional PC - DISK - GET STATUS OF LAST OPERATION

Category: B - BIOS

Inp.:

AH = 01h

DL = drive (bit 7 set for hard disk)

Return: CF clear if status unchanged

CF set if status changed since last call

AH = 00h

AL = status of previous operation (see #0140 at INT 13/AH=01h)

Notes:	this function is nearly the same as INT 13/AH=01h on a standard PC BIOS

the TI's BIOS tranparently performs a number of retries, and an error

  status is only reported if all of the retries fail.  To get the error

  status if the operation succeeded on a retry, use AH=07h instead

SeeAlso: AH=00h,AH=07h,INT 13/AH=01h

INT 4D


INT 4D 02-- - TI Professional PC - DISK - READ SECTOR(S) INTO MEMORY

Category: B - BIOS

Inp.:

AH = 02h

AL = number of sectors to read (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> data buffer

Return: CF set on error

    if AH = 11h (corrected ECC error), AL = burst length

CF clear if successful

AH = status (see #0140 at INT 13/AH=01h)

AL = number of sectors transferred

ES:BX -> buffer for last sector processed (including one with errors)

SeeAlso: AH=00h,AH=01h,AH=03h,AH=04h,INT 13/AH=02h

INT 4D


INT 4D 03-- - TI Professional PC - DISK - WRITE SECTOR(S) FROM MEMORY

Category: B - BIOS

Inp.:

AH = 03h

AL = number of sectors to write (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> buffer containing data

Return: CF set on error

    if AH = 11h (corrected ECC error), AL = burst length

CF clear if successful

AH = status (see #0140 at INT 13/AH=01h)

AL = number of sectors transferred

ES:BX -> buffer for last sector processed (including one with errors)

SeeAlso: AH=00h,AH=01h,AH=02h,AH=04h,INT 13/AH=03h

INT 4D


INT 4D 04-- - TI Professional PC - DISK - VERIFY DISK SECTOR CRC(S)

Category: B - BIOS

Inp.:

AH = 04h

AL = number of sectors to verify (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> data buffer

Return: CF set on error

    if AH = 11h (corrected ECC error), AL = burst length

CF clear if successful

AH = status (see #0140 at INT 13/AH=01h)

AL = number of sectors transferred

ES:BX -> buffer for last sector processed (including one with errors)

Note:	even though no data is transferred, ES:BX must still be valid

SeeAlso: AH=00h,AH=01h,AH=02h,AH=06h,INT 13/AH=04h

INT 4D


INT 4D 06-- - TI Professional PC - DISK - VERIFY DISK SECTOR(S)

Category: B - BIOS

Inp.:

AH = 06h

AL = number of sectors to verify (must be nonzero)

CH = low eight bits of cylinder number

CL = sector number 1-63 (bits 0-5)

     high two bits of cylinder (bits 6-7, hard disk only)

DH = head number

DL = drive number (bit 7 set for hard disk)

ES:BX -> data buffer

Return: CF set on error

    if AH = 11h (corrected ECC error), AL = burst length

CF clear if successful

AH = status (see #0140 at INT 13/AH=01h)

AL = number of sectors transferred

ES:BX -> buffer for last sector processed (including one with errors)

Note:	even though no data is transferred, ES:BX must still be valid because

  an actual comparison with disk data is performed, not just the CRC

  check of the standard PC BIOS or INT 4D/AH=04h

SeeAlso: AH=00h,AH=01h,AH=02h,AH=04h,INT 13/AH=04h

INT 4D


INT 4D 07-- - TI Professional PC - DISK - GET RETRY STATUS OF LAST OPERATION

Category: B - BIOS

Inp.:

AH = 07h

DL = drive (bit 7 set for hard disk)

Return: CF clear if status unchanged

CF set if status changed since last call

AH = 00h

AL = status of previous operation (see #0140 at INT 13/AH=01h)

Notes:	this function is nearly the same as INT 13/AH=01h on a standard PC BIOS

the TI's BIOS tranparently performs a number of retries; this function

  returns the error status of a failed operation even if the operation

  succeeded on a retry

SeeAlso: AH=00h,AH=01h,INT 13/AH=01h

INT 4D


INT 4D 08-- - TI Professional PC - DISK - SET STANDARD DEVICE INTERFACE TABLE

Category: B - BIOS

Inp.:

AH = 08h

DL = drive number (00h-03h)

AL = drive type

    00h single-sided 48 tpi (40-track, 8 sectors, 512 bytes/sector)

    01h double-sided 48 tpi (40-track, 8 sectors, 512 bytes/sector)

    02h single-sided 96 tpi (80-track, 8 sectors, 512 bytes/sector)

    03h double-sided 96 tpi (80-track, 8 sectors, 512 bytes/sector)

Return: nothing???

SeeAlso: AH=00h,AH=09h

INT 4D


INT 4D 09-- - TI Professional PC - DISK - SET DEVICE INTERFACE TABLE ADDRESS

Category: B - BIOS

Inp.:

AH = 09h

DL = drive number (00h-07h)

ES:BX -> Device Interface Table (see #1878)

Return: nothing???

SeeAlso: AH=00h,AH=08h,AH=0Ah,INT 1E

INT 4D


INT 4D 0A-- - TI Professional PC - DISK - GET DEVICE INTERFACE TABLE ADDRESS

Category: B - BIOS

Inp.:

AH = 0Ah

DL = drive number (00h-07h)

Return:	AH = status

ES:BX -> Device Interface Table (see #1878)

SeeAlso: AH=00h,AH=08h,AH=09h,INT 1E

INT 4D


INT 4D 0B-- - TI Professional PC - DISK - TURN OFF ALL DRIVES

Category: B - BIOS

Inp.:

AH = 0Bh

Return: AH = 00h

Note:	used for diagnostics or to conserve power

SeeAlso: AH=00h

INT 4D


INT 4E ---- - Z100 - Slave 8259 - S100 vectored line 6

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 4D"Z100",INT 4F"Z100"

INT 4E


INT 4E ---- - TI Professional PC - TIME-OF-DAY CLOCK DEVICE SERVICE ROUTINE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 40"TI Professional",INT 48"TI Professional"

SeeAlso: INT 4A"TI Professional",INT 4F"TI Professional"

INT 4E


INT 4F ---- - Z100 - Slave 8259 - S100 vectored line 7

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 4E"Z100"

INT 4F


INT 4F ---- - TI Professional PC - SYSTEM CONFIGURATION CALL

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 40"TI Professional",INT 49"TI Professional"

SeeAlso: INT 4B"TI Professional",INT 4D/AH=00h,INT 4E"TI Professional"

INT 4F


INT 4F 8100 - Common Access Method SCSI interface rev 2.3 - SEND CCB TO XPT/SIM

Category: d - disk I/O enhancements

Inp.:

AX = 8100h

ES:BX -> CAM Control Block (CCB) (see #1880)

Return: AH = status

    00h successful

    01h invalid CCB address (0000h:0000h)

Note:	the SCSI Interface Module (SIM) may complete the requested function

  and invoke the completion callback function before this call returns

SeeAlso: AX=8200h,INT 2F/AX=7F01h,INT 4B"Common Access Method"

INT 4F


INT 4F 8200 - Common Access Method SCSI interface rev 2.3 - INSTALLATION CHECK

Category: d - disk I/O enhancements

Inp.:

AX = 8200h

CX = 8765h

DX = CBA9h

Return: AH = 00h if installed

    CX = 9ABCh

    DX = 5678h

    ES:DI -> "SCSI_CAM"

SeeAlso: AX=8100h,INT 4B"Common Access Method"

INT 4F


INT 50 ---- - TIL Xpert AIM (X.25)

Category: N - network

Inp.:

AH = function

INT 50


INT 50 ---- - IRQ0 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 50 to INT F8, selected automatically

Notes:	this is the default location for older versions; DESQview v2.26+

  searches for unused ranges of interrupts and uses the lowest

  available range in its list for relocating these IRQs and the next

  lowest for relocating IRQ8-IRQ15

a range of eight interrupts starting at a multiple of 8 is considered

  available if all vectors are identical and it has not been excluded

  with an /XB:nn commandline switch

the list of ranges for v2.26 is 50h,58h,68h,78h,F8h (if < two of these

  are available, F8h and then 50h are used anyway)

the list of ranges for v2.31+ is 68h,78h,88h-B8h,F8h (if < two of these

  are available, F8h and then F0h are used anyway)

SeeAlso: INT 08"IRQ0",INT 51"DESQview",INT 54"DESQview",INT 58"DESQview"

SeeAlso: INT D8"Screen Thief"

INT 50


INT 50 ---- - IRQ0 relocated by IBM 3278 emulation control program

Category: H - hardware

Inp.:

SeeAlso: INT 51"IBM 3278"

INT 50


INT 50 ---- - IRQ0 relocated by OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 51"OS/2"

INT 50


INT 50 ---- - TI Professional PC - FATAL SOFTWARE ERROR TRAP

Category: - - (none)

Inp.:

no details available

Note:	for system use only

SeeAlso: INT 40"TI Professional",INT 4F"TI Professional"

SeeAlso: INT 51"TI Professional",INT 53"TI Professional"

INT 50


INT 50 0000 - Vanderaart TEXT WINDOWS, PC Thuis Shell - OPEN TEXT WINDOW

Category: V - video

Inp.:

AX = 0000h

ES:BX -> name string or ES:0000h if none

CH,CL = row,column of upper left corner

DH,DL = row,column of lower right corner

Return: AX = window handle or

    0000h if not installed

    FFFFh on error

SeeAlso: AX=0001h,AX=0002h"TEXT WINDOWS"

INT 50


INT 50 0001 - Vanderaart TEXT WINDOWS, PC Thuis Shell - CLOSE TEXT WINDOW

Category: V - video

Inp.:

AX = 0001h

DI = window handle

SeeAlso: AX=0000h

INT 50


INT 50 0002 - Vanderaart TEXT WINDOWS - PUT CHARACTER IN WINDOW

Category: V - video

Inp.:

AX = 0002h

BL = character

BH = attribute

DL = column

DH = row

DI = window handle

Return: AX = status

    0000h if successful

    FFFFh if outside window

SeeAlso: AX=0000h

INT 50


INT 50 0002 - PC Thuis Organizer Shell - PLOT TEXT

Category: l - shells/command interpreters

Inp.:

AX = 0002h

ES:BX -> text string

DH,DL = row,column of upper left corner

DI = window handle

Return: AX = status

    0000h successful (text fits in window)

    FFFFh error

Program: The PC Thuis Organizer Shell was written by John Vanderaart and

  published in the June/July 1990 issue of PC Thuis Power magazine

INT 50


INT 50 0003 - Vanderaart TEXT WINDOWS - OUTPUT LINE TO WINDOW

Category: V - video

Inp.:

AX = 0003h

ES:BX -> text string

CX = string length (0000h if ASCIZ string)

DL = position (FFh centered, else flush left)

DH = starting row

DI = window handle

Return: AX = status

    0000h successful

    FFFFh did not fit in window

INT 50


INT 50 0003 - PC Thuis Organizer Shell - WRITE FILE

Category: l - shells/command interpreters

Inp.:

AX = 0003h

ES:BX -> data to be written

CX = number of bytes to write

DS:SI -> filename

Return: AX = status

    0000h successful

    FFFFh error

SeeAlso: AX=0004h"Shell"

INT 50


INT 50 0004 - Vanderaart TEXT WINDOWS - GET KEY

Category: V - video

Inp.:

AX = 0004h

CH = type

    00h any key

    01h 'J' or 'N' (Dutch for yes/no)

Return: AX = key

SeeAlso: INT 16/AH=00h

INT 50


INT 50 0004 - PC Thuis Organizer Shell - READ FILE

Category: l - shells/command interpreters

Inp.:

AX = 0004h

ES:BX -> buffer for data

CX = number of bytes to read or 0000h for entire file

DL = file type

    01h setting shell

    02h setting sterm

    03h INT21 file

DS:SI -> filename

Return: AX = status

    0000h successful

    FFFFh error

Note:	file type numbers are maintained by John Vanderaart; if a new file type

  is needed, a type number should be requested from him through the

  magazine:

PC Thuis BV

Spaarne 55

2011 CE HAARLEM

The Netherlands

SeeAlso: AX=0003h"Shell"

INT 50


INT 50 0005 - Vanderaart TEXT WINDOWS - CHANGE ATTRIBUTE

Category: V - video

Inp.:

AX = 0005h

BL = new attribute

CH,CL = row,column of upper left corner

DH,DL = row,column of lower right corner

DI = window handle

INT 50


INT 50 0005 - PC Thuis Organizer Shell - PROMPT YES/NO

Category: l - shells/command interpreters

Inp.:

AX = 0005h

ES:BX -> prompt string (ES:0000h if no prompt)

Return: AX = key pressed

    0000h "J" (Dutch "Ja" = "Yes")

    FFFFh "N" (Dutch "Nee" = "No")

Program: The PC Thuis Organizer Shell was written by John Vanderaart and

  published in the June/July 1990 issue of PC Thuis Power magazine

SeeAlso: AX=0008h"PC Thuis"

INT 50


INT 50 0006 - Vanderaart TEXT WINDOWS - EDIT LINE IN WINDOW

Category: V - video

Inp.:

AX = 0006h

ES:BX -> text string

CH = type of input (see #1889)

DH,DL = row,column of upper left corner

DI = window handle

Return: AX = key which terminated entry

    0000h Enter

    0001h Esc

    0002h Down arrow

    0003h Up arrow

    0004h F10

INT 50


INT 50 0006 - PC Thuis Organizer Shell - ALERT USER

Category: l - shells/command interpreters

Inp.:

AX = 0006h

ES:BX -> string

INT 50


INT 50 0007 - PC Thuis Organizer Shell - DO LINE

Category: l - shells/command interpreters

Inp.:

AX = 0007h

ES:BX -> text string

CX = string length in bytes (0000h if NUL-terminated)

DL = FFh to center string, else flush left

DH = upper left row

DI = window handle

Return: AX = status

    0000h successful

    FFFFh error

Program: The PC Thuis Organizer Shell was written by John Vanderaart and

  published in the June/July 1990 issue of PC Thuis Power magazine

SeeAlso: AX=0008h

INT 50


INT 50 0008 - PC Thuis Organizer Shell - DO MENU

Category: l - shells/command interpreters

Inp.:

AX = 0008h

ES:BX -> menu structure

Return: AL = index 1 or FFh if not selected

AH = index 2 or FFh if not selected

BL = index 3 or FFh if not selected

BH = index 4 or FFh if not selected

SeeAlso: AX=0005h"PC Thuis",AX=0007h,AX=000Ch

INT 50


INT 50 0009 - PC Thuis Organizer Shell - MESSAGE ON

Category: l - shells/command interpreters

Inp.:

AX = 0009h

ES:BX -> message string

SeeAlso: AX=000Ah

INT 50


INT 50 000A - PC Thuis Organizer Shell - MESSAGE OFF

Category: l - shells/command interpreters

Inp.:

AX = 000Ah

SeeAlso: AX=0009h

INT 50


INT 50 000B - PC Thuis Organizer Shell - CHANGE ATTRIBUTE

Category: l - shells/command interpreters

Inp.:

AX = 000Bh

BL = new attribute

CH,CL = row,column of upper left corner

DH,DL = row,column of lower right corner

DI = window handle

INT 50


INT 50 000C - PC Thuis Organizer Shell - DO REQUEST

Category: l - shells/command interpreters

Inp.:

AX = 000Ch

ES:BX -> request structure

Return: AX = status

    0000h confirmed

    FFFFh denied

SeeAlso: AX=0008h

INT 50


INT 50 000D - PC Thuis Organizer Shell - EDIT LINE

Category: l - shells/command interpreters

Inp.:

AX = 000Dh

ES:BX -> text string

CL = length

CH = input type (see #1890)

DH,DL = row,column of upper left corner

DI = window handle

Return: AX = result code

Program: The PC Thuis Organizer Shell was written by John Vanderaart and

  published in the June/July 1990 issue of PC Thuis Power magazine

INT 50


INT 50 000E - PC Thuis Organizer Shell - PLOT CHARACTER

Category: l - shells/command interpreters

Inp.:

AX = 000Eh

BL = character

BH = attribute

DH,DL = row,column at which to plot

DI = window handle

Return: AX = status

    0000h successful

    FFFFh errror

INT 50


INT 50 000F - PC Thuis Organizer Shell - EMPTY WINDOW

Category: l - shells/command interpreters

Inp.:

AX = 000Fh

BL = character

BH = attribute

DI = window handle

INT 50


INT 50 0010 - PC Thuis Organizer Shell - TRACE MENU

Category: l - shells/command interpreters

Inp.:

AX = 0010h

ES:BX -> first menu structure

CL = hotkey to look up

Return: AL = index 1 or FFh if not selected

AH = index 2 or FFh if not selected

BL = index 3 or FFh if not selected

BH = index 4 or FFh if not selected

Index:	hotkeys;PC Thuis Organizer Shell

INT 50


INT 50 0011 - PC Thuis Organizer Shell - MOVE MEMORY

Category: l - shells/command interpreters

Inp.:

AX = 0011h

DS:SI -> source

ES:DI -> destination

CX = number of bytes to move (0000h = until NUL string terminator???)

SeeAlso: AX=0012h

INT 50


INT 50 0012 - PC Thuis Organizer Shell - COMPARE MEMORY

Category: l - shells/command interpreters

Inp.:

AX = 0012h

DS:SI -> source

ES:DI -> destination

CX = number of bytes to compare (0000h=until NUL string terminator???)

Return: AX = status

    0000h same

    FFFFh different

SeeAlso: AX=0011h

INT 50


INT 50 0013 - PC Thuis Organizer Shell - GET KEY

Category: l - shells/command interpreters

Inp.:

AX = 0013h

CH = type flags

    bit 0: force uppercase

    bit 1: integer

    bit 2: no spaces

Return: AX = keystroke

INT 50


INT 50 0014 - PC Thuis Organizer Shell - SCROLL WINDOW

Category: l - shells/command interpreters

Inp.:

AX = 0014h

BL = direction

    06h up

    07h down

BH = attribute

DI = window handle

SeeAlso: INT 10/AH=06h,INT 10/AH=07h

INT 50


INT 50 0015 - PC Thuis Organizer Shell - GET MEMORY HANDLE

Category: l - shells/command interpreters

Inp.:

AX = 0015h

BL = handle size

    00h 65536 bytes (64K)

    01h 65535 bytes (64K-1)

    02h 32768 bytes (32K)

    03h 32767 bytes (32K-1)

Return: AX = segment

Program: The PC Thuis Organizer Shell was written by John Vanderaart and

  published in the June/July 1990 issue of PC Thuis Power magazine

SeeAlso: INT 21/AH=48h

INT 50


INT 51 ---- - IRQ1 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 51 to INT F9, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 54"DESQview",INT 58"DESQview"

INT 51


INT 51 ---- - IRQ1 relocated by IBM 3278 emulation control program

Category: H - hardware

Inp.:

SeeAlso: INT 50"IBM 3278",INT 54"IBM 3278"

INT 51


INT 51 ---- - IRQ1 relocated by OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 50"OS/2",INT 54"OS/2"

INT 51


INT 51 ---- - TI Professional PC - RESTART TIMING EVENT

Category: - - (none)

Inp.:

no details available

Note:	for system use only

SeeAlso: INT 50"TI Professional",INT 52"TI Professional"

INT 51


INT 52 ---- - IRQ2 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 52 to INT FA, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 54"DESQview",INT 58"DESQview"

INT 52


INT 52 ---- - IRQ2 relocated by IBM 3278 emulation control program, OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 50"IBM 3278",INT 51"OS/2"

INT 52


INT 52 ---- - TI Professional PC - CANCEL TIMING EVENT

Category: - - (none)

Inp.:

no details available

Note:	for system use only

SeeAlso: INT 51"TI Professional",INT 53"TI Professional"

INT 52


INT 53 ---- - IRQ3 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 53 to INT FB, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 54"DESQview",INT 58"DESQview"

INT 53


INT 53 ---- - IRQ3 relocated by IBM 3278 emulation control program, OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 50"IBM 3278",INT 51"OS/2"

INT 53


INT 53 ---- - TI Professional PC - SVC INTERFACE

Category: - - (none)

Inp.:

no details available

Note:	for use by multitaskers

SeeAlso: INT 50"TI Professional",INT 54"TI Professional"

INT 53


INT 53 ---- - WEB??? - API

Category: N - network

Inp.:

BX = function

    0000h ???

AX = ???

Return: AX = ???

    0004h ???

    0009h ???

    0015h

AX = ???

DX = ???

    0017h

Return: ???

Notes:	the installation check consists of looking for the signature "WEBCO"

  immediately prior to the interrupt handler

the above calls are made by Show Partner F/X v3.6 (see INT 10/AH=53h)

Index:	installation check;unknown|installation check;WEBCO

INT 53


INT 54 ---- - IRQ4 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 54 to INT FC, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 58"DESQview"

INT 54


INT 54 ---- - IRQ4 relocated by IBM 3278 emulation control program, OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 51"IBM 3278",INT 51"OS/2"

INT 54


INT 54 ---- - TI Professional PC - ACTIVATE TASK SUBROUTINE

Category: - - (none)

Inp.:

no details available

Note:	for use by multitaskers

SeeAlso: INT 50"TI Professional",INT 53"TI Professional"

INT 54


INT 54 5400 - Toshiba PCMCIA2 - INSTALLATION CHECK

undocumented function

Category: X - expansion bus BIOSes

Inp.:

AX = 5400h

Return: AX = 0054h if installed

    CX:DX -> INT function handler

INT 54


INT 55 ---- - IRQ5 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 55 to INT FD, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 58"DESQview"

INT 55


INT 55 ---- - IRQ5 relocated by IBM 3278 emulation control program, OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 51"IBM 3278",INT 51"OS/2"

INT 55


INT 55 ---- - TI Professional PC - RESERVED FOR FUTURE USE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 50"TI Professional",INT 56"TI Professional"

INT 55


INT 56 ---- - IRQ6 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 56 to INT FE, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 58"DESQview"

INT 56


INT 56 ---- - IRQ6 relocated by IBM 3278 emulation control program, OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 51"IBM 3278",INT 51"OS/2"

INT 56


INT 56 ---- - TI Professional PC - RESERVED FOR FUTURE USE

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 50"TI Professional",INT 55"TI Professional"

INT 56


INT 57 ---- - IRQ7 relocated by DESQview

Category: H - hardware

Inp.:

Range:	INT 57 to INT FF, selected automatically

Note:	this is the default location for older versions; see INT 50"DESQview"

  for details of interrupt relocation

SeeAlso: INT 50"DESQview",INT 58"DESQview"

INT 57


INT 57 ---- - IRQ7 relocated by IBM 3278 emulation control program, OS/2 v1.x

Category: H - hardware

Inp.:

SeeAlso: INT 51"IBM 3278",INT 51"OS/2"

INT 57


INT 57 ---- - TI Professional PC - CRT MAPPING HOOK

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 49"TI Professional",INT 50"TI Professional"

INT 57


INT 58 ---- - IRQ8 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 58 to INT F8, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 59"DESQview",INT 70

INT 58


INT 58 ---- - IRQ0 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 08

INT 58


INT 58 ---- - TI Professional PC - SYSTEM TIMER 25ms HOOK

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 43"TI Professional",INT 4C"TI Professional"

SeeAlso: INT 5A"TI Professional"

INT 58


INT 59 ---- - IRQ9 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 59 to INT F9, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 58"DESQview",INT 5A"DESQview",INT 71

INT 59


INT 59 ---- - IRQ1 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 09

INT 59


INT 59 ---- - TI Professional PC - COMMON ROM HARDWARE INTERRUPT EXIT VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	all hardware interrupts on the TI Pro jump indirectly to the handler

  pointed at by this interrupt vector to finish their handling of

  the hardware interrupt

Notes:	the default handler decrements the interrupt count, restores registers

  (including the stack pointer), sends an EOI to the interrupt

  controller, and finally does an IRET

can be used by multitaskers which need to get control on a regular

  basis

SeeAlso: INT 40"TI Professional",INT 47"TI Professional"

SeeAlso: INT 53"TI Professional"

INT 59


INT 59 ---- - GSS Computer Graphics Interface (GSS*CGI)

Category: V - video

Inp.:

DS:DX -> block of 5 array pointers

Return: CF set on error

    AX = error code

CF clear if successful

    AX = return code

Note:	INT 59 is the means by which GSS*CGI language bindings communicate with

  GSS*CGI device drivers and the GSS*CGI device driver controller.

also used by the IBM Graphic Development Toolkit

INT 59


INT 5A ---- - IRQ10 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 5A to INT FA, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 59"DESQview",INT 5B"DESQview",INT 72

INT 5A


INT 5A ---- - IRQ2 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 0A

INT 5A


INT 5A ---- - PC Cluster adapter BIOS entry address

Category: N - network

Inp.:

???

Return: ???

SeeAlso: INT 5B"PC Cluster"

INT 5A


INT 5A ---- - TI Professional PC - SYSTEM TIMER 100ms HOOK

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

Note:	this interrupt is invoked on every fourth timer interrupt

SeeAlso: INT 43"TI Professional",INT 4C"TI Professional"

SeeAlso: INT 58"TI Professional"

INT 5A


INT 5B ---- - IRQ11 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 5B to INT FB, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 5A"DESQview",INT 5C"DESQview",INT 73

INT 5B


INT 5B ---- - IRQ3 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 0B

INT 5B


INT 5B ---- - PC cluster adapter - RELOCATED INT 19

Category: N - network

Inp.:

SeeAlso: INT 19,INT 5A"PC Cluster"

INT 5B


INT 5B ---- - AT&T Starlan Extended NetBIOS (variable length names)

Category: N - network

Inp.:

ES:BX -> Network Control Block (see #1891)

Return: AL = status (see #1893)

SeeAlso: INT 5C

INT 5B


INT 5B ---- - Microsoft Network Transport Layer Interface

Category: N - network

Inp.:

Note:	used by MS-NET for executing network commands

SeeAlso: INT 5C"NetBIOS"

INT 5B


INT 5B ---- - used by Alloy NTNX

Category: N - network

Inp.:

INT 5B


INT 5B ---- - ISOLAN Multi Protocol Software

Category: N - network

Inp.:

ES:BX -> Transfer Control Block (see #1892)

Return: AL = status

Note:	this software interface allows multiple protocols/software packages

  to access a BICC 411x network card

INT 5B


INT 5B ---- - TI Professional PC - KEYBOARD MAPPING HOOK

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

Note:	used to remap the keyboard

SeeAlso: INT 15/AH=4Fh,INT 4A"TI Professional",INT 59"TI Professional"

SeeAlso: INT 5C"TI Professional",INT 5D"TI Professional"

SeeAlso: INT 5E"TI Professional",INT 5F"TI Professional"

INT 5B


INT 5B 5254 - SitBack v3.02R - GET ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 5254h

DL = 04h

Return: ES:BX -> ??? in resident portion

Program: SitBack is a background file backup utility by SitBack Technologies,

  Inc. which initiates backups whenever the system is idle

SeeAlso: AX=8485h/DL=71h,AX=8485h/DL=72h

INT 5B


INT 5B 8485 - SitBack v3.02R - INSTALLATION CHECK

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 70h

Return: CX = 8485h if installed

    DX:AX -> ??? (configuration data?)

Program: SitBack is a background file backup utility by SitBack Technologies,

  Inc. which initiates backups whenever the system is idle

SeeAlso: AX=5254h/DL=04h,AX=8485h/DL=78h

INT 5B


INT 5B 8485 - SitBack v3.02R - SET ??? FLAG AND GET ??? ADDRESS

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 71h

Return: ES:BX -> FAR entry point to ???

Note:	the flag which is modified is located at the address returned by

   AX=5254h/DL=04h

SeeAlso: AX=8485h/DL=72h

INT 5B


INT 5B 8485 - SitBack v3.02R - CLEAR ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 72h

Note:	the flag which is modified is located at the address returned by

   AX=5254h/DL=04h

SeeAlso: AX=8485h/DL=71h

INT 5B


INT 5B 8485 - SitBack v3.02R - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 73h

???

Return: ???

INT 5B


INT 5B 8485 - SitBack v3.02R - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 74h

???

Return: ???

INT 5B


INT 5B 8485 - SitBack v3.02R - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 75h

CX = ???

Return: ???

SeeAlso: AX=8485h/DL=76h

INT 5B


INT 5B 8485 - SitBack v3.02R - ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 76h

CX = ???

Return: ???

Note:	conditionally calls the code for AX=8485h/DL=75h

SeeAlso: AX=8485h/DL=75h

INT 5B


INT 5B 8485 - SitBack v3.02R - SET ??? FLAG

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 77h

INT 5B


INT 5B 8485 - SitBack v3.02R - GET RESIDENT DATA SEGMENT

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 78h

Return: CX = 5342h if supported

    ES = AX = segment of TSR data

SeeAlso: AX=8485h/DL=70h,AX=8485h/DL=79h

INT 5B


INT 5B 8485 - SitBack v3.02R - GET DTA

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 79h

Return: CX = 5342h if supported

    ES:BX -> DTA set by last INT 21/AH=1Ah

Note:	this function is provided by SBOS.EXE rather than SB.EXE

SeeAlso: INT 21/AH=1Ah

INT 5B


INT 5B 8485 - SitBack v3.02R - TOGGLE ???

undocumented function

Category: U - resident utilities

Inp.:

AX = 8485h

DL = 7Ah

Return: CX = 5342h if supported

    AL = new value of ??? (00h or 01h)

INT 5B


INT 5C ---- - IRQ12 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 5C to INT FC, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 5B"DESQview",INT 5D"DESQview",INT 74

INT 5C


INT 5C ---- - IRQ4 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 0C

INT 5C


INT 5C ---- - NetBIOS INTERFACE

Category: N - network

Inp.:

ES:BX -> network control block (NCB) (see #1894)

Return: AL = status (see #1893)

Program: NetBIOS was developed by Sytek, Inc. in 1984 as a high-level

  programming interface to the IBM PC Network; the first implementation

  was a ROM BIOS extension on Sytek's PCnet LAN adapter card, but many

  current networks support NetBIOS as the session layer.

Note:	The Sytek PCnet card uses DMA 3.

SeeAlso: INT 2A/AH=01h,INT 2A/AH=04h,INT 5B

INT 5C


INT 5C ---- - TOPS INTERFACE

Category: N - network

Inp.:

ES:BX -> Network Control Block

Note:	TOPS card uses DMA 1, 3 or none.

INT 5C


INT 5C ---- - ATALK.SYS - AppleTalk INTERFACE

Category: N - network

Inp.:

DX:BX -> control block (see #1901)

Return: none

Range:	INT 5Ch to INT 70h

Notes:	the signature 'AppleTalk' appears 16 bytes prior to the interrupt

  handler; this serves as the installation check

Index:	installation check;ATALK.SYS|installation check;AppleTalk interface

INT 5C


INT 5C ---- - IBM 802.2 INTERFACE (LLC)

Category: N - network

Inp.:

ES:BX -> CCB (see #1904)

Return: none

INT 5C


INT 5C ---- - TI Professional PC - KEYBOARD PAUSE KEY VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	toggle a pause flag which is checked by the CRT Device Service Routine

  (see INT 49"TI Professional") and causes it to temporarily halt the

  machine on the next video-related function (until a key is pressed)

SeeAlso: INT 09"IRQ1",INT 4A"TI Professional",INT 59"TI Professional"

SeeAlso: INT 5B"TI Professional",INT 5D"TI Professional"

SeeAlso: INT 5E"TI Professional",INT 5F"TI Professional"

INT 5C


INT 5C ---- - $25 LAN - INSTALLATION CHECK

Category: N - network

Inp.:

Notes:	current versions only check whether the vector is 0000h:0000h or not

future versions are supposed to have the signature "NET" in the three

  bytes preceding the INT 5C handler

INT 5C


INT 5C 04-- - $25 LAN - CHECK IF CONNECTION ALIVE

Category: N - network

Inp.:

AH = 04h

AL = COM port (0 = default)

CX = wait count in character times (should be at least 100)

Return: ZF set if link alive

INT 5C


INT 5D ---- - IRQ13 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 5D to INT FD, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 5C"DESQview",INT 5E"DESQview",INT 75

INT 5D


INT 5D ---- - IRQ5 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 0D,INT 5C"DoubleDOS"

INT 5D


INT 5D ---- - TI Professional PC - KEYBOARD BREAK KEY VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

no details available

SeeAlso: INT 09"IRQ1",INT 4A"TI Professional",INT 59"TI Professional"

SeeAlso: INT 5B"TI Professional",INT 5C"TI Professional"

SeeAlso: INT 5E"TI Professional",INT 5F"TI Professional"

INT 5D


INT 5E ---- - IRQ14 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 5E to INT FE, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 5D"DESQview",INT 5F"DESQview",INT 76

INT 5E


INT 5E ---- - IRQ6 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 0E,INT 5D"DoubleDOS"

INT 5E


INT 5E ---- - TI Professional PC - KEYBOARD PRINT-SCREEN VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	dump the screen to the printer

Notes:	hooked by TI MS-DOS, which provides a PRTSCRN character device which

  can invoke screen prints when a decimal digit (indicating the type

  of screen dump) is written to it

the TI MS-DOS print-screen routine allows selective dumps of text

  only, graphics only, or text and graphics superimposed, in either

  normal or reverse, by pressing the appropriate keystroke combination:

  Shift-Print, Ctrl-Print, Alt-Print, Shift-Alt-Print, Ctrl-Alt-Print,

  or Shift-Ctrl-Print.

the BIOS default routine for this vector is an IRET

SeeAlso: INT 05,INT 4A"TI Professional",INT 59"TI Professional"

SeeAlso: INT 5B"TI Professional",INT 5C"TI Professional"

SeeAlso: INT 5D"TI Professional",INT 5F"TI Professional"

INT 5E


INT 5F ---- - IRQ15 relocated by DESQview 2.26+

Category: H - hardware

Inp.:

Range:	INT 5F to INT FF, selected automatically

Note:	this is the default, but other INTs may be used (see INT 50"DESQview")

SeeAlso: INT 50"DESQview",INT 5E"DESQview",INT 77

INT 5F


INT 5F ---- - IRQ7 relocated by DoubleDOS

Category: H - hardware

Inp.:

SeeAlso: INT 0F,INT 5E"DoubleDOS"

INT 5F


INT 5F ---- - TI Professional PC - KEYBOARD QUEUEING VECTOR

callout or callback (usually hooked rather than called)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	hook for multitaskers to be informed when a keypress is placed in the

  keyboard buffer

SeeAlso: INT 09,INT 4A"TI Professional",INT 59"TI Professional"

SeeAlso: INT 5B"TI Professional",INT 5C"TI Professional"

SeeAlso: INT 5D"TI Professional",INT 5E"TI Professional"

INT 5F


INT 5F 00-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET VIDEO MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 00h

AL = video mode

    03h text,CGA color (100LX/200LX)

    06h 640x200 CGA graphics (100LX/200LX)

    07h text, system manager compliant

    20h 240x128 mono graphics, system manager compliant

    87h text, not system manager compliant

    A0h 240x128 mono graphics, not system manager compliant

Notes:	the defaults after setting the mode to graphics are (0,0) logical

  origin, full-screen clip region, (0,0) pen location, pen color 1,

  pixel replacement FORCE, line type and fill mask all bits set

modes 03h and 06h can also be set with the standard INT 10/AH=00h

SeeAlso: INT 0F"HP 95LX",INT 10/AH=00h,INT 15/AX=4DD4h

INT 5F


INT 5F 01-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET FILL MASK

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 01h

ES:DI -> 8-byte fill mask

Note:	the fill mask represents an 8x8 pixel box and is repeated as necessary

  when drawing filled rectangles; it is always aligned with the byte

  boundaries of video memory, regardless of the actual boundaries of

  the rectangle

SeeAlso: AH=02h

INT 5F


INT 5F 02-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFO

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 02h

ES:DI -> graphics info record (see #1905)

Return: DX:AX -> filled graphics info record (for return to high-level langs)

INT 5F


INT 5F 03-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 03h

CX = column

DX = row

SeeAlso: AH=04h

INT 5F


INT 5F 04-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET CLIP REGION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 04h

CX = left-most column

DX = top-most row

SI = right-most column

DI = bottom-most row

SeeAlso: AH=03h

INT 5F


INT 5F 05-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW RECTANGLE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 05h

AL = fill type

    00h outline, using current line type and color

    01h solid, using current color

    02h pattern, using current fill mask and color

DX,CX = row,column of other corner of rectangle

Note:	the rectangle is drawn starting at the current pen position

SeeAlso: AH=01h,AH=06h,AH=07h

INT 5F


INT 5F 06-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW LINE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

DX,CX = row,column of end point

Note:	the line is drawn starting at the current pen position

SeeAlso: AH=05h,AH=07h

INT 5F


INT 5F 07-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PLOT POINT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 07h

DX,CX = row,column of point

Note:	also sets pen position to the specified point

SeeAlso: AH=06h,AH=08h,AH=0Ch

INT 5F


INT 5F 08-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - MOVE PEN

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 08h

DX,CX = row,column of new pen position

SeeAlso: AH=07h,AH=09h

INT 5F


INT 5F 09-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET PEN COLOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 09h

AL = new color (00h = white, 01h = black)

SeeAlso: AH=08h,AH=0Ah,AH=0Bh

INT 5F


INT 5F 0A-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ah

AL = new replacement rule

    00h force

    01h AND

    02h OR

    03h XOR

    ---100LX/200LX---

    04h InvForce

    05h InvAND

    06h	InvOR

    07h InvXOR

    08h Txt

SeeAlso: AH=01h,AH=09h,AH=0Bh

INT 5F


INT 5F 0B-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LINE TYPE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Bh

CX = new line type

Note:	the line type specifies 16 bits which are repeated over and over while

  drawing the pixels of a line

SeeAlso: AH=09h,AH=0Ah

INT 5F


INT 5F 0C-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET PIXEL

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ch

DX,CX = row,column of pixel to read

Return: AX = pixel color

SeeAlso: AH=07h

INT 5F


INT 5F 0D-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET IMAGE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Dh

DX,CX = row,column of first corner

BP,SI = row,column of second corner

ES:DI -> image buffer (see #1906)

Note:	the specified corners are included in the saved image

SeeAlso: AH=0Eh

INT 5F


INT 5F 0E-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PUT IMAGE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

AL = replacement rule (see #1907)

DX,CX = row,column of top left corner

ES:DI -> image buffer (see #1906)

Note:	if the specified image does not fit completely on the screen, this call

  does nothing

SeeAlso: AH=0Dh

INT 5F


INT 5F 0F-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - WRITE TEXT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Fh

AL = rotate flag (if nonzero, rotate 90 degrees counter-clockwise)

DX,CX = row,column of first character's top left corner

ES:DI -> ASCIZ text

INT 5F


INT 5F 10-- - HP 100LX/200LX GRAPHICS PRIMITIVES - GET FONT POINTER

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 10h

CX = font size of desired font

    0808h  8x8	small  (80x25 text)

    0A0Bh 11x10 medium (64x18 text)

    100Ch 12x16 large  (40x16 text)

Return: DX:AX -> ptr to font or 0000h:fontID# if built-in font

SeeAlso: AH=11h

INT 5F


INT 5F 11-- - HP 100LX/200LX GRAPHICS PRIMITIVES - SET CURRENT FONT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 11h

ES:DI -> ptr to font or 0000h:fontID# for built-in font

Note:	this function should be called immediately after AH=10h with the

  pointer supplied by that call

SeeAlso: AH=10h

INT 5F


INT 60 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 60


INT 60 ---- - VIRUS - "Zero Bug" - INSTALLATION CHECK

Category: v - virus/antivirus

Inp.:

Desc:	The "Zero Bug" virus hooks this vector.	 It considers itself installed

  if offset 103h of the handler's segment contains the bytes "ZE"

SeeAlso: INT 32,INT 44"VIRUS",INT 61"SEMTEX"

INT 60


INT 60 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

SeeAlso: INT 41,INT 61"Adaptec",INT 62"Adaptec",INT 63"Adaptec",INT 64"Adaptec"

SeeAlso: INT C0"AMI"

Notes:	this vector stores the first four bytes of the parameter table for

  hard disk 0

these vectors are used by the following Adaptec controllers:

    ACB 2370 A/B/C, ACB 2372 A/B/C, ACB 2333 A/B, 2322B-8, 2322B-16

these vectors are NOT used by the following Adaptec controllers:

    ACB 2310, ACB 2312, ACB 2320D, ACB 2322D

INT 60


INT 60 ---- - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the segment of the RAM data area

  to be used by the system ROM at F400h:A000h, and the high word

  contains the length of the data area (see #1908)

SeeAlso: INT 61"TI Professional PC",INT 66"TI Professional PC"

INT 60


INT 60 ---- - Atari Portfolio - USER INTERFACE FUNCTIONS

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	supplies a number of subfunctions which perform such functions as

  drawing boxes and menus, and provide input line editing

SeeAlso: INT 61"Atari"

INT 60


INT 60 ---- - Nabbit v2.0 - (NOT A VECTOR!) - INSTALLATION CHECK

Category: V - video

Inp.:

Program: Nabbit is a shareware resident screen data grabber by RSE Inc.

Range:	INT 60 to INT 66, selected by searching for first free vector

Note:	the Nabbit installation check consists of testing whether the

  interrupt vector points at the ASCIZ signature string "iG"

  (69h 47h 00h)

INT 60


INT 60 ---- - Buffit v3.0 - (NOT A VECTOR!) - INSTALLATION CHECK

undocumented function

Category: V - video

Inp.:

Program: Buffit is a shareware scrollback utility by D.T. Hamilton

Range:	INT 60 to INT 6F, selected by searching for first free vector

Notes:	the Buffit installation check consists of testing whether the

  interrupt vector points at the ASCII signature "Buffit  "

there is a private entry point (see #1910) immediately following the

  signature string, i.e. eight bytes beyond the address pointed at

  by the interrupt vector

INT 60


INT 60 ---- - PC-IPC API

Category: r - runtime support

Inp.:

STACK:	DWORD	pointer to parameter block (see #1911)

Return: STACK:	unchanged

Program: PC-IPC is a shareware TSR by Donnelly Software Engineering which

  allows communication between independent programs

Range:	INT 00 to INT FF, selected by commandline switch

INT 60


INT 60 ---- - Tangram Arbiter - API

Category: R - remote control/file access

Inp.:

Desc:	Arbiter makes a PC disk look like a slow disk over an SNA link to an

  IBM mainframe

Range:	INT 60h to INT 66h, selected by configuration parameter

Notes:	identified by string "@ARB_API" immediately following a short jump at

  the interrupt handler address

INT 60


INT 60 ---- - Excelan LAN Workplace for DOS 3.5 - API

Category: N - network

Inp.:

ES:BX -> request packet (see #1915)

Return: request packet updated

Notes:	this interrupt is also supported by Beame&Whiteside's BWLWP35 shim,

  which was used in creating this description

the installation check consists of testing for the WORD 4142h ('AB')

  immediately preceding the interrupt handler

BUG:	because BWLWP35 range-checks only the low byte of the function number,

  and has a fencepost error even in that test, functions 000Bh and

  XX01h-XX0Bh (XX nonzero) branch to random locations

SeeAlso: INT 2F/AX=7A40h

INT 60


INT 60 ---- - TCPDRV 2.01 - TCP/IP Application Binary Interface (ABI)

Category: N - network

Inp.:

Note:	The handler for the interrupt will start with a 2-byte NEAR jump

  instruction, followed by the ASCIZ signature string "TCP DRVR".

To find the interrupt being used by the driver, an application

  should scan through interrupt vectors 60h to 7Fh until it finds

  one with the "TCP DRVR" string.

This specification is being proposed by Peter R. Tattam from the

  University of Tasmania.

Index:	installation check;TCPDRV

INT 60


INT 60 ---- - INTRSPY/CMDSPY v1.0 only - API

undocumented function

Category: G - debuggers/debugging tools

Inp.:

Program: INTRSPY is a script-driven debugger included with the book

  _Undocumented_DOS_.

Notes:	INTRSPY will hook the first available interrupt in the range 60h-67h.

The installation check is to

  a) determine that the handler is an IRET instruction

  b) the signature 0Dh "INTRSPY vN.NN" immediately precedes the handler

If INTRSPY is installed, the DWORD immediately after the IRET stores

  its entry point (see #1918)

INTRSPY v2.0 (included with the second edition of the book) no longer

  supports this API

Index:	installation check;INTRSPY

INT 60


INT 60 ---- - PC/370 v4.2 - ???

undocumented function

Category: u - emulators

Inp.:

???

Return: ???

Program: PC/370 is an IBM 370 emulator by Donald S. Higgins

Range:	INT 00 to INT FF, selected by patching the executable

Note:	the documentation includes instructions for patching the system for

  another interrupt

SeeAlso: INT 2F/AX=7F24h,INT DC"PC/370"

INT 60


INT 60 ---- - JPI TopSPEED Modula-2 v1 - PROCEDURE ENTRY TRAP

Category: r - runtime support

Inp.:

SeeAlso: INT 61"JPI"

INT 60


INT 60 ---- - FTP Packet Driver - PC/TCP Packet Driver Specification

Category: N - network

Inp.:

Range:	INT 20 to INT FF

Notes:	The handler for the interrupt will start with a 3-byte jump

  instruction, followed by the ASCIZ string "PKT DRVR" (the

  terminating NUL is significant).

To find the interrupt being used by the driver, an application should

  scan through interrupt vectors 20h to FFh (60h through 80h for

  v1.09- of the specification) until it finds one with the "PKT DRVR"

  string.

AH values of 80h to FFh have been reserved for user-defined additions.

INT 60


INT 60 ---- - 3270-PC CONTROL PROGRAM - ???

partially documented function

Category: I - IBM workstation/terminal emulators

Inp.:

INT 60


INT 60 ---- - HP 95LX System Manager - WAIT FOR EVENT

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0100h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to event record (see #1920)

Return: event record filled

STACK unchanged

Note:	this call will timeout after about 500ms

SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0101h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - CHECK FOR EVENT

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0101h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD pointer to event record (INT 60/DI=0100h)

Return: event record filled

STACK unchanged

Note:	this call returns immediately if no event is available

SeeAlso: INT 60/DI=0100h

INT 60


INT 60 ---- - HP 95LX System Manager - "SH_STATUS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0102h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - LOTUS 1-2-3 BRIDGE SERVICES

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0104h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD pointer to bridge record (see #1922)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FLUSH KEYBOARD BUFFER

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0105h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - YIELD CPU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0106h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=1000h,INT 2F/AX=1680h

INT 60


INT 60 ---- - HP 95LX System Manager - "NO_FINI" - REFUSE TERMINATION REQUEST

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0107h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - SETUP MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0200h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to menu data (see #1924)

DWORD	pointer to ???

WORD	number of items on menu???

WORD	???

DWORD	pointer to ???

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0201h,INT 60/DI=0203h,INT 60/DI=0205h

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY OR REDISPLAY MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0201h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to menu data (see #1924)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0200h,INT 60/DI=0202h,INT 60/DI=0206h

INT 60


INT 60 ---- - HP 95LX System Manager - "MENU_ON" - ENABLE PROCESSING OF MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0202h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to menu data (see #1924)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0200h,INT 60/DI=0201h,INT 60/DI=0203h

INT 60


INT 60 ---- - HP 95LX System Manager - REMOVE MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0203h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to menu data (see #1924)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0201h,INT 60/DI=0202h,INT 60/DI=0204h,INT 60/DI=0208h

INT 60


INT 60 ---- - HP 95LX System Manager - LET SYSTEM MANAGER HANDLE MENU KEYSTROKE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0204h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to menu data (see #1924)

WORD	keystroke

DWORD	pointer to WORD to receive selection number

Return: buffer for selection number filled with index of selected menu item or

  FFFFh if no final selection yet

STACK unchanged

SeeAlso: INT 60/DI=0200h,INT 60/DI=0202h,INT 60/DI=0207h

INT 60


INT 60 ---- - HP 95LX System Manager - INITIALIZE FILE SELECTION MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0205h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file menu structure (see #1925)

DWORD	pointer to edit record (see #1928 at INT 60/DI=0400h)

DWORD	pointer to wildcard filespec for initial file list

WORD	row???

WORD	column???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0200h,INT 60/DI=0206h,INT 60/DI=0208h

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY/REDISPLAY FILE SELECTION MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0206h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file menu structure (see #1925)

DWORD	pointer to edit record (see #1928 at INT 60/DI=0400h)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0205h

INT 60


INT 60 ---- - HP 95LX System Manager - LET SYSMGR PROCESS FILE SEL MENU KEYSTROKE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0207h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file menu structure (see #1925)

DWORD	pointer to edit record (see #1928 at INT 60/DI=0400h)

WORD	keystroke

Return: AX = status (see #1927)

STACK unchanged

SeeAlso: INT 60/DI=0205h,INT 60/DI=0208h

INT 60


INT 60 ---- - HP 95LX System Manager - REMOVE FILE SELECTION MENU

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0208h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file menu structure (see #1925)

DWORD	pointer to edit record (see #1928 at INT 60/DI=0400h)

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0205h,INT 60/DI=0206h

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY STRING

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0300h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	starting row (-3 is topmost, 0 is first user line)

WORD	starting column

DWORD	pointer to string

WORD	length of string

WORD	display style: 0000h normal, 0001h reverse video

WORD	"OSTYLE"

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0F03h,INT 60/DI=1005h

INT 60


INT 60 ---- - HP 95LX System Manager - CLEAR PORTION OF SCREEN

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0301h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	starting row (-3 is topmost, 0 is first user line)

WORD	starting column

WORD	number of rows

WORD	number of columns

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0302h,INT 60/DI=1005h

INT 60


INT 60 ---- - HP 95LX System Manager - SCROLL PORTION OF SCREEN

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0302h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	starting row???

WORD	starting column???

WORD	height of scroll region???

WORD	width of scroll region???

WORD	number of lines to scroll region???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0301h

INT 60


INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_XCHG"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0303h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

WORD	???

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRATTR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0304h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRRVRT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0305h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRINV"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0307h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_ROWS_COLS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0308h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SET SCREEN (VIDEO???) MODE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0309h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	new mode

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - GET SCREEN (VIDEO???) MODE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 030Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SET CURSOR POSITION

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 030Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	row (-3 is topmost, 0 is first non-reserved line)

WORD	column

Return: ???

STACK unchanged

Note:	cursor is hidden if the specified position is not on the physical

  display

SeeAlso: INT 10/AH=02h,INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "EDIT_INIT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0400h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to edit record (see #1928)

DWORD	pointer to string to be edited

WORD	initial length of string being edited

WORD	maximum length of edited string

WORD	row of edit field

WORD	leftmost column of edit field

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - EDIT ON TOP LINE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0401h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to edit record (see #1928)

DWORD	pointer to string to edit

WORD	initial length of string being edited

WORD	maximum length of edited string

DWORD	pointer to first line of prompt

WORD	length of first line

DWORD	pointer to second line of prompt

WORD	length of second line

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY OR REDISPLAY EDIT FIELD

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0402h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to edit record (see #1928)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - LET SYSTEM MANAGER PROCESS EDITING KEYSTROK

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0403h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to edit record (see #1928)

WORD	keystroke

DWORD	pointer to WORD buffer for result code

Return: result code buffer filled with 0001h if editing complete

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_INI"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0404h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

WORD	???

WORD	???

DWORD	pointer to ???

WORD	???

WORD	???

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_DIS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0405h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_KEY"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0406h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_FIL"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0407h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_MARK"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0408h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_UNMARK"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0409h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_CUTMARK"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 040Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "MDIT_INS_STR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 040Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - OPEN FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0500h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to filename

WORD	length of filename

WORD	???

WORD	suppress buffering if nonzero

Return: AX = status

STACK unchanged

SeeAlso: INT 60/DI=0501h,INT 60/DI=0502h,INT 60/DI=0508h

INT 60


INT 60 ---- - HP 95LX System Manager - OPEN FILE IN READ-ONLY MODE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0501h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to filename

WORD	length of filename

WORD	???

WORD	suppress buffering if nonzero

Return: AX = status

STACK unchanged

SeeAlso: INT 60/DI=0500h

INT 60


INT 60 ---- - HP 95LX System Manager - CREATE NEW FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0502h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to filename

WORD	length of filename

WORD	???

WORD	suppress buffering if nonzero

Return: AX = status

STACK unchanged

SeeAlso: INT 60/DI=0500h,INT 60/DI=0503h

INT 60


INT 60 ---- - HP 95LX System Manager - CREATE OR TRUNCATE FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0503h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to filename

WORD	length of filename

WORD	???

WORD	suppress buffering if nonzero

Return: AX = status

STACK unchanged

SeeAlso: INT 60/DI=0502h

INT 60


INT 60 ---- - HP 95LX System Manager - READ FROM FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0504h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to data buffer

WORD	number of bytes to read

DWORD	pointer to WORD in which to return actual bytes read

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0505h

INT 60


INT 60 ---- - HP 95LX System Manager - WRITE TO FILE

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0505h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to data

WORD	length of data

Return: AX = status

STACK unchanged

SeeAlso: INT 60/DI=0504h

INT 60


INT 60 ---- - HP 95LX System Manager - SET FILE POSITION

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0506h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

2 WORDs	???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0507h

INT 60


INT 60 ---- - HP 95LX System Manager - GET FILE POSITION

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0507h "M_TELL"

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

DWORD	pointer to DWORD buffer for file position???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0506h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOSE FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0508h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to file state record (see #1930)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0500h

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_SETPAT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0509h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_MATCH"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 050Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ??? (see #1932)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - IDENTIFY FILENAME REFERENT

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 050Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

DWORD	pointer to ???

Return: ??? = result (see #1933)

???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - DELETE FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 050Ch "M_DELETE"

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - RENAME FILE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 050Dh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

DWORD	pointer to ???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GETDIR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 050Eh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_SETDIR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 050Fh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_VOLUME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0510h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - MAKE A SUBDIRECTORY

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0511h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

Return: ???

STACK unchanged

SeeAlso: INT 21/AH=39h,INT 60/DI=0512h

INT 60


INT 60 ---- - HP 95LX System Manager - REMOVE A SUBDIRECTORY

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0512h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

Return: ???

STACK unchanged

SeeAlso: INT 21/AH=3Ah,INT 60/DI=0511h

INT 60


INT 60 ---- - HP 95LX System Manager - GET DEFAULT DRIVE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0513h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ??? buffer for current drive

Return: ???

STACK unchanged

SeeAlso: INT 21/AH=19h,INT 60/DI=0514h

INT 60


INT 60 ---- - HP 95LX System Manager - SET DEFAULT DRIVE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0514h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	new drive

Return: ???

STACK unchanged

SeeAlso: INT 21/AH=0Eh,INT 60/DI=0513h

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_FDATE"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0515h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GET_SYSDIR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0516h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - GET FILE ATTRIBUTES

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0517h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

DWORD	pointer to ??? buffer for file's attributes???

Return: ???

STACK unchanged

SeeAlso: INT 21/AX=4300h,INT 60/DI=0518h

INT 60


INT 60 ---- - HP 95LX System Manager - SET FILE ATTRIBUTES

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0518h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

WORD	new attributes???

Return: ???

STACK unchanged

SeeAlso: INT 21/AX=4301h,INT 60/DI=0517h

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_COMMON_OPEN"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0519h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

WORD	???

WORD	???

WORD	???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_COPYDT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 051Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GETFDT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 051Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_PUTFDT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 051Ch

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - PROCESS INITIALIZING

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0600h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0601h,INT 61"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - PROCESS TERMINATION

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0601h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: never

STACK unchanged

SeeAlso: INT 21/AH=4Ch,INT 2F/AX=1122h,INT 60/DI=0600h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_LOCK" - PREVENT TASK SWITCHES

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0602h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=101Bh,INT 2F/AX=1681h,INT 60/DI=0603h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_UNLOCK" - ALLOW TASK SWITCHES

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0603h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=101Ch,INT 2F/AX=1682h,INT 60/DI=0602h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_SPAWN"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0604h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 21/AH=4Bh

INT 60


INT 60 ---- - HP 95LX System Manager - "M_APPCOUNT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0605h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_REBOOT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0606h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 14/AH=17h"FOSSIL",INT 19

INT 60


INT 60 ---- - HP 95LX System Manager - "M_SPAWNARG"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0607h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_REG_APP_NAME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0608h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_APP_NAME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0609h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: DX:AX -> ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - OPEN CLIPBOARD

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0700h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ??? = error code (see #1934)

???

STACK unchanged

SeeAlso: INT 60/DI=0701h,INT 60/DI=0702h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOSE CLIPBOARD

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0701h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0700h,INT 60/DI=0702h

INT 60


INT 60 ---- - HP 95LX System Manager - RESET CLIPBOARD

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0702h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0700h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_NEW_REP" - START A NEW REPRESENTATION???

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0704h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0705h,INT 60/DI=0706h,INT 60/DI=0707h

INT 60


INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_FINI_REP"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0705h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0704h

INT 60


INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_NAME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0706h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0704h,INT 60/DI=0707h

INT 60


INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_INDEX"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0707h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0704h,INT 60/DI=0706h

INT 60


INT 60 ---- - HP 95LX System Manager - WRITE TO CLIPBOARD

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0708h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to data to be written???

WORD	length of data???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0709h

INT 60


INT 60 ---- - HP 95LX System Manager - READ FROM CLIPBOARD

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0709h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

DWORD	pointer to buffer for data???

WORD	length of buffer???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0708h

INT 60


INT 60 ---- - HP 95LX System Manager - BEEP

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0800h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0801h,INT 60/DI=0802h,INT 60/DI=0803h

INT 60


INT 60 ---- - HP 95LX System Manager - SOUND SERVICE "M_THUD"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0801h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0800h,INT 60/DI=0802h,INT 60/DI=0803h

INT 60


INT 60 ---- - HP 95LX System Manager - MAKE A SOUND PATTERN

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0802h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	pattern number (00h-06h)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0800h,INT 60/DI=0801h,INT 60/DI=0803h

INT 60


INT 60 ---- - HP 95LX System Manager - TURN OFF SOUND

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0803h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0800h,INT 60/DI=0801h,INT 60/DI=0802h

INT 60


INT 60 ---- - HP 95LX System Manager - ALLOCATE REGULAR MEMORY BLOCK

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0900h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	size of block in bytes

Return: AX -> memory block

STACK unchanged

Note:	System Manager-compliant applications are always small-model (64K code,

  64K data)

SeeAlso: INT 15/AX=4DD4h,INT 60/DI=0902h,INT 60/DI=0903h

INT 60


INT 60 ---- - HP 95LX System Manager - FREE REGULAR MEMORY BLOCK

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0902h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	offset of memory block???

Return: ???

STACK unchanged

Note:	System Manager-compliant applications are always small-model (64K code,

  64K data)

SeeAlso: INT 60/DI=0900h,INT 60/DI=0904h

INT 60


INT 60 ---- - HP 95LX System Manager - ALLOCATE LARGE MEMORY BLOCK

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0903h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	size of block in bytes???

Return: AX -> memory block???

STACK unchanged

SeeAlso: INT 60/DI=0900h,INT 60/DI=0904h

INT 60


INT 60 ---- - HP 95LX System Manager - FREE LARGE MEMORY BLOCK

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0904h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	segment of memory block???

Return: AX -> ???

STACK unchanged

SeeAlso: INT 60/DI=0902h,INT 60/DI=0903h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DTINFO"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B00h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GETDTM"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B01h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SETDTM"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B02h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_XALARM"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B03h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_ALARM"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B04h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to alarm record??? (see #1935)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_SW"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B05h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SW"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B06h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_SW"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B07h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_TELLTIME" - DISPLAY TIMESTAMP

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B08h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	timestamp format (see #1936)

WORD	row (-3 is topmost, 0 is first non-reserved line)

WORD	column

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SETTINGS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B09h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ??? (see #1937)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B0Ah,INT 60/DI=0B0Fh

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SET_SETTINGS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B0Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B09h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_TIMER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B0Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B0Ch,INT 60/DI=0B0Dh

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_TIMER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B0Ch

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B0Bh,INT 60/DI=0B0Dh

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_TIMER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B0Dh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B0Bh,INT 60/DI=0B0Ch

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_TELL_ANYTIME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B0Eh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

WORD	???

DWORD	pointer to ???

DWORD	pointer to ???

Return: DX:AX -> ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVCE "M_GET_SETTINGS_ADDR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B0Fh

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: DX:AX -> system settings record (see #1937)

STACK unchanged

SeeAlso: INT 60/DI=0B09h

INT 60


INT 60 ---- - HP 95LX System Manager - PARSE DATE SPECIFICATION

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B10h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - PARSE TIME SPECIFICATION

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B11h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SET DATE PARSING RULE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B12h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	new parsing rule (see #1942)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B13h

INT 60


INT 60 ---- - HP 95LX System Manager - SET TIME PARSING RULE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B13h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	new parsing rule (see #1943)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0B12h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_POST_TIME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B14h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DAY_TRIGGER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0B15h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - OPEN PRINTER

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0C00h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0C01h,INT 60/DI=0C02h,INT 60/DI=0C03h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOSE PRINTER

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0C01h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

Note:	relinquishes control of printer

SeeAlso: INT 60/DI=0C00h

INT 60


INT 60 ---- - HP 95LX System Manager - WRITE TO PRINTER

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0C02h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to data to be written

WORD	length of data

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0C00h

INT 60


INT 60 ---- - HP 95LX System Manager - INITIALIZE PRINTER

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0C03h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0C00h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_TRANS_PRINTER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0C04h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_FALL_PRINTER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0C05h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - COMMUNICATIONS SERVICE "M_COMM_INIT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E00h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: #1944,INT 60/DI=0E01h,INT 60/DI=0E02h

INT 60


INT 60 ---- - HP 95LX System Manager - OPEN COMMUNICATIONS CHANNEL

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E01h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to WORD buffer for comm channel handle

WORD	communications line number (01h-04h)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E00h,INT 60/DI=0E02h

INT 60


INT 60 ---- - HP 95LX System Manager - CLOSE COMMUNICATIONS CHANNEL

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E02h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	comm channel handle

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E00h,INT 60/DI=0E01h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_GETMDM"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E03h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_ANSWER"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E04h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_DIAL"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E05h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - RESET COMMUNICATIONS CHANNEL

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E06h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	comm channel handle

WORD	reset options (see #1945)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_HANGUP"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E07h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SEND DATA OVER COMM CHANNEL

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E08h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	comm channel handle

DWORD	pointer to data to be sent

WORD	option flags

bit 0: send partial buffer

bit 1: turn on receiver after sending

DWORD	pointer to WORD containing length of data to be sent

Return: length WORD updated to contain number of bytes actually sent???

STACK unchanged

SeeAlso: INT 60/DI=0E09h,INT 60/DI=0E0Bh

INT 60


INT 60 ---- - HP 95LX System Manager - QUERY COMM CHANNEL TRANSMIT QUEUE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E09h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ??? WORD

DWORD	pointer to ??? WORD

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E0Ah

INT 60


INT 60 ---- - HP 95LX System Manager - QUERY COMM CHANNEL RECEIVE QUEUE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E0Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	comm channel handle

DWORD	pointer to WORD to get receive buffer size

DWORD	pointer to WORD to get free bytes in receive buffer

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E09h,INT 60/DI=0E0Bh

INT 60


INT 60 ---- - HP 95LX System Manager - RECEIVE DATA FROM COMM CHANNEL

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E0Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	comm channel handle

DWORD	pointer to data buffer

DWORD	pointer to WORD (call) length of data buffer

(ret) number of bytes received

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E08h,INT 60/DI=0E0Ah

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_HAZCMD"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E0Ch

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_COMAND"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E0Dh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_BREAK"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E0Eh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_FRCXON"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E0Fh

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_FRCXOF"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E10h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_SETDTR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E11h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_XMITNG"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E12h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_STATUS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E13h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - SET COMMUNICATIONS SETTINGS

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E14h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	comm channel handle

DWORD	pointer to communications settings (see #1946)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E15h

INT 60


INT 60 ---- - HP 95LX System Manager - GET COMMUNICATIONS SETTINGS

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E15h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to buffer for settings (see #1946)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0E14h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_CNFGUR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E16h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

WORD	???

WORD	???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COMM_QRYERR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0E17h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ERRMSG"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F00h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

DWORD	pointer to ???

WORD	???

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - DRAW STANDARD TITLE BOX

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F01h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ASCIZ title string

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "SHOWNAME"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F02h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY TWO-LINE MESSAGE BOX

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F03h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to first line of message

WORD	length of first line

DWORD	pointer to second line of message

WORD	length of second line

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0300h,INT 60/DI=0F04h,INT 60/DI=0F09h

INT 60


INT 60 ---- - HP 95LX System Manager - REMOVE MESSAGE BOX

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F04h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0F03h,INT 60/DI=0F09h

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COM_TIMER_ADDR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F05h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: DX:AX -> ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_COM_TIMER_COUNT_ADDR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F06h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: DX:AX -> ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_SYS_RSRC_ADDR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F07h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: DX:AX -> ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_BIOS_OUTSTR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F08h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY THREE-LINE MESSAGE BOX

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F09h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to first line of message

WORD	length of first line

DWORD	pointer to second line of message

WORD	length of second line

DWORD	pointer to third line of message

WORD	length of third line

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0F03h,INT 60/DI=0F04h

INT 60


INT 60 ---- - HP 95LX System Manager - DISABLE MACROS

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F0Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0F0Bh

INT 60


INT 60 ---- - HP 95LX System Manager - ENABLE MACROS

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F0Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 60/DI=0F0Ah

INT 60


INT 60 ---- - HP 95LX System Manager - "M_DATE_TIME_SEPS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F0Ch

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_FORM_FT"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F0Dh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: DX:AX -> ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_RAM_IV_INFO"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 0F0Eh

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: DX:AX -> ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "M_DIRTY_SYNC" - FORCE SCREEN UPDATE

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1005h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

SeeAlso: INT 10/AH=FFh,INT 60/DI=0300h,INT 60/DI=0301h

INT 60


INT 60 ---- - HP 95LX System Manager - RESOURCE SERVICE "MAP_RESOURCE_FILE"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1200h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GET_RESOURCE_PTR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1201h

STACK:	2 WORDs unused dummies (for calls from high level languages)

WORD	???

Return: DX:AX -> ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "GET_RSRC_TAB_PTR"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1202h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: DX:AX -> ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "INIT_SYSMGR_RSRCS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1203h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - INITIALIZE HELP SYSTEM

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1300h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - DISPLAY HELP

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1301h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_HELP_KEY"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1302h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_HELP_TERM"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1303h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColInit"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1400h

STACK:	2 WORDs unused dummies (for calls from high level languages)

Return: AX = ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColCpStr"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1401h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColLicsStr"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1402h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColLicsChar"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1403h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColToLower"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1404h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColCpSearch"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1405h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

DWORD	pointer to ???

WORD	???

WORD	???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "M_ColToUpper"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1406h

STACK:	2 WORDs unused dummies (for calls from high level languages)

DWORD	pointer to ???

WORD	???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispInit"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1500h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispClear"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1501h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispDot"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1502h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispDraw"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1503h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispFill"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1504h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispRead"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1505h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispString"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1506h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispPan"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1507h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispZoom"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1508h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispSave"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1509h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispRestore"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 150Ah

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

INT 60


INT 60 ---- - HP 95LX System Manager - "GrDispCorner"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 150Bh

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 ---- - HP 95LX System Manager - "CP_TO_LICS"

partially documented function

Category: b - vendor-specific BIOS extensions

Inp.:

DI = 1604h

STACK:	2 WORDs unused dummies (for calls from high level languages)

???

Return: ???

STACK unchanged

SeeAlso: INT 15/AX=4DD4h,INT 61"HP 95LX",INT 62"HP 95LX"

INT 60


INT 60 00-- - SYS_PROF.EXE - PROFILER STATUS

Category: G - debuggers/debugging tools

Inp.:

AH = 00h

Return: AX = 0000h    profiling is off

    otherwise profiling is on

Note:	SYS_PROF.EXE is the TSR portion of a profiler from Micro Cornucopia

  Issue 47

SeeAlso: AH=01h"SYS_PROF",02h"SYS_PROF"

INT 60


INT 60 00-- - MDEBUG - GET STATUS

Category: G - debuggers/debugging tools

Inp.:

AH = 00h

DS:SI -> password or a null byte

Return: AX = return code

    FFFEh password is invalid

    FFFDh display mode is invalid

    else successful

ES = value of the monitor register SE

DI = value of the monitor register OF

CH = monitor color

CL = interpreter color

BH = monitor start line

BL = interpreter start line

AH = makecode of the hotkey

AL = ASCII code of the hotkey

DL = status of special keys (only SHIFT, ALT, CTRL) for the

      hotkey (coded as for the keyboard flag at 0040h:0017h)

DH = basic process number for the communication with drivers

      process number for the display driver, DH+1 = process

      number for the command driver(s)

DS:SI -> MDEBUG identification table (see #1947)

Program: MDEBUG is a shareware memory-resident debugging tool by Bernd

  Schemmer, including a memory monitor, an interpreter, and a

  disassembler

Notes:	MDEBUG uses INT 60 by default, but may be directed to any of INT 60

  through INT 67; the interrupt handler is preceded by the signature

  "USERINT" and is not chained

if DS:SI points at a null byte, MDEBUG will prompt for a password if

  passwords are active; enough stack space must be provided for an

  INT 10h call (which MDEBUG uses while prompting for the password)

SeeAlso: AH=02h"MDEBUG"

Index:	hotkeys;MDEBUG

INT 60


INT 60 0000 - RIFS - CLIENT - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 0000h

Return: AX = 1234h if installed

CF clear

Program: RIFS is the Remote Installable File System by "kyle"

Range:	INT 60 to INT 66 and INT 18,selected by scanning for 0000h:0000h vector

Note:	the installation check consists of testing for the signature "RIFS"

  immediately preceding the interrupt handler

SeeAlso: AX=0001h,AX=0005h,AX=0007h,AX=0008h,INT 2F/AX=56000h

INT 60


INT 60 0001 - RIFS - CLIENT - UNINSTALL

Category: N - network

Inp.:

AX = 0001h

Return: CF clear if successful

SeeAlso: AX=0000h,AX=0009h

INT 60


INT 60 0002 - RIFS - CLIENT - REMAP DRIVE

Category: N - network

Inp.:

AX = 0002h

BH = local drive number

BL = remote drive number

Return: CF clear if successful

CF set on error

SeeAlso: AX=0000h,AX=0003h,AX=0004h,INT 21/AX=5F03h,INT 21/AX=5F05h"STARLITE"

INT 60


INT 60 0003 - RIFS - CLIENT - UNMAP DRIVE

Category: N - network

Inp.:

AX = 0003h

BL = drive to unmap

Return: CF clear if successful

CF set on error

SeeAlso: AX=0000h,AX=0002h,AX=0004h,INT 21/AX=5F04h,INT 21/AX=5F06h"STARLITE"

INT 60


INT 60 0004 - RIFS - CLIENT - UNMAP ALL DRIVES

Category: N - network

Inp.:

AX = 0004h

Return: CF clear if successful

CF set on error

SeeAlso: AX=0000h,AX=0002h,AX=0003h

INT 60


INT 60 0005 - RIFS - CLIENT - GET TRANSLATION TABLE

Category: N - network

Inp.:

AX = 0005h

Return: CF clear if successful

    ES:BX -> translation table

CF set on error

SeeAlso: AX=0000h,AX=0006h,AX=0007h

INT 60


INT 60 0006 - RIFS - CLIENT - GET STATISTICS TABLE

Category: N - network

Inp.:

AX = 0006h

Return: CF clear if successful

    ES:BX -> statistics table

CF set on error

SeeAlso: AX=0000h,AX=0005h,AX=0007h,AX=000Ah

INT 60


INT 60 0007 - RIFS - CLIENT - GET PORT TRANSLATION TABLE

Category: N - network

Inp.:

AX = 0007h

Return: CF clear if successful

    CX = number of entries

    ES:BX -> port mapping table

CF set on error

SeeAlso: AX=0000h,AX=0005h

INT 60


INT 60 0008 - RIFS - SERVER - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 0008h

Return: CF clear if successful

CF set on error

Range:	INT 60 to INT 66 and INT 18,selected by scanning for 0000h:0000h vector

Note:	the installation check consists of testing for the signature "RIFS"

  immediately preceding the interrupt handler

SeeAlso: AX=0000h,AX=0009h,AX=000Ah,AX=000Bh

INT 60


INT 60 0009 - RIFS - SERVER - UNINSTALL

Category: N - network

Inp.:

AX = 0009h

Return: CF clear if successful

CF set on error

SeeAlso: AX=0001h,AX=0008h

INT 60


INT 60 000A - RIFS - SERVER - GET STATISTICS TABLE

Category: N - network

Inp.:

AX = 000Ah

Return: CF clear if successful

    ES:BX -> statistics table

CF set on error

SeeAlso: AX=0006h,AX=0008h,AX=0009h,AX=000Bh

INT 60


INT 60 000B - RIFS - SERVER - RESET

Category: N - network

Inp.:

AX = 000Bh

Return: CF clear if successful

CF set on error

Note:	closes all open files

SeeAlso: AX=0008h,AX=0009h

INT 60


INT 60 01-- - MDEBUG - GET ADDRESS OF THE HELP REGISTERS

Category: G - debuggers/debugging tools

Inp.:

AH = 01h

DS:SI -> password or a null byte

Return: AX = return code

    FFFEh password is invalid

    FFFDh display mode is invalid

    else successful

ES:DI point to the help registers of MDEBUG

       ES:DI-02h  -> R0 (WORD)

       ES:DI	  -> R1 (WORD)

       ES:DI+02h  -> R2 (WORD)

       ES:DI+04h  -> R3 (WORD)

       ...

       ES:DI+0Eh  -> R8 (WORD)

INT 60


INT 60 01-- - SYS_PROF.EXE - TURN PROFILING OFF

Category: G - debuggers/debugging tools

Inp.:

AH = 01h

Note:	SYS_PROF.EXE is the TSR portion of a profiler from Micro Cornucopia

  Issue 47

SeeAlso: AH=00h"SYS_PROF",02h"SYS_PROF"

INT 60


INT 60 01FF - FTP Packet Driver - BASIC FUNC - GET DRIVER INFO

Category: N - network

Inp.:

AX = 01FFh

BX = handle returned by function 02h

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

    BX = version

    CH = network interface class (see #1949)

    DX = interface type (see #1949)

    CL = number

    DS:SI -> name

    AL = driver functions supported

01h basic

02h basic and extended

05h basic and high-performance

06h basic, high-performance, and extended

FFh not installed

Note:	the handle in BX is optional for drivers written to v1.07 or later of

  the packet driver specification

INT 60


INT 60 02-- - MDEBUG - SET STATUS

Category: G - debuggers/debugging tools

Inp.:

AH = 02h

DS:SI -> password or a null byte

ES = new value for the register SE

DI = new value for the register OF

CH = new monitor color if nonzero

CL = new interpreter color if nonzero

BH = new monitor start line if nonzero

BL = new interpreter start line if nonzero

AL = new ASCII code for the hotkey ('A'..'Z', 'a'..'z') if nonzero

DL = new status of the special keys (SHIFT, ALT, CTRL) for the hotkey

      if nonzero

DH = if nonzero, new basic process number for communication with the

      drivers (DH = multiplex number for the display driver,

      DH+1 = multiplex number for the command driver or drivers)

Return: AX = return code

    FFFFh call not allowed

    FFFEh password is invalid

    FFFDh display mode is invalid

    0000h successful, status changed

    else AL = error reasons (see #1950)

Note:	the values of the registers SE and OF are always changed, the other

  values are only changed if they are valid

SeeAlso: AH=00h"MDEBUG"

Index:	hotkeys;MDEBUG

INT 60


INT 60 02-- - FTP Packet Driver - BASIC FUNC - ACCESS TYPE

Category: N - network

Inp.:

AH = 02h

AL = interface class

BX = interface type

DL = interface number

DS:SI -> type

CX = length of type (0000h for all packets)

ES:DI -> receiver function (see #1951)

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

    AX = handle

SeeAlso: AH=03h"FTP"

INT 60


INT 60 02-- - SYS_PROF.EXE - TURN PROFILING ON

Category: G - debuggers/debugging tools

Inp.:

AH = 02h

Note:	SYS_PROF.EXE is the TSR portion of a profiler from Micro Cornucopia

  Issue 47

SeeAlso: AH=00h"SYS_PROF",01h"SYS_PROF"

INT 60


INT 60 03-- - MDEBUG - POP UP

Category: G - debuggers/debugging tools

Inp.:

AH = 03h

DS:SI -> password or a null byte

ES -> new value for the register SE

DI -> new value for the register OF

Return: AX = return code (see #1952)

SeeAlso: AH=04h"MDEBUG"

INT 60


INT 60 03-- - FTP Packet Driver - BASIC FUNC - RELEASE TYPE

Category: N - network

Inp.:

AH = 03h

BX = handle

Return: CF set on error

   DH = error code (see #1948)

CF clear if successful

SeeAlso: AH=02h"FTP"

INT 60


INT 60 03-- - SYS_PROF.EXE - GET ADDRESS OF PROFILING TABLE

Category: G - debuggers/debugging tools

Inp.:

AH = 03h

Return: ES:BX -> profiling table

Note:	SYS_PROF.EXE is the TSR portion of a profiler from Micro Cornucopia

  Issue 47

SeeAlso: AH=04h"SYS_PROF"

INT 60


INT 60 04-- - FTP Packet Driver - BASIC FUNC - SEND PACKET

Category: N - network

Inp.:

AH = 04h

DS:SI -> buffer

CX = length

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

Note:	the buffer may be modified immediately upon return from this call

SeeAlso: AH=0Bh

INT 60


INT 60 04-- - MDEBUG - POP UP

Category: G - debuggers/debugging tools

Inp.:

AH = 04h

DS:SI -> password or a null byte

Return: AX = return code (see #1952)

SeeAlso: AH=03h"MDEBUG",AH=07h"MDEBUG"

INT 60


INT 60 04-- - SYS_PROF.EXE - CLEAR PROFILING TABLE

Category: G - debuggers/debugging tools

Inp.:

AH = 04h

Note:	SYS_PROF.EXE is the TSR portion of a profiler from Micro Cornucopia

  Issue 47

SeeAlso: AH=03h"SYS_PROF"

INT 60


INT 60 05-- - FTP Packet Driver - BASIC FUNC - TERMINATE DRIVER FOR HANDLE

Category: N - network

Inp.:

AH = 05h

BX = handle (optional for v1.10+)

Return: CF set on error

   DH = error code (see #1948)

CF clear if successful

INT 60


INT 60 05-- - MDEBUG - GET AND SET MDEBUG FLAGS

Category: G - debuggers/debugging tools

Inp.:

AH = 05h

DS:SI -> password or a null byte

BL = new value for the semaphor of MDEBUG

     00h  enable popup of MDEBUG

     else disable popup of MDEBUG

Return: AX = return code

    FFFEh password is invalid

    FFFDh display mode is invalid

    else successful

BL = old value of the semaphor of MDEBUG

BH = old value of the INT 08h semaphor

    (this semaphor is always reset after this function)

INT 60


INT 60 06-- - FTP Packet Driver - BASIC FUNC - GET ADDRESS

Category: N - network

Inp.:

AH = 06h

BX = handle (optional for v1.10+)

ES:DI -> buffer

CX = length

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

    CX = length

Note:	copies the local net address associated with the handle into the buffer

INT 60


INT 60 06-- - MDEBUG - GET PASSWORD STATUS

Category: G - debuggers/debugging tools

Inp.:

AH = 06h

Return: AL = status

    00h password inactive

    01h password active

INT 60


INT 60 07-- - FTP Packet Driver - BASIC FUNC - RESET INTERFACE

Category: N - network

Inp.:

AH = 07h

BX = handle (optional for v1.10+)

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

INT 60


INT 60 07-- - MDEBUG v1.70+ - GET ACTIVE PART OF MDEBUG

Category: G - debuggers/debugging tools

Inp.:

AH = 07h

Return: AL = active part for the next popup session of MDEBUG:

    bit 0: the next popup session will start in the interpreter rather

  than in the monitor

    bit 1: the next popup session will sart in the online-help

SeeAlso: AH=03h"MDEBUG",AH=04h"MDEBUG"

INT 60


INT 60 08-- - MDEBUG - UNUSED

Category: G - debuggers/debugging tools

Inp.:

AH = 08h-FFh

Return: AX = FFFCh

INT 60


INT 60 0A-- - FTP Packet Driver 1.09+ - HIGH-PERF FUNC - GET PARAMETERS

Category: N - network

Inp.:

AH = 0Ah

Return: CF set on error

    DH = error code (0Bh) (see #1948)

CF clear if successful

    ES:DI -> parameter table (see #1953)

INT 60


INT 60 0B-- - FTP Packet Driver 1.09 - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET

Category: N - network

Inp.:

AH = 0Bh

DS:SI -> buffer

CX = length of buffer

ES:DI -> FAR function to call when buffer becomes available (see #1954)

Return: CF set on error

    DH = error code (0Bh,0Ch) (see #1948)

CF clear if successful

Notes:	unlike function 04h, the buffer is not available for modification as

  soon as the call returns; the buffer may be queued by the driver and

  not processed until later

this function has been dropped from v1.10+ of the specification and

  replaced by function 0Ch

SeeAlso: AH=04h"Packet Driver",AH=0Ch"Packet Driver"

INT 60


INT 60 0C-- - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET

Category: N - network

Inp.:

AH = 0Ch

ES:DI -> pointer to IOCB (see #1955)

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

SeeAlso: AH=04h"Packet Driver",AH=0Bh"Packet Driver"

INT 60


INT 60 0C-- - Banyan VINES, 3com - GET STATION ADDRESS

Category: N - network

Inp.:

AH = 0Ch

Return: AL = status

    00h successful

ES:SI -> 6-byte station address

    02h semaphore service is unavailable

INT 60


INT 60 0D-- - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - DROP PACKET FROM QUEUE

Category: N - network

Inp.:

AH = 0Dh

ES:DI -> IOCB

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

SeeAlso: AH=0Ch"Packet Driver"

INT 60


INT 60 11-- - 3com, 10NET, Banyan VINES - LOCK AND WAIT

Category: N - network

Inp.:

AH = 11h

AL = drive number or 0

DX = number of seconds to wait

ES:SI = Ethernet address or 0

DS:BX -> 31-byte ASCIZ semaphore name

Return: AL = status (see #1957)

SeeAlso: AH=12h,AH=13h

INT 60


INT 60 12-- - 3com, 10NET, Banyan VINES - LOCK

Category: N - network

Inp.:

AH = 12h

AL = drive number or 00h

ES:SI = Ethernet address or 0000h:0000h

DS:BX -> 31-byte ASCIZ semaphore name

Return: AL = status (see also #1957)

    01h semaphore currently locked by another PC

Note:	unlike function 11h, this function returns immediately

SeeAlso: AH=11h,AH=13h

INT 60


INT 60 13-- - 3com, 10NET, Banyan VINES - UNLOCK

Category: N - network

Inp.:

AH = 13h

AL = drive number or 00h

ES:SI = Ethernet address or 0000h:0000h

DS:BX -> 31-byte ASCIZ semaphore name

Return: AL = status (see also #1957)

    01h semaphore not locked

SeeAlso: AH=11h,AH=12h

INT 60


INT 60 14-- - FTP Packet Driver - EXTENDED FUNC - SET RECEIVE MODE

Category: N - network

Inp.:

AH = 14h

BX = handle (optional for v1.10+)

CX = mode (see #1958)

Return: CF set on error

   DH = error code (01h,08h) (see #1948)

CF clear if successful

SeeAlso: AH=15h

INT 60


INT 60 15-- - FTP Packet Driver - EXTENDED FUNC - GET RECEIVE MODE

Category: N - network

Inp.:

AH = 15h

BX = handle (optional for v1.10+)

Return: CF set on error

    DH = error code (01h) (see #1948)

CF clear if successful

    AX = receive mode (see #1958)

SeeAlso: AH=14h

INT 60


INT 60 16-- - FTP Packet Driver - EXTENDED FUNC - SET MULTICAST LIST

Category: N - network

Inp.:

AH = 16h

ES:DI -> multicast list

CX = length of list in bytes

Return: CF set on error

    DH = error code (06h,09h,0Eh) (see #1948)

CF clear if successful

SeeAlso: AH=17h

INT 60


INT 60 17-- - FTP Packet Driver - EXTENDED FUNC - GET MULTICAST LIST

Category: N - network

Inp.:

AH = 17h

Return: CF set on error

    DH = error code (06h,09h) (see #1948 at AX=01FFh)

CF clear if successful

    ES:DI -> multicast addresses (do not modify)

    CX = bytes of multicast addresses currently in use

SeeAlso: AH=16h

INT 60


INT 60 18-- - FTP Packet Driver - EXTENDED FUNC - GET STATISTICS

Category: N - network

Inp.:

AH = 18h

BX = handle (optional for v1.10+)

Return: CF set on error

    DH = error code (01h) (see #1948)

CF clear if successful

    DS:SI -> statistics (see #1959)

INT 60


INT 60 19-- - FTP Packet Driver - EXTENDED FUNC - SET NETWORK ADDRESS

Category: N - network

Inp.:

AH = 19h

ES:DI -> address

CX = length of address

Return: CF set on error

    DH = error code (0Dh,0Eh) (see #1948)

CF clear if successful

    CX = length

INT 60


INT 60 1A-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - SEND RAW BYTES

Category: N - network

Inp.:

AH = 1Ah

DS:SI -> buffer

CX = length of buffer

Return: CF set on error

    DH = error code (see #1948 at AX=01FFh)

CF clear if successful

SeeAlso: AH=1Ch

INT 60


INT 60 1B-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - FLUSH RAW BYTES RECEIVED

Category: N - network

Inp.:

AH = 1Bh

Return: CF set on error

    DH = error code (see #1948)

CF clear if successful

SeeAlso: AH=1Ch

INT 60


INT 60 1C-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - FETCH RAW BYTES RECEIVED

Category: N - network

Inp.:

AH = 1Ch

DS:SI -> buffer

CX = length of buffer

DX = timeout in clock ticks

Return: CF set on error

    DH = error code (see #1948 at AX=01FFh)

CF clear if successful

    CX = number of bytes transferred to buffer

SeeAlso: AH=1Ah,AH=1Bh

INT 60


INT 60 AD-- - AccessDOS - API

Category: a - access software (screen readers, etc)

Inp.:

AH = ADh

AL = function

    E1h ???

Return: AX = ???

    E2h get configuration

Return: BX:AX -> configuration data

Program: AccessDOS is a public domain TSR developed at The Trace Research and

  Development Center which provides extensions for keyboard, mouse,

  and sound access by the visually, hearing, or motor-control

  impaired.

Range:	INT 60 to INT 66, selected by scanning for 0000h:0000h vector

INT 60


INT 60 E9-- - FTP Packet Driver - Crynwr Software - AUTOSELECT TRANSCEIVER

Category: N - network

Inp.:

AH = E9h

???

Return: ???

INT 60


INT 61 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 61


INT 61 ---- - Atari Portfolio - EXTENDED BIOS

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	provides subfunctions such as turning off the machine, accessing

  internal variables, and mapping memory cards

SeeAlso: INT 60"Atari"

INT 61


INT 61 ---- - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the segment of the RAM data area

  to be used by the expansion ROM at F400h:0000h, and the high word

  contains the length of the data area; this segment and size are

  both set to 0000h if no ROM is installed at F400h:0000h

SeeAlso: INT 60"TI Professional PC",INT 62"TI Professional"

SeeAlso: INT 66"TI Professional PC"

INT 61


INT 61 ---- - HP 95LX System Manager - LOAD DS

Category: b - vendor-specific BIOS extensions

Inp.:

SeeAlso: INT 0F"HP 95LX",INT 60"HP 95LX"

INT 61


INT 61 ---- - JPI TopSPEED Modula-2 v1 - PROCEDURE EXIT TRAP

Category: r - runtime support

Inp.:

SeeAlso: INT 60"JPI"

INT 61


INT 61 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Desc:	this vector stores the second four bytes of the parameter table for

  hard disk 0

SeeAlso: INT 60"Adaptec",INT 62"Adaptec",INT 63"Adaptec"

INT 61


INT 61 ---- - Sangoma CCIP (CCPOP 3270 resident module) INTERFACE

Category: I - IBM workstation/terminal emulators

Inp.:

BX:DX -> control block

SeeAlso: INT 67"Sangoma"

INT 61


INT 61 ---- - VIRUS - "SEMTEX"/"Screen Trasher" - INT 21h SUBSTITUTE

Category: v - virus/antivirus

Inp.:

Note:	the virus copies the original INT 21h vector into INT 61h

SeeAlso: INT 21h,INT 60"VIRUS",INT 6B"VIRUS"

INT 61


INT 61 ---- - PC-Magazin - PAGE, SWAPx

Category: U - resident utilities

Inp.:

details not yet available

Program: PAGE and SWAPx are utilities from PC-Magazin, the German edition of

  PC Magazine, issue 47/85, page 31

SeeAlso: INT 66"INCA"

INT 61


INT 61 ---- - TCPOpen kernel - API

Category: N - network

Inp.:

ES:BX -> request packet (see #1960)

Program: TCPOpen is a TCP/IP protocol stack by Lanera

Range:	INT 60 to INT 7F, selected by configuration file

Note:	there does not appear to be an installation check, though function

  FFFFh can be used to verify that the software is indeed functioning

INT 61


INT 61 ---- - XFS v1.76 - XFSKRNL.EXE - API

Category: N - network

Inp.:

AX = function

    8000h installation check???

Return: AX = 0000h

    8001h ???

ES:DI -> DWORD ???

Return: AX = status???

    8002h ???

BX = ???

CX = ???

ES:DI -> ???

Return: AX = status???

    8003h ???

BX = ???

CX = ???

ES:DI -> ???

Return: AX = status???

    8004h ???

BX = ???

Return: AX = status???

    8005h wait until ???

Return: DX:AX = ???

    8006h get ???

Return: DX:AX -> ??? record

    8007h set IP address??? (or htonl/ntohl)

DX:BX = IP address???

Return: DX:AX = byte-swapped IP address

    8008h set IP address??? (or htonl/ntohl)

DX:AX = IP address???

Return: DX:AX = byte-swapped IP address

    8009h ???

ES:DI -> ???

Return: DX:AX = ???

    800Ah ???

    800Bh ???

Return: DX:AX = ???

    800Ch ???

    800Dh ???

    800Eh ???

    800Fh ???

    8010h get ??? record

Return: DX:AX -> ??? record

    8011h ???

    8012h ???

BX = ???

Return: DX:AX = ???

    8013h get ??? record

Return: DX:AX -> ??? record

    8014h ???

ES:DI -> ???

Return: nothing

    8015h get ??? record

Return: DX:AX -> 8-byte ??? record

    8016h get ??? record

Return: DX:AX -> 6-byte ??? record

    8017h ???

ES:DI -> ???

Return: DX:AX = ???

    8018h get ??? record

Return: DX:AX -> ??? record

    8019h get ??? record

Return: DX:AX -> 14-byte ??? record

    801Ah get ??? record

Return: DX:AX -> ??? record (max 98 bytes)

    801Bh get ??? record

Return: DX:AX -> ??? record

    801Ch ???

Return: nothing

    801Dh get ???

Return: AL = ???

    801Eh ???

Return: AX = ???

    801Fh uninstall

Return: AX = status

    0000h successful

    other interrupt which could not be released

AX = other

Return: AX:BX = ??? (0000h:0000h by default)

Program: XFS is a shareware Network File System client by Robert Juhasz

Range:	INT 60 to INT 65, selected by scanning for two consecutive free

  vectors and hooking the first

SeeAlso: INT 62"XFS"

INT 61


INT 61 ---- - FTP Software PC/TCP - TCP/IP TSR System Call interface

Category: N - network

Inp.:

AH = system call number (see also entries below)

    01h "pkt_alloc" (v2.05; this is "net_config" in v2.1+)

    02h "pkt_free" (v2.05; this is "get_kernel_info" in v2.1+)

Return: CF clear if successful

CF set on error

    AL = basic error (see #1962)

    AH = suberror number (see #1963,#1964)

Range:	INT 20h to INT E0h, selected by configuration

Notes:	the installation check consists of testing for the signature "TCPTSR"

  three bytes beyond the start of the interrupt handler

BUG:	the SLIP kernel for v2.05 bounds-checks the wrong register, so values

  greater than 54h in AH may crash the system.	Other kernels may have

  this bug as well.

SeeAlso: INT 61/AH=00h"PC/TCP",INT 61/AH=2Ah,INT 61/AH=54h

Index:	installation check;PC/TCP

INT 61


INT 61 00-- - PC/TCP kernel v2.05+ - GET DEBUG INFORMATION

undocumented function

Category: N - network

Inp.:

AH = 00h

DS:SI -> 216-byte buffer for network debugging information (see #1965)

Return: CF clear

AX = 0000h

buffer filled

Notes:	this call is not documented by FTP, Inc. for any version

most of the information returned by this call is available via the

  documented get_kernel_info or net_info commands.

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=2Ah"PC/TCP"

INT 61


INT 61 00-- - Banyan VINES - CALL A SERVICE

Category: N - network

Inp.:

AH = 00h

AL = service ID (1..16)

other registers vary by service

Return: AX = status (see #1968)

Desc:	Calls an adapter driver or redirector service. The service handler

  pointers are stored at offset 0010h in the code segment of the

  BANV interrupt handler (see #1966).

Note:	Banyan can use any interrupt from 60h through 66h.  The Banyan

  interrupt handler is identified by the string "BANV" in the four

  bytes immediately preceding the interrupt handler

SeeAlso: AH=01h,AH=03h

INT 61


INT 61 0000 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ZOOM DISPLAY

Category: V - video

Inp.:

AX = 0000h

BX = zoom factor (0-7)

Desc:	zooms the display based on the given zoom factor

Notes:	INT 61h is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0001h"OPTIMA",AX=0002h"OPTIMA",AX=0005h"OPTIMA"

SeeAlso: INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0001 - Banyan VINES - INTERNAL VINES SOCKET API (NEAR DATA)

Category: N - network

Inp.:

AX = 0001h

DS = 0001h (to distinguish from alternate AX=0001h socket interface)

CX:BX -> internal communications control block (see #1967)

DX = caller's data segment

Return: AX = status

    0000h successful

    0099h invalid operation

    00A5h resource not available

Desc:	StreetTalk access with session handles

Range:	INT 60 to INT 66

Notes:	This service is handled by the adapter driver

The request dispatch table contains dummy entries for subfunctions

  06h, 0Dh, 0Eh, 0Fh, 10h, and 11h, which always return error 0099h

  (invalid operation) in the request block's result buffer

in recent VINES releases, this interface is superseded by the AX=000Fh

  interface, which allows FAR parameter block pointers (see that

  function's entries for more details on individual subfunctions)

some adapter drivers (e.g. the NDIS2 token ring driver NDTOKBAN for

  VINES 5.53) ignore the value in CX and use the value from DX instead

SeeAlso: AX=000Fh

INT 61


INT 61 0001 - Banyan VINES - "Sosock" - OPEN COMMUNICATIONS SOCKET

Category: N - network

Inp.:

AX = 0001h subfn 0001h

DS:DX -> communications control block (function 0001h) (see #1969)

Return: AX = status (0000h-0002h,0098h,009Eh-00A2h) (see #1968)

Range:	INT 60h to INT 66h

Note:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0002h,AX=0001h/SF=0008h,INT 15/AX=DE2Eh

INT 61


INT 61 0001 - Banyan VINES - "Sosend" - INITIATE OUTPUT EVENT

Category: N - network

Inp.:

AX = 0001h subfn 0002h

DS:DX -> communications control block (function 0002h) (see #1972)

Return: AX = status (0000h-0002h,0097h,009Bh-009Dh,00A2h,00A3h,00B1h)

    (see #1968)

Range:	INT 60h to INT 66h

Note:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0001h,AX=0001h/SF=0005h

INT 61


INT 61 0001 - Banyan VINES - "Sorec" - RECEIVE INPUT EVENT NOTIFICATION

Category: N - network

Inp.:

AX = 0001h subfn 0003h

DS:DX -> communications control block (function 0003h) (see #1977)

Return: AX = status (00-0Ah,97h,A2h,A3h) (see #1968)

Range:	INT 60h to INT 66h

Note:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0002h

INT 61


INT 61 0001 - Banyan VINES - "Soclose" - CLOSE A SOCKET

Category: N - network

Inp.:

AX = 0001h subfn 0004h

DS:DX -> communications control block (function 0004h) (see #1980)

Return: AX = status (0000h-000Ah,0097h) (see #1968)

Range:	INT 60h to INT 66h

Note:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0001h,INT 15/AX=DE2Eh

INT 61


INT 61 0001 - Banyan VINES - "Sowait" - WAIT FOR ASYNCHRONOUS EVENT COMPLETION

Category: N - network

Inp.:

AX = 0001h subfn 0005h

DS:DX -> communications control block (see #1983)

Return: AX = status (0000h-000Ah,00A2h,00A3h) (see #1982)

Desc:	returns results for all asynchronous operations invoked from the

  data segment used for this call

Range:	INT 60h to INT 66h

Notes:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0002h,AX=0001h/SF=0009h

INT 61


INT 61 0001 - Banyan VINES - "Sosession" - REGISTER APPLICATION WITH COMM SERVICE

Category: N - network

Inp.:

AX = 0001h subfn 0008h

DS:DX -> communications control block (function 0008h) (see #1985)

Return: AX = status

    0000h  successful

    00A2h  no more buffer space available

Range:	INT 60h to INT 66h

Note:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0001h,AX=0001h/SF=0009h

INT 61


INT 61 0001 - Banyan VINES - "Soint" - SET USER COMPLETION FUNCTION

Category: N - network

Inp.:

AX = 0001h subfn 000Bh

DS:DX -> communications control block (function 000Bh) (see #1986)

Return: AX = status (00h-0Ah,A2h) (see #1982)

Range:	INT 60h to INT 66h

Note:	The Banyan interrupt handler is identified by the string "BANV" in

  the four bytes immediately preceding the interrupt handler

SeeAlso: AX=0001h/SF=0005h,AX=0001h/SF=0008h

INT 61


INT 61 0001 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - CENTER ZOOM WINDOW

Category: V - video

Inp.:

AX = 0001h

BX = X coordinate to center

CX = Y coordinate to center

Desc:	Positions the zoom window such that the specified window-relative

  coordinates appear as close as possible to the center of the

  display.  Useful for scrolling and panning.

Range:	unknown

Notes:	INT 61h is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0002h"OPTIMA",AX=0005h"OPTIMA"

SeeAlso: INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0002 - Banyan VINES - 3270 INTERFACE

Category: I - IBM workstation/terminal emulators

Inp.:

AX = 0002h

BH = function number (see #1989)

DS:CX -> argument block (except BH=00h,1Ah) (see #1991)

Return: AX = status (see #1990)

Notes:	Either 3270/SNA or 3270/BSC interface may use AX=0002h, depending on

  which is loaded first.  The other interface will use AX=000Ah

Status codes greater than 63h indicate an inconsistency in the 3270/SNA

  or 3270/BSC resident driver, which must be reloaded by the user

INT 61


INT 61 0002 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - END ZOOM

Category: V - video

Inp.:

AX = 0002h

Desc:	switches off zoom and returns window to its original state

Range:	unknown

Notes:	INT 61h is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INIT USER BUFFER PTR INFO

Category: N - network

Inp.:

AX = 0003h subfn 00h

DS:BX -> argument block (see #2013)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=06h,AX=0003h/SF=08h,AX=0003h/SF=0Dh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SEND TO HOST

Category: N - network

Inp.:

AX = 0003h subfn 01h

DS:BX -> argument block (see #2017)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=02h,AX=0003h/SF=14h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - "CONTROL MONITOR"

Category: N - network

Inp.:

AX = 0003h subfn 02h

DS:BX -> argument block (see #2019)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=03h,AX=0003h/SF=05h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - "FLOW CONTROL DATA"

Category: N - network

Inp.:

AX = 0003h subfn 03h

DS:BX -> argument block (see #2020)

Return: AX = status (see #2012)

Desc:	this function permits the caller to freeze/unfreeze the display and

  the ring buffer

SeeAlso: AX=0003h/SF=02h,AX=0003h/SF=06h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - END ACTIVE SESSION

Category: N - network

Inp.:

AX = 0003h subfn 04h

DS:BX -> argument block (see #2021)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=0Ah,AX=0003h/SF=0Dh,AX=0003h/SF=0Fh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SESSION PARAMETER

Category: N - network

Inp.:

AX = 0003h subfn 05h

DS:BX -> argument block (see #2022)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=06h,AX=0003h/SF=08h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET SESSION PARAMETER

Category: N - network

Inp.:

AX = 0003h subfn 06h

DS:BX -> argument block (see #2024)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=05h,AX=0003h/SF=07h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET TAB SETTINGS

Category: N - network

Inp.:

AX = 0003h subfn 07h

DS:BX -> argument block (see #2025)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=05h,AX=0003h/SF=08h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET TAB SETTINGS

Category: N - network

Inp.:

AX = 0003h subfn 08h

DS:BX -> argument block (see #2026)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=06h,AX=0003h/SF=07h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - REFRESH EMULATION SCREEN

Category: N - network

Inp.:

AX = 0003h subfn 09h

DS:BX -> argument block (see #2027)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=0Bh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SUSPEND SESSION TEMPORARILY

Category: N - network

Inp.:

AX = 0003h subfn 0Ah

DS:BX -> argument block (see #2028)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=04h,AX=0003h/SF=09h,AX=0003h/SF=0Bh,AX=0003h/SF=0Dh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - RESUME SUSPENDED SESSION

Category: N - network

Inp.:

AX = 0003h subfn 0Bh

DS:BX -> argument block (see #2029)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=09h,AX=0003h/SF=0Ah

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SCROLL LOCK CHECKING

Category: N - network

Inp.:

AX = 0003h subfn 0Ch

DS:BX -> argument block (see #2030)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - EXIT EMULATION

Category: N - network

Inp.:

AX = 0003h subfn 0Dh

DS:BX -> argument block (see #2031)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=04h,AX=0003h/SF=0Ah

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON CHAR FROM HOST

Category: N - network

Inp.:

AX = 0003h subfn 0Eh

DS:BX -> argument block (see #2032)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=14h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START A SESSION

Category: N - network

Inp.:

AX = 0003h subfn 0Fh

DS:BX -> argument block (see #2033)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=04h,AX=0003h/SF=0Bh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP PRINTING

Category: N - network

Inp.:

AX = 0003h subfn 10h

DS:BX -> argument block (see #2035)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=06h,AX=0003h/SF=13h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET FILE TRANSFER PARAMETERS

Category: N - network

Inp.:

AX = 0003h subfn 11h

DS:BX -> argument block (see #2036)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=12h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET CONNECTION INFORMATION

Category: N - network

Inp.:

AX = 0003h subfn 12h

DS:BX -> argument block (see #2038)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=11h,AX=0003h/SF=15h

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP TRACING TRAFFIC

Category: N - network

Inp.:

AX = 0003h subfn 13h

DS:BX -> argument block (see #2040)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=0Eh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON HOST MESSAGE

Category: N - network

Inp.:

AX = 0003h subfn 14h

DS:BX -> argument block (see #2041)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=0Eh

INT 61


INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - RESET ERROR

Category: N - network

Inp.:

AX = 0003h subfn 15h

DS:BX -> argument block (see #2042)

Return: AX = status (see #2012)

SeeAlso: AX=0003h/SF=00h,AX=0003h/SF=12h

INT 61


INT 61 0003 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - REPORT ZOOM FACTOR

Category: V - video

Inp.:

AX = 0003h

Return: AX = zoom factor

Desc:	returns the current zoom factor

Range:	unknown

Notes:	INT 61h is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0005h"OPTIMA",INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0004 - Banyan VINES - FILE SERVICE CONTROL

Category: N - network

Inp.:

AX = 0004h

DS:DX -> request block (see #2044)

Return: AX = status (see #2043)

Notes:	This service is handled by the redirector

The request dispatch table contains dummy entries for requests 0Ah,

  0Dh, 15h, 19h, and 1Ah, which always return error 0033h (invalid

  request ID)

INT 61


INT 61 0004 - Banyan VINES - SET DRIVE CONNECTION

Category: N - network

Inp.:

AX = 0004h subfn 0001h

DS:DX -> request block (see #2045)

Return: AX = status (0000h,0037h,0038h,0055h) (see #2043)

Desc:	Maps the specified file service to a DOS drive letter

Note:	If an empty service name is specified, an existing connection will

  be removed

SeeAlso: AX=0004h/SF=0002h

INT 61


INT 61 0004 - Banyan VINES - GET DRIVE CONNECTION

Category: N - network

Inp.:

AX = 0004h subfn 0002h

DS:DX -> request block (see #2046)

Return: AX = status (0000h,0034h,0037h) (see #2043)

Desc:	Returns the StreetTalk name of the associated file service

SeeAlso: AX=0004h/SF=0001h,AX=0004h/SF=0003h

INT 61


INT 61 0004 - Banyan VINES - GET NETWORK DRIVE MAP

Category: N - network

Inp.:

AX = 0004h subfn 0003h

DS:DX -> request block (see #2047)

Return: AX = status

    0000h drive map returned in request block

Desc:	Returns a bit map indicating which drive numbers are connected to a

  file service

Note:	Only bits 0-25 are significant

SeeAlso: AX=0004h/SF=0002h

INT 61


INT 61 0004 - Banyan VINES - SET USER NAME

Category: N - network

Inp.:

AX = 0004h subfn 0004h

DS:DX -> request block (see #2048)

Return: AX = status (0000h) (see #2043)

Notes:	Other side effects, if any, not known

SeeAlso: AX=0004h/SF=0005h,AX=0006h/SF=0004h,AX=0007h/BX=0005h

INT 61


INT 61 0004 - Banyan VINES - GET USER NAME

Category: N - network

Inp.:

AX = 0004h subfn 0005h

DS:DX -> request block (see #2049)

Return: AX = status (see also #2043)

    0000h user name returned in request block

Desc:	Returns the StreetTalk name of the currently logged in user

SeeAlso: AX=0004h/SF=0004h,AX=0006h/SF=0004h,AX=0007h/BX=0005h

SeeAlso: AX=0004h/SF=0004h

INT 61


INT 61 0004 - Banyan VINES - TEST DRIVE CONNECTION

Category: N - network

Inp.:

AX = 0004h subfn 0006h

DS:DX -> request block (see #2050)

Return: AX = status (see also #2043)

    0000h connection flag returned in request block

Desc:	Returns a flag indicating if the drive is connected to a file service

SeeAlso: AX=0004h/SF=0007h

INT 61


INT 61 0004 - Banyan VINES - GET CONNECTION DATA STRUCTURES

Category: N - network

Inp.:

AX = 0004h subfn 0007h

DS:DX -> request block (see #2051)

Return: AX = status (see also #2043)

    0000h pointer returned in request block

    0033h invalid request ID

Desc:	Returns pointers to various internal data structures

INT 61


INT 61 0004 - Banyan VINES - GET SERVER SERIAL NUMBER

Category: N - network

Inp.:

AX = 0004h subfn 0008h

DS:DX -> request block (see #2055)

Return: AX = status (0000h,000Fh,0015h) (see #2043)

Notes:	The server ID is extracted from the IPC port address of the associated

  file service stored in the drive connection table

The server serial number and the server subnet number are returned in

  big-endian (Motorola) format (i.e. MSB first)

SeeAlso: AX=0004h/SF=0005h

INT 61


INT 61 0004 - Banyan VINES - SET ??? PARAMETER

Category: N - network

Inp.:

AX = 0004h subfn 0009h

DS:DX -> request block (see #2056)

Return: AX = status (0000h) (see #2043)

Notes:	The specified WORD parameter is copied to offset 1702h of the

  redirector code segment (revision 5.53)

SeeAlso: AX=0004h/SF=000Bh

INT 61


INT 61 0004 - Banyan VINES - GET ??? DRIVE PARAMETER

Category: N - network

Inp.:

AX = 0004h subfn 000Bh

DS:DX -> request block (see #2057)

Return: AX = status (0000h,0034h,0037h) (see #2043)

Notes:	This request returns a WORD value from the drive connection table

  read from offset 0012h of the specified drive's entry (usually 0037h)

SeeAlso: AX=0004h/SF=0009h

INT 61


INT 61 0004 - Banyan VINES - LOGOUT FROM VINES

Category: N - network

Inp.:

AX = 0004h subfn 000Ch

DS:DX -> request block (see #2058)

Return: AX = status 0000h (see #2043)

Desc:	Terminates a running VINES session and clears all session specific

  buffers

SeeAlso: AX=0004h/SF=0008h

INT 61


INT 61 0004 - Banyan VINES - GET ACCESS RIGHTS LIST (ARL)

Category: N - network

Inp.:

AX = 0004h subfn 000Eh

DS:DX -> request block (see #2059)

Return: AX = status (see also #2043)

    0000h request has been processed

Desc:	Returns the owner, group, and extended access rights for the specified

  file or directory

Note:	A status of 0000h does not necessarily indicate a successful request;

  check the status word at offset 000Eh of the request block too

SeeAlso: AX=0004h/SF=000Fh

INT 61


INT 61 0004 - Banyan VINES - SET ACCESS RIGHTS LIST (ARL)

Category: N - network

Inp.:

AX = 0004h subfn 000Fh

DS:DX -> request block (see #2062)

Return: AX = status (see also #2043)

    0000h request has been processed

Desc:	Sets the owner, group, and extended access rights for the specified

  file or directory

Note:	A status of 0000h does not necessarily indicate a successful request;

  check the status word at offset 000Eh of the request block too

If the number of ARL entries is less than 1 or greater than 5, error

  0057h (invalid number of entries) is returned

SeeAlso: AX=0004h/SF=000Eh

INT 61


INT 61 0004 - Banyan VINES - FILE SERVICE CONTROL - ???

Category: N - network

Inp.:

AX = 0004h subfn 0010h

DS:DX -> request block (see #2063)

Return: AX = status (see also #2043)

    0000h request has been processed

SeeAlso: AX=0004h/SF=000Fh

INT 61


INT 61 0004 - Banyan VINES - GET VALUE OF GLOBAL VARIABLE

Category: N - network

Inp.:

AX = 0004h subfn 0013h

DS:DX -> request block (see #2696)

Return: AX = status (see also #2043)

    0000h successful

    0033h invalid request ID (returned if variable index out of range)

Desc:	Returns the value of the specified global variable

Note:	The data will be truncated if the specified buffer is not large enough.

  Check the length word in the request block to find out how many

  bytes should have been copied.

SeeAlso: AX=0004h/SF=0014h,AX=0006h

INT 61


INT 61 0004 - Banyan VINES - SET VALUE OF GLOBAL VARIABLE

Category: N - network

Inp.:

AX = 0004h subfn 0014h

DS:DX -> request block (see #2698)

Return: AX = status

    0000h successful

    0033h invalid request ID (returned if variable index out of range)

Desc:	Assigns a new value to the specified global variable

Note:	If the specified number of bytes to copy exceeds the size of the

  destination variable, nothing will be copied.

SeeAlso: AX=0004h/SF=0013h,AX=0006h

INT 61


INT 61 0004 - Banyan VINES - GET NUMBER OF OPEN FILES ON REMOTE DRIVE

Category: N - network

Inp.:

AX = 0004h subfn 0016h

DS:DX -> request block (see #2699)

Return: AX = status

    0000h open file count returned in request block

Desc:	Counts the number of open files on the specified remote drive.

Note:	No error is returned if the specified drive number is invalid or points

  to a local drive. Use AX=0004h/SF=0006h to test if a given drive

  number is assigned to a remote drive.

SeeAlso: AX=0004h/SF=0006h

INT 61


INT 61 0004 - Banyan VINES - SET UNIDENTIFIED INTERNAL FLAG

Category: N - network

Inp.:

AX = 0004h subfn 0018h

DS:DX -> request block (see #2700)

Return: AX = status

    0000h success

Desc:	Sets an unidentified BYTE variable in the redirector data segment to 1.

Note:	In the VINES 5.53 "REDIR4" redirector, this variable is located at

  DS:0B53.

INT 61


INT 61 0004 - Banyan VINES - UNIDENTIFIED DRIVE SPECIFIC FUNCTION

Category: N - network

Inp.:

AX = 0004h subfn 001Bh

DS:DX -> request block (see #2701)

Return: AX = status

    0000h success

    0034h drive not connected

    0037h drive number out of range

Desc:	The purpose of this function is not known.

INT 61


INT 61 0004 - Banyan VINES - UNIDENTIFIED FUNCTION

Category: N - network

Inp.:

AX = 0004h subfn 001Ch

DS:DX -> request block (see #2702)

Return: AX = status

    0000h success

    0057h invalid number of entries

Desc:	The purpose of this function is not known.

INT 61


INT 61 0004 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ENTER SPECIFY MODE

Category: V - video

Inp.:

AX = 0004h

Range:	unknown

Notes:	Specify Mode is enabled by hot key (seeAlso below), and allows

  panning and zooming via the numeric keypad.

INT 61 is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0007h"OPTIMA",INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0005 - Banyan VINES - PRINT SERVICE CONTROL

Category: N - network

Inp.:

AX = 0005h

DS:DX -> request block (see #2064)

Return: AX = status

    0000h successful

    0001h network software not installed or incompatible

Note:	This service is handled by the redirector

SeeAlso: INT 2F/AX=D702h

INT 61


INT 61 0005 - OPTIMA 1024 VGA-Sync - QUERY ZOOM WINDOW

Category: V - video

Inp.:

AX = 0005h

BX:CX -> buffer for window parameters (see #2065)

Range:	unknown

Notes:	INT 61 is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0003h"OPTIMA",AX=0006h"OPTIMA"

SeeAlso: INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0006 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM WINDOW

Category: V - video

Inp.:

AX = 0006h

BX:CX -> zoom window description (see #2066)

Range:	unknown

Notes:	width of zoom window must be a multiple of the pixel replication (zoom)

  factor

INT 61 is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0001h"OPTIMA",AX=0005h"OPTIMA",AX=0008h"OPTIMA"

SeeAlso: INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0006 - Banyan VINES - GET ADDRESS OF GLOBAL VARIABLE

Category: N - network

Inp.:

AX = 0006h

BX = bits 14..0: request ID (see #2067)

     bit  15:	 result destination flag (0 for ES:BX, 1 for AX:BX)

Return: AX = status

    0000h successful

    000Bh invalid request

ES:BX -> internal variable (bit 15 of BX was not set)

AX:BX -> internal variable (bit 15 of BX was set)

Note:	This service is handled by the redirector

SeeAlso: AX=0004h/SF=0013h,AX=0004h/SF=0014h

INT 61


INT 61 0007 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY APPLICATION KEY

Category: V - video

Inp.:

AX = 0007h

Return: AX = current state (0000h/0001h)

Desc:	returns the current toggle state of the application (END) key in

  specify mode. E.g. in the OPTIMA AutoCAD driver, 0 means AutoCAD

  calls INT 61/AX=0001h every time the crosshair cursor moves.

Notes:	In specify mode, the END key has been reserved for applications.

INT 61 is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0001h"OPTIMA",AX=0004h"OPTIMA"

SeeAlso: INT 16/AH=FFh"OPTIMA",INT 7A/AX=0001h"AutoCAD"

INT 61


INT 61 0007 - Banyan VINES - RECONNECT TO STREETTALK

Category: N - network

Inp.:

AX = 0007h

BX = 0000h

Return: AX = status (see #2068)

SeeAlso: AX=0007h/BX=0002h

INT 61


INT 61 0007 - Banyan VINES - GET MM PORT FOR A SERVICE

Category: N - network

Inp.:

AX = 0007h

BX = 0001h

DS:DX -> StreetTalk service name (64 bytes)

DS:DI -> 16-byte buffer for IPC port (see #1971 at AX=0001h"Sosock")

Return: AX = status (see #2068)

Notes:	This function calls AX=0007/BX=0002h with the port count set to 1 and

  the port type set to 00h

SeeAlso: AX=0007h/BX=0002h,AX=0007h/BX=0004h,AX=0007h/BX=000Ah

INT 61


INT 61 0007 - Banyan VINES - GET PORTS FOR A SERVICE

Category: N - network

Inp.:

AX = 0007h

BX = 0002h

DS:DX -> StreetTalk service name

DS:DI -> port record block (see #2069)

Return: AX = status (see #2068)

Note:	if the requested number of ports is greater than five, it will be reset

  to five

SeeAlso: AX=0007h,BX=0001h,AX=0007h/BX=0003h,AX=0007h/BX=0004h

SeeAlso: AX=0007h/BX=000Ah

INT 61


INT 61 0007 - Banyan VINES - FIND A SERVICE

Category: N - network

Inp.:

AX = 0007h

BX = 0003h

DS:DX -> port control block (see #2070)

Return: AX = status (see AX=0007h)

SeeAlso: AX=0007h/BX=0002h,AX=0007h/BX=0004h,AX=0007h/BX=0005h

INT 61


INT 61 0007 - Banyan VINES - SET PORTS FOR A SERVICE

Category: N - network

Inp.:

AX = 0007h

BX = 0004h

DS:DX -> StreetTalk name of service (max 64 bytes)

DS:DI -> port record block (see #2071)

Return: AX = status (see #2068)

SeeAlso: AX=0007h/BX=0002h,AX=0007h/BX=0003h,AX=0007h/BX=000Ah

INT 61


INT 61 0007 - Banyan VINES - GET USER NAME

Category: N - network

Inp.:

AX = 0007h

BX = 0005h

DS:DX -> 64-byte buffer for user's StreetTalk name

Return: AX = status (see also #2068)

    0000h successful

    0001h network software not installed or incompatible

Note:	if no user logged in, first byte of returned name will be 00h

SeeAlso: AX=0007h/BX=0007h

INT 61


INT 61 0007 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING

Category: N - network

Inp.:

AX = 0007h

BX = 0006h

SI = error code (>100)

DS:DX -> 80-byte buffer for error text

Return: AX = status (see also #2068)

    0000h successful

    0001h network software not installed or incompatible

INT 61


INT 61 0007 - Banyan VINES - VERIFY EXISTENCE OF NAME AND RETURN CANONICAL FORM

Category: N - network

Inp.:

AX = 0007h

BX = 0007h

DS:DX -> NiceName block (see #2072)

Return: AX = status (see #2068)

SeeAlso: AX=0007h/BX=0005h,AX=0007h/BX=0008h

INT 61


INT 61 0007 - Banyan VINES - ENUMERATE StreetTalk NAMES

Category: N - network

Inp.:

AX = 0007h

BX = 0008h

DS:DX -> enumerate block (see #2073)

Return: AX = status (see also #2068)

    0000h successful

    0411h all matching names have been returned

    0412h some groups unavailable, all available matches returned

Note:	each program using this call should continue until a nonzero status

  is returned; otherwise, some resources will not be freed for several

  hours

SeeAlso: AX=0007h/BX=0005h,AX=0007h/BX=0007h,AX=0007h/BX=0009h

INT 61


INT 61 0007 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING (SELECTED PORT)

Category: N - network

Inp.:

AX = 0007h

BX = 0009h

SI = error code

DS:DX -> 80-byte buffer for error text

DS:DI -> IPC port (16 bytes; see AX=0001h#"Sosock" for port format)

Return: AX = status (see AX=0007h)

Note:	Same as AX=0007h/BX=0006h, except IPC port is specified explicitly

SeeAlso: AX=0007h/BX=0006h

INT 61


INT 61 0007 - Banyan VINES - internal, OS/2 only - GET MANY PORTS FOR SERVICE

Category: N - network

Inp.:

AX = 0007h

BX = 000Ah

DS:DX -> port control block (see #2076)

Return: AX = status (see AX=0007h)

Note:	This function cannot be called from applications, as the DS register

  is checked against the redirector data segment address (status code

  0001h will be returned if DS doesn't match)

SeeAlso: AX=0007h/BX=0001h,AX=0007h/BX=0002h,AX=0007h/BX=0004h

INT 61


INT 61 0008 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM OFFSET

Category: V - video

Inp.:

AX = 0008h

BX = X start of zoom offset

CX = Y start of zoom offset

Desc:	specifies the first byte of video memory to appear in the zoom window

Range:	unknown

Notes:	INT 61 is the default interrupt; the actual interrupt number can be

  obtained by calling INT 16/AH=FFh

not all vendors include the Tseng TSR which supports these functions

SeeAlso: AX=0000h"OPTIMA",AX=0006h"OPTIMA",INT 16/AH=FFh"OPTIMA"

INT 61


INT 61 0008 - Banyan VINES - TALKPORT SERVICE - GET HANDLER ADDRESS

Category: N - network

Inp.:

AX = 0008h

BX = 0000h

Return: AX = status

    0000h successful

ES:DX = far pointer to handler

Desc:	The TalkPort is a facility to display event messages (e.g. mail

  received, printing on a local printer, ...) on the screen

Note:	This service is handled by the redirector

SeeAlso: AX=0008h/BX=0001h,AX=0008h/BX=0002h

INT 61


INT 61 0008 - Banyan VINES - TALKPORT SERVICE - SET HANDLER ADDRESS

Category: N - network

Inp.:

AX = 0008h

BX = 0001h

ES:DX -> new handler

Return: AX = status

    0000h successful

SeeAlso: AX=0008h/BX=0000h

INT 61


INT 61 0008 - Banyan VINES - TALKPORT SERVICE - POST MESSAGE ON LOCAL DISPLAY

Category: N - network

Inp.:

AX = 0008h

BX = 0002h

CX = message display flags (see #2077)

DS:DX -> ASCIZ string to display (only first 80 chars used)

Return: AX = status

    0000h successful

    000Bh message display function currently busy

    000Ch message queue full

Notes:	queues up to three messages to be displayed on the bottom line

This service is handled by the redirector

In a DOS session, TalkPort messages are displayed on display line 25;

  in a Windows session, TalkPort messages are displayed in dialog boxes

SeeAlso: AX=0008h/BX=0000h,AX=0008h/BX=0003h

INT 61


INT 61 0008 - Banyan VINES - TALKPORT SERVICE - INTERCEPT VINES 25th-LINE MESSAGES

Category: N - network

Inp.:

AX = 0008h

BX = 0003h

DS:DX -> request block (see #2078)

Return: AX = status

    0000h successful

    0001h network software not installed or incompatible

Notes:	message handler should not call BIOS or DOS functions, and should

  either call next handler or simply return

to stop intercepting messages, set prev and next request blocks to

  point at each other

SeeAlso: AX=0008h/BX=0002h

INT 61


INT 61 0009 - Banyan VINES - NETBIOS CLIENT SERVICE

Category: N - network

Inp.:

AX = 0009h

other parameters, if any, unknown

INT 61


INT 61 000A - Banyan VINES - SECONDARY 3270 INTERFACE

Category: N - network

Inp.:

AX = 000Ah

Note:	either 3270/SNA or 3270/BSC interface will use AX=000Ah, depending on

  which is loaded second.  The first interface loaded will use AX=0002h

SeeAlso: INT 61/AX=0002h

INT 61


INT 61 000B - Banyan VINES - SEMAPHORE SERVICE

Category: N - network

Inp.:

AX = 000Bh

other parameters, if any, unknown

INT 61


INT 61 000C - Banyan VINES - 3270 KEYBOARD HANDLER

Category: N - network

Inp.:

AX = 000Ch

other parameters, if any, unknown

INT 61


INT 61 000D - Banyan VINES - T3270 SERVICE FUNCTION

Category: N - network

Inp.:

AX = 000Dh

other parameters, if any, unknown

INT 61


INT 61 000E - Banyan VINES - ENHANCED 3270 SERVICE

Category: N - network

Inp.:

AX = 000Eh

other parameters, if any, unknown

INT 61


INT 61 000F - Banyan VINES - VINES SOCKET API (FAR DATA)

Category: N - network

Inp.:

AX = 000Fh

CX:BX -> request block (see #2709)

DX = application's data segment (should be = CX)

ES = DS

Return: AX = status

    0000h successful

    0099h invalid operation

    00A5h resource not available

Desc:	StreetTalk access with session handles

Notes:	This service is handled by the adapter driver

The request dispatch table contains dummy entries for subfunctions

  06h, 0Dh, 0Eh, 0Fh, 10h, and 11h, which always return error 0099h

  (invalid operation) in the request block's result buffer

This interface does the same as the corresponding AX=0001h interface,

  but with a slightly modified request block structure (i.e it allows

  FAR parameter block pointers) and without expecting DS=0001h

Some adapter drivers (e.g. the NDIS2 token ring driver NDTOKBAN for

  VINES 5.53) ignore the value in CX and use the value from DX instead

SeeAlso: AX=0001h,AX=000Fh/SF=0001h

INT 61


INT 61 000F - Banyan VINES - OPEN SOCKET

Category: N - network

Inp.:

AX = 000Fh subfn 0001h

CX:BX -> request block (see #2703)

DX = application's data segment (should be = CX)

ES = DS

Return: AX = status

    0000h successful

    00A5h resource not available

Desc:	Opens a socket and returns a socket handle

INT 61


INT 61 000F - Banyan VINES - SEND MESSAGE ON A SOCKET

Category: N - network

Inp.:

AX = 000Fh subfn 0002h

CX:BX -> request block (see #2705)

DX = application's data segment (should be = CX)

ES = DS

Return: AX = status

    0000h successful

    00A5h resource not available

Desc:	send data to a socket identified by its socket handle

INT 61


INT 61 000F - Banyan VINES - CLOSE SOCKET

Category: N - network

Inp.:

AX = 000Fh subfn 0004h

CX:BX -> request block (see #2707)

DX = application's data segment (should be = CX)

ES = DS

Return: AX = status

    0000h successful

    00A5h resource not available

Desc:	Closes a socket identified by its socket handle

INT 61


INT 61 000F - Banyan VINES - GET PROCESS HANDLE

Category: N - network

Inp.:

AX = 000Fh subfn 0008h

CX:BX -> request block (see #2708)

DX = application's data segment (should be = CX)

ES = DS

Return: AX = status

    0000h successful

    00A5h resource not available

Desc:	Returns a process handle to be used in other request blocks

Notes:	This function is a prerequisite to all AX=000Fh subfunctions which

  expect a process handle in the request block

Although subsequent calls from the same application return different

  process handles, there seem to be no restrictions on how many times

  an application may call this function (in fact, the code in the VINES

  toolkit library always calls it before issueing other AX=000Fh calls)

INT 61


INT 61 0010 - Banyan VINES - INTERFACE TO NBNS

Category: N - network

Inp.:

AX = 0010h

other parameters, if any, unknown

INT 61


INT 61 01-- - Banyan VINES - CHECK SERVICE

Category: N - network

Inp.:

AH = 01h

AL = service ID (see #2080)

Return: AX = status

    0000h installed

    0001h not installed

    0002h invalid ID

    0003h invalid function

Note:	Only the offset part of the service pointer is checked for a nonzero

  value

SeeAlso: AH=00h,AH=02h"VINES",AH=03h"VINES"

INT 61


INT 61 01-- - PC/TCP kernel v2.1+ - "net_config" - CONFIGURE RUNNING KERNEL

partially documented function

Category: N - network

Inp.:

AH = 01h

BX = 0000h

DH = tag number

DL = device number

DS:SI -> buffer to send to kernel

ES:DI -> integer containing size of buffer

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

Notes:	there are a large number of tags available; the items returned

  all refer to local kernel configuration, and are not needed in

  normal use.

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=02"PC/TCP"

INT 61


INT 61 02-- - Banyan VINES - GET REVISION NUMBER

Category: N - network

Inp.:

AH = 02h

DS:DX -> 2-byte buffer for result

Return: AX = 0000h installed

    DS:DX buffer contains revision number as

10000d * major_ver + 100d * minor_ver + patch_revision

SeeAlso: AH=01h"VINES",AH=04h"VINES",AH=07h"VINES"

INT 61


INT 61 02-- - PC/TCP kernel v2.1+ - "get_kernel_info" - GET MISCELLAN LOCAL INFO

partially documented function

Category: N - network

Inp.:

AH = 02h

BX = 0000h

DH = tag number

DL = device number

DS:SI -> buffer for result (up to 48 bytes for version <= 2.2)

ES:DI -> integer containing size of buffer

Return: CF clear if successful

    Data loaded into specified buffer, and size value altered

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

Notes:	there are a large number of tags available; the items returned

  all refer to local kernel configuration, and are not needed in

  normal use.

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=01h"PC/TCP"

INT 61


INT 61 03-- - Banyan VINES - INSTALL SERVICE HANDLER

Category: N - network

Inp.:

AH = 03h

AL = service ID (see #2080)

DS:DX -> new service handler

Return: AX = 0000h successful

SeeAlso: AH=00h,AH=01h"VINES",AH=02h"VINES",AH=05h"VINES"

INT 61


INT 61 04-- - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE

Category: N - network

Inp.:

AH = 04h

DS:DX -> 2-byte buffer containing the VINES revision number

    DS:DX buffer contains revision number as

10000d * major_ver + 100d * minor_ver + patch_revision

Return: AX = status

    0000h valid version

    0004h out of range

Note:	For Revision 5.53, the valid range is 4.10(0) to 6.19(99)

SeeAlso: AH=02h"VINES",AH=07h"VINES",AH=08h"VINES"

INT 61


INT 61 05-- - PC/TCP kernel v2.05+ - "get_addr" - GET INTERNET ADDRESS OF NET DESCR

Category: N - network

Inp.:

AH = 05h

BX = network descriptor

Return: CF clear if successful

    DX:AX = Internet address of ND

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

Notes:	the installation check consists of testing for the signature "TCPTSR"

  three bytes beyond the start of the interrupt handler

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=16h"PC/TCP"

SeeAlso: INT 63/AH=25h"BW-TCP"

INT 61


INT 61 05-- - Banyan VINES - READ PCCONFIG BYTES

Category: N - network

Inp.:

AH = 05h

CX = number of bytes to copy

    (max. 0175h for VINES 4.00, max. 017Fh for VINES 4.10+)

SI = offset of area to be copied (see #2081,#2082)

Return: AX = status

    0000h successful

    0004h out of range

Notes:	The PCCONFIG area is located in the code segment of the BANV handler

To find out which PCCONFIG structure applies, call this function first

  with CX=0006h to get the VINES revision number

SeeAlso: AH=02h"VINES",AH=04h"VINES",AH=06h"VINES",AH=0Bh"VINES"

INT 61


INT 61 06-- - PC/TCP kernel v2.05 - "net_info" - GET INTERFACE STATISTICS

Category: N - network

Inp.:

AH = 06h

BX = network descriptor (must be allocated and open)

DS:SI -> 38-byte buffer for interface statistics (see #2084)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (see #1962)

Desc:	returns the statistics relevant to the particular network interface

   used by the specified network descriptor

Range:	INT 20 to INT E0, selected by configuration

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=05h"PC/TCP"

INT 61


INT 61 06-- - Banyan VINES - GET PCCONFIG BASE ADDRESS

Category: N - network

Inp.:

AH = 06h

DS:DX -> 4-byte buffer for far pointer to PCCONFIG area

Return: AX = 0000h successful

Note:	The PCCONFIG area is located in the code segment of the BANV handler

SeeAlso: AH=05h"VINES",AH=0Bh"VINES"

INT 61


INT 61 07-- - PC/TCP kernel v2.05+ - "net_globalize" - MAKE NET DESCRIPTOR GLOBAL

Category: N - network

Inp.:

AH = 07h

BX = local network descriptor

Return: CF clear if successful

    AX = global network descriptor

CF set on error

    AX = error code (see #1962)

Notes:	the new network descriptor can be accessed from all processes and is

  independent of DOS

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=08h"PC/TCP"

SeeAlso: INT 61/AH=29h

INT 61


INT 61 07-- - Banyan VINES - GET VINES REVISION NUMBER (LONG)

Category: N - network

Inp.:

AH = 07h

DS:DX -> 4-byte buffer for result

Return: AX = 0000h successful

    DS:DX buffer contains revision number as

10000d * major_ver + 100d * minor_ver + patch_revision

SeeAlso: AH=02h"VINES",AH=04h"VINES",AH=08h"VINES"

INT 61


INT 61 08-- - PC/TCP kernel v2.05+ - "net_release" - CLOSE A NETWORK DESCRIPTOR

Category: N - network

Inp.:

AH = 08h

BX = network descriptor

Return: CF clear if successful

    AX = 0000h (BWPCTCP shim)

CF set on error

    AX = error code (see #1962)

Range:	INT 20 to INT E0, selected by configuration

Note:	the descriptor will be closed and resources released.  If a stream

  descriptor, the protocol (FIN etc) is completed unless the

  non-blocking option has been set.

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=09h"PC/TCP"

SeeAlso: INT 63/AH=0Eh"BW-TCP"

INT 61


INT 61 08-- - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE (LONG)

Category: N - network

Inp.:

AH = 08h

DS:DX -> 4-byte buffer containing the VINES revision number

    DS:DX buffer contains revision number as

10000d * major_ver + 100d * minor_ver + patch_revision

Return: AX = status

    0000h valid version

    0004h out of range

Note:	For Revision 5.53, the valid range is 4.10(0) to 6.19(99)

SeeAlso: AH=04h"VINES",AH=07h"VINES"

INT 61


INT 61 09-- - PC/TCP kernel v2.05+ - "net_releaseall" - CLOSE ALL NON-GLOBAL DESCRS

Category: N - network

Inp.:

AH = 09h

Return: CF clear

Range:	INT 20 to INT E0, selected by configuration

Notes:	this call performs function 08h on every non-global network descriptor.

  Global descriptors must be released individually.

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=08h"PC/TCP"

SeeAlso: INT 63/AH=0Eh"BW-TCP"

INT 61


INT 61 09-- - Banyan VINES - GET VALUE OF AN OS/2 BACKEND VARIABLE

Category: N - network

Inp.:

AH = 09h

other parameters, if any, unknown

SeeAlso: AH=0Ah"VINES"

INT 61


INT 61 0A-- - PC/TCP kernel v2.05 - "net_send" - ???

Category: N - network

Inp.:

AH = 0Ah

???

Return: ???

Notes:	this function is described as "unused" in the v2.05 and v2.2

  documentation

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: AH=0Bh

INT 61


INT 61 0A-- - Banyan VINES - SET VALUE OF AN OS/2 BACKEND VARIABLE

Category: N - network

Inp.:

AH = 0Ah

other parameters, if any, unknown

SeeAlso: AH=09h"VINES"

INT 61


INT 61 0B-- - PC/TCP kernel v2.05 - "net_sendto" - ???

Category: N - network

Inp.:

AH = 0Bh

???

Return: ???

Range:	INT 20 to INT E0, selected by configuration

Notes:	this function is described as "unused" in the v2.05 and v2.2

  documentation

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: AH=0Ah

INT 61


INT 61 0B-- - Banyan VINES - SET PCCONFIG IN BACKEND

Category: N - network

Inp.:

AH = 0Bh

other parameters, if any, unknown

SeeAlso: AH=05h"VINES",AH=06h"VINES"

INT 61


INT 61 0C-- - PC/TCP kernel v2.05+ - "net_stat" - GET CONNECTION STATISTICS

partially documented function

Category: N - network

Inp.:

AH = 0Ch

BX = network descriptor or one of the following:

    FFFCh for kernel ICMP statistics (see #2088)

    FFFDh for kernel UDP statistics (see #2087)

    FFFEh for kernel IP statistics (see #2086)

    FFFFh for kernel TCP statistics (see #2085)

DS:DX -> 64-byte buffer

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (see #1962)

Notes:	the fields filled in for a network descriptor depend on the protocol

  family used by that descriptor's connection

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 0D-- - PC/TCP kernel v2.05+ - "is_netnd" - CHECK IF NETWORK DESCRIPTOR VALID

Category: N - network

Inp.:

AH = 0Dh

BX = possible network descriptor

Return: CF clear if valid

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=08h"PC/TCP"

SeeAlso: INT 61/AH=22h

INT 61


INT 61 0E-- - PC/TCP kernel v2.05+ - "net_select" - DETECT READINESS OF NETWORK

Category: N - network

Inp.:

AH = 0Eh

BX = maximum value of network descriptor for which to return info

DS:DX -> 32-bit (max) array of bit flags for read readiness

ES:DI -> 32-bit (max) array of bit flags for write readiness

Return: CF clear

Range:	INT 20 to INT E0, selected by configuration

Notes:	bits in the DS:DX buffer are set if the corresponding network

  descriptor may be read without blocking; bits in the ES:DI buffer

  are set if the corresponding network descriptor may be written

  without blocking.  This implies that the network descriptor has

  opened correctly and the protocol initialized.

the installation check consists of testing for the signature "TCPTSR"

  three bytes beyond the start of the interrupt handler

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 0F-- - PC/TCP kernel v2.05+ - "get_netversion" - GET SOFTWARE VERSION

Category: N - network

Inp.:

AH = 0Fh

Return: CF clear

AX = version (AH = major, AL = minor)

BX = patch level

Notes:	patch levels are no longer used starting with version 2.10; instead,

  the minor version level is incremented.

Beame&Whiteside's BWPCTCP v3.0a shim reports version 2.05, but does not

  set BX

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 10-- - PC/TCP kernel v2.05+ - "net_shutdown" - UNINSTALL

Category: N - network

Inp.:

AH = 10h

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

Note:	this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 11-- - PC/TCP kernel v2.05+ - "disable_async" - DISABLE ASYNCHRONOUS HANDLERS

Category: N - network

Inp.:

AH = 11h

Return: CF clear

AX = previous state

    0000h async calls were already disabled

    else  async calls were enabled

SeeAlso: INT 61"PC/TCP",INT 61/AH=12h

INT 61


INT 61 12-- - PC/TCP kernel v2.05+ - "enable_async" - ENABLE ASYNCHRONOUS HANDLERS

Category: N - network

Inp.:

AH = 12h

Return: CF clear

AX = previous state

    0000h async calls were disabled

    else  async calls were already enabled

SeeAlso: INT 61"PC/TCP",INT 61/AH=11h

INT 61


INT 61 13-- - PC/TCP kernel v2.05 - "net_connect" - OPEN A NETWORK CONNECTION

Category: N - network

Inp.:

AH = 13h

BX = network descriptor (FFFFh for automatic net_getdesc)

DX = protocol (see #2089)

DS:SI -> buffer for "addr" structure (see #2090)

Return: CF clear if successful

    AX = network descriptor used or allocated

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Notes:	resets the connection with AH=19h in various cases

will wait for protocol on stream connections unless non-blocking was

  set with AH=20h

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=18h,INT 61/AH=23h

SeeAlso: INT 63/AH=14h"BW-TCP"

INT 61


INT 61 14-- - PC/TCP kernel v2.05 - "net_recv" - NO LONGER SUPPORTED

obsolete (no longer present in current versions)

partially documented function

Category: N - network

Inp.:

AH = 14h

BX = network descriptor

Return: CF set

    AX = 0018h (see #1962 at INT 61"PC/TCP")

Notes:	displays error message "Illegal system call!  Please upgrade your

  PCserver software" to standard output

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=0Ah,INT 61/AH=15h

INT 61


INT 61 15-- - PC/TCP kernel v2.05 - "net_recvfrom" - ???

Category: N - network

Inp.:

AH = 15h

???

Return: ???

Notes:	this function is described as "unused" in the v2.2 documentation

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61/AH=0Bh,INT 61/AH=14h

INT 61


INT 61 16-- - PC/TCP kernel v2.05+ - "net_peer" - GET DATA ON REMOTE PEER

Category: N - network

Inp.:

AH = 16h

BX = network descriptor

DS:DX -> 9-byte buffer for "addr" structure (see #2090)

Return: CF clear if successful

    buffer filled

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 17-- - PC/TCP kernel v2.05+ - "net_reconfig" - RE-READ KERNEL CONFIGURATION

Category: N - network

Inp.:

AH = 17h

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Notes:	this routine is deprecated in v2.1+ and will eventually be withdrawn;

  in v2.1+, this function calls AH=01h which should be used instead

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=01h"PC/TCP"

INT 61


INT 61 18-- - PC/TCP kernel v2.05+ - "net_eof" - CLOSE TRANSMIT SIDE OF CONNECTION

Category: N - network

Inp.:

AH = 18h

BX = network descriptor

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	a TCP "FIN" command is sent and no further data may be transmitted,

  although the connection remains open

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=13h"PC/TCP"

SeeAlso: INT 63/AH=0Eh"BW-TCP"

INT 61


INT 61 19-- - PC/TCP kernel v2.05+ - "net_abort" - RESET A NETWORK CONNECTION

Category: N - network

Inp.:

AH = 19h

BX = network descriptor

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Desc:	immediately destroys the specified connection

Note:	send a TCP "RST" command if a stream connection is open

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=24h

INT 61


INT 61 1A-- - PC/TCP kernel v2.05+ - "net_write" - WRITE TO THE NETWORK

Category: N - network

Inp.:

AH = 1Ah

BX = network descriptor

CX = number of bytes to transmit (0000h allowed)

DX = send options (see #2091)

DS:SI -> data to be written

Return: CF clear if successful

    AX = number of bytes actually written

    DX = ???

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20h to INT E0h, selected by configuration

Notes:	the installation check consists of testing for the signature "TCPTSR"

  three bytes beyond the start of the interrupt handler

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=1Bh,INT 61/AH=1Ch

SeeAlso: INT 63/AH=19h"BW-TCP",INT 63/AH=1Bh"BW-TCP"

INT 61


INT 61 1B-- - PC/TCP kernel v2.05+ - "net_read" - READ FROM THE NETWORK

Category: N - network

Inp.:

AH = 1Bh

BX = network descriptor

CX = maximum number of bytes to read

DX = receive options (see #2092)

DS:SI -> buffer for data

ES:DI -> "addr" structure (see #2090) for remote from which to read

0000h:0000h for any

Return: CF clear if successful

    AX = number of bytes actually read

    DX = ???

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=1Ah,INT 61/AH=1Dh

INT 61


INT 61 1C-- - PC/TCP kernel v2.05+ - "net_writeto" - WRITE A DATAGRAM

Category: N - network

Inp.:

AH = 1Ch

BX = network descriptor

CX = number of bytes to transmit (0000h allowed)

DX = send options (see #2091)

DS:SI -> data to be written

ES:DI -> "addr" structure (see #2090)

Return: CF clear if successful

    AX = number of bytes actually written

    DX = ???

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function differs from AH=1Ah in that the address and socket

  numbers can be overridden

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=1Ah,INT 61/AH=1Dh

SeeAlso: INT 63/AH=21h"BW-TCP"

INT 61


INT 61 1D-- - PC/TCP kernel v2.05+ - "net_readfrom" - READ A DATAGRAM

Category: N - network

Inp.:

AH = 1Dh

BX = network descriptor

CX = maximum number of bytes to read

DX = receive options (see #2091)

DS:SI -> buffer for received data

ES:DI -> 9-byte buffer containing "addr" structure (see #2090)

Return: CF clear if successful

    AX = number of bytes read

    DX = ???

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Notes:	this function can read from any host or a designated host depending

  on settings in the "addr" structure

only for use with datagram or Raw descriptors

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=1Bh,INT 61/AH=1Ch

INT 61


INT 61 1E-- - PC/TCP kernel v2.05+ - "net_flush" - FLUSH PENDING DATA

Category: N - network

Inp.:

AH = 1Eh

BX = network descriptor

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

Notes:	bufferred data is transmitted immediately, overriding Nagle's algorithm

  if necessary

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 1F-- - PC/TCP kernel v2.05+ - "net_asynch" - SET UP ASYNCHRONOUS CALL-BACK

Category: N - network

Inp.:

AH = 1Fh

BX = network descriptor

CX = event type (see #2093)

DS:SI -> event handler routine (see #2094)

ES:DI = 32-bit hint passed to handler

Return: CF clear if successful

    DS:DX -> previous handler

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	ICMP messages do not trigger events on stream connections

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 20-- - PC/TCP kernel v2.05+ - "set_option" - SET AN OPTION ON A DESCRIPTOR

Category: N - network

Inp.:

AH = 20h

BX = network descriptor

CX = length of buffer (usually 04h)

DS:DX -> buffer containing option

SI = (ignored by v2.2-)

DI = option to set (see #2095)

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	Beame&Whiteside's BWPCTCP shim only supports options 01h and 0Bh; all

  others return CF clear

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=21h

INT 61


INT 61 21-- - PC/TCP kernel v2.05+ - "get_option" - GET OPTIONS APPLIED TO NET DESCR

Category: N - network

Inp.:

AH = 21h

BX = network descriptor

CX = length of buffer

DS:DX -> buffer for return values

SI = 0004h (ignored by v2.2-)

DI = option (see #2095)

Return: CF clear if successful

    DS:DX -> value (usually 32 bits) returned by selected option

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=20h

INT 61


INT 61 22-- - PC/TCP kernel v2.05+ - "net_getdesc" - ALLOCATE NETWORK DESCRIPTOR

partially documented function

Category: N - network

Inp.:

AH = 22h

Return: CF clear if successful

    AX = network descriptor

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	the descriptor will be an integer in the range 00h-1Fh, and a DOS call

  is made to allocate this as a file descriptor.  Hence a number may

  not refer to a PC/TCP network descriptor and a DOS file handle

  simultaneously.

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=13h,INT 61/AH=29h

INT 61


INT 61 23-- - PC/TCP kernel v2.05+ - "net_listen" - LISTEN FOR INCOMING CONNECTIONS

Category: N - network

Inp.:

AH = 23h

BX = network descriptor or FFFFh to allocate descriptor

DX = type of service

DS:SI -> "addr" structure (see #2090)

Return: CF clear if successful

    AX = network descriptor

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Notes:	type of service and "addr" structure are as for AH=13h

any of the address structure can be zero; normally local socket number

  is filled in prior to call

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=13h

SeeAlso: INT 63/AH=12h"BW-TCP"

INT 61


INT 61 24-- - PC/TCP kernel v2.05+ - "net_abortall" - RESET ALL NETWORK CONNECTIONS

Category: N - network

Inp.:

AH = 24h

Return: always successful

Note:	performs "net_abort" (AH=19h) on all open non-global descriptors

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=19h

INT 61


INT 61 25-- - PC/TCP kernel v2.05+ - "ad_res_name" - GET HOST NAME GIVEN ADDRESS

Category: N - network

Inp.:

AH = 25h

DX,BX = IP address in network order

CX = length of buffer for name

DS:SI -> buffer for host name

Return: CF clear if successful

   buffer filled with ASCIZ host name

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function will use the host table and or DNS to resolve the

  address, depending on kernel configuration.  Use this call for the

  normal gethostbyaddr function.

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=26h,INT 61/AH=27h

INT 61


INT 61 26-- - PC/TCP kernel v2.05+ - "ad_htable" - GET HOST NAME FROM LOCAL TABLE

Category: N - network

Inp.:

AH = 26h

DX,BX = IP address in network order

CX = length of buffer

DS:SI -> buffer for host name

Return: CF clear if successful

    buffer filled with ASCIZ host name

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Notes:	normally one would use AH=25h instead of this function

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=25h,INT 61/AH=27h

INT 61


INT 61 27-- - PC/TCP kernel v2.05+ - "ad_domain" - GET HOST NAME FROM DNS

Category: N - network

Inp.:

AH = 27h

DX,BX = IP address in network order

CX = length of buffer

DS:SI -> buffer for host name

Return: CF clear if successful

    buffer filled with ASCIZ host name

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	normally one would use AH=25h instead of this function

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=25h,INT 61/AH=26h

INT 61


INT 61 28-- - PC/TCP kernel v2.05+ - "net_swap" - EXCHANGE TWO NETWORK DESCRIPTORS

Category: N - network

Inp.:

AH = 28h

BX = network descriptor 1

CX = network descriptor 2

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	the two descriptors will exchange places; both must be local or both

  global

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 29-- - PC/TCP kernel v2.05+ - "net_getglobdesc" - ALLOCATE GLOBAL DESCRIPTOR

Category: N - network

Inp.:

AH = 29h

Return: CF clear if successful

    AX = network descriptor

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	use this function rather than AH=22h to avoid a DOS call by the PC/TCP

  kernel; the returned descriptor will be >= 40h and cannot be used

  with "net_select" (AH=0Eh)

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=07h"PC/TCP"

SeeAlso: INT 61/AH=22h

INT 61


INT 61 2A-- - PC/TCP kernel v2.05+ - GET CONFIGURATION INFORMATION

Category: N - network

Inp.:

AH = 2Ah

DS:SI -> 26-byte buffer for configuration information (see #2096)

Return: CF clear

AX = 0000h

buffer filled

Notes:	size of buffer may vary with kernel version; 26 bytes is the size for

  versions 2.05 through 2.2

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 2B-- - PC/TCP kernel v2.02+ - "net_alarm" - SET TIMED ASYNCHRONOUS EVENT

Category: N - network

Inp.:

AH = 2Bh

BX = network descriptor

CX,DX = time before alarm in milliseconds

DS:SI -> handler which will receive call (see #2094 at INT 61/AH=1Fh)

ES:DI = 32-bit cookie passed to handler

Return: CF clear if successful

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Notes:	this function will cause a NET_AS_ALARM to be generated; it is intended

  for TSRs, etc. to regain control periodically

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 30-- - PC/TCP kernel v2.05+ - "icmp_ping" - SEND ICMP ECHO REQUEST (PING)

Category: N - network

Inp.:

AH = 30h

BX,DX = IP address of host

CX = length of data to send

Return: CF clear if successful (i.e. reply received)

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP"

INT 61


INT 61 ---- - PC/TCP kernel v2.05 - NOP for SLIP kernel

partially documented function

Category: N - network

Inp.:

AH = function

    31h "net_add_route"

    32h "net_del_route"

    33h "net_dump_routes"

Notes:	these functions are described as "unused" in the v2.2 documentation

router configuration can be altered using INT 61/AH=01h

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

INT 61


INT 61 32-- - PC/TCP kernel v2.3 - GET ???

undocumented function

Category: N - network

Inp.:

AH = 32h

Return: AX = ???

Note:	this function is fully re-entrant, and may be called even when another

  PC/TCP kernel call is already in progress

INT 61


INT 61 34-- - PC/TCP kernel v2.1+ - "icmp_destun" - ???

undocumented function

Category: N - network

Inp.:

AH = 34h

???

Return: ???

Notes:	this function is described as "reserved" in the v2.2 documentation

this function is not supported by Beame&Whiteside's BWPCTCP v3.0a shim

INT 61


INT 61 50-- - PC/TCP kernel v2.05+ - "nm_prs_addr" - TRANSLATE NUMERICAL IP ADDRESS

Category: N - network

Inp.:

AH = 50h

DS:DX -> ASCIZ IP address as "dotted quad" (max 127 chars)

Return: CF clear if successful

    DX:AX -> IP address

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=54h

INT 61


INT 61 51-- - PC/TCP kernel v2.05+ - "nm_htable" - RESOLVE NAME USING HOST TABLE

Category: N - network

Inp.:

AH = 51h

CX = size of destination buffer

DS:DX -> ASCIZ host name (max 127 chars)

ES:DI -> destination buffer or 0000h:0000h

Return: CF clear if successful

    DX:AX -> IP address of host

    destination buffer filled with canonical host name

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function calls DOS, and can fail if the DOS call fails

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=54h

INT 61


INT 61 52-- - PC/TCP kernel v2.05+ - "nm_domain" - RESOLVE NAME USING DNS

Category: N - network

Inp.:

AH = 52h

CX = size of destination buffer

DS:DX -> ASCIZ host name (max 127 chars)

ES:DI -> destination buffer or 0000h:0000h

Return: CF clear if successful

    DX:AX -> IP address of host

    destination buffer filled with canonical host name

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function will poll all configured domain name servers if necessary

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=54h

INT 61


INT 61 53-- - PC/TCP kernel v2.05- - "nm_ien116" - RESOLVE HOST NAME USING IEN116

Category: N - network

Inp.:

AH = 53h

DS:DX -> ASCIZ name to be resolved (max 127 chars)

Return: CF clear if successful

    DX:AX -> IP address of host

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Range:	INT 20 to INT E0, selected by configuration

Note:	this function is not supported by v2.10+

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=54h

INT 61


INT 61 54-- - PC/TCP kernel v2.05+ - "nm_res_name" - RESOLVE HOST NAME

Category: N - network

Inp.:

AH = 54h

CX = size of destination buffer

DS:DX -> ASCIZ host name (max 127 chars)

ES:DI -> destination buffer or 0000h:0000h

Return: CF clear if successful

    DX:AX -> IP address of host

    destination buffer filled with canonical host name

CF set on error

    AX = error code (see #1962 at INT 61"PC/TCP")

Note:	this function uses all configured methods in turn to resolve the

  name (numerical, then host table, then DNS, then IEN116)

BUG:	the SLIP kernel for v2.05 bounds-checks the wrong register, so values

  greater than 54h in AH may crash the system.	Other kernels may have

  this bug as well; it has been fixed in the v2.2 SLIPDRV kernel.

SeeAlso: INT 61"PC/TCP",INT 61/AH=00h"PC/TCP",INT 61/AH=50h,INT 61/AH=51h

SeeAlso: INT 61/AH=52h,INT 61/AH=53h

INT 61


INT 61 55-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 55h

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 56-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 56h

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 57-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 57h

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 58-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 58h

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 59-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 59h

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 5A-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 5Ah

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 5B-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 5Bh

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 5C-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 5Ch

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 5D-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 5Dh

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 5E-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 5Eh

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 61 5F-- - PC/TCP kernel v2.3 - ???

undocumented function

Category: N - network

Inp.:

AH = 5Fh

???

Return: ???

SeeAlso: INT 61"PC/TCP"

INT 61


INT 62 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 62


INT 62 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Notes:	this vector stores the third four bytes of the parameter table for

  hard disk 0

SeeAlso: INT 60"Adaptec",INT 61"Adaptec",INT 63"Adaptec"

INT 62


INT 62 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the segment of the RAM data area

  to be used by the expansion ROM at F400h:2000h, and the high word

  contains the length of the data area; this segment and size are

  both set to 0000h if no ROM is installed at F400h:2000h

SeeAlso: INT 61"TI Professional PC",INT 63"TI Professional"

SeeAlso: INT 66"TI Professional PC"

INT 62


INT 62 ---- - HP 95LX - USED BY CALCULATOR

Category: b - vendor-specific BIOS extensions

Inp.:

SeeAlso: INT 60"HP 95LX"

INT 62


INT 62 ---- - MS SQL Server/Sybase DBLIBRARY interface - ???

Category: - - (none)

Inp.:

AH = function (00h to 07h)

CX = FFFEh

DX = FFFFh

???

Return: ???

Note:	the installation check consists of testing for the string "DBLIBRARY"

  2 bytes past the interrupt handler

SeeAlso: AH=08h"SQL"

Index:	installation check;MS SQL Server|installation check;Sybase DBLIBRARY

INT 62


INT 62 ---- - MPAUSE - ???

Category: - - (none)

Inp.:

details not yet avialable

Program: MPAUSE is a program by Manfred Michael which appeared in the German

 _EGA-Handbuch_ from  m&t-Verlag

INT 62


INT 62 ---- - XFS v1.76 - FILTERED PACKET DRIVER API

Category: N - network

Inp.:

Program: XFS is a shareware Network File System client by Robert Juhasz

Desc:	XFS requires a packet driver to operate.  Since it does redirections,

  etc., it provides its own packet driver entry point, changing the

  signature string of the original packet driver to "XKT DRVR" so that

  it will no longer be found by the packet driver installation check

Range:	INT 61 to INT 66, selected by scanning for two consecutive free

  vectors and hooking the second

Note:	the installation check for this vector is the same as that for the

  packet driver specification: scan for the signature string "PKT DRVR"

  three bytes past the interrupt handler

SeeAlso: INT 60"Packet Driver",INT 61"XFS"

INT 62


INT 62 00-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET PHYSICAL HARDWARE ADDRESS

Category: N - network

Inp.:

AH = 00h

DS:DX -> 6-byte buffer for address

Return: AX = length of hardware address???

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=01h"ETHDEV",AH=04h"ETHDEV",AH=09h"ETHDEV",AH=0Eh"ETHDEV"

SeeAlso: AH=14h"ETHDEV",AH=18h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"

SeeAlso: INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 0000 - FGDRIVER v3.03+ - "FG_ALLOCATE" - CREATE VIRTUAL VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 0000h

BX = page number (0000h-003Fh)

Return: AX = status (0000h,0001h,0007h,0008h) (see #2097)

Program: FGDRIVER is the external video driver for the shareware

  Fastgraph/Light by Ted Gruber Software

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

The amount of memory required by the virtual video page depends on the

  current video mode

The installation check consists of testing for the signature "FG" ten

  bytes beyond the start of the interrupt handler

SeeAlso: AX=0001h,AX=0002h,AX=0003h,AX=0038h

Index:	installation check;Fastgraph/Light

INT 62


INT 62 0001 - FGDRIVER v3.03+ - "FG_ALLOCCMS" - CREATE LOGICAL VIDEO PAGE (CONV)

partially documented function

Category: V - video

Inp.:

AX = 0001h

BX = page number (0001h-003Fh)

Return: AX = status (0000h,FFFCh,FFFDh,FFFEh) (see #2097)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

The only operation which is allowed on logical pages is "FG_COPYPAGE"

  (see AX=0014h)

SeeAlso: AX=0000h,AX=0002h,AX=0003h,AX=0014h,AX=0038h

INT 62


INT 62 0002 - FGDRIVER v3.03+ - "FG_ALLOCEMS" - CREATE LOGICAL VIDEO PAGE (EMS)

partially documented function

Category: V - video

Inp.:

AX = 0002h

BX = page number (0001h-003Fh)

Return: AX = status (0000h,FFFCh,FFFDh,FFFEh) (see #2097)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

You must first call "FG_INITEMS" (see AX=005Dh) before using this

  function

The only operation which is allowed on logical pages is "FG_COPYPAGE"

  (see AX=0014h)

SeeAlso: AX=0000h,AX=0001h,AX=0003h,AX=0014h,AX=0038h,AX=005Dh

INT 62


INT 62 0003 - FGDRIVER v3.03+ - "FG_ALLOCXMS" - CREATE LOGICAL VIDEO PAGE (XMS)

partially documented function

Category: V - video

Inp.:

AX = 0003h

BX = page number (0001h-003Fh)

Return: AX = status (0000h,FFFCh,FFFDh,FFFEh) (see #2097)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

You must first call "FG_INITXMS" (see AX=0060h) before using this

  function

The only operation which is allowed on logical pages is "FG_COPYPAGE"

  (see AX=0014h)

SeeAlso: AX=0000h,AX=0001h,AX=0002h,AX=0014h,AX=0038h,AX=0060h

INT 62


INT 62 0004 - FGDRIVER 1.10,3.03+ - "FG_AUTOMODE" - GET VIDEO MODE W/MOST FEATURES

partially documented function

Category: V - video

Inp.:

AX = 0004h

Return: AX = proposed video mode number (see #2111 at AX=00B0h)

Program: FGDRIVER is the external video driver for the shareware

  Fastgraph/Light by Ted Gruber Software

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0005h,AX=004Bh,AX=00B0h,AX=00C1h,AX=00C7h

INT 62


INT 62 0005 - FGDRIVER v3.03+ - "FG_BESTMODE" - GET BEST VIDEO MODE GIVEN RESOLUTN

partially documented function

Category: V - video

Inp.:

AX = 0005h

BX = horizontal resolution

CX = vertical resolution

DX = number of video pages required (both physical and virtual)

Return: AX = proposed video mode number or FFFFh if no matching video mode

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

You must first call "FG_SVGAINIT" (see AX=00C1h) to get SVGA video

  modes

SeeAlso: AX=0004h,AX=004Bh,AX=00B0h,AX=00C1h,AX=00C7h

INT 62


INT 62 0006 - FGDRIVER v3.03+ - "FG_BOX" - DRAW UNFILLED RECTANGLE

partially documented function

Category: V - video

Inp.:

AX = 0006h

BX = left column

CX = right column

DX = top row

SI = bottom row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

The rectangle is drawn in screen space, respecting the clipping region,

  with edges of the width specified with "FG_BOXDEPTH" (see AX=0007h)

  (default = 1 is set by "FG_SETMODE")

This function has no effect in text modes

SeeAlso: AX=0007h,AX=0008h,AX=000Ch,AX=0016h,AX=001Dh,AX=0026h,AX=0051h

SeeAlso: AX=0055h,AX=008Fh

INT 62


INT 62 0007 - FGDRIVER v3.03+ - "FG_BOXDEPTH" - SET RECTANGLE BORDER WIDTH

partially documented function

Category: V - video

Inp.:

AX = 0007h

BX = width of left and right edges in pixels (> 0)

CX = width of top and bottom edges in pixels (> 0)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0006h,AX=0008h,AX=0051h,AX=0055h

INT 62


INT 62 0008 - FGDRIVER v3.03+ - "FG_BOXX" - XOR HOLLOW RECTANGLE

partially documented function

Category: V - video

Inp.:

AX = 0008h

BX = left column

CX = right column

DX = top row

SI = bottom row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

The rectangle is XORed into screen space, respecting the clipping

  region, with edges of the width specified with "FG_BOXDEPTH"

  (see AX=0007h) (default = 1 is set by "FG_SETMODE")

This function has no effect in text modes

SeeAlso: AX=0006h,AX=0007h,AX=0021h,AX=0022h,AX=0051h,AX=0055h,AX=0090h

INT 62


INT 62 0009 - FGDRIVER v3.03+ - "FG_BUTTON" - GET JOYSTICK BUTTON STATE

partially documented function

Category: V - video

Inp.:

AX = 0009h

BX = joystick number (0001h or 0002h)

Return: AX = button states

    bit 0: top button pressed

    bit 1: bottom button pressed

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0052h,AX=0056h,AX=005Eh,AX=0062h,AX=0077h

INT 62


INT 62 000A - FGDRIVER v3.03+ - "FG_CAPSLOCK" - GET STATE OF CAPSLOCK KEY

partially documented function

Category: V - video

Inp.:

AX = 000Ah

Return: AX = CapsLock state (0000h off, 0001h on)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0082h,AX=00A4h,AX=00A8h,AX=00B1h

INT 62


INT 62 000B - FGDRIVER v3.03+ - "FG_CHGATTR" - APPLY CURRENT TEXT ATTRIB TO CHARS

partially documented function

Category: V - video

Inp.:

AX = 000Bh

BX = number of characters to recolor

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in graphics modes

Starting at the current text cursor position, the specified number of

  characters have their attributes to the current text attribute

SeeAlso: AX=000Ch,AX=003Ah,AX=00A6h

INT 62


INT 62 000C - FGDRIVER v3.03+ - "FG_CHGTEXT" - DISPLAY STRING AT CURSOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 000Ch

CX = length of string

ES:BX -> string to be displayed

Return: text cursor updated

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in graphics modes

SeeAlso: AX=000Bh,AX=0096h

INT 62


INT 62 000D - FGDRIVER v3.03+ - "FG_CIRCLE" - DRAW UNFILLED CIRCLE

partially documented function

Category: V - video

Inp.:

AX = 000Dh

BX = radius in horizontal screen space units (> 0)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

The circle is drawn in screen space, centered at the current graphics

  cursor position

This call is ignored in text modes

SeeAlso: AX=0006h,AX=0008h,AX=000Eh,AX=0026h,AX=0093h

INT 62


INT 62 000E - FGDRIVER v3.03+ - "FG_CIRCLEF" - DRAW FILLED CIRCLE

partially documented function

Category: V - video

Inp.:

AX = 000Eh

BX = radius in horizontal screen space units (> 0)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0008h,AX=000Dh,AX=0027h,AX=0092h

INT 62


INT 62 000F - FGDRIVER v4.02 - "FG_CLIPMAP" - DISPLAY CLIPPED IMAGE (MODE-INDEP)

partially documented function

Category: V - video

Inp.:

AX = 000Fh

ES:BX -> bitmap

CX = width

DX = height

Desc:	display a mode-independent bitmap, showing only the portion within

  the current clipping limits

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes and in native EGA and VGA graphics

  modes

The image is drawn with its lower left corner at the current graphics

  cursor position

SeeAlso: AX=0011h,AX=001Fh,AX=0034h,AX=0086h,AX=00A9h,AX=00C5h

INT 62


INT 62 0010 - FGDRIVER v4.02 - "FG_CLIPMASK" - DISPLAY CLIPPED IMAGE (MASKING MAP)

partially documented function

Category: V - video

Inp.:

AX = 0010h

ES:BX -> array containing image stored as a masking map (see #2098)

CX = number of pixel runs in masking map

DX = width of masking map in pixels

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes and in native EGA and VGA graphics

  modes

The image is drawn with its lower left corner at the current graphics

  cursor position

SeeAlso: AX=0011h,AX=001Fh,AX=0034h,AX=00A1h,AX=00A9h,AX=00C5h

INT 62


INT 62 0011 - FGDRIVER v4.02 - "FG_CLPIMAGE" - DISPLAY CLIPPED IMAGE (BITMAP)

partially documented function

Category: V - video

Inp.:

AX = 0011h

ES:BX -> mode-specific bitmap

CX = width of bit map in bytes

DX = height of bit map in pixel rows

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The image is drawn with its lower left corner at the current graphics

  cursor position

The current clipping region is used, extended to a byte boundary

SeeAlso: AX=0010h,AX=0024h,AX=0036h,AX=0044h,AX=00A0h,AX=00A9h,AX=00B9h

INT 62


INT 62 0012 - FGDRIVER v4.02 - "FG_CLPRECT" - DRAW FILLED RECTANGLE IN SCREEN SPCE

partially documented function

Category: V - video

Inp.:

AX = 0012h

BX = screen space column of left edge

CX = screen space column of right edge

DX = screen space row of top edge

SI = screen space row of bottom edge

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

SeeAlso: AX=0006h,AX=0010h,AX=0011h,AX=0023h,AX=009Bh,AX=00A9h

INT 62


INT 62 0013 - FGDRIVER v4.02 - "FG_COLORS" - GET SIMULTANEOUSLY-AVAILABLE COLORS

partially documented function

Category: V - video

Inp.:

AX = 0013h

Return: AX = number of colors available at one time

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

INT 62


INT 62 0014 - FGDRIVER v4.02 - "FG_COPYPAGE" - TRANSFER VIDEO PAGE CONTENTS

partially documented function

Category: V - video

Inp.:

AX = 0014h

BX = source page number (0000h-003Fh)

CX = destination page number (0000h-003Fh)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

If both source and destination pages are logical pages, they must both

  be located in the same type (conventional, EMS, XMS) of memory

SeeAlso: AX=009Eh,AX=00A2h,AX=00C6h,AX=00CAh

INT 62


INT 62 0015 - FGDRIVER v4.02 - "FG_CURSOR" - SPECIFY WHETHER TEXT CURSR IS VISIBLE

partially documented function

Category: V - video

Inp.:

AX = 0015h

BX = new state (0000h invisible, 0001h visible)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

SeeAlso: AX=000Ch,AX=0054h,AX=0058h,AX=006Bh,AX=0075h,AX=0079h,AX=007Eh

SeeAlso: AX=00E0h

INT 62


INT 62 0016 - FGDRIVER v4.02 - "FG_DASH" - DRAW DASHED LINE TO ABSOLUTE POSITION

partially documented function

Category: V - video

Inp.:

AX = 0016h

BX = endpoint column

CX = endpoint row

DX = dash pattern (set bits cause drawn pixels)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The starting point is the current graphics cursor position; the cursor

  position is updated

SeeAlso: AX=0017h,AX=001Dh,AX=008Fh

INT 62


INT 62 0017 - FGDRIVER v4.02 - "FG_DASHREL" - DRAW DASHED LINE TO RELATVE POSITION

partially documented function

Category: V - video

Inp.:

AX = 0017h

BX = endpoint column offset

CX = endpoint row offset

DX = dash pattern (set bits cause drawn pixels)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The starting point is the current graphics cursor position; the cursor

  position is updated

SeeAlso: AX=0016h,AX=001Eh,AX=008Fh

INT 62


INT 62 0018 - FGDRIVER v4.02 - "FG_DEFCOLOR" - ASSIGN COLOR VALUE TO COLOR INDEX

partially documented function

Category: V - video

Inp.:

AX = 0018h

BX = color index (0000h-00FFh)

CX = new color value (0 to maximum color value for current video mode)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes and 256-color graphics modes

SeeAlso: AX=0040h,AX=0045h,AX=00AAh

INT 62


INT 62 0019 - FGDRIVER v4.02 - "FG_DEFPAGES" - DEF SRC/DEST PAGES FOR BLOCK XFERS

partially documented function

Category: V - video

Inp.:

AX = 0019h

BX = source page

CX = destination page

Desc:	specify the source and destination SVGA banks for block transfers on

  extended video pages

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This function is ignored if the video controller does not support

  extended pages or the current video mode does not allow them

SeeAlso: AX=0014h,AX=00CAh

INT 62


INT 62 001A - FGDRIVER v4.02 - "FG_DISPFILE" - DISPLAY STORED IMAGE

partially documented function

Category: V - video

Inp.:

AX = 001Ah

ES:BX -> ASCIZ filename

CX = image width in pixels (> 0)

DX = image format

    0000h Fastgraph standard pixel run format

    0001h packed pixel run format

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The image is displayed with its lower left corner at the current

  graphics cursor position

SeeAlso: AX=001Bh,AX=001Ch,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 001B - FGDRIVER v4.02 - "FG_DISPLAY" - DISPLAY IMAGE (STD PIXEL RUN FORMAT)

partially documented function

Category: V - video

Inp.:

AX = 001Bh

ES:BX -> pixel run map (pairs of bytes: color index, count)

CX = number of pixel runs to display

DX = width of image in pixels (> 0)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The image is displayed with its lower left corner at the current

  graphics cursor position

SeeAlso: AX=001Ah,AX=001Ch,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 001C - FGDRIVER v4.02 - "FG_DISPLAYP" - DISPLAY IMAGE (PACKED PIXEL RUNS)

partially documented function

Category: V - video

Inp.:

AX = 001Ch

ES:BX -> pixel run map (trios of bytes: colors, count1, count2; colors

  contains the color for the first run in its high nybble and

  the color for the second run in its low nybble)

CX = number of pixel runs to display

DX = width of image in pixels (> 0)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The image is displayed with its lower left corner at the current

  graphics cursor position

SeeAlso: AX=001Ah,AX=001Bh,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 001D - FGDRIVER v4.02 - "FG_DRAW" - DRAW SOLID LINE TO ABSOLUTE POSITION

partially documented function

Category: V - video

Inp.:

AX = 001Dh

BX = endpoint column

CX = endpoint row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes

The starting point is the current graphics cursor position; the cursor

  position is updated

SeeAlso: AX=0016h,AX=0020h,AX=0021h,AX=0026h,AX=008Fh,AX=0090h

INT 62


INT 62 001E - FGDRIVER v4.02 - "FG_DRAWMAP" - DISPLAY MODE-INDEPENDENT BIT MAP

partially documented function

Category: V - video

Inp.:

AX = 001Eh

ES:BX -> bitmap (each set bit is pixel drawn in current color)

CX = width of bitmap in bytes

DX = height of bitmap in pixel rows

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0044h,AX=0099h,AX=00A0h

INT 62


INT 62 001F - FGDRIVER v4.02 - "FG_DRAWMASK" - DISPLAY IMAGE (MASKING MAP)

partially documented function

Category: V - video

Inp.:

AX = 001Fh

ES:BX -> array containing image stored as a masking map (see #2098)

CX = number of pixel runs in masking map

DX = width of masking map in pixels

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

This call is ignored in text modes and in native EGA and VGA graphics

  modes

The image is drawn with its lower left corner at the current graphics

  cursor position

SeeAlso: AX=0010h,AX=001Fh,AX=00A1h,AX=00A9h

INT 62


INT 62 0020 - FGDRIVER v4.02 - "FG_DRAWREL" - DRAW SOLID LINE TO RELATIVE POSITION

partially documented function

Category: V - video

Inp.:

AX = 0020h

BX = endpoint column offset

CX = endpoint row offset

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The starting point is the current graphics cursor position; the cursor

  position is updated

SeeAlso: AX=0006h,AX=000Dh,AX=001Dh,AX=0021h,AX=0026h,AX=008Fh

INT 62


INT 62 0021 - FGDRIVER v4.02 - "FG_DRAWRELX" - XOR SOLID LINE TO RELATIVE POSITION

partially documented function

Category: V - video

Inp.:

AX = 0021h

BX = endpoint column offset

CX = endpoint row offset

Desc:	draw a solid line, XORing each pixel onto the screen

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The starting point is the current graphics cursor position; the cursor

  position is updated

SeeAlso: AX=0006h,AX=000Dh,AX=001Dh,AX=0020h,AX=0026h,AX=0090h

INT 62


INT 62 0022 - FGDRIVER v4.02 - "FG_DRAWX" - XOR SOLID LINE TO ABSOLUTE POSITION

partially documented function

Category: V - video

Inp.:

AX = 0022h

BX = endpoint column

CX = endpoint row

Desc:	draw a solid line, XORing each pixel onto the screen

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The starting point is the current graphics cursor position; the cursor

  position is updated

SeeAlso: AX=001Dh,AX=0021h,AX=008Fh

INT 62


INT 62 0023 - FGDRIVER v4.02 - "FG_DRECT" - DRAW DITHERED RECTANGLE IN SCRN SPACE

partially documented function

Category: V - video

Inp.:

AX = 0023h

BX = screen space column of left edge

CX = screen space column of right edge

DX = screen space row of top edge

SI = screen space row of bottom edge

ES:DI -> dithering matrix (video-mode dependent)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0006h,AX=0008h,AX=0013h,AX=003Ch,AX=0089h,AX=009Bh

INT 62


INT 62 0024 - FGDRIVER v4.02 - "FG_DRWIMAGE" - DISPLAY BITMAPPED IMAGE

partially documented function

Category: V - video

Inp.:

AX = 0024h

ES:BX -> video mode-specific bitmap

CX = width of bitmap in bytes

DX = height of bitmap in pixel rows

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The image will be drawn with its lower left corner at the current

  cursor position (either text or graphics)

SeeAlso: AX=0011h,AX=0036h,AX=0044h,AX=0099h,AX=00A0h

INT 62


INT 62 0025 - FGDRIVER v4.02 - "FG_EGACHECK" - GET INFO ABOUT ACTIVE EGA DISPLAY

partially documented function

Category: V - video

Inp.:

AX = 0025h

Return: AX = number of 64K banks of video memory, or 0000h if no EGA or EGA

      without an Enhanced Color Display

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00C2h

INT 62


INT 62 0026 - FGDRIVER v4.02 - "FG_ELLIPSE" - DRAW UNFILLED ELLIPSE IN SCRN SPACE

partially documented function

Category: V - video

Inp.:

AX = 0026h

BX = horizontal semi-axis length in screen space units

CX = vertical semi-axis length in screen space units

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The ellipse is centered at the current graphics cursor position

SeeAlso: AX=0006h,AX=000Dh,AX=0027h,AX=008Fh,AX=0093h

INT 62


INT 62 0027 - FGDRIVER v4.02 - "FG_ELLIPSEF" - DRAW FILLED ELLIPSE IN SCREEN SPACE

partially documented function

Category: V - video

Inp.:

AX = 0027h

BX = horizontal semi-axis length in screen space units

CX = vertical semi-axis length in screen space units

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The ellipse is centered at the current graphics cursor position

SeeAlso: AX=0006h,AX=000Eh,AX=0026h,AX=008Fh,AX=0092h

INT 62


INT 62 0028 - FGDRIVER v4.02 - "FG_ERASE" - CLEAR THE ACTIVE VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 0028h

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function sets each pixel to 0 in graphics modes, each character

  cell to a blank with a gray foreground attribute in text modes

SeeAlso: AX=0029h,AX=002Bh,AX=0035h

INT 62


INT 62 0029 - FGDRIVER v4.02 - "FG_FADEIN" - FADE IN HIDDEN PAGE

partially documented function

Category: V - video

Inp.:

AX = 0029h

BX = delay (0000h = fastest possible fade-in)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The current hidden page is copied to the current visible page in small

  random sections to produce a fade-in effect

This call is ignored in text modes

SeeAlso: AX=0028h,AX=002Ah,AX=002Bh

INT 62


INT 62 002A - FGDRIVER v4.02 - "FG_FADEOUT" - FADE OUT TO CURRENT COLOR

partially documented function

Category: V - video

Inp.:

AX = 002Ah

BX = delay (0000h = fastest possible fade-out)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The current visible page is filled with pixels of the current color in

  small random sections to give a fade-out effect

This call is ignored in text modes

SeeAlso: AX=0028h,AX=0029h,AX=002Bh

INT 62


INT 62 002B - FGDRIVER v4.02 - "FG_FILLPAGE" - FILL THE ACTIVE VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 002Bh

Desc:	fill the active video page with pixels of the current color (graphics

  modes) or the block character DBh with the current character

  attributes (text modes)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0028h,AX=0029h,AX=002Ah

INT 62


INT 62 002C - FGDRIVER v4.02 - "FG_FINDPAGE" - FIND AVAILABLE VIRTUAL/LOGICAL PAGE

partially documented function

Category: V - video

Inp.:

AX = 002Ch

Return: AX = first available page number (virtual or logical page)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0028h

INT 62


INT 62 002D - FGDRIVER v4.02 - "FG_FLICDONE" - CLOSE FLIC FILE

partially documented function

Category: V - video

Inp.:

AX = 002Dh

ES:BX -> context descriptor (see AX=0030h)

Return: nothing

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=002Eh,AX=0030h

INT 62


INT 62 002E - FGDRIVER v4.02 - "FG_FLICHEAD" - READ FLI/FLC FILE HEADER

partially documented function

Category: V - video

Inp.:

AX = 002Eh

ES:BX -> FLICHEAD variable pointer record (see #2676)

Return: AX = status (see #2678)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=002Dh,AX=002Fh,AX=0030h,AX=0032h

INT 62


INT 62 002F - FGDRIVER v4.02 - "FG_FLICMODE" - GET OPTIMAL VIDEO MODE FOR FLI/FLC

partially documented function

Category: V - video

Inp.:

AX = 002Fh

ES:BX -> 128-byte buffer containing FLI/FLC file header (see AX=002Eh)

Return: AX = optimal 256-color graphics mode number

    FFFFh if invalid file header

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=002Eh,AX=0030h

INT 62


INT 62 0030 - FGDRIVER v4.02 - "FG_FLICOPEN" - OPEN FLI/FLC FILE

partially documented function

Category: V - video

Inp.:

AX = 0030h

ES:BX -> FLICOPEN variable pointer record (see #2677)

Return: AX = status (see #2678)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=002Dh,AX=002Eh,AX=002Fh,AX=0030h,AX=0031h,AX=0032h

INT 62


INT 62 0031 - FGDRIVER v4.02 - "FG_FLICPLAY" - DISPLAY NEXT FRAME(S) IN FLI/FLC

partially documented function

Category: V - video

Inp.:

AX = 0031h

ES:BX -> context descriptor (see AX=0030h)

CX = number of frames to display starting at current frame

DX = control flags (see #2688)

Return: AX = number of frames displayed

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0030h,AX=0033h,AX=00B8h

INT 62


INT 62 0032 - FGDRIVER v4.02 - "FG_FLICSIZE" - GET IMAGE SIZE

partially documented function

Category: V - video

Inp.:

AX = 0032h

ES:BX -> FLICSIZE variable pointer record (see #2679)

Return: image height/width buffers updated; height is set to FFFFh on error

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=002Eh,AX=0030h

INT 62


INT 62 0033 - FGDRIVER v4.02 - "FG_FLICSKIP" - SKIP FRAME(S) IN FLI/FLC FILE

partially documented function

Category: V - video

Inp.:

AX = 0033h

ES:BX -> context descriptor (see AX=0030h)

CX = number of frames to skip

    reset to first frame if skip count is negative

Return: AX = number of frames skipped (may be less than requested if EOF)

    0000h if resetting to first frame

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0030h,AX=0031h

INT 62


INT 62 0034 - FGDRIVER v4.02 - "FG_FLIPMASK" - DISPLAY INV CLIPPED IMAGE (MASKMAP)

partially documented function

Category: V - video

Inp.:

AX = 0034h

ES:BX -> array containing image stored as a masking map (see #2098)

CX = number of pixel runs in masking map

DX = width of masking map in pixels

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes and in native EGA and VGA graphics

  modes

The image is drawn with its lower left corner at the current graphics

  cursor position

SeeAlso: AX=000Fh,AX=001Fh,AX=0036h,AX=00A1h,AX=00A5h,AX=00C5h

INT 62


INT 62 0035 - FGDRIVER v4.02 - "FG_FLOOD" - FLOOD FILL ARBITRARY CLOSED REGION

partially documented function

Category: V - video

Inp.:

AX = 0035h

BX = starting column

CX = starting row

Desc:	fill the bounded region around the specified point (respecting clipping

  region) with the currrent color

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is ignored in text modes

SeeAlso: AX=0028h,AX=0085h

INT 62


INT 62 0036 - FGDRIVER v4.02 - "FG_FLPIMAGE" - DISPLAY INV CLIPPED IMAGE (BITMAP)

partially documented function

Category: V - video

Inp.:

AX = 0036h

ES:BX -> mode-specific bitmap

CX = width of bit map in bytes

DX = height of bit map in pixel rows

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The image is drawn with its lower left corner at the current graphics

  cursor position

The current clipping region is used, extended to a byte boundary

SeeAlso: AX=0011h,AX=0024h,AX=0034h,AX=0044h,AX=00A0h,AX=00A9h,AX=00B9h

INT 62


INT 62 0037 - FGDRIVER v4.02 - "FG_FONTSIZE" - SPECIFY FONT SIZE FOR TEXT OUTPUT

partially documented function

Category: V - video

Inp.:

AX = 0037h

BX = desired character height in scan lines (8, 14, 16)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored if the current mode is not a VGA or SVGA graphics

  mode, or the specified character height is not 8, 14, or 16

SeeAlso: AX=0096h

INT 62


INT 62 0038 - FGDRIVER v4.02 - "FG_FREEPAGE" - FREE VIRTUAL OR LOGICAL VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 0038h

BX = page number (0000h-003Fh)

Return: AX = status (0000h,0001h,0007h,0009h) (see #2097)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0000h,AX=0001h,AX=0002h,AX=0003h

INT 62


INT 62 0039 - FGDRIVER v4.02 - "FG_GETADDR" - GET SEGMENT OF ACTIVE VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 0039h

Return: AX = segment of active video page

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0042h,AX=00ACh

INT 62


INT 62 003A - FGDRIVER v4.02 - "FG_GETATTR" - GET CHARACTER ATTRIB FOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 003Ah

BX = row

CX = column

Return: AX = character attribute at specified location on active video page

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in graphics modes

SeeAlso: AX=000Bh,AX=003Dh,AX=0040h,AX=00A6h

INT 62


INT 62 003B - FGDRIVER v4.02 - "FG_GETBANKS" - GET SVGA READ AND WRITE BANKS

partially documented function

Category: V - video

Inp.:

AX = 003Bh

ES:BX -> GETBANKS variable pointer record (see #2680)

Return: nothing

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00A7h

INT 62


INT 62 003C - FGDRIVER v4.02 - "FG_GETBLOCK" - GRAB RECTANGLE OF DISPLAY

partially documented function

Category: V - video

Inp.:

AX = 003Ch

ES:BX -> buffer for screen contents

CX = leftmost column

DX = rightmost column

SI = top row

DI = bottom row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

In text modes, coordinates are character positions; in graphics modes,

  they are defined in screen space, and the left and right edges are

  adjusted to a byte boundary if necessary

Use "FG_IMAGESIZ" (see AX=005Ch) to determine the required buffer size

SeeAlso: AX=0044h,AX=005Ch,AX=0098h

INT 62


INT 62 003D - FGDRIVER v4.02 - "FG_GETCHAR" - GET CHARACTER FOR SCREEN POSITION

partially documented function

Category: V - video

Inp.:

AX = 003Dh

BX = row

CX = column

Return: AX = character at specified location on active video page

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in graphics modes

SeeAlso: AX=000Bh,AX=003Ah,AX=0096h,AX=00A6h,AX=00C8h

INT 62


INT 62 003E - FGDRIVER v4.02 - "FG_GETCLIP" - GET CLIPPING REGION IN SCREEN SPACE

partially documented function

Category: V - video

Inp.:

AX = 003Eh

ES:BX -> GETCLIP variable pointer record (see #2681)

Return: variables specifed by GETCLIP structure updated

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00CAh

INT 62


INT 62 003F - FGDRIVER v4.02 - "FG_GETCLOCK" - GET CLOCK TICKS SINCE MIDNIGHT

partially documented function

Category: V - video

Inp.:

AX = 003Fh

Return: DX:AX = number of clock ticks since midnight

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: INT 1A/AH=00h

INT 62


INT 62 0040 - FGDRIVER v4.02 - "FG_GETCOLOR" - GET CURRENT TEXT ATTRIBUTE

partially documented function

Category: V - video

Inp.:

AX = 0040h

Return: AX = current text attribute or color index (graphics modes)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Bh,AX=003Ah,AX=00A6h

INT 62


INT 62 0041 - FGDRIVER v4.02 - "FG_GETDACS" - GET VIDEO DAC CONTENTS

partially documented function

Category: V - video

Inp.:

AX = 0041h

CX = number of DAC registers to return (0001h to 0100h)

DX = starting DAC register number (0000h to 00FFh)

ES:BX -> buffer for DAC red/green/blue triples

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The register number wraps back to zero after FFh

SeeAlso: AX=004Eh,AX=0086h,AX=00ABh

INT 62


INT 62 0042 - FGDRIVER v4.02 - "FG_GETENTRY" - GET PAGE TYPE AND ADDRESS

partially documented function

Category: V - video

Inp.:

AX = 0042h

ES:BX -> variable pointer record (see #2099)

CX = page number (00h-3Fh)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

Page addresses are segments for pages stored in conventional memory

  (including physical and virtual pages), and EMS or XMS handles for

  pages stored in EMS or XMS

SeeAlso: AX=0000h,AX=00ACh

INT 62


INT 62 0043 - FGDRIVER v4.02 - "FG_GETHPAGE" - GET CURRENT HIDDEN VIDEO PAGE NUM

partially documented function

Category: V - video

Inp.:

AX = 0043h

Return: AX = current hidden video page number (0000h-003Fh)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=004Ch,AX=0050h,AX=00AEh

INT 62


INT 62 0044 - FGDRIVER v4.02 - "FG_GETIMAGE" - STORE IMAGE AS BITMAP

partially documented function

Category: V - video

Inp.:

AX = 0044h

ES:BX -> buffer for video mode-specific bitmap

CX = width of bitmap in bytes

DX = height of bitmap in pixel rows

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0099h,AX=00A0h

INT 62


INT 62 0045 - FGDRIVER v4.02 - "FG_GETINDEX" - GET COLOR VALUE FOR COLOR INDEX

partially documented function

Category: V - video

Inp.:

AX = 0045h

BX = color index (0000h to 00FFh)

Return: AX = color value for specified color index

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call returns the value passed to it in text and 256-color

  graphics modes

SeeAlso: AX=0018h,AX=0040h

INT 62


INT 62 0046 - FGDRIVER v4.02 - "FG_GETKEY" - GET NEXT KEYSTROKE

partially documented function

Category: V - video

Inp.:

AX = 0046h

ES:BX -> variable pointer record (see #2101)

Return: (after next keystroke if no typeahead) variables updated

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ah,AX=0063h,AX=0069h,AX=00DEh,INT 16/AH=00h

INT 62


INT 62 0047 - FGDRIVER v4.02 - "FG_GETLINES" - GET TEXT ROWS FOR CURR VIDEO MODE

partially documented function

Category: V - video

Inp.:

AX = 0047h

Return: AX = number of text rows on screen in current video mode

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00AFh,AX=00C2h

INT 62


INT 62 0048 - FGDRIVER v4.02 - "FG_GETMAP" - STORE IMAGE AS MODE-INDEPENDNT BITMAP

partially documented function

Category: V - video

Inp.:

AX = 0048h

ES:BX -> buffer for video mode-independent bitmap

CX = width of bitmap in bytes

DX = height of bitmap in pixel rows

Return: each bit in bitmap is set if corresponding pixel is of the current

  color, cleared otherwise

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0011h,AX=001Eh,AX=0024h

INT 62


INT 62 0049 - FGDRIVER v4.02 - "FG_GETMAXX" - GET MAXIMUM COLUMN IN SCREEN SPACE

partially documented function

Category: V - video

Inp.:

AX = 0049h

Return: AX = maximum X coordinate in screen space

    (or character space if in text mode)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=004Ah,AX=00C1h

INT 62


INT 62 004A - FGDRIVER v4.02 - "FG_GETMAXY" - GET MAXIMUM ROW IN SCREEN SPACE

partially documented function

Category: V - video

Inp.:

AX = 004Ah

Return: AX = maximum Y coordinate in screen space

(or character space if in text mode)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0049h,AX=00C1h

INT 62


INT 62 004B - FGDRIVER v4.02 - "FG_GETMODE" - GET CURRENT VIDEO MODE NUMBER

partially documented function

Category: V - video

Inp.:

AX = 004Bh

ES:BX -> WORD ???

Return: AX = current video mode number

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00B0h

INT 62


INT 62 004C - FGDRIVER v4.02 - "FG_GETPAGE" - GET ACTIVE VIDEO PAGE NUMBER

partially documented function

Category: V - video

Inp.:

AX = 004Ch

Return: AX = active video page (0000h-003Fh)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0039h,AX=0042h,AX=0043h,AX=0050h,AX=00B2h

INT 62


INT 62 004D - FGDRIVER v4.02 - "FG_GETPIXEL" - GET COLOR OF SPECIFIED PIXEL

partially documented function

Category: V - video

Inp.:

AX = 004Dh

BX = column in screen space

CX = row in screen space

Return: AX = color value of pixel (0 to num_colors-1)

    0000h in text modes

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=003Ah,AX=003Dh,AX=008Fh,AX=0090h

INT 62


INT 62 004E - FGDRIVER v4.02 - "FG_GETRGB" - GET VIDEO DAC REGISTER CONTENTS

partially documented function

Category: V - video

Inp.:

AX = 004Eh

ES:BX -> variable pointer record (see #2102)

CX = DAC register number

Return: variables updated

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes and CGA/EGA video modes (since

  they do not use DAC registers)

SeeAlso: AX=00441h,AX=0086h,AX=00ABh

INT 62


INT 62 004F - FGDRIVER v4.02 - "FG_GETVIEW" - GET VIEWPORT EXTREME LIMITS

partially documented function

Category: V - video

Inp.:

AX = 004Fh

ES:BX -> variable pointer record (see #2682)

Return: indicated variables updated

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00B5h

INT 62


INT 62 0050 - FGDRIVER v4.02 - "FG_GETVPAGE" - GET VISIBLE VIDEO PAGE NUMBER

partially documented function

Category: V - video

Inp.:

AX = 0050h

Return: AX = visible video page (0000h-003Fh)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0043h,AX=004Ch,AX=00B6h

INT 62


INT 62 0051 - FGDRIVER v4.02 - "FG_GETXBOX" - GET WIDTH OF VERTICAL BOX LINES

partially documented function

Category: V - video

Inp.:

AX = 0051h

Return: AX = width (in pixels) of left and right edges of rectangles

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0006h,AX=0007h,AX=0008h,AX=006Bh

INT 62


INT 62 0052 - FGDRIVER v4.02 - "FG_GETXJOY" - GET HORIZONTAL POSITION OF JOYSTICK

partially documented function

Category: V - video

Inp.:

AX = 0052h

BX = joystick number (0001h or 0002h)

Return: AX = horizontal position of joystick

    FFFFh if joystick uninitialized or not present

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The actual coordinates are processor- and joystick-dependent

You must call "FG_INITJOY" (AX=005Eh) before using this function

SeeAlso: AX=0009h,AX=0056h,AX=005Eh,AX=0062h,AX=0077h

INT 62


INT 62 0053 - FGDRIVER v4.02 - "FG_GETXJUST" - GET HORIZONTAL JUSTIFICATION

partially documented function

Category: V - video

Inp.:

AX = 0053h

Return: AX = string justification

    0000h strings are centered around current graphics X position

    0001h strings are right-justified at current graphics X position

    FFFFh strings are left-justified at current graphics X position

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=006Ch,AX=007Bh

INT 62


INT 62 0054 - FGDRIVER v4.02 - "FG_GETXPOS" - GET GRAPHICS CURSOR COLUMN

partially documented function

Category: V - video

Inp.:

AX = 0054h

Return: AX = screen space X coordinate of graphics cursor position

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0058h,AX=007Eh,AX=007Fh

INT 62


INT 62 0055 - FGDRIVER v4.02 - "FG_GETYBOX" - GET WIDTH OF HORIZONTAL BOX LINES

partially documented function

Category: V - video

Inp.:

AX = 0055h

Return: AX = width (in pixels) of top and bottom edges of rectangles

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0006h,AX=0007h,AX=0008h,AX=0063h

INT 62


INT 62 0056 - FGDRIVER v4.02 - "FG_GETYJOY" - GET VERTICAL POSITION OF JOYSTICK

partially documented function

Category: V - video

Inp.:

AX = 0056h

BX = joystick number (0001h or 0002h)

Return: AX = vertical position of joystick

    FFFFh if joystick uninitialized or not present

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The actual coordinates are processor- and joystick-dependent

You must call "FG_INITJOY" (AX=005Eh) before using this function

SeeAlso: AX=0009h,AX=0052h,AX=005Eh,AX=0062h,AX=0077h

INT 62


INT 62 0057 - FGDRIVER v4.02 - "FG_GETYJUST" - GET VERTICAL JUSTIFICATION

partially documented function

Category: V - video

Inp.:

AX = 0057h

Return: AX = string justification

    0000h strings are centered around current graphics Y position

    0001h strings have top edge at current graphics Y position

    FFFFh strings have bottom edge at current graphics Y position

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0053h,AX=0065h

INT 62


INT 62 0058 - FGDRIVER v4.02 - "FG_GETYPOS" - GET GRAPHICS CURSOR ROW

partially documented function

Category: V - video

Inp.:

AX = 0058h

Return: AX = screen space Y coordinate of graphics cursor position

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0054h,AX=007Eh,AX=007Fh

INT 62


INT 62 0059 - FGDRIVER v4.02 - "FG_HUSH" - STOP ASYNCHRONOUS SOUND IMMEDIATELY

partially documented function

Category: V - video

Inp.:

AX = 0059h

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function immediately stops any sounds started with "FG_MUSICB",

  "FG_SOUNDS", or "FG_VOICES"; it is ignored if no asynchronous sound

  is playing

SeeAlso: AX=005Ah,AX=0081h,AX=00BDh,AX=00DCh

INT 62


INT 62 005A - FGDRIVER v4.02 - "FG_HUSHNEXT" - STOP ASYNCHRONOUS SOUND

partially documented function

Category: V - video

Inp.:

AX = 005Ah

Program: FGDRIVER is the external video driver for the shareware

  Fastgraph/Light by Ted Gruber Software

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function stops any sounds started with "FG_MUSICB", "FG_SOUNDS",

  or "FG_VOICES" after the current repetition completes; it is ignored

  unless asynchronous sound is continuous

SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DCh

INT 62


INT 62 005B - FGDRIVER v4.02 - "FG_IMAGEBUF" - SPECIFY TEMPORARY IMAGE BUFFER

partially documented function

Category: V - video

Inp.:

AX = 005Bh

ES:BX -> buffer to be used when creating or displaying GIF/PCX/PPR/SPR

  images

CX = size of buffer in bytes or 0000h to use internal buffer

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

Fastgraph's internal buffer is 4096 bytes; this function allows the

  application to define a larger buffer which will typically speed

  processing

SeeAlso: AX=006Ch,AX=006Dh,AX=006Eh,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 005C - FGDRIVER v4.02 - "FG_IMAGESIZ" - DETERMINE IMAGE STORAGE REQUIREMENT

partially documented function

Category: V - video

Inp.:

AX = 005Ch

BX = image width in pixels

CX = image height in pixels

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

Return: DX:AX = size in bytes of mode-specific bitmap for current video mode

SeeAlso: AX=003Ch,AX=0098h

INT 62


INT 62 005D - FGDRIVER v4.02 - "FG_INITEMS" - INITIALIZE EXPANDED MEMORY USE

partially documented function

Category: V - video

Inp.:

AX = 005Dh

Return: AX = status

    0000h successful

    FFFFh expanded memory manager inaccessible or not installed

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0002h,AX=0060h"v4.02"

INT 62


INT 62 005E - FGDRIVER v4.02 - "FG_INITJOY" - INITIALIZE JOYSTICK USE

partially documented function

Category: V - video

Inp.:

AX = 005Eh

BX = joystick number (0001h or 0002h)

Return: AX = status

    0000h successful

    FFFFh joystick not connected or no game port

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

Fastgraph assumes that the requested joystick is centered at the time

  this function is called

SeeAlso: AX=0009h,AX=0052h,AX=0056h,AX=0062h,AX=0077h

INT 62


INT 62 005F - FGDRIVER v4.02 - "FG_INITPM"??? - (NOT IMPLEMENTED)

partially documented function

Category: V - video

Inp.:

AX = 005Fh

???

Return: ???

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

INT 62


INT 62 0060 - FGDRIVER v1.10 only - "FG_DISPPCX" - DISPLAY PCX FILE

partially documented function

Category: V - video

Inp.:

AX = 0060h

ES:BX -> ASCIZ filename

CX = flags

    bit 0: use current palette rather than PCX file's palette

    bits 1-15 reserved (0)

Return: AX = status

    0000h success

    0001h file not found

    0002h file is not a valid PCX file

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes and Hercules low-resolution graphics

The image is displayed with its upper left corner at the current

  graphics cursor position

SeeAlso: AX=00B9h

INT 62


INT 62 0060 - FGDRIVER v4.02 - "FG_INITXMS" - INITIALIZE EXTENDED MEMORY USE

partially documented function

Category: V - video

Inp.:

AX = 0060h

Return: AX = status

    0000h successful

    FFFFh extended memory manager inaccessible or not installed

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0003h,AX=005Dh

INT 62


INT 62 0061 - FDGRIVER v4.02 - "FG_INSIDE" - CHECK IF POINT INSIDE CONVEX POLYGON

partially documented function

Category: V - video

Inp.:

AX = 0061h

ES:BX -> vertex array

CX = number of vertices

DX = screen space column of point to test

SI = screen space row of point to test

Return: AX = result

    0000h point is outside polygon

    0001h point is inside polygon

    undefined if not a convex polygon

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0092h,AX=0093h,AX=0094h

INT 62


INT 62 0062 - FGDRIVER v4.02 - "FG_INTJOY" - GET KEYCODES CORRESP TO JOYSTICK POS

partially documented function

Category: V - video

Inp.:

AX = 0062h

CX = joystick number (0001h or 0002h)

ES:BX -> variable pointer record (see #2103)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

If the indicated joystick has not been initialized with AX=008Eh, both

  the button code and joystick position will be set to 00h

If either button is pressed, a button code of 0Dh is returned;

  otherwise, a button code of 00h is returned

SeeAlso: AX=0009h,AX=0052h,AX=0046h,AX=005Eh,AX=0077h

INT 62


INT 62 0063 - FGDRIVER v4.02 - "FG_INTKEY" - GET KEYSTROKE, NO WAIT

partially documented function

Category: V - video

Inp.:

AX = 0063h

ES:BX -> variable pointer record (see #2104)

Return: variables updated

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

If the keyboard buffer is empty, both the ASCII and extended keycodes

  are set to 00h

SeeAlso: AX=000Ah,AX=0046h,AX=0069h,AX=00DEh,INT 16/AH=01h

INT 62


INT 62 0064 - FGDRIVER v4.02 - "FG_INVERT" - INVERT ORIENTATION OF BITMAP

partially documented function

Category: V - video

Inp.:

AX = 0064h

ES:BX -> bitmap

CX = width of bitmap in bytes

DX = height of bitmap in pixel rows

Return: nothing

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

INT 62


INT 62 0065 - FGDRIVER v4.02 - "FG_JUSTIFY" - SET TEXT OUTPUT JUSTIFICATION

partially documented function

Category: V - video

Inp.:

AX = 0065h

BX = horizontal justification

      (00h centered, 01h right-justified, FFh left-justified)

CX = vertical justification

      (00h centered, 01h top of characters, FFh bottom of chars)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ch,AX=0037h,AX=0053h,AX=0057h,AX=0096h

INT 62


INT 62 0066 - FGDRIVER v4.02 - "FG_KBINIT" - ENABLE/DISABLE LOW-LEVEL KBD HANDLER

partially documented function

Category: V - video

Inp.:

AX = 0066h

BX = new state (0000h disabled, 0001h enabled)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

When the low-level handler is enabled, "FG_GETKEY", "FG_INTKEY",

  "FG_WAITKEY", and all other functions calling DOS or BIOS keyboard

  services become unavailable

SeeAlso: AX=0067h,AX=0068h,AX=0069h

INT 62


INT 62 0067 - FGDRIVER v4.02 - "FG_KBLAST" - GET MOST RECENT SCANCODE PROCESSED

partially documented function

Category: V - video

Inp.:

AX = 0067h

Return: AX = scancode for keypress most recently processed by FastGraph's

      low-level keyboard handler, or 0000h if no keys since FG_KBINIT

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0066h,AX=0068h,AX=0069h

INT 62


INT 62 0068 - FGDRIVER v4.02 - "FG_KBRESET" - RESET LOW-LEVEL KEYBOARD HANDLER

partially documented function

Category: V - video

Inp.:

AX = 0068h

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0066h,AX=0067h,AX=0069h

INT 62


INT 62 0069 - FGDRIVER v4.02 - "FG_KBTEST" - CHECK WHETHER SPECIFIED KEY PRESSED

partially documented function

Category: V - video

Inp.:

AX = 0069h

BX = scan code of desired key

Return: AX = state

    0000h key is not pressed

    0001h key is currently pressed

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The low-level keyboard handler must have been enabled with AX=0066h

SeeAlso: AX=0066h,AX=0067h,INT 16/AH=01h

INT 62


INT 62 006A - FGDRIVER v4.02 - "FG_LOADPCX" - LOAD .PCX INTO ACTIVE VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 006Ah

ES:BX -> ASCIZ filename for PCX image

CX = control flags

    bit 0: use current palette, overriding stored .PCX palette

    bit 1: load at current graphics position, not stored position

    bit 2: load image from FG_IMAGEBUF buffer instead of .PCX file

Return: AX = status

    0000h successful

    0001h file not found

    0002h not a .PCX file

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=006Ch,AX=00B9h,AX=00D5h

INT 62


INT 62 006B - FGDRIVER v4.02 - "FG_LOCATE" - SET TEXT-MODE CURSOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 006Bh

BX = row

CX = column

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

There are only eight text cursors shared by successive groups of

  eight video pages (pages 0, 8, 16, ... share one cursor, 1, 9, ...

  share the second, etc)

SeeAlso: AX=0054h,AX=0058h,AX=007Eh,AX=00E0h

INT 62


INT 62 006C - FGDRIVER v4.02 - "FG_MAKEPCX" - CREATE PCX FILE FROM SCREEN WINDOW

partially documented function

Category: V - video

Inp.:

AX = 006Ch

BX = left edge in screen space units

CX = right edge in screen space units

DX = top edge in screen space units

SI = bottom edge in screen space units

ES:DI -> ASCIZ filename of PCX file to create

Return: AX = status

    0000h successful

    0001h file not created

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The PCX file is created from the specified region of the active video

  page; the left and right edges are adjusted to a byte boundary if

  necessary

If the specified file already exists, it is overwritten

This call is ignored in text and Hercules low-resolution graphics modes

SeeAlso: AX=005Bh,AX=006Dh,AX=006Ah,AX=006Eh,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 006D - FGDRIVER v4.02 - "FG_MAKEPPR" - CREATE PACKED PIXEL RUN FILE

partially documented function

Category: V - video

Inp.:

AX = 006Dh

BX = left edge in screen space units

CX = right edge in screen space units

DX = top edge in screen space units

SI = bottom edge in screen space units

ES:DI -> ASCIZ filename of PPR file to create

Return: AX = status

    0000h successful

    0001h file not created

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The PPR file is created from the specified region of the active video

  page; the left and right edges are adjusted to byte boundaries if

  necessary

If the specified file already exists, it is overwritten

This call is ignored in text modes

SeeAlso: AX=005Bh,AX=006Ch,AX=006Eh,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 006E - FGDRIVER v4.02 - "FG_MAKESPR" - CREATE STANDARD PIXEL RUN FILE

partially documented function

Category: V - video

Inp.:

AX = 006Eh

BX = left edge in screen space units

CX = right edge in screen space units

DX = top edge in screen space units

SI = bottom edge in screen space units

ES:DI -> ASCIZ filename of SPR file to create

Return: AX = status

    0000h successful

    0001h file not created

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The SPR file is created from the specified region of the active video

  page; the left and right edges are adjusted to byte boundaries if

  necessary

If the specified file already exists, it is overwritten

This call is ignored in text modes

SeeAlso: AX=005Bh,AX=006Ch,AX=006Dh,AX=00B9h,AX=00BAh,AX=00BBh

INT 62


INT 62 006F - FGDRIVER v4.02 - "FG_MAPRGB" - MAP COLOR COMPONENTS INTO PALETTE VAL

partially documented function

Category: V - video

Inp.:

AX = 006Fh

BX = red component

CX = green component

DX = blue component

Return: AX = mode-specific palette value corresponding to specified components

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is only meaningful in 16-color graphics modes

SeeAlso: AX=004Eh,AX=00B3h

INT 62


INT 62 0070 - FGDRIVER v4.02 - "FG_MEASURE" - GET DELAY UNITS PER CLOCK TICK

partially documented function

Category: V - video

Inp.:

AX = 0070h

Return: AX = delay units per clock tick (processor-dependent)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

These delay units are used by "FG_STALL" (see AX=00BFh)

SeeAlso: AX=00BFh

INT 62


INT 62 0071 - FGDRIVER v4.02 - "FG_MEMAVAIL" - QUERY AMOUNT OF FREE MEMORY

partially documented function

Category: V - video

Inp.:

AX = 0071h

Return: DX:AX = number of bytes of conventional memory available

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=005Dh,AX=0072h

INT 62


INT 62 0072 - FGDRIVER v4.02 - "FG_MEMORY" - GET SIZE OF VIDEO MEMORY

partially documented function

Category: V - video

Inp.:

AX = 0072h

Return: AX = size of video memory in KB

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

You must first call "FG_SVGAINIT" (see AX=00C1h) before using this

  function

SeeAlso: AX=0071h

INT 62


INT 62 0073 - FGDRIVER v4.02 - "FG_MOUSE256" - DEFINE 256-COLOR MOUSE CURSOR

partially documented function

Category: V - video

Inp.:

AX = 0073h

ES:BX -> 512-byte cursor definition

CX = X offset of hot-spot within mouse cursor

DX = Y offset of hot-spot within mouse cursor

Return: nothing

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

the cursor definition array consists of 256 bytes defining the 16x16

  screen mask, followed by another 256 bytes definining the 16x16

  cursor mask

SeeAlso: AX=0074h,AX=0075h,AX=007Bh

INT 62


INT 62 0074 - FGDRIVER v4.02 - "FG_MOUSEBUT" - GET MOUSE BUTTON PRESS/RELEASE CNTS

partially documented function

Category: V - video

Inp.:

AX = 0074h

CX = mouse button (1 = left press, 2 = right press, 3 = middle press,

  -1=left release, -2=right release, -3=middle release)

ES:BX -> variable pointer record (see #2105)

Return: variables updated

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function returns the count of presses or releases since the last

  call to this function; if the count is zero, row and column will

  also be zero

SeeAlso: AX=0075h,AX=0077h,AX=007Ah

INT 62


INT 62 0075 - FGDRIVER v4.02 - "FG_MOUSECUR" - SPECIFY TEXT-MODE MOUSE CURSOR

partially documented function

Category: V - video

Inp.:

AX = 0075h

BX = screen mask

CX = cursor mask

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in graphics modes

SeeAlso: AX=007Bh,AX=007Dh

INT 62


INT 62 0076 - FGDRIVER v4.02 - "FG_MOUSEFIN" - UNHOOK FASTGRAPH MOUSE HANDLER

partially documented function

Category: V - video

Inp.:

AX = 0076h

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function should be called before switching back to text mode if

  "FG_MOUSEINI" was called while in an SVGA graphics mode

SeeAlso: AX=0077h

INT 62


INT 62 0077 - FGDRIVER v4.02 - "FG_MOUSEINI" - INITIALIZE MOUSE SUPPORT

partially documented function

Category: V - video

Inp.:

AX = 0077h

Return: AX = status

    0002h two-button mouse

    0003h three-button mouse

    FFFFh initialization failed

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

After this call, the mouse cursor is invisible

SeeAlso: AX=0076h,AX=0078h,AX=007Ch

INT 62


INT 62 0078 - FGDRIVER v4.02 - "FG_MOUSELIM" - SPECIFY MOUSE CURSOR LIMITS

partially documented function

Category: V - video

Inp.:

AX = 0078h

BX = left-most position allowed for mouse cursor

CX = right-most position allowed

DX = top-most position allowed

SI = bottom-most position allowed

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0077h,AX=0079h,INT 33/AX=0007h,INT 33/AX=0008h

INT 62


INT 62 0079 - FGDRIVER v4.02 - "FG_MOUSEMOV" - SET MOUSE CURSOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 0079h

BX = new column

CX = new row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function will not move the mouse cursor outside the bounding box

  specified with AX=009Bh

SeeAlso: AX=0078h,AX=007Ah,INT 33/AX=0004h

INT 62


INT 62 007A - FGDRIVER v4.02 - "FG_MOUSEPOS" - GET CURRENT MOUSE POSITION

partially documented function

Category: V - video

Inp.:

AX = 007Ah

ES:BX -> variable pointer record (see #2106)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0079h

INT 62


INT 62 007B - FGDRIVER v4.02 - "FG_MOUSEPTR" - SPECIFY GRAPH-MODE MOUSE CURSOR

partially documented function

Category: V - video

Inp.:

AX = 007Bh

ES:BX -> masks (16-byte screen mask followed by 16-byte cursor mask)

CX = X offset of hot spot from upper left corner

DX = Y offset of hot spot from upper left corner

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0073h,AX=0075h,INT 33/AX=0009h

INT 62


INT 62 007C - FGDRIVER v4.02 - "FG_MOUSESPD" - SET MOUSE CURSOR SPEED

partially documented function

Category: V - video

Inp.:

AX = 007Ch

BX = horizontal mickeys per eight pixels of movement (default 16)

CX = vertical mickeys per eight pixels of movement (default 16)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: INT 33/AX=000Fh,INT 33/AX=001Ah

INT 62


INT 62 007D - FGDRIVER v4.02 - "FG_MOUSEVIS" - SET MOUSE CURSOR VISIBILITY

partially documented function

Category: V - video

Inp.:

AX = 007Dh

BX = new state (0000h invisible, 0001h visible)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0077h,INT 33/AX=0001h,INT 33/AX=0002h

INT 62


INT 62 007E - FGDRIVER v4.02 - "FG_MOVE" - SET GRAPHICS CURSOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 007Eh

BX = new column

CX = new row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0054h,AX=0058h,AX=006Bh,AX=0079h,AX=007Fh,AX=00E0h

INT 62


INT 62 007F - FGDRIVER v4.02 - "FG_MOVEREL" - ADJUST GRAPHICS CURSOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 007Fh

BX = column offset

CX = row offset

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0054h,AX=0058h,AX=007Eh

INT 62


INT 62 0080 - FGDRIVER v4.02 - "FG_MUSIC" - PLAY SERIES OF NOTES

partially documented function

Category: V - video

Inp.:

AX = 0080h

ES:BX -> '$'-terminated music string in BASIC PLAY format

Return: after music completed

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,

  AX=00AAh) is already in progress

SeeAlso: AX=0081h,AX=00BCh,AX=00DBh

INT 62


INT 62 0081 - FGDRIVER v4.02 - "FG_MUSICB" - PLAY SERIES OF NOTES IN BACKGROUND

partially documented function

Category: V - video

Inp.:

AX = 0081h

CX = number of repetitions (negative = continuous play)

ES:BX -> '$'-terminated music string in BASIC PLAY format

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,

  AX=00AAh) is already in progress

SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DCh

INT 62


INT 62 0082 - FGDRIVER v4.02 - "FG_NUMLOCK" - GET STATE OF NUMLOCK KEY

partially documented function

Category: V - video

Inp.:

AX = 0082h

Return: AX = NumLock state (0000h off, 0001h on)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ah,AX=00A4h,AX=00A8h,AX=00B1h

INT 62


INT 62 0083 - FGDRIVER v4.02 - "FG_PACK" - CONVERT PIXEL-PER-BYTE TO PACKED BITMAP

partially documented function

Category: V - video

Inp.:

AX = 0083h

ES:BX -> variable pointer record (see #2683)

CX = width of bitmap in pixels

DX = height of bitmap in pixels

Return: result bitmap buffer updated

SeeAlso: AX=00CBh

INT 62


INT 62 0084 - FGDRIVER v4.02 - "FG_PAGESIZE" - GET VIDEO PAGE SIZE FOR CURR MODE

partially documented function

Category: V - video

Inp.:

AX = 0084h

Return: DX:AX = page size in bytes

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0072h

INT 62


INT 62 0085 - FGDRIVER v4.02 - "FG_PAINT" - FLOOD CLOSED REGION WITH COLOR

partially documented function

Category: V - video

Inp.:

AX = 0085h

BX = column

CX = row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function fills an arbitrary closed region around the specified

  point with the current color; the screen edges are not considered

  region boundaries

This call is ignored in text modes

SeeAlso: AX=0035h

INT 62


INT 62 0086 - FGDRIVER v4.02 - "FG_PALETTE" - SET PALETTE / SET VIDEO DAC REGISTER

partially documented function

Category: V - video

Inp.:

AX = 0086h

---CGA 4-color graphics---

BX = CGA paletee number

CX = background color

---CGA 2-color graphics---

BX ignored

CX = foreground color

---16-color graphics---

BX = palette register number

CX = palette value

---256-color graphics---

BX = DAC register number

CX =  DAC value

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is ignored in text modes and Hercules graphics modes

Few EGA/VGA adapters correctly set the foreground color in CGA mode 6

SeeAlso: AX=0041h,AX=004Eh,AX=0087h,AX=00ABh

INT 62


INT 62 0087 - FGDRIVER v4.02 - "FG_PALETTES" - SET ALL PALETTE REGISTERS

partially documented function

Category: V - video

Inp.:

AX = 0087h

ES:BX -> array of 16 WORDs containing values for palette registers

  (or first 16 DAC registers in 256-color modes)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is ignored in text modes, CGA and Hercules graphics modes

SeeAlso: AX=0041h,AX=004Eh,AX=0086h,AX=00ABh

INT 62


INT 62 0088 - FGDRIVER v4.02 - "FG_PAN" - SET SCREEN ORIGIN

partially documented function

Category: V - video

Inp.:

AX = 0088h

BX = new column for screen origin

CX = new row for screen origin

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00B2h

INT 62


INT 62 0089 - FGDRIVER v4.02 - "FG_PATTERN" - SPECIFY DISPLAY PATTERN FOR COLOR

partially documented function

Category: V - video

Inp.:

AX = 0089h

BX = index of pattern to define

CX = number of predefined display pattern

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

When displaying a pixel run map, Fastgraph uses the pattern associated

  with each color index rather than displaying the actual color

This call has no effect in text and 256-color graphics modes

SeeAlso: AX=0023h,AX=0045h

INT 62


INT 62 008A - FGDRIVER v4.02 - "FG_PCXHEAD" - GET PCX FILE HEADER

partially documented function

Category: V - video

Inp.:

AX = 008Ah

ES:BX -> variable pointer record (see #2107)

Return: AX = status

    0000h successful

    FFFEh not a PCX file

    FFFFh file does not exist

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=008Bh,AX=00B9h

INT 62


INT 62 008B - FGDRIVER v4.02 - "FG_PCXMODE" - GET OPTIMAL VIDEO MODE FOR DISPLAY

partially documented function

Category: V - video

Inp.:

AX = 008Bh

ES:BX -> PCX header (see AX=008Ah)

Return: AX = optimal video mode for PCX file

    FFFEh not a valid PCX header

    FFFFh unable to determine compatible video mode

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=008Ah,AX=00B9h

INT 62


INT 62 008C - FGDRIVER v4.02 - "FG_PCXPAL" - GET PALETTE STORED IN PCX FILE

partially documented function

Category: V - video

Inp.:

AX = 008Ch

ES:BX -> variable pointer record (see #2684)

Return: AX = number of colors in palette (16 or 256) or

    FFFEh not a valid PCX file

    FFFFh file not found

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=008Dh

INT 62


INT 62 008D - FGDRIVER v4.02 - "FG_PCXRANGE" - GET EXTENT OF PCX IMAGE

partially documented function

Category: V - video

Inp.:

AX = 008Dh

ES:BX -> variable pointer record (see #2685)

Return: indicated variables updated; if the indicated header is not valid,

  all of the coordinate variables are set to FFFFh

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=008Ch

INT 62


INT 62 008E - FGDRIVER v4.02 - "FG_PLAYING" - DETERMINE WHETHER ASYNC SOUND ACTIVE

partially documented function

Category: V - video

Inp.:

AX = 008Eh

Return: AX = sound state (0 = no asynchronous sound, 1 = async sound playing)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DCh

INT 62


INT 62 008F - FGDRIVER v4.02 - "FG_POINT" - DISPLAY A PIXEL

partially documented function

Category: V - video

Inp.:

AX = 008Fh

BX = column

CX = row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0006h,AX=001Dh,AX=004Dh,AX=0090h

INT 62


INT 62 0090 - FGDRIVER v4.02 - "FG_POINTX" - DISPLAY A PIXEL IN XOR MODE

partially documented function

Category: V - video

Inp.:

AX = 0090h

BX = column

CX = row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=004Dh,AX=008Fh

INT 62


INT 62 0091 - FGDRIVER v4.02 - "FG_POLYEDGE" - SPECIFY INCLUSION OF FINAL PIXELS

partially documented function

Category: V - video

Inp.:

AX = 0091h

BX = edge flag

    0000h include right- and bottom-edge pixels when drawing polygons

  with FG_POLYFILL

    0001h (default) exclue right- and bottom-edge pixels

SeeAlso: AX=0092h

INT 62


INT 62 0092 - FGDRIVER v4.02 - "FG_POLYFILL" - DRAW A FILLED CONVEX POLYGON

partially documented function

Category: V - video

Inp.:

AX = 0092h

CX = number of vertices

ES:BX -> variable pointer record (see #2108)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The vertex array consists of pairs of words specifying the X and Y

  coordinates of each vertex; the work array is used internally and

  must contain at least four times as many bytes as the polygon is

  high in pixels

This function is ignored in text modes

If the polygon is non-convex, only a portion of it may be filled

SeeAlso: AX=000Eh,AX=0027h,AX=0091h,AX=0093h,AX=0094h,AX=0095h

INT 62


INT 62 0093 - FGDRIVER v4.02 - "FG_POLYGON" - DRAW AN UNFILLED POLYGON

partially documented function

Category: V - video

Inp.:

AX = 0093h

CX = number of vertices in polygon

ES:BX -> variable pointer record (see #2109)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

SeeAlso: AX=0091h,AX=0092h,AX=0094h,AX=0095h

INT 62


INT 62 0094 - FGDRIVER v4.02 - "FG_POLYLINE" - DRAW AN UNFILLED POLYGON

partially documented function

Category: V - video

Inp.:

AX = 0094h

CX = number of vertices in polygon

ES:BX -> vertex array (see #2110)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is equivalent to "FG_POLYGON", but uses only a single

  array to define the vertices

This call is ignored in text modes

SeeAlso: AX=008Fh,AX=0092h,AX=0093h,AX=0095h

INT 62


INT 62 0095 - FGDRIVER v4.02 - "FG_POLYOFF" - DEFINE POLYGON DRAWING OFFSET

partially documented function

Category: V - video

Inp.:

AX = 0095h

BX = horizontal offset (default 0)

CX = vertical offset (default 0)

Desc:	define the offsets applied to all vertices of polygons drawn with

  "FG_POLYFILL" or "FG_POLYLINE"

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0092h,AX=0094h

INT 62


INT 62 0096 - FGDRIVER v4.02 - "FG_PRINT" - DISPLAY STRING OF HARDWARE CHARACTERS

partially documented function

Category: V - video

Inp.:

AX = 0096h

CX = length of string

ES:BX -> string to display

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The string is displayed in the current color, and the graphics cursor

  is updated to be just to the right of the last displayed character

This function is ignored in text modes

SeeAlso: AX=000Ch,AX=0037h,AX=0065h,AX=0097h

INT 62


INT 62 0097 - FGDRIVER v4.02 - "FG_PRINTC" - DISPLAY STRING OF HW CHARS (CLIPPED)

partially documented function

Category: V - video

Inp.:

AX = 0097h

CX = length of string

ES:BX -> string to display

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The string is displayed in the current color, and the graphics cursor

  is updated to be just to the right of the last displayed character;

  only the portion of the string that lies within the current clipping

  area is displayed

This function is ignored in text modes

SeeAlso: AX=0096h

INT 62


INT 62 0098 - FGDRIVER v4.02 - "FG_PUTBLOCK" - RESTORE RECTANGLE OF DISPLAY

partially documented function

Category: V - video

Inp.:

AX = 0098h

ES:BX -> buffer containing previously-saved image

CX = left edge

DX = right edge

SI = top edge

DI = bottom edge

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

In text modes, coordinates are character positions; in graphics modes,

  they are defined in screen space, and the left and right edges are

  adjusted to a byte boundary if necessary

SeeAlso: AX=003Ch,AX=0099h

INT 62


INT 62 0099 - FGDRIVER v4.02 - "FG_PUTIMAGE" - DISPLAY MODE-SPECIFIC BITMAP IMAGE

partially documented function

Category: V - video

Inp.:

AX = 0099h

ES:BX -> buffer containing mode-specific bitmap

CX = width in bytes

DX = height in pixel rows

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The bitmap is displayed with its lower left corner at the graphics

  cursor position; color 0 is NOT treated as transparent

SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0044h,AX=0098h

INT 62


INT 62 009A - FGDRIVER v4.02 - "FG_QUIET" - STOP CONTINUOUS SYNCHRONOUS SOUND

partially documented function

Category: V - video

Inp.:

AX = 009Ah

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call has no effect if there is no continuous sound playing

SeeAlso: AX=0059h,AX=0080h,AX=00BDh,AX=00DCh

INT 62


INT 62 009B - FGDRIVER v4.02 - "FG_RECT" - DRAW UNFILLED RECTANGLE IN SCREEN SPACE

partially documented function

Category: V - video

Inp.:

AX = 009Bh

BX = left edge column

CX = right edge column

DX = top edge row

SI = bottom edge row

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0006h,AX=0012h,AX=0023h,AX=003Ch

INT 62


INT 62 009C - FGDRIVER v4.02 - "FG_RESET" - ERASE SCREEN AND RESTORE SCREEN ATTR

partially documented function

Category: V - video

Inp.:

AX = 009Ch

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in graphics modes

The screen attributes are only restored if ANSI.SYS is loaded

SeeAlso: AX=0028h,AX=00B0h

INT 62


INT 62 009D - FGDRIVER v4.02 - "FG_RESIZE" - SET GRAPHICS MODE VIDEO PAGE SIZE

partially documented function

Category: V - video

Inp.:

AX = 009Dh

BX = new page width in pixels

CX = new page height in pixels

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The visible page must be set to 0000h before making this call

The mouse, joysticks, expanded memory, and extended memory must be

  reinitialized after this call

SeeAlso: AX=0084h,AX=00ACh

INT 62


INT 62 009E - FGDRIVER v4.02 - "FG_RESTORE" - COPY REGION FROM HIDDEN TO VIS PAGE

partially documented function

Category: V - video

Inp.:

AX = 009Eh

BX = left edge column

CX = right edge column

DX = top edge row

SI = bottom edge row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The left and right edges are adjusted to byte boundaries if necessary

SeeAlso: AX=00A2h,AX=00C6h

INT 62


INT 62 009F - FGDRIVER v4.02 - "FG_RESUME" - RESTART ASYNCHRONOUS SOUND

partially documented function

Category: V - video

Inp.:

AX = 009Fh

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00BDh,AX=00C0h

INT 62


INT 62 00A0 - FGDRIVER v4.02 - "FG_REVIMAGE" - DISPLAY REVERSED IMAGE (BITMAP)

partially documented function

Category: V - video

Inp.:

AX = 00A0h

ES:BX -> mode-specific bitmap

CX = width of bitmap in bytes

DX = height of bitmap in pixel rows

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The image is drawn with its lower left corner at the current graphics

  cursor position

SeeAlso: AX=0011h,AX=0024h,AX=0036h,AX=0044h,AX=00A1h,AX=00A9h,AX=00B9h

INT 62


INT 62 00A1 - FGDRIVER v4.02 - "FG_REVMASK" - DISPLAY REVERSED IMAGE (MASKING MAP)

partially documented function

Category: V - video

Inp.:

AX = 00A1h

ES:BX -> array containing image stored as a masking map (see #2098)

CX = number of pixel runs in masking map

DX = width of masking map in pixels

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes and in native EGA and VGA graphics

  modes

The image is drawn with its lower left corner at the current graphics

  cursor position

SeeAlso: AX=0010h,AX=001Fh,AX=0034h,AX=00A0h,AX=00A9h,AX=00C5h

INT 62


INT 62 00A2 - FGDRIVER v4.02 - "FG_SAVE" - COPY REGION FROM VISIBLE TO HIDDEN PAGE

partially documented function

Category: V - video

Inp.:

AX = 00A2h

BX = left edge column

CX = right edge column

DX = top edge row

SI = bottom edge row

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The left and right edges are adjusted to byte boundaries if necessary

SeeAlso: AX=009Eh,AX=00C6h

INT 62


INT 62 00A3 - FGDRIVER v4.02 - "FG_SCALE" - SCALE BITMAP

partially documented function

Category: V - video

Inp.:

AX = 00A3h

ES:BX -> variable pointer record (see #2622)

CX = width of source bitmap in pixels (0 < width <= 1024)

DX = height of source bitmap in pixels (0 < height <= 1024)

SI = desired width of scaled bitmap (0 < width <= 1024)

DI = desired height of scaled bitmap (0 < height <= 1024)

Return: nothing

SeeAlso: AX=00B7h

INT 62


INT 62 00A4 - FGDRIVER v4.02 - "FG_SCRLOCK" - GET STATE OF SCROLL LOCK KEY

partially documented function

Category: V - video

Inp.:

AX = 00A4h

Return: AX = ScrollLock state (0000h off, 0001h on)

Program: FGDRIVER is the external video driver for the shareware

  Fastgraph/Light by Ted Gruber Software

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ah,AX=0082h,AX=00A8h,AX=00B1h

INT 62


INT 62 00A5 - FGDRIVER v4.02 - "FG_SCROLL" - VERTICALLY SCROLL SCREEN REGION

partially documented function

Category: V - video

Inp.:

AX = 00A5h

BX = left edge column

CX = right edge column

DX = top edge row

SI = bottom edge row

DI = number of pixels by which to scroll (positive scrolls up,

      negative scrolls down)

ES = type of scroll

    0000h circular (rows scrolled off are copied to vacated rows)

    else vacated rows are filled with the current color

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

In graphics modes, the left and right edges are adjusted to byte

  boundaries if necessary

Circular scrolling uses part of the hidden page as a workspace

SeeAlso: AX=0088h,AX=00B2h

INT 62


INT 62 00A6 - FGDRIVER v4.02 - "FG_SETATTR" - SET TEXT-MODE CHARACTER ATTRIBUTE

partially documented function

Category: V - video

Inp.:

AX = 00A6h

BX = foreground

CX = background

DX = blink (0000h nonblinking, 0001h blink)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in graphics modes

SeeAlso: AX=000Bh,AX=003Ah,AX=0048h

INT 62


INT 62 00A7 - FGDRIVER v4.02 - "FG_SETBANKS" - SET SVGA READ AND WRITE BANKS

partially documented function

Category: V - video

Inp.:

AX = 00A7h

BX = memory bank from which to read (FFFFh leave unchanged)

CX = memory bank to which to write (FFFFh leave unchanged)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=003Bh

INT 62


INT 62 00A8 - FGDRIVER v4.02 - "FG_SETCAPS" - SET STATE OF CAPSLOCK KEY

partially documented function

Category: V - video

Inp.:

AX = 00A8h

BX = new state (0000h off, 0001h on)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ah,AX=0082h,AX=00A4h,AX=00B1h

INT 62


INT 62 00A9 - FGDRIVER v4.02 - "FG_SETCLIP" - SET CLIPPING REGION

partially documented function

Category: V - video

Inp.:

AX = 00A9h

BX = left edge of clipping region

CX = right edge of clipping region

DX = top edge of clipping region

SI = bottom edge of clipping region

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0010h,AX=001Fh,AX=0034h,AX=003Eh,AX=00A1h,AX=00C5h

INT 62


INT 62 00AA - FGDRIVER v4.02 - "FG_SETCOLOR" - SET CURRENT COLOR

partially documented function

Category: V - video

Inp.:

AX = 00AAh

BX = new color index (or text attribute in text modes)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0018h,AX=0040h,AX=0045h

INT 62


INT 62 00AB - FGDRIVER v4.02 - "FG_SETDACS" - SET VIDEO DAC CONTENTS

partially documented function

Category: V - video

Inp.:

AX = 00ABh

CX = number of DAC registers to set (0001h to 0100h)

DX = starting DAC register number (0000h to 00FFh)

ES:BX -> buffer containing DAC red/green/blue triples

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The register number wraps back to zero after reaching FFh

This call has no effect in text modes or graphics modes below 11h

SeeAlso: AX=0041h,AX=004Eh,AX=0086h,INT 10/AX=1012h

INT 62


INT 62 00AC - FGDRIVER v4.02 - "FG_SETENTRY" - SET TYPE AND ADDRESS OF VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 00ACh

BX = page number (00h-3Fh)

CX = page address

DX = page type (see #2100 at AX=0042h)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0038h,AX=0042h,AX=00B0h

INT 62


INT 62 00AD - FGDRIVER v4.02 - "FG_SETFUNC" - SET LOGICAL OPERATION FOR VIDEO OPS

partially documented function

Category: V - video

Inp.:

AX = 00ADh

BX = operation

    0000h replacement

    0001h AND

    0002h OR

    0003h XOR

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is only available in native EGA/VGA graphics modes

  (0Dh to 12h)

SeeAlso: AX=001Eh,AX=008Fh

INT 62


INT 62 00AE - FGDRIVER v4.02 - "FG_SETHPAGE" - SET HIDDEN VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 00AEh

BX = new hidden page (0000h to 003Fh)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The specified page must be a physical page or a virtual page

SeeAlso: AX=0043h,AX=00B2h,AX=00B6h

INT 62


INT 62 00AF - FGDRIVER v4.02 - "FG_SETLINES" - SET TEXT ROWS ON SCREEN

partially documented function

Category: V - video

Inp.:

AX = 00AFh

BX = new screen size (25, 43, 50)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0047h

INT 62


INT 62 00B0 - FGDRIVER v4.02 - "FG_SETMODE" - SELECT VIDEO MODE AND INITIALIZE

partially documented function

Category: V - video

Inp.:

AX = 00B0h

BX = new video mode or FFFFh for current mode (see #2111)

ES:DX -> WORD ???

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call resets the active video page to page 0000h, the clipping

  region to the entire screen, text rows to 25, etc.

SeeAlso: AX=004Bh,INT 10/AH=00h

INT 62


INT 62 00B1 - FGDRIVER v4.02 - "FG_SETNUM" - SET STATE OF NUMLOCK KEY

partially documented function

Category: V - video

Inp.:

AX = 00B1h

BX = new state (0000h off, 0001h on)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ah,AX=0082h,AX=00A4h,AX=00A8h

INT 62


INT 62 00B2 - FGDRIVER v4.02 - "FG_SETPAGE" - SET ACTIVE VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 00B2h

BX = new video page (0000h to 003Fh)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The specified page must be a physical or virtual page

SeeAlso: AX=0039h,AX=0042h,AX=0043h,AX=0050h,AX=0088h

INT 62


INT 62 00B3 - FGDRIVER v4.02 - "FG_SETRGB" - SET VIDEO DAC REGISTER CONTENTS

partially documented function

Category: V - video

Inp.:

AX = 00B3h

BX = palette or DAC register number

CX = red color component

DX = green component

SI = blue component

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The register number may be negative for Tandy, PCjr, and 200-line

  EGA graphics modes to specify an intense color

This call has no effect in text, CGA graphics, and Hercules graphics

  modes

SeeAlso: AX=004Eh

INT 62


INT 62 00B4 - FGDRIVER v4.02 - UNUSED

partially documented function

Category: V - video

Inp.:

AX = 00B4h

Return: AX = 0000h

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

INT 62


INT 62 00B5 - FGDRIVER v4.02 - "FG_SETVIEW" - DEFINE VIEWPORT

partially documented function

Category: V - video

Inp.:

AX = 00B5h

ES:BX -> variable record (see #2686)

CX = viewport's top edge in screen space

DX = viewport's bottom edge in screen space

Return: nothing

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=004Fh

INT 62


INT 62 00B6 - FGDRIVER v4.02 - "FG_SETVPAGE" - SET VISIBLE VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 00B6h

BX = new video page (0000h to 003Fh)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The specified page must be a physical or virtual page

SeeAlso: AX=0043h,AX=00AEh,AX=00B2h

INT 62


INT 62 00B7 - FGDRIVER v4.02 - "FG_SHEAR" - SHEAR UNPACKED BITMAP

partially documented function

Category: V - video

Inp.:

AX = 00B7h

ES:BX -> variable pointer record (see #2687)

CX = bitmap width (0 < width <= 1024)

DX = bitmap height (0 < height <= 1024)

SI = size of resulting image (width for horiz. shear, height for vert.)

DI = shear type

    0000h horizontal shear to left

    0001h horizontal shear to right

    0002h vertical shear to left (left edge stretched up)

    0003h vertical shear to right (right edge stretched up)

Return: nothing

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00A3h

INT 62


INT 62 00B8 - FGDRIVER v4.02 - "FG_SHOWFLIC" - DISPLAY IMAGE FROM FLI/FLC FILE

partially documented function

Category: V - video

Inp.:

AX = 00B8h

ES:BX -> ASCIZ filename for FLI/FLC file

CX = number of times to display image file (0000h = continuously)

DX = control flags (see #2688 at AX=0031h)

Return: AX = status

    0000h successful

    0001h file not found

    0002h not a valid FLI/FLC file

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

the FLI/FLC display may be stopped by the user by pressing Esc

SeeAlso: AX=0030h,AX=0031h,AX=00B9h

INT 62


INT 62 00B9 - FGDRIVER v4.02 - "FG_SHOWPCX" - DISPLAY IMAGE FROM PCX FILE

partially documented function

Category: V - video

Inp.:

AX = 00B9h

ES:BX -> ASCIZ filename of PCX image

CX = flags (see #2112)

Return: AX = status

    0000h success

    0001h file not found

    0002h not a PCX file

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is ignored in text modes and Hercules low-res graphics

SeeAlso: AX=005Bh,AX=0060h"1.10",AX=006Ch,AX=006Dh,AX=006Eh,AX=00B8h,AX=00BAh

SeeAlso: AX=00BBh

INT 62


INT 62 00BA - FGDRIVER v4.02 - "FG_SHOWPPR" - DISPLAY IMAGE FROM PPR FILE

partially documented function

Category: V - video

Inp.:

AX = 00BAh

ES:BX -> ASCIZ filename of packed pixel run image

CX = width in pixels (nonzero)

Return: AX = status

    0000h successful

    0001h file not found

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The image is displayed with its lower left corner at the current

  graphics cursor position

This function is ignored in text modes and 256-color graphics modes

SeeAlso: AX=005Bh,AX=006Ch,AX=006Dh,AX=006Eh,AX=00B9h,AX=00BBh

INT 62


INT 62 00BB - FGDRIVER v4.02 - "FG_SHOWSPR" - DISPLAY IMAGE FROM SPR FILE

partially documented function

Category: V - video

Inp.:

AX = 00BBh

ES:BX -> ASCIZ filename of standard pixel run image

CX = width in pixels (nonzero)

Return: AX = status

    0000h successful

    0001h file not found

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The image is displayed with its lower left corner at the current

  graphics cursor position

This function is ignored in text modes

SeeAlso: AX=005Bh,AX=006Ch,AX=006Dh,AX=006Eh,AX=00B9h,AX=00BAh

INT 62


INT 62 00BC - FGDRIVER v4.02 - "FG_SOUND" - MAKE SOUND FOR SPECIFIED DURATION

partially documented function

Category: V - video

Inp.:

AX = 00BCh

BX = frequency in Hertz (18-32767)

CX = duration in clock ticks (0000h or negative for continuous sound)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,

  AX=00AAh) is already in progress

SeeAlso: AX=0059h,AX=0080h,AX=00BDh,AX=00C0h,AX=00DBh

INT 62


INT 62 00BD - FGDRIVER v4.02 - "FG_SOUNDS" - PLAY SOUNDS IN BACKGROUND

partially documented function

Category: V - video

Inp.:

AX = 00BDh

CX = number of times to cycle through sound list

ES:BX -> sounds array (see #2113)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored if asynchronous sound (AX=00A5h,AX=00A8h,

  AX=00AAh) is already in progress

SeeAlso: AX=0059h,AX=0081h,AX=00BCh,AX=00C0h,AX=00DCh

INT 62


INT 62 00BE - FGDRIVER v4.02 - "FG_SPLIT" - ENABLE/DISABLE SPLIT SCREEN ENVIRONMNT

partially documented function

Category: V - video

Inp.:

AX = 00BEh

BX = beginning row for bottom half of split-screen

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

INT 62


INT 62 00BF - FGDRIVER v4.02 - "FG_STALL" - PAUSE FOR SPECIFIED DURATION

partially documented function

Category: V - video

Inp.:

AX = 00BFh

BX = duration in processor-dependent delay units (see AX=0070h)

Return: after delay elapses

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0070h,INT 2F/AX=1224h

INT 62


INT 62 00C0 - FGDRIVER v4.02 - "FG_SUSPEND" - TEMPORARILY STOP ASYNCHRONOUS SOUND

partially documented function

Category: V - video

Inp.:

AX = 00C0h

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call has no effect if there is no asynchronous sound in progress

The program must not exit while sound is suspended

SeeAlso: AX=0059h,AX=0080h,AX=00BDh,AX=00C0h,AX=00DBh

INT 62


INT 62 00C1 - FGDRIVER v4.02 - "FG_SVGAINIT" - INITIALIZE FASTGRAPH SVGA KERNEL

partially documented function

Category: V - video

Inp.:

AX = 00C1h

BX = method (see #2114)

Return: AX = status

    0000h no VESA BIOS or supported SVGA chipset

    0001h using VESA BIOS

    0002h-0016h specific chipset being used (same as "method" below)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function must be called before attempting to set SVGA graphics

  modes (18h to 1Dh) or using "FG_BESTMODE", "FG_TESTMODE", or

  "FG_MEMORY"

SeeAlso: AX=0025h,AX=00C2h,AX=00C3h

INT 62


INT 62 00C2 - FGDRIVER v4.02 - "FG_SVGASTAT" - GET SVGA CHIPSET INFORMATION

partially documented function

Category: V - video

Inp.:

AX = 00C2h

Return: AX = chipset information (see #2115)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0025h,AX=00C1h,AX=00C3h

INT 62


INT 62 00C3 - FGDRIVER v4.02 - "FG_SVGAVER" - GET FASTGRAPH SVGA KERNEL VERSION

partially documented function

Category: V - video

Inp.:

AX = 00C3h

ES:BX -> variable pointer record (see #2116)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00C1h,AX=00C2h

INT 62


INT 62 00C4 - FGDRIVER v4.02 - "FG_TCDEFINE" - DEFINE TRANSPARENCY OF COLOR INDEX

partially documented function

Category: V - video

Inp.:

AX = 00C4h

BX = color index

CX = transparency (00h opaque, other transparent)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is ignored in text modes

SeeAlso: AX=00C5h,AX=00C6h

INT 62


INT 62 00C5 - FGDRIVER v4.02 - "FG_TCMASK" - SET TRANSPARENT COLORS

partially documented function

Category: V - video

Inp.:

AX = 00C5h

BX = colors to consider transparent (bit 0 = color 0, etc)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This call is ignored in text modes

The specified colors are considered transparent by "FG_TCXFER"

SeeAlso: AX=00C4h,AX=00C6h

INT 62


INT 62 00C6 - FGDRIVER v4.02 - "FG_TCXFER" - COPY REGION EXCLUDING TRANSPARENT

partially documented function

Category: V - video

Inp.:

AX = 00C6h

CX = source video page

DX = destination video page

ES:BX -> copy record (see #2117)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

Pixels which are in any of the colors defined as transparent with

  "FG_TCMASK" (see AX=00C5h) are left unchanged in the destination

  region

The source and destination regions must not overlap if they are located

  on the same page

This call is ignored in text modes

SeeAlso: AX=00C4h,AX=00C5h,AX=00CAh

INT 62


INT 62 00C7 - FGDRIVER v4.02 - "FG_TESTMODE" - CHECK IF VIDEO MODE AVAILABLE

partially documented function

Category: V - video

Inp.:

AX = 00C7h

BX = desired video mode (00h-17h, also 18h-1Dh after "FG_SVGAINIT")

CX = required number of video pages (ignore memory size if <= 0)

Return: AX = status

    0000h mode not available with requested number of pages

    0001h mode is available

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0005h,AX=00B0h

INT 62


INT 62 00C8 - FGDRIVER v4.02 - "FG_TEXT" - DISPLAY STRING OF CHARACTERS

partially documented function

Category: V - video

Inp.:

AX = 00C8h

CX = length of string

ES:BX -> string

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The string is displayed starting at the text cursor position using the

  current text attribute (text modes) or color index (graphics modes)

The text cursor position is updated after this call

SeeAlso: AX=000Ch,AX=0096h,AX=00C9h

INT 62


INT 62 00C9 - FGDRIVER v4.02 - "FG_TEXTC" - DISPLAY STRING OF CHARACTERS (CLIPPED)

partially documented function

Category: V - video

Inp.:

AX = 00C9h

CX = length of string

ES:BX -> string

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

The string is displayed starting at the text cursor position using the

  current text attribute (text modes) or color index (graphics modes),

  showing only the portion within the current clipping window

The text cursor position is updated after this call

SeeAlso: AX=00C8h

INT 62


INT 62 00CA - FGDRIVER v4.02 - "FG_TRANSFER" - COPY REGION

partially documented function

Category: V - video

Inp.:

AX = 00CAh

CX = source video page

DX = destination video page

ES:BX -> copy record (see #2117)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

The source and destination regions must not overlap if they are located

  on the same page

SeeAlso: AX=009Eh,AX=00A2h,AX=00A5h,AX=00C6h

INT 62


INT 62 00CB - FGDRIVER v4.02 - "FG_UNPACK" - EXPAND MODE-SPECIFIC BITMAP

partially documented function

Category: V - video

Inp.:

AX = 00CBh

ES:BX -> variable pointer record (see #2689)

CX = size of source bitmap in bytes

Return: result buffer filled

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=0083h

INT 62


INT 62 00CC - FGDRIVER v4.02 - "FG_VBADDR" - GET ADDRESS OF VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00CCh

BX = virtual buffer handle (0000h-001Fh)

Return: DX:AX -> virtual buffer

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CDh,AX=00CEh,AX=00CFh,AX=00D3h

INT 62


INT 62 00CD - FGDRIVER v4.02 - "FG_VBALLOC" - CREATE VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00CDh

BX = width of virtual buffer in pixels

CX = height in pixels

Return: AX = handle for virtual buffer, or

    FFFEh out of memory

    FFFFh virtual buffer table full

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CCh,AX=00CEh,AX=00D0h,AX=00D1h,AX=00D2h,AX=00D4h

INT 62


INT 62 00CE - FGDRIVER v4.02 - "FG_VBCLOSE" - CLOSE ACTIVE VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00CEh

Desc:	close the active virtual buffer and direct further graphics to the

  active video page

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CCh,AX=00D1h,AX=00D4h,AX=00D5h,AX=00D9h

INT 62


INT 62 00CF - FGDRIVER v4.02 - "FG_VBCOPY" - COPY RECT BETWEEN VIRTUAL BUFFERS

partially documented function

Category: V - video

Inp.:

AX = 00CFh

ES:BX -> variable record (see #2690)

CX = handle for source virtual buffer

DX = handle for destination virtual buffer

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

if the destination buffer is the same as the source buffer, the regions

  must not overlap

SeeAlso: AX=00D0h,AX=00D1h,AX=00D4h,AX=00D6h,AX=00D7h

INT 62


INT 62 00D0 - FGDRIVER v4.02 - "FG_VBCUT" - COPY RECT FROM VIDEO TO VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00D0h

BX = source region's left edge

CX = source region's right edge

DX = source region's top edge

SI = source region's bottom edge

DI = X coordinate of destination's upper left corner

ES = Y coordinate of destination's upper left corner

Desc:	copy a rectangle from the active video page to the active virtual

  buffer

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CDh,AX=00CFh,AX=00D4h,AX=00D6h

INT 62


INT 62 00D1 - FGDRIVER v4.02 - "FG_VBDEFINE" - CREATE VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00D1h

ES:BX -> memory block for virtual buffer

CX = buffer width in pixels

DX = buffer height in pixels

Return: AX = virtual buffer handle

    FFFFh on error

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

the application-provided buffer must be large enough to hold CX*DX

  bytes

SeeAlso: AX=00CCh,AX=00CDh,AX=00CEh,AX=00D2h,AX=00D4h,AX=00D5h

INT 62


INT 62 00D2 - FGDRIVER v4.02 - "FG_VBFREE" - RELEASE VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00D2h

BX = virtual buffer handle

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

this function should be used only for buffers created with FG_VBALLOC

SeeAlso: AX=00CDh,AX=00D4h,AX=00D5h

INT 62


INT 62 00D3 - FGDRIVER v4.02 - "FG_VBHANDLE" - GET ACTIVE VIRTUAL BUFFER'S HANDLE

partially documented function

Category: V - video

Inp.:

AX = 00D3h

Return: AX = handle for active virtual buffer

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CCh,AX=00D4h

INT 62


INT 62 00D4 - FGDRIVER v4.02 - "FG_VBINIT" - INITIALIZE VIRTUAL BUFFER ENVIRONMENT

partially documented function

Category: V - video

Inp.:

AX = 00D4h

Return: nothing

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

this function must be called before any other virtual buffer functions

  are used

SeeAlso: AX=00CDh,AX=00D5h

INT 62


INT 62 00D5 - FGDRIVER v4.02 - "FG_VBOPEN" - MAKE VIRTUAL BUFFER ACTIVE

partially documented function

Category: V - video

Inp.:

AX = 00D5h

BX = virtual buffer handle

Return: AX = status

    0000h successful

    FFFEh no buffer defined for specified handle

    FFFFh invalid buffer handle

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CDh,AX=00CEh,AX=00D1h,AX=00D4h,AX=00D9h

INT 62


INT 62 00D6 - FGDRIVER v4.02 - "FG_VBPASTE" - COPY RECT FROM VIRTUAL BUF TO VIDEO

partially documented function

Category: V - video

Inp.:

AX = 00D6h

BX = source region's left edge

CX = source region's right edge

DX = source region's top edge

SI = source region's bottom edge

DI = X coordinate of destination's upper left corner

ES = Y coordinate of destination's upper left corner

Desc:	copy a rectangle from the active virtual buffer to the active video

  page

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00CFh,AX=00D0h,AX=00D4h,AX=00D7h

INT 62


INT 62 00D7 - FGDRIVER v4.02 - "FG_VBTCCOPY" - COPY RECTANGLE BETWEEN VIRTUAL BUFS

partially documented function

Category: V - video

Inp.:

AX = 00D7h

ES:BX -> variable record (see #2691)

CX = source virtual buffer's handle

DX = destination virtual buffer's handle

Desc:	copy rectangle from one virtual buffer to another with transparent

  colors

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

if the destination buffer is the same as the source buffer, the regions

  must not overlap

SeeAlso: AX=00CFh,AX=00D0h,AX=00D6h,AX=00D8h

INT 62


INT 62 00D8 - FGDRIVER v4.02 - "FG_VBTCXFER" - COPY RECTANGLE TO ACTIVE VIDEO PAGE

partially documented function

Category: V - video

Inp.:

AX = 00D8h

BX = source region's left edge

CX = source region's right edge

DX = source region's top edge

SI = source region's bottom edge

DI = X coordinate of destination's upper left corner

ES = Y coordinate of destination's upper left corner

Desc:	copy a rectangle from the active virtual buffer to the active video

  page, with transparent colors

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

SeeAlso: AX=00D6h,AX=00D7h

INT 62


INT 62 00D9 - FGDRIVER v4.02 - "FG_VBUNDEF" - RELEASE HANDLE FOR VIRTUAL BUFFER

partially documented function

Category: V - video

Inp.:

AX = 00D9h

BX = virtual buffer handle

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

the specified handle must not reference the currently-active virtual

  buffer

SeeAlso: AX=00D1h,AX=00D5h

INT 62


INT 62 00DA - FGDRIVER v4.02 - "FG_VGASTATE" - SAVE/RESTORE VGA CONTROLLER STATE

partially documented function

Category: V - video

Inp.:

AX = 00DAh

BX = direction (0000h save, else restore)

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667)

this function is only meaningful in modes 0Dh and above

INT 62


INT 62 00DB - FGDRIVER v4.02 - "FG_VOICE" - START SOUND

partially documented function

Category: V - video

Inp.:

AX = 00DBh

BX = channel on TI sound chip

    1-3 = channels 1-3, 4 = channel 4 with periodic noise,

    5 = channel 4 with white noise

CX = frequency in Hz (18-32767 for channels 1-3; 0=512 Hz, 1=1024 Hz,

      2=2048 Hz for channels 4 and 5)

DX = volume

SI = duration in clock ticks (continuous if <= 0)

Program: FGDRIVER is the external video driver for the shareware

  Fastgraph/Light by Ted Gruber Software

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is only available on the PCjr and Tandy 1000 machines

SeeAlso: AX=0080h,AX=00BCh,AX=00DCh

INT 62


INT 62 00DC - FGDRIVER v4.02 - "FG_VOICES" - PLAY SOUNDS IN BACKGROUND

partially documented function

Category: V - video

Inp.:

AX = 00DCh

ES:BX -> tone array (see #2118)

CX = number of times to repeat tone array

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

This function is only available on the PCjr and Tandy 1000 machines

SeeAlso: AX=0059h,AX=0081h,AX=00BDh,AX=00DBh

INT 62


INT 62 00DD - FGDRIVER v4.02 - "FG_WAITFOR" - DELAY FOR SPECIFIED DURATION

partially documented function

Category: V - video

Inp.:

AX = 00DDh

BX = duration in clock ticks

Return: after delay elapses

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00BFh,INT 1A/AX=FF01h

INT 62


INT 62 00DE - FGDRIVER v4.02 - "FG_WAITKEY" - FLUSH KEYBOARD BUFFER AND AWAIT KEY

partially documented function

Category: V - video

Inp.:

AX = 00DEh

Return: after next key pressed

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=000Ah,AX=0046h,AX=0063h,AX=0069h,INT 16/AH=00h

INT 62


INT 62 00DF - FGDRIVER v4.02 - "FG_WAITVR" - ENABLE/DISABLE VERTICAL RETRACE WAIT

partially documented function

Category: V - video

Inp.:

AX = 00DFh

BX = new state (0000h disabled, 0001h enabled)

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

INT 62


INT 62 00E0 - FGDRIVER v4.02 - "FG_WHERE" - GET CURRENT CURSOR POSITION

partially documented function

Category: V - video

Inp.:

AX = 00E0h

ES:BX -> variable pointers (see #2119)

Return: indicated variables filled with cursor row and column for active

  display

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=0054h,AX=0058h,AX=006Bh,AX=007Eh

INT 62


INT 62 00E1 - FGDRIVER v4.02 - "FG_XALPHA" - CONVERT SCREEN COLUMN TO CHAR COLUMN

partially documented function

Category: V - video

Inp.:

AX = 00E1h

BX = screen space column

Return: AX = character space column containing specified coordinate

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00E2h,AX=00E4h

INT 62


INT 62 00E2 - FGDRIVER v4.02 - "FG_XCONVERT" - CONVERT CHAR COLUMN TO SCREEN COL

partially documented function

Category: V - video

Inp.:

AX = 00E2h

BX = character space column

Return: AX = screen space column of leftmost pixel in specified character col

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00E2h,AX=00E5h

INT 62


INT 62 00E3 - FGDRIVER v4.02 - "FG_XVIEW" - CONVERT VIEWPORT COORDINATE

partially documented function

Category: V - video

Inp.:

AX = 00E3h

BX = horizontal viewport coordinate

Return: AX = screen space X coordinate corresponding to supplied coordinate

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

if no viewport has been defined, the returned coordinate will be the

  same as the viewport coordinate

SeeAlso: AX=00E2h,AX=00E6h

INT 62


INT 62 00E4 - FGDRIVER v4.02 - "FG_YALPHA" - CONVERT SCREEN ROW TO CHARACTER ROW

partially documented function

Category: V - video

Inp.:

AX = 00E4h

BX = screen space row

Return: AX = character space row containing specified coordinate

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00E1h,AX=00E5h

INT 62


INT 62 00E5 - FGDRIVER v4.02 - "FG_YCONVERT" - CONVERT CHARACTER ROW TO SCREEN ROW

partially documented function

Category: V - video

Inp.:

AX = 00E5h

BX = character space row

Return: AX = screen space row of topmost pixel in specified character row

Note:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

SeeAlso: AX=00E2h,AX=00E4h,AX=00E6h

INT 62


INT 62 00E6 - FGDRIVER v4.02 - "FG_YVIEW" - TRANSLATE VERTICAL VIEWPORT COORDINATE

partially documented function

Category: V - video

Inp.:

AX = 00E6h

BX = viewport Y coordinate

Return: AX = screen space row for viewport coordinate

Program: FGDRIVER is the external video driver for the shareware

  Fastgraph/Light by Ted Gruber Software

Notes:	the FGDRIVER functions are rearranged with each major release, but

  their parameters do not change (see #2667 at AX=0000h)

if no viewport has been defined, the returned coordinate will be the

  same as the viewport coordinate

SeeAlso: AX=00E3h,AX=00E5h

INT 62


INT 62 01-- - Cswitch - GIVE UP REST OF TIME-SLICE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 01h

Program: Cswitch is a set of multitasking functions by Herb Rose

SeeAlso: AH=05h"Cswitch",AH=06h"Cswitch",INT 15/AX=1000h,INT 2F/AX=1680h

INT 62


INT 62 01-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI

Category: N - network

Inp.:

AH = 01h

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 02-- - Cswitch - WAIT FOR SEMAPHORE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 02h

DX = semaphore number (0-63)

Return: AX = FFFFh bad semaphore number

     else  success

SeeAlso: AH=03h"Cswitch",AH=04h"Cswitch"

INT 62


INT 62 02-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - INITIALIZE

Category: N - network

Inp.:

AH = 02h

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=00h"ETHDEV",AH=03h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"

SeeAlso: INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 03-- - Cswitch - CHECK SEMAPHORE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 03h

DX = semaphore number (0-63)

Return: AX = status

    FFFFh not owned

    else  owned

SeeAlso: AH=02h,AH=04h

INT 62


INT 62 03-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET REAL IP ADDRESS

Category: N - network

Inp.:

AH = 03h

DS:SI -> DWORD buffer for IP address

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 04-- - Cswitch - TRIGGER SEMAPHORE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 04h

DX = semaphore number (0-63)

Return: AX = status

    FFFFh bad semaphore number

    else  success

SeeAlso: AH=02h"Cswitch",AH=03h"Cswitch"

INT 62


INT 62 04-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???

Category: N - network

Inp.:

AH = 04h

BX = ???

ES:SI -> FAR routine for ???

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 05-- - Cswitch - SLEEP

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 05h

BX = seconds to sleep

SeeAlso: AH=01h"Cswitch",AH=06h"Cswitch",AH=08h"Cswitch"

INT 62


INT 62 05-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 05h

???

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 06-- - Cswitch - SUSPEND

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 06h

SeeAlso: AH=05h"Cswitch",AH=08h"Cswitch"

INT 62


INT 62 06-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 06h

???

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 07-- - Cswitch - SPAWN

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 07h

ES:BX -> function address to start executing at

CX = priority (1-10)

Return: AX = result/status

    FFFDh  no free memory control blocks

    FFFEh  no free task control blocks

    FFFFh  not enough memory to create new task stack

    >0	   the tcb number of the new task, indicating no error

SeeAlso: AH=0Fh"Cswitch",AH=10h"Cswitch"

INT 62


INT 62 07-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 07h

DS:SI -> ???

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 08-- - Cswitch - WAKE UP TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 08h

BX = tcb identifier

SeeAlso: AH=05h,AH=06h

INT 62


INT 62 08-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 08h

CX = ???

ES:SI -> ??? buffer (see #2120)

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 08-- - MS SQL Server/Sybase DBLIBRARY interface - UNINSTALL/GET PSP ADDR

Category: - - (none)

Inp.:

AH = 08h

CX = FFFEh

DX = FFFFh

Return: AX = PSP address of resident DBLIBRARY

Note:	this call does not free the memory allocated to the TSR; the calling

  code must do the deallocation.

SeeAlso: INT 62"DBLIBRARY"

INT 62


INT 62 09-- - Cswitch - SET PRIORITY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 09h

BX = new base priority (1-10)

Note:	the lower the priority is numerically, the more often the task will run

INT 62


INT 62 09-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - HOOK TIMER INTERRUPT

Category: N - network

Inp.:

AH = 09h

Return: CF clear if successful

    AX = handler ID

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=0Ah"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP"

SeeAlso: INT 64"BW-NFS"

INT 62


INT 62 0A-- - Cswitch - TEST MESSAGE QUEUE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Ah

DX = queue number (0-63)

Return: AX = result/message size

    0000h nothing on queue

    FFFFh bad queue number

    else  number of bytes in first message in queue

SeeAlso: AH=0Bh"Cswitch",AH=0Ch"Cswitch"

INT 62


INT 62 0A-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - UNHOOK TIMER INTERRUPT

Category: N - network

Inp.:

AH = 0Ah

DX = handler ID

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=09h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP"

SeeAlso: INT 64"BW-NFS"

INT 62


INT 62 0B-- - Cswitch - SEND MESSAGE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Bh

CX = number of bytes to write

DS:SI -> buffer

DX = queue number (0-63)

Return: AX = result/message size

    0000h no message was on queue

    FFFEh triggered by something arriving, redo the call

    FFFFh bad queue number

    else  number of bytes in message

SeeAlso: AH=0Ah"Cswitch",AH=0Ch"Cswitch"

INT 62


INT 62 0B-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ADD ???

Category: N - network

Inp.:

AH = 0Bh

AL = ???

DX = ???

BP = ???

ES:SI -> ???

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=0Ch"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP"

SeeAlso: INT 64"BW-NFS"

INT 62


INT 62 0C-- - Cswitch - READ MESSAGE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Ch

CX = number of bytes to read

DS:SI -> buffer

DX = queue number (0-63)

Return: AX = status

    FFFFh bad queue number

    else  number of bytes transferred

SeeAlso: AH=0Ah,AH=0Bh

INT 62


INT 62 0C-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - REMOVE ???

Category: N - network

Inp.:

AH = 0Ch

DX = ???

BP = ???

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=0Bh"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP"

SeeAlso: INT 64"BW-NFS"

INT 62


INT 62 0D-- - Cswitch - DON'T ALLOW TASK TO BE SWAPPED OUT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Dh

SeeAlso: AH=0Eh"Cswitch"

INT 62


INT 62 0D-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI

Category: N - network

Inp.:

AH = 0Dh

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 0E-- - Cswitch - ALLOW TASK TO BE SWAPPED OUT

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Eh

SeeAlso: AH=0Dh"Cswitch"

INT 62


INT 62 0E-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - BEGIN CRITICAL SECTION

Category: N - network

Inp.:

AH = 0Eh

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=0Fh"ETHDEV",AH=10h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"

SeeAlso: INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 0F-- - Cswitch - LOAD AND RUN PROGRAM FROM DISK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Fh

ES:BX -> command line

CX = priority (1-10)

DX = background flag (nonzero allows loading to EMS)

Return: AX = status

    0000h task loader queue is full

    0001h  no error

SeeAlso: AH=07h"Cswitch",AH=10h"Cswitch",AH=13h"Cswitch"

INT 62


INT 62 0F-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - END CRITICAL SECTION

Category: N - network

Inp.:

AH = 0Fh

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=0Eh"ETHDEV",AH=10h"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"

SeeAlso: INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 10-- - Cswitch - TERMINATE SPAWNED PROGRAM

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 10h

SeeAlso: AH=07h"Cswitch",AH=0Fh"Cswitch"

INT 62


INT 62 10-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - QUERY CRITICAL SECTION

Category: N - network

Inp.:

AH = 10h

Return: CF clear if no critical section active

CF set if in critical section

SeeAlso: AH=0Eh"ETHDEV",AH=0Fh"ETHDEV",AH=FEh,INT 21/AH=3Fh"BW-TCP"

SeeAlso: INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 11-- - Cswitch - GET TCB INFORMATION

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 11h

ES:BX -> a pointer which will be set to the tcb address

Return: AX = tcb indentifier

SeeAlso: AH=12h

INT 62


INT 62 11-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???

Category: N - network

Inp.:

AH = 11h

ES:SI -> ???

Return: CF clear

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 12-- - Cswitch - GET TCB ADDRESS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 12h

ES:BX -> a pointer which will be set to the tcb table address

Return: AX = tcb indentifier

SeeAlso: AH=11h"Cswitch"

INT 62


INT 62 12-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET SOCKET NUMBER???

Category: N - network

Inp.:

AH = 12h

Return: CF clear if successful

    AX = socket number??? (memory variable incremented after reading)

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 13-- - Cswitch - CHECK STATUS OF PREVIOUS LOAD_TASK

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 13h

Return: AX = result

    FFFCh no Memory Control Blocks available

    FFFDh no TCBs available

    FFFEh insufficient memory

    FFFFh cannot open file

    0000h load in progress (not done yet)

    else  tcb indentifier

SeeAlso: AH=0Fh

INT 62


INT 62 13-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 13h

CX = ???

Return: CF clear if successful

    AL = 00h

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 14-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 14h

ES:SI -> ???

Return: CF clear if successful

    AL = 00h

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 15-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET ???

Category: N - network

Inp.:

AH = 15h

Return: CF clear if successful

    AX = ??? (destroyed???)

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Notes:	call this function after reading the "ETHDEV27" device

the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 16-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 16h

???

Return: CF clear if successful

CF set on error

    AL = error code

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 17-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

Category: N - network

Inp.:

AH = 17h

DX = segment of ???

Return: CF clear

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 18-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ALLOCATE AND MAP EMS FOR DRIVER

Category: N - network

Inp.:

AH = 18h

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Notes:	calls function 17h after EMS allocated and mapped

the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=FEh,INT 21/AH=3Fh"BW-TCP",INT 63"BW-TCP",INT 64"BW-NFS"

INT 62


INT 62 47-- - PC Tools v7 COMMUTE - ???

Category: R - remote control/file access

Inp.:

AH = 47h

AL = subfunction (00h-31h)

???

CF set

Return: ???

Program: COMMUTE is a remote-control program bundled with Central Point

  Software's PC Tools

INT 62


INT 62 48-- - PC Tools v7 COMMUTE - ???

Category: R - remote control/file access

Inp.:

AH = 48h

AL = ???

???

CF set

Return: ???

INT 62


INT 62 49-- - PC Tools v7 COMMUTE - ???

Category: R - remote control/file access

Inp.:

AH = 49h

???

CF set

Return: ???

Note:	may be the same as AH=4Ch

INT 62


INT 62 4A-- - PC Tools v7 COMMUTE - ???

Category: R - remote control/file access

Inp.:

AH = 4Ah

AL = subfunction (00h-46h)

???

CF set

Return: ???

INT 62


INT 62 4B-- - PC Tools v7 COMMUTE - ???

Category: R - remote control/file access

Inp.:

AH = 4Bh

BX = 1234h

CX = 1234h

ES = ???

CF set

Return: ???

Program: COMMUTE is a remote-control program bundled with Central Point

  Software's PC Tools

INT 62


INT 62 4C-- - PC Tools v7 COMMUTE - ???

Category: R - remote control/file access

Inp.:

AH = 4Ch

BL = subfunction

    00h ???

    02h ???

Return: CF clear if successful

CF set on error

INT 62


INT 62 6262 - PC Tools v7 COMMUTE - INSTALLATION CHECK

Category: R - remote control/file access

Inp.:

AX = 6262h

CF set

Return: AX = 0000h

BX = segment of resident code's PSP

Program: COMMUTE is a remote-control program bundled with Central Point

  Software's PC Tools

INT 62


INT 62 C0-- - GWBTSR - API

undocumented function

Category: s - sound/speech

Inp.:

AH = C0h

AL = function

    00h installation check

Return: AX = 00FFh if installed

    01h ???

Program: GWBTSR is a huge (48K) resident mixer controller for the Gateway 2000

  sound card (OEM version of Aztech Sound Galaxy)

Index:	installation check;GWBTSR

INT 62


INT 62 FE-- - BW-TCP - ETHDRV.SYS - MAP EMS PAGE FRAME

Category: N - network

Inp.:

AH = FEh

AL = direction

    00h map in driver's memory block

    01h map out driver's memory block

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4C to INT FB, selected by configuration

Notes:	this function is supported by at least the SLIP and ODI versions of

  ETHDEV.SYS

the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: INT 21/AH=3Fh"BW-TCP",INT 62/AH=00h"ETHDEV",INT 62/AH=18h"ETHDEV"

SeeAlso: INT 63"BW-TCP",INT 64/AH=FEh

INT 62


INT 63 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 63


INT 63 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Desc:	this vector stores the last four bytes of the parameter table for

  hard disk 0

SeeAlso: INT 60"Adaptec",INT 61"Adaptec",INT 62"Adaptec",INT 64"Adaptec"

INT 63


INT 63 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the segment of the RAM data area

  to be used by the expansion ROM at F400h:4000h, and the high word

  contains the length of the data area; this segment and size are

  both set to 0000h if no ROM is installed at F400h:4000h

SeeAlso: INT 60"TI Professional PC",INT 62"TI Professional"

SeeAlso: INT 64"TI Professional PC"

INT 63


INT 63 ---- - Oracle SQL Protected Mode Executive - ???

Category: - - (none)

Inp.:

INT 63


INT 63 ---- - 4+Power FLOPPY CONTROLLER - ORIGINAL INT 13/40

Category: d - disk I/O enhancements

Inp.:

Desc:	the "4+Power" quad floppy controller BIOS hooks INT 13 (or INT 40 if

  INT 13 has been moved there) and places the old value here

INT 63


INT 63 ---- - Kofax KF9X00 image manipulation card interface

Category: - - (none)

Inp.:

INT 63


INT 63 ---- - DESQview/X - SOCKET API

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

Notes:	parameters are passed by patching!! data field immediately following

  the entry point, as detailed below (see #2121); the preferred

  method for calling the socket API is via INT 15/AX=DE2Eh

the installation check consists of testing for the string "dvxunix"

  (yes, lowercase) at offset 9 from the interrupt handler start

  (see #2121)

SeeAlso: INT 15/AX=DE2Eh,INT BE"DESQview"

Index:	installation check;DESQview/X socket interface

INT 63


INT 63 00-- - HP 100LX - MAP HIGH MEMORY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 00h

AL = physical page (00h seg C000, 01h seg C400h, ...)

BX = zero-based logical page

CX = page number

DX = device ID (00h system ROM, 05h plugin, etc.)

Return: ???

SeeAlso: AH=01h

INT 63


INT 63 00-- - BW-TCP - TCPIP.SYS - SET IP ADDRESS???

Category: N - network

Inp.:

AH = 00h

DS:BX -> DWORD containing IP address (big-endian)

Return: CF clear if successful

CF set on error

AX destroyed

Range:	INT 4D to INT FC, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=01h"BW-TCP",AH=02h"BW-TCP"

INT 63


INT 63 01-- - HP 100LX - SAVE/RESTORE MEMORY MAP

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 01h

AL = function (00h save, 01h restore)

???

Return: ???

INT 63


INT 63 01-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 01h

ES:BX -> ???

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: AH=00h"BW-TCP",AH=02h"BW-TCP"

INT 63


INT 63 02-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 02h

???

Return: ???

SeeAlso: AH=00h"BW-TCP",AH=01h"BW-TCP"

INT 63


INT 63 03-- - BW-TCP - TCPIP.SYS - GET IP ADDRESS

Category: N - network

Inp.:

AH = 03h

DS:SI -> buffer for DWORD IP address (big-endian)

Return: AX destroyed

CF clear if successful

CF set on error

Note:	this call may use ARP or RARP to determine the address

INT 63


INT 63 04-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 04h

???

Return: ???

INT 63


INT 63 05-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 05h

DS:BX -> ???

ES:SI -> ???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 06-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 06h

???

Return: ???

INT 63


INT 63 07-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 07h

???

Return: ???

INT 63


INT 63 08-- - BW-TCP - TCPIP.SYS - SET DEFAULT ??? HANDLER

Category: N - network

Inp.:

AH = 08h

DS:BX -> DWORD containing IP address

Return: CF clear if successful

CF set on error

???

INT 63


INT 63 09-- - BW-TCP - TCPIP.SYS - INSTALL ??? HANDLERS

Category: N - network

Inp.:

AH = 09h

BL = handler type

ES:SI -> FAR handler of specified type

Return: ???

SeeAlso: AH=0Ah,AH=0Dh

INT 63


INT 63 0A-- - BW-TCP - TCPIP.SYS - DELETE ??? HANDLERS

Category: N - network

Inp.:

AH = 0Ah

BL = handler type

Return: CF clear if successful

CF set on error (no handler of specified type installed)

SeeAlso: AH=09h

INT 63


INT 63 0B-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 0Bh

AL = ???

DL = ???

DS:BX -> ???

ES:SI -> ???

Return: ???

INT 63


INT 63 0C-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 0Ch

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 0D-- - BW-TCP - TCPIP.SYS - INSTALL DEFAULT ??? HANDLER

Category: N - network

Inp.:

AH = 0Dh

???

Return: ???

Note:	if not already installed, installs a type 06h handler with AH=09h

SeeAlso: AH=09h

INT 63


INT 63 0E-- - BW-TCP - TCPIP.SYS - CLOSE NETWORK DESCRIPTOR

Category: N - network

Inp.:

AH = 0Eh

???

Return: ???

SeeAlso: INT 61/AH=08h"PC/TCP",INT 61/AH=09h"PC/TCP",INT 61/AH=18h

INT 63


INT 63 0F-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 0Fh

AL = ???

SI = ???

DS:DI -> ???

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 10-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 10h

DS:DI -> ???

???

Return: ???

INT 63


INT 63 11-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 11h

???

Return: ???

INT 63


INT 63 12-- - BW-TCP - TCPIP.SYS - LISTEN FOR INCOMING CONNECTIONS

Category: N - network

Inp.:

AH = 12h

DS:SI -> ???

ES:BP -> ???

Return: ???

SeeAlso: INT 61/AH=23h

INT 63


INT 63 13-- - BW-TCP - TCPIP.SYS - NOP

Category: N - network

Inp.:

AH = 13h

Return: nothing

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 14-- - BW-TCP - TCPIP.SYS - OPEN NETWORK CONNECTION

Category: N - network

Inp.:

AH = 14h

BX = network descriptor???

DS:SI -> ???

ES:BP -> ???

Return: ???

SeeAlso: INT 61/AH=13h"PC/TCP",INT 62/AH=13h"ETHDEV"

INT 63


INT 63 15-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 15h

DS:DI -> ???

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 16-- - BW-TCP - TCPIP.SYS - RESET NETWORK CONNECTION

Category: N - network

Inp.:

AH = 16h

DS:DI -> ???

Return: ???

Note:	calls AH=17h after preprocessing

SeeAlso: AH=17h,INT 61/AH=19h"PC/TCP"

INT 63


INT 63 17-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 17h

DS:DI -> ???

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

SeeAlso: AH=18h

INT 63


INT 63 18-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 18h

DS:DI -> ???

???

Return: ???

Note:	same as AH=17h, except performed with interrupts disabled

SeeAlso: AH=17h

INT 63


INT 63 19-- - BW-TCP - TCPIP.SYS - WRITE TO THE NETWORK

Category: N - network

Inp.:

AH = 19h

DS:DI -> ???

???

Return: BX = number of bytes NOT written

???

Range:	INT 4D to INT FC, selected by configuration

Note:	calls AH=17h with interrupts disabled and ??? set to 01h

SeeAlso: AH=1Ah,AH=1Bh,INT 61/AH=1Ah"PC/TCP"

INT 63


INT 63 1A-- - BW-TCP - TCPIP.SYS - READ FROM THE NETWORK

Category: N - network

Inp.:

AH = 1Ah

CX = maximum number of bytes to read

ES:BP -> ???

???

Return: CX = number of bytes actually read

???

SeeAlso: AH=19h,INT 61/AH=1Bh"PC/TCP"

INT 63


INT 63 1B-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 1Bh

CX = ???

ES:BP -> ???

Return: DX = ???

???

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 1C-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 1Ch

DS:DI -> ???

???

Return: ???

Note:	calls AH=17h with ???

SeeAlso: AH=17h

INT 63


INT 63 1D-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 1Dh

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

INT 63


INT 63 1E-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 1Eh

DS:BX -> DWORD containing IP address (big-endian)

???

Return: CF clear if successful

CF set on error

???

INT 63


INT 63 1F-- - BW-TCP - TCPIP.SYS - SET SOCKET ??? HANDLER

Category: N - network

Inp.:

AH = 1Fh

BX = socket number

ES:SI -> FAR function for ???

Return: CF clear if successful

CF set on error (out of slots)

SeeAlso: AH=20h

INT 63


INT 63 20-- - BW-TCP - TCPIP.SYS - REMOVE SOCKET ??? HANDLER

Category: N - network

Inp.:

AH = 20h

BX = socket number

Return: CF clear if successful

CF set on error (not set)

Range:	INT 4D to INT FC, selected by configuration

SeeAlso: AH=1Fh

INT 63


INT 63 21-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 21h

ES:SI -> ???

Return: ???

SeeAlso: INT 61/AH=1Ch"PC/TCP"

INT 63


INT 63 22-- - BW-TCP - TCPIP.SYS - REMOVE ??? HANDLER

Category: N - network

Inp.:

AH = 22h

Return: CF clear

Range:	INT 4D to INT FC, selected by configuration

Note:	decrements a counter if not already zero, and calls AH=0Ah with BL=11h

  if the counter reaches zero

INT 63


INT 63 23-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 23h

DS:BX -> ???

ES:SI -> 6-byte buffer for ???

Return: CF clear if successful

CF set on error

INT 63


INT 63 24-- - BW-TCP - TCPIP.SYS - GET SOCKET

Category: N - network

Inp.:

AH = 24h

Return: AX = socket number (0400h-FFFFh)

Range:	INT 4D to INT FC, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

SeeAlso: INT 62/AH=12h"ETHDEV",INT 64"BW-NFS"

INT 63


INT 63 25-- - BW-TCP - TCPIP.SYS - GET INTERNET ADDRESS

Category: N - network

Inp.:

AH = 25h

Return: CL:CH:DL:DH = caller's Internet address

SeeAlso: AH=26h,INT 61/AH=05h"PC/TCP"

INT 63


INT 63 26-- - BW-TCP - TCPIP.SYS - SET INTERNET ADDRESS???

Category: N - network

Inp.:

AH = 26h

CL:CH:DL:DH = Internet address

Return: nothing

Range:	INT 4D to INT FC, selected by configuration

Note:	this function sets a different variable than AH=25h returns

SeeAlso: AH=25h

INT 63


INT 63 27-- - BW-TCP - TCPIP.SYS - SET ???

Category: N - network

Inp.:

AH = 27h

BX = ???

ES:SI -> ???

Return: ???

INT 63


INT 63 28-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 28h

???

Return: ???

INT 63


INT 63 29-- - BW-TCP - TCPIP.SYS - ???

Category: N - network

Inp.:

AH = 29h

???

Return: ???

Range:	INT 4D to INT FC, selected by configuration

Note:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

INT 63


INT 64 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 64


INT 64 ---- - Adaptec controllers - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Desc:	this vector stores the first four bytes of the parameter table for

  hard disk 1

Notes:	these vectors are used by the following Adaptec controllers:

    ACB 2370 A/B/C, ACB 2372 A/B/C, ACB 2333 A/B, 2322B-8, 2322B-16

these vectors are NOT used by the following Adaptec controllers:

    ACB 2310, ACB 2312, ACB 2320D, ACB 2322D

SeeAlso: INT 60"Adaptec",INT 65"Adaptec",INT 66"Adaptec",INT 67"Adaptec"

INT 64


INT 64 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the segment of the RAM data area

  to be used by the expansion ROM at F400h:6000h, and the high word

  contains the length of the data area; this segment and size are

  both set to 0000h if no ROM is installed at F400h:6000h

SeeAlso: INT 60"TI Professional PC",INT 63"TI Professional"

SeeAlso: INT 65"TI Professional PC"

INT 64


INT 64 ---- - Oracle SQL Protected Mode Executive - ???

Category: - - (none)

Inp.:

INT 64


INT 64 ---- - Novell NetWare to v2.0a - LOW-LEVEL API

Category: N - network

Inp.:

Note:	equivalent to INT 7A for NetWare versions through 2.0a only; later

  versions do not use this interrupt for IPX/SPX access, instead

  getting an entry point from INT 2F/AX=7A00h

SeeAlso: INT 2F/AX=7A00h,INT 7A"Novell"

INT 64


INT 64 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 65"DG10",INT 66"DG10"

INT 64


INT 64 ---- - Extended Batch Language v3.14+

Category: r - runtime support

Inp.:

AH = function

    00h to 5Fh chained to previous handler

    60h to 6Ch reserved, return immediately

    80h to FFh chained to previous handler

    6Dh (v4.01+) insert tone in queue

AL = ???

CX = frequency in Hertz

DL = duration in clock ticks

Return: AL = 00h if note stored

   = 01h if no room to store

    6Eh clear ??? counter/flag

    6Fh return counter/flag that AH=6Eh clears

    70h ???

AL = ???

    71h ???

AL = ???

    72h ???

    73h insert byte at end of keyboard buffer

AL = byte to insert

Return: AL = 00h if byte inserted

   = 01h if no room to store

    74h insert byte at front of keyboard buffer

AL = byte to insert

Return: AL = 00h if byte inserted

   = 01h if no room to store

    75h ???

    76h get keyboard "stack" status

AL = 'K' if kbd read will read physical keyboard

     'S' if it will read EBL internal keyboard buffer

AH = ???

    77h clear internal keyboard buffer

    78h ???

AL = ???

    79h ???

    7Ah ???

AL = ???

    7Bh ???

AL = ???

    7Ch ???

AL = ???

    7Dh ???

AL = ???

    7Eh clear buffer for ???

    7Fh installation check

Return: CX = version in BCD

DI = segment of ???

BX = segment of next program's PSP???

Program: Extended Batch Language is a batch-file enhancer by Seaware

Notes:	the chaining does not check whether the interrupt had been hooked

  before, so if you try to chain when the previous vector was

  0000h:0000h, you'll be in trouble

functions 72h and 7Ah-7Dh appear to be interfaces to the optional

  floating-point and extended function packages

Index:	installation check;EBL|installation check;Extended Batch Language

INT 64


INT 64 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

Category: d - disk I/O enhancements

Inp.:

Note:	This vector is overwritten by Pdisk to install custom harddrive types.

  It can either destroy 4 vectors and take no memory or TSR and take

  up some memory.

SeeAlso: INT 65"Pdisk"

INT 64


INT 64 01-- - BW-NFS - BWRPC - ???

undocumented function

Category: N - network

Inp.:

AH = 01h

ES:BX -> ??? (at least 8 bytes)

ES:BP -> DWORD ???

???

Return: CF clear if successful

    ???

CF set on error

    CX = 0000h

Range:	INT 4E to INT FD, selected by configuration

Notes:	the Beame&Whiteside TCP/IP protocol stack uses two consecutive

  interrupts (62h and 63h by default); the BW-NFS client uses a third

  consecutive interrupt (64h by default) if it is loaded

the BWRPC installation check consists of determining the interrupt

  vector assigned to it (two more than the value returned by reading

  the ETHDEV27 device), and testing whether the word immediately

  preceding the interrupt handler is 4257h ('BW')

SeeAlso: INT 62/AH=00h"ETHDEV",INT 63"BW-TCP"

Index:	installation checks;BWRPC

INT 64


INT 64 02-- - BW-NFS - BWRPC - ???

undocumented function

Category: N - network

Inp.:

AH = 02h

DS:DI -> ???

Return: ???

Note:	this call is passed directly through to INT 62/AH=07h

SeeAlso: INT 62/AH=07h"ETHDEV"

INT 64


INT 64 03-- - BW-NFS - BWRPC - ADD ???

undocumented function

Category: N - network

Inp.:

AH = 03h

AL = ???

BP = ???

ES:SI -> ???

Return: ???

Note:	this call is passed directly through to INT 62/AH=0Bh

SeeAlso: AH=04h,INT 62/AH=0Bh"ETHDEV"

INT 64


INT 64 04-- - BW-NFS - BWRPC - REMOVE ???

undocumented function

Category: N - network

Inp.:

AH = 04h

BP = ???

Return: ???

Range:	INT 4E to INT FD, selected by configuration

Note:	this call is passed directly through to INT 62/AH=0Ch

SeeAlso: AH=03h,INT 62/AH=0Ch"ETHDEV"

INT 64


INT 64 05-- - BW-NFS - BWRPC - ???

undocumented function

Category: N - network

Inp.:

AH = 05h

CX = ???

Return: ???

Note:	this call is passed directly through to INT 62/AH=13h

SeeAlso: INT 62/AH=13h"ETHDEV"

INT 64


INT 64 06-- - BW-NFS - BWRPC - ???

undocumented function

Category: N - network

Inp.:

AH = 06h

ES:SI -> ???

Return: AL = 00h if CF clear

Range:	INT 4E to INT FD, selected by configuration

Note:	this call is passed directly through to INT 62/AH=14h

SeeAlso: INT 62/AH=14h"ETHDEV"

INT 64


INT 64 07-- - BW-NFS - BWRPC - GET IP ADDRESS

undocumented function

Category: N - network

Inp.:

AH = 07h

Return: CX:DX = IP address

INT 64


INT 64 10-- - BW-NFS - BWRPC - CALL ETHDEV.SYS

undocumented function

Category: N - network

Inp.:

AH = 10h

AL = ETHDEV function number

other registers as appropriate for ETHDEV call

Return: as returned by ETHDEV

Note:	this call is passed directly through to INT 62

SeeAlso: INT 62/AH=00h"ETHDEV"

INT 64


INT 64 11-- - BW-NFS - BWRPC - NOP???

undocumented function

Category: N - network

Inp.:

AH = 11h

Return: CF clear

Range:	INT 4E to INT FD, selected by configuration

INT 64


INT 64 FE-- - BW-NFS - BWRPC - MAP EMS PAGE FRAME

Category: N - network

Inp.:

AH = FEh

AL = direction

    00h map in driver's memory block

    01h map out driver's memory block

Return: CF clear if successful

CF set on error

    AL = error code

Range:	INT 4E to INT FD, selected by configuration

Note:	this call is passed through directly to ETHDEV.SYS (see INT 62/AH=FEh)

SeeAlso: INT 21/AH=3Fh"BW-TCP",INT 62/AH=FEh,INT 63"BW-TCP"

INT 64


INT 65 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 65


INT 65 ---- - Adaptec controllers - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Desc:	this vector stores the second four bytes of the parameter table for

  hard disk 1

SeeAlso: INT 64"Adaptec",INT 66"Adaptec",INT 67"Adaptec"

INT 65


INT 65 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the segment of the RAM data area

  to be used by the expansion ROM at F400h:8000h, and the high word

  contains the length of the data area; this segment and size are

  both set to 0000h if no ROM is installed at F400h:8000h

SeeAlso: INT 60"TI Professional PC",INT 64"TI Professional"

SeeAlso: INT 66"TI Professional PC"

INT 65


INT 65 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 64"DG10",INT 66"DG10"

INT 65


INT 65 ---- - FTP Software NDIS-Packet Driver adapter - POST PROCESSING INTERRUPT

Category: N - network

Inp.:

INT 65


INT 65 ---- - SD.COM v6.2

Category: U - resident utilities

Inp.:

Desc:	The unregistered version of SD62.COM uses the low byte of this vector

  to count the number of invocations, displaying a registration

  reminder each time after the 20th use.

INT 65


INT 65 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

Category: d - disk I/O enhancements

Inp.:

SeeAlso: INT 64"Pdisk",INT 66"Pdisk"

INT 65


INT 65 ---- - Ad Lib SOUND.COM - INTERFACE

Category: s - sound/speech

Inp.:

SI = function number (see also entries below)

    0000h Init

    0002h RelTimeStart

    0003h SetState

    0004h GetState

    0005h Flush

    0006h SetMode

    0007h GetMode

    0008h SetRelVolume

    0009h SetTempo

    000Ah SetTranspose

    000Bh GetTranspose

    000Ch SetActVoice

    000Dh GetActVoice

    000Eh PlayNoteDel

    000Fh PlayNote

    0010h SetTimbre

    0011h SetPitch

    0012h SetTickBeat

    0013h NoteOn

    0014h NoteOff

    0015h Timbre

    0016h SetPitchBend

    0017h WaveForm

ES:BX -> arguments

Note:	the installation check consists of checking for the signature block

  immediately preceding the interrupt handler (see #2122)

SeeAlso: SI=8000h

Index:	installation check;Ad Lib SOUND.COM

INT 65


INT 65 ---- - Ad Lib SOUND.COM - INITIALIZE (RESET)

Category: s - sound/speech

Inp.:

SI = 0000h

INT 65


INT 65 ---- - Ad Lib SOUND.COM - SET STATE

Category: s - sound/speech

Inp.:

SI = 0003h

ES:BX -> WORD new state (0000h disabled, 0001h enabled)

SeeAlso: SI=0004h

INT 65


INT 65 ---- - Ad Lib SOUND.COM - GET STATE

Category: s - sound/speech

Inp.:

SI = 0004h

Return: AX = status

    0000h all done playing sounds

    else  still playing sounds

SeeAlso: SI=0003h

INT 65


INT 65 ---- - Ad Lib SOUND.COM - SET MODE

Category: s - sound/speech

Inp.:

SI = 0006h

ES:BX -> WORD new mode (0000h melodic, 0001h percussive)

SeeAlso: SI=0007h

INT 65


INT 65 ---- - Ad Lib SOUND.COM - GET MODE

Category: s - sound/speech

Inp.:

SI = 0007h

Return: AX = mode

    0000h melodic

    0001h percussive

SeeAlso: SI=0006h

INT 65


INT 65 ---- - Ad Lib SOUND.COM - SET ACTIVE VOICE

Category: s - sound/speech

Inp.:

SI = 000Ch

ES:BX -> WORD voice = 0000h to 0008h

SeeAlso: SI=000Dh

INT 65


INT 65 ---- - Ad Lib SOUND.COM - GET ACTIVE VOICE

Category: s - sound/speech

Inp.:

SI = 000Dh

Return: AX = voice (0000h to 0008h)

SeeAlso: SI=000Ch

INT 65


INT 65 ---- - Media Vision FM.COM v4.1a+ - GET INTERNAL DATA STRUCTURES

partially documented function

Category: s - sound/speech

Inp.:

SI = 8000h

Return: DX:AX -> internal data structures

Program: FM.COM is an Ad Lib SOUND.COM-compatible driver for Media Vision's

  Pro Audio Spectrum sound boards

SeeAlso: SI=8001h

INT 65


INT 65 ---- - Media Vision FM.COM v4.1a+ - GET VOICE COUNT

partially documented function

Category: s - sound/speech

Inp.:

SI = 8001h

Return: AX = ???

DX = number of voices??? (09h or 0Bh)

SeeAlso: SI=8000h

INT 65


INT 65 ---- - Media Vision FM.COM v4.1a+ - START BACKGROUND FM SOUNDS

Category: s - sound/speech

Inp.:

SI = 8002h

SeeAlso: SI=8003h

INT 65


INT 65 ---- - Media Vision FM.COM v4.1a+ - STOP BACKGROUND FM SOUNDS

Category: s - sound/speech

Inp.:

SI = 8003h

SeeAlso: SI=8002h

INT 65


INT 65 ---- - Media Vision FM.COM v4.1a+ - GET ???

undocumented function

Category: s - sound/speech

Inp.:

SI = 8004h

Return: AX = ??? (0280h)

DX = ??? (01A0h)

INT 65


INT 65 ---- - Media Vision FM.COM v4.1a+ - ???

undocumented function

Category: s - sound/speech

Inp.:

SI = 8005h

???

Return: ???

SeeAlso: SI=8000h

INT 65


INT 65 ---- - EZRECV v1.0 - API

undocumented function

Category: S - serial I/O

Inp.:

AX = function

    0000h ???

Return: AX = ??? or FFFFh

    0001h ???

Return: AX = status (0000h or 0001h)

    0002h ???

Return: AX = status (0000h or 0001h)

    0003h set ??? to 0001h

Return: AX = 0000h

    0004h ???

Return: AX = ???

Return: BH = COM port being used

BL = speed???

CH = ???

CL = ???

DX = ???

DS = ???

ES = EZRECV data segment

Program: EZRECV is a background Zmodem file receiver by Express Consulting

INT 65


INT 66 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT 66


INT 66 ---- - Adaptec controllers - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Desc:	this vector stores the third four bytes of the parameter table for

  hard disk 1

SeeAlso: INT 64"Adaptec",INT 65"Adaptec",INT 67"Adaptec"

INT 66


INT 66 ---- - TI Professional PC - SYSTEM INFORMATION (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	the low word of this vector contains the system memory size in

  paragraphs; the third byte contains the number of outstanding

  interrupt requests, and the fourth byte contains a description

  of the installed drive types (see #2123)

SeeAlso: INT 60"TI Professional PC",INT 67"TI Professional"

INT 66


INT 66 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 64"DG10"

INT 66


INT 66 ---- - Nanosoft, Inc. TurboNET - NETWORK PROCESSING ???

callout or callback (usually hooked rather than called)

Category: N - network

Inp.:

Program: TurboNET is a NetBIOS-based file redirector and server

Note:	hooked but not used (IRET) by both redirector and server; called from

  server's INT 28 handler

SeeAlso: INT 2F/AX=8100h

INT 66


INT 66 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

Category: d - disk I/O enhancements

Inp.:

SeeAlso: INT 64"Pdisk",INT 67"Pdisk"

INT 66


INT 66 ---- - Microsoft Windows VITD.386 Virtual Interval Timer

Category: W - MS Windows

Inp.:

Note:	This Windows 3.x Virtual Device Driver implements a virtual timer

  which will expire and call INT 66.  This timer can be used to

  calculate elapsed execution time etc.

INT 66


INT 66 ---- - Newkey v5.4 - INSTALLATION VECTOR

Category: K - keyboard enhancers

Inp.:

Return: immediately (IRET)

Program: Newkey is a shareware keyboard macro program by Frank A. Bell

Range:	INT 60h to INT 67h, selected by scanning for highest unused vector

Note:	the installation check consists of testing for the signature bytes

  FDh FCh FFh FEh at offset 03h in the interrupt handlers segment

BUG:	the code obviously intends to use INT F0-FE, INT 70-77, and INT 68-6F

  before falling back to INT 60-67, but only uses the last of these

  ranges in v5.4

SeeAlso: INT 2F/AX=E300h

Index: installation checks;Newkey|Newkey;installation check

INT 66


INT 66 ---- - PC-Magazin - INCA

Category: U - resident utilities

Inp.:

details not yet availble

Program: INCA is a utility from PC-Magazin (the German edition of PC Magazine)

  issue 51-52/85.

SeeAlso: INT 61"SWAPx"

INT 66


INT 66 01-- - BitFax Scheduler - SET MODE???

Category: F - FAX

Inp.:

AH = 01h

SeeAlso: AH=02h

INT 66


INT 66 02-- - BitFax Scheduler - SET MODE???

Category: F - FAX

Inp.:

AH = 02h

SeeAlso: AH=01h

INT 66


INT 66 03-- - BitFax Scheduler - SCHEDULE FAX TRANSMISSIONS

Category: F - FAX

Inp.:

AH = 03h

???

Return: ???

SeeAlso: AH=05h

INT 66


INT 66 04-- - BitFax Scheduler - GET STATUS???

Category: F - FAX

Inp.:

AH = 04h

Return: AX = ??? (0000h or 0001h)

DX = BitSched version???  (for versions >= 3.00)

    9796h (ver. 3.00)

    97E6h (ver. 3.02)

    92D0h (ver. 3.04.06)

    9510h (ver. 3.06.02)

SeeAlso: AH=06h,AX=3345h,INT 2F/AX=8000h"FaxBIOS"

INT 66


INT 66 05-- - BitFax Scheduler - CONVERT FILE AND SEND FAX

Category: F - FAX

Inp.:

AH = 05h

BX:CX -> command block (see #2124)

???

Return: ???

SeeAlso: AH=03h

INT 66


INT 66 06-- - BitFax Scheduler - SET MODE???

Category: F - FAX

Inp.:

AH = 06h

Return: DX = BitSched version??? (same as AH=04h)

SeeAlso: AH=04h

INT 66


INT 66 0688 - IBMSND driver, DIGPAK - PLAY 8-BIT DIGITIZED SOUND

Category: s - sound/speech

Inp.:

AX = 0688h

DS:SI -> SNDSTRUC (see #2125)

Return: ???

Program: The IBMSND driver is part of John W. Ratcliff's

   The IBM Digitized Sound Package

DIGPAK is a set of digitized sound drivers written by

  John W. Ratcliff, The Audio Solution, Inc.

Note:	the installation check consists of looking for a valid signature

  string six bytes prior to the interrupt handler; this string may

  be either "KERN" or "MIDI" (in the latter case, call AX=0701h to

  determine whether IBMSND is installed)

SeeAlso: AX=068Bh,AX=068Fh,AX=0701h

INT 66


INT 66 0689 - IBMSND driver, DIGPAK - REPORT SOUND DRIVER STATUS

Category: s - sound/speech

Inp.:

AX = 0689h

Return: AX = status

    0000h no sound playing

    0001h sound effect is currently playing

---DIGPAK---

BX = version number (v3.1+)

DX = looping status

    0000h no sound looping

    0001h sound effect is currently looping

SeeAlso: AX=0688h,AX=068Bh,AX=068Ch

Index:	version check;DIGPAK

INT 66


INT 66 068A - IBMSND driver, DIGPAK - PREFORMAT SOUND

Category: s - sound/speech

Inp.:

AX = 068Ah

DS:SI -> SNDSTRUC (see #2125)

Desc:	convert audio data into output hardware format

SeeAlso: AX=068Bh

INT 66


INT 66 068B - IBMSND driver, DIGPAK - PLAY PREFORMATTED SOUND

Category: s - sound/speech

Inp.:

AX = 068Bh

DS:SI -> SNDSTRUC (see #2125)

Return: AX = ???

SeeAlso: AX=0688h,AX=068Ah,AX=068Fh

INT 66


INT 66 068C - IBMSND driver, DIGPAK - REPORT AUDIO DRIVER CAPABILITIES

Category: s - sound/speech

Inp.:

AX = 068Ch

Return: AX = capabilities (see #2126)

DX = playback rate if fixed-frequency playback

---DIGPAK---

BX:CX -> ASCIZ ID string

SeeAlso: AX=0689h,AX=068Dh

INT 66


INT 66 068D - IBMSND driver, DIGPAK - REPORT CURRENT SAMPLE ADDRESS

Category: s - sound/speech

Inp.:

AX = 068Dh

Return: AX = current playback address

Desc:	determine what point in the audio data the playback has reached, for

  synchronization with video or animation effects

Notes:	this function applies to background playback only

the reported address may be an approximation rather than the exact

  address

SeeAlso: AX=068Ch,AX=0691h

INT 66


INT 66 068E - IBMSND driver, DIGPAK - SET CALLBACK ADDRESS

Category: s - sound/speech

Inp.:

AX = 068Eh

BX:DX -> callback function

    0000h:0000h to disable callback

DS = value to load into DS when calling the callback function

Desc:	specify the function to be called when playback of a sound effect is

  completed

Note:	the callback function will typically be called during a hardware

  interrupt, so all the usual precautions should be taken except for

  preserving registers

SeeAlso: AX=0691h

INT 66


INT 66 068F - IBMSND driver, DIGPAK - STOP CURRENT SOUND

Category: s - sound/speech

Inp.:

AX = 068Fh

Desc:	cause any currently-playing sound effect to be terminated

SeeAlso: AX=0688h,AX=068Bh

INT 66


INT 66 0690 - IBMSND driver, DIGPAK - "SetAudioHardware" - SET UP HARDWARE INFO

Category: s - sound/speech

Inp.:

AX = 0690h

BX = IRQ

CX = base address

DX = other setup value (device-dependent???)

INT 66


INT 66 0691 - IBMSND driver, DIGPAK - REPORT CALLBACK ADDRESS

Category: s - sound/speech

Inp.:

AX = 0691h

Return: AX:DX -> current callback function

BX = original caller's DS register

Program: The IBMSND driver is part of John W. Ratcliff's

   The IBM Digitized Sound Package

DIGPAK is a set of digitized sound drivers written by

  John W. Ratcliff, The Audio Solution, Inc.

SeeAlso: AX=068Eh

INT 66


INT 66 0693 - DIGPAK - SET TIMER DIVISOR RATE

Category: s - sound/speech

Inp.:

AX = 0693h

DX = rate

Program: DIGPAK is a set of digitized sound drivers written by

  John W. Ratcliff, The Audio Solution, Inc.

INT 66


INT 66 0694 - DIGPAK - PLAY PREFORMATTED DATA

Category: s - sound/speech

Inp.:

AX = 0694h

DS:SI -> Sound Data structure (see #2125)

Return: AX = status???

INT 66


INT 66 0695 - DIGPAK - POST AUDIO PENDING

Category: s - sound/speech

Inp.:

AX = 0695h

DS:SI -> Sound Data structure (***)

Return: AX = status

    0000h sound started playing

    0001h sound was posted as pending to play

    0002h sound effect already pending, this one not posted

SeeAlso: AX=0696h

INT 66


INT 66 0696 - DIGPAK - GET AUDIO PENDING STATUS

Category: s - sound/speech

Inp.:

AX = 0696h

Return: AX = status

    0000h no sound is playing

    0001h sound playing, and a sound is pending

    0002h sound playing, no sound pending

SeeAlso: AX=0695h

INT 66


INT 66 0697 - DIGPAK - SET STEREO PANNING

Category: s - sound/speech

Inp.:

AX = 0697h

DX = panning position (0 = right, 127 = left)

Return: AX = status

    0000h command ignored (not supported)

    0001h panning set

INT 66


INT 66 0698 - DIGPAK - SET PLAY MODE

Category: s - sound/speech

Inp.:

AX = 0698h

DX = playback mode

    0000h 8-bit PCM

    0001h 8-bit stereo PCM

    0002h 16-bit PCM

    0003h 16-bit stereo PCM

Return: AX = status

    0000h command ignored

    0001h mode set

INT 66


INT 66 0699 - DIGPAK - GET ADDRESSES

Category: s - sound/speech

Inp.:

AX = 0699h

Return: AX = pending address

BX = semaphore address

INT 66


INT 66 069A - DIGPAK - SET RECORD MODE

Category: s - sound/speech

Inp.:

AX = 069Ah

DX = recording mode

    0000h turn audio recording on

    0001h turn audio recording off

Return: AX = status

    0000h command ignored

    0001h audio recording mode set

INT 66


INT 66 069B - DIGPAK - STOP NEXT LOOP

Category: s - sound/speech

Inp.:

AX = 069Bh

INT 66


INT 66 069C - DIGPAK - SET DMA BACKFILL MODE

Category: s - sound/speech

Inp.:

AX = 069Ch

DX = mode

    0000h turn backfill mode on

    0001h turn backfill mode off

Return: AX = status

    0000h command ignored

    0001h backfill mode set

SeeAlso: AX=069Dh,AX=069Eh

INT 66


INT 66 069D - DIGPAK - REPORT DMA COUNTER

Category: s - sound/speech

Inp.:

AX = 069Dh

Return: AX = DMA counter

SeeAlso: AX=069Eh

INT 66


INT 66 069E - DIGPAK - VERIFY DMA BLOCK

Category: s - sound/speech

Inp.:

AX = 069Eh

CX = length of buffer

ES:BX -> buffer containing sound data

Return: AX = status

    0000h block crosses 64K bounadary

    0001h block is OK

SeeAlso: AX=069Dh

INT 66


INT 66 069F - DIGPAK - SET PCM VOLUME

Category: s - sound/speech

Inp.:

AX = 069Fh

BX = left channel volume (0-100)

CX = right channel volume (0-100)

Return: AX =  status

    0000h command ignored

    0001h volume set

INT 66


INT 66 06A0 - DIGPAK - SET DPMI MODE

Category: s - sound/speech

Inp.:

AX = 06A0h

DX = mode

    0000h 32-bit register addressing on

    0001h 32-bit register addressing off

SeeAlso: INT 31/AX=0400h

INT 66


INT 66 0700 - MIDPAK - UNINSTALL

Category: s - sound/speech

Inp.:

AX = 0700h

Note:	this function should NOT be called by applications

Program: MIDPAK is a set of MIDI sound drivers developed by Miles Design

  Incorporated.

INT 66


INT 66 0701 - IBM Digitized Sound Package MIDI driver - GET DIGITIZED SOUND CAPABIL

Category: s - sound/speech

Inp.:

AX = 0701h

Return: AX = digitized sound capabilities

    0000h if digitized sound driver (functions 06xxh) not available

Notes:	the installation check for the MIDI driver is to test for the signature

  "MIDI" six bytes before the interrupt handler

also supported by MIDPAK, the successor to the Digitized Sound

  Package's MIDI driver

SeeAlso: AX=0688h

INT 66


INT 66 0702 - MIDPAK - PLAY SEQUENCE

Category: s - sound/speech

Inp.:

AX = 0702h

BX = Sequence number

Return: AX = status

    0000h Sequence is being played

    0001h Sequence not available

SeeAlso: AX=0703h,AX=0705h

INT 66


INT 66 0703 - MIDPAK - SEGUE SEQUENCE

Category: s - sound/speech

Inp.:

AX = 0703h

BX = sequence number

CX = activation code (FFFFh is next trigger)

Return: ???

INT 66


INT 66 0704 - MIDPAK - REGISTER XMIDI

Category: s - sound/speech

Inp.:

AX = 0704h

CX:BX -> XMIDI sequence data

DI:SI = length of XMIDI data

Return: AX = status

    0000h unable to register XMIDI data

    0001h XMIDI file registered resident

    0002h XMIDI file was registered to the application

INT 66


INT 66 0705 - MIDPAK - STOP MIDI

Category: s - sound/speech

Inp.:

AX = 0705h

SeeAlso: AX=0702h,AX=0709h

INT 66


INT 66 0706 - MIDPAK - REMAP CHANNEL

obsolete (no longer present in current versions)

Category: s - sound/speech

Inp.:

AX = 0706h

BX = sequence

CX = physical

INT 66


INT 66 0707 - MIDPAK - REPORT TRIGGER EVENT COUNTER

Category: s - sound/speech

Inp.:

AX = 0707h

Return: AX = count of number of callbacks since last reset

DX = ID

SeeAlso: AX=0708h,AX=0713h

INT 66


INT 66 0708 - MIDPAK - RESET EVENT TRIGGER COUNTER

Category: s - sound/speech

Inp.:

AX = 0708h

SeeAlso: AX=0707h,AX=0713h

INT 66


INT 66 0709 - MIDPAK - MIDI SLEEP

obsolete (no longer present in current versions)

Category: s - sound/speech

Inp.:

AX = 0709h

SeeAlso: AX=070Ah

INT 66


INT 66 070A - MIDPAK - MIDI AWAKE

obsolete (no longer present in current versions)

Category: s - sound/speech

Inp.:

AX = 070Ah

SeeAlso: AX=0709h

INT 66


INT 66 070B - MIDPAK - RESUME PLAYING

Category: s - sound/speech

Inp.:

AX = 070Bh

SeeAlso: AX=070Ch

INT 66


INT 66 070C - MIDPAK - GET SEQUENCE STATUS

Category: s - sound/speech

Inp.:

AX = 070Ch

Return: AX = status

    0000h sequence stopped

    0001h sequence playing

    0002h sequence done

SeeAlso: AX=070Bh

INT 66


INT 66 070D - MIDPAK - REGISTER XMIDI FILE

Category: s - sound/speech

Inp.:

AX = 070Dh

CX:BX -> ASCII filename

SeeAlso: AX=0704h,AX=0710h

INT 66


INT 66 070E - MIDPAK - GET RELATIVE VOLUME

Category: s - sound/speech

Inp.:

AX = 070Eh

Return:	AX = current volume

SeeAlso: AX=070Fh

INT 66


INT 66 070F - MIDPAK - SET RELATIVE VOLUME

Category: s - sound/speech

Inp.:

AX = 070Fh

BX = new volume

CX = time

SeeAlso: AX=070Eh

INT 66


INT 66 0710 - MIDPAK - LOAD MIDPAK DRIVER

Category: s - sound/speech

Inp.:

AX = 0710h

BX = segment of .ADV driver

CX = 0000h (offset must be zero)

DX:SI -> .AD driver

SeeAlso: AX=070Dh

INT 66


INT 66 0711 - MIDPAK - POLL MIDPAK

Category: s - sound/speech

Inp.:

AX = 0711h

Return: AX = ???

???

SeeAlso: AX=0712h

INT 66


INT 66 0712 - MIDPAK - GET MIDI CLOCK

Category: s - sound/speech

Inp.:

AX = 0712h

Return: AX:DX = clock counter

CX:BX = clock address

SeeAlso: AX=0711h,AX=0713h

INT 66


INT 66 0713 - MIDPAK - GET TRIGGER COUNT ADDRESS

Category: s - sound/speech

Inp.:

AX = 0713h

Return: AX:DX -> trigger counter address

SeeAlso: AX=0707h,AX=0712h,AX=0714h

INT 66


INT 66 0714 - MIDPAK - GET EVENT ID ADDRESS

Category: s - sound/speech

Inp.:

AX = 0714h

Return: AX:DX -> event ID

SeeAlso: AX=0713h,AX=0716h

INT 66


INT 66 0716 - MIDPAK - REPORT SEQUENCE NUMBER

Category: s - sound/speech

Inp.:

AX = 0716h

Return: AX = current sequence number

SeeAlso: AX=0702h

Program: MIDPAK is a set of MIDI sound drivers developed by Miles Design

  Incorporated.

INT 66


INT 66 10-- - PenDOS - TDMOUSE.EXE - GET ???

Category: n - non-traditional input devices

Inp.:

AH = 10h

Return: CF clear

AX = 0000h

BX = ??? (0012h)

DX:CX -> TDMOUSE INT 33 handler (IRET to hide mouse from other apps)

Program: TDMOUSE is a PenDOS hardware driver which allows a mouse to emulate

  a touchpad; PenDOS is a set of programs by Communication Intelligence

  Corporation which makes applications pen-aware

INT 66


INT 66 11-- - PenDOS - TDMOUSE.EXE - SET ??? HANDLER

Category: n - non-traditional input devices

Inp.:

AH = 11h

DX:BX -> new handler for ???

Return: CF clear

AX = 0000h

DX:BX -> old handler for ??? (points at RETF by default)

INT 66


INT 66 12-- - PenDOS - TDMOUSE.EXE - INITIALIZE

Category: n - non-traditional input devices

Inp.:

AH = 12h

Return:	CF clear

AX = 0000h

Note:	this function calls the old mouse handler with functions 0000h, 0002h,

  0007h, 0008h, 000Fh, 0004h, and 000Ch (in that order)

SeeAlso: AH=13h

INT 66


INT 66 13-- - PenDOS - TDMOUSE.EXE - SHUTDOWN???

Category: n - non-traditional input devices

Inp.:

AH = 13h

Return: CF clear

other register as returned by INT 33/AX=0000h

SeeAlso: AH=12h

INT 66


INT 66 14-- - PenDOS - TDMOUSE.EXE - ???

Category: n - non-traditional input devices

Inp.:

AH = 14h

BX = ???

CX = ???

Return: CF clear

AX = 0000h

INT 66


INT 66 15-- - PenDOS - TDMOUSE.EXE - SET ??? HANDLER

Category: n - non-traditional input devices

Inp.:

AH = 15h

DX:BX -> new handler for ???

Return: CF clear

AX = 0000h

DX:BX -> old handler (points at RETF by default)

INT 66


INT 66 16-- - PenDOS - TDMOUSE.EXE - UNUSED FUNCTIONS

Category: n - non-traditional input devices

Inp.:

AH = 16h to 1Fh

Return: CF set

Program: TDMOUSE is a PenDOS hardware driver which allows a mouse to emulate

  a touchpad; PenDOS is a set of programs by Communication Intelligence

  Corporation which makes applications pen-aware

INT 66


INT 66 21-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 21h

Return: CF clear if successful

CF set on error

Note:	this function sets ??? flag or counter (also set by AH=2Fh) to FFFFh

INT 66


INT 66 22-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 22h

DX:BX -> ???

CL = ???

Return: CF clear if successful

CF set on error

???

SeeAlso: AH=24h

INT 66


INT 66 23-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 23h

???

Return: CF clear if successful

CF set on error

???

INT 66


INT 66 24-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 24h

DX:BX -> ???

CL = ???

Return: CF clear if successful

CF set on error

???

SeeAlso: AH=22h

INT 66


INT 66 25-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 25h

CL = ??? (NOP if 00h)

???

Return: CF clear if successful

CF set on error

???

INT 66


INT 66 27-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 27h

BL = ???

BH = ???

CL = ??? (0-3)

DL = ??? (> BL)

DH = ??? (> BH)

Return: ???

INT 66


INT 66 28-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 28h

???

Return: CF clear if successful

CF set on error

???

Note:	this function sets ??? flag or counter (also set by AH=2Fh) to FFFFh

INT 66


INT 66 29-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 29h

???

Return: ???

Note:	this function sets ??? flag or counter (also set by AH=2Fh) to FFFFh

INT 66


INT 66 2A-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 2Ah

DL = ??? (nonzero)

DH = ??? (nonzero)

Return: CF clear if successful

CF set on error

???

INT 66


INT 66 2B-- - PenDOS - PINK - ???

Category: n - non-traditional input devices

Inp.:

AH = 2Bh

???

Return: CF clear if successful

CF set on error

???

INT 66


INT 66 2F-- - PenDOS - PINK - INITIALIZE

Category: n - non-traditional input devices

Inp.:

AH = 2Fh

???

Return: AX = status

    0000h failed

    FFFFh successful

???

Note:	this function sets ??? flag or counter to FFFFh and hooks INT 1Ch

INT 66


INT 66 3345 - BitFax Scheduler - REMOVE TSR FROM MEMORY

Category: F - FAX

Inp.:

AX = 3345h

Return: AX = FFFFh error removing TSR

Note:	the installation check consists of checking for the signature

  "BitFax Scheduler" beginning two bytes past the interrupt handler

SeeAlso: AH=04h,INT 2F/AH=2Ah,INT 2F/AX=CB00h

Index:	installation check;BitFax Scheduler

INT 66


INT 66 40-- - PenDOS - PKEYUS - GET VERSION

Category: n - non-traditional input devices

Inp.:

AH = 40h

Return: CF clear

AX = 0000h

BH = major version (02h for version bundled with IBM DOS 6.1)

BL = minor version (00h for version bundled with IBM DOS 6.1)

DL = ??? (4Eh)

DH = ??? (0Eh)

INT 66


INT 66 41-- - PenDOS - PKEYUS - SET ???

Category: n - non-traditional input devices

Inp.:

AH = 41h

BX = ???

CL = ??? (08h-20h)

DL = screen column??? (<= 50h)

DH = screen row???  (<= 3Ch)

Return: AX = status (0000h successful, 0001h error)

Note:	this function also sets an internal flag

SeeAlso: AH=42h,AH=43h

INT 66


INT 66 42-- - PenDOS - PKEYUS - ???

Category: n - non-traditional input devices

Inp.:

AH = 42h

Return: CF clear

AX = 0000h

Note:	this function also clears the flag set by AH=41h

SeeAlso: AH=41h

INT 66


INT 66 43-- - PenDOS - PKEYUS - ???

Category: n - non-traditional input devices

Inp.:

AH = 43h

BX = ???

DX = ???

Return: AX = status

    0000h if AH=41h flag set

    else

AH = ???

AL = ???

BX = ???

DX = ???

SeeAlso: AH=41h

INT 66


INT 66 44-- - PenDOS - PKEYUS - UNUSED FUNCTIONS

Category: n - non-traditional input devices

Inp.:

AH = 44h to 4Fh

Return: CF set

INT 66


INT 66 50-- - PenDOS - PMOUSE - SET ???

Category: n - non-traditional input devices

Inp.:

AH = 50h

BX = ???

CH = ???

DX = ???

Return: CF clear

AX = 0000h

INT 66


INT 66 51-- - PenDOS - PMOUSE - NOP

Category: n - non-traditional input devices

Inp.:

AH = 51h

Return: CF set

INT 66


INT 66 52-- - PenDOS - PMOUSE - ???

Category: n - non-traditional input devices

Inp.:

AH = 52h

BX = ???

CL = ???

DX = ???

Return: ???

INT 66


INT 66 53-- - PenDOS - PMOUSE - UNUSED FUNCTIONS

Category: n - non-traditional input devices

Inp.:

AH = 53h to 57h

Return: CF set

INT 66


INT 66 ---- - PenDOS - PMOUSE - ALTERNATE API

Category: n - non-traditional input devices

Inp.:

AH = function (58h-5Fh)

Note:	these functions exactly duplicate AH=50h-57h

INT 66


INT 66 AA02 - HelpTSR v2.10 - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

AX = AA02h

Return: ES:DI -> 7 byte signature "HelpTSR" if resident

Program: HelpTSR is a resident viewer by David Jurgens for HelpPC

INT 66


INT 66 C5-- - PenDOS - VLOAD - API

Category: n - non-traditional input devices

Inp.:

AH = C5h

???

Return: ???

INT 66


INT 66 FFFB - MicroHelp Stay-Res Plus - ???

Category: t - TSR libraries

Inp.:

AX = FFFBh

BX = FFFBh

???

Return: ???

SeeAlso: AX=FFFEh,INT 2D"AMIS"

INT 66


INT 66 FFFE - MicroHelp Stay-Res/Stay-Res Plus - UNINSTALL

Category: t - TSR libraries

Inp.:

AX = FFFEh

BX = FFFEh

Return: only if unsuccessful

Notes:	installation check is for the interrupt handler to begin with the bytes

  FBh 9Ch or 9Ch FAh, and the program name (not case-sensitive) to

  appear at offset 0005h (older versions) or the offset returned by

  AX=FFFFh/BX=FFF0h in the interrupt handler segment.

Programs which use Stay-Res include ThesPlus (program name "THESPLUS")

  and Personal Calendar (program name "CAL") by Paul Mun~oz-Colman.

SeeAlso: AX=FFFBh,AX=FFFFh,INT 2D"AMIS"

Index:	installation check;MicroHelp Stay-Res|installation check;ThesPlus

Index:	installation check;Personal Calendar|installation check;CAL

INT 66


INT 66 FFFF - MicroHelp Stay-Res Plus - FIND PROGRAM NAME

Category: t - TSR libraries

Inp.:

AX = FFFFh

BX = FFF0h

Return: DI = offset of program name in interrupt handler segment

SeeAlso: AX=FFFBh,AX=FFFEh,INT 2D"AMIS"

INT 66


INT 67 ---- - Adaptec controllers - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Desc:	this vector stores the last four bytes of the parameter table for

  hard disk 1

SeeAlso: INT 64"Adaptec",INT 65"Adaptec",INT 66"Adaptec"

INT 67


INT 67 ---- - TI Professional PC - SYSTEM DATA (NOT A VECTOR!)

Category: b - vendor-specific BIOS extensions

Inp.:

Desc:	this vector contains the TI Pro's system configuration words

  (see #2127)

SeeAlso: INT 66"TI Professional PC"

INT 67


INT 67 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

Category: d - disk I/O enhancements

Inp.:

SeeAlso: INT 64"Pdisk",INT 66"Pdisk"

INT 67


INT 67 ---- - Sangoma CCPOP 3270 resident module

Category: I - IBM workstation/terminal emulators

Inp.:

SeeAlso: INT 61"Sangoma",INT 68"Sangoma"

INT 67


INT 67 ---- - CUCKOO.COM - INSTALLATION CHECK

Category: U - resident utilities

Inp.:

Program: CUCKOO is a resident on-screen clock with optional hourly chime or

  cuckoo by an unknown author with revisions by Thomas A. Lundin

Note:	this is not a vector; when loaded for the first time, CUCKOO.COM uses

  the last unused (0000h:0000h) vector in the range 60h-67h to store

  the signature value 434Ch:4F4Bh ('CLOK')

INT 67


INT 67 00-- - PC-NET, Alloy NTNX - LOCK SEMAPHORE AND WAIT

Category: N - network

Inp.:

AH = 00h

DS:DX -> ASCIZ semaphore name (max 64 bytes)

Return: AL = status (see #2128)

AH = semaphore owner if status=02h

SeeAlso: AH=01h,AH=02h"PC-NET",INT 7F/AH=00h

INT 67


INT 67 01-- - PC-NET, Alloy NTNX - LOCK SEMAPHORE

Category: N - network

Inp.:

AH = 01h

DS:DX -> ASCIZ semaphore name (max 64 bytes)

Return: AL = status (see #2128)

AH = semaphore owner if status=02h

SeeAlso: AH=00h,AH=02h"PC-NET",INT 7F/AH=01h"Alloy"

INT 67


INT 67 02-- - PC-NET, Alloy NTNX - UNLOCK SEMAPHORE

Category: N - network

Inp.:

AH = 02h

DS:DX -> ASCIZ semaphore name (max 64 bytes)

Return: AL = status (see #2128)

AH = semaphore owner if status=02h

SeeAlso: AH=00h,AH=01h"PC-NET",INT 7F/AH=02h

INT 67


INT 67 1E-- - Qualitas 386MAX v7.00 - MEMLIMIT - INSTALLATION CHECK

undocumented function

Category: m - memory management

Inp.:

AH = 1Eh

Return: AH = 00h if installed

    AL destroyed

    ES:DI -> ASCII signature "MemLimit"

SeeAlso: AH=1Fh,INT 21/AX=4402h"386MAX"

INT 67


INT 67 1F-- - Qualitas 386MAX v7.00 - MEMLIMIT - API

undocumented function

Category: m - memory management

Inp.:

AH = 1Fh

DS:SI -> request packet (see #2129)

Return: AH = status (00h successful, 84h invalid function code, etc.)

SeeAlso: AH=1Eh

INT 67


INT 67 3F-- - QEMM-386 v4.23+ - INSTALLATION CHECK

undocumented function

Category: m - memory management

Inp.:

AH = 3Fh

CX = 5145h ("QE")

DX = 4D4Dh ("MM")

Return: AH = 00h if installed

    ES:DI -> QEMM API entry point (see #2131,#2134,#2245)

Notes:	if no other program has hooked INT 67, an alternate installation

  check is to test for the string

  "QUARTERDECK EXPANDED MEMORY MANAGER 386" at offset 14h in the INT 67

  handler's segment; the word at offset 12h contains the offset in

  the handler's segment of the API entry point

although this function is still undocumented, Quarterdeck has recently

  documented two alternate methods for determining the QEMM API entry

  point, as well as several of the API functions

MICEMM (Micronics Expanded Memory Manager) versions 2.0C and 4D support

  the alternate QEMM installation check and entry point functions 00h,

  02h, and 03h; version 4D only provides the signature string if the

  commandline argument "DV" is provided

386MAX v6.01 responds to this call, but DESQview 2.42 does not

  recognize the returned entry point as providing QEMM's capabilities

  because a) only functions 0Ch (different from QEMM 0Ch) and

1000h-1009h are supported,

  b) status is returned as for EMS functions, not QEMM funcs

  c) the protected-mode entry point returned by function 1000h

only supports functions 0Ch, 1004h, 1005h, and 100Ah

the string check mentioned above is not supported by 386MAX

SeeAlso: AX=5BF0h,AH=DDh,AX=FFA5h,INT 15/AX=11DEh,INT 21/AX=4402h/SF=01h

SeeAlso: INT 21/AX=4402h"QEMM",INT 21/AX=4402h"386MAX",INT 2F/AX=D201h/BX=5145h

Table #2145

Table #2146

Table #2147

Table #2148

Table #2149

Table #2150

Table #2151

Table #2152

Table #2153

Table #2154

Table #2155

Table #2156

Table #2157

Table #2158

Table #2159

Table #2160

Table #2161

Table #2162

Table #2163

Table #2164

Table #2165

Table #2166

Table #2168

Table #2169

Table #2170

Table #2171

Table #2174

Table #2175

Table #2176

Table #2177

Table #2178

Table #2179

Table #2180

Table #2181

Table #2182

Table #2183

Table #2184

Table #2185

Table #2186

Table #2187

Table #2188

Table #2189

Table #2190

Table #2191

Table #2193

Table #2194

Table #2195

Table #2196

Table #2197

Table #2198

Table #2199

Table #2200

Table #2201

Table #2202

Table #2203

Table #2205

Table #2206

Table #2207

Table #2208

Table #2209

Table #2210

Table #2211

Table #2212

Table #2213

Table #2214

Table #2215

Table #2216

Table #2217

Table #2218

Table #2219

Table #2220

Table #2221

Table #2222

Table #2223

Table #2224

Table #2225

Table #2226

Table #2227

Table #2228

Table #2229

Table #2230

Table #2231

Table #2234

Table #2235

Table #2236

Table #2237

Table #2238

Table #2239

Table #2240

Table #2241

Table #2242

Table #2243

Table #2244

INT 67


INT 67 40-- - LIM EMS - GET MANAGER STATUS

Category: m - memory management

Inp.:

AH = 40h

Return: AH = status (00h,80h,81h,84h) (see #2253)

Note:	this call can be used only after establishing that the EMS driver is in

  fact present

SeeAlso: AH=3Fh,AX=FFA5h

INT 67


INT 67 41-- - LIM EMS - GET PAGE FRAME SEGMENT

Category: m - memory management

Inp.:

AH = 41h

Return: AH = status (see also AH=40h)

    00h function successful

BX = segment of page frame

SeeAlso: AH=58h,AH=68h

INT 67


INT 67 42-- - LIM EMS - GET NUMBER OF PAGES

Category: m - memory management

Inp.:

AH = 42h

Return: AH = status (see also AH=40h)

    00h function successful

BX = number of unallocated pages

DX = total number of pages

BUG:	DOS 6.0 EMM386.EXE causes a system lock-up or reboot if in AUTO mode

  when this call is made; use AH=46h to ensure that EMM386 is ON

  before making this call

SeeAlso: INT 2F/AX=2702h

INT 67


INT 67 43-- - LIM EMS - GET HANDLE AND ALLOCATE MEMORY

Category: m - memory management

Inp.:

AH = 43h

BX = number of logical pages to allocate

Return: AH = status (00h,80h,81h,84h,85h,87h,88h,89h) (see #2253)

DX = handle if AH=00h

SeeAlso: AH=45h

INT 67


INT 67 44-- - LIM EMS - MAP MEMORY

Category: m - memory management

Inp.:

AH = 44h

AL = physical page number (0-3)

BX = logical page number

    or FFFFh to unmap (QEMM)

DX = handle

Return: AH = status (00h,80h,81h,83h,84h,8Ah,8Bh) (see #2253)

SeeAlso: AH=69h

INT 67


INT 67 45-- - LIM EMS - RELEASE HANDLE AND MEMORY

Category: m - memory management

Inp.:

AH = 45h

DX = EMM handle

Return: AH = status (00h,80h,81h,83h,84h,86h) (see #2253)

SeeAlso: AH=43h

INT 67


INT 67 46-- - LIM EMS - GET EMM VERSION

Category: m - memory management

Inp.:

AH = 46h

Return: AH = status (00h,80h,81h,84h) (see #2253)

AL = EMM version number if AH=00h

INT 67


INT 67 47-- - LIM EMS - SAVE MAPPING CONTEXT

Category: m - memory management

Inp.:

AH = 47h

DX = handle

Return: AH = status (00h,80h,81h,83h,84h,8Ch-8Eh) (see #2253)

SeeAlso: AH=48h

INT 67


INT 67 48-- - LIM EMS - RESTORE MAPPING CONTEXT

Category: m - memory management

Inp.:

AH = 48h

DX = handle

Return: AH = status (00h,80h,81h,83h,84h,8Eh) (see #2253)

SeeAlso: AH=47h

INT 67


INT 67 49-- - LIM EMS - reserved - GET I/O PORT ADDRESSES

Category: m - memory management

Inp.:

AH = 49h

Note:	defined in EMS 3.0, but undocumented in EMS 3.2

INT 67


INT 67 4A-- - LIM EMS - reserved - GET TRANSLATION ARRAY

Category: m - memory management

Inp.:

AH = 4Ah

Note:	defined in EMS 3.0, but undocumented in EMS 3.2

INT 67


INT 67 4B-- - LIM EMS - GET NUMBER OF EMM HANDLES

Category: m - memory management

Inp.:

AH = 4Bh

Return: AH = status (00h,80h,81h,83h,84h) (see #2253)

BX = number of EMM handles if AH=00h

INT 67


INT 67 4C-- - LIM EMS - GET PAGES OWNED BY HANDLE

Category: m - memory management

Inp.:

AH = 4Ch

DX = EMM handle

Return: AH = status (see #1504)

BX = number of logical pages if AH=00h

SeeAlso: AH=4Dh

INT 67


INT 67 4D-- - LIM EMS - GET PAGES FOR ALL HANDLES

Category: m - memory management

Inp.:

AH = 4Dh

ES:DI -> array to receive information

Return: AH = status (00h,80h,81h,84h) (see #2253)

---if AH=00h---

BX = number of active EMM handles

array filled with 2-word entries, consisting of a handle and the

  number of pages allocated to that handle

SeeAlso: AH=4Ch

INT 67


INT 67 4E-- - LIM EMS - GET OR SET PAGE MAP

Category: m - memory management

Inp.:

AH = 4Eh

AL = subfunction

    00h get mapping registers

    01h set mapping registers

    02h get and set mapping registers at once

    03h get size of page-mapping array

DS:SI -> array holding information (AL=01h/02h)

ES:DI -> array to receive information (AL=00h/02h)

Return: AH = status (00h,80h,81h,84h,8Fh,A3h) (see also AH=40h)

    00h successful

AL = bytes in page-mapping array (AL=03h only)

array pointed to by ES:DI receives mapping info (AL=00h/02h)

Notes:	this function was designed to be used by multitasking operating systems

  and should not ordinarily be used by appplication software.

MD386 returns the size of the page-mapping array in AX instead of AL

SeeAlso: AH=4Fh

INT 67


INT 67 4F-- - LIM EMS 4.0 - GET/SET PARTIAL PAGE MAP

Category: m - memory management

Inp.:

AH = 4Fh

AL = subfunction

    00h get partial page map

       DS:SI -> structure containing list of segments whose mapping

contexts are to be saved

       ES:DI -> array to receive page map

    01h set partial page map

       DS:SI -> structure containing saved partial page map

    02h get size of partial page map

       BX = number of mappable segments in the partial map to be saved

Return: AH = status (00h,80h,81h,84h,8Bh,8Fh,A3h) (see also AH=40h)

    8Bh one of the specified segments is not mappable

    A3h contents of partial page map corrupted or count of mappable

segments exceeds total number of mappable segments in system

AL = size of partial page map for subfunction 02h

SeeAlso: AH=4Eh

INT 67


INT 67 50-- - LIM EMS 4.0 - MAP/UNMAP MULTIPLE HANDLE PAGES

Category: m - memory management

Inp.:

AH = 50h

AL = subfunction

    00h use physical page numbers

    01h use segment addresses

DX = handle

CX = number of entries in array

DS:SI -> mapping array (see #2254)

Return: AH = status (00h,80h,81h,83h,84h,8Ah,8Bh,8Fh) (see #2253)

SeeAlso: AH=40h

INT 67


INT 67 51-- - LIM EMS 4.0 - REALLOCATE PAGES

Category: m - memory management

Inp.:

AH = 51h

DX = handle

BX = number of pages to be allocated to handle

Return:	AH = status (00h,80h,81h,83h,84h,87h,88h) (see #2255)

BX = actual number of pages allocated to handle

INT 67


INT 67 52-- - LIM EMS 4.0 - GET/SET HANDLE ATTRIBUTES

Category: m - memory management

Inp.:

AH = 52h

AL = subfunction

    00h get handle attributes

Return: AL = attribute

    00h handle is volatile

    01h handle is nonvolatile

    01h set handle attributes

BL = new attribute (see returned AL)

    02h get attribute capability

Return: AL = attribute capability

    00h only volatile handles supported

    01h both volatile and non-volatile supported

DX = handle

Return: AH = status (00h,80h,81h,83h,84h,8Fh-91h) (see #2253)

SeeAlso: AH=53h

INT 67


INT 67 53-- - LIM EMS 4.0 - GET/SET HANDLE NAME

Category: m - memory management

Inp.:

AH = 53h

AL = subfunction

    00h get handle name

       ES:DI -> 8-byte buffer for handle name

    01h set handle name

       DS:SI -> 8-byte handle name

DX = handle

Return: AH = status (00h,80h,81h,83h,84h,8Fh,A1h) (see #2253)

SeeAlso: AH=52h

INT 67


INT 67 54-- - LIM EMS 4.0 - GET HANDLE DIRECTORY

Category: m - memory management

Inp.:

AH = 54h

AL = subfunction

    00h get handle directory

       ES:DI -> buffer for handle directory (see #2256)

    01h search for named handle

       DS:SI -> 8-byte name

    02h get total number of handles

Return: AL = number of entries in handle directory (subfunction 00h)

DX = value of named handle (subfunction 01h)

BX = total number of handles (subfunction 02h)

AH = status (00h,80h,81h,84h,8Fh,A0h,A1h) (see also #2255)

    A1h a handle found had no name

INT 67


INT 67 55-- - LIM EMS 4.0 - ALTER PAGE MAP AND JUMP

Category: m - memory management

Inp.:

AH = 55h

AL = subfunction

    00h physical page numbers provided by caller

    01h segment addresses provided by caller

DX = handle

DS:SI -> structure containing map and jump address

Return: (at target address unless error)

AH = status (00h,80h,81h,83h,84h,8Ah,8Bh,8Fh) (see #2253)

SeeAlso: AH=56h

INT 67


INT 67 56-- - LIM EMS 4.0 - ALTER PAGE MAP AND CALL

Category: m - memory management

Inp.:

AH = 56h

AL = subfunction

    00h physical page numbers provided by caller

DX = handle

DS:SI -> structure containing page map and call address

    01h segment addresses provided by caller

DX = handle

DS:SI -> structure containing page map and call address

    02h get page map stack space required

Return: BX = stack space required

Return: (if successful, the target address is called.  Use a RETF to return and

 restore mapping context)

AH = status (00h,80h,81h,83h,84h,8Ah,8Bh,8Fh) (see #2253)

SeeAlso: AH=55h

INT 67


INT 67 56FF - RM386 v6.00 - ???

Category: m - memory management

Inp.:

AX = 56FFh

DS:SI -> ???

???

Return: ???

INT 67


INT 67 57-- - LIM EMS 4.0 - MOVE/EXCHANGE MEMORY REGION

Category: m - memory management

Inp.:

AH = 57h

AL = subfunction

    00h move memory region

    01h exchange memory region

DS:SI -> structure describing source and destination (see #2258)

Return: AH = status (see #2257)

Note:	source and destination may overlap for a move, in which case the copy

  direction is chosen such that the destination receives an intact copy

  of the source region

INT 67


INT 67 58-- - LIM EMS 4.0 - GET MAPPABLE PHYSICAL ADDRESS ARRAY

Category: m - memory management

Inp.:

AH = 58h

AL = subfunction

    00h get mappable physical address array

ES:DI -> buffer to be filled with array (see #2259)

    01h get number of entries in m.p.a. array

Return: CX = number of entries in array

AH = status (00h,80h,81h,84h,8Fh) (see #2257)

Note:	the returned array for subfunction 00h is filled in physical segment

  address order

INT 67


INT 67 5857 - NETROOM??? - ???

undocumented function

Category: m - memory management

Inp.:

AX = 5857h

BX = function??? (0057h,0059h,0159h seen)

???

Return: ???

Note:	BX=0059h appears to be analogous to AX=5800h and BX=0159h appears to

  be analogous to AX=5801h; BX=0057h appears to indicate whether

  AX=580xh or AX=5857h/BX=0x59h should be used

SeeAlso: AX=5BF0h

INT 67


INT 67 59-- - LIM EMS 4.0 - GET EXPANDED MEMORY HARDWARE INFORMATION

Category: m - memory management

Inp.:

AH = 59h

AL = subfunction

    00h get hardware configuration array

ES:DI -> buffer to be filled with array (see #2260)

    01h get unallocated raw page count

Return: BX = unallocated raw pages

DX = total raw pages

Return: AH = status (see also AH=58h"EMS 4.0")

    A4h access denied by operating system

Note:	subfunction 00h is for use by operating systems only, and can be

  enabled or disabled at any time by the operating system

INT 67


INT 67 5A-- - LIM EMS 4.0 - ALLOCATE STANDARD/RAW PAGES

Category: m - memory management

Inp.:

AH = 5Ah

AL = subfunction

    00h allocate standard pages

    01h allocate raw pages

BX = number of pages to allocate

Return: DX = handle

AH = status (00h,80h,81h,84h,85h,87h,88h,8Fh) (see #2253)

INT 67


INT 67 5B-- - LIM EMS 4.0 - ALTERNATE MAP REGISTER SET

Category: m - memory management

Inp.:

AH = 5Bh

AL = subfunction

    00h get alternate map register set

Return: BL = current active alternate map register set number

ES:DI -> map register context save area if BL=00h

    01h set alternate map register set

BL = new alternate map register set number

ES:DI -> map register context save area if BL=0

    02h get alternate map save array size

Return: DX = array size in bytes

    03h allocate alternate map register set

Return: BL = number of map register set; 00h = not supported

    04h deallocate alternate map register set

BL = number of alternate map register set

Return: AH = status (00h,80h,81h,84h,8Fh,9Ah-9Dh,A3h,A4h) (see #2261)

Note:	this function is for use by operating systems only, and can be

  enabled or disabled at any time by the operating system

INT 67


INT 67 5B-- - LIM EMS 4.0 - ALTERNATE MAP REGISTER SET - DMA REGISTERS

Category: m - memory management

Inp.:

AH = 5Bh

AL = subfunction

    05h allocate DMA register set

Return: BL = DMA register set number, 00h if not supported

    06h enable DMA on alternate map register set

       BL = DMA register set number

       DL = DMA channel number

    07h disable DMA on alternate map register set

       BL = DMA register set number

    08h deallocate DMA register set

       BL = DMA register set number

Return: AH = status (00h,80h,81h,84h,8Fh,9Ah-9Fh,A3h,A4h) (see #2261)

Note:	this function is for use by operating systems only, and can be

  enabled or disabled at any time by the operating system

INT 67


INT 67 5BE0 - MICEMM v4D, RM386 - GET LINEAR ADDRESS OF MEMORY

Category: m - memory management

Inp.:

AX = 5BE0h

ES:BX -> memory for which to get linear address

Return: AH = 00h

CX:DX = linear address of physical memory corresponding to ES:BX

Program: RAM-MAN/386 is the memory manager included with Helix's Netroom;

  MICEMM is a memory manager for some Micronics motherboards

Note:	this has been superceded by AX=DE06h, which should be used instead

SeeAlso: AX=5BF0h,AX=5BF1h,AX=DE06h

INT 67


INT 67 5BE1 - RM386 v6.00+ - GET MEMORY MANAGER SIZE

Category: m - memory management

Inp.:

AX = 5BE1h

Return: AH = 00h

CX = code and data size in bytes

DX:BX = physical address of RM386 code

DI:SI = total size of RM386 area including handle tables

BP = number of additional pages (high DOS, etc.)

SeeAlso: AX=5BE0h,AX=5BE2h

INT 67


INT 67 5BE2 - RM386 v6.00+ - GET INTERRUPT VECTORS

Category: m - memory management

Inp.:

AX = 5BE2h

Return: DS:SI -> V86-mode table (see #2262)

ES:BX -> ??? (undoc, middle of device driver interrupt routine!)

SeeAlso: AX=5BE0h,AX=5BE1h

INT 67


INT 67 5BF0 - MICEMM v4D, RM386 - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = 5BF0h

Return: AH = 00h if MICEMM or RM386 present

    BX = code segment of driver

Program: MICEMM is the Micronics Expanded Memory Manager; RM386 is the memory

  manager included in Helix Software's Netroom

SeeAlso: AH=3Fh,AX=5BE0h,AX=5BF1h

INT 67


INT 67 5BF1 - MICEMM v4D, RM386 - GET ADDRESS MAP

Category: m - memory management

Inp.:

AX = 5BF1h

ES:BX -> 256-byte (MICEMM) or 512-byte (RM386) buffer for memory types

Return: AH = 00h

ES:BX buffer filled (see #2263)

Note:	each byte in the buffer specifies the type of a 4K page of memory

SeeAlso: AX=5BE0h,AX=5BF0h

INT 67


INT 67 5BF2 - RM386 - GET RM386 INTERNAL DATA

Category: m - memory management

Inp.:

AX = 5BF2h

CX = size of buffer

DS:SI -> buffer for internal data

(documentation says ES:BX -> buffer, SI = offset within RM386)

Return: buffer filled

Note:	the data returned by this function is release-specific

SeeAlso: AX=5BF0h

INT 67


INT 67 5BF3 - RM386 - RETURN TO REAL MODE

Category: m - memory management

Inp.:

AX = 5BF3h

Return: nothing

Note:	use AX=5DE0h instead of this functin

SeeAlso: AX=5BF0h,AX=5DE0h

INT 67


INT 67 5BF4 - RM386 v6.00 - GET RM386 GLOBAL FLAGS

Category: m - memory management

Inp.:

AX = 5BF4h

Return: AH = 00h

BX = global flags 1 (see #2264)

CX = global flags 2 (see #2265)

DX = global flags 3 (see #2266)

SI = global flags 4 (see #2267)

SeeAlso: AX=5BF0h

INT 67


INT 67 5BF5 - RM386 v6.00 - GET RM386 EMS HANDLE COUNT

Category: m - memory management

Inp.:

AX = 5BF5h

Return: AH = status

    00h successful

BX = current number of allocated EMS handles

    84h function not available

SeeAlso: AX=5BF0h

INT 67


INT 67 5C-- - LIM EMS 4.0 - PREPARE EXPANDED MEMORY HARDWARE FOR WARM BOOT

Category: m - memory management

Inp.:

AH = 5Ch

Return: AH = status (see #2268)

Note:	when MS-DOS v6.xx EMM386 is loaded and the keyboard driver supports

  INT 15/AH=4Fh (keyboard intercept) calls, the system may hang

  instead of booting if this function is called just prior to a jump

  to F000h:FFF0h

INT 67


INT 67 5D-- - LIM EMS 4.0 - ENABLE/DISABLE OS FUNCTION SET FUNCTIONS

Category: m - memory management

Inp.:

AH = 5Dh

AL = subfunction

    00h enable OS Function Set

    01h disable OS Function Set

    02h return access key (resets memory manager, returns access key at

next invocation)

BX,CX = access key returned by first invocation

Return: BX,CX = access key, returned only on first invocation of function

AH = status (see also AH=5Ch)

    8Fh undefined subfunction

    A4h operating system denied access

INT 67


INT 67 5D03 - Nanosoft MD386 - INTERNAL INITIALIZATION

partially documented function

Category: m - memory management

Inp.:

AX = 5D03h

???

Return: ???

Program: MD386 is a subset EMS memory manager by Nanosoft specifically designed

  for use with the MultiDOS Plus multitasker

SeeAlso: AX=5D04h,AX=5E00h

INT 67


INT 67 5D04 - Nanosoft MD386 - GET ALTERNATE MAP STRUCTURE

Category: m - memory management

Inp.:

AX = 5D04h

BX = alternate register set number

ES:DI -> 1024-byte buffer for map structure

Return: AH = status (see #2253)

buffer filled if AH=00h

Note:	used for debugging purposes

SeeAlso: AX=5D05h

INT 67


INT 67 5D05 - Nanosoft MD386 - GET INTERNAL HANDLE TABLE

Category: m - memory management

Inp.:

AX = 5D05h

BX = handle number

ES:DI -> 1024-byte buffer for handle table

Return: AH = status (see #2253)

buffer filled if AH=00h

Note:	used for debugging purposes

SeeAlso: AX=5D04h

INT 67


INT 67 5DE0 - RM386 - DISABLE RM386

Category: m - memory management

Inp.:

AX = 5DE0h

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE1h

INT 67


INT 67 5DE1 - RM386 - ENABLE RM386

Category: m - memory management

Inp.:

AX = 5DE1h

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE0h

INT 67


INT 67 5DE2 - RM386 - GET PAGE TABLE

Category: m - memory management

Inp.:

AX = 5DE2h

ES:DI -> 1088-byte buffer for page table

Return: ES:DI buffer filled

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE3h

INT 67


INT 67 5DE3 - RM386 - SET PAGE TABLE

Category: m - memory management

Inp.:

AX = 5DE3h

ES:DI -> 1088-byte buffer containing page table

Notes:	only the access bits of the page table are used, the remainder is

  ignored

RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE2h

INT 67


INT 67 5DE4 - RM386 - SET WRITE-PROTECTION FOR PAGE IN FIRST MEGABYTE

Category: m - memory management

Inp.:

AX = 5DE4h

BL = page number

BH = access (00h read-only, 01h read-write)

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

INT 67


INT 67 5DE5 - RM386 - MAP PHYSICAL PAGE TO PHYSICAL SEGMENT

Category: m - memory management

Inp.:

AX = 5DE5h

EBX = physical page number

DX = page number in first megabyte to be remapped (linear-addr SHR 12)

Return: AH = status

    00h successful

    8Bh invalid destination page (not in first megabyte)

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE6h

INT 67


INT 67 5DE6 - RM386 - MAP LOGICAL 4K PAGE TO PHYSICAL SEGMENT

Category: m - memory management

Inp.:

AX = 5DE6h

BX = logical page number in 4K pages from beginning of memory for EMS

      handle

CX = segment in first megabyte to be remapped

DX = previously-allocated EMS handle

Return: AH = status

    00h successful

    83h invalid handle

    8Ah invalid logical page (out of handle's range)

    8Bh invalid destination page (not in first megabyte)

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE5h

INT 67


INT 67 5DE7 - RM386 - SET PAGE TABLE BITS FOR RANGE OF PAGES

Category: m - memory management

Inp.:

AX = 5DE7h

BL = page table bits to be set (bits 2-0 = U/S, R/W, P)

CX = number of pages to set

DX = first page number to set (in first megabyte)

Return: AH = status

    00h successful

    8Bh invalid destination page (not in first megabyte)

    A5h invalid page bits

    A6h invalid page count (overflows first megabyte)

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

INT 67


INT 67 5DE8 - RM386 - GET PARTIAL PAGE TABLE

Category: m - memory management

Inp.:

AX = 5DE8h

BX = starting page number in first megabyte+HMA (0000h-010Fh)

CX = number of page table entries to get

ES:DI -> buffer for DWORD page table entries

Return: AH = status (00h successful, 8Bh invalid page)

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE9h

INT 67


INT 67 5DE9 - RM386 - SET PARTIAL PAGE TABLE

Category: m - memory management

Inp.:

AX = 5DE9h

BX = starting page number in first megabyte+HMA (0000h-010Fh)

CX = number of page table entries to get

DS:SI -> buffer of DWORD page table entries

Return: AH = status (00h successful, 8Bh invalid destination page)

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DE8h

INT 67


INT 67 5DEA - RM386 - V86-MODE I/O PORT TRAPPING CONTROL

Category: m - memory management

Inp.:

AX = 5DEAh

BX = function

    00h globally disable V86-mode trapping

    01h globally enable V86-mode trapping

CL = interrupt to use for trapping

    02h get I/O trapping state

Return: AH = status

    00h successful

BX = current trapping state (function 02h)

    0000h disabled, 0001h enabled

CX = interrupt used as trap interrupt (functions 00h and 02h)

Notes:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

when I/O trapping is enabled and I/O port access occurs, RM386

  simulates an INT instruction for the specified interrupt; the

  interrupt handler is responsible for decoding the trapped instruction

  and performing the appropriate action.  INT 2C/AX=002Dh provides a

  similar but more-easily used interface.

SeeAlso: AX=5DEBh,AH=EFh"RM386",INT 2C/AX=002Dh

INT 67


INT 67 5DEB - RM386 - V86-MODE I/O TRAPPING PORT CONTROL

Category: m - memory management

Inp.:

AX = 5DEBh

BX = function

    00h disable V86-mode trapping for specified port

    01h enable V86-mode trapping for specified port

    02h get V86-mode trapping state for specified port

DX = port for which to enable/disable/query trapping

Return: AH = status

    00h successful

BX = current trapping state (00h off, 01h on) (function 02)

    A7h invalid port ID

    A8h reserved port--cannot trap/untrap (DMA/INT/KBD controllers)

Notes:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DEAh

INT 67


INT 67 5DFD - RM386 v6.00 - ???

undocumented function

Category: m - memory management

Inp.:

AX = 5DFDh

???

Return: ???

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DFEh

INT 67


INT 67 5DFE - RM386 v6.00 - ???

undocumented function

Category: m - memory management

Inp.:

AX = 5DFEh

???

Return: ???

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DFDh

INT 67


INT 67 5DFF - RM386 v6.00 - ???

undocumented function

Category: m - memory management

Inp.:

AX = 5DFFh

???

Return: ???

Note:	RM386 traps this function on the initial transition to protected

  mode caused by the INT instruction, which means it can not be

  overridden simply by hooking the interrupt

SeeAlso: AX=5DFDh,AX=5DFEh

INT 67


INT 67 5E00 - Nanosoft MD386 - SET HARDWARE BREAKPOINT

Category: m - memory management

Inp.:

AX = 5E00h

DH = breakpoint number (0-3)

DL = breakpoint attributes (used to set DR7)

CX:BX = linear address of breakpoint

SeeAlso: AX=5D03h,AX=5E01h

INT 67


INT 67 5E01 - Nanosoft MD386 - GET HARDWARE DEBUG REGISTER

Category: m - memory management

Inp.:

AX = 5E01h

BL = register number (0-3,7)

Return: CX:BX = value of specified DRx register

SeeAlso: AX=5E00h

INT 67


INT 67 5E02 - Nanosoft MD386 - SET DEBUG EXCEPTION HANDLER

Category: m - memory management

Inp.:

AX = 5E02h

CX:BX -> exception handler

Note:	the specified exception handler is called with a simulated interrupt

  whenever a debug exception occurs which was caused by a hardware

  breakpoint set with the debug registers

SeeAlso: AX=5E04h,AX=5E05h

INT 67


INT 67 5E03 - Nanosoft MD386 - ENABLE/DISABLE MEMORY WRITE PROTECTION

Category: m - memory management

Inp.:

AX = 5E03h

BL = register map set number

BH = new state (00h read-only, else read-write)

CX = linear page number (linear address SHR 12)

Note:	setting write protection in map set 0 will cause the setting to become

  the default for newly-allocated map sets

INT 67


INT 67 5E04 - Nanosoft MD386 - GET DEBUG EXCEPTION

Category: m - memory management

Inp.:

AX = 5E04h

Return: BL = debug exception (low byte of DR6 register)

SeeAlso: AX=5E02h,AX=5E05h

INT 67


INT 67 5E05 - Nanosoft MD386 - IGNORE NEXT DEBUG EXCEPTION

Category: m - memory management

Inp.:

AX = 5E05h

Note:	may be required when using AX=5E02h for handling instruction

  breakpoints

SeeAlso: AX=5E02h,AX=5E04h

INT 67


INT 67 60-- - EEMS - GET PHYSICAL WINDOW ARRAY

Category: m - memory management

Inp.:

AH = 60h

ES:DI -> buffer

Return: AH = status (see also AH=40h)

AL = number of entries

buffer at ES:DI filled

INT 67


INT 67 61-- - EEMS - GENERIC ACCELERATOR CARD SUPPORT

Category: m - memory management

Inp.:

AH = 61h

???

Return: ???

Note:	can be used by accelerator card manufacturer to flush RAM cache,

  ensuring that the cache accurately reflects what the processor would

  see without the cache.

INT 67


INT 67 68-- - EEMS - GET ADDRESSES OF ALL PAGE FRAMES IN SYSTEM

Category: m - memory management

Inp.:

AH = 68h

ES:DI -> buffer

Return: AH = status (see also AH=40h)

AL = number of entries

buffer at ES:DI filled

Note:	equivalent to LIM 4.0 function 58h

INT 67


INT 67 69-- - EEMS - MAP PAGE INTO FRAME

Category: m - memory management

Inp.:

AH = 69h

AL = frame number

BX = page number

DX = handle

Return: AH = status (see also AH=40h)

Note:	similar to EMS function 44h

SeeAlso: AH=44h,AH=50h,AH=6Ah

INT 67


INT 67 6A-- - EEMS - PAGE MAPPING

Category: m - memory management

Inp.:

AH = 6Ah

AL = subfunction

    00h save partial page map

CH = first page frame

CL = number of frames

ES:DI -> buffer which is to be filled

    01h restore partial page map

CH = first page frame

CL = number of frames

DI:SI -> previously saved page map

    02h save and restore partial page map

CH = first page frame

CL = number of frames

ES:DI = buffer for current page map

DI:SI = new page map

    03h get size of save array

CH = first page frame

CL = number of frames

Return: AL = size of array in bytes

    04h switch to standard map register setting

    05h switch to alternate map register setting

    06h deallocate pages mapped to frames in conventional memory

CH = first page frame

CL = number of frames

Return: AH = status (see #2253)

Note:	similar to EMS function 4Eh, except that a subrange of pages can be

  specified

SeeAlso: AH=69h

INT 67


INT 67 6B-- - DESQview 2.42-2.53 - BUG

Category: m - memory management

Inp.:

AH = 6Bh

Note:	the EMM.DVR portion of DESQview branches to a random location on this

  function due to a fencepost error

INT 67


INT 67 DD-- - Quadtel QMAPS - API

Category: m - memory management

Inp.:

AH = DDh

AL = function

???

Return: ???

Notes:	details are not yet available

Hewlett-Packard's HPMM.SYS is a licensed version of QMAPS, and thus

  supports this API

SeeAlso: AH=3Fh,AX=FFA5h

INT 67


INT 67 DE00 - Virtual Control Program Interface - INSTALLATION CHECK

Category: E - DOS extenders

Inp.:

AX = DE00h

Return: AH = status

    00h VCPI is present

BH = major version number

BL = minor version number

    nonzero  VCPI not present

BUG:	MS Windows 3.00 is reported to "object violently" to this call.

SeeAlso: INT 2F/AX=1687h

INT 67


INT 67 DE01 - Virtual Control Program Interface - GET PROTECTED MODE INTERFACE

Category: E - DOS extenders

Inp.:

AX = DE01h

ES:DI -> 4K page table buffer

DS:SI -> three descriptor table entries in GDT

first becomes code segment descriptor, other two for use by

  main control program

Return: AH = 00h successful

    DI -> first unused page table entry in buffer

    EBX -> protected mode entry point in code segment (see #2269)

AH = nonzero  failed

Note:	protected mode entry point may be called with AX=DE00h-DE05h and

  AX=DE0Ch (in each case, all other registers as appropriate for

  the function)

SeeAlso: INT 2F/AX=1687h,INT 67/AH=3Fh

INT 67


INT 67 DE02 - Virtual Control Program Interface - GET MAX PHYSICAL MEMORY ADDRESS

Category: E - DOS extenders

Inp.:

AX = DE02h

Return: AH = 00h  successful

    EDX = physical address of highest 4K memory page

AH nonzero: failed

SeeAlso: AH=3Fh

INT 67


INT 67 DE03 - Virtual Control Program Interface - GET NUMBER OF FREE 4K PAGES

Category: E - DOS extenders

Inp.:

AX = DE03h

Return: AH = 00h  successful

    EDX = number of free 4K pages

AH nonzero: failed

Notes:	returns total number of pages available to ALL tasks in system

also available in protected mode by calling the protected-mode VCPI

  entry point (see AX=DE01h,#2269)

SeeAlso: AX=DE04h

INT 67


INT 67 DE04 - Virtual Control Program Interface - ALLOCATE A 4K PAGE

Category: E - DOS extenders

Inp.:

AX = DE04h

Return: AH = 00h successful

    EDX = physical address of allocated page

AH nonzero: failed

Notes:	the client program is responsible for freeing all memory allocated

  with this call before terminating

also available in protected mode by calling the protected-mode VCPI

  entry point (see AX=DE01h,#2269)

SeeAlso: AH=3Fh,AX=DE03h,AX=DE05h

INT 67


INT 67 DE05 - Virtual Control Program Interface - FREE 4K PAGE

Category: E - DOS extenders

Inp.:

AX = DE05h

EDX = physical address of 4K page

Return: AH = status

    00h successful

    nonzero failed

Note:	also available in protected mode by calling the protected-mode VCPI

  entry point (see AX=DE01h,#2269)

SeeAlso: AH=3Fh,AX=DE04h

INT 67


INT 67 DE06 - Virtual Control Program Interface - GET PHYS ADDR OF PAGE IN FIRST MB

Category: E - DOS extenders

Inp.:

AX = DE06h

CX = page number (linear address shifted right 12 bits)

Return: AH = status

    00h successful

EDX = physical address of page

    nonzero invalid page number (AH = 8Bh recommended)

SeeAlso: AX=5BE0h

INT 67


INT 67 DE07 - Virtual Control Program Interface - READ CR0

Category: E - DOS extenders

Inp.:

AX = DE07h

Return: AH = 00h

EBX = value of Control Register 0

SeeAlso: AH=3Fh,AX=DE07h

INT 67


INT 67 DE08 - Virtual Control Program Interface - READ DEBUG REGISTERS

Category: E - DOS extenders

Inp.:

AX = DE08h

ES:DI -> array of 8 DWORDs

Return: AH = 00h

buffer filled with DR0 first, DR7 last, DR4 and DR5 unused

SeeAlso: AH=3Fh,AX=DE09h

INT 67


INT 67 DE09 - Virtual Control Program Interface - SET DEBUG REGISTERS

Category: E - DOS extenders

Inp.:

AX = DE09h

ES:DI -> array of 8 DWORDs holding new values of debug registers

Return: AH = 00h

Note:	values for DR4 and DR5 ignored

SeeAlso: AH=3Fh,AX=DE08h

INT 67


INT 67 DE0A - Virtual Control Program Interface - GET 8259 INTERRUPT VECTOR MAPPINGS

Category: E - DOS extenders

Inp.:

AX = DE0Ah

Return: AH = 00h successful

    BX = first vector used by master 8259 (IRQ0)

    CX = first vector used by slave 8259 (IRQ8)

AH nonzero: failed

Note:	CX is undefined in systems without a slave 8259

SeeAlso: AX=DE0Bh,INT 21/AX=250Ch,INT 31/AX=0400h

INT 67


INT 67 DE0B - Virtual Control Program Interface - SET 8259 INTERRUPT VECTOR MAPPINGS

Category: E - DOS extenders

Inp.:

AX = DE0Bh

BX = first vector used by master 8259

CX = first vector used by slave 8259

interrupts disabled

Return: AH = 00h successful

AH nonzero: failed

Notes:	This call merely informs the server that the client has changed the

  interrupt mappings.  The client may not change the mappings if they

  have already been changed by the server or another client, and is

  responsible for restoring the original mappings before terminating.

SeeAlso: AX=DE0Ah,INT 2C/AX=002Ah

INT 67


INT 67 DE0C - Virtual Control Program Interface - SWITCH TO PROTECTED MODE

Category: E - DOS extenders

Inp.:

AX = DE0Ch

ESI = linear address in first megabyte of values for system

      registers (see #2270)

interrupts disabled

Return: interrupts disabled

GDTR, IDTR, LDTR, TR loaded

SS:ESP must have at least 16 bytes space, and the entry point is

      required to set up a new stack before enabling interrupts

EAX, ESI, DS, ES, FS, GS destroyed

Note:	in protected mode, calling the protected-mode VCPI entry point with

  AX = DE0Ch

  DS = segment selector mapping entire linear address space obtained

  via AX=DE01h

  SS:ESP in first megabyte of linear memory

  STACK:QWORD  return address from FAR call to 32-bit segment

DWORD  EIP

DWORD  CS

DWORD  reserved for EFLAGS

DWORD  ESP

DWORD  SS

DWORD  ES

DWORD  DS

DWORD  FS

DWORD  GS

  and interrupts disabled, will switch to virtual86 mode with

    interrupts disabled, all segment registers loaded, and EAX

    destroyed.

SeeAlso: AH=3Fh,INT 15/AH=89h,INT 38/AH=10h

INT 67


INT 67 DE0F - Netroom3 - ???

Category: m - memory management

Inp.:

AX = DE0Fh

???

Return: ???

Note:	called by Netroom's DPMI.EXE

INT 67


INT 67 EF-- - RM386 v6.00+ - EXECUTE XMS FUNCTION

Category: m - memory management

Inp.:

AH = EFh

AL = function (00h-12h,80h-8Fh)

other register as appropriate for XMS function

Return: varies by function (see INT 2F/AX=4310h)

Note:	these functions appear to be equivalent to the XMS functions with the

  same numbers

SeeAlso: AX=5DFFh"RM386",INT 2F/AX=4310h

INT 67


INT 67 FFA5 - Microsoft EMM386.EXE v4.20+ - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = FFA5h

Return: AX = 845Ah/84A5h if loaded

    BX:CX -> API entry point (see #2271)

Notes:	this call is available even if EMM386 is not providing EMS

the returned AX is 845Ah inside of MSWindows, 84A5h under bare DOS

if no other program has hooked INT 67, an alternate installation

  check is to test for the string

  "MICROSOFT EXPANDED MEMORY MANAGER 386" at offset 14h in the INT 67

  handler's segment; the word immediately preceding this string

  contains the offset of the API entry point

SeeAlso: AH=3Fh,AX=FFA5h/BX=4345h,INT 21/AX=4402h"EMM386.EXE"

INT 67


INT 67 FFA5 - Compaq CEMM v5.10+ - PRIVATE API

undocumented function

Category: m - memory management

Inp.:

AX = FFA5h

BX = 4345h ("CE")

DX = subfunction

    0000h unshadow video ROM???

    0001h shadow video ROM???

    0002h map pages

CX = number of pages (00h=one)

ESI = linear address of first page to map into address space

EDI = linear starting address at which pages are to be visible

    0003h get ???

Return: DX = ??? (0-2)

    0004h BUG: crashes system due to fencepost error

Return: AH = 84h

AL = status (84h = error, FFh = success)

Note:	if BX <> 4345h or DX > 0004h on entry, CEMM behaves identically to

  Microsoft's EMM386 (see AX=FFA5h"EMM386")

SeeAlso: AX=FFA5h"EMM386",#0733 at INT 21/AX=4402h/SF=02h,#2271

INT 67


INT 68 ---- - Sangoma CCPOP 3270 resident module

Category: I - IBM workstation/terminal emulators

Inp.:

SeeAlso: INT 67"Sangoma",INT 92"Sangoma"

INT 68


INT 68 ---- - Novell NetWare LU6.2

Category: N - network

Inp.:

Note:	the installation check consists of testing for the signature string

  "APPC/PC" nine bytes before the interrupt handler

SeeAlso: AH=01h/SF=1B00h,AH=FAh

INT 68


INT 68 ---- - HP Vectra AT - IRQ16 - 8041 SERVICE REQUEST

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 08"IRQ0",INT 69"HP Vectra",INT 6F"HP Vectra"

INT 68


INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DISPLAY

Category: N - network

Inp.:

AH = 01h subfn 1B00h

DS:DX -> control block (see #2272)

Return: control block updated

SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2B00h,INT 68"Novell"

INT 68


INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ATTACH PHYSICAL UNIT

Category: N - network

Inp.:

AH = 01h subfn 2000h

DS:DX -> control block (see #2274)

Return: control block updated

SeeAlso: AH=01h/SF=2100h,AH=01h/SF=2B00h

INT 68


INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ATTACH LOGICAL UNIT

Category: N - network

Inp.:

AH = 01h subfn 2100h

DS:DX -> control block (see #2275)

Return: control block updated

SeeAlso: #2278,#2279,#2281,AH=01h/SF=2000h,AH=01h/SF=2200h,AH=01h/SF=2B00h

INT 68


INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DETACH LOGICAL UNIT

Category: N - network

Inp.:

AH = 01h subfn 2200h

DS:DX -> control block (see #2282)

Return: control block updated

SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2100h,AH=01h/SF=2700h

INT 68


INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DETACH PHYSICAL UNIT

Category: N - network

Inp.:

AH = 01h subfn 2700h

DS:DX -> control block (see #2283)

Return: control block updated

SeeAlso: AH=01h/SF=2000h,AH=01h/SF=2100h,AH=01h/SF=2200h

INT 68


INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ACTIVATE DLC

Category: N - network

Inp.:

AH = 01h subfn 2B00h

DS:DX -> control block (see #2284)

Return: control block updated

SeeAlso: AH=01h/SF=1B00h,AH=01h/SF=2000h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - ALLOCATE

Category: N - network

Inp.:

AH = 02h subfn 0100h

DS:DX -> control block (see #2285)

Return: control block updated

SeeAlso: AH=02h/SF=0500h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - CONFIRM

Category: N - network

Inp.:

AH = 02h subfn 0300h

DS:DX -> control block (see #2288)

Return: control block updated

SeeAlso: AH=02h/SF=0400h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - CONFIRMED

Category: N - network

Inp.:

AH = 02h subfn 0400h

DS:DX -> control block (see #2289)

Return: control block updated

SeeAlso: AH=02h/SF=0300h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - DEALLOCATE

Category: N - network

Inp.:

AH = 02h subfn 0500h

DS:DX -> control block (see #2290)

Return: control block updated

SeeAlso: AH=02h/SF=0100h,AH=02h/SF=0300h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - FLUSH

Category: N - network

Inp.:

AH = 02h subfn 0600h

DS:DX -> control block (see #2291)

Return: control block updated

SeeAlso: AH=02h/SF=0300h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - GET ATTRIBUTES

Category: N - network

Inp.:

AH = 02h subfn 0700h

DS:DX -> control block (see #2292)

Return: control block updated

SeeAlso: AH=02h/SF=0300h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - GET CONVERSATION TYPE

Category: N - network

Inp.:

AH = 02h subfn 0800h

DS:DX -> control block (see #2293)

Return: control block updated

SeeAlso: AH=02h/SF=0300h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - POST ON RECEIPT

Category: N - network

Inp.:

AH = 02h subfn 0900h

DS:DX -> control block (see #2294)

Return: control block updated

SeeAlso: AH=02h/SF=0A00h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - PREPARE TO RECEIVE

Category: N - network

Inp.:

AH = 02h subfn 0A00h

DS:DX -> control block (see #2295)

Return: control block updated

SeeAlso: AH=02h/SF=0900h,AH=02h/SF=0B00h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - RECEIVE AND WAIT

Category: N - network

Inp.:

AH = 02h subfn 0B00h

DS:DX -> control block (see #2296)

Return: control block updated

SeeAlso: AH=02h/SF=0C00h,AH=02h/SF=0F00h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - RECEIVE IMMEDIATE

Category: N - network

Inp.:

AH = 02h subfn 0C00h

DS:DX -> control block (see #2298)

Return: control block updated

SeeAlso: AH=02h/SF=0B00h,AH=02h/SF=0F00h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - REQUEST TO SEND

Category: N - network

Inp.:

AH = 02h subfn 0E00h

DS:DX -> control block (see #2299)

Return: control block updated

SeeAlso: AH=02h/SF=0F00h,AH=02h/SF=1000h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - SEND DATA

Category: N - network

Inp.:

AH = 02h subfn 0F00h

DS:DX -> control block (see #2300)

Return: control block updated

SeeAlso: AH=02h/SF=0E00h,AH=02h/SF=1000h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - SEND ERROR

Category: N - network

Inp.:

AH = 02h subfn 1000h

DS:DX -> control block (see #2301)

Return: control block updated

SeeAlso: AH=02h/SF=0F00h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - TEST

Category: N - network

Inp.:

AH = 02h subfn 1200h

DS:DX -> control block (see #2302)

Return: control block updated

SeeAlso: AH=02h/SF=1300h

INT 68


INT 68 02-- - APPC/PC - CONNECTION CONTROL - WAIT

Category: N - network

Inp.:

AH = 02h subfn 1300h

DS:DX -> control block (see #2303)

Return: control block updated

SeeAlso: AH=02h/SF=1200h

INT 68


INT 68 03-- - APPC/PC - TP STARTED

Category: N - network

Inp.:

AH = 03h subfn 2400h

DS:DX -> control block (see #2304)

Return: control block updated

INT 68


INT 68 03-- - APPC/PC - GET ALLOCATE

Category: N - network

Inp.:

AH = 03h subfn 2800h

DS:DX -> control block (see #2305)

Return: control block updated

INT 68


INT 68 03-- - APPC/PC - CHANGE LOGICAL UNIT

Category: N - network

Inp.:

AH = 03h subfn 2A00h

DS:DX -> control block (see #2306)

Return: control block updated

INT 68


INT 68 04-- - APPC/PC - TRANSACTION PROCESSING

Category: N - network

Inp.:

AH = 04h

DS:DX -> control block (see #2307)

Return: control block updated

INT 68


INT 68 05-- - APPC/PC - TRANSFER MESSAGE DATA

Category: N - network

Inp.:

AH = 05h

DS:DX -> control block (see #2308)

Return: control block updated

INT 68


INT 68 06-- - APPC/PC - CHANGE NUMBER OF SESSIONS

Category: N - network

Inp.:

AH = 06h

DS:DX -> control block (see #2310)

Return: control block updated

INT 68


INT 68 07-- - APPC/PC - PASSTHROUGH

Category: N - network

Inp.:

AH = 07h

DS:DX -> control block (format depends on application subsystem)

Return: control block updated

SeeAlso: AH=FFh

INT 68


INT 68 4300 - ??? - INSTALLATION CHECK???

undocumented function

Category: - - (none)

Inp.:

AX = 4300h

Return: AX = F386h if ???

???

Note:	called by Novell DOS 7.0 EMM386.EXE

SeeAlso: AX=4400h,INT 41/AX=004Fh

INT 68


INT 68 4400 - ???

undocumented function

Category: - - (none)

Inp.:

AX = 4400h

BX = ???

CX = ???

DX = ???

DS:SI = real-mode address of protected-mode GDT

ES:DI = real-mode address of protected-mode IDT

Return: ???

Note:	called by Novell DOS 7.0 EMM386.EXE if AX=4300h returns AX=F386h

SeeAlso: AX=4300h

INT 68


INT 68 47-- - MS Windows debugging kernel - OUTPUT STRING

Category: W - MS Windows

Inp.:

AH = 47h

ES:SI -> string

Notes:	output a string (to inform a debugger of some events)

KERNEL outputs "Windows Kernel Entry\r\n" on startup

SeeAlso: INT 41/AX=0012h

INT 68


INT 68 FA-- - APPC/PC - ENABLE/DISABLE APPC

Category: N - network

Inp.:

AH = FAh

AL bit 0 = new state (0 enable, 1 disable)

SeeAlso: AH=FDh,INT 68"Novell"

INT 68


INT 68 FB-- - APPC/PC - CONVERT

Category: N - network

Inp.:

AH = FBh

DS:DX -> control block (see #2312)

Return: control block updated

INT 68


INT 68 FC-- - APPC/PC - ENABLE/DISABLE MESSAGE TRACING

Category: N - network

Inp.:

AH = FCh

AL = new state

    00h disable tracing

    01h enable tracing

DX = number of bytes to keep (0=all)

SeeAlso: AH=FDh,AH=FEh

INT 68


INT 68 FD-- - APPC/PC - ENABLE/DISABLE API VERB TRACING

Category: N - network

Inp.:

AH = FDh

AL = new tracing state (00h disabled, 01h enabled)

SeeAlso: AH=FAh,AH=FCh,AH=FEh

INT 68


INT 68 FE-- - APPC/PC - SET TRACE DESTINATION

Category: N - network

Inp.:

AH = FEh

AL = trace destinations (see #2313)

DS:DX -> trace stats record if AL bit 0 set (see #2314)

SeeAlso: AH=FCh,AH=FDh

INT 68


INT 68 FF-- - APPC/PC - SET PASSTHROUGH

Category: N - network

Inp.:

AH = FFh

DS:DX -> passthrough exit routine

SeeAlso: AH=07h,INT 68"Novell"

INT 68


INT 69 ---- - Zenith AT BIOS - ???

Category: b - vendor-specific BIOS extensions

Inp.:

Note:	called by INT 09 handler

INT 69


INT 69 ---- - HP Vectra AT - IRQ17 - KEYBOARD OUTPUT-BUFFER-FULL SERVICE ROUTINE

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 09"IRQ1",INT 68"HP Vectra",INT 6A"HP Vectra"

INT 69


INT 69 0100 - DECnet DOS CTERM - INSTALLATION CHECK

Category: N - network

Inp.:

AX = 0100h

Return: AL = FFh if present

SeeAlso: AX=010Fh

INT 69


INT 69 0101 - DECnet DOS CTERM - SEND BYTE

Category: N - network

Inp.:

AX = 0101h

BL = character

DX = session handle

Return: AH >= 80h on error

SeeAlso: AX=0102h

INT 69


INT 69 0102 - DECnet DOS CTERM - READ BYTE

Category: N - network

Inp.:

AX = 0102h

DX = session handle

Return: AH >= 80h on error

AH < 80h if successful

    AL = character

SeeAlso: AX=0101h

INT 69


INT 69 0103 - DECnet DOS CTERM - STATUS

Category: N - network

Inp.:

AX = 0103h

DX = session handle

Return: AH status flags (see #2315)

AL = reason code if DECnet error (see #2316)

SeeAlso: AX=0104h

INT 69


INT 69 0104 - DECnet DOS CTERM - DECnet STATUS

Category: N - network

Inp.:

AX = 0104h

DX = session handle

Return: AX = reason code (see #2316)

Note:	use this call when AX=0103h returns a DECnet error

SeeAlso: AX=0103h

INT 69


INT 69 0105 - DECnet DOS CTERM - OPEN SESSION

Category: N - network

Inp.:

AX = 0105h

DS:BX -> ASCIZ node name

ES:DX -> buffer for session control block (see #2332 at INT 6A/AH=D0h)

Return: AX <= 0 on error

AX > 0 session handle

SeeAlso: AX=0103h,AX=0106h,AX=010Ah

INT 69


INT 69 0106 - DECnet DOS CTERM - CLOSE SESSION

Category: N - network

Inp.:

AX = 0106h

DX = session handle

Return: AH = status

    00h good close

    other error code (see #2316)

SeeAlso: AX=0103h,AX=0105h

INT 69


INT 69 010A - DECnet DOS CTERM - GET SESSION CONTROL BLOCK SIZE

Category: N - network

Inp.:

AX = 010Ah

Return: AX = length of session control block in bytes

SeeAlso: AX=0105h

INT 69


INT 69 010B - DECnet DOS CTERM - GET DECnet SOCKET

Category: N - network

Inp.:

AX = 010Bh

DX = session handle

Return: AX > 0	DECnet socket for the session

AX = 0	no match for handle

INT 69


INT 69 010F - DECnet DOS CTERM - DEINSTALL CTERM

Category: N - network

Inp.:

AX = 010Fh

Return: AH = status

    00h successful uninstall

    other error code (see #2316)

Note:	CTERM must have been the last TSR loaded in order to deinstall it

SeeAlso: AX=0100h

Index:	uninstall;DECnet DOS CTERM

INT 69


INT 69 0A-- - DECnet DOS 2.1+ - DATA LINK LAYER

Category: N - network

Inp.:

AH = 0Ah

AL = function number (see #2317)

ES:BX -> Datalink Communication Block (see #2319)

Return: AX = status (see #2318)

SeeAlso: INT 6D"DECnet"

INT 69


INT 69 4001 - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AX = 4001h

Return: CF clear

AX = 0000h

ES:SI -> ???

Range:	INT 60 to INT 7F, selected by configuration

Note:	the signature "SYSV" immediately before the interrupt handler serves

  as the installation check

SeeAlso: AX=4002h

Index:	installation check;10NET SYSSVC

INT 69


INT 69 4002 - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AX = 4002h

???

Return: ???

Range:	INT 60 to INT 7F, selected by configuration

Note:	the signature "SYSV" immediately before the interrupt handler serves

  as the installation check

INT 69


INT 69 4101 - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AX = 4101h

Return: CF clear

ES:SI -> ???

Range:	INT 60 to INT 7F, selected by configuration

SeeAlso: AX=4102h,AX=4103h,AX=4104h

INT 69


INT 69 4102 - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AX = 4102h

???

Return: ???

INT 69


INT 69 4103 - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AX = 4103h

???

Return: ???

INT 69


INT 69 4104 - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AX = 4104h

???

Return: ???

INT 69


INT 69 42-- - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AH = 42h

AL = function (01h-14h)

???

Return: ???

Range:	INT 60 to INT 7F, selected by configuration

INT 69


INT 69 43-- - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AH = 43h

AL = function (01h-05h)

???

Return: ???

INT 69


INT 69 44-- - 10NET v5.0 - SYSSVC.COM - ???

Category: N - network

Inp.:

AH = 44h

AL = function (01h-03h)

???

Return: ???

Range:	INT 60 to INT 7F, selected by configuration

INT 69


INT 69 49-- - 10NET v5.0 - SYSSVC.COM - BUG

Category: N - network

Inp.:

AH = 49h

Note:	due to a fencepost error, this function branches to hyperspace

SeeAlso: AX=4001h,AH=FFh

INT 69


INT 69 6996 - ISR.COM v1.00 - SPECIFY INTERRUPT HANDLER

Category: G - debuggers/debugging tools

Inp.:

AX = 6996h

DS:DX -> interrupt handler or 0000h:0000h to disable

Return: AX = 9669h

Program: ISR (Interrupt Service Reflector) is a TSR by Rich Bono which permits

  a program to provide hardware interrupt handlers even while being

  debugged with a debugger that swaps interrupt vectors during

  debugging.

Note:	the interrupt vector which is to be reflected is set at installation

  time and cannot be changed

INT 69


INT 69 FF-- - 10NET v5.0 - SYSSVC.COM - SIGNAL SYSTEM ERROR

Category: N - network

Inp.:

AH = FFh

Return: never???

Desc:	displays "System Error" message and register dump, then halts system

Range:	INT 60 to INT 7F, selected by configuration

Notes:	the signature "SYSV" immediately before the interrupt handler serves

  as the installation check

SeeAlso: AX=4001h,AH=49h

INT 69


INT 6A ---- - OPTHELP.COM

Category: U - resident utilities

Inp.:

Program: OPTHELP is an optionally-resident help system for SLR Systems's OPTASM

  assembler

Range:	INT 60h to INT 7Fh, selected by configuration

INT 6A


INT 6A ---- - DECnet DOS - LOCAL AREA TRANSPORT PROGRAM

Category: N - network

Inp.:

Note:	the installation check consists of testing for a signature area

  immediately preceding the interrupt handler (see #2320)

SeeAlso: AH=01h/DH=FFh,INT 6B"DECnet",INT 6D"DECnet"

Index:	installation check;DECnet DOS Local Area Transport

INT 6A


INT 6A ---- - HP Vectra AT - IRQ18 - RESERVED HARDWARE INTERRUPT

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0A"IRQ0",INT 69"HP Vectra",INT 6B"HP Vectra"

INT 6A


INT 6A 0000 - Super-TCP DOS TSR Kernel v3.57 - INSTALLATION CHECK

undocumented function

Category: N - network

Inp.:

AX = 0000h

Return: AX = 4357h ('CW')

Program: Super-TCP is a TCP/IP protocol stack by Frontier Technologies Corp.

Note:	an alternate installation check is to test for the ASCIZ signature

  "FTC Super-TCP" three bytes past the interrupt handler

SeeAlso: AX=0001h,AX=0002h,AX=000Fh,AX=0010h,INT 21/AH=3Fh"BW-TCP"

SeeAlso: INT 61"PCTCP",INT 62/AH=00h"ETHDEV"

INT 6A


INT 6A 0001 - Super-TCP DOS TSR Kernel v3.57 - ???

undocumented function

Category: N - network

Inp.:

AX = 0001h

BH = function number

    01h ???

DS:SI -> ??? 24-byte record1 (see #2322)

ES:DI -> buffer containing ???

    02h ???

DS:SI -> ??? 18-byte record2 (see #2323)

ES:DI -> buffer containing ???

    04h ???

BL = subfunction

    01h

DS:SI -> ??? 28-byte record3 (see #2324)

ES:DI -> buffer containing ???

    02h

DS:SI -> ??? 28-byte record3 (see #2324)

ES:DI -> buffer containing ???

    03h

DS:SI -> ??? 28-byte record3 (see #2324)

    else Return: AX = 0005h

    05h ???

DS:SI -> ??? 20-byte record4 (see #2325)

ES:DI -> buffer containing ???

    06h ???

BL = subfunction

    01h

DS:SI -> ??? 40-byte record5 (see #2326)

    02h

DS:SI -> ??? 20-byte record6 (see #2327)

ES:DI -> ???

    03h

DS:SI -> ??? 20-byte record6 (see #2327)

    04h

DS:SI -> ??? 46-byte record7 (see #2328)

    else Return: AX = 0005h

    11h ???

DS:SI -> ??? 28-byte record8 (see #2329)

ES:DI -> ???

Return: AX = function status (see #2321)

SeeAlso: AX=0000h

INT 6A


INT 6A 0002 - Super-TCP DOS TSR Kernel v3.57 - ???

undocumented function

Category: N - network

Inp.:

AX = 0002h

BX = ??? (zero/nonzero)

CX = ??? identifier (see AX=0004h)

DS:SI -> 40-byte buffer for ??? or 0000h:0000h

ES:DI -> buffer for ??? or 0000h:0000h

Return: AX = 0000h (successful) ???

BL = ???

BH = ???

CX = ???

DX = ???

INT 6A


INT 6A 0003 - Super-TCP DOS TSR Kernel v3.57 - GET ??? DATA AREA

undocumented function

Category: N - network

Inp.:

AX = 0003h

Return: CX:DX -> data area (see #2330)

INT 6A


INT 6A 0004 - Super-TCP DOS TSR Kernel v3.57 - ALLOCATE ???

undocumented function

Category: N - network

Inp.:

AX = 0004h

CX = size in ???

Return: AX = 0000h (successful)

CX = DX = ???

SeeAlso: AX=0005h,AX=000Fh

INT 6A


INT 6A 0005 - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ???

undocumented function

Category: N - network

Inp.:

AX = 0005h

CX = ??? identifier (from AX=0004h)

Return: AX = status (0000h successful, FFFFh failed)

SeeAlso: AX=0004h,AX=000Fh

INT 6A


INT 6A 000F - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ALL ???

undocumented function

Category: N - network

Inp.:

AX = 000Fh

Return: AX = 0000h (successful)

SeeAlso: AX=0000h,AX=0004h,AX=0005h

INT 6A


INT 6A 0010 - Super-TCP DOS TSR Kernel v3.57 - UNINSTALL

undocumented function

Category: N - network

Inp.:

AX = 0010h

Return: AX = status

    0000h successful

    0002h can't uninstall, interrupt vector hooked by another program

Program: Super-TCP is a TCP/IP protocol stack by Frontier Technologies Corp.

Note:	if AX is not one of the values listed here on entry, Super-TCP

  returns AX=FFFEh

SeeAlso: AX=0000h

INT 6A


INT 6A 01-- - DECnet DOS LOCAL AREA TRANSPORT - SEND BYTE

Category: N - network

Inp.:

AH = 01h

DH = FFh

AL = character

DL = handle

Return: AH >= 80h on error

SeeAlso: AH=02h

INT 6A


INT 6A 02-- - DECnet DOS LOCAL AREA TRANSPORT - READ BYTE

Category: N - network

Inp.:

AH = 02h

DH = FFh

DL = handle

Return: AH < 80h if successful

    AL = character

AH >= 80h on error

SeeAlso: AH=01h

INT 6A


INT 6A 03-- - DECnet DOS LOCAL AREA TRANSPORT - STATUS

Category: N - network

Inp.:

AH = 03h

DH = FFh

DL = handle

Return: AH = status flags (see #2331)

INT 6A


INT 6A D0-- - DECnet DOS LOCAL AREA TRANSPORT - OPEN SESSION

Category: N - network

Inp.:

AH = D0h

DH = FFh

AL = password flag

    FFh no password

    0Fh password at ES:DI

ES:BX -> LAT session control block (see #2332)

ES:DI -> 16-byte blank-padded password (optional)

Return: AH = 00h success

    DL = handle

SeeAlso: AX=D000h

INT 6A


INT 6A D000 - DECnet DOS LOCAL AREA TRANSPORT - CLOSE SESSION

Category: N - network

Inp.:

AX = D000h

DH = FFh

DL = handle

Return: AX = status (see #2333)

SeeAlso: AH=D0h

INT 6A


INT 6A D100 - DECnet DOS LOCAL AREA TRANSPORT - SEND BREAK

Category: N - network

Inp.:

AX = D100h

DH = FFh

DL = handle

Return: AX = 0000h if successful

AH bit 7 set if unable to send break

INT 6A


INT 6A D300 - DECnet DOS LOCAL AREA TRANSPORT - RESET LAT COUNTERS

Category: N - network

Inp.:

AX = D300h

DH = FFh

SeeAlso: AX=D400h

INT 6A


INT 6A D400 - DECnet DOS LOCAL AREA TRANSPORT - COPY LAT COUNTERS

Category: N - network

Inp.:

AX = D400h

DH = FFh

CX = buffer size

ES:BX -> buffer for LAT counters

Return: AX = status

    0000h counters copied into buffer

    FFFFh buffer too small

SeeAlso: AX=D300h

INT 6A


INT 6A D500 - DECnet DOS LOCAL AREA TRANSPORT - GET NEXT LAT SERVICE NAME

Category: N - network

Inp.:

AX = D500h

DH = FFh

ES:BX -> 17-byte buffer for name

Return: AH = 00h if successful

   ES:BX buffer filled

AX = FFFFh if end of table or no name available

Notes:	use this function to get the names of the hosts on the network

successive calls are necessary to get all names

SeeAlso: AX=D600h

INT 6A


INT 6A D600 - DECnet DOS LOCAL AREA TRANSPORT - LAT SERVICE TABLE RESET

Category: N - network

Inp.:

AX = D600h

DH = FFh

Return: AX = number of service table entries

BX = status

    0000h service table has not overflowed

    FFFFh service table has overflowed

SeeAlso: AX=D500h

INT 6A


INT 6B ---- - DECnet DOS - PORT DRIVER

Category: N - network

Inp.:

Note:	the installation check consists of testing for a signature area

  (see #2334) immediately preceding the interrupt handler

SeeAlso: INT 6A"DECnet",INT 6C"DECnet"

Index:	installation check;DECnet DOS Port Driver

INT 6B


INT 6B ---- - VIRUS - "Saddam" - ORIGINAL INT 21h VECTOR

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 21/AX=FFFFh,INT 61"VIRUS",INT 70"VIRUS"

INT 6B


INT 6B ---- - HP Vectra AT - IRQ19 - RESERVED HARDWARE INTERRUPT

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0B"IRQ0",INT 6A"HP Vectra",INT 6C"HP Vectra"

INT 6B


INT 6B 0000 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED WRITE

Category: S - serial I/O

Inp.:

AX = 0000h

CX = length

ES:BX -> buffer

Return: CX = number of bytes written

Program: NASI is Novell's NetWare Asynchronous Services Interface (purchased

  from Network Products Corp, who call it NCSI) which runs on

  workstations; NACS is the NetWare Asynchronous Communications

  Services module which runs on servers

Notes:	the installation check consists of testing for the signature string

  "NCSI" three bytes past the interrupt handler; see also AH=02h.

  As of version 3.0, Novell's NASI can be distinguished from NPC's

  NCSI by the presence of an 'A' immediately following the signature

this function is also supported by TelAPI, NPC NCSI, and Connection

  Manager CLIENT.EXE; for TelAPI, nonzero values in AL specify a

  connection ID

Connection Manager returns CF set/AL=FFh if called while an INT 6B

  call is already in progress

SeeAlso: AX=0100h,AH=18h,INT 14/AH=19h,INT 14/AH=E3h

INT 6B


INT 6B 0100 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED READ

Category: S - serial I/O

Inp.:

AX = 0100h

CX = length of buffer

ES:BX -> buffer

Return: CX = number of bytes read

Note:	also supported by TelAPI and NPC NCSI; for TelAPI, nonzero values in

  AL specify a connection ID

SeeAlso: AX=0000h,AH=19h,INT 14/AH=18h,INT 14/AH=E2h,INT 14/AX=FF02h

INT 6B


INT 6B 02-- - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - INSTALL CHECK

Category: S - serial I/O

Inp.:

AH = 02h

AL nonzero

Return: AL = 00h if present and OK

Note:	this function is also supported by TelAPI and NPC NCSI

SeeAlso: AX=0700h

INT 6B


INT 6B 0600 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - CONTROL

Category: S - serial I/O

Inp.:

AX = 0600h

CX = command

    02h send break

    04h disconnect

    06h hold

Return: CF clear if successful

    AL = 00h

CF set on error

    AX < 0

Note:	this function is also supported by TelAPI and NPC NCSI

INT 6B


INT 6B 0700 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - GET STATUS

Category: S - serial I/O

Inp.:

AX = 0700h

Return: CH <> 00h if connection active

Notes:	this function is also supported by TelAPI and NPC NCSI

Novell TelAPI returns CX=FF01h and CF clear

SeeAlso: AH=02h,AH=10h

INT 6B


INT 6B 08-- - TelAPI - CHECK FOR BREAK SIGNAL

Category: N - network

Inp.:

AH = 08h

AL = circuit number

Return: CF clear if no breaks

    AL = 00h

    CX = 0000h

CF set if one or more breaks received

Note:	this function also clears ??? flag

SeeAlso: INT 14/AX=FF00h

INT 6B


INT 6B 10-- - NPC NCSI EXTENDED SERIAL I/O - GET STATUS

Category: S - serial I/O

Inp.:

AH = 10h

AL = connection ID (Novell TELAPI.EXE)

CX = ???

Return: CF clear if successful

    CL = ???

    CH = ???

CF set on error

???

Notes:	this function is also supported by TelAPI

when shelled out to an external protocol from Novell NASI, the circuit

  whose status indicates that it is connected is the currently active

  circuit

SeeAlso: AX=0700h,AH=12h,AH=1Fh

INT 6B


INT 6B 11-- - NPC NCSI EXTENDED SERIAL I/O - ALLOCATE A VIRTUAL CIRCUIT

Category: S - serial I/O

Inp.:

AH = 11h

DX = 0001h

AL = 00h

ES:BX -> service name string (8 characters, blank-padded)

Return: CF clear if successful

    AL = virtual circuit number allocated (01h for Novell TELAPI.EXE)

    CL = ??? (01h for Novell TELAPI.EXE)

    CH = ??? (01h for Novell TELAPI.EXE)

CF set on error

    ???

Note:	this function is also supported by TelAPI

SeeAlso: AH=12h,AH=15h,AH=16h,AH=17h,AH=18h

INT 6B


INT 6B 12-- - NPC NCSI EXTENDED SERIAL I/O - VIRTUAL CIRCUIT STATUS

Category: S - serial I/O

Inp.:

AH = 12h

AL = virtual circuit number

CL = ???

ES:BX -> ???

Return: ???

Note:	this function is also supported by TelAPI

SeeAlso: AH=10h,AH=15h,AH=1Ah,AH=1Bh,AH=1Fh

INT 6B


INT 6B 13-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE REQUEST/REPLY SERVICE NAME

Category: S - serial I/O

Inp.:

AH = 13h

AL = virtual circuit number

CL = direction (00h get, nonzero set)

ES:BX -> buffer for/containing service name

Return: ???

Note:	this function is also supported by TelAPI

SeeAlso: AH=14h,AH=15h

INT 6B


INT 6B 14-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE SERVICE ADDRESS

Category: S - serial I/O

Inp.:

AH = 14h

AL = virtual circuit number

ES:BX -> buffer for/containing service address

Return: ???

Note:	this function is also supported by TelAPI, which only supports

  retrieving the address

SeeAlso: AH=13h,AH=15h,AH=21h

INT 6B


INT 6B 15-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE VIRTUAL CIRCUIT CONFIG

Category: S - serial I/O

Inp.:

AH = 15h

AL = virtual circuit number

CL = direction (00h get, nonzero set)

ES:BX -> buffer for/containing virtual circuit config (see #2335)

Return: ES:BX buffer filled

Note:	this function is also supported by TelAPI

SeeAlso: AH=13h"NCSI",AH=14h"NCSI"

INT 6B


INT 6B 16-- - NPC NCSI EXTENDED SERIAL I/O - LOG AND/OR INITIALIZE VIRTUAL CIRCUIT

Category: S - serial I/O

Inp.:

AH = 16h

AL = virtual circuit number

CL = ??? switch (00h, ???)

Return: CF clear if successful

    AL = virtual circuit number

CF set on error

    ???

Note:	this function is also supported by TelAPI, which always returns CF

  clear and AL=00h

SeeAlso: AH=11h,AH=12h,AH=17h

INT 6B


INT 6B 17-- - NPC NCSI EXTENDED SERIAL I/O - DISCONNECT A VIRTUAL CIRCUIT

Category: S - serial I/O

Inp.:

AH = 17h

AL = virtual circuit number

Return: CF clear if successful

CF set on error

???

Note:	this function is also supported by TelAPI, which always returns CF

  clear and AL=00h

SeeAlso: AH=11h,AH=16h

INT 6B


INT 6B 18-- - NPC NCSI EXTENDED SERIAL I/O - WRITE DATA ON A VIRTUAL CIRCUIT

Category: S - serial I/O

Inp.:

AH = 18h

AL = virtual circuit number

CX = number of characters to send

ES:BX -> buffer containing characters to be sent

Return: CF clear if successful

CF set on error

???

Note:	this function is also supported by TelAPI, which always returns CF

  clear and AL=30h

SeeAlso: AX=0000h,AH=12h,AH=19h

INT 6B


INT 6B 19-- - NPC NCSI EXTENDED SERIAL I/O - READ DATA ON A VIRTUAL CIRCUIT

Category: S - serial I/O

Inp.:

AH = 19h

AL = virtual circuit number

CX = number of characters to read

ES:BX -> buffer for received characters

Return: CX = 0000h if failed

CX = nonzero (possibly number of characters received) if successful

Note:	this function is also supported by TelAPI

SeeAlso: AX=0100h,AH=12h,AH=18h

INT 6B


INT 6B 1A-- - NPC NCSI EXTENDED SERIAL I/O - RECEIVE STATUS

Category: S - serial I/O

Inp.:

AH = 1Ah

???

Return: ???

SeeAlso: AH=12h,AH=1Bh

INT 6B


INT 6B 1B-- - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT STATUS

Category: S - serial I/O

Inp.:

AH = 1Bh

???

Return: ???

SeeAlso: AH=12h,AH=1Ah

INT 6B


INT 6B 1C-- - NPC NCSI EXTENDED SERIAL I/O - CLEAR RECEIVE BUFFER

Category: S - serial I/O

Inp.:

AH = 1Ch

AL = circuit number

Return: nothing

SeeAlso: AH=1Dh"NCSI",AH=1Eh"NCSI"

INT 6B


INT 6B 1D-- - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT BUFFER CONTROL

Category: S - serial I/O

Inp.:

AH = 1Dh

???

Return: ???

SeeAlso: AH=1Ch,AH=1Eh

INT 6B


INT 6B 1E-- - NPC NCSI EXTENDED SERIAL I/O - ISSUE CONTROL REQUEST

Category: S - serial I/O

Inp.:

AH = 1Eh

???

Return: ???

SeeAlso: AH=1Ch,AH=1Dh

INT 6B


INT 6B 1F-- - NPC NCSI EXTENDED SERIAL I/O - EXTERNAL STATUS

Category: S - serial I/O

Inp.:

AH = 1Fh

???

Return: ???

SeeAlso: AH=10h,AH=12h

INT 6B


INT 6B 20-- - Connection Manager CLIENT.EXE - ???

Category: S - serial I/O

Inp.:

AH = 20h

???

Return: ???

Program: Connection Manager by Softwarehouse Corp. permits the sharing of

  serial ports over an IPX or NetBIOS-based network

Note:	CLIENT.EXE returns CF set/AL=F9h if AH is not 00h to 21h on entry

INT 6B


INT 6B 21-- - NPC NCSI EXTENDED SERIAL I/O - QUERY NAME SERVICE

Category: S - serial I/O

Inp.:

AH = 21h

AL = virtual circuit number

CL = ??? (00h or 01h)

ES:BX -> buffer for service name structure (see #2336)

Return: CF clear if successful

    ES:BX buffer filled

CF set on error

Notes:	a program should call this function after allocating a virtual circuit

  and check that the general name matches the requested service

prior to version 3.0, Novell's NASI returned the first available port;

  v3.0+ returns the first port found--check the returned status to

  determine whether the port is available

SeeAlso: AH=14h"NCSI"

INT 6B


INT 6B 6B-- - Tandy SCHOOLMATE PLUS - API

Category: - - (none)

Inp.:

AH = 6Bh

AL = E0h to FFh

Note:	details not yet available

INT 6B


INT 6C ---- - system resume vector (CONVERTIBLE)

Category: - - (none)

Inp.:

INT 6C


INT 6C ---- - DOS 3.2 Realtime Clock update

Category: - - (none)

Inp.:

INT 6C


INT 6C ---- - DECnet DOS network scheduler

Category: N - network

Inp.:

Notes:	the installation check consists of testing for a signature area

  immediately preceding the interrupt handler (see #2337)

also supported by DEC Pathworks for DOS

SeeAlso: INT 6B"DECnet",INT 6D"DECnet",INT 6E"DECnet"

Index:	installation check;DECnet DOS scheduler

INT 6C


INT 6C ---- - HP Vectra AT - IRQ20 - HP-HIL CONTROLLER INTERRUPT

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0C"IRQ0",INT 6B"HP Vectra",INT 6D"HP Vectra"

INT 6C


INT 6D ---- - VIDEO - many VGA - VIDEO BIOS ENTRY POINT

Category: V - video

Inp.:

Desc:	points at the original INT 10 entry point set up by the VGA BIOS

Note:	used by IBM, ATI VGA Wonder, Paradise, Video7, and NCR, and many others

SeeAlso: INT 10

INT 6D


INT 6D ---- - Trident SVGA - VIDEO BIOS HANDLER

Category: V - video

Inp.:

Note:	the BIOS INT 10 handler on various Trident VGA cards consists merely

  of a call to INT 6D followed by an IRET.

INT 6D


INT 6D ---- - DECnet DOS (before 2.1) - DATA LINK LAYER PROGRAM

Category: N - network

Inp.:

AH = function

???

Return: ???

Note:	the installation check consists of testing for a signature area

  immediately preceding the interrupt handler (see #2338)

SeeAlso: INT 69/AH=0Ah,INT 6C"DECnet",INT 6E"DECnet"

Index:	installation check;DECnet DOS Data Link Layer

INT 6D


INT 6D ---- - HP Vectra AT - IRQ21 - RESERVED HARDWARE INTERRUPT

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0D"IRQ0",INT 6C"HP Vectra",INT 6E"HP Vectra"

INT 6D


INT 6E ---- - DECnet DOS - DECnet NETWORK PROCESS API

Category: N - network

Inp.:

Notes:	this is the main DECnet DOS access, and is described in Digital manual

  AA-EB46B-TV ("DECnet-DOS Programmer's Reference Manual")

there is a signature/data area immediately prior to the interrupt

  handler which may be used as an installation check (see #2339)

Index:	installation check;DECnet DOS

INT 6E


INT 6E ---- - HP Vectra AT - IRQ22 - RESERVED HARDWARE INTERRUPT

callout or callback (usually hooked rather than called)

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0E"IRQ0",INT 6D"HP Vectra",INT 6F/AH=00h"HP Vectra"

INT 6E


INT 6F ---- - Novell NetWare - PCOX API (3270 PC terminal interface)

Category: N - network

Inp.:

AX = function

    0000h enter terminal mode

Return: AX = status

    0000h no action requested

    0001h screen save

    0001h reset interface and set configuration parameters

DX = bitfields

    bits 2-0: model number

    bits 4-3: I/O address

    bits 6-5: DMA channel

Return: nothing

    0002h set display parameters

DX = bitfields

    bits 1-0: OIA mode

    bits 4-2: monitor support

Return: nothing

    0003h read status

Return: AX = status word (see #2340)

    0004h read cursor position

Return: AX = cursor position

    0005h get character from device buffer

DX = cursor position

Return: AH = type (00h data, 01h attribute)

AL = data or attribute character

    0006h send character

DH = type (00h ASCII, 01h extended code)

DL = ASCII character or extended code

Return: nothing

    0007h set timeout

DX = timeout in seconds

Return: nothing

    0008h wait for location to be modified

DX = cursor position

Return: AX = status (0000h modified, nonzero timeout)

    0009h NOP

    000Ah restore display

Return: nothing

    000Bh update device buffer

Return: AX = cursor positoin

    000Ch write string to add information area

DS:DX -> string

Return: nothing

    000Dh maintenance operations

DX = maintenance operation code

Return: AX = operation status

    000Eh get control program version

Return: AH = release number (major version)

AL = level number (minor version)

    000Fh get microcode version

Return: AH = release number (major version)

AL = level number (minor version)

    0010h save or display graphics

BX = length of data buffer

CX = subfunction request code

DS:DX -> data buffer

Return: AX = return code

CX = length of PIF data

    0011h perform structured field operation

CX = request number

DS:DX -> parameter list

Return: AX = status word (see #2340)

CX = error number

    0012h set cursor position for direct write buffer

DX = new cursor position

Return: AX = status word (see #2340)

    0013h write direct to buffer

DL = character to be written

DH = translation option

Return: AX = status word (see #2340)

    0014h write direct to buffer without echo

DL = character to be written

DH = translation option

Return: AX = status word (see #2340)

    0015h set direct write string length

DX = string value

Return: nothing

    0016h write string direct to buffer

DS:DX -> string

Return: AX = status word (see #2340)

    0017h write string direct to buffer, untranslated

DS:DX -> string

Return: AX = status word (see #2340)

    0018h get direct-write cursor position

Return: AX = cursor position

    0019h convert row/column to cursor position

DH = display row (1-43)

DL = display column (1-132)

Return: AX = cursor position

    001Ah convert cursor position to row/column

DX = cursor position

Return: AH = display row

AL = display column

    001Bh find next field

DX = initial cursor position

Return: AX = field cursor position

    001Ch find previous field

DX = initial cursor position

Return: AX = field cursor position

    001Dh find next unprotected field

DX = initial cursor position

Return: AX = field cursor position

    001Eh find previous unprotected field

DX = initial cursor position

Return: AX = field cursor position

    001Fh find next protected field

DX = initial cursor position

Return: AX = field cursor position

    0020h find previous protected field

DX = initial cursor position

Return: AX = field cursor position

    0021h masked search forward

DH = mask

DL = search pattern

Return: AX = cursor position or 0000h

    0022h masked search backward

DH = mask

DL = search pattern

Return: AX = cursor position or 0FFFh

    0023h find field length

DX = cursor position

Return: AX = field length

    0024h read field

DS:DX -> buffer for field contents

Return: AX = status word (see #2340)

    0025h read screen

DS:DX -> buffer for screen contents

Return: AX = status word (see #2340)

    0026h read buffer untranslated

DX = cursor position

Return: AX = buffer code

CX:BX -> 3278/79 device buffer image

    0027h enable/disable keyboard

DL = new state of keyboard breaks (00h enabled, 01h disabled)

Return: nothing

    0028h select host session

DL = session short name

Return: AX = session information

    0029h retrieve host session name

AX = short name (DFT) or 0000h (not available, CUT mode)

    002Ah get current device buffer size

Return: AX = device buffer size

CX = segment of EAB

    002Bh arm modified location trigger

DX = cursor position

Return: AX = status (0000h not available, 0001h successful)

INT 6F


INT 6F 00-- - 10NET - LOGIN

Category: N - network

Inp.:

AH = 00h

DS:DX -> login record (see #2341)

Return: CL = security level

AX = status (see #2342)

SeeAlso: AH=01h,AH=80h,INT 21/AX=4402h"10MEMMGR"

INT 6F


INT 6F 00-- - HP Vectra EX-BIOS - "F_ISR" (internal) - RESPOND TO LOGICAL ISR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 00h

BP = ID for driver (see #2343)

DH = data type (see #2344)

DL = physical device driver's index (driver ID / 6)

BX,CX = data

ES:0000h -> physical device's Describe Record (see #2351)

---keypress event data---

    BH = keyboard state (only if bit 5 of DH set) (see #2345)

    BL = scancode (if bit 4 of DH clear)

    CX = number of scancodes in list (if bit 4 of DH set)

    ES:SI -> scancode list (if bit 4 of DH set)

---motion event data---

    BX = new X position (abs device) or X increment (relative device)

    CX = new Y position (abs device) or Y increment (relative device)

---button event data

    BL = button information

bits 15-8 reserved

bit 7: button state (0 = down, 1 = up)

bits 6-0: button number (0-7)

    BH = reserved

Return: AH = status (see #2346)

BP,DS destroyed

---if device is keyboard translator---

    BL = translated scancode

    BH = new keyboard state (if DH bit 5 set) (see #2345)

    DH = new scancode type (see #2344)

Notes:	INT 6F corresponds to IRQ23 on the original HP Vectra AT, which is

  unavailable because of its use as a BIOS extension software interrupt

the INT 6F handler consists of an instruction to load DS with the

  driver's data segment followed by an indexed far jump using BP to

  select the destination vector; since the interrupt handler is

  located immediately following the dispatch table, the HP_VECTOR_TABLE

  may be found by looking at offset 0000h in the INT 6F segment, and

  its size is equal to the offset of the interrupt handler

each entry in the HP_VECTOR table consists of a DWORD for the driver's

  entry point address and a WORD for the driver's data segment

this function is not user-callable, as it is a response to a physical

  event, and assumes that the caller has already handled the physical

  interrupt and updated the Describe Record (see #2351) to reflect

  the event

SeeAlso: INT 6C"HP Vectra",INT 6F/AH=02h"HP Vectra"

INT 6F


INT 6F 01-- - 10NET - LOGOFF

Category: N - network

Inp.:

AH = 01h

DS:DX -> superstation ID or nulls (12 bytes)

Return: CX = number of files closed

AX = status (see also #2342)

    08FFh superstation ID not already logged in

SeeAlso: AH=00h"10NET",AH=81h

INT 6F


INT 6F 02-- - 10NET - STATUS OF NODE

Category: N - network

Inp.:

AH = 02h

DS:DX -> 512-byte status record (see #2355)

Return:	CF clear if successful

CF set on error

    AX = error code (see #2342)

SeeAlso: INT 21/AX=5E01h"10NET"

INT 6F


INT 6F 0200 - HP Vectra EX-BIOS - "F_SYSTEM SF_INIT" - START INITIALIZING DRIVER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0200h

BP = driver ID (see #2343)

BX = "last-used DS" value from HP global data area (see #2350)

Return: AH = status (see #2346)

BX = new "last-used DS" value

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0202h,AH=0Ah"F_INS_FIXOWNDS"

INT 6F


INT 6F 0202 - HP Vectra EX-BIOS - "F_SYSTEM SF_START" - COMPLETE DRIVER INITIALIZ.

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0202h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0204h"HP Vectra"

INT 6F


INT 6F 0204 - MS Windows 3.0 - DOS APPLICATION SWITCH HOOK

callout or callback (usually hooked rather than called)

Category: W - MS Windows

Inp.:

AX = 0204h

Return: AX = status

    0000h switch is allowed

    other switch not allowed

Note:	intercepting this call will allow a DOS application to ensure that

  Windows will not switch away from it.

INT 6F


INT 6F 0204 - HP Vectra EX-BIOS - "F_SYSTEM SF_REPORT_STATE" - GET DRIVER STATE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0204h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

DX = device state from Logical Describe Record (see #2351,#2357)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0206h"HP Vectra"

INT 6F


INT 6F 0206 - HP Vectra EX-BIOS - "F_SYSTEM SF_VERSION_DESC" - GET DRIVER VERSION

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0206h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BX = driver release date code

    (BL = BCD years since 1960, BH = BCD week number within year)

CX = length of version string

ES:DI -> version string

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0204h"HP Vectra",AX=0208h

INT 6F


INT 6F 0208 - HP Vectra EX-BIOS - "F_SYSTEM SF_DEF_ATTR" - RESET TO DEFAULT ATTR

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0208h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=020Ah,AX=020Ch

INT 6F


INT 6F 020A - HP Vectra EX-BIOS - "F_SYSTEM SF_GET_ATTR" - GET CURRENT ATTRIBUTES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 020Ah

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BX,CX = current attributes

BP,DS destroyed

---for V_LTOUCH, V_LPOINTER---

    BX = logical width

    CX = logical height

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Ch

INT 6F


INT 6F 020C - HP Vectra EX-BIOS - "F_SYSTEM SF_SET_ATTR" - SET DEVICE ATTRIBUTES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 020Ch

BP = driver ID (see #2343)

BX,CX = new attributes

---for V_LTOUCH, V_LPOINTER---

    BX = new logical width

    CX = new logical height

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Ah

INT 6F


INT 6F 020E - HP Vectra EX-BIOS - "F_SYSTEM SF_OPEN" - RESERVE DRIVER FOR ACCESS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 020Eh

BP = driver ID (see #2343) for V_HPHIL, others

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	place device in open state, which allows output to the device

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=0210h

INT 6F


INT 6F 0210 - HP Vectra EX-BIOS - "F_SYSTEM SF_CLOSE" - RELEASE DRIVER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0210h

BP = driver ID (see #2343) for V_HPHIL, others

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	place device in closed state, which disallows output to the device

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh

INT 6F


INT 6F 0212 - HP Vectra EX-BIOS - "F_SYSTEM SF_TIMEOUT" - REPORT REQUESTED TIMEOUT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0212h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	report to driver that a previously-requested timeout interval has

  expired

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh,AX=0214h,AX=0216h

INT 6F


INT 6F 0214 - HP Vectra EX-BIOS - "F_SYSTEM SF_INTERVAL" - 60 HZ INTERVAL EXPIRED

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0214h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	report to driver that a previously-requested 60 Hz interval has

  expired

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh,AX=0212h,AX=0216h

INT 6F


INT 6F 0216 - HP Vectra EX-BIOS - "F_SYSTEM SF_TEST" - PERFORM HARDWARE TEST

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0216h

BP = driver ID (see #2343)

Return: AH = status (see #2346)

BP,DS destroyed

---on failure---

CX = length of reason string

ES:DI -> string describing error

SeeAlso: AH=00h"HP Vectra",AX=0200h,AX=0208h,AX=020Eh,AX=0212h,AX=0214h

INT 6F


INT 6F 03-- - 10NET - GET ADDRESS OF CONFIGURATION TABLE

Category: N - network

Inp.:

AH = 03h

DS:DI -> node ID (optional)

Return: ES:BX -> configuration table (see #2358)

SeeAlso: AH=13h,INT 21/AX=5E01h"10NET"

INT 6F


INT 6F 04-- - 10NET - SEND

Category: N - network

Inp.:

AH = 04h

DS:BX -> send record (see #2360)

DS:DX -> data (max 1024 bytes)

Return:	CF clear if successful

CF set on error

    AX = error code (see #2342)

SeeAlso: AH=05h,AH=09h,AH=0Ah

INT 6F


INT 6F 04-- - HP Vectra EX-BIOS - "F_INS_BASEHPVT" - GET HP_VECTOR_TABLE ADDRESS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 04h

BP = 0012h (driver ID for V_SYSTEM)

Return: AH = status (see #2346)

ES = segment of HP_VECTOR_TABLE (see also AH=00h"HP Vectra")

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=06h"F_INS_XCHGFIX",AH=08h"F_INS_XCHGRSVD"

INT 6F


INT 6F 04-- - HP Vectra EX-BIOS - "F_TRACK_INIT" - RESET TRACKING DRIVER TO DEFAULTS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 04h

BP = 005Ah (driver ID for V_STRACK)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=06h"F_TRACK_ON",AH=08h"F_TRACK_OFF"

SeeAlso: AH=0Ah"F_DEF_MASKS",AH=0Ch"F_SET_LIMITS_X"

INT 6F


INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_LOCK" - RESERVE SUB-ADDRESSES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0400h

BP = driver ID (see #2343)

DH,DL = major,minor address (optional)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	reserve specified sub-addresses on an already-allocated driver for

  exclusive access

Note:	this function is documented as present but unsupported in the drivers

  V_LTABLET, V_LPOINTER, and V_LTOUCH

SeeAlso: AH=02h"HP Vectra",AX=0402h"SF_UNLOCK"

INT 6F


INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_SVC" - UNMASK 8041 SVC INT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0400h

BP = 001Eh (driver ID for V_S8259)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0402h"SF_DISABLE_SVC",AX=0404h"SF_ENABLE_KBD"

SeeAlso: AX=0408h"SF_ENABLE_HPHIL"

INT 6F


INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DEF_LINKS" - SET DEFAULT PARENTS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0400h

BP = 002Ah (driver ID for V_SINPUT)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	set the parent vectors in the physical device driver headers to their

  system defaults

SeeAlso: AH=00h"HP Vectra",AX=0402h/BP=002Ah,AX=0404h/BP=002Ah

SeeAlso: AH=06h"F_INQUIRE"

INT 6F


INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_ID_HP" - INSTALLATION CHECK

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0400h

BP = 0054h (driver ID for V_SVIDEO)

???

Return: AH = status (see #2346)

BX = 4850h ('BP')

BP,DS destroyed

???

Note:	only partially documented

SeeAlso: AX=0402h/BP=0054h,AX=0404h/BP=0054h,AX=0406h/BP=0054h

SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

INT 6F


INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - INIT INT 33 HANDLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0400h

BP = 00CCh (driver ID for V_LHPMOUSE)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0402h/BP=00CCh

INT 6F


INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_UNLOCK" - RELEASE SUB-ADDRESSES

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0402h

BP = driver ID (see #2343)

DH,DL = major,minor address (optional)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	release specified sub-addresses from exclusive access

Note:	this function is documented as present but unsupported in the drivers

  V_LTABLET, V_LPOINTER, and VLTOUCH

SeeAlso: AH=02h"HP Vectra",AX=0400h"SF_LOCK"

INT 6F


INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_SVC" - MASK 8041 SVC INT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0402h

BP = 001Eh (driver ID for V_S8259)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=001Eh,AX=0406h/BP=001Eh

SeeAlso: AX=040Ah/BP=001Eh

INT 6F


INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_GET_LINKS" - GET DRIVER LINK FIELDS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0402h

BP = 002Ah (driver ID for V_SINPUT)

ES:SI -> buffer for link table (see #2361)

Return: AH = status (see #2346)

ES:SI buffer filled

BP,DS destroyed

Desc:	get the parent and child vectors for the seven supported physical

  device drivers

SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_DEF_LINKS",AX=0404h"SF_SET_LINKS"

SeeAlso: AH=06h"F_INQUIRE"

INT 6F


INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_INFO" - GET DISPLAY INFO

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0402h

BP = 0054h (driver ID for V_SVIDEO)

???

Return: AH = status (see #2346)

BP,DS destroyed

???

Note:	only partially documented

SeeAlso: AX=0400h/BP=0054h,AX=0404h/BP=0054h,AX=0406h/BP=0054h

SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

INT 6F


INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - FORCE INT 33 INIT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0402h

BP = 00CCh (driver ID for V_LHPMOUSE)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	set up INT 33 even if no mouse is installed

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=00CCh

INT 6F


INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_ON" - GRAPHICS CURSOR ON

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0404h

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	enables graphics cursor tracking of the logical device's movement

SeeAlso: AH=00h"HP Vectra",AX=0400h,AX=0406h"SF_TRACK_OFF"

INT 6F


INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_KBD" - UNMASK 8041 OBF INT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0404h

BP = 001Eh (driver ID for V_S8259)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_ENABLE_SVC",AX=0406h"SF_DISABLE_KBD"

SeeAlso: AX=0408h"SF_ENABLE_HPHIL"

INT 6F


INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_LINKS" - SET DRIVER LINK FIELDS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0404h

BP = 002Ah (driver ID for V_SINPUT)

ES:SI -> buffer containing link table (see #2361)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	specify the parent and child vectors for the seven supported physical

  device drivers

SeeAlso: AH=00h"HP Vectra",AX=0400h"SF_DEF_LINKS",AX=0402h"SF_GET_LINKS"

SeeAlso: AH=06h"F_INQUIRE"

INT 6F


INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_INFO" - SET EXT-CTRL INFO

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0404h

BP = 0054h (driver ID for V_SVIDEO)

???

Return: AH = status (see #2346)

BP,DS destroyed

???

Note:	only partially documented

SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0406h/BP=0054h

SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

INT 6F


INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_OFF" - GRAPHICS CURSOR OFF

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0406h

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	disables graphics cursor tracking of the logical device's movement

SeeAlso: AH=00h"HP Vectra",AX=0400h,AX=0404h"SF_TRACK_ON"

SeeAlso: AX=0408h"SF_CREATE_EVENT"

INT 6F


INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_KBD" - MASK 8041 OBF INT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0406h

BP = 001Eh (driver ID for V_S8259)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0402h"SF_DISABLE_SVC",AX=0404h"SF_ENABLE_KBD"

SeeAlso: AX=040Ah"SF_DISABLE_HPHIL"

INT 6F


INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_MOD_INFO" - SET EXT-CTRL REG

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0406h

BP = 0054h (driver ID for V_SVIDEO)

???

Return: AH = status (see #2346)

BP,DS destroyed

???

Note:	only partially documented

SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0404h/BP=0054h

SeeAlso: AX=0408h/BP=0054h,AX=040Ah/BP=0054h

INT 6F


INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_RECONFIGURE" - RECONFIG LINK

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0406h

BP = 0114h (driver ID for V_HPHIL)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=020Eh,AX=0408h"SF_CRV_WR_PROMPTS"

SeeAlso: AX=0410h"SF_CRV_SELF_TEST"

INT 6F


INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_EVENT" - SET EVENT HANDLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0408h

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

ES:SI -> new event handler (see AH=00h"HP Vectra")

DX = new handler's DS

Return: AH = status (see #2346)

ES:SI -> old event handler

DX = old handler's DS

BP,DS destroyed

Desc:	specify routine to be called on logical device events

Note:	when events occur, the event handler is called with the same registers

  as the "F_ISR" function on AH=00h"HP Vectra"

SeeAlso: AH=00h"HP Vectra",AX=0400h,AX=0406h"SF_TRACK_OFF"

SeeAlso: AX=040Ah"SF_EVENT_ON",AX=040Ch"SF_EVENT_OFF",AH=06h"F_SAMPLE"

INT 6F


INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_HPHIL" - UNMASK HP-HIL INT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0408h

BP = 001Eh (driver ID for V_S8259)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=001Eh,AX=0404h/BP=001Eh

SeeAlso: AX=040Ah/BP=001Eh

INT 6F


INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_RES" - GET VIDMODE RESOLUTN

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0408h

BP = 0054h (driver ID for V_SVIDEO)

???

Return: AH = status (see #2346)

BP,DS destroyed

???

Note:	only partially documented

SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0404h/BP=0054h

SeeAlso: AX=0406h/BP=0054h,AX=040Ah/BP=0054h

INT 6F


INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_PROMPTS" - WRITE PROMPT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0408h

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

DL = prompt number

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=020Eh,AX=0406h/BP=0114h,AX=040Ah/BP=0114h

INT 6F


INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_ON" - ENABLE EVENT HANDLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ah

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0408h"SF_CREATE_EVENT",AX=040Ch"SF_EVENT_OFF"

SeeAlso: AX=040Eh"SF_CLIPPING_ON"

INT 6F


INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_HPHIL" - MASK HP-HIL INT

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ah

BP = 001Eh (driver ID for V_S8259)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0402h/BP=001Eh,AX=0406h/BP=001Eh

SeeAlso: AX=0408h/BP=001Eh

INT 6F


INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_MODE" - SET VIDEO MODE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ah

BP = 0054h (driver ID for V_SVIDEO)

???

Return: AH = status (see #2346)

BP,DS destroyed

???

Note:	only partially documented

SeeAlso: AX=0400h/BP=0054h,AX=0402h/BP=0054h,AX=0404h/BP=0054h

SeeAlso: AX=0406h/BP=0054h,AX=0408h/BP=0054h

INT 6F


INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_INTR" - CREATE INTERVAL ENTRY

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ah

BP = 00AEh (driver ID for V_8041)

BH = vector number of driver to be called regularly (vector addr / 6)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	add a driver to the list (max eight) of drivers which will be called

  by the HP's 8041 at 60 Hz

Note:	the newly added entry will not be called until enabled with

  AX=040Eh/BP=00AEh

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh

SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_ACK" - ACKNOWLEDGE DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ah

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

DL = acknowledge number (specific if 01h-07h, generic otherwise)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0406h/BP=0114h,AX=040Ch/BP=0114h

INT 6F


INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_OFF" - DISABLE EVENT HANDLER

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ch

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0408h"SF_CREATE_EVENT",AX=040Ah"SF_EVENT_ON"

INT 6F


INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_DELET_INTR" - DELETE INTERVAL ENTRY

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ch

BP = 00AEh (driver ID for V_8041)

BH = vector number of driver to be removed (vector addr / 6)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	remove a driver to the list (max eight) of drivers which will be called

  by the HP's 8041 at 60 Hz

SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=00AEh,AX=0410h/BP=00AEh

SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPEAT" - SET KEY REPEAT RATE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Ch

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

DL = repeat rate (00h = 30 Hz, 01h = 60 Hz)

Return: AH = status (see #2346)

BP,DS destroyed

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=0114h,AX=040Eh/BP=0114h

INT 6F


INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_ON" - ENABLE CLIPPING

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Eh

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	causes the physical device's motion to be clipped to prevent overflow

  or underflow of the logical position

SeeAlso: AH=00h"HP Vectra",AX=040Ah"SF_EVENT_ON",AX=0410h"SF_CLIPPING_OFF"

INT 6F


INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABL_INTR" - START INTERRUPT SRVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Eh

BP = 00AEh (driver ID for V_8041)

BH = vector number of driver to be called regularly (vector addr / 6)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	enable 60 Hz calling of a driver previously added to the list of

  drivers to be called by the HP's 8041

SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=00AEh,AX=0410h/BP=00AEh

SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_DISABLE_REPEAT" - KEY REPT OFF

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 040Eh

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

Return: AH = status (see #2346)

BP,DS destroyed

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=0114h,AX=0410h/BP=0114h

SeeAlso: AX=0416h/BP=0114h

INT 6F


INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_OFF" - DISABLE CLIPPING

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0410h

BP = driver ID (see #2343) for V_LPOINTER, V_LTOUCH, V_LTABLET

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	disables clipping of the physical device's motion, which may cause

  overflow or underflow of the logical position

SeeAlso: AH=00h"HP Vectra",AX=040Ah"SF_EVENT_ON",AX=040Eh"SF_CLIPPING_ON"

INT 6F


INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISBL_INTR" - END INTERRUPT SERVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0410h

BP = 00AEh (driver ID for V_8041)

BH = vector number of driver (vector addr / 6)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	disable 60 Hz interval calls to the specified driver

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh

SeeAlso: AX=0412h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_SELF_TEST" - PERFORM SELFTEST

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0410h

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

ES:SI -> buffer for result

Return: AH = status (see #2346)

CX = number of bytes in buffer

BP,DS destroyed

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=0114h,AX=0412h/BP=0114h

INT 6F


INT 6F 0412 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_RAMSW" - SET RAM SWITCH IN 8041

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0412h

BP = 00AEh (driver ID for V_8041)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	sets a flag in the 8041 indicating that a second 256K bank of RAM

  on the motherboard is enabled

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh

SeeAlso: AX=0414h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 0412 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_STATUS" - GET DEVSTATUS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0412h

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

ES:SI -> 15-byte buffer for status

Return: AH = status (see #2346)

CX = number of bytes returned in buffer

BP,DS destroyed

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=00h"HP Vectra",AX=0410h/BP=0114h,AX=0414h/BP=0114h

INT 6F


INT 6F 0414 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_RAMSW" - CLEAR 8041 RAM SWITCH

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0414h

BP = 00AEh (driver ID for V_8041)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	clears a flag in the 8041 indicating that a second 256K bank of RAM

  on the motherboard is enabled, causing the second bank to be disabled

Note:	this function should normally never be called

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh

SeeAlso: AX=0412h/BP=00AEh,AX=0418h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 0414 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_NAME" - GET DEV NAME

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0414h

BP = 0114h (driver ID for V_HPHIL)

BX = device address indicator (see #2362)

DH = HP HIL device major address

ES:SI -> 15-byte buffer for name

Return: AH = status (see #2346)

CX = number of bytes returned in buffer

BP,DS destroyed

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=00h"HP Vectra",AX=0412h/BP=0114h

INT 6F


INT 6F 0416 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_CRTSW" - SET CRT TO MULTIMODE

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0416h

BP = 00AEh (driver ID for V_8041)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	sets a flag in the 8041 indicating that the primary display is the

  Multimode graphics adapter (default)

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh

SeeAlso: AX=0412h/BP=00AEh,AX=0418h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 0416 - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_REPEAT" - SET TYPEMATIC

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0416h

BP = 0114h (driver ID for V_HPHIL)

BH = what to set (00h typematic rate, 01h delay, 02h both)

BL = flag (00h = non-CCP keypad, 01h = Cursor Control Pad only)

DL = rate

    bits 7-4: delay value

    bits 3-0: typematic rate

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=040Eh/BP=0114h,AX=0418h/BP=0114h

INT 6F


INT 6F 0418 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_CRTSW" - SET CRT TO MONOCHROME

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0418h

BP = 00AEh (driver ID for V_8041)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	clears a flag in the 8041, indicating that the primary display is the

  monochrome adapter

SeeAlso: AH=00h"HP Vectra",AX=040Ch/BP=00AEh,AX=040Eh/BP=00AEh

SeeAlso: AX=0414h/BP=00AEh,AX=0416h/BP=00AEh,AX=041Ah/BP=00AEh

INT 6F


INT 6F 0418 - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_LED" - SET KEYBOARD LEDS

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 0418h

BP = 0114h (driver ID for V_HPHIL)

BL = new LED states

    bit 0: scroll lock

    bit 1: NumLock

    bit 2: CapsLock

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=040Eh/BP=0114h,AX=0416h/BP=0114h

INT 6F


INT 6F 041A - HP Vectra EX-BIOS - "F_IO_CTRL SF_PASS_THRU" - SEND DATA BYTE TO 8041

Category: b - vendor-specific BIOS extensions

Inp.:

AX = 041Ah

BP = 00AEh (driver ID for V_8041)

BL = byte to send to 8041

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=040Ah/BP=00AEh,AX=040Eh/BP=00AEh

INT 6F


INT 6F 05-- - 10NET - RECEIVE

Category: N - network

Inp.:

AH = 05h

CX = number of seconds before timeout

DS:DX -> receive buffer (see #2363)

Return:	CF clear if successful

    AH = FEh if dequeued message is a CB message

CF set on error

    AX = error code (see #2342)

SeeAlso: AH=04h"10NET"

INT 6F


INT 6F 06-- - HP Vectra EX-BIOS - "F_PUT_BYTE" - WRITE A BYTE OF DATA TO DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

BP = driver ID (see #2343) for V_HPHIL, others

AL = value to output

---if driver is V_HPHIL---

BX = device address indicator (see #2362)

DH = HP HIL device major address

DL = HP-HIL device register (00h-7Fh)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	output a byte to a specific HP-HIL device register

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=04h"HP Vectra",AH=08h"F_GET_BYTE",AH=0Ah"F_PUT_BUFFER"

INT 6F


INT 6F 06-- - HP Vectra EX-BIOS - "F_SAMPLE" - POLL CURRENT ABSOLUTE POSITION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

BP = driver ID (see #2343) for V_LTOUCH, V_LPOINTER, V_LTABLET, etc.

Return: AH = status (see #2346)

BX = current logical X position

CX = current logical Y position

DL = button transitions (bit N = button N state has changed)

DH = current button states (bit N = current button N state)

ES:0000h -> logical device's Describe Record (see #2351)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=040Ah"SF_EVENT_ON",AX=040Eh"SF_CLIPPING_ON"

INT 6F


INT 6F 06-- - HP Vectra EX-BIOS - "F_INS_XCHGFIX" - EXCH VALUES WITH FIXED VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

BP = 0012h (driver ID for V_SYSTEM)

BX = vector address

DX = new value for DS

ES:DI -> new CS:IP entry point

Return: AH = status (see #2346)

DX = old value for DS

ES:DI -> old CS:IP entry point

BP,DS destroyed

Desc:	replace an existing EX-BIOS driver at a fixed HPVT location without

  initialization

SeeAlso: AH=00h"HP Vectra",AH=04h"F_INS_BASEHPVT",AH=08h"F_INS_XCHGRSVD"

SeeAlso: AH=0Ah"F_INS_XCHGFREE",AH=0Ch"F_INS_FIXOWNDS"

INT 6F


INT 6F 06-- - HP Vectra EX-BIOS - "F_INQUIRE" - GET DRIVER PHYSICAL DESCRIBE RECORD

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

BP = 002Ah (driver ID for V_SINPUT)

AL = HP-HIL physical device number (01h-07h)

Return: AH = status (see #2346)

ES:SI -> physical describe record for driver

BP,DS destroyed

Note:	the returned physical describe record must not be modified

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=08h/BP=002Ah,AH=0Ah/BP=002Ah

SeeAlso: AH=0Ch/BP=002Ah

INT 6F


INT 6F 06-- - HP Vectra EX-BIOS - "F_TRACK_ON" - ENABLE CURSOR TRACKING

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 06h

BP = 005Ah (driver ID for V_STRACK)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=08h"F_TRACK_OFF"

SeeAlso: AH=0Ah"F_DEF_MASKS",AH=0Ch"F_SET_LIMITS_X"

INT 6F


INT 6F 07-- - 10NET - LOCK HANDLE

Category: N - network

Inp.:

AH = 07h

BX = file handle

CX:DX = starting offset in file

SI = record length

Return:	CF clear if successful

CF set on error

    AX = error code (see also AH=00h)

0002h file not found

SeeAlso: AH=08h"10NET",AH=0Fh,INT 21/AH=5Ch

INT 6F


INT 6F 08-- - 10NET - UNLOCK HANDLE

Category: N - network

Inp.:

AH = 08h

BX = file handle

AL = mode

    00h unlock all

    01h unlock record at CX:DX

Return:	CF clear if successful

CF set on error

    AX = error code (see also AH=00h)

0002h file not found

SeeAlso: AH=07h,AH=0Fh,INT 21/AH=5Ch

INT 6F


INT 6F 08-- - HP Vectra EX-BIOS - "F_GET_BYTE" - READ A BYTE OF DATA FROM DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 08h

BP = driver ID (see #2343) for V_HPHIL (0114h), others

---if device is V_HPHIL---

BX = device address indicator (see #2362)

DH = HP HIL device major address

DL = HP-HIL device register (00h-7Fh)

Return: AH = status (see #2346)

AL = value read from device

BP,DS destroyed

Desc:	generic read-byte function; for driver V_HPHIL, retrieves the value

  of a specific HP-HIL device register

Note:	this function is only available if the driver is in the open state

  (see AX=020Eh"SF_OPEN")

SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BUFFER",AH=0Ch"F_GET_BUFFER"

INT 6F


INT 6F 08-- - HP Vectra EX-BIOS - "F_INS_XCHGRSVD" - EXCH VALUES WITH RESRVED VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 08h

BP = 0012h (driver ID for V_SYSTEM)

DX = new value for DS

ES:DI -> new CS:IP entry point

Return: AH = status (00h,F6h) (see also #2346)

    00h successful

BX = vector address used

DX = old value for DS

ES:DI -> old CS:IP entry point

BP,DS destroyed

Desc:	exchange the supplied entry point and DS with the values in the next

  reserved entry in the HP_VECTOR_TABLE

Note:	returns AH=F6h if no more reserved vectors are available

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=0Ah/BP=0012h

SeeAlso: AH=0Ch/BP=0012h

INT 6F


INT 6F 08-- - HP Vectra EX-BIOS - "F_INQUIRE_ALL" - GET DRIVER STATUS TABLE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 08h

BP = 002Ah (driver ID for V_SINPUT)

ES:SI -> buffer for device status table (see #2364)

Return: AH = status (see #2346)

ES:SI buffer filled

BP,DS destroyed

Note:	the returned physical describe record must not be modified

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=06h/BP=002Ah,AH=0Ah/BP=002Ah

SeeAlso: AH=0Ch/BP=002Ah

INT 6F


INT 6F 08-- - HP Vectra EX-BIOS - "F_TRACK_OFF" - DISABLE CURSOR TRACKING

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 08h

BP = 005Ah (driver ID for V_STRACK)

Return: AH = status (see #2346)

BP,DS destroyed

Note:	also removes the graphics cursor sprite from the screen

SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=06h"F_TRACK_ON"

SeeAlso: AH=0Ah"F_DEF_MASKS",AH=0Ch"F_SET_LIMITS_X"

INT 6F


INT 6F 09-- - 10NET - SUBMIT

Category: N - network

Inp.:

AH = 09h

DS:BX -> submit record (see #2365)

SeeAlso: AH=04h"10NET"

INT 6F


INT 6F 0A-- - 10NET - CHAT

Category: N - network

Inp.:

AH = 0Ah

DS:BX -> control parameters (see #2366)

DS:DX -> chat message (see #2367)

SeeAlso: AH=04h"10NET",AH=8Ah

INT 6F


INT 6F 0A-- - HP Vectra EX-BIOS - "F_PUT_BUFFER" - WRITE A BUFFER TO DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ah

BP = driver ID (see #2343) for V_HPHIL (0114h), others

CX = number of bytes to write

ES:DI -> buffer containing data

---if driver is V_HPHIL---

BX = device address indicator (see #2362)

DH = HP HIL device major address

DL = HP-HIL device register (00h-7Fh)

Return: AH = status (see #2346)

CX = number of unwritten bytes left in buffer

BP,DS destroyed

SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BLOCK",AH=0Ch"F_GET_BUFFER"

SeeAlso: AH=0Eh"F_PUT_WORD"

INT 6F


INT 6F 0A-- - HP Vectra EX-BIOS - "F_PUT_BLOCK" - WRITE BLOCKS TO DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ah

BP = driver ID (see #2343) for block device

DH = device major number

DL = device minor number

ES:DI -> command block (see #2368)

Return: AH = status (see #2346)

BX = operation status

BP,DS destroyed

SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BUFFER",AH=0Ch"F_GET_BUFFER"

SeeAlso: AH=0Eh"F_PUT_WORD"

INT 6F


INT 6F 0A-- - HP Vectra EX-BIOS - "F_INS_XCHGFREE" - EXCH VALUES WITH FREE VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ah

BP = 0012h (driver ID for V_SYSTEM)

DX = new value for DS

ES:DI -> new CS:IP entry point

Return: AH = status (00h,F6h) (see also #2346)

    00h successful

BX = vector address used

DX = old value for DS

ES:DI -> old CS:IP entry point

BP,DS destroyed

Desc:	exchange the supplied entry point and DS with the values in the next

  free entry in the HP_VECTOR_TABLE

Note:	returns AH=F6h if no more reserved vectors are available

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=08h/BP=0012h

SeeAlso: AH=0Ch/BP=0012h

INT 6F


INT 6F 0A-- - HP Vectra EX-BIOS - "F_INQUIRE_FIRST" - GET PHYSICAL DRIVER VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ah

BP = 002Ah (driver ID for V_SINPUT)

Return: AH = status (see #2346)

BX = vector address for first HP-HIL device

BP,DS destroyed

Note:	all seven HP-HIL devices use consecutive vectors in the

  HP_VECTOR_TABLE

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=06h/BP=002Ah,AH=08h/BP=002Ah

SeeAlso: AH=0Ch/BP=002Ah

INT 6F


INT 6F 0A-- - HP Vectra EX-BIOS - "F_DEF_MASKS" - DEFINE GRAPHICS CURSOR MASKS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ah

BP = 005Ah (driver ID for V_STRACK)

BH = width of save area in bytes

BL = hot-spot X coordinate

CH = height in scan lines

CL = hot-spot Y coordinate

ES:SI -> sprite mask (screen mask followed by XOR sprite mask)

Return: AH = status (see #2346)

BP,DS destroyed

Note:	the save area is one byte wider than the actual sprite mask; the total

  size of the sprite is at most 144 bytes

SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=08h"F_TRACK_OFF"

SeeAlso: AH=0Ch"F_SET_LIMITS_X",AH=10h"F_PUT_SPRITE",AH=12h"F_REMOVE_SPRITE"

INT 6F


INT 6F 0B-- - 10NET - LOCK SEMAPHORE, RETURN IMMEDIATELY

Category: N - network

Inp.:

AH = 0Bh

AL = drive number or 0

ES:SI = Ethernet address or 0

DS:BX -> 31-byte ASCIZ semaphore name

Return: AL = status (see #2369)

Note:	same as INT 60/AH=12h

SeeAlso: AH=0Ch"10NET",INT 60/AH=12h

INT 6F


INT 6F 0C-- - 10NET - UNLOCK SEMAPHORE

Category: N - network

Inp.:

AH = 0Ch

AL = drive number or 0

ES:SI = Ethernet address or 0

DS:BX -> 31-byte ASCIZ semaphore name

Return: AL = status (see also #2369)

    01h semaphore not locked

Note:	same as INT 60/AH=13h

SeeAlso: AH=0Bh,INT 60/AH=13h

INT 6F


INT 6F 0C-- - HP Vectra EX-BIOS - "F_GET_BUFFER" - READ A BUFFER OF DATA FROM DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ch

BP = driver ID (see #2343) for V_HPHIL (0114h), others

CX = number of bytes or blocks to read

DS:SI -> buffer for received data

Return: AH = status (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

SeeAlso: AH=08h"F_GET_BYTE",AH=0Ah"F_PUT_BUFFER",AH=0Ch"F_GET_BLOCK"

SeeAlso: AH=10h"F_GET_WORD"

INT 6F


INT 6F 0C-- - HP Vectra EX-BIOS - "F_GET_BLOCK" - READ BLOCKS OF DATA FROM DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ch

BP = driver ID (see #2343)

DH = device major number

DL = device minor number

ES:DI -> command block (see #2368)

Return: AH = status (see #2346 at AH=00h"HP Vectra")

BX = operation status

BP,DS destroyed

SeeAlso: AH=08h"F_GET_BYTE",AH=0Ah"F_PUT_BLOCK",AH=0Ch"F_GET_BUFFER"

SeeAlso: AH=10h"F_GET_WORD"

INT 6F


INT 6F 0C-- - HP Vectra EX-BIOS - "F_INS_FIXOWNDS" - INSTALL VALUES IN FIXED VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ch

BP = 0012h (driver ID for V_SYSTEM)

BX = vector address used

ES:DI -> new CS:IP entry point

Return: AH = status (00h) (see #2346)

BP,DS destroyed

Note:	on installation, the given entry point will be invoked with an SF_INIT

  call (see AX=0200h"SF_INIT"), which should return the routine's DS

  in BX.  If the SF_INIT call returns with error code FEh, the power-on

  self-test sequence will be called.

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=08h/BP=0012h

SeeAlso: AH=0Eh/BP=0012h,AH=12h/BP=0012h

INT 6F


INT 6F 0C-- - HP Vectra EX-BIOS - "F_INQUIRE_ENTRY" - GET GID DRIVER ENTRY POINT

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ch

BP = 002Ah (driver ID for V_SINPUT)

Return: AH = status (see #2346)

ES:BX -> physical GID driver CS:IP

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AX=0400h/BP=002Ah,AH=06h/BP=002Ah,AH=08h/BP=002Ah

SeeAlso: AH=0Ah/BP=002Ah

INT 6F


INT 6F 0C-- - HP Vectra EX-BIOS - "F_SET_LIMITS_X" - SET HORIZONTAL TRACKING LIMITS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Ch

BP = 005Ah (driver ID for V_STRACK)

CX = minimum X coordinate

DX = maximum X coordinate

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=005Ah,AH=08h/BP=005Ah,AH=0Eh/BP=005Ah

SeeAlso: AH=10h/BP=005Ah,AH=12h/BP=005Ah,INT 33/AX=0007h

INT 6F


INT 6F 0D-- - 10NET - "WHO" - ENUMERATE USERS ON NETWORK

Category: N - network

Inp.:

AH = 0Dh

AL = type code

    01h return superstations only

    02h return non-superstations only

    otherwise return all

CX = length of data buffer

DS:DX -> array of records to be filled (see #2370)

Return: CL = number of records returned (responding stations)

SeeAlso: AH=16h,AH=8Dh

INT 6F


INT 6F 0E-- - 10NET - SPOOL/PRINT

Category: N - network

Inp.:

AH = 0Eh

DS:DX -> spool/print record (see #2373)

Return:	CF clear if successful

CF set on error

    AX = error code (see also #2342)

17FFh device not mounted

18FFh already spooling to named device

INT 6F


INT 6F 0E-- - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE WORD OF DATA TO DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

BP = driver ID (see #2343)

DX = data word

Return: AH = status (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

SeeAlso: AH=06h"F_PUT_BYTE",AH=0Ah"F_PUT_BUFFER",AH=10h"F_GET_WORD"

INT 6F


INT 6F 0E-- - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE A WORD OF DATA

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

BP = driver ID (see #2343)

??? details not yet available

Return: ???

SeeAlso: AH=06h"HP Vectra",AH=0Ah"HP Vectra",AH=10h"HP Vectra"

INT 6F


INT 6F 0E-- - HP Vectra EX-BIOS - "F_INS_FIXGETDS" - INSTALL VALUES IN FIXED VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

BP = 0012h (driver ID for V_SYSTEM)

BX = vector address used

ES:DI -> new CS:IP entry point

Return: AH = status (00h) (see #2346)

BP,DS destroyed

Note:	on installation, the given entry point will be invoked with an SF_INIT

  call (see AX=0200h"SF_INIT"), with the "last used DS" value in BX;

  the routine should adjust BX and return the new value.  If the

  SF_INIT call returns with error code FEh, the power-on self-test

  sequence will be called.

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h,AH=0Ch/BP=0012h

SeeAlso: AH=10h/BP=0012h,AH=14h/BP=0012h

INT 6F


INT 6F 0E-- - HP Vectra EX-BIOS - "F_SET_LIMITS_Y" - SET VERTICAL TRACKING LIMITS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

BP = 005Ah (driver ID for V_STRACK)

CX = minimum Y coordinate

DX = maximum Y coordinate

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=005Ah,AH=08h/BP=005Ah,AH=0Ch/BP=005Ah

SeeAlso: AH=10h/BP=005Ah,AH=12h/BP=005Ah,INT 33/AX=0008h

INT 6F


INT 6F 0F-- - 10NET v5.0 - "RM LOCK" - ???

Category: N - network

Inp.:

AH = 0Fh

???

Return: ???

SeeAlso: AH=07h,AH=08h"10NET"

INT 6F


INT 6F 10-- - 10NET - ATTACH/DETACH PRINTER

Category: N - network

Inp.:

AH = 10h

AL = subfunction

    00h initiate spooling if LPT1 is mounted

    01h terminate spooling if LPT1 is mounted

SeeAlso: INT 21/AX=5D08h

INT 6F


INT 6F 0E-- - HP Vectra EX-BIOS - "F_GET_WORD" - READ WORD OF DATA FROM DEVICE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 0Eh

BP = driver ID (see #2343)

Return: AH = status (see #2346 at AH=00h"HP Vectra")

DX = data word

BP,DS destroyed

SeeAlso: AH=08h"F_GET_BYTE",AH=0Ch"F_GET_BUFFER",AH=0Eh"F_PUT_WORD"

INT 6F


INT 6F 10-- - HP Vectra EX-BIOS - "F_INS_FIXGLBDS" - INSTALL VALUES IN FIXED VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 10h

BP = 0012h (driver ID for V_SYSTEM)

BX = vector address used

ES:DI -> new CS:IP entry point

Return: AH = status (00h) (see #2346)

BP,DS destroyed

Note:	on installation, the given entry point will be invoked with an SF_INIT

  call (see AX=0200h"SF_INIT"), with BX set to the EX-BIOS global

  data area. If the SF_INIT call returns with error code FEh, the

  power-on self-test sequence will be called.

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=06h/BP=0012h

SeeAlso: AH=0Ch/BP=0012h,AH=0Eh/BP=0012h,AH=12h/BP=0012h,AH=16h/BP=0012h

INT 6F


INT 6F 10-- - HP Vectra EX-BIOS - "F_PUT_SPRITE" - DISPLAY GRAPHICS CURSOR SPRITE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 10h

BP = 005Ah (driver ID for V_STRACK)

BX = X coordinate

CX = Y coordinate

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=04h"F_TRACK_INIT",AH=08h"F_TRACK_OFF"

SeeAlso: AH=12h"F_REMOVE_SPRITE",INT 33/AX=0004h

INT 6F


INT 6F 11-- - 10NET - LOCK FCB

Category: N - network

Inp.:

AH = 11h

AL = mode

    01h sequential

    02h random

    03h random block

CX = number of records

DS:DX -> FCB (see #0574 at INT 21/AH=0Fh)

Return:	CF clear if successful

CF set on error

    AX = error code (see also #2342)

0002h file not found

SeeAlso: AH=12h,INT 21/AH=0Fh

INT 6F


INT 6F 12-- - 10NET - UNLOCK FCB

Category: N - network

Inp.:

AH = 12h

AL = mode

    00h sequential

    01h random

    02h random block

CX = number of records

DS:DX -> FCB (see #0574 at INT 21/AH=0Fh)

Return:	CF clear if successful

CF set on error

    AX = error code (see also #2342)

0002h file not found

SeeAlso: AH=11h

INT 6F


INT 6F 12-- - HP Vectra EX-BIOS - "F_INS_FREEOWNDS" - INSTALL VALUES IN FREE VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 12h

BP = 0012h (driver ID for V_SYSTEM)

ES:DI -> new CS:IP entry point

Return: AH = status (00h) (see #2346)

BP,DS destroyed

Note:	on installation, the given entry point will be invoked with an SF_INIT

  call (see AX=0200h"SF_INIT"), which should return the routine's DS

  in BX.  If the SF_INIT call returns with error code FEh, the power-on

  self-test sequence will be called.

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=0Ch/BP=0012h,AH=14h/BP=0012h

SeeAlso: AH=16h/BP=0012h,AH=18h/BP=0012h

INT 6F


INT 6F 12-- - HP Vectra EX-BIOS - "F_REMOVE_SPRITE" - REMOVE GRAPHICS CURSOR SPRITE

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 12h

BP = 005Ah (driver ID for V_STRACK)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=06h"F_TRACK_ON",AH=10h"F_PUT_SPRITE"

INT 6F


INT 6F 13-- - 10NET v3.3+ - GET REMOTE CONFIGURATION TABLE ADDRESS

Category: N - network

Inp.:

AH = 13h

DS:DX -> node ID, 12 bytes blank-padded

Return:	CF clear if successful

    ES:BX = configuration table address on given machine

CF set on error

    AX = error code (see #2342)

SeeAlso: AH=03h

INT 6F


INT 6F 14-- - 10NET v3.3+ - GET REMOTE MEMORY

Category: N - network

Inp.:

AH = 14h

BX:SI = address of remote memory

CX = length (<=1024 bytes)

DS:DX -> node ID, 12 bytes blank-padded

DS:DI -> area to receive remote memory image

Return:	CF clear if successful

    CX = amount of memory copied to DS:SI

CF set on error

    AX = error code (see #2342)

INT 6F


INT 6F 14-- - HP Vectra EX-BIOS - "F_INS_FREEGETDS" - INSTALL VALUES IN FREE VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 14h

BP = 0012h (driver ID for V_SYSTEM)

ES:DI -> new CS:IP entry point

Return: AH = status (00h) (see #2346)

BP,DS destroyed

Note:	on installation, the given entry point will be invoked with an SF_INIT

  call (see AX=0200h"SF_INIT"), with the "last used DS" value in BX;

  the routine should adjust BX and return the new value.  If the

  SF_INIT call returns with error code FEh, the power-on self-test

  sequence will be called.

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=0Eh/BP=0012h,AH=12h/BP=0012h

SeeAlso: AH=16h/BP=0012h

INT 6F


INT 6F 1501 - 10NET v3.3+ - GET SHARED DEVICE ENTRY

Category: N - network

Inp.:

AX = 1501h

BX = zero-based index

DS:SI -> node ID, 12 bytes blank-padded

ES:DI -> 85-byte buffer for shared device table entry (see #2376)

Return:	CF clear if successful

    ES:DI buffer contains shared device table entry of BXth device

CF set on error

    AX = error code (see #2342)

SeeAlso: AX=1502h,AX=1503h,AX=9501h

INT 6F


INT 6F 1502 - 10NET v3.3+ - SET SHARED DEVICE ENTRY

Category: N - network

Inp.:

AX = 1502h

DS:SI -> node ID, 12 bytes blank-padded

ES:DI -> valid shared device table entry

Return:	CF clear if successful

CF set on error

    AX = error code (see #2342)

SeeAlso: AX=1501h,AX=1503h,AX=9502h

INT 6F


INT 6F 1503 - 10NET v3.3+ - DELETE SHARED DEVICE ENTRY

Category: N - network

Inp.:

AX = 1503h

BX = zero-based index

DS:SI -> node ID, 12 bytes blank-padded

Return:	CF clear if successful

CF set on error

    AX = error code (see #2342)

SeeAlso: AX=1501h,AX=1502h,AX=9503h

INT 6F


INT 6F 16-- - 10NET v5.0 - "GL WHO" - ???

Category: N - network

Inp.:

AH = 16h

???

Return: ???

SeeAlso: AH=0Dh

INT 6F


INT 6F 16-- - HP Vectra EX-BIOS - "F_INS_FREEGLBDS" - INSTALL VALUES IN FREE VECTOR

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 16h

BP = 0012h (driver ID for V_SYSTEM)

ES:DI -> new CS:IP entry point

Return: AH = status (00h) (see #2346 at INT 6F/AH=00h"HP Vectra")

BP,DS destroyed

Note:	on installation, the given entry point will be invoked with an SF_INIT

  call (see AX=0200h"SF_INIT"), with BX set to the EX-BIOS global

  data area.  If the SF_INIT call returns with error code FEh, the

  power-on self-test sequence will be called.

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=10h/BP=0012h,AH=12h/BP=0012h

SeeAlso: AH=14h/BP=0012h,AH=18h/BP=0012h

INT 6F


INT 6F 17-- - 10NET v3.3+ - MOUNT

Category: N - network

Inp.:

AH = 17h

AL = local drive number (0=A:)

BL = remote drive letter or '1'..'3' for LPTn or '4' or '5' for COMx

DS:DX -> node ID, 12 bytes blank-padded

Return:	CF clear if successful

CF set on error

    AX = error code (see #2342)

SeeAlso: AH=18h

INT 6F


INT 6F 18-- - 10NET v3.3+ - UNMOUNT

Category: N - network

Inp.:

AH = 18h

AL = local drive number (0=A:)

BL = type

    00h	    disk

    01h-03h LPTn

    04h,05h COMx

Return:	CF clear if successful

CF set on error

    AX = error code (see #2342)

SeeAlso: AH=17h

INT 6F


INT 6F 18-- - HP Vectra EX-BIOS - "F_INS_FIND" - FIND DRIVER BY ATTRIBUTES

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 18h

BP = 0012h (driver ID for V_SYSTEM)

AL = sense of test (00h equal, 02h non-equal)

BX = AND mask

DX = pattern

SI = first vector address to search

DI = offset in HP header of field to test

Return: AH = status (00h,FEh) (see #2346 at INT 6F/AH=00h"HP Vectra")

BP,DS destroyed

---if AH=00h---

SI = first matching vector address

Desc:	compare successive drivers' header fields starting at address SI

  until the header field AND BX is either equal or non-equal to DX

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=0Ch/BP=0012h,AH=10h/BP=0012h

SeeAlso: AH=12h/BP=0012h,AH=16h/BP=0012h

INT 6F


INT 6F 19-- - 10NET v5.0 - AUDIT

undocumented function

Category: N - network

Inp.:

AH = 19h

???

Return: ???

SeeAlso: AH=99h

INT 6F


INT 6F 1A-- - 10NET v5.0 - "BULL" - ???

undocumented function

Category: N - network

Inp.:

AH = 1Ah

???

Return: ???

INT 6F


INT 6F 1B-- - 10NET v5.0 - "GMOUNT" - ???

undocumented function

Category: N - network

Inp.:

AH = 1Bh

???

Return: ???

INT 6F


INT 6F 1C-- - 10NET v5.0 - "GLOGIN" - GET LOGIN LIST

undocumented function

Category: N - network

Inp.:

AH = 1Ch

???

Return: ???

INT 6F


INT 6F 1D-- - 10NET v5.0 - "TABDATA" - ???

undocumented function

Category: N - network

Inp.:

AH = 1Dh

???

Return: ???

INT 6F


INT 6F 1E-- - 10NET v5.0 - "SCHED" - ???

undocumented function

Category: N - network

Inp.:

AH = 1Eh

???

Return: ???

INT 6F


INT 6F 1E-- - HP Vectra EX-BIOS - "F_RAM_GET" - GET EX-BIOS FREE RAM AREA

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 1Eh

BP = 0012h (driver ID for V_SYSTEM)

Return: AH = status (00h) (see #2346 at INT 6F/AH=00h"HP Vectra")

BX = last-used DS

DX = maximum DS

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=04h/BP=0012h,AH=20h/BP=0012h,AH=22h/BP=0012h

INT 6F


INT 6F 1F-- - 10NET v5.0 - "WHOAMI" - ???

undocumented function

Category: N - network

Inp.:

AH = 1Fh

???

Return: ???

INT 6F


INT 6F 20-- - 10NET v5.0 - ???

undocumented function

Category: N - network

Inp.:

AH = 20h

???

Return: ???

INT 6F


INT 6F 20-- - HP Vectra EX-BIOS - "F_RAM_RET" - RESERVE EX-BIOS MEMORY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 20h

BP = 0012h (driver ID for V_SYSTEM)

BX = new value for "last-used DS"

DX = new value for "maximum DS"

Return: AH = status (00h) (see #2346 at INT 6F/AH=00h"HP Vectra")

BP,DS destroyed

Note:	the F_INS_FIXGETDS and F_INS_FREEGETDS functions

  (see AH=0Eh/BP=0012h,AH=14h/BP=0012h) also modify the values returned

  by this call, requiring care if both methods are used to allocate

  memory

SeeAlso: AH=00h"HP Vectra",AH=0Eh/BP=0012h,AH=14h/BP=0012h,AH=1Eh/BP=0012h

INT 6F


INT 6F 21-- - 10NET v5.0 - ???

undocumented function

Category: N - network

Inp.:

AH = 21h

???

Return: ???

INT 6F


INT 6F 22-- - 10NET v5.0 - ???

undocumented function

Category: N - network

Inp.:

AH = 22h

???

Return: ???

INT 6F


INT 6F 22-- - HP Vectra EX-BIOS - "F_CMOS_GET" - READ CMOS MEMORY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 22h

BP = 0012h (driver ID of V_SYSTEM)

BL = address of CMOS byte to read

Return: AH = status (see #2346 at AH=00h"HP Vectra")

AL = byte read

BP,DS destroyed

Note:	supported by ES, QS, and RS series HP Vectras

SeeAlso: AH=00h"HP Vectra",AH=1Eh/BP=0012h,AH=24h/BP=0012h

INT 6F


INT 6F 24-- - HP Vectra EX-BIOS - "F_CMOS_RET" - WRITE CMOS MEMORY

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 24h

BP = 0012h (driver ID of V_SYSTEM)

BL = address of CMOS byte to write

AL = new value

Return: AH = status (see #2346)

BP,DS destroyed

Note:	updates the CMOS checksum fields (both IBM-standard and HP checksums)

SeeAlso: AH=00h"HP Vectra",AH=22h/BP=0012h

INT 6F


INT 6F 2A-- - HP Vectra EX-BIOS - "F_YIELD" - GIVE UP CPU TO OTHER TASKS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 2Ah

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346)

BP,DS destroyed

Note:	this is a hook for multitasking systems

SeeAlso: AH=00h"HP Vectra",INT 15/AX=1000h,INT 2F/AX=1680h

INT 6F


INT 6F 30-- - HP Vectra EX-BIOS - "F_SND_CLICK_ENABLE" - TURN ON KEYCLICKS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 30h

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

Desc:	enables keyclicks and flushes any pending keyclicks

SeeAlso: AH=32h/BP=0012h,AH=34h/BP=0012h,AH=36h/BP=0012h

INT 6F


INT 6F 32-- - HP Vectra EX-BIOS - "F_SND_CLICK_DISABLE" - TURN OFF KEYCLICKS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 32h

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	disables keyclicks and flushes any pending keyclicks

SeeAlso: AH=00h"HP Vectra",AH=30h/BP=0012h,AH=38h/BP=0012h

INT 6F


INT 6F 34-- - HP Vectra EX-BIOS - "F_SND_CLICK" - GENERATE KEYCLICK

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 34h

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346)

BP,DS destroyed

Desc:	generate a keyclick if fewer than four clicks are already pending

Note:	if keyclicks are already pending, the remaining click count is

  incremented and the function returns immediately

SeeAlso: AH=00h"HP Vectra",AH=30h/BP=0012h,AH=36h/BP=0012h,AH=3Ah/BP=0012h

INT 6F


INT 6F 36-- - HP Vectra EX-BIOS - "F_SND_BEEP_ENABLE" - ENABLE BEEPS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 36h

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=30h/BP=0012h,AH=34h/BP=0012h,AH=38h/BP=0012h

INT 6F


INT 6F 38-- - HP Vectra EX-BIOS - "F_SND_BEEP_DISABLE" - DISABLE BEEPS

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 38h

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=32h/BP=0012h,AH=36h/BP=0012h

INT 6F


INT 6F 3A-- - HP Vectra EX-BIOS - "F_SND_BEEP" - SOUND BEEP WITH CURRENT VALUES

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 3Ah

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

Desc:	make a sound of the frequency and duration defined in the EX-BIOS

  global data area (see #2350)

SeeAlso: AH=00h"HP Vectra",AH=34h/BP=0012h,AH=36h/BP=0012h,AH=38h/BP=0012h

SeeAlso: AH=3Ch/BP=0012h,AH=3Eh/BP=0012h

INT 6F


INT 6F 3C-- - HP Vectra EX-BIOS - "F_SND_SET_BEEP" - SET BEEP FREQUENCY AND DURATION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 3Ch

BP = 0012h (driver ID of V_SYSTEM)

BX = frequency in Hz (1-25000, 0 = off)

DX = duration in 10-microsecond increments

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=3Ah/BP=0012h,AH=3Eh/BP=0012h,#2350

INT 6F


INT 6F 3E-- - HP Vectra EX-BIOS - "F_SND_TONE" - SOUND TONE WITH FREQ AND DURATION

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 3Eh

BP = 0012h (driver ID of V_SYSTEM)

BX = frequency in Hz (1-25000, 0 = off)

DX = duration in 10-microsecond increments

Return: AH = status (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=3Ah/BP=0012h,AH=3Ch/BP=0012h,AH=40h/BP=0012h

INT 6F


INT 6F 40-- - HP Vectra EX-BIOS - "F_STR_GET_FREE_INDEX" - FIND FREE STRING INDEX

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 40h

BP = 0012h (driver ID of V_SYSTEM)

Return: AH = status (see #2346)

BX = next free string index

BP,DS destroyed

Desc:	get the next string index available to user programs

SeeAlso: AH=00h"HP Vectra",AH=42h/BP=0012h,AH=44h/BP=0012h,AH=46h/BP=0012h

INT 6F


INT 6F 42-- - HP Vectra EX-BIOS - "F_STR_DEL_BUCKET" - DEL HEADER FROM BUCKET LIST

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 42h

BP = 0012h (driver ID of V_SYSTEM)

ES:DI -> bucket header (see #2377)

Return: AH = status (00h,FEh) (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=40h/BP=0012h,AH=44h/BP=0012h

INT 6F


INT 6F 44-- - HP Vectra EX-BIOS - "F_STR_PUT_BUCKET" - ADD HEADER TO BUCKET HDR LIST

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 44h

BP = 0012h (driver ID of V_SYSTEM)

ES:DI -> bucket header (see #2377)

Return: AH = status (00h) (see #2346)

BP,DS destroyed

SeeAlso: AH=00h"HP Vectra",AH=42h/BP=0012h,AH=46h/BP=0012h

INT 6F


INT 6F 46-- - HP Vectra EX-BIOS - "F_STR_GET_STRING" - FIND STRING IN BUCKET LIST

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 46h

BP = 0012h (driver ID of V_SYSTEM)

BX = string index

Return: AH = status (00h,other) (see #2346)

BP,DS destroyed

---if successful---

CX = length of string (excluding count byte and terminating NUL)

DS:SI -> header for string

ES:DI -> found string

SeeAlso: AH=00h"HP Vectra",AH=44h/BP=0012h,AH=48h/BP=0012h

INT 6F


INT 6F 48-- - HP Vectra EX-BIOS - "F_STR_GET_INDEX" - GET INDEX FOR STRING

Category: b - vendor-specific BIOS extensions

Inp.:

AH = 48h

BP = 0012h (driver ID of V_SYSTEM)

ES:DI -> ASCIZ string

Return: AH = status (00h,other) (see #2346 at AH=00h"HP Vectra")

BP,DS destroyed

---if successful---

BX = index for the given string

SeeAlso: AH=00h"HP Vectra",AH=40h/BP=0012h,AH=46h/BP=0012h

INT 6F


INT 6F 80-- - 10NET v5.0 - LOGIN

Category: N - network

Inp.:

AH = 80h

DS:DX -> login record (see #2378)

Return: CF clear if successful

    BL = number of days until password expires (00h = never)

    CL = security level

CF set on error

    AX = status (see #2342)

SeeAlso: AH=00h,AH=81h

INT 6F


INT 6F 81-- - 10NET v5.0 - LOGOUT

Category: N - network

Inp.:

AH = 81h

DS:DX -> server node ID (DX=0000h for universal logout)

Return: AX = status (see #2342)

SeeAlso: AH=01h,AH=80h

INT 6F


INT 6F 8A-- - 10NET v5.0 - CHAT

Category: N - network

Inp.:

AH = 8Ah

DS:BX -> chat parameters (see #2379)

DS:DX -> chat message (see #2380)

Return: CF clear if successful

CF set on error

    AX = status (see #2342)

SeeAlso: AH=0Ah

INT 6F


INT 6F 8D-- - 10NET v5.0 - "WHO" - ENUMERATE USERS ON NETWORK

Category: N - network

Inp.:

AH = 8Dh

BX = service mask (see #2381)

CX = length of buffer

DS:DX -> buffer for array of Who data structures (see #2382)

Return: CF clear if successful

    CX = number of nodes matching service mask

    DS:DX buffer filled

CF set on error

    AX = status (see #2342)

SeeAlso: AH=0Dh

INT 6F


INT 6F 9501 - 10NET v5.0 - GET SHARED DEVICE ENTRY

Category: N - network

Inp.:

AX = 9501h

BX = zero-based index

DS:SI -> server's node ID

ES:DI -> buffer for shared device structure (see #2385)

Return: CF clear if successful

CF set on error

    AX = status (see #2342)

SeeAlso: AX=1501h,AX=9502h,AX=9503h,AX=9504h

INT 6F


INT 6F 9502 - 10NET v5.0 - SET SHARED DEVICE ENTRY

Category: N - network

Inp.:

AX = 9502h

DS:SI -> server's node ID

ES:DI -> shared device structure (see #2385)

Return: CF clear if successful

CF set on error

    AX = status (see #2342)

SeeAlso: AX=1502h,AX=9501h,AX=9503h,AX=9504h

INT 6F


INT 6F 9503 - 10NET v5.0 - DELETE SHARED DEVICE

Category: N - network

Inp.:

AX = 9503h

BX = zero-based index

DS:SI -> server's node ID

Return: CF clear if successful

CF set on error

    AX = status (see #2342)

SeeAlso: AX=1503h,AX=9501h,AX=9502h,AX=9504h

INT 6F


INT 6F 9504 - 10NET v5.0 - ENUMERATE USERS OF SHARED DEVICE

Category: N - network

Inp.:

AX = 9504h

BX = zero-based shared device index

CX = zero-based user index

DS:SI -> server's node ID

Return: CF clear if successful

    ES:DI -> node ID of the CX'th user of the BX'th device

CF set on error

    AX = status (see #2342)

SeeAlso: AX=9501h,AX=9502h,AX=9503h

INT 6F


INT 6F 99-- - 10NET v5.0 - AUDIT

Category: N - network

Inp.:

AH = 99h

DS:SI -> server's node ID

ES:DI -> data to be appended to audit trail file (max 106 bytes)

Return: CF clear if successful

CF set on error

    AX = status (see #2342)

SeeAlso: AH=19h,AH=9Ch

INT 6F


INT 6F 9C-- - 10NET v5.0 - GET LOGIN LIST

Category: N - network

Inp.:

AH = 9Ch

BX = zero-based index

Return: CF clear if successful

    DS:DI -> BX'th node ID that caller's machine is logged into

CF set on error

    AX = status (see #2342)

INT 6F


INT 70 ---- - IRQ8 - CMOS REAL-TIME CLOCK

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	this interrupt is called when the real-time clock chip generates an

  alarm or periodic interrupt, among others.  The periodic interrupt

  occurs 1024 times per second.

Nots:	many BIOSes turn off the periodic interrupt in the INT 70h handler

  unless in an event wait (see INT 15/AH=83h or INT 15/AH=86h).

may be masked by setting bit 0 on I/O port A1h

SeeAlso: INT 08,INT 0F"HP 95LX",INT 15/AH=01h"Amstrad",INT 15/AH=83h

SeeAlso: INT 15/AH=86h,INT 1A/AH=02h,INT 58"DESQview"

INT 70


INT 70 ---- - VIRUS - "Stupid" - ORIGINAL INT 21h VECTOR

Category: v - virus/antivirus

Inp.:

Note:	the virus sets this interrupt to be the same as INT 21, and then

  performs only INT 70 calls; since INT 70 is also generated by the

  real-time clock on the PC/AT and higher, this could cause random

  actions on an infected system

SeeAlso: INT 6B"VIRUS",INT 9E"VIRUS",INT E0"VIRUS"

INT 70


INT 71 ---- - IRQ9 - REDIRECTED TO INT 0A BY BIOS

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Notes:	may be masked by setting bit 1 on I/O port A1h

the default BIOS handler invokes INT 0A for compatibility, since the

  pin for IRQ2 on the PC expansion bus became the pin for IRQ9 on the

  AT expansion bus.

under DESQview, only the INT 15h vector and BASIC segment address (the

  word at 0000h:0510h) may be assumed to be valid for the handler's

  process

SeeAlso: INT 0A,INT 59

INT 71


INT 72 ---- - IRQ10 - RESERVED

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Note:	may be masked by setting bit 2 on I/O port A1h

SeeAlso: INT 5A

INT 72


INT 73 ---- - IRQ11 - RESERVED

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Note:	may be masked by setting bit 3 on I/O port A1h

SeeAlso: INT 5B

INT 73


INT 74 ---- - IRQ12 - POINTING DEVICE (PS)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Notes:	may be masked by setting bit 4 on I/O port A1h

under DESQview, only the INT 15h vector and BASIC segment address (the

  word at 0000h:0510h) may be assumed to be valid for the handler's

  process

SeeAlso: INT 33,INT 5C

INT 74


INT 75 ---- - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Desc:	redirected to INT 02 by the BIOS, for compatibility with the PC

Notes:	may be masked by setting bit 5 on I/O port A1h

not all clones wire the coprocessor to generate this IRQ; some systems

  generate an NMI (see INT 02) or assert the -ERROR pin on the CPU

  (see INT 10"COPROCESSOR")

under DESQview, only the INT 15h vector and BASIC segment address (the

  word at 0000h:0510h) may be assumed to be valid for the handler's

  process

SeeAlso: INT 10"COPROCESSOR",INT 5D

INT 75


INT 76 ---- - IRQ14 - HARD DISK CONTROLLER OPERATION COMPLETE (AT and later)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Notes:	may be masked by setting bit 6 on I/O port A1h

on the PS/2, this interrupt is designed to be shared with other

  devices that produce an operation-complete interrupt, though

  the only current user is the hard disk

SeeAlso: INT 0E"IRQ6",INT 15/AH=91h,INT 5E

INT 76


INT 77 ---- - IRQ15 - RESERVED (AT,PS)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Note:	may be masked by setting bit 7 on I/O port A1h

SeeAlso: INT 5F

INT 77


INT 77 ---- - IRQ15 - POWER CONSERVATION (Compaq SLT/286)

callout or callback (usually hooked rather than called)

Category: H - hardware

Inp.:

Note:	may be masked by setting bit 7 on I/O port A1h

SeeAlso: INT 15/AX=4600h,INT 5F

INT 77


INT 78 ---- - UofSalford DBOS DOS extender - API

Category: E - DOS extenders

Inp.:

AH = function

    00h (PB) display 32-bit memory specified by command argument

    01h (PT) display 32-bit instruction(s) specified by command arg

    02h specify offset to subsequent PB and PT commands

    03h switch to protected mode

DWORD following INT instruction point to map; protected-mode

  entry point is immediately following the DWORD

Return: never

Note:	if bit 31 of the map address is set, only a stub was

  loaded by DOS and DBOS will load the entire program

    04h specify that subsequent load (AH=03h) should leave program in

  memory

    05h release program from memory

    06h set break point at address and option count from commandline

    07h resume program execution

    08h single-step program

    09h set read/write breakpoint using 386 debug registers

    0Ah set write breakpoint using 386 debug register

    0Bh set memory byte to new value

    0Ch display CPU registers

    0Dh run until specified program address reached

    0Fh print trace from program map

    10h specify an offset using a map symbol

    14h print memory without any offset

    18h switch DBOS into/out of test mode (ON/OFF commandline args)

    1Dh get address of real/protected-mode communication buffer

Return: ES:BP -> comm buffer

    1Eh set real-mode memory size (specify how much real-mode memory

  to leave free when running FTN77 programs)

    22h uninstall DBOS

    24h force DBOS to emulate coprocessor instructions

    26h set named DBOS switches from commandline

    27h reset named DBOS switched from commandline

    2Ah set list of dynamic link libraries to contents of commandline

  file

    35h specify that subsequent load (AH=03h) should stop at first

  instruction

Return: ???

Notes:	DBOS supports functions 00h through 50h; many of these functions

  provide a low-level debugging interface

command arguments are read from the calling program's PSP

SeeAlso: INT 79"DBOS"

Index:	uninstall;DBOS DOS extender

INT 78


INT 78 ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ0

Category: E - DOS extenders

Inp.:

Program: GO32.EXE is a DOS extender included as part of the 80386 port of the

  GNU C/C++ compiler by DJ Delorie and distributed as DJGPP

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 08,INT 10/AH=FFh"GO32",INT 79"GO32"

INT 78


INT 78 ---- - AutoCAD Device Interface - PLOTTER - SEND COMMAND

available only in real or V86 mode

Category: A - applications

Inp.:

AX = function

    0001h begin plot

BX = file level

    0000h ASCII file

    0001h binary file

    0002h AutoCAD DXB file

    0003h installed ADI driver

    0002h end plot (close plotter)

    0003h move (pen up)

BX = new X position

CX = new Y position

    0004h move (pen down)

BX = new X position

CX = new Y position

    0005h select pen

BX = pen number

    0006h select drawing speed

BX = drawing speed N

    0007h select line style

BX = line style N

    0008h raise pen

    0009h abort plot

Return: AX = 0000h (may be used for driver status in future releases)

SeeAlso: INT 79"AutoCAD",INT 7A/AX=0001h"AutoCAD",INT 7B/AX=8001h"AutoCAD"

INT 78


INT 78 ---- - ADP-60 IDE controller - ORIGINAL INT 13

Category: d - disk I/O enhancements

Inp.:

SeeAlso: INT 79"ADP-60"

INT 78


INT 78 ---- - ULTRAMID - API

Category: s - sound/speech

Inp.:

AX = function

--- digital functions ---

    0000h start digital

ES:DI -> Sound Structure

Return: AX = voice used

    0001h play next buffer

ES:DI -> Sound Structure

    0002h set panning

BX = pan

CX = voice

    0003h set volume

BX = volume

CX = voice

    0004h set rate (not yet implemented)

    0005h pause digital

CX = voice

    0006h restart digital

CX = voice

    0007h stop digital

CX = voice

    0008h get digital position

CX = voice

Return: AX:DX -> position in PC buffer

    0009h get voice status (not yet implemented)

--- MIDI functions ---

    000Ah load MIDI patches

ES:DI -> MIDI track just after the Mtrk header

BX:DX = length of MIDI track

    000Bh load XMIDI patches

ES:DI -> event buffer including the EVNT header

    000Ch load patch

CX = MIDI number of patch

    000Dh unload patch

CX = MIDI number of patch

    000Eh start sequence

    000Fh unload all patches

    0010h MIDI out byte

CX = MIDI byte

    0011h MIDI out string

CX = length

ES:DI -> string of MIDI data

    0012h all notes off

--- resource functions ---

    0013h allocate memory

BX:DX = size of GUS memory needed

Return: AX:DX = address of memory, or 0000:0000 if not avaiable

    0014h free memory

BX:DX = address of memory to be freed

    0015h uninstall

    0016h sem enter

    0017h sem leave

    0018h add external semaphore

BX:DX -> external semaphore

    0019h clear external semaphore

BX:DX -> external semaphore

    001Ah application start

    001Bh application end

Program: UltraMid is a TSR from Advanced Gravis to play MIDI and digital data

   through the Gravis UltraSound (GUS)

Range:	INT 78 to INT 7F

Notes:	the installation check is testing for the signature "ULTRAMID" at

  offset 0103h in the interrupt handler's segment

SeeAlso: INT 2F/AX=CD00h"ULTRAMID",INT 7E"SBOS"

Index:	uninstall;UltraMID

INT 78


INT 78 00-- - TARGA.DEV - CMC International SCSI device driver - SET I/O PORT

Category: d - disk I/O enhancements

Inp.:

AH = 00h

DX = interface board I/O port

Return: CF set on error

    AL = error code (see #2388)

Note:	if this routine is not called, the port is the driver's default

  (usually 0280h or 0300h)

an installation check is performed by TARGA.DEV upon initialization

  by checking for the string "SCSI" at offset 03h into the interrupt

  handler

SeeAlso: AH=01h,AH=02h

Index:	installation check;TARGA.DEV

INT 78


INT 78 --00 - HugeRealMode Server - ENABLE A20

Category: - - (none)

Inp.:

AL = 00h

Return: AX = error code (see #2721)

Note:	The HugeRealMode Server requires an XMS-driver like HIMEM.SYS loaded

  before HUGEREAL (for XMS-memory allocation and A20 control). It

  utilizes some undocumented 386+ features to enable 4G code and data

  segments (flat memory model) in the CPUs real-mode. It is not

  compatible with V86-mode (as with most EMM386). For maximum speed

  and compatibility with DOS it uses a two stage interrupt model

  (see INT 78/AL=03h)

SeeAlso: INT 78/AL=01h,INT 78/AL=02h,INT 78/AL=03h

INT 78


INT 78 --01 - HugeRealMode Server - DISABLE A20

Category: - - (none)

Inp.:

AL = 01h

Return: AX = error code (see #2721)

SeeAlso: INT 78/AL=00h,INT 78/AL=02h

INT 78


INT 78 --02 - HugeRealMode Server - QUERY A20 STATE

Category: - - (none)

Inp.:

AL = 02h

Return: AX = A20 state (0000h disabled, 0001h enabled)

SeeAlso: INT 78/AL=00h,INT 78/AL=01h

INT 78


INT 78 --03 - HugeRealMode Server - ENABLE TWO-STAGE INTERRUPT MODEL

Category: - - (none)

Inp.:

AL = 03h

Return: AX = error code (see #2721)

Notes:	If the two stage interrupt model is disabled, the IP must stay below

  1MB, because the high word of EIP is not saved correctly by the

  standard interrupt management in real mode.  Routines in extended

  memory may only be called with interrupts disabled (only usable for

  very short routines).

If the two stage interupt model is enabled, these conventions are not

  required.  The outer (transparent) ISRs save the higher word of EIP

  in the high word of CR3 (possible modification: in memory, if this

  is not safe) and then invoke the standard ISRs.

Because of this handling, one should use pseudo segmented code even in

  extended memory (64K blocks located on 64K boundaries) to avoid the

  misalignment of the saved EIP (in CR3). Another way is to track and

  realign CR3 each time when jumping over a 64K boundary in extended

  memory

SeeAlso: INT 78/AL=00h,INT 78/AL=04h

INT 78


INT 78 --04 - HugeRealMode Server - DISABLE TWO-STAGE INTERRUPT MODEL

Category: - - (none)

Inp.:

AL = 04h

Return: AX = error code (see #2721)

SeeAlso: INT 78/AL=00h,INT 78/AL=03h

INT 78


INT 78 --05 - HugeRealMode Server - GET SEGMENT ADDRESS OF SERVER-MANAGEMENT RANGE

Category: - - (none)

Inp.:

AL = 05h

Return:	AX = error code (see #2721)

ES = segment address

INT 78


INT 78 --06 - HugeRealMode Server - ALLOCATE MEMORY

Category: - - (none)

Inp.:

AL = 06h

DX = length in KB

Return:	AX = error code (see #2721)

DX = handle

EBX = start address of allocated block

SeeAlso: INT 78/AL=07h,INT 78/AL=08h

INT 78


INT 78 --07 - HugeRealMode Server - DEALLOCATE MEMORY

Category: - - (none)

Inp.:

AL = 07h

DX = handle

Return: AX = error code (see #2721)

SeeAlso: INT 78/AL=06h,INT 78/AL=08h

INT 78


INT 78 --08 - HugeRealMode Server - MODIFY ALLOCATED MEMORY SIZE

Category: - - (none)

Inp.:

AL = 08h

DX = handle

BX = new size in KB

Return:	AX = error code (see #2721)

EBX = new address

SeeAlso: INT 78/AL=06h,INT 78/AL=07h

INT 78


INT 78 --09 - HugeRealMode Server - LOAD .XMF-FILE

Category: - - (none)

Inp.:

AL = 09h

ES:BX -> filename (see #2723)

Return:	AX = error code (see #2721)

ECX = target address

Notes:	memory must be allocated before loading

.XMF file format (eXtended Memory executable File format) is supported

  by the HugeRealMode server for easier handling of XMS-code.

The utility CONFXMF converts .OBJ-files (.COM 'tiny' model) to

  .XMF-format

SeeAlso: INT 78/AL=06h

INT 78


INT 78 --0A - HugeRealMode Server - SET SEGMENT LIMITS

Category: - - (none)

Inp.:

AL = 0Ah

BL = segment limits (see #2722)

Return: AX = error code (see #2721)

SeeAlso: INT 78/AL=05h

INT 78


INT 78 --0B - HugeRealMode Server - TRANSFER MEMORY FROM DOS TO XMS

Category: - - (none)

Inp.:

AL = 0Bh

ES:SI = source address

EDI = target address

ECX = length

Return: AX = error code

SeeAlso: INT 78/AL=0Ch

INT 78


INT 78 --0C - HugeRealMode Server - TRANSFER MEMORY FROM XMS TO DOS

Category: - - (none)

Inp.:

AL = 0Ch

ESI = source address

ES:DI = target address

ECX = length

Return: AX = error code

SeeAlso: INT 78/AL=0Ch

INT 78


INT 78 00-- - HugeRealMode Driver - API

Category: - - (none)

Inp.:

AH = 00h

AL = function

    00h installation check

Return: AX = DBCAh if installed

    01h get entry point

Return: ES:BX -> far call entry point

Program: the HugeRealMode driver was published in the German DOS Extra Nr. 20

  (1992), and makes a 4G flat address space (for both data and code)

  available to real-mode DOS programs

INT 78


INT 78 01-- - TARGA.DEV - GET I/O PORT

Category: d - disk I/O enhancements

Inp.:

AH = 01h

Return: DX = current interface board I/O port

SeeAlso: AH=00h,AH=03h"TARGA"

INT 78


INT 78 02-- - TARGA.DEV - SET DMA CHANNEL

Category: d - disk I/O enhancements

Inp.:

AH = 02h

AL = interface board DMA channel

Return: CF set on error

AL = error code (see #2388)

Note:	if this routine is not called, the DMA channel is the driver's default

  (usually 3)

SeeAlso: AH=00h,AH=03h"TARGA"

INT 78


INT 78 03-- - TARGA.DEV - GET DMA CHANNEL

Category: d - disk I/O enhancements

Inp.:

AH = 03h

Return: AL = current interface board DMA channel

SeeAlso: AH=01h,AH=02h

INT 78


INT 78 04-- - TARGA.DEV - SET SCSI DEVICE NUMBER

Category: d - disk I/O enhancements

Inp.:

AH = 04h

AL = SCSI device number

Return: CF set on error

AL = error code (see #2388)

Note:	if this routine is not called, the device number used is the driver's

  default (usually 0)

SeeAlso: AH=02h,AH=05h

INT 78


INT 78 05-- - TARGA.DEV - GET SCSI DEVICE NUMBER

Category: d - disk I/O enhancements

Inp.:

AH = 05h

Return: AL = current SCSI device number

SeeAlso: AH=03h"TARGA",AH=04h

INT 78


INT 78 06-- - TARGA.DEV - SET/CLEAR EARLY RETURN MODE

Category: d - disk I/O enhancements

Inp.:

AH = 06h

AL = new state

    00h clear early return mode

    01h set early return mode

Note:	if early return mode is set then SCSI will return with no errors

  when the last DMA transfer is started in a call with AH=13h or AH=14h

if this routine is not called, early return mode is cleared

SeeAlso: AH=13h,AH=14h,AH=15h

INT 78


INT 78 08-- - TARGA.DEV - INTERFACE BOARD SELF-TEST

Category: d - disk I/O enhancements

Inp.:

AH = 08h

Return: CF set on error

AL = error code (see #2388)

Note:	the SCSI bus is also reset

SeeAlso: AH=09h

INT 78


INT 78 09-- - TARGA.DEV - RESET SCSI BUS

Category: d - disk I/O enhancements

Inp.:

AH = 09h

Return: AL = error code if carry set (see #2388)

SeeAlso: AH=08h

INT 78


INT 78 10-- - TARGA.DEV - SEND SCSI COMMAND

Category: d - disk I/O enhancements

Inp.:

AH = 10h

DS:SI -> command bytes (see #2389)

Return: AH = SCSI status byte

CF clear if successful

    AL = SCSI message byte

CF set on error

    AL = error code (see #2388)

SeeAlso: AH=11h,INT 21/AX=4403h"ST-01"

INT 78


INT 78 11-- - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (PROGRAMMED I/O)

Category: d - disk I/O enhancements

Inp.:

AH = 11h

DS:SI -> command bytes (see #2390)

ES:BX -> data storage area

CX = number of data bytes to transfer

Return: AH = SCSI status byte

CF clear if successful

    AL = SCSI message byte

CF set on error

    AL = error code (see #2388)

Note:	this command receives data internally one byte at a time

SeeAlso: AH=10h,AH=13h

INT 78


INT 78 12-- - TARGA.DEV - SEND SCSI COMMAND AND DATA (PROGRAMMED I/O)

Category: d - disk I/O enhancements

Inp.:

AH = 12h

DS:SI -> command bytes (see #2391)

ES:BX -> data storage area

CX = number of data bytes to transfer

Return: AH = SCSI status byte

CF clear if successful

    AL = SCSI message byte

CF set on error

    AL = error code (see #2388)

Note:	this command sends data internally one byte at a time

SeeAlso: AH=14h

INT 78


INT 78 13-- - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (DMA)

Category: d - disk I/O enhancements

Inp.:

AH = 13h

DS:SI -> command bytes (see #2392)

ES:BX -> data storage area

DX:CX = number of data bytes to transfer

Return: AH = SCSI status byte (if early return mode is clear)

CF clear if successful

    AL = SCSI message byte (if early return mode is clear)

CF set on error

    AL = error code (see #2388)

Note:	this command receives data using DMA

SeeAlso: AH=11h,AH=12h

INT 78


INT 78 14-- - TARGA.DEV - SEND SCSI COMMAND AND DATA (DMA)

Category: d - disk I/O enhancements

Inp.:

AH = 14h

DS:SI -> command bytes (see #2393)

ES:BX -> data storage area

DX:CX = number of data bytes to transfer

Return: AH = SCSI status byte (if early return mode is clear)

CF clear if successful

    AL = SCSI message byte (if early return mode is clear)

CF set on error

    AL = error code (see #2388)

Note:	this command sends data using DMA

SeeAlso: AH=12h,AH=13h

INT 78


INT 78 15-- - TARGA.DEV - FINISH DATA TRANSFER (DMA)

Category: d - disk I/O enhancements

Inp.:

AH = 15h

Return: AH = SCSI status byte

CF clear if successful

    AL = SCSI message byte

CF set on error

    AL = error code (see #2388)

Note:	if AH=06h was previously called to set the early return mode, this

  function finishes a command AH=13h or AH=14h which returned before

  the last DMA transfer was finished

SeeAlso: AH=06h,AH=13h,AH=14h

INT 78


INT 79 ---- - AVATAR.SYS - FAST GET KEYSTROKE

Category: V - video

Inp.:

Return: CF set if no keystroke available

    AX = FFFFh

CF clear if key pressed

    AX = keystroke

Program: AVATAR.SYS is a CON driver by George Adam Stanislav which interprets

  AVATAR command codes just as ANSI.SYS interprets ANSI commands

Note:	if a keystroke is available, it is removed from the keyboard buffer

  before being returned

SeeAlso: INT 29,INT 2F/AX=1A00h/BX=4156h

INT 79


INT 79 ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ1

Category: E - DOS extenders

Inp.:

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 09,INT 78"GO32",INT 7A"GO32"

INT 79


INT 79 ---- - ADP-60 IDE adapter - ???

undocumented function

Category: d - disk I/O enhancements

Inp.:

SeeAlso: INT 78"ADP-60"

INT 79


INT 79 ---- - DBOS DOS Extender

Category: E - DOS extenders

Inp.:

details not available

Desc:	this interrupt is used by an MS Windows virtual device driver with

  which the DBOS extender communicates when run inside a Windows

  Enhanced Mode DOS box

SeeAlso: INT 78"DBOS"

INT 79


INT 79 0001 - AutoCAD Device Interface - DIGITIZER - INITIALIZE

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 0001h

BX = interface level (0001h)

Return: AX = status (0000h initialization failed, 0001h init successful)

BX = digitizer type

    0000h relative pointing device (mouse, etc.)

    0001h digitizing tablet

CX = digitizer dataflow type

    0000h continuous

    0001h pauses between packets

SeeAlso: AX=0002h,AX=0003h,INT 7A/AX=0001h"AutoCAD"

INT 79


INT 79 0002 - AutoCAD Device Interface - DIGITIZER - TERMINATE

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 0002h

SeeAlso: AX=0001h,AX=0003h

INT 79


INT 79 0003 - AutoCAD Device Interface - DIGITIZER - GET DIGITIZER STATUS

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 0003h

Return: AX = status

    0000h nothing

    0002h tracking point (no button pressed)

BX = X coordinate

CX = Y coordinate

    0003h picked point (button 0,A,B,C,D pressed)

BX = X coordinate

CX = Y coordinate

    0004h button pick

BX = button number

    0005h button and coordinates

BX = button number

CX = X coordinate

DX = Y coordinate

SeeAlso: AX=0001h,AX=0002h

INT 79


INT 7A ---- - Topware Network Operating System - ???

undocumented function

Category: N - network

Inp.:

AL = ???

???

Return: ???

SeeAlso: INT 21/AX=FF00h"Topware",INT 2F/AX=FF00h

INT 7A


INT 7A ---- - X.PC Packet software interface

Category: N - network

Inp.:

ES:BX -> parameter block

SeeAlso: INT 60/AX=01FFh

INT 7A


INT 7A ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ2

Category: E - DOS extenders

Inp.:

Program: GO32.EXE is a DOS extender included as part of the 80386 port of the

  GNU C/C++ compiler by DJ Delorie and distributed as DJGPP

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 0A,INT 79"GO32",INT 7B"GO32"

INT 7A


INT 7A ---- - PRINDIR - API (moved to INT 7C)

obsolete (no longer present in current versions)

Category: P - printer enhancements

Inp.:

SeeAlso: INT 7C"PRINDIR"

INT 7A


INT 7A ---- - Novell NetWare - LOW-LEVEL API - Notes

Category: N - network

Inp.:

Note:	this interrupt is used for IPX/SPX access in NetWare versions through

  2.0a; in later versions, you should use INT 2F/AX=7A00h to get an

  entry point even though INT 7A still exists.	For both INT 7A and

  the FAR entry point, BX contains the function number; IPX is

  sometimes called internally with BX bit 15 set, which causes the

  handler to bypass some initial checks and an optional call to the

  IPX Windows support handler set with INT 2F/AX=7AFFh/BX=0000h

  (see #1619)

SeeAlso: INT 2F/AX=7A00h,INT 64"Novell",INT 7A/BX=0000h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - OPEN SOCKET

Category: N - network

Inp.:

BX = 0000h

AL = socket longevity

    00h open until close or terminate

    FFh open until close

DX = socket number (high byte in DL)

    0000h dynamic allocation

    else  socket to open (see #2394)

Return: AL = return code

    00h success

DX = socket number

    FEh socket table full

    FFh socket already open

Notes:	TSRs which need to use sockets should set AL to FFh, non-resident

  programs should normally use AL=00h

IPX can be configured to support up to 150 open sockets on a

  workstation, and defaults to 20

this function is supported by Advanced NetWare 1.02+

SeeAlso: INT 7A/BX=0001h,INT 7A/BX=0004h,INT 7A/BX=0023h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - CLOSE SOCKET

Category: N - network

Inp.:

BX = 0001h

DX = socket number (high byte in DL) (see #2394)

Notes:	also cancels events set by any Event Control Blocks for the socket

the program must close all open sockets before terminating

this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0000h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - GET LOCAL TARGET

Category: N - network

Inp.:

BX = 0002h

ES:SI -> target internetwork address (see #2409 at INT 7A/BX=000Bh)

ES:DI -> 6-byte buffer for local target

Return: AL = return code

    00h success

       CX = expected one-way transfer time (clock ticks) for a 576-byte

      packet

       ES:DI -> local target

    FAh unsuccessful (no path to destination)

Notes:	the internetwork address consists of a 4-byte network address followed

  by a 6-byte node address.  The local target is only a 6-byte node

  address.  If the target is in the same network, the local target is

  just the node address of target; otherwise, the local target is the

  node address of the bridge that leads to the target.

this function may be called from inside IPX and AES Event Service

  Routines, but not from other interrupt handlers

this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0009h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - SEND PACKET

Category: N - network

Inp.:

BX = 0003h

ES:SI -> Event Control Block (see #2395,#2396)

Notes:	returns immediately; IPX attempts to send the packet in the background

this function is supported by Advanced NetWare 1.02+

this function is nearly identical to BX=000Fh, except that it always

  copies the source address into the IPX header assumed to be at the

  beginning of the first fragment

SeeAlso: BX=0004h,BX=000Fh,INT 21/AH=EEh"Novell"

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - LISTEN FOR PACKET

Category: N - network

Inp.:

BX = 0004h

ES:SI -> Event Control Block (see BX=0003h)

Return: AL = status

    00h successful

    FFh no listening socket for packet

Desc:	this function provides IPX with an ECB for receiving an IPX packet, but

  does not wait for a packet to arrive

Notes:	the application must open a socket and initialize the ECB's ESR

  address, socket number, fragment count, and fragment descriptor

  fields before invoking this function

there is no limit on the number of ECBs which may simultaneously be

  listening on a socket

this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0000h,BX=0003h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - SCHEDULE IPX EVENT

Category: N - network

Inp.:

BX = 0005h

AX = delay time in clock ticks

ES:SI -> Event Control Block (see BX=0003h)

Note:	this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0006h,BX=0007h,BX=0008h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - CANCEL EVENT

Category: N - network

Inp.:

BX = 0006h

ES:SI -> Event Control Block (see BX=0003h)

Return: AL = return code (see #2407)

Notes:	cannot cancel packets which the node's driver has already sent

this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0005h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - SCHEDULE SPECIAL EVENT

Category: N - network

Inp.:

BX = 0007h

AX = delay time

ES:SI -> Event Control Block (see BX=0003h)

Note:	this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0006h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - GET INTERVAL MARKER

Category: N - network

Inp.:

BX = 0008h

Return: AX = interval marker in clock ticks (big-endian???)

Notes:	may be used to measure the time elapsed between two events, up to one

  hour

this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0005h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - GET INTERNETWORK ADDRESS

Category: N - network

Inp.:

BX = 0009h

ES:SI -> buffer for own internetwork address (see #2408)

Return: ES:SI buffer filled

SI destroyed

Note:	this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0002h,BX=000Bh

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - RELINQUISH CONTROL

Category: N - network

Inp.:

BX = 000Ah

Desc:	this call indicates that the application is idle and permits the IPX

  driver to do some work

Note:	this function is supported by Advanced NetWare 1.02+

SeeAlso: INT 15/AX=1000h,INT 21/AH=89h,INT 2F/AX=1680h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - DISCONNECT FROM TARGET

Category: N - network

Inp.:

BX = 000Bh

ES:SI -> internetwork address (see #2409)

Return: nothing

Notes:	this function permits the network software on the remote machine to

  remove any virtual connection with the calling machine

only use in point-to-point networks

should never be called from within an Event Service Routine

this function is supported by Advanced NetWare 1.02+

SeeAlso: BX=0002h,BX=0009h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - internal - INITIALIZE NETWORK ADDRESS

undocumented function

Category: N - network

Inp.:

BX = 000Ch

CX:DX = global network address (see INT 7A/BX=0002h)

ES:DI -> "OSINCRITICALSECTION" flag

DS:SI -> current mode for socket

Note:	the address cannot be changed once it has been initialized

SeeAlso: INT 7A/BX=0024h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - internal - IPX GET PACKET SIZE

undocumented function

Category: N - network

Inp.:

BX = 000Dh

Return: AX = maximum packet size

CX = retry count

SeeAlso: BX=001Ah

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - internal - TERMINATE SOCKETS

undocumented function

Category: N - network

Inp.:

BX = 000Eh

Return: nothing

Notes:	this function terminates all sockets opened with the current mode; this

  may be intended for future enhancements as the socket mode never

  changes in v2.15

called by the NetWare shell if a program terminates

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - INTERNAL - SEND PACKET

Category: N - network

Inp.:

BX = 000Fh

ES:SI -> Event Control Block (see BX=0003h)

Note:	nearly identical to function 0003h, but does not copy address into

  the first fragment, and bypasses normal error checking

SeeAlso: BX=0003h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - INSTALLATION CHECK

Category: N - network

Inp.:

BX = 0010h

AL = 00h

Return: AL = status

    00h if SPX not installed

    F0h if IPX not installed

    FFh if SPX loaded

BH = SPX major version

BL = SPX minor version

CX = maximum SPX connections

DX = SPX connections available

Notes:	this function is supported by Advanced NetWare 2.1+

this interrupt is used for IPX/SPX access in NetWare versions through

  2.0a; in later versions, you should use INT 2F/AX=7A00h to get an

  entry point even though INT 7A still exists.	For both INT 7A and

  the FAR entry point, BX contains the function number

IPX is sometimes called internally with BX bit 15 set, which causes the

  entry point handler to bypass some checks and an optional call to

  the IPX Windows support handler set with INT 2F/AX=7AFFh/BX=0000h

  (see #1619)

SeeAlso: BX=0015h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - ESTABLISH SPX CONNECTION

Category: N - network

Inp.:

BX = 0011h

AL = retry count

AH = watchdog flag

ES:SI -> Event Control Block (see #2395 at BX=0003h)

Return: AL = status (00h,EFh,FDh,FFh) (see #2410)

DX = assigned connection ID number

Desc:	attempt to establish a connection with a listening socket

Notes:	there should always be at least two SPX ECB's listening to a socket, so

  that NetWare can perform its internal packet exchanges

the first fragment should start with a SPX header (see #2411).	Fill

  in all destination addresses.

this function is supported by Advanced NetWare 2.1+

SeeAlso: BX=0000h,BX=0012h,BX=0013h,BX=0014h,BX=0015h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - LISTEN FOR SPX CONNECTION

Category: N - network

Inp.:

BX = 0012h

AH = watchdog flag (00h disabled, 01h enabled)

AL = retry count (00h = default)

ES:SI -> Event Control Block (see #2395 at BX=0003h)

Return: nothing

Notes:	there should always be at least two SPX ECB's listening to a socket, so

  that NetWare can perform its internal packet exchanges

this function is supported by Advanced NetWare 2.1+

SeeAlso: BX=0011h,BX=0013h,BX=0014h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - TERMINATE SPX CONNECTION

Category: N - network

Inp.:

BX = 0013h

DX = connection ID to terminate

ES:SI -> Event Control Block (see #2395 at BX=0003h)

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: BX=0011h,BX=0012h,BX=0014h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - ABORT SPX CONNECTION

Category: N - network

Inp.:

BX = 0014h

DX = connection ID to terminate

Return: nothing

Notes:	this function is supported by Advanced NetWare 2.1+

this function does not tell the other side that the connection has been

  terminated

also aborts any outstanding Establish Connection, Terminate Connection,

  and Send Sequenced Packet commands

SeeAlso: BX=0011h,BX=0013h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - GET SPX CONNECTION STATUS

Category: N - network

Inp.:

BX = 0015h

DX = connection ID

ES:SI -> status buffer (see #2413)

Return: AL = return code (00h,EEh) (see also #2410)

    00h connection still valid

ES:SI -> status buffer filled

Note:	this function is supported by Advanced NetWare 2.1+

SeeAlso: BX=0010h,BX=0011h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - SEND SPX PACKET

Category: N - network

Inp.:

BX = 0016h

DX = connection ID

ES:SI -> Event Control Block (see BX=0003h)

Notes:	this function is supported by Advanced NetWare 2.1+

CX may need to be 0001h ???

SeeAlso: BX=0011h,BX=0017h

INT 7A


INT 7A ---- - Novell NetWare - SPX Driver - LISTEN FOR SPX PACKET

Category: N - network

Inp.:

BX = 0017h

DX = connection ID (unused in v2.15)

ES:SI -> Event Control Block (see BX=0003h)

Notes:	this function is supported by Advanced NetWare 2.1+

CX may need to be 0001h ???

SeeAlso: BX=0011h,BX=0016h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - internal - ADD DIAGNOSTIC ELEMENT

undocumented function

Category: N - network

Inp.:

BX = 0018h

ES:SI -> diagnostic element (see #2414) to be added to Diagnostic Queue

Note:	this function is supported on file servers only under v2.15; v3.02 also

  supports it on workstations

SeeAlso: BX=0019h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - internal - CANCEL DIAGNOSTIC ELEMENT

undocumented function

Category: N - network

Inp.:

BX = 0019h

ES:SI -> diagnostic element (see BX=0018h) to be removed

Note:	this function is supported on file servers only under v2.15; v3.02 also

  supports it on workstations

SeeAlso: BX=0018h

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - internal - GET DRIVER PACKT SIZE LIMIT

Category: N - network

Inp.:

BX = 001Ah

Return: AX = maximum packet size with preamble (at least 576 bytes)

CX = IPX retry count

DS,FLAGS preserved

Note:	this function is has existed since November 1989; it is documented in

  Novell document FYI.A.3709, 03May91

SeeAlso: BX=000Dh

INT 7A


INT 7A ---- - Novell NetWare - IPX Driver - INTERNAL

undocumented function

Category: N - network

Inp.:

BX = 001Bh

???

Return: ???

Notes:	this function is supported on file servers only under v2.15; v3.02 also

  supports it on workstations

used by NetWare Access Server, which may call INT 15/AX=1117h with

  BX=0000h in some cases (it uses a modified DESQview)

INT 7A


INT 7A ---- - Novell NetWare - NetWare Access Server - GET ???

undocumented function

Category: N - network

Inp.:

BX = 001Ch

Return: AX = length of ???

ES:BX -> ???

Notes:	these functions are NOPs for standard IPX drivers such as IPXODI v2.12

SeeAlso: INT 2F/AX=7AF1h,INT 7A/BX=001Dh,INT 7A/BX=001Eh

INT 7A


INT 7A ---- - Novell NetWare - NetWare Access Server - GET ??? ECB AND SOCKET

undocumented function

Category: N - network

Inp.:

BX = 001Dh

Return: DX = socket number chosen by IPX

ES:SI -> ECB in IPX's code segment (will be listening)

BX corrupted

Notes:	these functions are NOPs for standard IPX drivers such as IPXODI v2.12

SeeAlso: INT 2F/AX=7AF1h,INT 7A/BX=001Ch,INT 7A/BX=001Eh

INT 7A


INT 7A ---- - Novell NetWare - NetWare Access Server - GET ??? ECB

undocumented function

Category: N - network

Inp.:

BX = 001Eh

Return: ES:SI -> ECB

BX corrupted

Notes:	these functions are NOPs for standard IPX drivers such as IPXODI v2.12

SeeAlso: INT 2F/AX=7AF1h,INT 7A/BX=001Ch,INT 7A/BX=001Dh

INT 7A


INT 7A ---- - Novell NetWare - IPXODI v2.12+ - GET IPX FLAGS

Category: N - network

Inp.:

BX = 001Fh

DX = 0000h

Return: AX = ???

BX:CX -> ??? entry point (see #2415)

DX = feature flags

    bit 0: IPXODI rather than dedicated IPX

    bit 1: checksumming functions 0020h-0022h supported

ES:SI -> array of words containing used socket number (undocumented);

0000h ends array

all other registers except DS and FLAGS may be destroyed

Note:	IPXODI v2.12 is distributed as part of the Personal NetWare system

  bundled with Novell DOS 7

SeeAlso: BX=0020h,INT 2F/AX=7A2Fh

INT 7A


INT 7A ---- - Novell NetWare - IPXODI v2.12+ - SEND WITH CHECKSUM

Category: N - network

Inp.:

BX = 0020h

ES:SI -> ECB (see #2395 at INT 7A/BX=0003h)

Return: DS,FLAGS preserved

BX,BP corrupted (documented as potentially destroying all other regs)

Desc:	generate a checksum for the packet data and store it in the IPX

  checksum field before transmitting the packet

SeeAlso: BX=001Fh,BX=0021h,BX=0022h,INT 2F/AX=7A2Fh

INT 7A


INT 7A ---- - Novell NetWare - IPXODI v2.12+ - IPX GENERATE CHECKSUM

Category: N - network

Inp.:

BX = 0021h

ES:SI -> ECB data (see #2395 at INT 7A/BX=0003h)

Return: ES,DS,SI preserved

BX,BP corrupted, all other registers potentially destroyed

Notes:	the checksum and TransportControl fields of the IPX packet are updated

this function enables interrupts and is fully reentrant

SeeAlso: BX=001Fh,BX=0020h,BX=0022h,INT 2F/AX=7A2Fh

INT 7A


INT 7A ---- - Novell NetWare - IPXODI v2.12+ - IPX VERIFY CHECKSUM

Category: N - network

Inp.:

BX = 0022h

ES:SI -> ECB data (see #2395 at INT 7A/BX=0003h)

Return: AX = status (0000h checksum matches)

DS,ES,SI preserved

BX,BP corrupted, all other registers potentially destroyed

Note:	this function enables interrupts and is fully reentrant

SeeAlso: BX=001Fh,BX=0020h,BX=0021h,INT 2F/AX=7A2Fh

INT 7A


INT 7A ---- - Novell NetWare - IPXODI v2.12+ - OPEN LOOK-AHEAD SOCKET

Category: N - network

Inp.:

BX = 0023h

DX = socket number (0000h for dynamic allocation)

ES:SI -> Look Ahead handler (see #2416)

BP = desired lookahead size (0000h-0080h)

Return: AL = status

    00h successful

DX = assigned socket number (big-endian)

    FEh maximum number of sockets already open

    FFh specific socket already opened by another application

DS,FLAGS preserved

all other registers may be destroyed

Notes:	the socket will always be long-lived, and must thus be explicitly

  closed with INT 7A/BX=0001h before the Look Ahead handler code is

  removed from memory (i.e. the program terminates)

this function is only supported if INT 2F/AX=7A00h returns ES:BX

  pointing at an IPX version greater than 3.30

the desired lookahead size is the smallest-size packet (including IPX

  header) that should be passed to the lookahead handler when it

  arrives

SeeAlso: INT 7A/BX=0000h,INT 7A/BX=0001h

INT 7A


INT 7A ---- - Novell NetWare - IPXODI v2.20+ - SET INTERNETWORK ADDRESS

undocumented function

Category: N - network

Inp.:

BX = 0024h

ES:SI -> buffer containing internetwork address (see #2409)

Return: BX,CX,SI,DI,ES destroyed

Note:	this function differs from INT 7A/BX=000Ch in that it unconditionally

  sets the address

SeeAlso: INT 7A/BX=000Ch

INT 7A


INT 7A 0001 - AutoCAD Device Interface - DISPLAY - INITIALIZE (INIT1)

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 0001h

BX = configuration

CX = interface level (0001h)

Return: AX = status

    0000h initialization failed

    0001h pre-v4.0 driver initialized successfully

    0003h post-v3.1 driver initialized successfully (driver truncates

  excessivly long packets)

BX = width of graphics area in pixels, or 0000h if using packet

  communication

DX:CX -> packet-mode entry point (see #2417)

SeeAlso: AX=0001h,AX=0200h,AX=07D0h,INT 61/AX=0007h"OPTIMA",INT 78"AutoCAD"

SeeAlso: INT 79/AX=0001h,INT 7B/AX=8001h"AutoCAD",INT 7C"AutoShade"

INT 7A


INT 7A 0200 - AutoCAD Device Interface - RENDERING DEVICE - INITIALIZE (RDLINKUP)

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 0200h

BX = 0000h

CX = interface level (0001h)

Return: BX = 0000h (driver uses packet communication)

DX:CX -> packet-mode entry point (see #2417)

SeeAlso: AX=0001h"AutoCAD",INT 79/AX=0001h,INT 7B/AX=8001h"AutoCAD"

INT 7A


INT 7A 04-- - IBM 3270 Workstation Program API - CREATE A QUEUE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 04h

???

Return: ???

SeeAlso: AH=06h

INT 7A


INT 7A 06-- - IBM 3270 Workstation Program API - DELETE A QUEUE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 06h

???

Return: ???

SeeAlso: AH=04h

INT 7A


INT 7A 07D0 - AutoCAD Device Interface - Compaq VGADI41.EXE - GET ENTRY POINT

available only in real or V86 mode

Category: - - (none)

Inp.:

AX = 07D0h

Return: AX = ??? (0003h)

BX = 0000h

DX:CX -> ADI entry point (see AX=0001h)

SeeAlso: AX=0001h

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - SESSION SERVICES

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h (synchronous request)

CX = 0000h

DX = ID of session manager (SESSMGR)

AL = service (see #2419)

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - KEYBOARD SERVICES

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h (synchronous request)

CX = 0000h

DX = ID of keyboard manager

AL = service number (see #2420)

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - WINDOW SERVICES

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h (synchronous request)

CX = 00FFh

DX = ID of window service controller (WSCTRL)

AL = service number (see #2421)

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - PRESENTATION SPACE SERVICES

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h

CX = 00FFh

DX = ID of PCPSM

AL = service

    01h define presentation space

    02h delete presentation space

    03h display presentation space

    04h position cursor in presentation space

    05h change default presentation space

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - 3270 EMULATION

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h

CX = 00FFh

DX = ID of 3270EML

AL = service

    01h connect

    02h disconnect

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - OPERATOR INFORMATION AREA

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h

CX = 00FFh

DX = ID of OIAM

AL = service

    01h read Operator Information Area

    02h read OIA subset

ES:DI -> control block

Return: ???

Note: the OIA is the 25th line on the Host session

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - TRANSLATE DATA

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h

CX = 00FFh

DX = ID of XLATE

AL = service

    01h translate from host characters to ASCII and vice versa

(determined by control block byte 11)

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - COPY SERVICE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h

CX = 00FFh

DX = ID of copy service

AL = service

    01h copy string from one presentation space to another

    02h copy block from one presentation space to another

    03h connect to PC session for copy

    04h disconnect PC session from copy

ES:DI -> control block

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - Multi-DOS

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = 8020h

CX = 00FFh

ES:DI -> control block

DX = ID of INDJQRY

get environment size

   = ID of INDJASY

request DOS functions from workstation

   = ID of MEMORY

AL = function

    01h allocate memory

    02h deallocate memory

    03h modify allocated size

Return: ???

INT 7A


INT 7A 09-- - IBM 3270 Workstation Program API - HOST SERVICES

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 09h

BX = request type (4000h async, 8028h synchronous)

CX = 0000h

DX = ID of MFIC

AL = service (see #2422)

ES:DI -> control block

INT 7A


INT 7A 13-- - IBM 3270 Workstation Program API - GET DATA FROM A QUEUE

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 13h

???

Return: ???

INT 7A


INT 7A 7A-- - Canon IX-30F Image Scanner SI3.SYS - INTERFACE

Category: - - (none)

Inp.:

AH = 7Ah

???

Return: AX = status

    0000h success

    000Eh undefined function code

Range:	unknown, selected by device driver commandline arguments

INT 7A


INT 7A 81-- - IBM 3270 Workstation Program API - RESOLVE A GATE NAME

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 81h

ES:DI -> 8-char blank-padded gate name (see #2423)

Return: DX = gate ID

INT 7A


INT 7A 83-- - IBM 3270 Workstation Program API - GET COMPLETION RESULTS

Category: I - IBM workstation/terminal emulators

Inp.:

AH = 83h

???

Return: ???

INT 7A


INT 7A FDCB - IBM Personal Communications/3270 - INSTALLATION CHECK

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FDCBh

Return: DX:AX -> PCS/3270 signature block if loaded (see #2424)

INT 7A


INT 7A FE01 - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FE01h

???

Return: ???

SeeAlso: AX=FE02h

INT 7A


INT 7A FE02 - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FE02h

???

Return: ???

SeeAlso: AX=FE01h

INT 7A


INT 7A FF01 - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FF01h

ES:DI -> API function handler routine

Return: CX = 1200h

SeeAlso: AX=FF02h,AX=FF03h

INT 7A


INT 7A FF02 - IBM PC3270 EMUL PROG v3 - INTERNAL API TERMINATION

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FF02h

Return: CX = 1200h

SeeAlso: AX=FF01h

INT 7A


INT 7A FF03 - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FF03h

ES:DI -> send/receive function handler routine

Return: CX = 1200h

SeeAlso: AX=FF01h

INT 7A


INT 7A FF04 - IBM PC3270 EMUL PROG v3 - INTERNAL ???

undocumented function

Category: I - IBM workstation/terminal emulators

Inp.:

AX = FF04h

ES:DI -> ???

Return: CX = 1200h

INT 7A


INT 7B ---- - Btrieve API (single user)

Category: f - file manipulation

Inp.:

DS:DX -> 38-byte parameter record (see #2425)

Return: return code field set

Note:	Btrieve sets low byte of vector to 33h; this serves as the installation

  check

SeeAlso: INT 2F/AX=AB01h,INT 7F/AX=0200h

INT 7B


INT 7B ---- - Eicon Access API (3270/5250 gateways)

Category: I - IBM workstation/terminal emulators

Inp.:

SeeAlso: INT 5C"NetBIOS"

INT 7B


INT 7B ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ3

Category: E - DOS extenders

Inp.:

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 0B,INT 10/AH=FFh"GO32",INT 7A"GO32",INT 7C"GO32"

INT 7B


INT 7B ---- - AutoCAD Device Interface - PRINTER/PLOTTER - SEND PLOTTING DATA

callout or callback (usually hooked rather than called)

available only in real or V86 mode

Category: A - applications

Inp.:

AX = data length (0000h-7FFFh)

CX:BX -> data to be plotted

DX = vertical position of line on page

Return: nothing

Notes:	This interrupt is called by AutoCAD to perform its output

A data length of 0000h indicates that a blank line is to be output

SeeAlso: AX=8001h,AX=8002h,INT 78"AutoCAD",INT 7A/AX=0001h"AutoCAD"

INT 7B


INT 7B ---- - MCI Express v2.11+ - DRIVER.EXE - ???

undocumented function

Category: e - electronic mail

Inp.:

Program: MCI Express is a front end to MCI Mail; DRIVER.EXE is its

  communication driver

INT 7B


INT 7B ---- - Novell XQL - XQL PRIMITIVES MANAGER API

Category: - - (none)

Inp.:

DS:DX -> parameter block (see #2429)

Return: parameter block updated

INT 7B


INT 7B 8001 - AutoCAD Device Interface - PRINTER/PLOTTER - BEGIN PLOT

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 8001h

BX = file level

    0000h binary file

    0001h CAD/camera image file

    0002h installed ADI driver

CX = horizontal size in pixels

DX = vertical size in pixels

Return: AX = status (0000h initialization failed, 0001h init successful)

BX = allowed output format

    0000h monochrome

    0001h color (4 bits per pixel)

SeeAlso: AX=8002h,AX=8003h,INT 7B"AutoCAD",INT 7C"AutoShade"

INT 7B


INT 7B 8002 - AutoCAD Device Interface - PRINTER/PLOTTER - END PLOT

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 8002h

SeeAlso: AX=8001h,AX=8003h

INT 7B


INT 7B 8003 - AutoCAD Device Interface - PRINTER/PLOTTER - ABORT PLOT

available only in real or V86 mode

Category: A - applications

Inp.:

AX = 8003h

SeeAlso: AX=8001h,AX=8002h

INT 7B


INT 7C ---- - IBM REXX88PC command language

undocumented function

Category: r - runtime support

Inp.:

???

INT 7C


INT 7C ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ4

Category: E - DOS extenders

Inp.:

Program: GO32.EXE is a DOS extender included as part of the 80386 port of the

  GNU C/C++ compiler by DJ Delorie and distributed as DJGPP

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 0C,INT 7B"GO32",INT 7D"GO32"

INT 7C


INT 7C ---- - PRINDIR v8.02+ - API

Category: P - printer enhancements

Inp.:

AH = function

   00h set output to Invisible mode

   01h set output to LPT1

   02h set output to LPT2

   03h set output to LPT3

   04h set output to COM1

   05h set output to COM2

   06h set output to COM3

   07h set output to COM4

   08h set output to screen

   09h set output to file

   0Ah change file path

       ES:DI -> new path

       CX = length of path (max 41, but not range-checked)

   0Bh change file name

       ES:DI -> new filename

       CX = length of new name (max 41, but not range-checked)

   0Ch set redirected device

(01h = LPT1 ... 03h = LPT3, 04h = COM1 ... 07h = COM4)

   0Dh force buffer dump

   0Eh set display color

       AL = new color attribute (see #0013 at INT 10/AH=08h)

   0Fh set popup hotkey

       AL = hotkey scancode

   10h toggle byte display

       AL = new state (00h off, 01h on)

   11h change buffer flush delay

       AL = timer ticks before flush

Return: AX = status

    0000h successful

    0001h invalid function or nothing in buffer to be dumped

    (documented as "nonzero = error")

Program: PRINDIR is a shareware printer-redirection program by J.M. Allen

  Creations

Notes:	the installation check consists of testing for the ASCIZ signature

  "PRINDIR N.NN" (where N.NN is the version number) two bytes beyond

  the start of the interrupt handler

prior versions of PRINDIR used INT 7A instead of INT 7C

SeeAlso: INT 7A"PRINDIR"

Index:	hotkeys;PRINDIR

INT 7C


INT 7C ---- - AutoShade v2 - RENDERING HARDCOPY DRIVER

Category: A - applications

Inp.:

Note:	this is the default interrupt vector for rendering hardcopy drivers

  instead of INT 7A used by AutoCAD drivers

SeeAlso: INT 7A/AX=0001h"AutoCAD"

INT 7C


INT 7C ---- - SK-UPPS/SK-PASSPORT Data Link Interface (DLI) API

Category: N - network

Inp.:

Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,

  which provides an API on top of it Data Link Interface, allowing the

  use of any of several network transport layers; this product is

  called SK-PASSPORT in the USA.

Notes:	The installation check consists of testing for the ASCII signature

  string "UPPS_DLI" immediately preceding the interrupt handler.

To find the service interrupt being used by the driver, an application

  should scan through the interrupt table until it finds an interrupt

  vector with the "UPPS_DLI" string.

There may be more than one DLI loaded, each having its own service

  interrupt.

SeeAlso: AX=0000h,AX=0002h,AX=000Fh

Index:	installation check;SK-UPPS

INT 7C


INT 7C 0000 - SK-UPPS Data Link Interface API - GET DRIVER VERSION

Category: N - network

Inp.:

AX = 0000h

Return: AH = major DLI version

AL = minor DLI version

DX = OEM signature (see #2430)

CL = DLI 2.8+ topology: 1=Ethernet, 2=FDDI, 3=Token-Ring

SeeAlso: AX=0002h,AX=000Bh,AX=000Dh,AX=000Eh

INT 7C


INT 7C 0001 - SK-UPPS Data Link Interface API - DOWN DRIVER

Category: N - network

Inp.:

AX = 0001h

Return: AX = completion code (see #2431)

Note:	the DLI will refuse to unload if there are any protocols

  (see AX=0007h) or clients (see AX=0010h) active.

Index:	uninstall;SK-UPPS Data Link Interface

INT 7C


INT 7C 0002 - SK-UPPS Data Link Interface API - GET DRIVER STATUS

Category: N - network

Inp.:

AX = 0002h

ES:DI -> Status Information Block (SIB) (see #2443)

Return: AX = completion code (see #2431)

Note:	GET DRIVER INFO (AX=000Eh) should be used instead.

SeeAlso: AX=0000h,AX=000Bh,AX=000Dh,AX=000Eh

INT 7C


INT 7C 0003 - SK-UPPS Data Link Interface API - CHANGE DRIVER ADDRESS

Category: N - network

Inp.:

AX = 0003h

ES:DI -> new node address (6 bytes)

Return: AX = completion code (see #2431)

Note:	the DLI will refuse to change the address if any protocols

  (see AX=0007h) are active

SeeAlso: AX=0001h,AX=000Eh

INT 7C


INT 7C 0004 - SK-UPPS Data Link Interface API - REQUEST BUFFER

Category: N - network

Inp.:

AX = 0004h

DX = protocol ID (see AX=0007h,#2434)

Return: AX = completion code (see also #2431)

    0000h successful

ES:BX -> Memory Buffer (Mbuf) (see #2432)

Note:	if the DLI has no free Mbufs, it will set an internal flag for the

  protocol and later call the protocol's Event Upcall with

  EV_BUFFER_AVAILABLE (see #2438,#2439) as soon as an Mbuf becomes

  available.  There will only be one "buffer available" Upcall, even

  if this function has been called several times before.

SeeAlso: AX=0005h,AX=0006h,AX=0012h,AX=0013h

INT 7C


INT 7C 0005 - SK-UPPS Data Link Interface API - RELEASE BUFFER

Category: N - network

Inp.:

AX = 0005h

ES:BX -> Mbuf (see #2432)

Return: nothing

SeeAlso: AX=0004h

INT 7C


INT 7C 0006 - SK-UPPS Data Link Interface API - TRANSMIT FRAME

Category: N - network

Inp.:

AX = 0006h

ES:BX -> Mbuf (see #2432)

Return: nothing

Notes:	The DLI will send LENGTH bytes found in the Mbuf's DATA area starting

  at OFFSET. A complete and valid frame must be stored there. The DLI

  will only copy the current node address (see AX=0003h) to the

  source node field of the frame's MAC header.

On Ethernet, the DLI will always send a minimum of 60 bytes, regardless

  of the value found in the LENGTH field.

This function returns immediately; the DLI will call the protocol's

  Transmit Upcall (see #2433) when the frame has been sent.

The Mbuf's IN USE field will be non-zero until the DLI calls the

  Transmit Upcall.

SeeAlso: AX=0002h,AX=0004h,AX=0013h

INT 7C


INT 7C 0007 - SK-UPPS Data Link Interface API - REGISTER PROTOCOL

Category: N - network

Inp.:

AX = 0007h

ES:BX -> Protocol Control Block (see #2434)

Return: AX = completion code (see #2431)

Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,

  which provides an API on top of its Data Link Interface, allowing the

  use of any of several network transport layers

SeeAlso: AX=0008h,AX=000Bh

INT 7C


INT 7C 0008 - SK-UPPS Data Link Interface API - DISABLE PROTOCOL

Category: N - network

Inp.:

AX = 0008h

BX = protocol ID (see #2434)

Return: AX = completion code (see #2431)

Note:	the DLI will handle any Mbufs given to TRANSMIT FRAME (AX=0006h) as if

  they had been given to TRANSMIT FRAME RELEASE (AX=0013h).

all multicast addresses registered for this protocol will be disabled.

after this function returns, the protocol's Upcall routines will no

  longer be called.

SeeAlso: AX=0007h,AX=000Bh

INT 7C


INT 7C 0009 - SK-UPPS Data Link Interface API - REGISTER MULTICAST

Category: N - network

Inp.:

AX = 0009h

BX = protocol ID (see #2434)

ES:DI -> multicast address (6 bytes)

Return: AX = completion code (see #2431)

Notes:	The broadcast address is always enabled.

Set bit 9 of PCB's protocol mode field in REGISTER PROTOCOL call

  (AX=0007h) to receive all multicast frames.

SeeAlso: AX=000Ah,AX=0014h

INT 7C


INT 7C 000A - SK-UPPS Data Link Interface API - DISABLE MULTICAST

Category: N - network

Inp.:

AX = 000Ah

BX = protocol ID (see #2434)

ES:DI -> multicast address (6 bytes)

Return: AX = completion code (see #2431)

SeeAlso: AX=0009h,AX=0014h

INT 7C


INT 7C 000B - SK-UPPS Data Link Interface API - GET PROTOCOL LIST

Category: N - network

Inp.:

AX = 000Bh

ES:DI -> protocol ID buffer

CX = number of 2-byte protocol IDs that may be stored in buffer

Return: AX = completion code (see #2431)

CX = number of active protocols (regardless of value returned in AX)

protocol ID buffer filled with active protocol IDs

Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,

  which provides an API on top of its Data Link Interface, allowing the

  use of any of several network transport layers

Note:	If the buffer supplied is too small, CX still contains the total number

  of active protocols and the buffer has been filled until full.

SeeAlso: AX=000Ch,AX=0014h

INT 7C


INT 7C 000C - SK-UPPS Data Link Interface API - GET PROTOCOL STATUS

Category: N - network

Inp.:

AX = 000Ch

BX = protocol ID (see #2434,AX=000Bh)

ES:DI -> Protocol Status Block (see #2441)

Return: AX = completion code (see #2431)

SeeAlso: AX=000Bh,AX=0014h

INT 7C


INT 7C 000D - SK-UPPS Data Link Interface API - GET DRIVER STATISTICS

Category: N - network

Inp.:

AX = 000Dh

BX = flag: 0=don't clear statistics, 1=clear statistics

ES:DI -> Statistics Data Block (see #2442)

Return: AX = completion code (see #2431)

SeeAlso: AX=0002h,AX=0015h

INT 7C


INT 7C 000E - SK-UPPS Data Link Interface API - DLI 2.5+ - GET DRIVER INFO

Category: N - network

Inp.:

AX = 000Eh

ES:DI -> Driver Information Block (see #2443)

BX = offset of 1st field within DIB to be returned

CX = number of bytes to be returned

Return: AX = completion code (see #2431)

CX = number of bytes copied (regardless of value returned in AX)

Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,

  which provides an API on top of its Data Link Interface, allowing the

  use of any of several network transport layers

SeeAlso: AX=0000h,AX=0002h,AX=000Bh,AX=000Dh,AX=0015h

INT 7C


INT 7C 000F - SK-UPPS Data Link Interface API - FEED BACK BUFFER

Category: N - network

Inp.:

AX = 000Fh

ES:BX -> Mbuf (see #2432)

Return: nothing

Notes:	A protocol may call this function instead of returning the Mbuf

  directly from the Receive Upcall if it is running in "promiscuous",

  "hook" or "chain" mode.

SeeAlso: AX=0007h

INT 7C


INT 7C 0010 - SK-UPPS Data Link Interface API - CLIENT HOOK

Category: N - network

Inp.:

AX = 0010h

Return: nothing

Notes:	An application having no active protocols may call this function to

  prevent the DLI from unloading.

SeeAlso: AX=0001h,AX=0011h

INT 7C


INT 7C 0011 - SK-UPPS Data Link Interface API - CLIENT UNHOOK

Category: N - network

Inp.:

AX = 0011h

Return: nothing

Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,

  which provides an API on top of its Data Link Interface, allowing the

  use of any of several network transport layers

SeeAlso: AX=0010h

INT 7C


INT 7C 0012 - SK-UPPS Data Link Interface API - SYNC REQUEST BUFFER

Category: N - network

Inp.:

AX = 0012h

DX = protocol ID (see #2434)

Return: AX = completion code (see #2431)

if AX=0000h: ES:BX -> Mbuf (see #2432)

Note:	If the protocol wants to be informed when an Mbuf becomes available,

  REQUEST BUFFER (AX=0004h) should be used instead.

SeeAlso: AX=0004h,AX=0005h,AX=0006h,AX=0013h

INT 7C


INT 7C 0013 - SK-UPPS Data Link Interface API - TRANSMIT FRAME RELEASE

Category: N - network

Inp.:

AX = 0013h

ES:BX -> Mbuf (see #2432)

Return: nothing

Notes:	Returns immediately; The protocol's Transmit Upcall will NOT be called.

The Mbuf may no more be used by the protocol in any way (i.e. the

  Mbuf's IN USE field may not be polled).

SeeAlso: AX=0004h,AX=0013h

INT 7C


INT 7C 0014 - SK-UPPS Data Link Interface API - GET MULTICAST LIST

Category: N - network

Inp.:

AX = 0014h

BX = protocol ID (see #2434,AX=000Bh)

ES:DI -> multicast address buffer

CX = number of 6-byte multicast addresses that may be stored in buffer

Return: AX = completion code (see #2431)

CX = number of registered multicast addresses for this protocol

  (regardless of value returned in AX)

multicast address buffer filled with multicast addresses registered for

  this protocol

Note:	If the buffer supplied is too small, CX still contains the total number

  of registered multicast addresses for this protocol and the buffer

  has been completely filled

SeeAlso: AX=000Bh,AX=0009h,AX=000Ch

INT 7C


INT 7C 0015 - SK-UPPS Data Link Interface API - DLI 2.6+ - GET MEDIA STATISTICS

Category: N - network

Inp.:

AX = 0015h

ES:DI -> media-specific statistics buffer (see #2444,#2445,#2446)

BX = offset of 1st field within MSS to be returned

CX = number of bytes to be returned

Return: AX = completion code (see #2431)

CX = number of bytes copied (regardless of value returned in AX)

Note:	not supported by all DLIs (will return AX=FFFFh if not supported).

SeeAlso: AX=0000h,AX=000Dh

INT 7C


INT 7C 0016 - SK-UPPS Data Link Interface API - DLI 2.8+ - DRIVER I/O CONTROL

Category: N - network

Inp.:

AX = 0016h

DX = subfunction; bits 14-15 specify direction of I/O:

00 no data at all (ES:BX undefined)

01 driver -> application (GET)

10 application -> driver (SET)

11 both directions (GET/SET)

ES:BX -> I/O buffer (optional)

CX = size of buffer (if ES:BX valid)

Return: AX = completion code; defined by OEM

Program: SK-UPPS is the Schneider & Koch Universal Portable Protocol Stack,

  which provides an API on top of its Data Link Interface, allowing the

  use of any of several network transport layers

Notes:	not supported by all DLIs (will return AX=FFFFh if not supported)

subfunction codes are defined by OEMs

SeeAlso: AX=0001h

INT 7C


INT 7C 0017 - SK-UPPS Data Link Interface API - DLI 2.8+ - INTERRUPT REQUEST

Category: N - network

Inp.:

AX = 0017h

Return: AX = completion code (see #2431)

Notes:	not supported by all DLIs (will return AX=FFFFh, if not supported).

must be called with interrupts disabled; when the client re-enables

  interrupts, an interrupt will be generated and reported to the client

  through an Event Upcall (see AX=0007h [EV_ISR_START/EV_ISR_END])

SeeAlso: AX=0007h

INT 7C


INT 7D ---- - [obsoleted proposal] - ALTERNATE MULTIPLEX INTERRUPT

obsolete (no longer present in current versions)

Category: t - TSR libraries

Inp.:

Note:	this interface has been moved to INT 2D; there are no known

  implementations on INT 7D

SeeAlso: INT 2D,INT 2F

INT 7D


INT 7D ---- - YTERM 1.4 - CLOCK SUPPORT

undocumented function

Category: S - serial I/O

Inp.:

SeeAlso: INT 7E"YTERM"

INT 7D


INT 7D ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ5

Category: E - DOS extenders

Inp.:

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 0D,INT 7C"GO32",INT 7E"GO32"

INT 7D


INT 7D ---- - HyperPAD v2.2 - API ACCESS

Category: U - resident utilities

Inp.:

Note:	this vector is hooked but immediately passed on (without checking

  whether the previous handler was 0000h:0000h).  The sole purpose of

  this vector is to provide the address of the data area described

  below (see #2447).

INT 7D


INT 7D ---- - IBM DOS 6.1 E.EXE - ???

Category: - - (none)

Inp.:

Note:	E.EXE checks whether this interrupt is in use (not 0000h:0000h),

  and if it is used, attempts to load E55VGA.EX instead of the

  default E.EX overlay.	 However, E55VGA.EX is not included in

  IBM DOS 6.1.

INT 7D


INT 7D 00-- - SCSILink - RESET SCSI BUS

Category: G - debuggers/debugging tools

Inp.:

AH = 00h

Program: SCSILink is a TSR by Cross Products Ltd which allows its PC-hosted

  cross assemblers and similar products to communicate with Cross

  Products hardware debuggers

Desc:	reset all devices on the SCSI bus

Note:	the installation check is the signature "SCSILINK" immediately prior

  to the interrupt handler

Index:	installation check;SCSILink

INT 7D


INT 7D 01-- - SCSILink - CONNECT TO TARGET

Category: G - debuggers/debugging tools

Inp.:

AH = 01h

AL = target ID

Return: CF clear if successful

CF set on error

    AL = initiator error

    AH = target error

Desc:	arbitrate the use of the bus and select the specified target device

INT 7D


INT 7D 02-- - SCSILink - SEND COMMAND

Category: G - debuggers/debugging tools

Inp.:

AH = 02h

ES:BX -> parameter block (see #2448)

Return: CF clear if successful

CF set on error

    AL = initiator error

    AH = target error

Desc:	send the specified command block to the target device and perform any

  related I/O

INT 7D


INT 7D 03-- - SCSILink - SET TIMEOUT

Category: G - debuggers/debugging tools

Inp.:

AH = 03h

AL = timeout selector (see #2450)

BX = new value in 55ms ticks

Desc:	change an internal timeout value to allow communication with very

  slow targets

INT 7D


INT 7D 04-- - SCSILink - GET ERROR STRING

Category: G - debuggers/debugging tools

Inp.:

AH = 04h

AL = error number

Return: ES:BX -> ASCIZ error string for error number

INT 7D


INT 7D 05-- - SCSILink - GET ADDRESS

Category: G - debuggers/debugging tools

Inp.:

AH = 05h

Return: AL = DMA channel

AH = initiator ID

BX = card address

Desc:	determine the current hardware configuration

INT 7D


INT 7D 06-- - SCSILink - PUT DATA

Category: G - debuggers/debugging tools

Inp.:

AH = 06h

CX = number of bytes to store (0001h-0100h)

ES:BX -> data to be saved

Return: CF clear if successful

CF set on error

    AL = error code (01h = too much data)

Note:	the specified data is stored in SCSILink's PSP

SeeAlso: AH=07h

INT 7D


INT 7D 07-- - SCSILink - GET DATA

Category: G - debuggers/debugging tools

Inp.:

AH = 07h

CX = number of bytes to retrieve (0001h-0100h)

ES:BX -> buffer for data

Return: CF clear if successful

CF set on error

    AL = error code (01h = too much data)

Note:	retrieve data previously stored with AH=06h

SeeAlso: AH=06h

INT 7D


INT 7D 08-- - SCSILink - TERMINATE SESSION

Category: G - debuggers/debugging tools

Inp.:

AH = 08h

Desc:	indicate to any other programs that intercept INT 7D that the program

  has finished with the link

Note:	the program should call this function even if a SCSI error caused its

  termination

INT 7D


INT 7D 09-- - SCSILink - POLL REQUEST

Category: G - debuggers/debugging tools

Inp.:

AH = 09h

AL = target ID

Return: AL = status

    FEh resident driver experienced SCSI error

    FFh resident driver handleded event

Desc:	give any drivers chained onto INT 7D a chance to handle an exception

  not specifically handled by the calling program

Notes:	this service exists so that resident disk servers, etc. can continue

  running even while debuggers and profilers are active

the resident driver assumes that a connection has been established and

  attempts to leave the target connected

INT 7D


INT 7E ---- - RESERVED FOR DIP, Ltd. ROM LIBRARY

Category: * - reserved (and not otherwise classified)

Inp.:

INT 7E


INT 7E ---- - YTERM 1.4 - ???

undocumented function

Category: S - serial I/O

Inp.:

SeeAlso: INT 7D"YTERM",INT 7F"YTERM"

INT 7E


INT 7E ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ6

Category: E - DOS extenders

Inp.:

Program: GO32.EXE is a DOS extender included as part of the 80386 port of the

  GNU C/C++ compiler by DJ Delorie and distributed as DJGPP

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 0E,INT 7D"GO32",INT 7F"GO32"

INT 7E


INT 7E 00-- - MaxSBOS v0.21 - GET ???

Category: s - sound/speech

Inp.:

AH = 00h

Return: DX:AX -> ???

SeeAlso: AH=01h,AH=02h,AH=03h

INT 7E


INT 7E 00F6 - SBOS v3.82 - SET ???

Category: s - sound/speech

Inp.:

AX = 00F6h

BL = ??? (max. 20h, value will be set to 20h if BL greater)

Return: AX=00F9h,AX=00FEh

INT 7E


INT 7E 00F7 - SBOS v3.82 - GET ???

Category: s - sound/speech

Inp.:

AX = 00F7h

Return:	AX = status

    0000h failed

    0001h successful

BX = ??? (if nonzero, ??? is hooked) (see AX=00FFh)

CH = ???

CL = ???

SeeAlso: AX=00F6h,AX=00FDh,AX=00FFh

INT 7E


INT 7E 00F9 - SBOS v3.82 - SET ???

Category: s - sound/speech

Inp.:

AX = 00F9h

BX = ???

SeeAlso: AX=00F6h,AX=00FBh,AX=00FDh

INT 7E


INT 7E 00FB - SBOS v3.82 - SET ???

Category: s - sound/speech

Inp.:

AX = 00FBh

BL = ???

SeeAlso: AX=00F6h,AX=00FDh,AX=00FFh

INT 7E


INT 7E 00FF - SBOS v3.82 - SET ???

Category: s - sound/speech

Inp.:

AX = 00FDh

BL = ??? (max. 20h, value will be set to 20h if BL greater)

SeeAlso: AX=00F9h,AX=00FEh

INT 7E


INT 7E 00FE - SBOS v3.82 - UNINSTALL

Category: s - sound/speech

Inp.:

AX = 00FEh

Return: AX = status

    0000h successful

    00FCh unable to unhook INT 21

    00FDh unable to unhook INT 09

    00FEh unable to release memory

Program: SBOS is a SoundBlaster emulator for the Gravis UltraSound

Range:	SBOS may use INT 78-INT 7F

Notes:	the installation check for SBOS is to test for the ASCII signature

  "SBOS" at offset 0Ah in the interrupt handler's segment (similar

  to one of the possible EMS installation checks)

this function may not be called if any SBOS vectors have been hooked

SeeAlso: INT 21/AX=FD12h,INT 78"UltraMID"

INT 7E


INT 7E 00FF - SBOS v3.82 - SET INTERRUPT FOR ???

Category: s - sound/speech

Inp.:

AX = 00FFh

BL = new interrupt vector to hook

Return: BX = 03CDh if supported

Desc:	unhooks the current interrupt handler for ???, and reconnects it to the

  specified new interrupt number

SeeAlso: AX=00F7h,AX=00F9h,AX=00FEh

INT 7E


INT 7E 01-- - MaxSBOS v0.21 - ???

Category: s - sound/speech

Inp.:

AH = 01h

???

Return: ???

Program: MaxSBOS is a SoundBlaster FM synthesis emulator for the Gravis

  UltraSound MAX

Range:	INT 78-INT 7F, selected by commandline parameter

Note:	the installation check is the same as for 'regular' SBOS (see AX=00FEh)

  although the API in v0.21 does not provide the functions present in

  the older SBOS

SeeAlso: AX=00FEh,AH=02h,AH=03h

INT 7E


INT 7E 02-- - MaxSBOS v0.21 - ???

Category: s - sound/speech

Inp.:

AH = 02h

Return: AX = FFFFh

SeeAlso: AX=00FEh,AH=01h,AH=03h

INT 7E


INT 7E 03-- - MaxSBOS v0.21 - NOP

Category: s - sound/speech

Inp.:

AH = 03h

Return: nothing

SeeAlso: AX=00FEh,AH=01h,AH=02h

INT 7E


INT 7E 5857 - XLOAD - INSTALLATION CHECK

Category: m - memory management

Inp.:

AX = 5857h

BL = 57h

Return: AX = 0000h if installed

Program: XLOAD is the LOADHIGH-equivalent from Helix Software's Netroom

SeeAlso: AX=5857h/BL=5Ah,AX=5857h/BL=5Bh

INT 7E


INT 7E 5857 - XLOAD - GET ???

Category: m - memory management

Inp.:

AX = 5857h

BL = 5Ah

Return: AX = 0000h

CX = ???

DS:SI -> ???

SeeAlso: AX=5857h/BL=57h,AX=5857h/BL=5Bh

INT 7E


INT 7E 5857 - XLOAD - GET XLOAD MEMORY SIZE

Category: m - memory management

Inp.:

AX = 5857h

BL = 5Bh

Return: AX = 0000h

CX = segment of XLOAD TSR

DX = size of memory block in which XLOAD TSR is located

SeeAlso: AX=5857h/BL=57h,AX=5857h/BL=5Ah

INT 7E


INT 7F ---- - Halo88 - API

Category: V - video

Inp.:

BX = function number (see #2451)

additional parameters on stack

Return: ???

Program: Halo88 is a suite of graphics routines

Note:	according to Stuart Kemp, the code appears to make no provisions for

   chaining

INT 7F


INT 7F ---- - CONVERGENT TECHNOLOGIES ClusterShare CTOS ACCESS VECTOR

Category: N - network

Inp.:

AL = request ID

    01h "Request"/"RequestDirect"

ES:BX -> pRq

DX ignored

    04h "Wait"

ES:BX -> ppMsgRet

DX = exchange

    05h "AllocExch"

ES:BX -> pExchRet

    06h "DeAllocExch"

DX = exchange

    07h "Check"

ES:BX -> ppMsgRet

DX = exchange

CX = 4354h ('CT')

Return: AX = status

    0000h successful

INT 7F


INT 7F ---- - Telebit ACS SERIAL I/O

Category: S - serial I/O

Inp.:

ES:SI-> parameter block (see #2452)

Return: CF set on error

CF clear on success

Notes:	the signature "PDGATEWRKSTNIF" appears just prior to the interrupt

  handler; this serves as the installation check

Index:	installation check;Telebit ACS Serial I/O

INT 7F


INT 7F ---- - Non-dedicated NetWare 2.x File Server - ENTER CONSOLE MODE

Category: N - network

Inp.:

Notes:	the installation check consists of checking for the signature "Lynn"

  in the four bytes preceding the interrupt handler; if present, the

  current program is running as a DOS task on a non-dedicated NetWare

  2.x file server.

Before placing the server into "console" mode, it is recommended that

  NetWare broadcast messages be disabled with INT 21/AH=DEh/DL=00h.

SeeAlso: INT 21/AH=DEh/DL=04h

Index:	installation check;non-dedicated NetWare server

INT 7F


INT 7F ---- - YTERM - ???

undocumented function

Category: S - serial I/O

Inp.:

SeeAlso: INT 7E"YTERM"

INT 7F


INT 7F ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ7

Category: E - DOS extenders

Inp.:

Notes:	this vector is overwritten when GO32 starts but is not restored by

  early versions of the DOS extender

the newest versions of GO32 dynamically allocate the vectors used

  for the relocated IRQs, much as DESQview does (see INT 50"DESQview")

SeeAlso: INT 0F,INT 7E"GO32"

INT 7F


INT 7F ---- - Canon IXHND2 Scanner Interface

Category: - - (none)

Inp.:

INT 7F


INT 7F ---- - SBS WinRun 1.00 - TRANSMITTER ENTRY POINT

Category: U - resident utilities

Inp.:

DS:SI -> WinRun control block (WCB) (see #2668)

Return: WinRun receiver status returned in WCB

Program: WinRun is a DOS/Windows utility written by Sven B. Schreiber to start

  Windows applications from a virtual DOS machine under Windows

Note:	The WinRun transmitter (WINRUN-T.COM) and receiver (WINRUN-R.EXE) need

  to be up and running

INT 7F


INT 7F ---- - Alloy 386/MultiWare (MW386), Novell-Type Network Executive (NTNX)

Category: N - network

Inp.:

Notes:	the words at C800h:0000h and C800h:0002h will both be 584Eh if the

  MW386 multitasking system is present (i.e. signature "NXNX")

NTNX allows its API to be placed on a different interrupt than 7Fh at

  load time.  To determine the actual vector used, open the device

  "SPOOLER" with INT 21/AX=3D02h, place it in RAW mode with

  INT 21/AX=4400h and INT 21/AX=4401h, then read one byte which will

  be the actual interrupt number being used; the other interrupts may

  be found with INT 7F/AH=09h/CL=03h

INT 7F


INT 7F ---- - Alloy NetWare Support Kit (ANSK) v2.2+ - INSTALLATION CHECK

Category: N - network

Inp.:

Note:	a program may determine that it is running on an ANSK Slave by checking

  the five bytes at F000h:0000h for the ASCIZ signature "ANSK"; this

  address is RAM, and should not be written.  However, the above check

  will not work on Slaves with <1MB RAM or those using the SLIM.SYS

  device driver

INT 7F


INT 7F 00-- - Alloy NTNX, MW386 - SEMAPHORE LOCK AND WAIT

Category: N - network

Inp.:

AH = 00h

DS:DX -> ASCIZ semaphore name (max 64 bytes)

Return: AL = status (see #2455)

AH = semaphore owner if status=02h

SeeAlso: AH=01h,AH=02h,AH=41h,INT 67/AH=00h

INT 7F


INT 7F 00-- - MultiLink Advanced v1.0+ - ENQUEUE SYSTEM RESOURCE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 00h

BX = resource identifier

AL = wait flag

Return: AL = status

    00h successful

    01h resource not available

    02h user error

Notes:	the installation check consists of ensuring that the interrupt vector

  is not pointing at segment 0000h, then checking whether the byte

  at offset 0000h in the interrupt handler's segment is E9h

function will not return until the resource is available if AL is

  nonzero on entry

a maximum of 100 resources may be enqueued at once

SeeAlso: AH=01h"MultiLink"

INT 7F


INT 7F 00-- - G8BPQ v4.07+ - GET NODE/SWITCH VERSION AND DESCRIPTION

Category: N - network

Inp.:

AH = 00h

ES:SI -> buffer for "USERS" text string

Return: AX = 4250h ('BP') if installed

BX = 5120h ('Q ') if installed

DX = version number (DH = major, DL = minor)

CX = length of returned string

Program: the G8BPQ AX25 Networking Package is amateur packet radio software by

  John Wiseman which allows a PC to act as a node in an AX.25 network

SeeAlso: AH=01h"G8BPQ",AH=09h"G8BPQ"

INT 7F


INT 7F 01-- - Alloy NTNX, MW386 - SEMAPHORE LOCK

Category: N - network

Inp.:

AH = 01h

DS:DX -> ASCIZ semaphore name (max 64 bytes)

Return: AL = status (see #2455)

AH = semaphore owner if status=02h

SeeAlso: AH=00h,AH=02h,AH=41h

INT 7F


INT 7F 01-- - MultiLink Advanced v1.0+ - DEQUEUE SYSTEM RESOURCE

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 01h

BX = resource identifier

Return: AL = status

    00h successful

    02h user error

Note:	the indicated resource may be dequeued even if it was enqueued by

  another task

SeeAlso: AH=00h"MultiLink",AH=02h"MultiLink"

INT 7F


INT 7F 01-- - TIGA Communications Driver v2.05 - GET ENTRY POINTS

Category: V - video

Inp.:

AH = 01h

Return: BX = 1234h if installed

    DX:AX -> array of FAR entry points

    CH = driver major version

    CL = driver minor version

Note:	TIGACD 2.05 returns CF set on unrecognized functions in AX

SeeAlso: AX=1234h,AX=4321h

INT 7F


INT 7F 01-- - G8BPQ v4.00+ - HOST MODE - SET APPLICATION FLAGS AND MASK

Category: N - network

Inp.:

AH = 01h

AL = stream number (01h-40h)

CL = new application flags

    bit 7: monitored frames available via AH=0Bh"G8BPQ"

DL = new application mask

Program: the G8BPQ AX25 Networking Package is amateur packet radio software by

  John Wiseman which allows a PC to act as a node in an AX.25 network

Range:	INT 00h to INT FFh, set in configuration file BPQCFG.TXT for v4.03+

  (earlier versions were hard-wired for INT 7F)

SeeAlso: AH=00h"G8BPQ",AH=02h"G8BPQ",AH=0Bh"G8BPQ"

INT 7F


INT 7F 0104 - HLLAPI (IBM 3270 High-Level Language API)/LLAPI (Rabbit Low Level API)

Category: I - IBM workstation/terminal emulators

Inp.:

AX = 0104h (HLLAPI gate ID)

BX = 0000h

DS:SI -> parameter control block (see #2456)

Return: parameter control block updated

Note:	the installation check for the Novell HLLAPI TSR is the signature

  string "CXI" (for the company Novell bought) immediately prior to

  the interrupt handler

SeeAlso: AX=0105h,AX=ABCDh

INT 7F


INT 7F 0105 - IBM 8514/A Adapter Interface (HDILOAD.EXE)

Category: V - video

Inp.:

AX = 0105h

Return: CF set on error

CF clear if successful

    CX:DX -> array of FAR pointers to entry points (see #2461)

Note:	most functions are invoked by pushing the DWORD parameter block pointer

  and then performing a FAR call via the appropriate vector of the

  entry point array, placing the FAR address of the function's

  parameter block on the top of the stack

SeeAlso: AX=0104h,AX=0106h,AX=ABCDh

INT 7F


INT 7F 0105 - IBM XGA Adapter Interface (XGAAIDOS.SYS)

Category: V - video

Inp.:

AX = 0105h

Return: CF set on error

CF clear if successful

    CX:DX -> array of FAR pointers to entry points (see #2461)

Note:	this API is a superset of the 8514/A Adapter Interface

  (see AX=0105h"HDILOAD")

INT 7F


INT 7F 0106 - HDILOAD Mach32 Adapter Interface - UNINSTALL

Category: V - video

Inp.:

AX = 0106h

Return: AX = 0105h if successfully unloaded

SeeAlso: AX=0105h

INT 7F


INT 7F 02-- - Alloy NTNX, MW386 - RELEASE SEMAPHORE

Category: N - network

Inp.:

AH = 02h

DS:DX -> ASCIZ semaphore name (max 64 bytes)

Return: AL = status (see #2455)

AH = semaphore owner if status=02h

SeeAlso: AH=00h,AH=01h,AH=42h

INT 7F


INT 7F 02-- - MultiLink Advanced v1.0+ - RELEASE CPU

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 02h

Return: ???

Desc:	yields CPU to other tasks

SeeAlso: AH=00h"MultiLink",AH=09h"MultiLink",INT 15/AX=1000h

INT 7F


INT 7F 02-- - G8BPQ v4.00+ - HOST MODE - SEND FRAME

Category: N - network

Inp.:

AH = 02h

AL = stream number (01h-40h)

CX = length of frame

ES:SI -> frame to be sent

SeeAlso: AH=00h"G8BPQ",AH=03h"G8BPQ",AH=07h"G8BPQ",AH=0Ah"G8BPQ"

INT 7F


INT 7F 0200 - Btrieve Multi-User - GIVE UP TIME???

Category: f - file manipulation

Inp.:

AX = 0200h

SeeAlso: INT 2F/AX=AB01h,INT 2F/AX=AB02h,INT 7B"Btrieve"

INT 7F


INT 7F 03-- - Alloy ANSK, NTNX, MW386 - GET USER NUMBER

Category: N - network

Inp.:

AH = 03h

Return: AL = user number

AH = machine number (MW386)

Note:	this function call is the recommended method for a CPU-bound process to

  prevent its priority from being lowered

SeeAlso: AH=04h,AH=05h,AH=A1h

INT 7F


INT 7F 03-- - G8BPQ v4.00+ - HOST MODE - RECEIVE FRAME

Category: N - network

Inp.:

AH = 03h

AL = stream number (01h-40h)

ES:DI -> buffer for frame (must be large enough for a full frame; 350

  bytes is usually sufficient)

Return:	BX = number of pending frames (0000h if returned frame was last avail)

CX = length of received frame

SeeAlso: AH=02h"G8BPQ",AH=07h"G8BPQ",AH=0Bh"G8BPQ"

INT 7F


INT 7F 04-- - Alloy NTNX, MW386 - GET NUMBER OF USERS

Category: N - network

Inp.:

AH = 04h

Return: AL = total number of users on currrent machine (MW386)

AL = number of slaves on system (NTNX)

SeeAlso: AH=03h

INT 7F


INT 7F 04-- - G8BPQ v4.00+ - HOST MODE - GET STREAM STATUS

Category: N - network

Inp.:

AH = 04h

AL = stream number (01h-40h)

Return: CX = state (0000h disconnected, 0001h connected)

DX = delta state (0000h no change, 0001h changed since last check)

SeeAlso: AH=00h"G8BPQ",AH=02h"G8BPQ",AH=05h"G8BPQ"

INT 7F


INT 7F 05-- - Alloy NTNX (Host) - LOCK/UNLOCK SYSTEM, SPOOLER CONTROL

Category: N - network

Inp.:

AH = 05h

AL = function

    00h lock system (disable slave services)

    01h unlock system

    02h enable spooler

    03h disable spooler

    04h enable slave timer update

    05h disable slave timer update

    06h enable form feeds

    07h disable form feeds

SeeAlso: INT 17/AH=A4h

INT 7F


INT 7F 05-- - Alloy NTNX (Slave), MW386 - GET USER PARAMETERS

Category: N - network

Inp.:

AH = 05h

DX:DI -> buffer for user information record (see #2529)

Notes:	MW386 provides this function for backward compatibility only, and sets

  many of the fields to zero because they are meaningless under MW386

this function has no effect when called by the host (user 0)

SeeAlso: AH=03h

INT 7F


INT 7F 05-- - G8BPQ v4.00+ - HOST MODE - ACKNOWLEDGE STREAM STATUS CHANGE

Category: N - network

Inp.:

AH = 05h

AL = stream number (01h-40h)

Note:	this function must be called in order to receive a report of another

  status change

SeeAlso: AH=00h"G8BPQ",AH=04h"G8BPQ"

INT 7F


INT 7F 06-- - Alloy NTNX (Host) - GET SHARED DRIVE INFO

Category: N - network

Inp.:

AH = 06h

AL = drive number (1=A:, 2=B:, etc)

ES:DI -> drive info record (see #2530)

Return: AX = status

    0000h successful

ES:DI buffer filled

    0001h not shared drive

INT 7F


INT 7F 06-- - Alloy NTNX (Slave) - ALLOCATE FREE CLUSTER ON SHARED DRIVE

Category: N - network

Inp.:

AH = 06h

DL = drive number (1=A:,2=B:,etc)

CX = number of clusters to allocate

Return: AH = status

    00h successful

CX = number of clusters still free

    10h invalid shared drive request

CL = first and second shared drives

    11h invalid cluster count (must be 01h-FFh)

INT 7F


INT 7F 06-- - G8BPQ v4.00+ - HOST MODE - SESSION CONTROL

Category: N - network

Inp.:

AH = 06h

AL = stream number (01h-40h)

CX = subfunction

    0000h connect to node

DL bit 0: use BBS callsign instead of Node Call

    0001h connect to node

use BBS Call if APPLMASK=1

    0002h disconnect

    0003h return user to node

SeeAlso: AH=01h"G8BPQ",AH=04h"G8BPQ"

INT 7F


INT 7F 07-- - Alloy NTNX, MW386 - GET LIST OF SHARED DRIVES

Category: N - network

Inp.:

AH = 07h

Return: ES:DI -> shared drive list (see #2531)

Note:	MW386 considers all fixed disks to be shared drives; only C and D will

  be returned as shared

INT 7F


INT 7F 07-- - G8BPQ v4.00+ - HOST MODE - GET BUFFER COUNTS FOR STREAM

Category: N - network

Inp.:

AH = 07h

AL = stream number (01h-40h)

Return: BX = number of pending receive frames

CX = number of unacknowledged sent frames

DX = number of buffers available

SeeAlso: AH=02h"G8BPQ",AH=03h"G8BPQ"

INT 7F


INT 7F 08-- - Alloy NTNX (Host) - GET INTERRUPT VECTORS

Category: N - network

Inp.:

AH = 08h

CL = function

    00h get original interrupt vector

    01h get Network Executive interrrupt

AL = interrupt number

DX:SI -> DWORD to hold interrupt vector

Return: AL = status

    00h successful

    01h interrupt vector not used by network executive

    02h invalid subfunction

Note:	the network executive uses interrupts 02h,08h,09h,0Fh,10h,13h,16h-19h,

  1Ch,20h,28h,2Ah,2Fh,5Bh,67h,7Fh,ECh, and F0h-FFh

SeeAlso: AH=09h/CL=03h,INT 21/AH=35h

INT 7F


INT 7F 08-- - Alloy NTNX - SET MESSAGE DISPLAY TIMEOUT

Category: N - network

Inp.:

AH = 08h

CL = 02h

DX = timeout in seconds

Return: AL = status

    00h successful

    02h invalid subfunction

INT 7F


INT 7F 08-- - G8BPQ v4.00+ - HOST MODE - PORT CONTROL/INFORMATION

Category: N - network

Inp.:

AH = 08h

AL = stream number (01h-40h)

Return: ES:DI -> 10-byte buffer containing blank-padded callsign

---v4.05+ ---

AL = radio port to which channel is connected (level 2)

AH = session type (see #2532)

BX = L2 paclen for session

CX = maximum frame size

DX = L4 window size or 0000h if not L4 circuit

Program: the G8BPQ AX25 Networking Package is amateur packet radio software by

  John Wiseman which allows a PC to act as a node in an AX.25 network

SeeAlso: AH=01h"G8BPQ",AH=02h"G8BPQ",AH=03h"G8BPQ",AH=0Ah"G8BPQ"

INT 7F


INT 7F 09-- - MultiLink Advanced v1.0+ - SET TASK PRIORITY

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 09h

AL = priority (0-7)

Note:	the installation check consists of ensuring that the interrupt vector

  is not pointing at segment 0000h, then checking whether the byte

  at offset 0000h in the interrupt handler's segment is E9h

Index:	installation check;MultiLink Advanced

SeeAlso: AH=00h"MultiLink",AH=0Ah"MultiLink"

INT 7F


INT 7F 09-- - G8BPQ - proposed addition - GET NODE/APPLICATION CALLSIGN AND ALIAS

Category: N - network

Inp.:

AH = 09h

AL = application

    00h node

    01h BBS

    02h HOST

    03h SYSOP

BL = what to get (00h callsign, 01h application name)

ES:SI -> buffer for callsign/name string

Return: CX = length of returned string

SeeAlso: AH=00h"G8BPQ",AH=01h"G8BPQ",AH=0Ch"G8BPQ"

INT 7F


INT 7F 09-- - Alloy NTNX - ENABLE/DISABLE MUD FILE CHECKING

Category: N - network

Inp.:

AH = 09h

CL = function

    00h enable checking of RTNX.MUD file

    01h disable RTNX.MUD checking

INT 7F


INT 7F 09-- - Alloy NTNX - SWITCH HOST TO DEDICATED MODE

Category: N - network

Inp.:

AH = 09h

CL = 02h

Note:	in dedicated mode, the host will only poll for I/O requests from the

  slave processors, and not provide workstation services

INT 7F


INT 7F 09-- - Alloy NTNX,MW386 - GET ALTERNATE INTERRUPT

Category: N - network

Inp.:

AH = 09h

CL = 03h

AL = default interrupt number (67h,7Fh,etc)

Return: CL = actual interrupt which handles specified interrupt's calls

SeeAlso: AH=08h

INT 7F


INT 7F 0A-- - Alloy NTNX - GET SYSTEM FLAGS

Category: N - network

Inp.:

AH = 0Ah

CL = 00h

ES:DI -> buffer for system flags (see #2533)

Return: ES:DI buffer filled

Notes:	on a slave, only the NX_Busy flag is returned

all three flags are at fixed positions, so this function only needs to

  be called once

an interrupt handler should only perform DOS or device accesses when

  all three flags are 00h

INT 7F


INT 7F 0A-- - G8BPQ v4.00+ - HOST MODE - TRANSMIT RAW (KISS) FRAME

Category: N - network

Inp.:

AH = 0Ah

AL = radio port

ES:SI -> buffer containing data to be sent

CX = number of bytes to send

SeeAlso: AH=02h"G8BPQ",AH=08h"G8BPQ",AH=0Bh"G8BPQ"

INT 7F


INT 7F 0A-- - MultiLink Advanced v1.0+ - SET KEYBOARD TEST STATUS

Category: T - DOS-based task switchers/multitaskers

Inp.:

AH = 0Ah

AL = task-switch status

    00h normal (disable task when it repeatedly polls keyboard)

    01h disable task until keyboard input available

    FFh never disable task

Return: ???

SeeAlso: AH=09h"MultiLink"

INT 7F


INT 7F 0B-- - Alloy NTNX (Host) - SET/RESET GRAPHICS DOS ON SLAVE

Category: N - network

Inp.:

AH = 0Bh

CL = 02h

AL = slave ID number

CH = DOS to activate

    00h graphics DOS

    01h character DOS

Return: AL = status

    00h successful

    01h nothing done, proper DOS type already loaded

INT 7F


INT 7F 0B-- - G8BPQ v4.00+ - HOST MODE - RECEIVE TRACE (RAW DATA) FRAME

Category: N - network

Inp.:

AH = 0Bh

ES:DI -> buffer for received data (see #2534)

Return: CX = number of bytes received

Note:	the specified buffer must be large enough to receive a full frame

SeeAlso: AH=03h"G8BPQ",AH=08h"G8BPQ",AH=0Ah"G8BPQ"

INT 7F


INT 7F 0C-- - G8BPQ v4.00+ - HOST MODE - UPDATE SWITCH INFORMATION

Category: N - network

Inp.:

AH = 0Ch

DX = function

    0001h update beacon text

CX = length of data

ES:SI -> data to be sent in beacons

    0002h (v4.07+) initiate NODES broadcast

SeeAlso: AH=09h"G8BPQ"

INT 7F


INT 7F 0D00 - G8BPQ v4.07+ - HOST MODE - GET AVAILABLE STREAM

Category: N - network

Inp.:

AX = 0D00h

Return: AL = first available stream number, or FFh if none free

SeeAlso: AH=00h"G8BPQ",AH=0Dh

INT 7F


INT 7F 0D-- - G8BPQ v4.07+ - HOST MODE - ALLOCATE/DEALLOCATE STREAM

Category: N - network

Inp.:

AH = 0Dh

AL = stream number (01h-FFh)

CL = function

    01h allocate stream

Return: CX = status (0000h successful, else already in use)

    02h deallocate stream

SeeAlso: AX=0D00h

INT 7F


INT 7F 0F-- - G8BPQ v4.00+ - HOST MODE - GET TIME MARKER

Category: N - network

Inp.:

AH = 0Fh

Return: AX = time marker (clock ticks modulo 64K)

Program: the G8BPQ AX25 Networking Package is amateur packet radio software by

  John Wiseman which allows a PC to act as a node in an AX.25 network

SeeAlso: AH=01h"G8BPQ",AX=0D00h,INT 1A/AH=00h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - OPEN CHANNEL

Category: N - network

Inp.:

AH = 10h

CL = 00h

AL = channel number

DX:DI -> channel buffer

Return: AL = status (00h-03h,0Dh) (see #2535)

Note:	may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=01h,AH=10h/CL=04h,AH=14h/CL=02h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - CLOSE CHANNEL

Category: N - network

Inp.:

AH = 10h

CL = 01h

AL = channel number

Return: AL = status (00h-03h,0Ah) (see #2535)

Note:	may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=00h,AH=10h/CL=05h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK CHANNEL

Category: N - network

Inp.:

AH = 10h

CL = 02h

AL = channel number

Return: AL = status (00h-03h,0Ah,0Ch) (see #2535)

Note:	may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=03h,AH=10h/CL=06h,AH=10h/CL=08h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK CHANNEL

Category: N - network

Inp.:

AH = 10h

CL = 03h

AL = channel number

Return: AL = status (00h-03h,0Ah) (see #2535)

Notes:	should only be used on channels locked with AH=10h/CL=02h, not on those

  locked by receipt of a datagram

may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=02h,AH=10h/CL=04h,AH=10h/CL=09h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - RELEASE BUFFER

Category: N - network

Inp.:

AH = 10h

CL = 04h

AL = channel number

Return: AL = status (00h-03h) (see #2535)

Notes:	unlocks buffer after received datagram has been processed

may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=00h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - CLOSE ALL CHANNELS

Category: N - network

Inp.:

AH = 10h

CL = 05h

Return: AL = status (00h-03h) (see #2535)

Notes:	clears all pending datagrams and clears buffer pointers before closing

  the channels

may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=01h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK ALL OPEN CHANNELS

Category: N - network

Inp.:

AH = 10h

CL = 06h

Return: AL = status (00h-03h) (see #2535)

Note:	may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=02h,AH=10h/CL=08h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK ALL LOCKED IDLE CHANNELS

Category: N - network

Inp.:

AH = 10h

CL = 07h

Return: AL = status (00h-03h) (see #2535)

Notes:	unlocks all locked channels which have no pending datagrams

may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=03h,AH=10h/CL=09h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK MULTIPLE CHANNELS

Category: N - network

Inp.:

AH = 10h

CL = 08h

DX = maximum channel number to lock

Return: AL = status (00h-03h) (see #2535)

Notes:	locks channels numbered 00h through the value in DX

may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=02h,AH=10h/CL=06h,AH=10h/CL=09h

INT 7F


INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK MULTIPLE CHANNELS

Category: N - network

Inp.:

AH = 10h

CL = 09h

DX = maximum channel number to unlock

Return: AL = status (00h-03h) (see #2535)

Notes:	unlocks channels numbered 00h through the value in DX

may not be invoked from within a hardware interrupt handler

SeeAlso: AH=10h/CL=03h,AH=10h/CL=07h,AH=10h/CL=08h

INT 7F


INT 7F 11-- - Alloy NTNX, MW386 - SEND DATAGRAM

Category: N - network

Inp.:

AH = 11h

DX:SI -> request block (see #2537)

Return: AL = status (see #2536)

Note:	if wildcard channel FFh used, actual channel number will be filled in

SeeAlso: AH=12h

INT 7F


INT 7F 12-- - Alloy NTNX, MW386 - ACKNOWLEDGE DATAGRAM

Category: N - network

Inp.:

AH = 12h

AL = channel number being acknowledged

DI:DX = 32-bit status to return to sender

Return: AL = status (see #2538)

Note:	also unlocks the channel, allowing the next datagram to be received

SeeAlso: AH=11h,AH=15h/CL=04h

INT 7F


INT 7F 1234 - TIGA Communications Driver v2.05 - UNINSTALL

Category: V - video

Inp.:

AX = 1234h

SeeAlso: AX=4321h

INT 7F


INT 7F 13-- - Alloy NTNX, MW386 - RESET USER DATAGRAMS

Category: N - network

Inp.:

AH = 13h

CL = 00h

Note:	clears all pending datagrams and removes all channels opened in NTNX

  compatibility mode

INT 7F


INT 7F 14-- - Alloy NTNX, MW386 -  SET RECEIVE ISR

Category: N - network

Inp.:

AH = 14h

CL = 00h

DX:DI -> application FAR receive service routine (see #2539)

Return: AL = status (00h-03h) (see #2538)

SeeAlso: AH=14h/CL=01h,AH=14h/CL=03h

INT 7F


INT 7F 14-- - Alloy NTNX, MW386 - SET ACKNOWLEDGE ISR

Category: N - network

Inp.:

AH = 14h

CL = 01h

DX:DI -> application FAR acknowledge service routine (see #2540)

Return: AL = status (00h-03h) (see #2538)

Note:	the service routine will be called as soon as an acknowledgment arrives

SeeAlso: AH=12h,AH=14h/CL=00h,AH=14h/CL=04h,AH=15h/CL=04h

INT 7F


INT 7F 14-- - Alloy NTNX, MW386 - SET CHANNEL BUFFER POINTER

Category: N - network

Inp.:

AH = 14h

CL = 02h

AL = channel number

DX:DI -> receive buffer

Return: AL = status (00h-03h) (see #2538)

Note:	may be called from within a receive ISR or when a datagram is pending

SeeAlso: AH=10h/CL=00h,AH=14h/CL=00h

INT 7F


INT 7F 14-- - Alloy NTNX, MW386 - GET RECEIVE ISR

Category: N - network

Inp.:

AH = 14h

CL = 03h

Return: DX:DI -> current receive ISR

SeeAlso: AH=14h/CL=00h,AH=14h/CL=04h

INT 7F


INT 7F 14-- - Alloy NTNX, MW386 - GET ACKNOWLEDGE ISR

Category: N - network

Inp.:

AH = 14h

CL = 04h

Return: DX:DI -> current acknowledge ISR

SeeAlso: AH=14h/CL=01h,AH=14h/CL=03h

INT 7F


INT 7F 14-- - Alloy NTNX (Host), MW386 - GET BUSY POINTER

Category: N - network

Inp.:

AH = 14h

CL = 05h

DX:DI -> buffer for busy structure (see #2541)

Return: DX:DI buffer filled

INT 7F


INT 7F 15-- - Alloy NTNX, MW386 - GET CHANNEL STATUS

Category: N - network

Inp.:

AH = 15h

CL = 00h

AL = channel number

DX:DI -> status structure (see #2542)

Return: AL = status (00h-03h) (see #2538)

SeeAlso: AH=15h/CL=01h

INT 7F


INT 7F 15-- - Alloy NTNX, MW386 - GET NEXT FULL CHANNEL

Category: N - network

Inp.:

AH = 15h

CL = 01h

DX:DI -> full-channel structure (see #2543)

Return: AL = status

    00h successful

    01h busy

    0Ah no datagrams available

Note:	MW386 v1.0 returns the lowest channel with a datagram; newer versions

  and NTNX return the oldest datagram

SeeAlso: AH=15h/CL=00h

INT 7F


INT 7F 15-- - Alloy NTNX, MW386 - GET MAXIMUM NUMBER OF CHANNELS

Category: N - network

Inp.:

AH = 15h

CL = 02h

Return: AH = number of channels available (40h for MW386)

Note:	the application may always assume at least 32 channels available

SeeAlso: AH=15h/CL=03h

INT 7F


INT 7F 15-- - Alloy NTNX, MW386 - GET MAXIMUM PACKET SIZE

Category: N - network

Inp.:

AH = 15h

CL = 03h

DX:DI -> WORD for return value

Return: buffer WORD filled with maximum packet size (4096 for MW386)

SeeAlso: AH=15h/CL=02h

INT 7F


INT 7F 15-- - Alloy NTNX, MW386 - GET AND CLEAR ACKNOWLEDGE STATUS

Category: N - network

Inp.:

AH = 15h

CL = 04h

DX:DI -> status structure (see #2544)

Return: AL = status

    00h successful

DX:DI structure filled

    01h busy

    0Ah no acknowledgement has arrived

SeeAlso: AH=12h,AH=14h/CL=01h

INT 7F


INT 7F 16-- - Alloy NTNX, MW386 - DIRECT MEMORY TRANSFER

Category: N - network

Inp.:

AH = 16h

DX:SI -> transfer structure (see #2545)

Return: AL = status

    00h successful

    0Ah source or destination out of range

    0Bh transfer kernal busy--try again

Notes:	this call transfers memory contents directly between users; both source

  and destination user IDs may differ from the caller's ID

no segment wrap is allowed

INT 7F


INT 7F 21-- - Alloy NTNX, MW386 - SEND MESSAGE OR COMMAND TO USER(S)

Category: N - network

Inp.:

AH = 21h

AL = sender's user ID

DS:DX -> control packet (see #2546)

Note:	messages or commands are ignored if disabled by the destination user

SeeAlso: AH=22h

INT 7F


INT 7F 22-- - Alloy NTNX - GET MESSAGE

Category: N - network

Inp.:

AH = 22h

Return: pending messages displayed on user's screen

SeeAlso: AH=21h

INT 7F


INT 7F 24-- - Alloy NTNX, MW386 - ATTACH OR RELEASE DRIVE FOR LOW-LEVEL WRITE ACCESS

Category: N - network

Inp.:

AH = 24h

CL = function

    00h attach

    01h release

CH = drive (0=A:,1=B:,etc)

Return: AX = status (see #2547)

Note:	only drives on the current machine may be attached

INT 7F


INT 7F 24-- - Alloy NTNX - ATTACH/RELEASE HOST PROCESSOR

Category: N - network

Inp.:

AH = 24h

CL = function

    02h attach host

    03h release host

Return: AX = status (see #2547)

Note:	the host processor may be attached in order to perform I/O via the host

INT 7F


INT 7F 25-- - Alloy ANSK, NTNX, MW386 - GET NETWORK EXECUTIVE VERSION

Category: N - network

Inp.:

AH = 25h

CL = 00h

Return: AH = version suffix letter

CH = major version number

CL = minor version number

SeeAlso: AH=25h/CL=01h

INT 7F


INT 7F 25-- - Alloy ANSK, NTNX, MW386 - GET NETWORK EXECUTIVE TYPE

Category: N - network

Inp.:

AH = 25h

CL = 01h

Return: CL = executive type (see #2548)

SeeAlso: AH=25h/CL=00h

INT 7F


INT 7F 2525 - TIGA Communications Driver v2.05 - ???

Category: V - video

Inp.:

AX = 2525h

BX = ???

Return: ???

SeeAlso: AX=4321h,AX=5555h

INT 7F


INT 7F 26-- - Alloy NTNX, MW386 - GET NTNX FILE MODE

Category: N - network

Inp.:

AH = 26h

CL = 00h

Return: AX = file mode bits (see #2549)

Note:	MW386 does not support file modes, and always returns AX=001Fh

SeeAlso: AH=26h,AH=26h/CL=06h

INT 7F


INT 7F 26-- - Alloy NTNX - SET FILE I/O CHECKING LEVEL

Category: N - network

Inp.:

AH = 26h

CL = check type to set/reset

    01h directory protection

    02h extended open

    03h flush on every disk write

    04h flush on disk write if any lock set during write

    05h flush on all reads if file written

AL = new state (00h off, 01h on)

SeeAlso: AH=26h/CL=00h,AH=26h/CL=06h

INT 7F


INT 7F 26-- - Alloy NTNX - CANCEL FLUSH ON WRITE

Category: N - network

Inp.:

AH = 26h

CL = 06h

Note:	cancels flags set by AH=26h/CL=03h and AH=26h/CL=04h

SeeAlso: AH=26h/CL=00h

INT 7F


INT 7F 30-- - Alloy MW386 - GET PORT INFORMATION

Category: N - network

Inp.:

AH = 30h

CX = MW386 port number

Return: AL = result

    FFh if port not found

    else driver unit number

BL = port mode

BH = port type

    02h remote

DH = owner's machine ID

DL = owner's user ID

SeeAlso: INT 17/AH=8Bh

INT 7F


INT 7F 31-- - Alloy MW386 v1.x only - CHECK PORT ASSIGNMENT

Category: N - network

Inp.:

AH = 31h

???

Return: ???

INT 7F


INT 7F 37-- - Alloy NTNX (Host) - GET SEMAPHORE TABLE

Category: N - network

Inp.:

AH = 37h

Return: ES:AX -> semaphore table

INT 7F


INT 7F 37-- - Alloy ANSK, NTNX (Slave) - DUMP STRING TO TERMINAL

Category: N - network

Inp.:

AH = 37h

DS:DX -> ASCIZ string to display

Note:	if the string is empty, a terminal update will be forced

INT 7F


INT 7F 38-- - Alloy NTNX (Slave), MW386 - SET NEW TERMINAL DRIVER

Category: N - network

Inp.:

AH = 38h

AL = new terminal driver number

    FFh dummy driver

    FEh current driver

    FDh load new driver

DS:SI -> new driver

SeeAlso: AH=39h

INT 7F


INT 7F 39-- - Alloy MW386 - SET TERMINAL DRIVER FOR ANOTHER USER

Category: N - network

Inp.:

AH = 39h

AL = new terminal driver number

    FFh dummy driver

    FEh current driver

    FDh load new driver

DS:SI -> new driver

DL = user number (FFh = caller)

DH = machine number if DL <> FFh

Return: CF set if invalid user number

CF clear if successful

Notes:	only available to supervisors

the new driver number will not take effect until the user is rebooted

SeeAlso: AH=38h

INT 7F


INT 7F 3A-- - Alloy MW386 - GET TERMINAL PARAMETERS

Category: N - network

Inp.:

AH = 3Ah

DL = user number (FFh = caller)

DH = machine number

Return: CF clear if successful

    AH = terminal driver number

    AL = baud rate (00h = 38400, 01h = 19200, etc)

    CL = parity (00h none, 01h even, 02h odd)

    CH = handshaking (00h none, 01h XON/XOFF, 02h DTR/DSR, 03h XPC)

CF set if invalid user number

SeeAlso: AH=3Bh

INT 7F


INT 7F 3B-- - Alloy MW386 - SET TERMINAL PARAMETERS

Category: N - network

Inp.:

AH = 3Bh

AL = baud rate (00h = 38400, 01h = 19200, etc)

CL = parity (00h none, 01h even, 02h odd)

CH = handshaking (00h none, 01h XON/XOFF, 02h DTR/DSR, 03h XPC)

DL = user number (FFh = caller)

DH = machine number for user

Return: CF set if invalid user number

Notes:	only available to supervisors

the new parameters will take effect immediately if the user's terminal

  has not been started, else AH=3Dh must be called to post the changes

SeeAlso: AH=3Ah,AH=3Dh

INT 7F


INT 7F 3C-- - Alloy MW386 - ENABLE/DISABLE AUTOBAUD DETECT

Category: N - network

Inp.:

AH = 3Ch

AL = new state (00h disabled, 01h enabled)

DL = user number (FFh = caller)

DH = machine number for user

Return: CF set if invalid user number

Note:	only available to supervisors

SeeAlso: AH=3Dh

INT 7F


INT 7F 3D-- - Alloy MW386 - POST TERMINAL CONFIGURATION CHANGES

Category: N - network

Inp.:

AH = 3Dh

Note:	should be called whenever a program changes the terminal type or its

  parameters

SeeAlso: AH=3Bh

INT 7F


INT 7F 41-- - Alloy NTNX - LOCK FILE FOR USER

Category: N - network

Inp.:

AH = 41h

AL = user ID

DS:DX -> ASCIZ filename

Return: AL = status (see #2550)

Note:	requests exclusive read/write access to file

SeeAlso: AH=00h,AH=41h"MW386",AH=42h"NTNX"

INT 7F


INT 7F 41-- - Alloy MW386 - LOCK SEMAPHORE FOR USER

Category: N - network

Inp.:

AH = 41h

AL = user ID

DS:DX -> ASCIZ semaphore name

Return: AL = status (see #2550)

SeeAlso: AH=00h,AH=42h"MW386"

INT 7F


INT 7F 4150 - Voyetra - AAPISG - API

undocumented function

Category: s - sound/speech

Inp.:

AX = 4150h ('AP')

BH = C1h

BL = function (00h-13h)

    00h initialize (fails except first time called)

???

Return: AX = status???

    0000h successful

    0001h failed

Program: AAPISG is a driver by Voyetra for the Aztech Sound Galaxy sound board

BUG:	the function range check uses JL instead of JB, so it will cause a

  crash if BL >= 80h on entry

SeeAlso: AX=4331h,AX=564Dh,AX=5658h

INT 7F


INT 7F 42-- - Alloy NTNX - UNLOCK FILE FOR USER

Category: N - network

Inp.:

AH = 42h

AL = user ID

DS:DX -> ASCIZ filename

Return: AL = status (see #2550)

SeeAlso: AH=00h,AH=41h"NTNX",AH=42h"MW386"

INT 7F


INT 7F 42-- - Alloy MW386 - UNLOCK SEMAPHORE FOR USER

Category: N - network

Inp.:

AH = 42h

AL = user ID

DS:DX -> ASCIZ semaphore name

Return: AL = status

    00h successful

    01h invalid function

    03h unable to unlock semaphore

SeeAlso: AH=02h,AH=41h"MW386",AH=42h"NTNX"

INT 7F


INT 7F 4321 - TIGA Communications Driver v2.05 - INSTALLATION CHECK

Category: V - video

Inp.:

AX = 4321h

Return: AX = 0000h if installed

Note:	INT 7F is the default, but may be overridden

SeeAlso: AH=01h"TIGA",AX=1234h,AX=2525h,AX=4321h,AX=5555h

INT 7F


INT 7F 4331 - Voyetra - VAPISG - API

undocumented function

Category: s - sound/speech

Inp.:

AX = 4331h ('C1')

BH = C1h

BL = function (00h-7Ah)

???

Return: ???

Program: VAPISG is a MIDI driver by Voyetra for the Aztech Sound Galaxy

  sound board

SeeAlso: AX=4150h,AX=564Dh,AX=5658h

INT 7F


INT 7F 4E-- - Alloy MW386 v2+ - SET ERROR MODE

Category: N - network

Inp.:

AH = 4Eh

AL = error mode flags

    bit 0: display critical disk errors

    bit 1: display sharing errors

DX = 4E58h ("NX")

Return: AL = status

    00h successful

SeeAlso: AH=4Fh

INT 7F


INT 7F 4F-- - Alloy MW386 v2+ - SET FCB MODE

Category: N - network

Inp.:

AH = 4Fh

AL = FCB mode

    02h read/write compatibility

    42h read/write shared

DX = 4E58h ("NX")

Return: AL = status

    00h successful

INT 7F


INT 7F 5555 - TIGA Communications Driver v2.05 - ???

Category: V - video

Inp.:

AX = 5555h

BX = ???

Return: ???

SeeAlso: AX=4321h

INT 7F


INT 7F 564D - Voyetra Multimedia Player - VMP.EXE API

undocumented function

Category: s - sound/speech

Inp.:

AX = 564Dh ('VM')

BH = C1h

BL = function (00h-1Bh)

    00h ???

Return: CF clear

AX = 0000h

???

Return: AX = FFFFh if invalid function

???

SeeAlso: AX=4331h,AX=5658h

INT 7F


INT 7F 5658 - Voyetra - VAPISG - API

undocumented function

Category: s - sound/speech

Inp.:

AX = 5658h ('VX')

BH = C1h

BL = function (00h-1Bh)

???

Return: ???

Program: VAPISG is a MIDI driver by Voyetra for the Aztech Sound Galaxy

  sound board

SeeAlso: AX=4331h,AX=564Dh

INT 7F


INT 7F 81-- - Alloy NTNX - ATTACH DEVICE FOR USER

Category: N - network

Inp.:

AH = 81h

AL = user ID

DS:DX -> ASCIZ device name

SeeAlso: AH=82h

INT 7F


INT 7F 82-- - Alloy NTNX - RELEASE DEVICE FOR USER

Category: N - network

Inp.:

AH = 82h

AL = user ID

DS:DX -> ASCIZ device name

SeeAlso: AH=81h

INT 7F


INT 7F A0-- - Alloy MW386 - GET USER NAME

Category: N - network

Inp.:

AH = A0h

DL = user number (FFh = caller)

DH = machine number for user

ES:DI -> 17-byte buffer for ASCIZ user name

Return: CF set if invalid user number

SeeAlso: AH=03h,AH=A1h

INT 7F


INT 7F A1-- - Alloy MW386 - GET MACHINE, USER, AND PROCESS NUMBER

Category: N - network

Inp.:

AH = A1h

Return: AL = process number

DL = user number

DH = machine number

SeeAlso: AH=03h,AH=A0h,AH=A2h

INT 7F


INT 7F A2-- - Alloy MW386 - GET USER PRIVILEGE LEVEL

Category: N - network

Inp.:

AH = A2h

DL = user number (FFh = caller)

DH = machine number for user

Return: CF clear if successful

    AL = privilege level

00h supervisor

01h high

02h medium

03h low

CF set if invalid user number

SeeAlso: AH=A1h,AH=A3h

INT 7F


INT 7F A3-- - Alloy MW386 - GET USER LOGIN STATE

Category: N - network

Inp.:

AH = A3h

DL = user number

DH = machine number for user

Return: CF clear if successful

    AL = login state

00h never logged in

01h currently logged out

03h currently logged in

CF set if invalid user number or user not active

SeeAlso: AH=A2h

INT 7F


INT 7F A4-- - Alloy MW386 - VERIFY USER PASSWORD

Category: N - network

Inp.:

AH = A4h

DS:DX -> ASCIZ password (null-padded to 16 bytes)

Return: AL = status

    00h	 accepted

    else invalid password

INT 7F


INT 7F A500 - Alloy MW386 - GET USER STATUS

Category: N - network

Inp.:

AX = A500h

DI = machine number and user number

Return: CF clear if successful

    BX = user flags

bit 5: allow messages

    CL = scan code for task manager hotkey

    CH = scan code for spooler hotkey

    DL = scan code for task swapper hotkey

    DH = modifier key status

CF set if invalid user number

SeeAlso: AX=A501h

Index:	hotkeys;Alloy MW386

INT 7F


INT 7F A501 - Alloy MW386 - SET USER STATUS

Category: N - network

Inp.:

AX = A501h

BX = user flags (see AX=A500h)

CL = scan code for task manager hotkey

CH = scan code for spooler hotkey

DL = scan code for task swapper hotkey

DH = modifier key status

DI = machine number and user number

Return: CF set if invalid user number

Note:	must have supervisor privilege to set another user's status

SeeAlso: AX=A500h

Index:	hotkeys;Alloy MW386

INT 7F


INT 7F ABCD - IBM 8516 Touch Screen Device Driver - GET API ENTRY

Category: V - video

Inp.:

AX = ABCDh

BX = 0000h

Return: AX = total number of functions available

ES:BX -> entry point array (see #2551)

SeeAlso: AX=0104h,AX=0105h

INT 7F


INT 7F B0-- - Alloy NTNX, MW386 - RELEASE ALL SEMAPHORES FOR USER

Category: N - network

Inp.:

AH = B0h

AL = user number

DS = code segment

Note:	MW386 ignores AL and DS; it releases all semaphores locked using INT 67

  or INT 7F locking functions

SeeAlso: AH=B1h,AH=B2h,AH=B3h,AH=B4h

INT 7F


INT 7F B1-- - Alloy NTNX, MW386 - RELEASE NORMAL SEMAPHORES FOR USER

Category: N - network

Inp.:

AH = B1h subfn 00h

AL = (bits 7-5) 000

     (bits 4-0) user ID

Note:	MW386 ignores AL; it releases all semaphores locked using INT 67 or

  INT 7F locking functions

SeeAlso: AH=B0h,AH=B2h,AH=B3h,AH=B4h

INT 7F


INT 7F B2-- - Alloy NTNX - RELEASE MESSAGES FOR USER

Category: N - network

Inp.:

AH = B2h subfn 01h

AL = (bits 7-5) 001

     (bits 4-0) user ID

SeeAlso: AH=B0h,AH=B1h,AH=B3h,AH=B4h

INT 7F


INT 7F B3-- - Alloy NTNX - RELEASE FILES FOR USER

Category: N - network

Inp.:

AH = B3h subfn 02h

AL = (bits 7-5) 010

     (bits 4-0) user ID

SeeAlso: AH=B0h,AH=B1h,AH=B2h,AH=B4h

INT 7F


INT 7F B4-- - Alloy NTNX - RELEASE DEVICES FOR USER

Category: N - network

Inp.:

AH = B4h

AL = user ID

SeeAlso: AH=B0h,AH=B1h,AH=B2h,AH=B3h

INT 7F


INT 7F C3-- - Alloy MW386 - WRITE BYTE TO TERMINAL AUX PORT

Category: N - network

Inp.:

AH = C3h

AL = byte to write

Return: CF clear if successful

CF set on error

SeeAlso: AH=C6h

INT 7F


INT 7F C5-- - Alloy MW386 - CHANGE CONSOLE MODE

Category: N - network

Inp.:

AH = C5h

AL = new console mode

    00h keyboard indirect

    01h keyboard direct

    02h data handshake enforced

    03h no data handshake

Return: CF clear if successful

    AL = prior console mode

CF set on error (caller is not remote user)

Note:	modes 2 and 3 may be used for input through the console port; no video

  output should be performed in these modes

INT 7F


INT 7F C6-- - Alloy MW386 - WRITE BYTE TO CONSOLE PORT

Category: N - network

Inp.:

AH = C6h

AL = byte to write

Return: CF clear if successful

CF set on error (caller is not remote user)

Note:	any terminal driver data translation will be bypassed

SeeAlso: AH=C3h,AH=C7h

INT 7F


INT 7F C7-- - Alloy MW386 - READ CONSOLE DATA BYTE

Category: N - network

Inp.:

AH = C7h

Return: CF clear if successful

    AL = byte read

CF set on error (no data available or caller is not remote user)

Note:	used to read data after placing console in mode 2 or 3 (see AH=C5h)

SeeAlso: AH=C5h,AH=C6h,AH=C8h

INT 7F


INT 7F C8-- - Alloy MW386 - READ CONSOLE DATA INTO BUFFER

Category: N - network

Inp.:

AH = C8h

AL = maximum bytes to read

ES:DI -> buffer for console data

Return: CF clear if successful

    CX = number of bytes read

CF set on error (caller is not remote user)

SeeAlso: AH=C7h

INT 7F


INT 7F CF-- - Alloy NTNX - REBOOT USER PROCESSOR

Category: N - network

Inp.:

AH = CFh

DS:DX -> ASCIZ string containing user number to be reset

SeeAlso: AH=D6h

INT 7F


INT 7F D6-- - Alloy MW386 - RESET NETWORK EXECUTIVE

Category: N - network

Inp.:

AH = D6h

DS:DX -> reset packet (see #2554)

Return: never if successful

Note:	all users will be shut down immediately if successful

SeeAlso: AH=CFh

INT 7F


INT 7F D7-- - Alloy MW386 - POST EVENT

Category: N - network

Inp.:

AH = D7h

AL = user number (if local event)

DX = event number

INT 7F


INT 7F D8-- - Alloy MW386 - FLUSH DISK BUFFERS

Category: N - network

Inp.:

AH = D8h

Return: CF set on error

Note:	forces all disk buffers to be written out immediately

SeeAlso: INT 21/AH=0Dh,INT 21/AX=5D01h,INT 2F/AX=1120h

INT 7F


INT 7F DB-- - Alloy MW386 v2+ - GET MW386 INVOCATION DRIVE

Category: N - network

Inp.:

AH = DBh

Return: AL = drive from which MW386 was started (2=C:,3=D:,etc)

INT 7F


INT 7F E0-- - Alloy MW386 - CREATE DOS TASK

Category: N - network

Inp.:

AH = E0h

AL = memory size (00h=128K, 01h=256K, 02h=384K, 03h=512K, 04h=640K)

DS:DX -> ASCIZ task name (max 16 bytes)

Return: CF clear if successful

    AL = task create ID

CF set on error

Note:	only foreground DOS tasks can use this function

SeeAlso: AH=E1h,AH=E2h,AH=E3h,AH=E6h,AH=E7h

INT 7F


INT 7F E1-- - Alloy MW386 - GET DOS TASK PID FROM CREATE ID

Category: N - network

Inp.:

AH = E1h

AL = create ID (from AH=E0h)

Return: AL = DOS process number

CL = memory size (00h=128K, 01h=256K, 02h=384K, 03h=512K, 04h=640K)

Note:	this function should not be called immediately after creating a new

  DOS task, since the new task is being initialized by a concurrent

  process

SeeAlso: AH=E0h,AH=E2h

INT 7F


INT 7F E2-- - Alloy MW386 - SWITCH TO NEW DOS TASK

Category: N - network

Inp.:

AH = E2h

AL = DOS process number (from AH=E1h)

Return: CF set on error (invalid process number or caller not foreground task)

Notes:	specified task becomes the foreground task and current task is placed

  in the background

may only be called by a foreground task

SeeAlso: AH=E0h,AH=E1h

INT 7F


INT 7F E3-- - Alloy MW386 - CHANGE NAME OF DOS TASK

Category: N - network

Inp.:

AH = E3h

DS:DX -> ASCIZ task name

---v1.x---

AL = user number

---v2+---

BH = user number

BL = task number

Return: CF clear if successful

CF set on error (invalid process number)

SeeAlso: AH=E0h,AH=E4h,AH=E5h

INT 7F


INT 7F E4-- - Alloy MW386 - GET TASK NAME FROM PROCESS NUMBER

Category: N - network

Inp.:

AH = E4h

ES:DI -> buffer for task name

---v1.x---

AL = user number

---v2+---

BH = user number

BL = task number

Return: CF clear if successful

    CL = memory size (00h=128K, 01h=256K, 02h=384K, 03h=512K, 04h=640K)

    DX = task flags

bit 7: MS-DOS process

    ES:DI buffer filled

CF set on error (invalid process number)

SeeAlso: AH=E3h,AH=E5h

INT 7F


INT 7F E5-- - Alloy MW386 - GET PROCESS NUMBER FROM TASK NAME

Category: N - network

Inp.:

AH = E5h

DS:DX -> ASCIZ task name

BH = user number

Return: CF clear if successful

    AL = DOS process number

    CL = memory size (00h=128K, 01h=256K, 02h=384K, 03h=512K, 04h=640K)

CF set on error (no match for name)

SeeAlso: AH=E3h,AH=E4h

INT 7F


INT 7F E6-- - Alloy MW386 - GET NUMBER OF AVAILABLE USER TASKS

Category: N - network

Inp.:

AH = E6h

Return: AX = number of processes available to current user

SeeAlso: AH=E0h

INT 7F


INT 7F E7-- - Alloy MW386 - REMOVE DOS TASK

Category: N - network

Inp.:

AH = E7h

AL = DOS process number

Return:	CF clear if successful

CF set on error (invalid process number or first process)

Note:	can only be called by a foreground task

SeeAlso: AH=E0h

INT 7F


INT 7F E8-- - Alloy MW386 - DOS TASK DELAY

Category: N - network

Inp.:

AH = E8h

CX = delay time in milliseconds

Note:	a delay of 0 may be used to surrender the current time slice

SeeAlso: INT 15/AX=1000h,INT 1A/AX=FF01h,INT 21/AH=EEh"DoubleDOS"

SeeAlso: INT 2F/AX=1680h

INT 7F


INT 7F F0-- - Alloy MW386 - RESTRICT DIRECTORY TO GROUP

Category: N - network

Inp.:

AH = F0h

AL = group number

DS:DX -> ASCIZ directory name

Return: CF clear if successful

    AX = status

0002h directory not found

0003h directory not found

0005h directory in use, cannot be restricted

02xxh restricted to group xxh

CF set on error

Note:	the restriction on the directory may be removed by calling this

  function with group 0, then using AH=F1h to assign the directory to

  group 0

SeeAlso: AH=F1h,AH=F2h,AH=F3h

INT 7F


INT 7F F1-- - Alloy MW386 - ASSIGN DIRECTORY TO GROUP

Category: N - network

Inp.:

AH = F1h

AL = group number

DS:DX -> ASCIZ directory name

Notes:	performs permanent assignment to a group; no immediate action is taken

  unless the directory has been restricted with AH=F0h

may be used to restrict a nonexistent directory

SeeAlso: AH=F0h

INT 7F


INT 7F F2-- - Alloy MW386 - READ RESTRICTED DIRECTORY ENTRY

Category: N - network

Inp.:

AH = F2h

CX = entry number

ES:DI -> 64-byte buffer

Return: CF clear if successful

    buffer filled with 63-byte directory info and 1-byte group number

CF set on error (invalid entry)

SeeAlso: AH=F0h,AH=F3h

INT 7F


INT 7F F3-- - Alloy MW386 - READ RESTRICTED DIRECTORY ENTRY FOR GROUP

Category: N - network

Inp.:

AH = F3h

AL = group number

CX = entry number

ES:DI -> 64-byte buffer

Return: CF clear if successful

    CX = next entry number

    buffer filled with 63-byte directory info and 1-byte group number

CF set on error (no more matching entries)

Note:	like AH=F2h, but only returns directories belonging to the specified

  group

SeeAlso: AH=F2h

INT 7F


INT 7F F8-- - Alloy MW386 - ASSIGN USER TO GROUP

Category: N - network

Inp.:

AH = F8h

AL = group number

DL = user number

DH = machine number (currently 00h)

Return: CF clear if successful

CF set on error (user already in maximum number of groups)

Note:	each user is allowed eight group assignments

SeeAlso: AH=F9h,AH=FAh

INT 7F


INT 7F F9-- - Alloy MW386 - REMOVE USER FROM GROUP

Category: N - network

Inp.:

AH = F9h

AL = group number

DL = user number

DH = machine number (currently 00h)

Return: CF clear if successful

CF set if failed

SeeAlso: AH=F8h,AH=FAh

INT 7F


INT 7F FA-- - Alloy MW386 - GET USER GROUP LIST

Category: N - network

Inp.:

AH = FAh

DL = user number

DH = machine number (currently 00h)

ES:DI -> 16-byte buffer for group list

Return: CX = number of groups

ES:DI buffer filled with group numbers

SeeAlso: AH=F8h,AH=F9h

INT 7F


INT 7F FB-- - Alloy MW386 - ASSIGN GROUP NAME

Category: N - network

Inp.:

AH = FBh

CL = group number

ES:DI -> ASCIZ group name (max 17 bytes)

SeeAlso: AH=FCh

INT 7F


INT 7F FC-- - Alloy MW386 - GET GROUP NAME

Category: N - network

Inp.:

AH = FCh

CL = group number

ES:DI -> 17-byte buffer for ASCIZ name

Return: ES:DI buffer filled

Note:	if the group has not been named, "(unnamed)" is returned

SeeAlso: AH=FBh

INT 7F


INT 80 ---- - Q-PRO4 - ???

Category: - - (none)

Inp.:

INT 80


INT 80 ---- - reserved for BASIC

Category: r - runtime support

Inp.:

Note:	this vector and INT 81 through INT ED are modified but not restored by

  Direct Access v4.0, and may be left dangling by other programs

  written with the same version of compiled BASIC

SeeAlso: INT 81"BASIC",INT 86"BASIC",INT EF"BASIC"

INT 80


INT 80 ---- - Phar Lap 386|DOS-Extender - RELOCATED PRINT-SCREEN

Category: E - DOS extenders

Inp.:

Note:	the extender relocates INT 05 to here by default, but can be told to

  leave INT 05 alone with the commandline (or DOSX= environment

  variable) flag -PRIVEC 5

SeeAlso: INT 05

INT 80


INT 80 ---- - BusLogic BT-946C PCI SCSI Adapter - SCRATCHPAD RAM (NOT A VECTOR!)

Category: d - disk I/O enhancements

Inp.:

Note:	the factory-default location for the eight bytes of scratchpad RAM

  needed by the SCSI adapter is 0000h:0200h, which is interrupt

  vectors 80h and 81h

SeeAlso: INT 81"BusLogic"

INT 80


INT 80 ---- - SBSIM - "STARTSND" - START SOUND ON SPECIFIED DRIVER

Category: s - sound/speech

Inp.:

BL = 00h

BH = driver number (01h = FM, 02h=DDBV, 03h=memvoice, 05h=MIDI)

Return: AX = initialization result (see #2555)

Program: SBSIM is Creative Labs' SoundBlaster Simplified Interface Module,

  which provides access to multiple drivers for the SoundBlaster

  board through a single interface

Range:	INT 80h to INT BFh, selected automatically

Note:	the SBSIM installation check consists of testing for the signature

  "SBSIM" at offset 103h in the interrupt handler's segment.

SeeAlso: INT 80/BL=01h"SBSIM",INT 80/BL=02h"SBSIM",INT 80/BL=03h"SBSIM"

SeeAlso: INT 80/BX=0000h"SBSIM"

INT 80


INT 80 ---- - SBSIM - "PLAYSND" - PLAY MUSIC/VOICE ON SELECTED DRIVER

Category: s - sound/speech

Inp.:

BL = 01h

BH = driver number (01h = FM, 02h=DDBV, 03h=memvoice, 05h=MIDI)

Return: AX = result (see #2555)

SeeAlso: INT 80/BL=00h"SBSIM",INT 80/BL=02h"SBSIM",INT 80/BL=04h"SBSIM"

INT 80


INT 80 ---- - SBSIM - "STOPSND" - STOP MUSIC/VOICE ON SELECTED DRIVER

Category: s - sound/speech

Inp.:

BL = 02h

BH = driver number (01h = FM, 02h=DDBV, 03h=memvoice, 05h=MIDI)

Return: nothing

SeeAlso: INT 80/BL=00h"SBSIM",INT 80/BL=01h"SBSIM",INT 80/BL=03h"SBSIM"

INT 80


INT 80 ---- - SBSIM - "PAUSESND" - TEMPORARILY PAUSE PLAYBACK ON SELECTED DRIVER

Category: s - sound/speech

Inp.:

BL = 03h

BH = driver number (01h = FM, 02h=DDBV, 03h=memvoice, 05h=MIDI)

Return: nothing

SeeAlso: INT 80/BL=00h"SBSIM",INT 80/BL=02h"SBSIM",INT 80/BL=04h"SBSIM"

SeeAlso: INT 80/BL=05h

INT 80


INT 80 ---- - SBSIM - "RESUMESND" - RESTART PLAYBACK ON SELECTED DRIVER

Category: s - sound/speech

Inp.:

BL = 04h

BH = driver number (01h = FM, 02h=DDBV, 03h=memvoice, 05h=MIDI)

Return: nothing

SeeAlso: INT 80/BL=00h"SBSIM",INT 80/BL=03h"SBSIM",INT 80/BL=05h"SBSIM"

INT 80


INT 80 ---- - SBSIM - "GETSNDSTAT" - GET DRIVER'S STATUS

Category: s - sound/speech

Inp.:

BL = 05h

BH = driver number (01h = FM, 02h=DDBV, 03h=memvoice, 05h=MIDI)

Return: AX = status

SeeAlso: INT 80/BL=00h"SBSIM",INT 80/BL=01h"SBSIM",INT 80/BL=03h"SBSIM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - GET VERSION

Category: s - sound/speech

Inp.:

BX = 0000h

Return: ???

Note:	SBFM installs at a free interrupt in the range 80h through BFh

SeeAlso: BX=0008h"SBFM",INT 2F/AX=FBFBh

INT 80


INT 80 ---- - SBSIM - "QUERYVERSION" - GET VERSION

Category: s - sound/speech

Inp.:

BX = 0000h

Return: AX = version (AH = major, AL = minor)

Program: SBSIM is Creative Labs' SoundBlaster Simplified Interface Module,

  which provides access to multiple drivers for the SoundBlaster

  board through a single interface

Range:	INT 80h to INT BFh, selected automatically

Note:	the SBSIM installation check consists of testing for the signature

  "SBSIM" at offset 103h in the interrupt handler's segment.

SeeAlso: BX=0001h"SBSIM",BX=0005h"SBSIM",INT 21/AX=4402h"CTMMSYS"

SeeAlso: INT 80/BL=00h"SBSIM"

Index:	installation check;SBSIM|installation check;SoundBlaster

INT 80


INT 80 ---- - SoundBlaster SBFM driver - SET MUSIC STATUS BYTE ADDRESS

Category: s - sound/speech

Inp.:

BX = 0001h

DX:AX -> music status byte

SeeAlso: BX=0000h"SBFM",BX=0002h"SBFM",BX=0003h"SBFM"

INT 80


INT 80 ---- - SBSIM - "QUERYDRIVERS" - CHECK DRIVERS INSTALLED

Category: s - sound/speech

Inp.:

BX = 0001h

Return: AX = bit flags for loaded drivers (see #2556)

SeeAlso: BX=0000h"SBSIM",BX=0002h"SBSIM",BX=0005h"SBSIM",INT 80/BL=00h"SBSIM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - SET INSTRUMENT TABLE

Category: s - sound/speech

Inp.:

BX = 0002h

CX = number of instruments

DX:AX -> instrument table

SeeAlso: BX=0000h"SBFM",BX=0001h"SBFM",BX=0005h"SBFM"

INT 80


INT 80 ---- - SBSIM - GETADDRESS" - GET SELECTED DRIVER'S ENTRY POINT

Category: s - sound/speech

Inp.:

BX = 0002h

AX = driver (00h = FM,01h = DDBV,02h = memvoice,03h = mixer,04h = MIDI)

Return: CF clear if successful

    DX:AX -> entry point

CF set on error

SeeAlso: BX=0000h"SBSIM",BX=0001h"SBSIM",BX=0005h"SBSIM",INT 80/BL=00h"SBSIM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - SET SYSTEM CLOCK RATE

Category: s - sound/speech

Inp.:

BX = 0003h

AX = clock rate divisor (1193180 / desired frequency in Hertz)

    FFFFh to restore to 18.2 Hz

SeeAlso: BX=0000h"SBFM",BX=0001h"SBFM",BX=0004h"SBFM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - SET DRIVER CLOCK RATE

Category: s - sound/speech

Inp.:

BX = 0004h

AX = driver clock rate divisor (1193180 / frequency in Hertz)

Note:	default frequency is 96 Hz

SeeAlso: BX=0000h"SBFM",BX=0003h"SBFM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - TRANSPOSE MUSIC

Category: s - sound/speech

Inp.:

BX = 0005h

AX = semi-tone offset

SeeAlso: BX=0000h"SBFM",BX=0002h"SBFM",BX=0006h"SBFM"

INT 80


INT 80 ---- - SBSIM - "GETBUFFERINFO" - GET DRIVER'S BUFFER ADDRESS

Category: s - sound/speech

Inp.:

BX = 0005h

AX = driver (00h = FM, 01h = DDB Voice, 04h = MIDI)

Return: CF clear if successful

    DX:AX -> buffer

    CX = buffer size in K

CF set on error

Program: SBSIM is Creative Labs' SoundBlaster Simplified Interface Module,

  which provides access to multiple drivers for the SoundBlaster

  board through a single interface

Range:	INT 80h to INT BFh, selected automatically

Note:	the SBSIM installation check consists of testing for the signature

  "SBSIM" at offset 103h in the interrupt handler's segment.

SeeAlso: BX=0000h"SBSIM",BX=0001h"SBSIM",BX=0002h"SBSIM",INT 80/BL=00h"SBSIM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - PLAY MUSIC

Category: s - sound/speech

Inp.:

BX = 0006h

DX:AX -> music block

Return: AX = status

    0000h successful

    0001h music already active

SeeAlso: BX=0000h"SBFM",BX=0007h"SBFM",BX=000Ah"SBFM",INT 1A/AX=FF04h

INT 80


INT 80 ---- - SoundBlaster SBFM driver - STOP MUSIC

Category: s - sound/speech

Inp.:

BX = 0007h

Return: AX = status

    0000h successful

    0001h music not active

SeeAlso: BX=0000h"SBFM",BX=0006h"SBFM",BX=0009h"SBFM",INT 1A/AX=FF05h

INT 80


INT 80 ---- - SoundBlaster SBFM driver - RESET DRIVER

Category: s - sound/speech

Inp.:

BX = 0008h

Return: AX = status

    0000h successful

    0001h music is active

SeeAlso: BX=0000h"SBFM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - PAUSE MUSIC

Category: s - sound/speech

Inp.:

BX = 0009h

Return: AX = status

    0000h successful

    0001h no music active

SeeAlso: BX=0000h"SBFM",BX=0007h"SBFM",BX=000Ah"SBFM",INT 1A/AX=FF01h

INT 80


INT 80 ---- - SoundBlaster SBFM driver - RESUME MUSIC

Category: s - sound/speech

Inp.:

BX = 000Ah

Return: AX = status

    0000h successful

    0001h no music paused

SeeAlso: BX=0000h"SBFM",BX=0006h"SBFM",BX=0009h"SBFM"

INT 80


INT 80 ---- - SoundBlaster SBFM driver - SET USER-DEF TRAP FOR SYSTEM-EXCLUSIVE CMDS

Category: s - sound/speech

Inp.:

BX = 000Bh

DX:AX -> trap routine

SeeAlso: BX=0000h"SBFM"

INT 80


INT 80 ---- - SBSIM - "GETVOLUME" - GET SOURCE'S VOLUME

Category: s - sound/speech

Inp.:

BX = 0400h

AX = sound source (see #2557)

Return: CF clear if successful

    AX = volume

CF set on error

    AX = error code (see #2555 at INT 80/BL=00h)

SeeAlso: BX=0401h"SBSIM"

INT 80


INT 80 ---- - SBSIM - "SETVOLUME" - SET SOURCE'S VOLUME

Category: s - sound/speech

Inp.:

BX = 0401h

AX = sound source (see #2557)

DX = new volume

Return: AX = result (0000h = success) (see also INT 80/BL=00h)

SeeAlso: BX=0400h"SBSIM"

INT 80


INT 80 01-- - QPC Software PKTINT.COM - INITIALIZE

Category: N - network

Inp.:

AH = 01h

Return: AX = 0000h

CX = FFFFh

DX = FFFFh

Notes:	this interrupt is the WinQVTNet protected mode interface to Windows 3.0

all buffer pointers are reset back to 0

INT 80


INT 80 02-- - QPC Software PKTINT.COM - GET BUFFER ADDRESSES

Category: N - network

Inp.:

AH = 02h

BX = extra bytes to allocate per packet

Return: AX = segment address of 10K buffer (for receives???)

BX = segment address of 2K buffer (for sends???)

SeeAlso: AH=05h

INT 80


INT 80 03-- - QPC Software PKTINT.COM - GET ENTRY POINT

Category: N - network

Inp.:

AH = 03h

Return: CX:DX -> receive call address

Note:	the returned address can be used in the packet driver calls since it

  will be a valid address in all DOS boxes

SeeAlso: AH=06h

INT 80


INT 80 04-- - QPC Software PKTINT.COM - ENABLE???

Category: N - network

Inp.:

AH = 04h

BX = ???

Return: ???

SeeAlso: AH=01h

INT 80


INT 80 05-- - QPC Software PKTINT.COM - GET RECEIVE STATISTICS

Category: N - network

Inp.:

AH = 05h

Return: AX = amount of buffer currently in use

BX = current offset in buffer

CX = number of times receive has been called

SeeAlso: AH=02h

INT 80


INT 80 06-- - QPC Software PKTINT.COM - REMOVE RECEIVED PACKET

Category: N - network

Inp.:

AH = 06h

Return: BX = next packet offset

CX = number of bytes still buffered

DX = size of packet released back into buffer pool

SeeAlso: AH=03h

INT 80


INT 81 ---- - reserved for BASIC

Category: r - runtime support

Inp.:

Note:	this vector is modified but not restored by Direct Access v4.0, and

  may be left dangling by other programs written with the same version

  of compiled BASIC

SeeAlso: INT 80"BASIC",INT 82"BASIC"

INT 81


INT 81 ---- - IBM TOKEN RING ADAPTER - ???

Category: N - network

Inp.:

SeeAlso: INT 82"TOKEN RING",INT 91"TOKEN RING"

INT 81


INT 81 ---- - BusLogic BT-946C PCI SCSI Adapter - SCRATCHPAD RAM (NOT A VECTOR!)

Category: d - disk I/O enhancements

Inp.:

Note:	the factory-default location for the eight bytes of scratchpad RAM

  needed by the SCSI adapter is 0000h:0200h, which is interrupt

  vectors 80h and 81h

SeeAlso: INT 80"BusLogic"

INT 81


INT 81 ---- - AMI WinBIOS - SECOND HARD DRIVE AUTODETECTION

Category: b - vendor-specific BIOS extensions

Inp.:

Notes:	used by WinBIOS with core version of July 1994 or later

QEMM 7.5 began using this interrupt internally after the QPAT3

  maintenance release when searching for "ROM holes", causing a

  lengthy delay during bootup.  Adding the QEMM parameter RH:N will

  avoid the QEMM call to INT 81 and speed up the boot process

INT 81


INT 81 0200 - Gravis UltraSound - MegaEm - PROCESS COMMAND LINE

Category: s - sound/speech

Inp.:

AX = 0200h

BX = PSP segment

SI = ??? (data area)

Return:	AX = status (see #2558)

BL = emulation state

    bit 1   Emulation is on

    bit 2   Emulation is off

Program: MegaEm is a protected-mode SoundBlaster, SoundCanvas, and MT-32

  emulator for the Gravis UltraSound

Range:	INT ??? to INT ??? (see INT 21/AX=FD12h)

SeeAlso: AX=0202h,AX=0300h,AX=0400h,INT 21/AX=FD12h/BX=3457h

INT 81


INT 81 0202 - Gravis UltraSound - MegaEm - ???

Category: s - sound/speech

Inp.:

AX = 0202h

Return:	AX = ???

SeeAlso: AX=0200h,AX=0300h,AX=0400h,INT 21/AX=FD12h/BX=3457h

INT 81


INT 81 0300 - Gravis UltraSound - MegaEm - LOAD SAMPLE ???

Category: s - sound/speech

Inp.:

AX = 0300h

Return:	AX = ???

SeeAlso: AX=0200h,AX=0202h,AX=0400h,INT 21/AX=FD12h/BX=3457h

INT 81


INT 81 0400 - Gravis UltraSound - MegaEm - ???

Category: s - sound/speech

Inp.:

AX = 0400h

BX = ??? (segment)

Return:	AX = ???

BX = ???

Program: MegaEm is a protected-mode SoundBlaster, SoundCanvas, and MT-32

  emulator for the Gravis UltraSound

SeeAlso: AX=0200h,AX=0202h,AX=0300h,INT 21/AX=FD12h/BX=3457h

INT 81


INT 81 2010 - Gravis UltraSound - MEGA_EM v3.0+ - ???

Category: s - sound/speech

Inp.:

AX = 2010h

???

Return: ???

INT 81


INT 81 2011 - Gravis UltraSound - MEGA_EM v3.0+ - ???

Category: s - sound/speech

Inp.:

AX = 2011h

???

Return: ???

INT 81


INT 81 2012 - Gravis UltraSound - MEGA_EM v3.0+ - ???

Category: s - sound/speech

Inp.:

AX = 2012h

???

Return: ???

INT 81


INT 81 2015 - Gravis UltraSound - MEGA_EM v3.0+ - ???

Category: s - sound/speech

Inp.:

AX = 2015h

???

Return: ???

INT 81


INT 82 ---- - reserved for BASIC

Category: r - runtime support

Inp.:

SeeAlso: INT 81"BASIC",INT 83"BASIC"

INT 82


INT 82 ---- - IBM TOKEN RING ADAPTER - ???

Category: N - network

Inp.:

AH = function

    00h display message???

DS:BX -> string

???

Return: ???

SeeAlso: INT 81"TOKEN RING",INT 91"TOKEN RING"

INT 82


INT 83 ---- - reserved for BASIC

Category: r - runtime support

Inp.:

SeeAlso: INT 82"BASIC",INT 84"BASIC"

INT 83


INT 83 00-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 00h

???

Return: CF clear (successful)

AX = ??? (0302h)

Program: JM Pro Tracker is a public-domain resident .MOD (digital music)

  player by Josha Munnik

Table #2559

INT 83


INT 83 01-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 01h

DX = ??? or FFFFh

???

Return: CF clear if successful

CF set on error

    AX = error code (see #2559)

INT 83


INT 83 02-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 02h

BX = ???

???

Return: CF clear if successful

    AX = ???

    BX = ???

    CX = ???

    DX = ???

    SI = ???

CF set on error

    AX = error code (000Ah,000Bh,other) (see #2559)

INT 83


INT 83 03-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 03h

BX = ??? (only low four bits, must be nonzero)

CX = ???

???

Return: CF clear if successful

CF set on error

    AX = error code (0014h) (see #2559)

INT 83


INT 83 04-- - JM Pro Tracker v5.0 - SET DMA BUFFER???

Category: s - sound/speech

Inp.:

AH = 04h

CX = number of bytes in suggested buffer

ES:DI -> suggested buffer for DMA transfers???

Return: CF clear if successful

    ES:AX -> actual buffer (filled with bytes of 80h)

    CX = actual length (multiple of 4)

CF set on error

    AX = error code (see #2559)

Note:	the buffer must not cross a 64K DMA page boundary

INT 83


INT 83 05-- - JM Pro Tracker v5.0 - SET ??? BUFFER

Category: s - sound/speech

Inp.:

AH = 05h

CX = length of buffer

ES:DI -> buffer for/containing ???

Return: CF clear (successful)

SeeAlso: AH=06h,AH=07h,AH=18h

INT 83


INT 83 06-- - JM Pro Tracker v5.0 - SET ??? BUFFER

Category: s - sound/speech

Inp.:

AH = 06h

CX = length of buffer

ES:DI -> buffer for/containing ???

Return: CF clear (successful)

SeeAlso: AH=05h,AH=07h,AH=18h

INT 83


INT 83 07-- - JM Pro Tracker v5.0 - SET ??? BUFFER

Category: s - sound/speech

Inp.:

AH = 07h

BX = ???

CX = length of buffer

ES:DI -> buffer for/containing ???

Return: CF clear (successful)

SeeAlso: AH=05h,AH=06h,AH=18h

INT 83


INT 83 08-- - JM Pro Tracker v5.0 - START PLAYING???

Category: s - sound/speech

Inp.:

AH = 08h

???

Return: CF clear if successful

   ???

CF set on error

    AX = error code (001Eh,001Fh) (see #2559)

SeeAlso: AH=09h,AH=0Ah

INT 83


INT 83 09-- - JM Pro Tracker v5.0 - PAUSE???

Category: s - sound/speech

Inp.:

AH = 09h

???

Return: CF clear if successful

CF set on error

    AX = error code (see #2559)

SeeAlso: AH=08h,AH=0Ah

INT 83


INT 83 0A-- - JM Pro Tracker v5.0 - RESUME???

Category: s - sound/speech

Inp.:

AH = 0Ah

???

Return: CF clear if successful

CF set on error

    AX = error code (001Fh) (see #2559)

SeeAlso: AH=08h,AH=09h

INT 83


INT 83 0B-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 0Bh

BX = ???

???

Return: CF clear if successful

CF set on error

INT 83


INT 83 0C-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 0Ch

DX bit 5 = ???

???

Return: CF clear if successful

    BX = ??? (FFFFh)

    CX = ??? (0000h)

    DX = ???

CF set on error

    AX = error code (see #2559)

INT 83


INT 83 0D-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 0Dh

BX = ???

???

Return: CF clear (successful)

INT 83


INT 83 0E-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 0Eh

BX = ??? (ignored if ES:DI = 0000h:0000h)

ES:DI -> ??? or 0000h:0000h

Return: CF clear (successful)

INT 83


INT 83 0F-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 0Fh

???

Return: CF clear if successful

    AX = ???

CF set on error

    AX = error code (see #2559)

INT 83


INT 83 10-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 10h

BL = subfunction???

CX = ???

DX = ???

???

Return: CF clear if successful

    CX = DX = ???

CF set on error

    AX = error code (see #2559)

SeeAlso: AH=18h

INT 83


INT 83 11-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 11h

BL = ???

CX = ???

Return: CF clear (successful)

INT 83


INT 83 12-- - JM Pro Tracker v5.0 - CLEAR ???

Category: s - sound/speech

Inp.:

AH = 12h

Return: nothing

INT 83


INT 83 13-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 13h

BX = ???

Return: CF clear (successful)

INT 83


INT 83 14-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 14h

???

Return: CF clear (successful)

BX = ???

INT 83


INT 83 15-- - JM Pro Tracker v5.0 - GET ???

Category: s - sound/speech

Inp.:

AH = 15h

BX = what to get (zero/nonzero)

Return: CF clear if successful

    BX = ???

    DX = ???

CF set on error

    AX = error code (see #2559)

INT 83


INT 83 16-- - JM Pro Tracker v5.0 - ???

Category: s - sound/speech

Inp.:

AH = 16h

AL = subfunction

    00h ???

Return: BX = ???

CX = ???

DX = ???

ES:DI -> ???

CF indicates ???

    01h ???

Return: BX = ???

CX = ???

DX = ???

Return: CF clear if successful

CF set on error

    AX = error code (FFxxh) (see #2559)

INT 83


INT 83 17-- - JM Pro Tracker v5.0 - UNHOOK API INTERRUPT

Category: s - sound/speech

Inp.:

AH = 17h

Return: CF clear if successful

CF set on error (hooked by another program)

INT 83


INT 83 18-- - JM Pro Tracker v5.0 - SET BUFFERS

Category: s - sound/speech

Inp.:

AH = 18h

ES:DI -> buffer-pointer structure (see #2560)

Return: nothing

SeeAlso: AH=05h,AH=06h,AH=07h,AH=10h

INT 83


INT 84 ---- - reserved for BASIC

Category: r - runtime support

Inp.:

SeeAlso: INT 83"BASIC",INT 85"BASIC"

INT 84


INT 85 ---- - reserved for BASIC

Category: r - runtime support

Inp.:

Note:	INT 80 through INT ED are modified but not restored by Direct Access

  v4.0, and may be left dangling by other programs written with the

  same version of compiled BASIC

SeeAlso: INT 84"BASIC",INT 86"BASIC"

INT 85


INT 86 ---- - NetBIOS - ORIGINAL INT 18

Category: N - network

Inp.:

Note:	some implementations of NetBIOS reportedly relocate INT 18 here

SeeAlso: INT 18

INT 86


INT 86 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 85"BASIC",INT 87"BASIC"

INT 86


INT 86 ---- - APL*PLUS/PC - Terminate APL session and return to DOS

Category: r - runtime support

Inp.:

SeeAlso: INT 21/AH=4Ch,INT 87"APL"

INT 86


INT 87 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 86"BASIC",INT 88"BASIC"

INT 87


INT 87 ---- - APL*PLUS/PC - ???

Category: r - runtime support

Inp.:

SeeAlso: INT 86"APL",INT 88/AL=00h

INT 87


INT 87 ---- - VIRUS - "ZeroHunt" - VIRAL CODE (NOT A VECTOR!)

Category: v - virus/antivirus

Inp.:

Note:	the ZeroHunt virus copies its resident code down to 0000h:021Ch and

  following

SeeAlso: INT 8B"VIRUS"

INT 87


INT 88 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 87"BASIC",INT 89"BASIC"

INT 88


INT 88 --00 - APL*PLUS/PC - CREATE OBJECT OF ARBITRARY RANK OR SHAPE

Category: r - runtime support

Inp.:

AL = 00h

BX = STPTR of the variable to be assigned

ES:SI -> model of type, rank, and shape (see #2561)

Return: ES:DI -> first data byte of object

DX:CX = number of elements in the object

SeeAlso: INT C8"APL"

INT 88


INT 88 --01 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE

Category: r - runtime support

Inp.:

AL = 01h

AH = rank

BX = STPTR of the variable to be assigned

CX = first dimension (if any)

DX = second dimension (if any)

Return: ES:DI -> object

CX = number of elements in the object

Note:	each dimension must be 32767 or smaller

SeeAlso: AL=02h,AL=08h,INT C8"APL"

INT 88


INT 88 --02 - APL*PLUS/PC - CREATE INTEGER SCALAR/VECTOR/MATRIX <64K IN SIZE

Category: r - runtime support

Inp.:

AL = 02h

AH = rank

BX = STPTR of the variable to be assigned

CX = first dimension (if any)

DX = second dimension (if any)

Return: ES:DI -> object

CX = number of elements in the object

Note:	each dimension must be 32767 or smaller

SeeAlso: AL=01h,AL=08h,INT C8"APL"

INT 88


INT 88 --08 - APL*PLUS/PC - CREATE FLOATING POINT SCALAR/VECTOR/MATRIX <64K IN SIZE

Category: r - runtime support

Inp.:

AL = 08h

AH = rank

BX = STPTR of the variable to be assigned

CX = first dimension (if any)

DX = second dimension (if any)

Return: ES:DI -> object

CX = number of elements in the object

Note:	each dimension must be 32767 or smaller

SeeAlso: AL=01h,AL=02h,INT C8"APL"

INT 88


INT 88 --F5 - APL*PLUS/PC - FORCE OBJECT INTO REAL WORKSPACE FROM VIRTUAL

Category: r - runtime support

Inp.:

AL = F5h

BX = STPTR of object

SeeAlso: INT C8"APL"

INT 88


INT 88 --F6 - APL*PLUS/PC - MAKE NAME IMMUNE FROM OUTSWAPPING

Category: r - runtime support

Inp.:

AL = F6h

BX = STPTR of object

SeeAlso: AL=F7h,AL=F8h,INT C8"APL"

INT 88


INT 88 --F7 - APL*PLUS/PC - MAKE NAME ELIGIBLE FOR OUTSWAPPING

Category: r - runtime support

Inp.:

AL = F7h

BX = STPTR of object

SeeAlso: AL=F6h,AL=F8h,INT C8"APL"

INT 88


INT 88 --F8 - APL*PLUS/PC - REPORT WHETHER NAME IS ELIGIBLE FOR OUTSWAPPING

Category: r - runtime support

Inp.:

AL = F8h

BX = STPTR of object

Return: BX = name's outswapping status

    0000h eligible

    0001h not eligible

SeeAlso: AL=F6h,AL=F7h,INT C8"APL"

INT 88


INT 88 --F9 - APL*PLUS/PC - DETERMINE NAME STATUS

Category: r - runtime support

Inp.:

AL = F9h

ES:SI -> name

CX = length of name

Return: CF set if name ill-formed or already in use

    BX = STPTR if already in symbol table

CF clear if name is available for use

    BX = 0000h

Note:	does not force the name into the workspace

SeeAlso: AL=FEh,AL=FFh,INT C8"APL"

INT 88


INT 88 --FC - APL*PLUS/PC - DETERMINE IF MEMORY AVAIL WITHOUT GARBAGE COLLECTION

Category: r - runtime support

Inp.:

AL = FCh

BX = amount of memory needed (paragraphs)

Return: CF clear if memory available

CF set if a workspace compaction is required

SeeAlso: AL=FDh,INT C8"APL"

INT 88


INT 88 --FD - APL*PLUS/PC - PERFORM GARBAGE COLLECTION AND RETURN AVAILABLE MEMORY

Category: r - runtime support

Inp.:

AL = FDh

Return: BX = number of paragraphs available in workspace

SeeAlso: AL=FCh,INT C8"APL"

INT 88


INT 88 --FE - APL*PLUS/PC - CREATE NAME

Category: r - runtime support

Inp.:

AL = FEh

ES:SI -> name

CX = length of name

Return: BX = STPTR of name

DX = interpreter's data segment

SeeAlso: AL=F9h,AL=FFh,INT C8"APL"

INT 88


INT 88 --FF - APL*PLUS/PC - DETERMINE NAME STATUS

Category: r - runtime support

Inp.:

AL = FFh

ES:SI -> name

CX = length of name

Return: CF set if name ill-formed or already in use

    BX = STPTR if already in symbol table

CF clear if name is available for use

    BX = 0000h

Note:	forces the name into the workspace and makes it immune from outswapping

SeeAlso: AL=F9h,AL=FEh,INT C8"APL"

INT 88


INT 89 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 88"BASIC",INT 8A"BASIC"

INT 89


INT 8A ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 89"BASIC",INT 8B"BASIC"

INT 8A


INT 8A ---- - APL*PLUS/PC - PRINT SCREEN

Category: r - runtime support

Inp.:

Note:	same as INT 05

SeeAlso: INT 05,INT 8C"APL",INT CA"APL"

INT 8A


INT 8B ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 8A"BASIC",INT 8C"BASIC"

INT 8B


INT 8B ---- - APL*PLUS/PC - BEEP

Category: r - runtime support

Inp.:

Note:	same as printing a ^G via INT 21/AH=02h

SeeAlso: INT 21/AH=02h,INT CB"APL"

INT 8B


INT 8B ---- - VIRUS - "ZeroHunt" - INSTALLATION CHECK (NOT A VECTOR!)

Category: v - virus/antivirus

Inp.:

Note:	if the ZeroHunt virus is resident, this vector will contain either

  EE83h:019Bh (ZH-411) or EE83h:019Fh (ZH-415)

SeeAlso: INT 70"VIRUS",INT 87"VIRUS",INT 9C"VIRUS"

INT 8B


INT 8C ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 8C


INT 8C ---- - APL*PLUS/PC - CLEAR SCREEN MEMORY

Category: r - runtime support

Inp.:

AX = flag

    0000h do not save display attributes

    0001h save attributes

SeeAlso: INT CC"APL"

INT 8C


INT 8D ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 8D


INT 8E ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 8E


INT 8F ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 8F


INT 90 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 90


INT 90 ---- - APL*PLUS/PC - USED BY PORT 10 PRINTER DRIVER

Category: r - runtime support

Inp.:

INT 90


INT 91 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 91


INT 91 ---- - IBM TOKEN RING ADAPTER - ???

Category: N - network

Inp.:

SeeAlso: INT 81"TOKEN RING",INT 82"TOKEN RING",INT 93"TOKEN RING"

INT 91


INT 92 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 92


INT 92 ---- - Sangoma X.25 INTERFACE PROGRAM

Category: N - network

Inp.:

BX:DX -> control block

SeeAlso: INT 68"Sangoma"

INT 92


INT 92 E1-- - Da Vinci eMail Dispatcher INTERFACE

Category: e - electronic mail

Inp.:

AH = E1h

AL = function

BX = stack count (number of words to push)

CX:DX -> stack data (in word-reversed order ready to push)

Return: AX = status (see #2562)

Note:	preserves BP, DS, SI, DI; other registers may be destroyed

INT 92


INT 92 E100 - Da Vinci eMail Dispatcher - "NetInitStart"

Category: e - electronic mail

Inp.:

AX = E100h

BX = size of parameter block in words (000Ah)

CX:DX -> parameter block (see #2563)

Return: AX = 0001h success

Desc:	this function is used to initialize the dispatcher

SeeAlso: AX=E101h,AX=E103h

INT 92


INT 92 E101 - Da Vinci eMail Dispatcher - "NetInitCheck"

Category: e - electronic mail

Inp.:

AX = E101h

BX = 0000h

CX:DX ignored

Return: AX = 0001h success

SeeAlso: AX=E100h,AX=E180h

INT 92


INT 92 E102 - Da Vinci eMail Dispatcher - "NetCheckDriver"

Category: e - electronic mail

Inp.:

AX = E102h

BX = 0000h

CX:DX ignored

Return: AX = 0001h success

Desc:	this function is used to determine if the dispatcher is loaded

SeeAlso: AX=E10Bh,AX=E180h

INT 92


INT 92 E103 - Da Vinci eMail Dispatcher - "NetTerminate"

Category: e - electronic mail

Inp.:

AX = E103h

BX = 0000h

CX:DX ignored

Return: AX = status (see #2562)

SeeAlso: AX=E100h

INT 92


INT 92 E104 - Da Vinci eMail Dispatcher - "NetWhereIs"

Category: e - electronic mail

Inp.:

AX = E104h

BX = size of parameter block in words (0006h)

CX:DX -> parameter block (see #2564)

Return: AX = status (see #2562)

Desc:	this function is used to verify node address for usernames

SeeAlso: AX=E180h

INT 92


INT 92 E105 - Da Vinci eMail Dispatcher - "NetOpen"

Category: e - electronic mail

Inp.:

AX = E105h

BX = size of parameter block in words (0007h)

CX:DX -> parameter block (see #2565)

Return: AX = 0000h Error

AX = handle

Desc:	this function is used to open a submission channel

SeeAlso: AX=E10Ah,AX=E106h,AX=E108h

INT 92


INT 92 E106 - Da Vinci eMail Dispatcher - "NetRead"

Category: e - electronic mail

Inp.:

AX = E106h

BX = 0004h

CX:DX -> parameter block

Return: AX = 0001h

SeeAlso: AX=E108h

INT 92


INT 92 E107 - Da Vinci eMail Dispatcher - "NetGetError"

Category: e - electronic mail

Inp.:

AX = E107h

BX = 0002h

CX:DX -> parameter block

Return: AX = 0001h

SeeAlso: AX=E109h,AX=E180h

INT 92


INT 92 E108 - Da Vinci eMail Dispatcher - "NetWrite"

Category: e - electronic mail

Inp.:

AX = E108h

BX = size of parameter block in words (0004h)

CX:DX -> parameter block (see #2566)

Return: AX = amount written

Desc:	This function is used to write transactions to the dispatcher.

  The command block is written first and then another call is used

  to write the associated data.

SeeAlso: AX=E106h

INT 92


INT 92 E109 - Da Vinci eMail Dispatcher - "NetErrorFix" (UNUSED)

Category: e - electronic mail

Inp.:

AX = E109h

BX = size of parameter block in words (0001h)

CX:DX -> parameter block (see #2570)

Return: AX = FF97h (ERS_NOT_AVAILABLE)

SeeAlso: AX=E107h,AX=E180h

INT 92


INT 92 E10A - Da Vinci eMail Dispatcher - "NetClose"

Category: e - electronic mail

Inp.:

AX = E10Ah

BX = size of parameter block in words (0001h)

CX:DX -> parameter block (see #2571)

Return: AX = 0001h

Desc:	this function is used to close a dispatcher handle

SeeAlso: AX=E105h

INT 92


INT 92 E10B - Da Vinci eMail Dispatcher - "NetCheckQueue"

Category: e - electronic mail

Inp.:

AX = E10Bh

BX = size of parameter block in words (0004h)

CX:DX -> parameter block (see #2572)

Return: AX = 0001h

SeeAlso: AX=E102h,AX=E10Ch

INT 92


INT 92 E10C - Da Vinci eMail Dispatcher - "NetReadQueue"

Category: e - electronic mail

Inp.:

AX = E10Ch

BX = size of parameter block in words (0002h)

CX:DX -> parameter block (see #2573)

Return: AX = 0001h

SeeAlso: AX=E10Bh

INT 92


INT 92 E10D - Da Vinci eMail Dispatcher - "NetSubmitName"

Category: e - electronic mail

Inp.:

AX = E10Dh

BX = size of parameter block in words (0006h)

CX:DX -> parameter block (see #2574)

Return: AX = status (see #2562)

Desc:	this function is used to verify username/password

SeeAlso: AX=E10Eh

INT 92


INT 92 E10E - Da Vinci eMail Dispatcher - "NetRemoveName"

Category: e - electronic mail

Inp.:

AX = E10Eh

BX = size of parameter block in words (0004h)

CX:DX -> parameter block (see #2575)

Return: AX = 0001h

Desc:	this function is used to remove a username

SeeAlso: AX=E10Dh

INT 92


INT 92 E10F - Da Vinci eMail Dispatcher - IS ANYONE THERE? QUERY

Category: e - electronic mail

Inp.:

AX = E10Fh

BX = 0000h

CX:DX ignored

Return: AX = 0001h

SeeAlso: AX=E180h

INT 92


INT 92 E110 - Da Vinci eMail Dispatcher - "NetGetAltRoute"

Category: e - electronic mail

Inp.:

AX = E110h

BX = size of parameter block in words (0006h)

CX:DX -> parameter block (see #2576)

Return: AX = 0001h

SeeAlso: AX=E111h,AX=E113h

INT 92


INT 92 E111 - Da Vinci eMail Dispatcher - "NetDeleteAltRoutes"

Category: e - electronic mail

Inp.:

AX = E111h

BX = size of parameter block in words (0004h)

CX:DX -> parameter block (see #2577)

Return: AX = 0001h

SeeAlso: AX=E110h,AX=E113h

INT 92


INT 92 E112 - Da Vinci eMail Dispatcher - "NetChangePassword"

Category: e - electronic mail

Inp.:

AX = E112h

BX = size of parameter block in words (0008h)

CX:DX -> parameter block (see #2578)

Return: AX = 0001h

SeeAlso: AX=E180h

INT 92


INT 92 E113 - Da Vinci eMail Dispatcher - "NetSetAltRoute"

Category: e - electronic mail

Inp.:

AX = E113h

BX = size of parameter block in words (0008h)

CX:DX -> parameter block (see #2579)

Return: AX = 0001h

SeeAlso: AX=E110h,AX=E111h

INT 92


INT 92 E175 - Da Vinci eMail Dispatcher - BECOME MICRO TSR

Category: e - electronic mail

Inp.:

AX = E175h

Return: AX = 0012h

BX = PSP

SeeAlso: AX=E180h

INT 92


INT 92 E180 - Da Vinci eMail Dispatcher - INSTALLATION CHECK

Category: e - electronic mail

Inp.:

AX = E180h

Return: AX = 0012h if installed

ES:DX -> '$'-terminated driver information string

SeeAlso: AX=E102h,AX=E105h,AX=E10Fh,AX=E175h

INT 92


INT 93 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT 93


INT 93 ---- - IBM TOKEN RING ADAPTER - ???

Category: N - network

Inp.:

SeeAlso: INT 81"TOKEN RING",INT 91"TOKEN RING"

INT 93


INT 94 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 94


INT 94 ---- - PCM driver - INITIALIZE SOUND

partially documented function

Category: s - sound/speech

Inp.:

SI = 0000h

ES:BX -> parameters

Return: ???

Program: PCM.COM is a sound driver for Media Vision's Pro Audio Spectrum

  sound boards

Note:	the installation check consists of testing for the signature string

  "PCMDRIVER" immediately preceding the interrupt handler; the word

  preceding the signature gives the PCM driver's version

SeeAlso: SI=0001h,SI=0002h,SI=0003h,SI=0004h,SI=0005h,SI=000Ah

Index:	installation check;PCM driver|PCM.COM;installation check

Index:	PCM driver;installation check

INT 94


INT 94 ---- - PCM driver - INITIALIZE PCM

partially documented function

Category: s - sound/speech

Inp.:

SI = 0001h

ES:BX -> parameters

Return: ???

SeeAlso: SI=0000h,SI=0002h,SI=0003h,SI=000Ah

INT 94


INT 94 ---- - PCM driver - INITIALIZE PCM INFO

partially documented function

Category: s - sound/speech

Inp.:

SI = 0002h

ES:BX -> parameters (see #2580)

Return: ???

SeeAlso: SI=0000h,SI=0001h,SI=0003h,SI=000Ah

INT 94


INT 94 ---- - PCM driver - INITIALIZE DMA BUFFER

partially documented function

Category: s - sound/speech

Inp.:

SI = 0003h

ES:BX -> parameters (see #2581)

Return: ???

SeeAlso: SI=0000h,SI=000Ah,SI=000Bh

INT 94


INT 94 ---- - PCM driver - INITIALIZE USER FUNCTION

partially documented function

Category: s - sound/speech

Inp.:

SI = 0004h

ES:BX -> parameters (see #2582)

Return: ???

SeeAlso: SI=0000h,SI=0001h

INT 94


INT 94 ---- - PCM driver - BEGIN AUDIO PLAY

partially documented function

Category: s - sound/speech

Inp.:

SI = 0005h

Return: ???

SeeAlso: SI=0000h,SI=0006h,SI=0007h,SI=0009h

INT 94


INT 94 ---- - PCM driver - BEGIN AUDIO RECORD

partially documented function

Category: s - sound/speech

Inp.:

SI = 0006h

Return: ???

SeeAlso: SI=0005h,SI=0007h,SI=0009h

INT 94


INT 94 ---- - PCM driver - PAUSE AUDIO PLAY/RECORD

partially documented function

Category: s - sound/speech

Inp.:

SI = 0007h

Return: ???

SeeAlso: SI=0005h,SI=0006h,SI=0008h

INT 94


INT 94 ---- - PCM driver - RESUME AUDIO PLAY/RECORD

partially documented function

Category: s - sound/speech

Inp.:

SI = 0008h

Return: ???

SeeAlso: SI=0007h

INT 94


INT 94 ---- - PCM driver - STOP AUDIO PLAY/RECORD

partially documented function

Category: s - sound/speech

Inp.:

SI = 0009h

Return: ???

SeeAlso: SI=0005h,SI=0006h,SI=0007h

INT 94


INT 94 ---- - PCM driver - UNHOOK INTERRUPTS AND TURN OFF DMA

partially documented function

Category: s - sound/speech

Inp.:

SI = 000Ah

Return: ???

SeeAlso: SI=0000h,SI=0001h,SI=0003h

Index:	uninstall;PCM driver

INT 94


INT 94 ---- - PCM driver - FIND VALID DMA BUFFER IN HUGE MEMORY BLOCK

partially documented function

Category: s - sound/speech

Inp.:

SI = 000Bh

ES:BX -> parameters (see #2583)

Return: ???

SeeAlso: SI=0003h

INT 94


INT 94 ---- - Media Vision PCM.COM - GET STATUS

partially documented function

Category: s - sound/speech

Inp.:

SI = 000Dh

Return: AX = status (0000h = waiting) (see #2584)

INT 94


INT 94 ---- - Media Vision PCM.COM - GET INTERNAL DMA BUFFER ADDRESS

partially documented function

Category: s - sound/speech

Inp.:

SI = 8000h

Return: DX:AX -> DMA buffer

Program: PCM.COM is a superset of the standard PCM driver which provides

  additional functions for fine control of the driver

Note:	the installation check for the Media Vision PCM.COM "shark" functions

  consists of testing for the signature "PCM-SHARK" at offset 107h in

  the INT 94 handler's segment

SeeAlso: SI=8001h,SI=8004h

Index:	installation check;Media Vision PCM.COM|PCM.COM;installation check

Index:	Media Vision PCM.COM;"shark" functions

INT 94


INT 94 ---- - Media Vision PCM.COM - GET INTERNAL DMA BUFFER SIZE AND DIVISIONS

partially documented function

Category: s - sound/speech

Inp.:

SI = 8001h

Return: AX = DMA buffer size

DX = divisions

SeeAlso: SI=8000h

INT 94


INT 94 ---- - Media Vision PCM.COM - CHECK BOARD ADDRESS

partially documented function

Category: s - sound/speech

Inp.:

SI = 8002h

Return: AX = status

    0000h if board not at specified I/O address

    other if board found

Note:	the I/O address is specified by ORing the base I/O port shifted left

  four bits into SI before calling INT 94

SeeAlso: SI=8000h

INT 94


INT 94 ---- - Media Vision PCM.COM - GET INTERNAL NOTE BUFFER

partially documented function

Category: s - sound/speech

Inp.:

SI = 8004h

Return: AX = offset of note buffer (segment = segment of internal DMA buffer)

DX = size of buffer in note structures

SeeAlso: SI=8000h

INT 94


INT 94 ---- - Media Vision PCM.COM - SINGLE-STEP QUEUE

partially documented function

Category: s - sound/speech

Inp.:

SI = 8005h

Return: ???

INT 94


INT 94 ---- - Media Vision PCM.COM - INITIALIZE

partially documented function

Category: s - sound/speech

Inp.:

SI = 8011h

ES:BX -> "iobf91" structure

Return: ???

INT 94


INT 94 ---- - Media Vision PCM.COM - LOAD SOUND FOR LATER PLAY THROUGH KEYBOARD

partially documented function

Category: s - sound/speech

Inp.:

SI = 8012h

ES:BX -> "i94f92buf" structure

Return: ???

SeeAlso: SI=8013h,SI=8014h

INT 94


INT 94 ---- - Media Vision PCM.COM - GET INTERNAL SOUND USAGE

partially documented function

Category: s - sound/speech

Inp.:

SI = 8013h

Return: AX = number of sounds used

DX = maximum handles

INT 94


INT 94 ---- - Media Vision PCM.COM - GET DATA FOR SPECIFIED SOUND

partially documented function

Category: s - sound/speech

Inp.:

SI = 8014h

ES:BX -> "i94f92buf" structure to be filled in

sound number field set to desired sound

Return: AX = status

    0000h successful

    FFFFh sound number out of range

SeeAlso: SI=8012h,SI=8013h

INT 94


INT 94 ---- - Media Vision PCM.COM - GET/SET INTERNAL DMA BUFFER

partially documented function

Category: s - sound/speech

Inp.:

SI = 8015h

ES:BX -> DMA info structure (see #2585)

Return: ???

INT 94


INT 94 ---- - Media Vision PCM.COM - SIMULATE DOUBLE-SHIFT HOTKEY

partially documented function

Category: s - sound/speech

Inp.:

SI = 8016h

AX = hotkey number (01h-08h)

Return: ???

SeeAlso: AL=02h/SI=8017h

INT 94


INT 94 --01 - Media Vision PCM.COM - CTRL-G INTERCEPT

partially documented function

Category: s - sound/speech

Inp.:

AL = 01h

SI = 8017h

AH = new state (00h off, 01h on)

Return: ???

SeeAlso: AL=02h/SI=8017h

INT 94


INT 94 --02 - Media Vision PCM.COM - DOUBLE-SHIFT-HOTKEY SOUND FEATURE

partially documented function

Category: s - sound/speech

Inp.:

AL = 02h

SI = 8017h

AH = new state (00h off, 01h on)

Return: ???

INT 94


INT 94 --04 - Media Vision PCM.COM - RANDOM SOUND FEATURE

partially documented function

Category: s - sound/speech

Inp.:

AL = 04h

SI = 8017h

AH = new state

    00h off

    01h on

CX = minimum delay

DX = maximum delay

Return: ???

INT 94


INT 94 --08 - Media Vision PCM.COM - NO ACTIVITY FEATURE

partially documented function

Category: s - sound/speech

Inp.:

AL = 08h

SI = 8017h

AH = new state

    00h off

    01h on

DX:CX = delay

Return: ???

SeeAlso: AL=10h/SI=8017h

INT 94


INT 94 --10 - Media Vision PCM.COM - TIMER CONTROL

partially documented function

Category: s - sound/speech

Inp.:

AL = 10h

SI = 8017h

AH = timer options (see #2586)

DX:CX = delay if AH bit 7 set (one-shot if DX bit 15 set)

Return: ???

SeeAlso: AL=08h/SI=8017h

INT 94


INT 94 ---- - Media Vision PCM.COM - GET INFO

partially documented function

Category: s - sound/speech

Inp.:

SI = 8018h

AL = what to get

    00h "F92state"

    01h "F92bkgd"

    02h "I10timer"

    03h "I08state"

Return: DX:AX -> desired information

INT 94


INT 95 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT 95


INT 95 ---- - APL*PLUS/PC - DETERMINE R= SPACE

Category: r - runtime support

Inp.:

Note:	use only when the R= option is invoked on entering APL

INT 95


INT 96 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT 96


INT 97 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT 97


INT 98 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 98


INT 99 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 99


INT 9A ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 99,INT 9B

INT 9A


INT 9B ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 9A,INT 9C"BASIC"

INT 9B


INT 9C ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 9B,INT 9D"BASIC"

INT 9C


INT 9C ---- - VIRUS - "INT13" - ORIGINAL INT 13h VECTOR

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 8B"VIRUS",INT 9D"VIRUS",INT 9E"VIRUS",INT 9F"VIRUS"

INT 9C


INT 9D ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 9C"BASIC",INT 9E"BASIC"

INT 9D


INT 9D ---- - VIRUS - "INT13" - ROM INT 13h ENTRY POINT

Category: v - virus/antivirus

Inp.:

Note:	this vector is used by the virus to store the result of a call to

  INT 2F/AH=13h

SeeAlso: INT 2F/AH=13h,INT 9C"VIRUS",INT 9E"VIRUS",INT 9F"VIRUS"

INT 9D


INT 9E ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 9D"BASIC",INT 9F"BASIC"

INT 9E


INT 9E ---- - VIRUS - "INT13" - ORIGINAL INT 21h VECTOR

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 70"VIRUS",INT 9C"VIRUS",INT 9D"VIRUS",INT E0"VIRUS"

INT 9E


INT 9F ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 9D"BASIC",INT A0"BASIC"

INT 9F


INT 9F ---- - VIRUS - "INT13" - STORAGE FOR USER INT 13h VECTOR

Category: v - virus/antivirus

Inp.:

Note:	while it is infecting a file, the INT13 virus grabs INT 13 and uses

  this interrupt to store the existing INT 13 vector for later

  restoration

SeeAlso: INT 9C"VIRUS",INT 9D"VIRUS",INT D3"VIRUS"

INT 9F


INT A0 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT 9F"BASIC",INT A1"BASIC"

INT A0


INT A0 ---- - APL*PLUS/PC - USED BY APL/GSS*CGI GRAPHICS INTERFACE

Category: r - runtime support

Inp.:

SeeAlso: INT 59

INT A0


INT A1 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT A0"BASIC",INT A2"BASIC"

INT A1


INT A2 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT A1"BASIC",INT A3"BASIC"

INT A2


INT A3 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT A2"BASIC",INT A4"BASIC"

INT A3


INT A4 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT A3"BASIC",INT A5"BASIC"

INT A4


INT A4 ---- - Right Hand Man - API

undocumented function

Category: U - resident utilities

Inp.:

AH = function number (v3.3 supports functions 00h-52h)

Return: CF set on error

CF clear if successful

Program: Right Hand Man is a TSR desk-top utility originally by Red E Products

  which has evolved into Futurus Team

Note:	this interrupt is only hooked while popped up

SeeAlso: INT 2F/AX=A4E0h

INT A4


INT A5 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT A4"BASIC",INT A6"BASIC"

INT A5


INT A6 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT A5"BASIC",INT A7"BASIC"

INT A6


INT A7 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT A7


INT A8 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT A8


INT A9 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT A9


INT AA ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT AA


INT AB ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT AB


INT AC ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT AC


INT AD ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT AD


INT AE ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT AE


INT AF ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT AF


INT B0 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT B0


INT B1 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT B1


INT B2 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT B2


INT B3 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT B3


INT B3 70-- - ZIPKEY - GET VERSION

Category: U - resident utilities

Inp.:

AH = 70h

Return: AH = major version

AL = minor version

CL = number of states and territories in current database

DH = year of current database - 1900

DL = month of current database's file date

Program: ZIPKEY is a resident ZIPCODE database by Eric Isaacson

Note:	if installed, the string "ZIPKEY" is present at offset 75h in the

  interrupt handler's segment, and the byte at 7Bh contains the API

  version number (00h for v1.x, 01h for v2.0)

INT B3


INT B3 71-- - ZIPKEY - CONVERT TWO-LETTER ABBREVIATION TO STATE CODE

Category: U - resident utilities

Inp.:

AH = 71h

BX = abbreviation, in either case (first letter in BL)

Return: CF set on error

    AL = FFh

CF clear if successful

    AL = ZIPKEY state code

SeeAlso: AH=72h

INT B3


INT B3 72-- - ZIPKEY - CONVERT STATE CODE TO TWO-LETTER ABBREVIATION

Category: U - resident utilities

Inp.:

AH = 72h

BL = ZIPKEY state code

Return: CF set on error

    AX destroyed

CF clear if successful

    AX = abbreviation, in upper case

SeeAlso: AH=71h,AH=73h

INT B3


INT B3 73-- - ZIPKEY - CONVERT STATE CODE TO STATE NAME

Category: U - resident utilities

Inp.:

AH = 73h

BL = ZIPKEY state code

ES:DI -> buffer for name

Return: CF set on error

    AX destroyed

CF clear if successful

    ES:DI points one byte beyond end of name

SeeAlso: AH=72h

INT B3


INT B3 74-- - ZIPKEY - CONVERT ZIPCODE TO ASCII DIGITS

Category: U - resident utilities

Inp.:

AH = 74h

DX = zipcode region (0-999)

CH = last two digits of zipcode (0-99)

ES:DI -> buffer

Return: CF set on error

    AX destroyed

CF clear if successful

    ES:DI points one byte beyond end of digit string

INT B3


INT B3 75-- - ZIPKEY - LOOK UP STATE CODE FOR ZIPCODE

Category: U - resident utilities

Inp.:

AH = 75h

DX = zipcode region (0-999)

CH = last two digits of zipcode (0-99)

Return: CF set on error (zipcode not found)

    AL = suggested state code, FFh if none

CF clear if successful

    AL = ZIPKEY state code

    BX = area code (v2.0+)

SeeAlso: AH=76h,AH=79h

INT B3


INT B3 76-- - ZIPKEY - LOOK UP CITY AND STATE FOR ZIPCODE

Category: U - resident utilities

Inp.:

AH = 76h

DX = zipcode region (0-999)

CH = last two digits of zipcode (0-99)

ES:DI -> buffer for name

Return: CF set on error

    AL = suggested state code, FFh if none

    ES:DI buffer filled with suggested city name

CF clear if successful

    AL = ZIPKEY state code

    BX = area code (v2.0+)

    ES:DI points one byte beyond end of name

SeeAlso: AH=75h,AH=78h,AH=7Eh

INT B3


INT B3 77-- - ZIPKEY - PLAY BACK EXIT KEY FOR ENTRY WITH GIVEN ZIPCODE

Category: U - resident utilities

Inp.:

AH = 77h

DX = zipcode region (0-999)

CH = last two digits of zipcode (0-99)

BX = 16-bit BIOS keycode for a defined ZIPKEY alternate exit key

Return: CF set on error

    AX destroyed

CF clear if successful

    zipcode specification as defined by the BX keystroke is placed in

      keyboard buffer, as if the user had popped up ZIPKEY and exited

      by pressing the key specified by BX

INT B3


INT B3 78-- - ZIPKEY - LOOK UP ZIPCODES FOR A GIVEN STATE AND CITY

Category: U - resident utilities

Inp.:

AH = 78h

BL = ZIPKEY state code

DS:SI -> city name, terminated with 0Dh if complete name, 00h if prefix

Return: BH = number of matching entries (set to 51 if more than 50)

DX = zipcode region of first match (0-999)

CL = last two digits of first zipcode in the range (0-99)

CH = last two digits of last zipcode in the range (0-99)

AX destroyed

SeeAlso: AH=79h,AH=7Ah

INT B3


INT B3 79-- - ZIPKEY - LOOK UP ZIPCODES FOR A GIVEN CITY

Category: U - resident utilities

Inp.:

AH = 79h

BL = ZIPKEY state code of first state to search

DS:SI -> city name, terminated with 0Dh if complete name, 00h if prefix

Return: AL = ZIPKEY state code of first matching state

BH = number of matching entries (set to 51 if more than 50)

DX = zipcode region of first match (0-999)

CL = last two digits of first zipcode in first range (0-99)

CH = last two digits of last zipcode in first range (0-99)

Note:	to find all matching cities, repeat search with BL set to one more than

  the returned AL

SeeAlso: AH=78h,AH=7Ah

INT B3


INT B3 7A-- - ZIPKEY - FETCH AN ENTRY FROM A PREVIOUS LOOKUP

Category: U - resident utilities

Inp.:

AH = 7Ah

BL = case number (0 to one less than value returned in BH by lookup)

Return: AL = ZIPKEY state code

DX = zipcode region (0-999)

CL = last two digits of first zipcode in the range (0-99)

CH = last two digits of last zipcode in the range (0-99)

SeeAlso: AH=78h,AH=79h

INT B3


INT B3 7B-- - ZIPKEY - GET VALUES NEEDED TO SAVE ZIPKEY CONTEXT

Category: U - resident utilities

Inp.:

AH = 7Bh

Return: BL = maximum number of characters for a city name

BH = ZIPKEY state code for last city-name search, or FFh if none

CX:DX = internal code identifying last city search

AX destroyed

SeeAlso: AH=7Ch

INT B3


INT B3 7C-- - ZIPKEY - RESTORE ZIPKEY CONTEXT

Category: U - resident utilities

Inp.:

AH = 7Ch

BL = maximum number of characters for a city name

BH = ZIPKEY state code for last city-name search, or FFh if none

CX:DX = internal code returned by AH=7Bh

Return: CF set on error

CF clear if successful

AX destroyed

SeeAlso: AH=7Bh

INT B3


INT B3 7D-- - ZIPKEY - REQUEST POP UP

Category: U - resident utilities

Inp.:

AH = 7Dh

BL = index number to simulate pressing a hotkey

    FFh for immediate popup with no playback on return

Return: CF set on error

    AL = error code

FDh already busy with another request

FEh illegal function

CF clear if successful

    AX destroyed

    window popped up and was closed by the user

SeeAlso: AH=70h

INT B3


INT B3 7E-- - ZIPKEY - GET NAME OF PRIMARY CITY FOR A ZIPCODE REGION

Category: U - resident utilities

Inp.:

AH = 7Eh

DX = zipcode region (0-999)

ES:DI -> buffer for name

Return: CF set on error

    AL = FFh region does not exist

CF clear if successful

    AL = ZIPKEY state code

    ES:DI points one byte beyond end of name

SeeAlso: AH=76h

INT B3


INT B3 7F-- - ZIPKEY - ENABLE/DISABLE HOTKEYS

Category: U - resident utilities

Inp.:

AH = 7Fh

BL = function

    00h turn off hotkeys

    01h turn on hotkeys

    02h return hotkey status

    03h toggle hotkey status

Return: AL = hotkey status

    00h off

    01h on

INT B3


INT B3 80-- - ZIPKEY v2.0+ - DETERMINE STATE FOR AREA CODE

Category: U - resident utilities

Inp.:

AH = 80h

BX = telephone area code (decimal)

Return: CF clear if successful

    AL = ZIPKEY state code

    DX = first ZIP region for state (03E8h if Canada)

    CX = number of ZIP regions in state

CF set on error

    AL = FFh

    DX = 03E9h

INT B3


INT B4 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT B4


INT B4 ---- - StackMan - REQUEST NEW STACK

Category: r - runtime support

Inp.:

Return: SS:SP -> new stack

Program: StackMan is a freeware stack manager by Franz Veldman of ESaSS B.V.

  which functions as a replacement for the DOS STACK= command as well

  as permitting multiple TSRs to share a pool of stack space

Note:	the installation check consists of testing for the string "STACKXXX" at

  offset 0Ah from the interrupt handler

SeeAlso: INT 2F/AX=C9FFh,INT B5"STACKMAN"

Index:	installation check;STACKMAN

INT B4


INT B5 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT B4"BASIC",INT B6"BASIC"

INT B5


INT B5 ---- - StackMan - RESTORE ORIGINAL STACK

Category: r - runtime support

Inp.:

SS:SP -> stack returned by INT B4

Return: SS:SP restored to value before INT B4

SeeAlso: INT 2F/AX=C9FFh,INT B4"StackMan"

INT B5


INT B5 ---- - Netroom NETSWAP4 - ???

undocumented function

Category: m - memory management

Inp.:

???

Return: ???

SeeAlso: INT 31/AH=57h

INT B5


INT B6 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT B5"BASIC",INT B7"BASIC"

INT B6


INT B6 ---- - (NOT A VECTOR!) - USED BY TBFENCE

Category: y - security

Inp.:

Program: TBFence is a security program by ESaSS B.V. which transparently

  encrypts floppies and optionally allows only encrypted diskettes to

  be accessed

Note:	the low word of this vector (0000h:02D8h) contains the segment of the

  TBFence INT 13h code, which starts with the signature word E487h;

  this forms the installation check

the highest byte of this vector contains the start of a FAR JMP

  instruction to ???

SeeAlso: INT B7"TBFENCE"

Index:	installation check;TBFence

INT B6


INT B7 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT B6"BASIC",INT B8"BASIC"

INT B7


INT B7 ---- - TBFENCE - ???

Category: y - security

Inp.:

SeeAlso: INT B6"TBFENCE"

INT B7


INT B8 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT B7"BASIC",INT B9"BASIC"

INT B8


INT B9 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT B9


INT BA ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT BA


INT BB ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT BB


INT BC ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT BC


INT BD ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT BD


INT BE ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT BD"BASIC",INT BF"BASIC"

INT BE


INT BE ---- - DESQview/X - ???

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

Note:	points at an IRET

SeeAlso: INT 15/AX=BFDEh/BX=0006h,INT 63"DESQview"

INT BE


INT BF ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT BE"BASIC",INT C0"BASIC"

INT BF


INT C0 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT BF"BASIC",INT C1"BASIC"

INT C0


INT C0 ---- - AMI BIOS - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the first four bytes

  of the hard disk parameter table

SeeAlso: INT 41,INT 60"Adaptec",INT C1"AMI",INT C2"AMI",INT C3"AMI",INT C4"AMI"

INT C0


INT C1 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C0"BASIC",INT C2"BASIC"

INT C1


INT C1 ---- - AMI BIOS - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the second four bytes

  of the hard disk parameter table

SeeAlso: INT 41,INT 60"Adaptec",INT C0"AMI",INT C2"AMI",INT C3"AMI"

INT C1


INT C2 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C1"BASIC",INT C3"BASIC"

INT C2


INT C2 ---- - AMI BIOS - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the third four bytes

  of the hard disk parameter table

SeeAlso: INT 41,INT 60"Adaptec",INT C0"AMI",INT C1"AMI",INT C3"AMI"

INT C2


INT C3 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C2"BASIC",INT C4"BASIC"

INT C3


INT C3 ---- - AMI BIOS - DRIVE 0 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the final four bytes

  of the hard disk parameter table

SeeAlso: INT 41,INT 60"Adaptec",INT C0"AMI",INT C1"AMI",INT C2"AMI"

INT C3


INT C4 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C3"BASIC",INT C5"BASIC"

INT C4


INT C4 ---- - AMI BIOS - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the first four bytes

  of the second hard disk's parameter table

SeeAlso: INT 46,INT 64"Adaptec",INT C0"AMI",INT C5"AMI",INT C6"AMI",INT C7"AMI"

INT C4


INT C5 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C4"BASIC",INT C6"BASIC"

INT C5


INT C5 ---- - AMI BIOS - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the second four bytes

  of the second hard disk's parameter table

SeeAlso: INT 46,INT 64"Adaptec",INT C0"AMI",INT C4"AMI",INT C6"AMI",INT C7"AMI"

INT C5


INT C6 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C5"BASIC",INT C7"BASIC"

INT C6


INT C6 ---- - APL*PLUS/PC - IDENTICAL TO INT 86

Category: r - runtime support

Inp.:

Note:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

SeeAlso: INT 86"APL"

INT C6


INT C6 ---- - AMI BIOS - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the third four bytes

  of the second hard disk's parameter table

SeeAlso: INT 46,INT 64"Adaptec",INT C0"AMI",INT C4"AMI",INT C5"AMI",INT C7"AMI"

INT C6


INT C7 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C6"BASIC",INT C8"BASIC"

INT C7


INT C7 ---- - APL*PLUS/PC - ???

Category: r - runtime support

Inp.:

Note:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

SeeAlso: INT 87"APL"

INT C7


INT C7 ---- - AMI BIOS - DRIVE 1 DATA

Category: d - disk I/O enhancements

Inp.:

Note:	this vector is used by some AMI BIOSes to store the final four bytes

  of the second hard disk's parameter table

SeeAlso: INT 46,INT 64"Adaptec",INT C0"AMI",INT C4"AMI",INT C5"AMI",INT C6"AMI"

INT C7


INT C8 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C7"BASIC",INT C9"BASIC"

INT C8


INT C8 ---- - APL*PLUS/PC - IDENTICAL TO INT 88

Category: r - runtime support

Inp.:

Note:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

SeeAlso: INT 88"APL"

INT C8


INT C9 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C8"BASIC",INT CA"BASIC"

INT C9


INT C9 ---- - APL*PLUS/PC - ???

Category: r - runtime support

Inp.:

Note:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

SeeAlso: INT 89"APL"

INT C9


INT CA ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT C9"BASIC",INT CB"BASIC"

INT CA


INT CA ---- - APL*PLUS/PC - PRINT SCREEN

Category: r - runtime support

Inp.:

Note:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

SeeAlso: INT 8A"APL"

INT CA


INT CB ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT CA"BASIC",INT CC"BASIC"

INT CB


INT CB ---- - APL*PLUS/PC - BEEP

Category: r - runtime support

Inp.:

Notes:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

same as printing a ^G via INT 21/AH=02h

SeeAlso: INT 8B"APL"

INT CB


INT CC ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT CB"BASIC",INT CD"BASIC"

INT CC


INT CC ---- - APL*PLUS/PC - CLEAR SCREEN MEMORY

Category: r - runtime support

Inp.:

AX = flag

    0000h do not save display attributes

    0001h save attributes

Note:	STSC moved its interrupts from 86h-8Ch to C6h-CCh, but did not delete

  the older interrupts

SeeAlso: INT 8C"APL"

INT CC


INT CD ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT CC"BASIC",INT CE"BASIC"

INT CD


INT CD ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT CD


INT CE ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT CD"BASIC",INT CF"BASIC"

INT CE


INT CE ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT CE


INT CF ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT CE"BASIC",INT D0"BASIC"

INT CF


INT CF ---- - APL*PLUS/PC - DEFAULT LOW-RESOLUTION TIMER FOR QUAD MF FUNCTION

Category: r - runtime support

Inp.:

SeeAlso: INT E0"APL"

INT CF


INT D0 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT CF"BASIC",INT D1"BASIC"

INT D0


INT D0 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D0


INT D0 ---- - [not a vector!] - NJFRERAM SIGNATURE VECTOR

Category: U - resident utilities

Inp.:

Program: NJFRERAM is a resident free-memory display utility by Mike "Nifty

  James" Blaszczak

Note:	if NJFRERAM is installed, this vector points at the signature "NJ"

Index:	installation check;NJFRERAM

INT D0


INT D1 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D0"BASIC",INT D2"BASIC"

INT D1


INT D1 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D1


INT D2 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D1"BASIC",INT D3"BASIC"

INT D2


INT D2 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D2


INT D3 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D2"BASIC",INT D4"BASIC"

INT D3


INT D3 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D3


INT D3 ---- - VIRUS - "Antiexe" - RELOCATED INT 13

Category: v - virus/antivirus

Inp.:

SeeAlso: INT 9F"VIRUS"

INT D3


INT D4 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D3"BASIC",INT D5"BASIC"

INT D4


INT D4 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D4


INT D4 00-- - PC-MOS/386 v5.01 - OBSOLETE FUNCTIONS

obsolete (no longer present in current versions)

Category: O - other operating systems

Inp.:

AH = 00h and 01h

Return: nothing

Desc:	PC-MOS/386 v5.01 reports that these functions are no longer supported

  and enters an endless loop

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

INT D4


INT D4 02-- - PC-MOS/386 v3.0+ - GET SYSTEM CONTROL BLOCK POINTER

Category: O - other operating systems

Inp.:

AH = 02h

Return: AX = 0000h

ES:BX -> System Control Block in V86 mode (see #2587)

ES:EBX -> System Control Block in native mode (see #2587)

Note:	superseded by AH=26h

SeeAlso: AH=04h,AH=10h,AH=26h,AH=28h,AH=29h,AH=2Ah,INT 21/AX=3000h,INT 38

INT D4


INT D4 03-- - PC-MOS/386 v5.01 - GET/SET EXTENDED DIRECTORY INFORMATION

Category: O - other operating systems

Inp.:

AH = 03h

AL = subfunction (00h get, 01h set)

DS:(E)DX -> pathname

ES:(E)BX -> 10-byte buffer for directory information (see #2588)

Return: CF clear if successful

    AL = permitted access level for file (00h-03h)

    ES:(E)BX -> modified buffer (AL=01h on entry)

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Notes:	BX/DX are used in V86 mode, EBX/EDX in native mode

the file class cannot be changed for files because it affects the

  encryption method, but directories can have their classes changed

INT D4


INT D4 04-- - PC-MOS/386 v3.0+ - GET TASK CONTROL BLOCK

Category: O - other operating systems

Inp.:

AH = 04h

BX = task ID or FFFFh for calling task

Return: CF clear if successful

    ES = segment of Task Control Block (TCB) (see #2589)

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Note:	superseded by AH=27h

SeeAlso: AH=02h,AH=27h,AH=28h,AH=29h,AH=2Ah,INT 38

INT D4


INT D4 07-- - PC-MOS/386 v3.0+ - WAIT FOR EVENT

Category: O - other operating systems

Inp.:

AH = 07h

AL = events to monitor (see #2598)

BX = number of timer ticks until timeout if AL bit 1 set

CX = bitmap of IRQs to monitor if AL bit 2 set

(bit 0 = IRQ0 .. bit 15 = IRQ15)

DX = port to monitor if AL bit 3 set

Return: CF clear if successful

    AL = type of event which woke up task (see #2598)

    CX = IRQ (if any) which awakened task

    DX = port (if any) which awakened task

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Note:	a device driver may make this call with AL=00h, which indicates that

  the driver is responsible for setting and clearing the TCBWAIT field

  in the TCB.  To put task to sleep, set TCBWAIT bits 2-0 to 001; to

  reawaken it, set bit 1 (leaving other bits unchanged)

SeeAlso: AH=04h,INT 16/AH=00h,INT 38

INT D4


INT D4 10-- - PC-MOS/386 v3.0+ - ENTER/LEAVE NATIVE 386 EXECUTION MODE

Category: O - other operating systems

Inp.:

AH = 10h

AL = direction (00h return to V86 mode, 01h enter native mode)

CX = length in bytes of Native Context Area ( >=1024 )

DX = segment of Native Context Area

Return: CF clear if successful

    running in desired mode at instruction following INT D4 call

    all segment registers converted to appropriate selectors/segments

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Note:	MS-DOS calls are available in protected mode

SeeAlso: AH=11h,AH=12h,AH=13h,INT 2F/AX=1687h,INT 67/AX=DE0Ch,INT 38

INT D4


INT D4 11-- - PC-MOS/386 v3.0+ - ALLOCATE NATIVE MODE MEMORY BLOCK

Category: O - other operating systems

Inp.:

AH = 11h

EBX = block length in bytes

Return: CF clear if successful

    EBX = number of bytes actually allocated

    ES = selector for allocated block

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

Note:	the memory must be released before the program terminates

SeeAlso: AH=10h,AH=12h,INT 38

INT D4


INT D4 12-- - PC-MOS/386 v3.0+ - FREE NATIVE MODE MEMORY BLOCK

Category: O - other operating systems

Inp.:

AH = 12h

ES = selector for block to free

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=10h,AH=11h,AH=13h,INT 38

INT D4


INT D4 13-- - PC-MOS/386 v5.01 - GET ALIAS FOR SELECTOR (NATIVE MODE ONLY)

Category: O - other operating systems

Inp.:

AH = 13h

AL = type of alias selector (00h data, 01h stack, 02h code)

BX = selector

Return: CF clear if successful

    AX = new selector or 0000h if BX selector not found

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=11h,AH=12h

INT D4


INT D4 16-- - PC-MOS/386 v5.01 - SET/CLEAR IRQ RESERVATION

Category: O - other operating systems

Inp.:

AH = 16h

AL = function (00h clear, 01h set reservation)

CX = IRQ number

Return: AX = status

    (0000h successful, 0001h currently reserved by another task)

SeeAlso: AH=07h,INT 14/AH=11h"PC-MOS"

INT D4


INT D4 19-- - PC-MOS/386 v5.01 - GET TASK ID

Category: O - other operating systems

Inp.:

AH = 19h

Return: BX = caller's task ID

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=1Dh,AH=1Eh

INT D4


INT D4 1A-- - PC-MOS/386 v5.01 - GET/SET TASK PRIORITY

Category: O - other operating systems

Inp.:

AH = 1Ah

AL = subfunction (00h read, 01h set, 02h get and set)

BX = task ID (FFFFh for current task)

CL = new priority value

Return: CF clear if successful

    CL = current priority value

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=1Bh,AH=1Ch

INT D4


INT D4 1B-- - PC-MOS/386 v5.01 - GET/SET TIME SLICE

Category: O - other operating systems

Inp.:

AH = 1Bh

AL = subfunction (00h read, 01h set, 02h get and set)

BX = task ID (FFFFh for current task) (see AH=19h)

CL = new time slice value

Return: CF clear if successful

    CL = current time slice value

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=1Ah,AH=1Ch

INT D4


INT D4 1C-- - PC-MOS/386 v5.01 - GET/SET KEYBOARD MODE

Category: O - other operating systems

Inp.:

AH = 1Ch

AL = subfunction (00h enable, 01h disable, 02h get mode)

BX = task ID (FFFFh for current task)

Return: CF clear if successful

    CL = current keyboard state

CF set on error

    AX = error code (INT 21/AH=59h)

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=1Ah,AH=1Bh

INT D4


INT D4 1D-- - PC-MOS/386 v5.01 - GET CURRENT PROGRAM NAME

Category: O - other operating systems

Inp.:

AH = 1Dh

BX = task ID (FFFFh for current task) (see AH=19h)

ES:DI -> buffer for program name (see #2599)

Return: CF clear if successful

    ES:DI buffer filled

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=19h,AH=1Eh

INT D4


INT D4 1E-- - PC-MOS/386 v5.01 - GET CURRENT USERNAME AND SECURITY CLASS

Category: O - other operating systems

Inp.:

AH = 1Eh

BX = task ID (FFFFh for current task)

ES:DI -> 4-byte buffer for username

Return: CF clear if successful

    CL = security class

20h (' ') none

41h-5Ah ('A'-'Z') security level

    ES:DI buffer filled

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=19h,AH=1Dh

INT D4


INT D4 1F-- - PC-MOS/386 v5.01 - GET TASK PARTITION INFORMATION

Category: O - other operating systems

Inp.:

AH = 1Fh

BX = task ID (FFFFh for current task) (see AH=19h)

Return: CF clear if successful

    CX = start segment of task

    DX = ending segment of task

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=2Dh

INT D4


INT D4 20-- - PC-MOS/386 v5.01 - GET PORT AND BAUDRATE INFORMATION

Category: O - other operating systems

Inp.:

AH = 20h

BX = task ID (FFFFh for current task) (see AH=19h)

Return: CF clear if successful

    CX = port number (0000h if none)

    DI:SI = baudrate (if CX nonzero)

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: INT 14/AH=0Ch"FOSSIL"

INT D4


INT D4 21-- - PC-MOS/386 v5.01 - REMOVE A TASK

Category: O - other operating systems

Inp.:

AH = 21h

BX = task ID (FFFFh for current task) (see AH=19h)

Return: CF clear if successful

    AX = ASCII percentage of System Memory Pool used

(AH = tens digit, AL = ones digit)

    DS,SI destroyed

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=22h

INT D4


INT D4 22-- - PC-MOS/386 v5.01 - ADD A TASK TO THE SYSTEM

Category: O - other operating systems

Inp.:

AH = 22h

DS:SI -> addtask data structure (see #2601)

Return: CF clear if successful

    ES = segment address of the new task's TCB data structure

CF set on error

    AX = error code (see #2600)

SeeAlso: AH=21h

INT D4


INT D4 23-- - PC-MOS/386 v5.01 - CHANGE TERMINAL DRIVER

Category: O - other operating systems

Inp.:

AH = 23h

BX = task ID (FFFFh for current task)

DS:SI -> entry point of the new Device Driver Terminal

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

INT D4


INT D4 24-- - PC-MOS/386 v5.01 - GET OPERATING SYSTEM SERIAL NUMBER

undocumented function

Category: O - other operating systems

Inp.:

AH = 24h

Return: DS:DX -> '$'-terminated string containing the serial number

INT D4


INT D4 25-- - PC-MOS/386 v5.01 - IDENTIFY LOAD ADDRESS OF DEVICE DRIVER LOCATION

Category: O - other operating systems

Inp.:

AH = 25h

DX = driver's CS value

Return: AX = segment address of driver in system memory pool

    (0000h if the driver is not within the system memory pool)

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

INT D4


INT D4 26-- - PC-MOS/386 v5.01 - GET SYSTEM CONTROL BLOCK SEGMENT/SELECTOR

Category: O - other operating systems

Inp.:

AH = 26h

Return: DX = segment/selector of the System Control Block (see #2587)

Note:	this function supersedes AH=02h

SeeAlso: AH=02h,AH=27h,AH=28h,AH=29h,AH=2Ah

INT D4


INT D4 27-- - PC-MOS/386 v5.01 - GET TASK CONTROL BLOCK SEGMENT/SELECTOR

Category: O - other operating systems

Inp.:

AH = 27h

BX = task ID (FFFFh if current task) (see AH=19h)

Return: CF clear if successful

    DX = segment/selector for the Task Control Block (see #2589)

CF set on error

    AX = error code (INT 21/AH=59h)

Note:	this function supersedes AH=04h

SeeAlso: AH=26h,AH=28h,AH=29h,AH=2Ah

INT D4


INT D4 28-- - PC-MOS/386 v5.01 - GET CONTROL BLOCK DATA FROM SCB OR TCB

Category: O - other operating systems

Inp.:

AH = 28h

BX = offset into control block at which to start reading

CX = number of bytes to read

DX = segment/selector of control block obtained via AH=26h or AH=27h

ES:DI -> buffer for data

Return: CF clear if successful

CF set on error

    AX = error code (see also INT 21/AH=59h)

05h access denied due to an invalid segment/selector

SeeAlso: AH=26h,AH=27h,AH=29h,AH=2Ah

INT D4


INT D4 29-- - PC-MOS/386 v5.01 - WRITE CONTROL BLOCK DATA INTO SCB OR TCB

Category: O - other operating systems

Inp.:

AH = 29h

BX = offset into control block at which to start writing

CX = number of bytes to write

DX = segment/selector of control block obtained via AH=26h or AH=27h

DS:SI -> buffer containing data to be written

Return: CF clear if successful

CF set on errro

    AX = error code (see also INT 21/AH=59h)

05h access denied due to an invalid segment/selector

Note:	 this function performs no bounds checking

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=26h,AH=27h,AH=28h,AH=2Ah

INT D4


INT D4 2A-- - PC-MOS/386 v5.01 - SWAP CONTROL BLOCK DATA OF SCB OR TCB

Category: O - other operating systems

Inp.:

AH = 2Ah

BX = offset into control block at which to start swap

CX = number of bytes to swap

DX = segment/selector of control block obtained via AH=26h or AH=27h

DS:SI -> buffer containing new data and to receive current data

Return: CF clear if successful

CF set on error

    AX = error code (see also INT 21/AH=59h)

05h access denied due to an invalid segment/selector

Note:	the interrupts are disabled during the swap to prevent corruption

SeeAlso: AH=26h,AH=27h,AH=28h,AH=29h

INT D4


INT D4 2C-- - PC-MOS/386 v5.01 - GET/SET SPOOLER PARAMETERS

Category: O - other operating systems

Inp.:

AH = 2Ch

AL = function

    00h set spooler timeout

CX = timout value in seconds

    01h get spooler timeout

Return: CX = current timeout in seconds

    02h get spooler parameters

Return: CH = priority (00h-09h)

CL = disposition (d, h, i, n, s)

SI = class (a - z)

    03h set spooler parameters

CH = priority (00h-09h)

CL = disposition (d, h, i, n, s)

SI = class (a - z)

BX = task ID (FFFFh for current task)

DX = LPT number

Return: CF clear if successful

CF set on error

    AX = error code (see #0885 at INT 21/AH=59h)

SeeAlso: AH=00h,AH=02h,AH=03h

INT D4


INT D4 2D-- - PC-MOS/386 v5.01 - GET MAXIMUM TASK SIZE

Category: O - other operating systems

Inp.:

AH = 2Dh

Return: DX = maximum task size in paragraphs

BX = start address of task space

Program: PC-MOS/386 is a multitasking/multiuser MS-DOS-compatible operating

  system by The Software Link, Inc.

SeeAlso: AH=1Fh,AH=22h

INT D4


INT D5 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D4"BASIC",INT D6"BASIC"

INT D5


INT D5 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D5


INT D6 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D5"BASIC",INT D7"BASIC"

INT D6


INT D6 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D6


INT D7 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D6"BASIC",INT D8"BASIC"

INT D7


INT D7 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D7


INT D8 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D7"BASIC",INT D9"BASIC"

INT D8


INT D8 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D8


INT D8 ---- - Screen Thief v1.00 - RELOCATED IRQ0

Category: H - hardware

Inp.:

Range:	INT 78h to INT E0h, selected by commandline switch

Note:	Screen Thief relocates IRQs 0 through 7 to INT D8 to INT DF by default,

  but may be directed via a commandline switch to use any range

  starting at a multiple of 8 between 78h and E0h

SeeAlso: INT 08"IRQ0",INT 2D/AL=10h"Screen Thief",INT 50"DESQview"

SeeAlso: INT D9"Screen Thief"

INT D8


INT D9 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D8"BASIC",INT DA"BASIC"

INT D9


INT D9 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT D9


INT D9 ---- - Screen Thief v1.00 - RELOCATED IRQ1

Category: H - hardware

Inp.:

Range:	INT 79h to INT E1h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 09"IRQ1",INT D8"Screen Thief",INT DA"Screen Thief"

INT D9


INT DA ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT D9"BASIC",INT DB"BASIC"

INT DA


INT DA ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT DA


INT DA ---- - Screen Thief v1.00 - RELOCATED IRQ2

Category: H - hardware

Inp.:

Range:	INT 7Ah to INT E2h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 0A"IRQ2",INT D9"Screen Thief",INT DB"Screen Thief"

INT DA


INT DB ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT DA"BASIC",INT DC"BASIC"

INT DB


INT DB ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT DB


INT DB ---- - Screen Thief v1.00 - RELOCATED IRQ3

Category: H - hardware

Inp.:

Range:	INT 7Bh to INT E3h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 0B"IRQ3",INT DA"Screen Thief",INT DC"Screen Thief"

INT DB


INT DC ---- - PC/370 v4.1- - API

Category: u - emulators

Inp.:

SeeAlso: INT 60"PC/370"

INT DC


INT DC ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT DB"BASIC",INT DD"BASIC"

INT DC


INT DC ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

Category: r - runtime support

Inp.:

INT DC


INT DC ---- - Screen Thief v1.00 - RELOCATED IRQ4

Category: H - hardware

Inp.:

Range:	INT 7Ch to INT E4h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 0C"IRQ4",INT DB"Screen Thief",INT DD"Screen Thief"

INT DC


INT DD ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT DC"BASIC",INT DE"BASIC"

INT DD


INT DD ---- - STSC APL*PLUS/PC v9.0 - PLACE KEYSTROKE EVENTS IN INPUT BUFFER

Category: r - runtime support

Inp.:

BX = where to place keystrokes

    FFFFh insert before current buffer contents

    0000h replace current contents

    0001h insert after current contents

CX = number of keystroke events to insert

ES:SI -> data to be placed into buffer (list of WORD key codes)

    4000h + N = normal ASCII keystroke N (N = 00h to FFh)

    4100h + N = extended ASCII keystroke N (N = 03h to 84h)

SeeAlso: INT 16/AH=05h

INT DD


INT DD ---- - Screen Thief v1.00 - RELOCATED IRQ5

Category: H - hardware

Inp.:

Range:	INT 7Dh to INT E5h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 0D"IRQ5",INT DC"Screen Thief",INT DE"Screen Thief"

INT DD


INT DE ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT DD"BASIC",INT DF"BASIC"

INT DE


INT DE ---- - APL*PLUS/PC - ???

Category: r - runtime support

Inp.:

Note:	appears to be the same as INT 16

INT DE


INT DE ---- - Screen Thief v1.00 - RELOCATED IRQ6

Category: H - hardware

Inp.:

Range:	INT 7Eh to INT E6h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 0E"IRQ6",INT DD"Screen Thief",INT DF"Screen Thief"

INT DE


INT DF ---- - Victor 9000/Sirius 1 - SuperBIOS

Category: b - vendor-specific BIOS extensions

Inp.:

INT DF


INT DF ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT DE"BASIC",INT E0"BASIC"

INT DF


INT DF ---- - APL*PLUS/PC - SAME AS INT 10

Category: r - runtime support

Inp.:

SeeAlso: INT 10

INT DF


INT DF ---- - Screen Thief v1.00 - RELOCATED IRQ7

Category: H - hardware

Inp.:

Range:	INT 7Fh to INT E7h, selected by commandline switch

Note:	(see INT D8"Screen Thief")

SeeAlso: INT 0F"IRQ7",INT DE"Screen Thief"

INT DF


INT E0 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT 80"BASIC",INT DF"BASIC",INT E1"BASIC"

INT E0


INT E0 ---- - APL*PLUS/PC - RESTIME HIGH-RESOLUTION TIMER FOR QUAD MF FUNCTION

Category: r - runtime support

Inp.:

SeeAlso: INT CF"APL"

INT E0


INT E0 ---- - VIRUS - "Micro-128" - ???

Category: v - virus/antivirus

Inp.:

Note:	Micro-128 also overwrites the upper half of the interrupt table

SeeAlso: INT 9E"VIRUS",INT F1"VIRUS"

INT E0


INT E0 ---- - DeskMate (Tandy) - DESK EXECUTIVE API

Category: - - (none)

Inp.:

AX = function code (numerous)

parameters passed in BX, DX, ES, DI, and/or BP

Return: AX = return from function

Program: DeskMate is a proprietary GUI from Tandy distributed with several

  models of the Tandy 1000's, 2500's, 3000's, and laptops.  Retail

  and runtime versions also exist.  Some Tandy's are designed to

  boot directly into DeskMate.

SeeAlso: INT 15/AX=7002h,INT E1"DeskMate"

INT E0


INT E0 ---- - CP/M-86, Concurrent CP/M, DR Multiuser DOS - FUNCTION CALLS

Category: O - other operating systems

Inp.:

CL = function number (see #2602,#2603)

DS,DX = parameters

Return: as appropriate for function

CX is often the error code (see #2604)

Notes:	several functions are covered in more detail in following entries

most of these calls are also supported by Digital Research's DOS Plus

  v2.1; the unsupported functions are 26h,29h-2Bh,3Ah,3Dh-62h,71h-8Ch,

  90h-92h,94h-97h,9Bh-ABh, and AEh-FFh

SeeAlso: INT 21/AX=4459h,INT 21/AH=E0h"DOS Plus"

INT E0


INT E0 ---- - DR Multiuser DOS - "A_READ" - READ CHARACTER FROM AUX DEVICE

Category: O - other operating systems

Inp.:

CL = 03h

Return: AL = ASCII character

Notes:	A_READ reads the next 8-bit character from the logical auxilliary

  input device (AUXn:); control is not returned to the calling

  process until a character has been read.

if another process owns AUX, this call blocks until the device becomes

  available

SeeAlso: INT 21/AH=03h,INT E0/CL=04h,INT E0/CL=07h,INT E0/CL=A5h,INT E0/CL=ACh

INT E0


INT E0 ---- - DR Multiuser DOS - "A_WRITE" - WRITE CHARACTER TO AUX DEVICE

Category: O - other operating systems

Inp.:

CL = 04h

DL = ASCII character

Return: nothing

Note:	if another process owns AUX, this call blocks until the device becomes

  available

SeeAlso: INT 21/AH=04h,INT E0/CL=03h,INT E0/CL=08h,INT E0/CL=A5h,INT E0/CL=ADh

INT E0


INT E0 ---- - DR Multiuser DOS - "A_STATIN" - GET INPUT STATUS OF AUX DEVICE

Category: O - other operating systems

Inp.:

CL = 07h

Return: AL = status

    00h not ready

    FFh character available

Desc:	determine whether the current AUX device has input available

SeeAlso: INT E0/CL=03h,INT E0/CL=08h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_STATOUT" - GET OUTPUT STATUS OF AUX DEVICE

Category: O - other operating systems

Inp.:

CL = 08h

Return: AL = status

    00h not ready

    FFh ready for output

Desc:	determine whether the current AUX device is able to accept more output

SeeAlso: INT E0/CL=04h,INT E0/CL=07h

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "S_MEMORY" - RESERVE MEMORY IN GLOBAL AREA

Category: O - other operating systems

Inp.:

CL = 59h

DX = size in bytes

Return: AX = status

    FFFFh failed

    other successful

ES:BX -> reserved memory

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_MAKE" - CREATE MESSAGE QUEUE

Category: O - other operating systems

Inp.:

CL = 86h

DS:DX -> queue descriptor (see #2605)

Return: AX = status (0000h success, FFFFh failure)

CX = error code (see #2604)

SeeAlso: INT E0/CL=87h

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_OPEN" - OPEN MESSAGE QUEUE

Category: O - other operating systems

Inp.:

CL = 87h

DS:DX -> queue parameter block (see #2606)

Return: AX = status (0000h success, FFFFh failure)

CX = error code (see #2604)

SeeAlso: INT E0/CL=86h,INT E0/CL=89h

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_READ" - READ MESSAGE QUEUE

Category: O - other operating systems

Inp.:

CL = 89h

DS:DX -> queue parameter block (see #2606)

Return: AX = status (0000h success, FFFFh failure)

CX = error code (see #2604)

SeeAlso: INT E0/CL=87h,INT E0/CL=8Ah,INT E0/CL=8Bh

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_CREAD" - CONDITIONALLY READ MSG QUEUE

Category: O - other operating systems

Inp.:

CL = 8Ah

DS:DX -> queue parameter block (see #2606)

Return: AX = status (0000h success, FFFFh failure)

CX = error code (see #2604)

SeeAlso: INT E0/CL=87h,INT E0/CL=89h,INT E0/CL=8Ch

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_WRITE" - WRITE MESSAGE QUEUE

Category: O - other operating systems

Inp.:

CL = 8Bh

DS:DX -> queue parameter block (see #2606)

Return: AX = status (0000h success, FFFFh failure)

CX = error code (see #2604)

SeeAlso: INT E0/CL=89h,INT E0/CL=8Ch

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_CWRITE" - CONDITIONALLY WRITE MSG QUEUE

Category: O - other operating systems

Inp.:

CL = 8Ch

DS:DX -> queue parameter block (see #2606)

Return: AX = status (0000h success, FFFFh failure)

CX = error code (see #2604)

SeeAlso: INT E0/CL=8Ah,INT E0/CL=8Bh

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "P_DISPATCH" - CALL DISPATCHER

Category: O - other operating systems

Inp.:

CL = 8Eh

DX = FFFFh (optional) to force dispatch

Return: nothing

Desc:	allow other processes of the same or higher priority to run if they

  are ready

Note:	if DX=FFFFh, a dispatch is forced even if no other process is ready

SeeAlso: INT E0/CL=91h

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "P_PRIORITY" - SET PROCESS PRIORITY

Category: O - other operating systems

Inp.:

CL = 91h

DL = new priority (00h highest to FFh lowest)

Note:	sets priority of calling process; transient processes are initialized

  to priority C8h

SeeAlso: INT E0/CL=8Eh

INT E0


INT E0 ---- - ConcCP/M,DR Multiuser DOS - "C_DETACH" - DETACH FROM DEFAULT CONSOLE

Category: O - other operating systems

Inp.:

CL = 93h

Return: AX = status

    0000h successfully detached

    FFFFh detach failed

SeeAlso: INT E0/CL=A6h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_ATTACH" - ATTACH AUX DEVICE

Category: O - other operating systems

Inp.:

CL = A5h

Desc:	attaches the default auxiliary device to the calling process unless

  it is already attached to another process, in which case the call

  blocks until the device becomes available

Note:	this call should be used before attempting to read or write from

  the AUX device; however, the I/O calls internally call this function

  to ensure device ownership

SeeAlso: INT E0/CL=03h,INT E0/CL=04h,INT E0/CL=A6h,INT E0/CL=A7h,INT E0/CL=A8h

SeeAlso: INT E0/CL=ACh,INT E0/CL=ADh,INT E0/CL=B0h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_DETACH" - DETACH FROM AUX DEVICE

Category: O - other operating systems

Inp.:

CL = A6h

Return: AX = status

    0000h successfully detached

    FFFFh detach failed

CX = error code

SeeAlso: INT E0/CL=93h,INT E0/CL=A5h,INT E0/CL=A7h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_CATTACH" - CONDITIONALLY ATTACH TO AUX DEVICE

Category: O - other operating systems

Inp.:

CL = A7h

Return: AX = status

    0000h attached

    FFFFh unable to attach

Desc:	attaches the default auxiliary device to the calling process if it is

  available

Note:	does not block if the device is already in use

SeeAlso: INT E0/CL=A5h,INT E0/CL=A6h,INT E0/CL=A8h,INT E0/CL=B0h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_SET" - SET DEFAULT AUX DEVICE NUMBER

Category: O - other operating systems

Inp.:

CL = A8h

DL = auxiliary device number

Return: AX = status

    0000h successful

    FFFFh failed

CX = error code

Desc:	specify which physical device will become AUX

SeeAlso: INT E0/CL=A5h,INT E0/CL=A9h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_GET" - GET DEFAULT AUX DEVICE NUMBER

Category: O - other operating systems

Inp.:

CL = A9h

Return: AL = current default auxiliary device number

Desc:	determine which physical device is currently AUX

SeeAlso: INT E0/CL=A8h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_READBLK" - READ STRING FROM AUX DEVICE

Category: O - other operating systems

Inp.:

CL = ACh

DS:DX -> character control block (CHCB) (see #2607)

Return: AX = number of characters read

Desc:	read characters from the default auxiliary (AUXn:) device into a buffer

  until the buffer is full or the device is no longer ready

Notes:	if the device is initially not ready, blocks until at least one

  character has been read

if another process owns AUX, this call blocks until the device becomes

  available

SeeAlso: INT E0/CL=03h,INT E0/CL=A5h,INT E0/CL=ADh

INT E0


INT E0 ---- - DR Multiuser DOS - "A_WRITEBLK" - WRITE STRING TO AUX DEVICE

Category: O - other operating systems

Inp.:

CL = ADh

DS:DX -> character control block (see #2607)

Return: AX = number of characters written

Note:	does not return until at least one character has been written

SeeAlso: INT E0/CL=04h,INT E0/CL=A5h,INT E0/CL=ACh

INT E0


INT E0 ---- - DR Multiuser DOS - "A_CONFIG" - GET/SET AUX DEVICE PARAMETERS

Category: O - other operating systems

Inp.:

CL = B0h

DX:DX -> AUX device parameter block (see #2608)

Return: AX = status

    0000h successful

parameter block updated

    FFFFh failed

CX = error code

SeeAlso: INT E0/CL=A5h,INT E0/CL=B1h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_CONTROL" - GET/SET AUX CONTROL PARAMETERS

Category: O - other operating systems

Inp.:

CL = B1h

DS:DX -> AUX device control block (see #2611)

Return: AX = status

    0000h successful

control block updated

    FFFFh failed

CX = error code

SeeAlso: INT E0/CL=B0h,INT E0/CL=B2h

INT E0


INT E0 ---- - DR Multiuser DOS - "A_BREAK" - SEND BREAK TO AUX DEVICE

Category: O - other operating systems

Inp.:

CL = B2h

DX = duration of break in system ticks (0001h-FFFFh)

Return: AX = status

    0000h successful

break signal completed

    FFFFh failed

CX = error code

Note:	if the AUX device is currently owned by another process, this call will

  block until the device becomes available

SeeAlso: INT E0/CL=A5h,INT E0/CL=B1h

INT E0


INT E0 ---- - DR Multiuser DOS - "P_DELAY" - DELAY EXECUTION

Category: O - other operating systems

Inp.:

CL = BDh

DX = delay in system ticks

Return: after the delay elapses

Notes:	the length of a system tick is installation-dependent (typically

  1/50 or 1/60 second); the length may be determined by reading the

  TICKSPERSEC value from the system data segment

the actual delay before the process is rescheduled to run may be up to

  one tick longer than requested; the delay between rescheduling and

  actual execution cannot be predicted if higher-priority processes

  are awaiting a turn at the CPU

SeeAlso: INT 15/AH=86h,INT 1A/AX=FF01h,INT 2F/AX=1224h,INT 62/AX=0096h

INT E0


INT E0 0000 - PCROBOTS v1.41 - "SWAPTASK" - END CURRENT ROBOT'S TURN

Category: g - games

Inp.:

AX = 0000h

Program: PCROBOTS is P.D. Smith's adaptation of Tom Poindexter's CROBOTS, in

  which specially-written .COM or .EXE programs form robots battling

  each other in a user-defined arena

INT E0


INT E0 0001 - PCROBOTS v1.41 - "MOVEMENT" - START MOVING

Category: g - games

Inp.:

AX = 0001h

BX = speed (0-maximum for robot)

CX = direction (0-359 degrees)

Notes:	the speed will change to the specified value at the maximum

  acceleration the robot is capable of; if the robot is already moving

  faster than its maximum maneuverability speed, it will not be able

  to change direction

this call also terminates the current robot's turn

SeeAlso: AX=0000h,AX=0002h,AX=0003h

INT E0


INT E0 0002 - PCROBOTS v1.41 - "SCAN" - SCAN FOR OTHER ROBOTS IN THE GIVEN DIRECTION

Category: g - games

Inp.:

AX = 0002h

BX = direction (0-359 degrees)

CX = resolution (0-45 degrees)

Return: AX = status

    FFFFh if nothing detected

    else robot ID (0-19)

BX = range to detected robot

Notes:	the scan searches within CX degrees to either side of the specified

  direction

the scanner will see right through walls, but shells will not pass

  through walls

this call also terminates the current robot's turn

SeeAlso: AX=0000h,AX=0001h,AX=0003h

INT E0


INT E0 0003 - PCROBOTS v1.41 - "SHOOT" - FIRE A SHELL AT ANOTHER ROBOT

Category: g - games

Inp.:

AX = 0003h

BX = direction (0-359 degrees)

CX = range (0-700)

Return: AX = status (0000h not fired, else ID of shell fired)

Notes:	up to seven shells may be in flight for a robot at one time; the cannon

  takes 50 ticks to reload

this call also terminates the current robot's turn

SeeAlso: AX=0000h,AX=0001h,AX=0002h,AX=002Ch

INT E0


INT E0 0010 - PCROBOTS v1.41 - "GETXY" - GET ROBOT'S CURRENT POSITION

Category: g - games

Inp.:

AX = 0010h

Return: BX = current X coordinate (0-999)

CX = current Y coordinate (0-999)

INT E0


INT E0 0011 - PCROBOTS v1.41 - "TRANSMIT" - SEND DATA TO ANOTHER ROBOT

Category: g - games

Inp.:

AX = 0011h

BX = target robot ID

CX = data to be sent

Return: AX = status (0000h data could not be sent, 0001h data sent)

Note:	this call costs one unit of battery power

INT E0


INT E0 0012 - PCROBOTS v1.41 - "RECEIVE" - GET DATA FROM OTHER ROBOTS

Category: g - games

Inp.:

AX = 0012h

Return: AX = status

    0000h no data available

    0001h data retrieved

BX = sender's ID

CX = data

Note:	each robot has a 20-word receive FIFO; if the FIFO is full, other

  robots will be unable to send more data until some is read

INT E0


INT E0 0013 - PCROBOTS v1.41 - "DAMAGE" - DETERMINE HOW MUCH DAMAGE SUSTAINED

Category: g - games

Inp.:

AX = 0013h

Return: BX = damage status

Note:	the initial value depends on configuration, but is typically 100; as

  the robot is damaged, it decreases

INT E0


INT E0 0014 - PCROBOTS v1.41 - "SPEED" - DETERMINE HOW FAST ROBOT IS MOVING

Category: g - games

Inp.:

AX = 0014h

Return: BX = current speed

INT E0


INT E0 0015 - PCROBOTS v1.41 - "BATTERY" - DETERMINE HOW MUCH BATTERY POWER LEFT

Category: g - games

Inp.:

AX = 0015h

Return: BX = current battery charge

Note:	the battery starts off with 1000 units of charge, and is constantly

  being charged by solar panels and constantly discharged by motion;

  the battery is charged at 4 units per turn and discharged at

  0.1*speed units per turn.

INT E0


INT E0 0016 - PCROBOTS v1.41 - "TICKS" - DETERMINE HOW LONG SINCE GAME STARTED

Category: g - games

Inp.:

AX = 0016h

Return: BX:CX = number of game ticks elapsed (not related to real time)

INT E0


INT E0 0017 - PCROBOTS v1.41 - "L_SIN" - GET SCALED SINE OF AN ANGLE

Category: g - games

Inp.:

AX = 0017h

BX = angle (0-359 degrees)

Return: BX:CX = 100000*sine of angle

SeeAlso: AX=0018h,AX=0019h,AX=001Ah,AX=001Bh

INT E0


INT E0 0018 - PCROBOTS v1.41 - "L_COS" - GET SCALED COSINE OF AN ANGLE

Category: g - games

Inp.:

AX = 0018h

BX = angle (0-359 degrees)

Return: BX:CX = 100000*cosine of angle

SeeAlso: AX=0017h,AX=0019h,AX=001Ah

INT E0


INT E0 0019 - PCROBOTS v1.41 - "L_TAN" - GET SCALED TANGENT OF AN ANGLE

Category: g - games

Inp.:

AX = 0019h

BX = angle (0-359 degrees)

Return: BX:CX = 100000*tangent of angle

SeeAlso: AX=0017h,AX=0018h,AX=001Ah

INT E0


INT E0 001A - PCROBOTS v1.41 - "L_ATAN" - GET ANGLE GIVEN SCALED TANGENT

Category: g - games

Inp.:

AX = 001Ah

BX:CX = 100000*tangent of an angle

Return: AX = angle (-90 to +90 degrees)

SeeAlso: AX=0017h,AX=0018h,AX=0019h

INT E0


INT E0 001B - PCROBOTS v1.41 - "SQRT" - DETERMINE SQUARE ROOT OF A NUMBER

Category: g - games

Inp.:

AX = 001Bh

BX:CX = value

Return: BX:CX = square root

SeeAlso: AX=0017h

INT E0


INT E0 001C - PCROBOTS v1.41 - "SET_PATTERN" - SPECIFY ROBOT'S DISPLAY IMAGE

Category: g - games

Inp.:

AX = 001Ch

BX:CX -> pattern array

Note:	the pattern array consists of five bytes, the low five bits of each

  specifying the bit pattern for one line of the robot's screen display

INT E0


INT E0 001D - PCROBOTS v1.41 - "DEBUG_FLAG" - SET/CLEAR MARKERS NEXT TO ROBOT'S NAME

Category: g - games

Inp.:

AX = 001Dh

BX = flag number (0 or 1)

CX = new value (0 reset, 1 set)

Program: PCROBOTS is P.D. Smith's adaptation of Tom Poindexter's CROBOTS, in

  which specially-written .COM or .EXE programs form robots battling

  each other in a user-defined arena

Note:	the two flag markers may be used for any purpose, typically for

  debugging to provide a visual display of progress

INT E0


INT E0 001E - PCROBOTS v1.41 - "BUY_ARMOUR" - BUY OR SELL ARMOR FOR ROBOT

Category: g - games

Inp.:

AX = 001Eh

BX = number of armor units to buy (negative to sell)

Note:	each armor unit is worth 50 battery units; the robot's armor rating

  will not go above its initial rating, so attempts to purchase more

  will waste battery units

SeeAlso: AX=001Fh

INT E0


INT E0 001F - PCROBOTS v1.41 - "BUY_SHELLS" - BUY ADDITIONAL CANNON SHELLS

Category: g - games

Inp.:

AX = 001Fh

BX = number of shells to buy

Note:	each shell costs ten battery units

SeeAlso: AX=001Eh,AX=0020h

INT E0


INT E0 0020 - PCROBOTS v1.41 - "SHELLS LEFT" - DETERMINE HOW MANY SHELLS ROBOT HAS

Category: g - games

Inp.:

AX = 0020h

Return: BX = number of shells remaining

SeeAlso: AX=001Fh

INT E0


INT E0 0021 - PCROBOTS v1.41 - "GET LOCAL MAP"

Category: g - games

Inp.:

AX = 0021h

BX:CX -> 81-byte buffer for map (see #2612)

Return: buffer filled with 9x9 area of map centered on robot's position

INT E0


INT E0 0022 - PCROBOTS v1.41 - "INVISIBILITY" - CONTROL ROBOT'S INVISIBILITY DEVICE

Category: g - games

Inp.:

AX = 0022h

BX = new state (0000h become visible, 0001h become invisible)

Notes:	this function has no effect if the robot is not capable of invisibility

the robot can only stay invisible for 100 turns, after which it will

  automatically become visible; it must also be remain visible for

  as many turns as it was invisible before it can turn invisible

  again

SeeAlso: AX=0024h,AX=0080h

INT E0


INT E0 0023 - PCROBOTS v1.41 - "GET_SHELL_STATUS" - FIND OUT WHAT HAPPENED TO SHELL

Category: g - games

Inp.:

AX = 0023h

Return: BX = status of last shell to land

    0000h missed completely

    0001h hit a wall

    0002h hit a robot within 50-square radius

    0003h hit a robot within 25-square radius

    0004h hit a robot within 5-square radius

INT E0


INT E0 0024 - PCROBOTS v1.41 - "IS_INVISIBLE" - DETERMINE WHETHER ROBOT IS INVISIBLE

Category: g - games

Inp.:

AX = 0024h

Return: BX = visibility (0000h visible, 0001h invisible)

SeeAlso: AX=0022h,AX=0080h

INT E0


INT E0 0025 - PCROBOTS v1.41 - "L_ATAN2" - GET ARCTANGENT

Category: g - games

Inp.:

AX = 0025h

BX = Y

CX = X

Return: AX = angle (arctangent of Y/X)

INT E0


INT E0 0026 - PCROBOTS v1.41 - "GET_ROBOT_ID" - DETERMINE CURRENT ROBOT'S IDENTIFIER

Category: g - games

Inp.:

AX = 0026h

Return: AX = robot ID

INT E0


INT E0 0027 - PCROBOTS v1.41 - "REGISTER_IFF" - REGISTER FRIEND/FOE IDENT STRING

Category: g - games

Inp.:

AX = 0027h

BX:CX = ASCIZ IFF string

Note:	the IFF string may only be set once

SeeAlso: AX=0028h,AX=0029h

INT E0


INT E0 0028 - PCROBOTS v1.41 - "CHECK_IFF" - QUERY FRIEND/FOE IDENTIFICATION STRING

Category: g - games

Inp.:

AX = 0028h

BX = robot ID to test

Return: AX = status

    0000h IFF strings match

    0001h IFF strings differ or invalid robot ID

SeeAlso: AX=0027h

INT E0


INT E0 0029 - PCROBOTS v1.41 - "REGISTER_NAME" - SPECIFY ROBOT'S NAME

Category: g - games

Inp.:

AX = 0029h

BX:CX -> ASCIZ name string

Note:	the name may only be set once

SeeAlso: AX=0027h,AX=002Ah

INT E0


INT E0 002A - PCROBOTS v1.41 - "FIND_NAME" - SEARCH FOR ROBOT WITH GIVEN NAME

Category: g - games

Inp.:

AX = 002Ah

BX:CX -> ASCIZ name string

DX = first ID to check

Return: AX = robot ID or FFFFh if no robot with specified name

SeeAlso: AX=0028h,AX=0029h,AX=002Bh

INT E0


INT E0 002B - PCROBOTS v1.41 - "GET_TEAM_ID" - DETERMINE TEAM MEMBERSHIP OF ROBOT

Category: g - games

Inp.:

AX = 002Bh

Return: AX = team ID (0-2) or FFFFh if 'loner'

SeeAlso: AX=0029h

INT E0


INT E0 002C - PCROBOTS v1.41 - "GET_ASHELL_STATUS" - FIND OUT WHAT HAPPENED TO SHELL

Category: g - games

Inp.:

AX = 002Ch

BX = shell ID

Return: AX = status

    0000h missed completely

    0001h hit a wall

    0002h hit a robot within a 50-square radius

    0003h hit a robot within a 25-square radius

    0004h hit a robot within a 5-square radius

    0005h shell not known (too old or not yet fired)

    0006h shell still in flight

SeeAlso: AX=0003h

INT E0


INT E0 002D - PCROBOTS v1.41 - "REGISTER_X" - SELECT AUTOMATIC X POSITION UPDATES

Category: g - games

Inp.:

AX = 002Dh

BX:CX -> X word variable

Return: AX = status (0001h OK, 0000h problem with address)

Note:	after this call, PCROBOTS will automatically update the specified

  word whenever the robot moves

SeeAlso: AX=002Eh

INT E0


INT E0 002E - PCROBOTS v1.41 - "REGISTER_Y" - SELECT AUTOMATIC Y POSITION UPDATES

Category: g - games

Inp.:

AX = 002Eh

BX:CX -> Y word variable

Return: AX = status (0001h OK, 0000h problem with address)

Note:	after this call, PCROBOTS will automatically update the specified

  word whenever the robot moves

SeeAlso: AX=002Dh

INT E0


INT E0 0080 - PCROBOTS v1.41 - "CONFIGURE" - CUSTOMIZE ROBOT

Category: g - games

Inp.:

AX = 0080h

BX = basic configuration (see #2613)

CX = advanced configuration (see #2614)

Return: AX = status (0001h OK, 0000h not first call in program)

Program: PCROBOTS is P.D. Smith's adaptation of Tom Poindexter's CROBOTS, in

  which specially-written .COM or .EXE programs form robots battling

  each other in a user-defined arena

Notes:	a maximum of ten points may be allocated to the robot; if you attempt

  to allocate more, some items will be given a value of zero.  If this

  function is not called, each attribute is set to the default value

  of 2.

if the invisibility option is chosen, the robot will start with only

  900 cannon shells instead of the default 1000

INT E0


INT E1 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E1


INT E1 ---- - PC Cluster Disk Server Information (NOT A VECTOR!)

Category: N - network

Inp.:

Desc:	points at a data table

SeeAlso: INT E2

INT E1


INT E1 ---- - MP/M-86, - ALTERNATE CP/M-86 FUNCTION CALLS

Category: O - other operating systems

Inp.:

CL = function number (see #2602,#2603 at INT E0"CP/M")

DS,DX = parameters

Return: as appropriate for function

CX is often the error code (see #2604 at INT E0"CP/M")

Desc:	used by some applications which alter CP/M functions while running a

  child program, to store the original INT E0 vector before

  intercepting INT E0

SeeAlso: INT E0"CP/M"

INT E1


INT E1 ---- - DeskMate (Tandy) - TASK DATA SEGMENTS (NOT A VECTOR!)

Category: - - (none)

Inp.:

Desc:	used to store data; the	low word of the vector is the data segment for

  the first task; the high word is the data segment of the second task

  (DeskMate supports 2-way task switching between small- or

  medium-model applications)

Program: DeskMate is a proprietary GUI from Tandy distributed with several

  models of the Tandy 1000's, 2500's, 3000's, and laptops.  Retail

  and runtime versions also exist.  Some Tandy's are designed to

  boot directly into DeskMate.

SeeAlso: INT E0"DeskMate"

INT E1


INT E2 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E2


INT E2 ---- - PC Cluster Program - RELOCATED INT 1C

Category: N - network

Inp.:

SeeAlso: INT 1C

INT E2


INT E3 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E3


INT E4 0005 - Logitech Modula v2.0 - MonitorEntry

Category: r - runtime support

Inp.:

AX = 0005h

BX = priority

SeeAlso: AX=0006h

INT E4


INT E4 0006 - Logitech Modula v2.0 - MonitorExit

Category: r - runtime support

Inp.:

AX = 0006h

SeeAlso: AX=0005h

INT E4


INT E4 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E4


INT E5 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT E5


INT E6 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E6


INT E6 00-- - Linux DOSEMU - INSTALLATION CHECK

Category: O - other operating systems

Inp.:

AH = 00h

Return: AX = AA55h if installed

    BX = DOSEMU version number * 100 (decimal)

    CX = patchlevel

SeeAlso: AH=FFh

INT E6


INT E6 01-- - Linux DOSEMU - REGISTER DUMP

Category: O - other operating systems

Inp.:

AH = 01h

SeeAlso: AH=00h

INT E6


INT E6 02-- - Linux DOSEMU - SET I/O PORT PERMISSIONS

Category: O - other operating systems

Inp.:

AH = 02h

BX = base I/O port address

CX = number of consecutive I/O ports

CF set to allow DOS to use ports

CF clear if DOS should not be allowed to use ports

SeeAlso: AH=00h

INT E6


INT E6 05-- - Linux DOSEMU - STARTUP BANNER

Category: O - other operating systems

Inp.:

AH = 05h

SeeAlso: AH=00h

INT E6


INT E6 12-- - Linux DOSEMU - SET "HOGTHRESHOLD"

Category: O - other operating systems

Inp.:

AH = 12h

BX = new "hogthreshold" (00h-99h)

Desc:	specify how much CPU time DOSEMU may use

SeeAlso: AH=00h

INT E6


INT E6 22-- - Linux DOSEMU - GET EMS STATUS

Category: O - other operating systems

Inp.:

AH = 22h

SeeAlso: AH=00h

INT E6


INT E6 30-- - Linux DOSEMU - SET BOOTDISK FLAG

Category: O - other operating systems

Inp.:

AH = 30h

BX = new flag state (0 = false, 1 = true)

SeeAlso: AH=00h

INT E6


INT E6 50-- - Linux DOSEMU - EXECUTE UNIX COMMAND

Category: O - other operating systems

Inp.:

AH = 50h

ES:DX -> ASCIZ Unix command

SeeAlso: AH=00h,AH=51h

INT E6


INT E6 51-- - Linux DOSEMU - EXECUTE DOS COMMAND FROM UNIX

Category: O - other operating systems

Inp.:

AH = 51h

ES:DX -> ASCIZ DOS command

SeeAlso: AH=00h,AH=50h

INT E6


INT E6 80-- - Linux DOSEMU - GET CURRENT UNIX DIRECTORY

Category: O - other operating systems

Inp.:

AH = 80h

Return: ES:DX -> current Unix directory

AX = length of current directory name

SeeAlso: AH=00h,AH=81h

INT E6


INT E6 81-- - Linux DOSEMU - CHANGE CURRENT UNIX DIRECTORY

Category: O - other operating systems

Inp.:

AH = 81h

ES:DX -> ASCIZ directory name

SeeAlso: AH=00h,AH=80h

INT E6


INT E6 FF-- - Linux DOSEMU - TERMINATE

Category: O - other operating systems

Inp.:

AH = FFh

SeeAlso: AH=00h

INT E6


INT E7 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E7


INT E8 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT E8


INT E9 ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT E9


INT EA ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT EA


INT EB ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT EB


INT EC ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC

BASIC.COM/BASICA.COM do not restore vector on termination

INT EC


INT EC ---- - used by Alloy NTNX

Category: N - network

Inp.:

INT EC


INT EC ---- - Exact - RUNTIME INTERFACE MULTIPLEXOR

Category: r - runtime support

Inp.:

AX = function number (0000h to 0140h)

STACK:	DWORD address to return to

any arguments required by function

Return: STACK:	return address popped, but otherwise unchanged

Desc:	this is the interface from applications to the runtime system by Exact

  Automatisering B.V. of the Netherlands.  By using this interrupt,

  it can provide DLL-style capabilities under MS-DOS.

Note:	the interrupt handler removes the return address and flags placed on

  the stack by the INT EC, then jumps to the appropriate function

INT EC


INT ED ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

INT 80 through INT ED are modified but not restored by Direct Access

  v4.0, and may be left dangling by other programs written with the

  same version of compiled BASIC

SeeAlso: INT EC"BASIC",INT EE"BASIC"

INT ED


INT EE ---- - IBM ROM BASIC - used while in interpreter

Category: r - runtime support

Inp.:

Notes:	called by ROM BASIC, but pointed at IRET by BASIC.COM/BASICA.COM

BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT ED"BASIC",INT EE"BASIC"

INT EE


INT EF ---- - BASIC - ORIGINAL INT 09 VECTOR

Category: r - runtime support

Inp.:

Note:	BASIC.COM/BASICA.COM do not restore vector on termination

SeeAlso: INT EE"BASIC",INT F0"BASIC"

INT EF


INT EF ---- - GEM - INTERFACE

Category: O - other operating systems

Inp.:

CX = 0473h

DS:DX -> GEM parameter block

INT EF


INT F0 ---- - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR

Category: r - runtime support

Inp.:

Note:	BASICA.COM does not restore vector on termination

SeeAlso: INT EF"BASIC"

INT F0


INT F1 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F1


INT F1 ---- - SPEECH.COM - CONVERT TEXT STRING TO SPEECH

Category: s - sound/speech

Inp.:

DS:BX -> '$'-terminated text string

Program: SPEECH.COM is a resident text-to-speech converter by Douglas Sisco

INT F1


INT F1 ---- - Andy C. McGuire SPEECH.COM/SAY.COM

Category: s - sound/speech

Inp.:

SeeAlso: INT F2"SPEECH"

INT F1


INT F1 ---- - AQUEDUCT, PIPELINE - GET DATA AREA ADDRESS

Category: U - resident utilities

Inp.:

Return: AX:BX -> data area

Program: AQUEDUCT and PIPELINE are TSRs by James W. Birdsall to connect COM1

  and COM2 in software

Note:	The installation check consists of testing for the following signature

  immediately preceding the interrupt handler: "JWBtvv" where 't' is

  either "A" for AQUEDUCT or "P" for PIPELINE and "vv" is a two-digit

  version number

Index:	installation check;AQUEDUCT|installation check;PIPELINE

INT F1


INT F1 ---- - NetWare Remote Boot - INSTALLATION CHECK (NOT A VECTOR!)

Category: N - network

Inp.:

Note:	if this vector contains the value 5774654Eh ("NetW"), the remote boot

  BIOS extension is active, and access to the floppy disk is redirected

  to an image file in the server's SYS:LOGIN directory

SeeAlso: INT F2"NetWare",INT F3"NetWare",INT F4"NetWare"

INT F1


INT F1 ---- - VIRUS - "Violetta" - ???

Category: v - virus/antivirus

Inp.:

Note:	used but not chained by virus

SeeAlso: INT E0"VIRUS",INT FF"VIRUS"

INT F1


INT F1 01-- - Common ISDN API (CAPI) v1.1 - "API-REGISTER" - INITIALIZE CAPI

Category: - - (none)

Inp.:

AH = 01h

ES:BX -> buffer for CAPI's use (see note)

CX = minimum number of pending messages

DX = maximum simultaneous Level 3 connections

SI = maximum concurrent received B3 data blocks

DI = maximum B3 data block size

Return: AX = CAPI-assigned application ID

    0000h on error

BX = error number

    1001h registration error

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

the CAPI interrupt handler begins with a header which is nearly

  identical to the IBM Interrupt Sharing Protocol header

  (see #1363 at INT 2D), except that the short jump instruction to

  a hardware reset handler at offset 09h is replaced by the signature

  bytes "IA"

the maximum length of a message is fixed at 180 bytes; the standard

  document suggests using CX=10, DI=1, SI=7, and DI=130 for

  applications which use only a single connection and standard

  protocols

the total size of the application-provided buffer must be at least

  180*CX + DX*SI*DI bytes

SeeAlso: AH=02h,INT F1/AL=01h

Index:	installation check;Common ISDN API

INT F1


INT F1 --01 - Common ISDN API (CAPI) v2.0 - "CAPI_REGISTER" - INITIALIZE CAPI

Category: - - (none)

Inp.:

AL = 01h

AH = CAPI version number * 10 (14h for v2.0)

ES:BX -> buffer for CAPI's use (see note)

CX = number of bytes for message buffer

DX = maximum simultaneous logical (Level 3) connections

SI = maximum concurrent received B3 data blocks (min. 2)

DI = maximum B3 data block size (up to 2048 bytes)

Return: AX = CAPI-assigned application ID

    0000h on error

BX = error number

    1001h registration error

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

the CAPI interrupt handler begins with a header (see #2615) which is

  nearly identical to the IBM Interrupt Sharing Protocol header

  (see #1363 at INT 2D), except that the short jump instruction to

  a hardware reset handler at offset 09h is replaced by the signature

  bytes "IA"

the standard document suggests using 1024 + (1024*DX) bytes for the

  message buffer for typical applications

the total size of the application-provided buffer must be at least

  CX + DX*SI*DI bytes

SeeAlso: AH=01h,INT F1/AL=02h

Index:	installation check;Common ISDN API

INT F1


INT F1 02-- - Common ISDN API (CAPI) v1.1 - "API-RELEASE" - UNREGISTER FROM CAPI

Category: - - (none)

Inp.:

AH = 02h

DX = application ID (see AH=01h)

Return: AX = status (0000h,1002h) (see #2657)

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=01h,INT F1/AL=02h

INT F1


INT F1 --02 - Common ISDN API (CAPI) v2.0 - "CAPI_RELEASE" - UNREGISTER FROM CAPI

Category: - - (none)

Inp.:

AL = 02h

AH = CAPI version number * 10 (14h for v2.0)

DX = application ID (see INT F1/AL=01h)

Return: AX = status (0000h,11xxh) (see #2660)

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=02h,INT F1/AL=01h,INT F1/AL=03h

INT F1


INT F1 03-- - Common ISDN API (CAPI) v1.1 - "API-PUT-MESSAGE"

Category: - - (none)

Inp.:

AH = 03h

DX = application ID (see AH=01h)

ES:BX -> message to be sent (see #2658)

Return: AX = status (0000h,1002h,1003h,1004h,1005h) (see #2657)

Notes:	the caller is required to provide at least 512 bytes of stack space

the message buffer may be reused as soon as this call returns

SeeAlso: AH=01h,AH=04h,INT F1/AL=03h

INT F1


INT F1 --03 - Common ISDN API (CAPI) v2.0 - "CAPI_PUT_MESSAGE"

Category: - - (none)

Inp.:

AL = 03h

AH = CAPI version number * 10 (14h for v2.0)

DX = application ID (see INT F1/AL=01h)

ES:BX -> message to be sent (see #2658)

Return: AX = status (0000h,11xxh) (see #2660)

Notes:	the caller is required to provide at least 512 bytes of stack space

the message buffer may be reused as soon as this call returns

SeeAlso: AH=03h,INT F1/AL=01h,INT F1/AL=04h

Table #2661

INT F1


INT F1 04-- - Common ISDN API (CAPI) v1.1 - "API-GET-MESSAGE"

Category: - - (none)

Inp.:

AH = 04h

DX = application ID (see AH=01h)

Return: AX = status (0000h,1002h,1006h,1007h) (see #2657)

ES:BX -> message if successful (see #2658)

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

the returned message may be overwritten by the next call to this

  function

SeeAlso: AH=03h

INT F1


INT F1 --04 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_MESSAGE"

Category: - - (none)

Inp.:

AL = 04h

AH = CAPI version number * 10 (14h for v2.0)

DX = application ID (see AH=01h)

Return: AX = status (0000h,11xxh) (see #2660)

ES:BX -> message if successful (see #2658)

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

the returned message may be overwritten by the next call to this

  function

SeeAlso: AH=04h,INT F1/AL=03h

INT F1


INT F1 05-- - Common ISDN API (CAPI) v1.1 - "API-SET-SIGNAL" - SIGNAL HANDLING

Category: - - (none)

Inp.:

AH = 05h

DX = application ID (see AH=01h)

ES:BX -> signal handler or 0000h:0000h to disable

Return: AX = status (0000h,1002h) (see #2657)

Notes:	the caller is required to provide at least 512 bytes of stack space

the signal handler is called as though it were an interrupt, with

  interrupts disabled; the handler must preserve all registers and

  return with an IRET

SeeAlso: AH=01h

INT F1


INT F1 --05 - Common ISDN API (CAPI) v2.0 - "CAPI_SET_SIGNAL" - SIGNAL HANDLING

Category: - - (none)

Inp.:

AL = 05h

AH = CAPI version number * 10 (14h for v2.0)

DX = application ID (see AH=01h)

ES:BX -> signal handler or 0000h:0000h to disable

SI:DI = parameter to pass to signal handler

Return: AX = status (0000h,11xxh) (see #2660)

Notes:	the caller is required to provide at least 512 bytes of stack space

the signal handler is called as though it were an interrupt, with

  interrupts disabled and DX,SI,DI set as they were when this function

  was called; the handler must preserve all registers and return with

  an IRET

the signal handler may call CAPI_PUT_MESSAGE, CAPI_GET_MESSAGE, and

  CAPI_SET_SIGNAL

SeeAlso: INT F1/AL=01h

INT F1


INT F1 06-- - Common ISDN API (CAPI) v1.1 - "API-DEINSTALL" - UNINSTALL

Category: - - (none)

Inp.:

AH = 06h

BX = force flag

    0000h normal uninstall

    0001h forced uninstall

Return: AX = status (0000h,1008h) (see #2657)

Desc:	reset ISDN controller, close all ISDN Level 1 connections except for

  telephone connections

Notes:	the caller is required to provide at least 512 bytes of stack space

INT F1


INT F1 F0-- - Common ISDN API (CAPI) v1.1 - "API-GET-MANUFACTURER"

Category: - - (none)

Inp.:

AH = F0h

ES:BX -> 64-byte buffer for manufacturer identification information

Return: ES:BX buffer filled with ASCIZ idnetification string

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=01h,AH=F1h,AH=F2h,AH=FFh,INT F1/AL=F0h

INT F1


INT F1 --F0 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_MANUFACTURER"

Category: - - (none)

Inp.:

AL = F0h

AH = CAPI version number * 10 (14h for v2.0)

ES:BX -> 64-byte buffer for manufacturer identification information

Return: ES:BX buffer filled with ASCIZ idnetification string

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=F0h,INT F1/AL=01h,INT F1/AL=F1h,INT F1/AL=F2h,INT F1/AL=FFh

INT F1


INT F1 F1-- - Common ISDN API (CAPI) v1.1 - "API-GET-VERSION"

Category: - - (none)

Inp.:

AH = F1h

ES:BX -> 64-byte buffer for CAPI version number

Return: ES:BX buffer filled with ASCIZ version string

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=01h,AH=F0h,AH=F2h,AH=FFh

INT F1


INT F1 --F1 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_VERSION"

Category: - - (none)

Inp.:

AL = F1h

AH = CAPI version number * 10 (14h for v2.0)

Return: AH = CAPI major version number

AL = CAPI minor version number

DH = vendor-specific major version

DL = vendor-specific minor version

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=F1h,INT F1/AL=01h,INT F1/AL=F0h,INT F1/AL=F2h,INT F1/AL=FFh

INT F1


INT F1 F2-- - Common ISDN API (CAPI) v1.1 - "API-GET-SERIAL-NUMBER"

Category: - - (none)

Inp.:

AH = F2h

ES:BX -> 64-byte buffer for CAPI serial number

Return: ES:BX buffer filled with ASCIZ serial number (seven digits), empty

      string if no serial number

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=01h,AH=F0h,AH=F1h,AH=FFh

INT F1


INT F1 --F2 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_SERIAL_NUMBER"

Category: - - (none)

Inp.:

AL = F2h

AH = CAPI version number * 10 (14h for v2.0)

ES:BX -> 64-byte buffer for CAPI serial number

Return: ES:BX buffer filled with ASCIZ serial number (seven digits), empty

      string if no serial number

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=F2h,INT F1/AL=01h,INT F1/AL=F0h,INT F1/AL=F1h,INT F1/AH=F3h

INT F1


INT F1 --F3 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_PROFILE" - GET CAPABILITIES

Category: - - (none)

Inp.:

AL = F3h

AH = CAPI version number * 10 (14h for v2.0)

ES:BX -> 64-byte buffer for CAPI capabilities (see #2662)

CX = controller number (01h-06h) or 0000h to get number of controllers

Return: AX = status (0000h,11xxh) (see #2660)

ES:BX buffer filled if successful

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: INT F1/AL=01h,INT F1/AL=F0h,INT F1/AL=F2h,INT F1/AH=FFh

INT F1


INT F1 FF-- - Common ISDN API (CAPI) v1.1 - "API-MANUFACTURER" - VENDOR-SPECIFIC

Category: - - (none)

Inp.:

AH = FFh

other registers vendor-specific

Return: registers vendor-specific

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=01h,AH=F0h,AH=F1h,AH=F2h,INT F1/AH=FFh

INT F1


INT F1 --FF - Common ISDN API (CAPI) v2.0 - "CAPI_MANUFACTURER" - VENDOR-SPECIFIC

Category: - - (none)

Inp.:

AL = FFh

AH = CAPI version number * 10 (14h for v2.0)

other registers vendor-specific

Return: registers vendor-specific

Range:	INT 00 to INT FF, selectable by program parameter

Notes:	the caller is required to provide at least 512 bytes of stack space

SeeAlso: AH=FFh,INT F1/AL=01h,INT F1/AL=F0h,INT F1/AL=F1h,INT F1/AL=F2h

INT F1


INT F2 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F2


INT F2 ---- - Andy C. McGuire SPEECH.COM/SAY.COM

Category: s - sound/speech

Inp.:

SeeAlso: INT F1"SPEECH"

INT F2


INT F2 ---- - NetWare Remote Boot - ORIGINAL INT 13

Category: N - network

Inp.:

SeeAlso: INT F1"NetWare",INT F3"NetWare",INT F4"NetWare"

INT F2


INT F2 ---- - ICCTSR 1.0 - ImageCapture COLOR Developer's Kit - API

Category: - - (none)

Inp.:

AH = function number (see #2616)

???

Return: ???

Program: ImageCapture is a product of International Computers

SeeAlso: INT F3"ICCTSR"

INT F2


INT F3 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F3


INT F3 ---- - SoundBlaster - POINTER TO ECHO VALUE

Category: s - sound/speech

Inp.:

Note:	this is not a vector, but a pointer to a DWORD containing the echo

  value selected with SET-ECHO.EXE

SeeAlso: INT 2F/AX=FBFBh

INT F3


INT F3 ---- - ICCTSR 1.0 - HANDSHAKE ID VECTOR

Category: - - (none)

Inp.:

Program: ImageCapture is a product of International Computers

SeeAlso: INT F2"ICCTSR"

INT F3


INT F3 ---- - NetWare Remote Boot - BOOT ROM'S INT 13 HANDLER

Category: N - network

Inp.:

SeeAlso: INT F1"NetWare",INT F2"NetWare",INT F4"NetWare"

INT F3


INT F4 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F4


INT F4 ---- - DoubleDOS - GIVE UP REST OF CURRENT CLOCK TICK AND ALL OF NEXT TICK

Category: T - DOS-based task switchers/multitaskers

Inp.:

SeeAlso: INT 21/AH=EEh"DoubleDOS",INT FE"DoubleDOS"

INT F4


INT F4 ---- - NetWare Remote Boot - ???

Category: N - network

Inp.:

SeeAlso: INT F1"NetWare",INT F2"NetWare",INT F3"NetWare"

INT F4


INT F5 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F5


INT F5 ---- - DoubleDOS - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

INT F5


INT F6 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F6


INT F6 ---- - DoubleDOS - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

INT F6


INT F7 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F7


INT F7 ---- - DoubleDOS - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

INT F7


INT F7 00-- - FSBBS 2.0 - CONFIGURATION RECORD

Category: - - (none)

Inp.:

AH = 00h

AL = function

    00h get configuration record

Return: DS:DX -> configuration record

    01h set configuration record

    02h get path for option

DS:DX -> option name

Return: DS:DX -> path

    03h determine whether configuration record set

Return: AX = status

    0000h set

    0001h not yet set

    04h get link state

Return: AX = state

    0000h unlinked

    0001h linked

Notes:	this information is preliminary and still subject to change

all of the INT F7 calls for FSBBS are used for interprogram

  communication between the BBS kernel and the programs it spawns

SeeAlso: AH=01h

INT F7


INT F7 01-- - FSBBS 2.0 - USER RECORD

Category: - - (none)

Inp.:

AH = 01h

AL = function

    00h get user record for user currently online

Return: DS:DX -> user record

    01h set user record

DS:DX -> user record

SeeAlso: AH=00h,AH=02h

INT F7


INT F7 02-- - FSBBS 2.0 - GET ACCOUNT NAME

Category: - - (none)

Inp.:

AH = 02h

Return: DS:DX -> 8-character blank-padded account name

SeeAlso: AH=01h

INT F7


INT F7 03-- - FSBBS 2.0 - TERMINAL NUMBER

Category: - - (none)

Inp.:

AH = 03h

AL = function

    00h get terminal index number

Return: DX = index number

    01h set terminal index number

DX = terminal index

INT F7


INT F7 04-- - FSBBS 2.0 - PASSDATA BUFFER

Category: - - (none)

Inp.:

AH = 04h

AL = function

    00h get PassData buffer contents

DS:DX -> buffer for PassData contents

    01h set PassData contents

DS:DX -> buffer containing new PassData

CH = length of data in buffer

INT F7


INT F7 05-- - FSBBS 2.0 - TIMER FUNCTIONS

Category: - - (none)

Inp.:

AH = 05h

AL = function

    00h get time remaining

Return: DX = number of minutes remaining

    01h get current time

Return: DS:DX -> 8-character time string

    02h increment time

DX = number of additional minutes

    03h decrement time

DX = number of minutes

SeeAlso: AH=06h

INT F7


INT F7 06-- - FSBBS 2.0 - FUNCTION AVAILABILITY

Category: - - (none)

Inp.:

AH = 06h

AL = function

    00h determine whether function is available

DX = index of function

    01h set function availability

DX = index of function

???

SeeAlso: AH=05h,AH=07h

INT F7


INT F7 07-- - FSBBS 2.0 - DUMP FUNCTIONS

Category: - - (none)

Inp.:

AH = 07h

AL = function

    00h get current dump mode

Return: DL = mode

    01h set dump mode

DL = mode

SeeAlso: AH=06h

INT F7


INT F8 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F8


INT F8 ---- - Sanyo MBC-550 - IRQ0 - 100 HZ INTERRUPT

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 08"IRQ0",INT F9"Sanyo",INT FA"Sanyo"

INT F8


INT F8 ---- - DoubleDOS - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

INT F8


INT F9 ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT F9


INT F9 ---- - DoubleDOS - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

INT F9


INT F9 ---- - Sanyo MBC-550 - IRQ1 - ???

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 09"IRQ1",INT F8"Sanyo",INT FA"Sanyo"

INT F9


INT FA ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT FA


INT FA ---- - Sanyo MBC-550 - IRQ2 - SERIAL PORT USART INTERRUPT

Category: h - vendor-specific hardware

Inp.:

Note:	this vector is not used on the Tandy 1000TL

SeeAlso: INT 0A"IRQ2",INT F9"Sanyo",INT FB"Sanyo"

INT FA


INT FA ---- - DoubleDOS - TURN OFF TIMESHARING

Category: T - DOS-based task switchers/multitaskers

Inp.:

SeeAlso: INT 21/AH=EAh"DoubleDOS",INT FB"DoubleDOS"

INT FA


INT FB ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT FB


INT FB ---- - Sanyo MBC-550 - IRQ3 - KEYBOARD USART RECEIVE INTERRUPT

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0B"IRQ3",INT FA"Sanyo",INT FC"Sanyo"

INT FB


INT FB ---- - DoubleDOS - TURN ON TIMESHARING

Category: T - DOS-based task switchers/multitaskers

Inp.:

SeeAlso: INT 21/AH=EBh"DoubleDOS",INT FA"DoubleDOS"

INT FB


INT FC ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT FC


INT FC ---- - DoubleDOS - GET CURRENT SCREEN BUFFER ADDRESS

Category: T - DOS-based task switchers/multitaskers

Inp.:

Return: ES = segment of display buffer

Desc:	determine the address of the virtual screen to which the program

  should write instead of the actual video memory, so that the

  multitasked programs do not interfere with each other's output

Note:	the display buffer may be moved if multitasking is enabled

SeeAlso: INT 21/AH=ECh"DoubleDOS",INT FB"DoubleDOS"

INT FC


INT FC ---- - Sanyo MBC-550 - IRQ4 - ???

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0C"IRQ4",INT FB"Sanyo",INT FD"Sanyo"

INT FC


INT FD ---- - reserved for user interrupt

Category: * - reserved (and not otherwise classified)

Inp.:

INT FD


INT FD ---- - DoubleDOS - ???

Category: T - DOS-based task switchers/multitaskers

Inp.:

INT FD


INT FD ---- - Sanyo MBC-550 - IRQ5 - ???

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0D"IRQ5",INT FC"Sanyo",INT FE"Sanyo"

INT FD


INT FD ---- - TFPCX - INSTALLATION CHECK

Category: S - serial I/O

Inp.:

AH = function (see separate entries below)

Program: TFPCX is an interface between modem and terminal program for packet-

  radio communications

Notes:	the installation check consists of testing for the string "N5NX" three

  bytes beyond the interrupt handler; INT FD is the default, but may

  be changed, so the full installation check consists of scanning

  for the signature

TFPCX returns AX=FFFFh on any unsupported function call

SeeAlso: AH=01h,AH=03h,AH=FEh

INT FD


INT FD 01-- - TFPCX - TEST FOR CHARACTER WAITING

Category: S - serial I/O

Inp.:

AH = 01h

Return: AX = status

    0000h no characters waiting

    0001h character available for input

Program: TFPCX is an interface between modem and terminal program for packet-

  radio communications

SeeAlso: AH=02h

INT FD


INT FD 02-- - TFPCX - GET CHARACTER

Category: S - serial I/O

Inp.:

AH = 02h

Return: AL = character

Notes:	this call is only allowed if AH=01h indicated that a character is

  available

all available characters should be read before sending any additional

  characters

SeeAlso: AH=01h,AH=03h

INT FD


INT FD 03-- - TFPCX - OUTPUT CHARACTER

Category: S - serial I/O

Inp.:

AH = 03h

AL = character to send

SeeAlso: AH=02h

INT FD


INT FD FE-- - TFPCX - GET VERSION

Category: S - serial I/O

Inp.:

AH = FEh

Return: AH = major version

AL = minor version

Program: TFPCX is an interface between modem and terminal program for packet-

  radio communications

SeeAlso: AH=01h,AH=03h

INT FD


INT FE ---- - AT/XT286/PS50+ - destroyed by return from protected mode

Category: B - BIOS

Inp.:

Note:	the ROM BIOS uses 0030h:0100h as the initial stack on startup, which

  is the last fourth of the interrupt vector table.  If the processor

  is returned to real mode via a hardware reset (the only possibility

  on an 80286, though there are a number of ways of generating one),

  then the BIOS startup code stacks three words on its scratch stack

  before determining that a return to real mode has been requested.

  As a result, INT FE and INT FF are corrupted.

SeeAlso: INT FF"XT286"

INT FE


INT FE ---- - DoubleDOS - GIVE UP TIME

Category: T - DOS-based task switchers/multitaskers

Inp.:

AL = number of 55ms time slices to give away

Return: after other program (if active) has run

SeeAlso: INT 21/AH=EEh"DoubleDOS",INT F4"DoubleDOS"

INT FE


INT FE ---- - Turbo Debugger 8086 v2.5+ - OVERLAY MANAGER

Category: G - debuggers/debugging tools

Inp.:

SeeAlso: INT 3F

INT FE


INT FE ---- - Sanyo MBC-550 - IRQ6 - ???

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0E"IRQ6",INT FD"Sanyo",INT FF"Sanyo"

INT FE


INT FF ---- - AT/XT286/PS50+ - destroyed by return from protected mode

Category: B - BIOS

Inp.:

Note:	(see INT FE"XT286")

SeeAlso: INT FE"XT286"

INT FF


INT FF ---- - Z100 - WARM BOOT

Category: b - vendor-specific BIOS extensions

Inp.:

SeeAlso: INT 40"Z100"

INT FF


INT FF ---- - Sanyo MBC-550 - IRQ7 - ???

Category: h - vendor-specific hardware

Inp.:

SeeAlso: INT 0F"IRQ7",INT FE"Sanyo"

INT FF


INT FF ---- - QEMM-386.SYS v6.0+ - internal

undocumented function

Category: Q - DESQview/TopView and Quarterdeck programs

Inp.:

Notes:	requires that a byte in the conventional-memory stub be set to the

  desired function number (00h through 0Ch)

SeeAlso: #2617

INT FF


INT FF ---- - VIRUS - "Violetta" - ???

Category: v - virus/antivirus

Inp.:

Note:	used but not chained by virus

SeeAlso: INT E0"VIRUS",INT F1"VIRUS"

INT FF


INT FF ---- - PC/FORTH - GRAPHICS API - VIDEO STATUS CHANGE

Category: V - video

Inp.:

BX = 0000h

DS:SI -> FORTH program counter

SS:BP -> FORTH parameter stack

SS:SP -> FORTH return stack

DS:DX -> FORTH video parameter area

Desc:	called to inform graphics driver of any status changes such as video

  mode changes, character color changes, graphics XOR mode turned on

  or off, etc.

INT FF


INT FF ---- - PC/FORTH - GRAPHICS API

Category: V - video

Inp.:

BX = function number

    0001h function REDRAW

    0002h function !PEL

    0003h function @PEL

    0004h function LINE

    0005h function ARC

    0006h function @BLOCK

    0007h function !BLOCK

    0008h function FLOOD

DS:SI -> FORTH program counter

SS:BP -> FORTH parameter stack

SS:SP -> FORTH return stack

details of parameters not available

INT FF


Admin

Category: ! - note

Highest Table Number = 2734

Notes


FILELIST

Category: ! - note

Please redistribute all of the files comprising the interrupt list (listed at

the beginning of the list and in INTERRUP.1ST) unmodified as a group, in a

quartet of archives named INTER47A through INTER47D (preferably the original

authenticated PKZIP archives), the utility programs in a fifth archive

called INTER47E.ZIP, and the WinHelp-related programs in a sixth archive

named INTER47F.ZIP.

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Notes


CONTACT_INFO

Category: ! - note

Internet: ralf@telerama.lm.com

UUCP: {uunet,harvard}!telerama.lm.com!ralf

FIDO: Ralf Brown 1:129/26.1

or post a message to me in the DR_DEBUG echo (I probably won't see it

unless you address it to me)

CIS:  >INTERNET:ralf@telerama.lm.com

Notes


PORTS.LST Note

PORT LIST	Release 47	Last Change: 8/13/95

[This file was provided by Wim Osterholt (2:512/56 or wim@djo.wtm.tudelft.nl).]

XT, AT and PS/2	 I/O port addresses

      Do NOT consider this information as complete and accurate.

      If you want to do hardware programming ALWAYS check the

      appropriate data sheets. Be aware that erroneously programming

      can put your hardware or your data at risk.

      There are a few memory mapped addresses in use for I/O functions which

      are listed at the end of this file; see MEMORY.LST for memory-mapped

      I/O accessible from real mode.


New Format:

PPPPw RW  description

where:	PPPP	is the four-digit hex port number

w	is blank for byte-size port, 'w' for word, and 'd' for dword

R	is blank if not readable, 'r' if sometimes readable, 'R' if

"always" readable, '?' if readability unknown

W	is blank if not writable, 'w' if sometimes writable, 'W' if

"always" writable, '?' if writability unknown

[Note: I have not yet completed the format conversion; the heading lines

 will be changed to a form similar to that used by the main list in INTER48:

PORT 0000-001F - DMA 1 - FIRST DIRECT MEMORY ACCESS CONTROLLER (8237)

 and

PORT 0018 - PS/2 - EXTENDED FUNCTION REGISTER]


0000-001F ----	DMA 1	(first Direct Memory Access controller 8237)

0000  RW  DMA channel 0	 address byte  0, then byte 1.

0001  RW  DMA channel 0 word count byte 0, then byte 1.

0002  RW  DMA channel 1	 address byte  0, then byte 1.

0003  RW  DMA channel 1 word count byte 0, then byte 1.

0004  RW  DMA channel 2	 address byte  0, then byte 1.

0005  RW  DMA channel 2 word count byte 0, then byte 1.

0006  RW  DMA channel 3	 address byte  0, then byte 1.

0007  RW  DMA channel 3 word count byte 0, then byte 1.

0008  R	  DMA channel 0-3 status register (see #P001)

0008   W  DMA channel 0-3 command register (see #P002)

0009   W  DMA channel 0-3 write request register (see #P003)

000A  RW  DMA channel 0-3 mask register (see #P004)

000B   W  DMA channel 0-3 mode register (see #P005)

000C   W  DMA clear byte pointer flip-flop

000D  R	  DMA read temporary register

000D   W  DMA master clear

000E   W  DMA clear mask register

000F   W  DMA write mask register

Bitfields for DMA channel 0-3 status register:

Bit(s)	Description	(Table P001)

 7	channel 3 request active

 6	channel 2 request active

 5	channel 1 request active

 4	channel 0 request active

 3	channel terminal count on channel 3

 2	channel terminal count on channel 2

 1	channel terminal count on channel 1

 0	channel terminal count on channel 0

SeeAlso: #P002,#P059

Bitfields for DMA channel 0-3 command register:

Bit(s)	Description	(Table P002)

 7	DACK sense active high

 6	DREQ sense active high

 5	=1 extended write selection

=0 late write selection

 4	rotating priority instead of fixed priority

 3	compressed timing

 2	=1 enable controller

=0 enable memory-to-memory

 1-0	channel number

SeeAlso: #P001,#P004,#P005,#P060

Bitfields for DMA channel 0-3 request register:

Bit(s)	Description	(Table P003)

 7-3	reserved (0)

 2	=0 clear request bit

=1 set request bit

 1-0	channel number

00 channel 0 select

01 channel 1 select

10 channel 2 select

11 channel 3 select

SeeAlso: #P004

Bitfields for DMA channel 0-3 mask register:

Bit(s)	Description	(Table P004)

 7-3	reserved (0)

 2	=0 clear mask bit

=1 set mask bit

 1-0	channel number

00 channel 0 select

01 channel 1 select

10 channel 2 select

11 channel 3 select

SeeAlso: #P001,#P002,#P003,#P061

Bitfields for DMA channel 0-3 mode register:

Bit(s)	Description	(Table P005)

 7-6	transfer mode

00 demand mode

01 single mode

10 block mode

11 cascade mode

 5	direction

=0 address increment select

=1 address decrement select

 3-2	operation

00 verify operation

01 write to memory

10 read from memory

11 reserved

 1-0	channel number

00 channel 0 select

01 channel 1 select

10 channel 2 select

11 channel 3 select

SeeAlso: #P002,#P062


0010-001F ----	DMA controller (8237) on PS/2 model 60 & 80


0018	  ----	PS/2 EXTENDED FUNCTION REGISTER

0018   W  PS/2 extended function register


001A	  ----	PS/2 extended function execute


0020-003F ----	PIC 1	(Programmable Interrupt Controller 8259A)

SeeAlso: PORT 00A0h-00AFh"PIC 2",INT 08"IRQ0",INT 0F"IRQ7"

0020   W  PIC initialization command word ICW1 (see #P006)

0020   W  PIC output control word OCW2 (see #P011)

0020   W  PIC output control word OCW3 (see #P012)

0020  R	  PIC  interrupt request/in-service registers after OCW3

request register:

 bit 7-0 = 0  no active request for the corresponding int. line

 = 1  active request for corresponding interrupt line

in-service register:

 bit 7-0 = 0  corresponding line not currently being serviced

 = 1  corresponding int. line currently being serviced

0021   W  PIC ICW2,ICW3,ICW4 immed after ICW1 to 0020 (see #P007,#P008,#P009)

0021  RW  PIC master interrupt mask register OCW1 (see #P010)

Bitfields for PIC initialization command word ICW1:

Bit(s)	Description	(Table P006)

 7-5	0 (only used in 8080/8085 mode)

 4	ICW1 is being issued

 3	(LTIM)

=0  edge triggered mode

=1  level triggered mode

 2	interrupt vector size

=0 successive interrupt vectors use 8 bytes (8080/8085)

=1 successive interrupt vectors use 4 bytes (80x86)

 1	(SNGL)

=0  cascade mode

=1  single mode, no ICW3 needed

 0	ICW4 needed

SeeAlso: #P007,#P008,#P009

Bitfields for PIC initialization command word ICW2:

Bit(s)	Description	(Table P007)

 7-3	address lines A0-A3 of base vector address for PIC

 2-0	reserved

SeeAlso: #P006,#P008,#P009

Bitfields for PIC initialization command word ICW3:

Bit(s)	Description	(Table P008)

 7-0	=0 slave controller not attached to corresponding interrupt pin

=1 slave controller attached to corresponding interrupt pin

SeeAlso: #P006,#P007,#P009

Bitfields for PIC initialization command word ICW4:

Bit(s)	Description	(Table P009)

 7-5	reserved (0)

 4	running in special fully-nested mode

 3-2	mode

0x nonbuffered mode

10 buffered mode/slave

11 buffered mode/master

 1	Auto EOI

 0	=0  8085 mode

=1  8086/8088 mode

SeeAlso: #P006,#P007,#P008

Bitfields for PIC output control word OCW1:

Bit(s)	Description	(Table P010)

 7	disable IRQ7 (parallel printer interrupt)

 6	disable IRQ6 (diskette interrupt)

 5	disable IRQ5 (fixed disk interrupt)

 4	disable IRQ4 (serial port 1 interrupt)

 3	disable IRQ3 (serial port 2 interrupt)

 2	disable IRQ2 (video interrupt)

 1	disable IRQ1 (keyboard, mouse, RTC interrupt)

 0	disable IRQ0 (timer interrupt)

SeeAlso: #P011,#P012,#P058

Bitfields for PIC output control word OCW2:

Bit(s)	Description	(Table P011)

 7-5	operation

000 rotate in auto EOI mode (clear)

001 (WORD_A) nonspecific EOI

010 (WORD_H) no operation

011 (WORD_B) specific EOI

100 (WORD_F) rotate in auto EOI mode (set)

101 (WORD_C) rotate on nonspecific EOI command

110 (WORD_E) set priority command

111 (WORD_D) rotate on specific EOI command

 4	reserved (0)

 3	reserved (0)

 2-0	interrupt request to which the command applies

(only used by WORD_B, WORD_D, and WORD_E)

SeeAlso: #P010,#P012

Bitfields for PIC output control word OCW3:

Bit(s)	Description	(Table P012)

 7	reserved (0)

 6-5	special mask

0x  no operation

10  reset special mask

11  set special mask

 4	reserved (0)

 3	reserved (1)

 2	poll command

 1-0	function

0x  no operation

10  read interrupt request register on next read from port 0020

11  read interrupt in-service register on next read from port 0020

SeeAlso: #P010,#P011


0022-0023 ----	Chip Set Data

0022   W  index for accesses to data port

0023  RW  chip set data


0022-0023 ----	Cyrix Cx486SLC/DLC processor Cache Configuration Registers

0022   W  index for accesses to next port (see #P013)

0023  RW  cache configuration register array (indexed by port 0022h)

(Table P013)

Values for Cyrix Cx486SLC/DLC Cache Configuration register number:

 C0h	CR0 (see #P015)

 C1h	CR1 (see #P016)

 C4h	non-cacheable region 1, start address bits 31-24

 C5h	non-cacheable region 1, start address bits 23-16

 C6h	non-cacheable region 1, start addr 15-12, size (low nibble) (see #P014)

 C7h	non-cacheable region 2, start address bits 31-24

 C8h	non-cacheable region 2, start address bits 23-16

 C9h	non-cacheable region 2, start addr 15-12, size (low nibble) (see #P014)

 CAh	non-cacheable region 3, start address bits 31-24

 CBh	non-cacheable region 3, start address bits 23-16

 CCh	non-cacheable region 3, start addr 15-12, size (low nibble) (see #P014)

 CDh	non-cacheable region 4, start address bits 31-24

 CEh	non-cacheable region 4, start address bits 23-16

 CFh	non-cacheable region 4, start addr 15-12, size (low nibble) (see #P014)

(Table P014)

Values for Cyrix Cx486SLC/DLC non-cacheable region sizes:

 00h	disabled

 01h	4K

 02h	8K

 03h	16K

 04h	32K

 05h	64K

 06h	128K

 07h	256K

 08h	512K

 09h	1M

 0Ah	2M

 0Bh	4M

 0Ch	8M

 0Dh	16M

 0Eh	32M

 0Fh	4G

SeeAlso: #P013

Bitfields for Cyrix Cx486SLC/DLC Configuration Register 0:

Bit(s)	Description	(Table P015)

 0	"NC0" first 64K of each 1M noncacheable in real/V86

 1	"NC1" 640K-1M noncacheable

 2	"A20M" enables A20M# input pin

 3	"KEN"  enables KEN# input pin

 4	"FLUSH" enables KEN# input pin

 5	"BARB" enables internal cache flushing on bus holds

 6	"C0" cache direct-mapped instead of 2-way associative

 7	"SUSPEND" enables SUSP# input and SUSPA# output pins

SeeAlso: #P013,#P016

Bitfields for Cyrix Cx486SLC/DLC Configuration Register 1:

Bit(s)	Description	(Table P016)

 0	"RPL" enables output pins RPLSET and RPLVAL#

SeeAlso: #P013,#P015


0022-0023 ----	82359 DRAM controller  from 82358DT 'Mongoose' EISA chipset

Notes:	this chip uses a chip ID of 01

the LIM register herein use a chip ID of 1A

0022   W  index for accesses to data port (see #P017)

0023  RW  chip set data

(Table P017)

Values for 82359 DRAM contrroller register index:

 00h	bank 0

bit 7	unknown

bit 6-4	000 DRAM in bank 0 (standard)

001 bank 1

010 bank 2

011 bank 3

100 banks 0,1

101 banks 2,3

110 banks 0,1,2,3

111 empty (standard for 1,2,3)

bit 3-2	unknown

bit 1-0	00 64K chips used

01 256K

10 1M

11 4M

 01h	bank 1

 02h	bank 2

 03h	bank 3

 21h	chip ID register


0022-0023 ----	chipset from Etec Cheetah ET6000 (single chip)

0022  RW  chip set data

0023  ?W  index for accesses to data port (see #P018)

(Table P018)

Values for Etec Cheetah ET6000 chip set register index:

 10h	system configuration register (see #P019)

 11h	cache configuration & non-cacheable block size register (see #P020)

 12h	non-cacheable block address register

bit 7-1	non-cacheable address, A25-A19

bit 0	reserved

 13h	DRAM bank & type configuration register (see #P021)

 14h	DRAM configuration register (see #P022)

 15h	shadow RAM configuration register (see #P023)

Bitfields for Etec Cheetah ET6000 system configuration register:

Bit(s)	Description	(Table P019)

 7-6	00 turbo/non-turbo

01 local device supported

10 suspend mode

11 illegal

 5	reserved

 4	refresh selection

0 = AT type refresh

1 = concurrent refresh

 3	slow refresh  95mSec enabled

 2	fast reset delay

0 = do not use delay

1 = wait for 2mSec delay

 1	wait for HALT after KBDRST

 0	RAM at A0000-BFFFF

0 = AT bus cycle

1 = local bus cycle

SeeAlso: #P018

Bitfields for Etec Cheetah ET6000 cache configuration register:

Bit(s)	Description	(Table P020)

 7-5	000 disabled

001 512K

010 1M

011 2M

100 4M

101 8M

110 16M

111 32M

 4	DRAM banks

0 = 2-bank DRAM

1 = 4-bank DRAM

 3-0	reserved

SeeAlso: #P018

Bitfields for Etec Cheetah ET6000 DRAM bank & type configuration register:

Bit(s)	Description	(Table P021)

 7-6	bank 3 DRAM type

00 none

01 256K

10 1M

11 4M

 5-4	bank 2 DRAM type

 3-2	bank 1 DRAM type

 1-0	bank 0 DRAM type

SeeAlso: #P018

Bitfields for Etec Cheetah ET6000 DRAM configuration register:

Bit(s)	Description	(Table P022)

 7	on-board memory range 15M to 16M disabled

 6	on-board memory range 512K-640K disabled

 5	ROM chip select at C0000-DFFFF enabled

 4	RAS to CAS time

0 = 1 SYSCLCK,	not for R0WS

1 = 2 SYSCLCK

 3	RAS precharge time

0 = 1.5 SYSCLCK

1 = 2.5 SYSCLCK

 2-1	read cycle wait state

00 = 0 wait state

01 = 1 ws

10 = 2 ws

11 = 3 ws

 0	write cycle wait state

0 = 0 ws

1 = 1 ws

SeeAlso: #P018

Bitfields for Etec Cheetah ET6000 shadow RAM configuration register:

Bit(s)	Description	(Table P023)

 7	shadow at C0000-FFFFF

0 = non-cacheable

1 = cacheable and cache-write-proteced

 6	access ROM/RAM at F0000-FFFFF

0 = read from ROM, write to RAM

1 = read from shadow, write is protected

 5	access ROM/RAM at E0000-EFFFF

0 = access on-board ROM, AT bus cycle

1 = access shadow E0000-EFFFF enabled

 4	RAM at E0000-EFFFF is read-only

 3	access ROM/RAM at D0000-DFFFF

0 = access on-board ROM, AT bus cycle

1 = access shadow D0000-DFFFF enabled

 2	RAM at D0000-DFFFF is read-only

 1	access ROM/RAM at C0000-CFFFF

0 = access on-board ROM, AT bus cycle

1 = access shadow C0000-CFFFF enabled

 0	RAM at C0000-CFFFF is read-only

SeeAlso: #P018


0022-0024 ----	chipset from Pico Power, UMC or PCChips

0022  ?W  index for accesses to data port

0024  RW  chip set data


0022-0025 ----	Intel 82360SL Chipset (for 386SL)

0022   W  CPU write mode register

0023  R	  configuration status register

bit 7: 82360 configuration is open

0024   W  82360 configuration index

0025  RW  82360 configuration data

Bitfields for Intel 82360SL CPU write mode register:

Bit(s)	Description	(Table P024)

 0	unlock configuration space

 1	enable selected unit

 3-2	unit

00 memory configuration

01 cache

10 internal bus

11 external bus


0022-002B ----	Intel 82355, part of chipset for 386sx

Note:	initialisation in POST will disable these addresses, only a hard

  reset will enable them again.

0022w RW  82335 MCR memory configuration register (if LOCK=0) (see #P025)

0024w RW  82335 RC1 roll compare register (if LOCK=0) (see #P026)

0026w RW  82335 RC2 roll compare register (if LOCK=0) (see #P026)

0028w RW  82335 CC0 address range compare register (if LOCK=0) (see #P027)

002Aw RW  82335 CC1 address range compare register (if LOCK=0) (see #P027)

Bitfields for 82335 MCR memory configuration register:

Bit(s)	Description	(Table P025)

 15-12	reserved

 11	"VRO"	video read only (0=r/w, 1=r/o)

 10	"EN#"

0=enable video RAM accesses (A0000h-8FFFFh)

1=disable accesses

 9	"ENADP#"

0=enable adapter ROM accesses (C0000h-8FFFFh)

1=disable adapter ROM accesses, shadow enabled

 8	"ROMSIZE" 0=256KB ROM, 1=512KB ROM

 7-6	"INTERL" memory interleaving

00 = 1 memory bank installed (no interleave)

01 = 2 memory banks installed

10 = 3 memory banks installed

11 = 4 memory banks installed

 5	reserved

 4	"DSIZE"	 0=1MBx1DRAMs, 1=256KBx1 or 256KBx4 DRAMs

 3	"S640"	 base memory size is 0=512KB, 1=640KB

 2-1	reserved

 0	"ROMEN#" ROM enable

0 enable BIOS ROM accesses (E0000h-FFFFFh)

1 disable BIOS ROM accesses, enable shadow

Note:	One of the remaining reserved bits is the LOCK bit, which will be set

  during power on, disabling access to the 82335s registers.

Bitfields for 82335 roll compare register:

Bit(s)	Description	(Table P026)

 15-9	selects address range to be remapped (C23-C17)

 8	reserved

 7-1	selects address bits to be included in re-mapping comparision (M23-M17)

 0	"EN" enables roll address mapping

Bitfields for 82335 address range compare register:

Bit(s)	Description	(Table P027)

 15-11	specifies top of address range (C23-C19)

 10-8	reserved

 7-3	selects address bits to be included in address range comparision

  (M23-M19)

 2-1	reserved

 0	"EN" enable address range comparision


0024-0028 ---- Headland HTK340 Shasta 386/486 Chipset

0024  Rw  data port

0028  ?W  index port to chipset registers (see #P028,#P029)

(Table P028)

Values for Headland HT321 register index:

 00h R	chip/revision,read-only

  bit7-4: reserved (=0)

  bit3-0: chip revision, 0=A, 1=B, 3=D

 01h RW system clocking (default=00h)

  bit7-4: reserved (=0)

  bit3-0: ISA speed set

 02h RW system parameters (default=00h)

  bit7-6: IO recovery time (rev. D+)

  bit5	: parity override

  bit4-3: cycle-width

  bit2	: 0/1 port 92 functionality

  bit1	: IO decode

  bit0	: 0/1 posted backplane MEMWN cycles

 04h RW co-processor (default=00h)

  bit7-3: reserved (=0)

  bit2=1: soft-NPU reset blocked (386 only)

  bit1=1: weitek installed

  bit0=1: 387 installed

 06h RW DMA (default=00h)

  bit7	: reserved (=0)

  bit6	: 1/0 IOCHRDY during master cycle (rev. C+)

  bit5	: 0/1 fast sample DMA

  bit4-3: DMA waitstate 00b=3 .. 11b=0

  bit2	: 0/1 DMA flow-through mode

  bit1	: 0/1 extended DMA page register

  bit0	: DMA clock

 07h RW EPROM (default=00h)

  bit7-6: reserved (=0)

  bit5	: 0/1 EADS CACHE invalidation for EPROM writes (rev. D+)

  bit4	: 0/1 ROMEN for EPROM writes (rev. C+)

  bit3	: 0/1 middle BIOS region of 64KB space below 16MB

  bit2	: ROM-size (0=64KB, 1=128KB)

  bit1	: V-BIOS-add (0=separate, 1=same device)

  bit0	: ROM-access time (0=250ns, 1=125ns)

 08h RW I/O and memory map holes (default=00h)

  bit7-4: reserved (=0)

  bit3	: 0/1 I/O map hole-A

  bit2	: reserved (=0)

  bit1	: 0/1 memory map hole-B

  bit0	: reserved (=0)

 10h RW hole-A low address (default=00h)

 11h RW hole-A high address (default=00h)

 19h RW mem hole-B start address, lower (default=00h)

 1Ah RW mem hole-B start address, higher (default=00h)

  bit7-6: reserved (=0)

  bit5-0: address of mem hole-B start

 1Ch RW mem hole-B end address, lower (default=00h)

 1Dh RW mem hole-B end address, higher (default=00h)

  bit7-6: reserved (=0)

  bit5-0: address of mem hole-B end

SeeAlso: #P029

(Table P029)

Values for Headland HT342 register index:

 20h R	identifier port read

  bit7-4: DRAM controller identifier (0010b)

  bit3-0: revision number (0=A)

 21h R	feature port read    (default=00h)

 24h RW DRAM options port #1 (default=00h)

  bit7	: 0/1 staggered refresh

  bit6	: refresh type

  bit5	: 0/1 DRAM paging

  bit4-2: CAS interleave

  bit1-0: banks

 25h	DRAM options port #2 (default=00h)

  bit7-6: DRAM bank 1 type

  bit5-4: DRAM bank 2 type

  bit3-2: DRAM bank 1?? type

  bit1-0: DRAM bank 0 type

 26h RW DRAM options port #3 (default=FFh)

  bit7	: CAS hold on RAS (CAS before RAS refresh)

  bit6	: CAS precharge

  bit5	: CAS burst delay

  bit4	: CAS delay (writes)

  bit3	: CAS delay (reads)

  bit2	: CAS active time (writes)

  bit1-0: CAS active time (reads)

 27h RW DRAM options port #4 (default=FFh)

  bit7	: RAS delay

  bit6-5: RAS active (writes)

  bit4-2: RAS active (reads)

  bit1-0: RAS precharge

 28h RW data transfer control port (default=00h)

doubled indexed registers (28h-2Ah)

  bit7	: initiate transfer

  bit6	: read/write transfer

  bit5-4: reserved

  bit3-0: transfer/destination

 29h RW RAM address register (default=00h)

doubled indexed registers (28h-2Ah)

  bit7-5: reserved

  bit4-0: RAM address registers contents

 2Ah RW data transfer port   (default=00h)

doubled indexed registers (28h-2Ah)

  bit7-6: reserved

  bit5	: EMS translation

  bit4	: reserved

  bit3	: 0/1 cacheing

  bit2	: 0/1 write

  bit1	: 0/1 read

  bit0	: 0/1 shadow

 2Bh RW other options	      (default=00h)

  bit7	: reserved

  bit6	: 0/1 middle BIOS

  bit5	: 0/1 data pipeline

  bit4	: 0/1 data pipeline

  bit3	: IO-decode

  bit2	: reserved

  bit1	: 16bit DMA bridge

  bit0	: 0/1 write buffering

 2Dh RW DRAM options port #5 (default=03h)

  bit7-5: reserved

  bit4	: 0/1 10µs RAS timeout

  bit3-2: BUS speed

  bit1-0: BUS recovery for DRAM cycles

   00b=0: 4-1-1-1    10b=0.5

   01b=1: 4-2-2-2    11b=1??

 82h	read transfer

 C2h	write transfer

SeeAlso: #P028


0026-0027 ----	Power Management

0026   W  index for data port

0027  RW  power management data


002E-002F ----	Dell Enhanced Parallel Port

SeeAlso: 015C, 026E, 0398

002E   W  index for data port (see #P030)

002F  RW  EPP command data

(Table P030)

Values for Dell Enhanced Parallel Port register index:

 00h	bit 0: ???

 02h	bit 7: port in bidirectional mode

 04h	bits 0 and 2: ECP/EPP mode control


0038-003F ----	PC radio by CoZet Info Systems

The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

All of these addresses show a readout of FF in initial state.

Once started, all of the addresses show	 FB, whatever might

happen.


0040-005F ----	PIT  (Programmable Interval Timer  8253, 8254)

 XT & AT uses 40-43    PS/2 uses 40, 42,43,44, 47

0040  RW  PIT  counter 0, counter divisor	      (XT, AT, PS/2)

0041  RW  PIT  counter 1, RAM refresh counter	(XT, AT)

don't set below 3 on PCs (default 12h)

0042  RW  PIT  counter 2, cassette & speaker	(XT, AT, PS/2)

During normal operation mode (8253) 40h-42h set the counter values on

write and get the current counter value on read. In 16bit modes two

consequtive writes/reads must be issued, first with the low byte,

followed by the high byte. In 8254 read back modes, all selected

counters and status are latched and must be read out completely

before normal operation is valid again.	 Each counter switches back

to normal operation after read out.  In 'get status and counter'

mode the first byte read is the status, followed by one or two

counter values. (see #P031)

0043  RW  PIT  mode port, control word register for counters 0-2 (see #P032)

Once a control word has been written (43h), it must be followed

immediately by performing the corresponding action to the counter

registers (40h-42h), else the system may hang!!

0044  RW  PIT  counter 3 (PS/2, EISA)

used as fail-safe timer. generates an NMI on time out.

for user generated NMI see at 0462.

0047   W  PIT  control word register counter 3 (PS/2, EISA)

 bit 7-6 = 00  counter 3 select

 = 01  reserved

 = 10  reserved

 = 11  reserved

 bit 5-4 = 00  counter latch command counter 3

 = 01  read/write counter bits 0-7 only

 = 1x  reserved

 bit 3-0 = 00

0048	  EISA

0049	  8254 timer 2, not used (counter 1)

004A	  EISA programmable interval timer 2

004B	  EISA programmable interval timer 2

Bitfields for 8254 PIT counter status byte:

Bit(s)	Description	(Table P031)

 7	PIN status of OUTx Pins (1=high, 0=low)

 6	counter start value loaded

=0: yes, so counter latch is valid to be read

=1: no, wait for counter latch to be set (may last a while)

5-0	counter mode, same as bit5-0 at 43h

SeeAlso: #P032

Bitfields for 8253/8254 PIT mode control word:

Bit(s)	Description	(Table P032)

 7-6	counter select

00  counter 0 select

01  counter 1 select	  (not PS/2)

10  counter 2 select

11  (8253) reserved

    (8254) read back counter (see #P031)

---if counter select---

 5-4	counter access

00  counter latch command

01  read/write counter bits 0-7 only

10  read/write counter bits 8-15 only

11  read/write counter bits 0-7 first, then 8-15

 3-1	counter mode

000 mode 0 select - zero detection interrupt

001 mode 1 select - programmable one shot

x10 mode 2 select - rate generator

x11 mode 3 select - square wave generator

divisor factor 3 not allowed!

100 mode 4 select - software triggered strobe

101 mode 5 select - hardware triggered strobe

 0	counting style

0  binary counter 16 bits

1  BCD counter (4 decades)

---if read back---

 5-4	what to read

00 reserved

01 counter status

10 counter value

11 counter status and value

 3	select counter 2

 2	select counter 1

 1	select counter 0

 0	reserved (0)

Note:	after issuing a read back 'get status' command, any new read back

  command is ignored until the status is read from all selected

  counters.


0060-006F ----	KEYBOARD CONTROLLER 804x (8041, 8042)  (or PPI (8255) on PC,XT)

Note:	XT uses 60-63, AT uses 60-64

0060  RW  KB controller data port or keyboard input buffer (ISA, EISA)

should only be read from after status port bit0 = 1

should only be written to if status port bit1 = 0

0060  R	  KeyBoard or KB controller data output buffer (via PPI on XT)

PC: input from port A of 8255, if bit7 in 61h set (see #P045)

get scancodes, special codes (in PC: with bit7 in 61h cleared)

  (see #P040)

0061  R	  KB controller port B control register (ISA, EISA)

system control port for compatibility with 8255 (see #P042)

0061   W  KB controller port B (ISA, EISA)   (PS/2 port A is at 0092)

system control port for compatibility with 8255 (see #P041)

0061   W  PPI Programmable Peripheral Interface 8255 (XT only)

system control port (see #P043)

0062  RW  PPI (XT only) data port C (see #P044)

0063  RW  PPI (XT only) command mode register (see #P046)

0064  R	  keyboard controller read status (see #P047,#P048,#P049)

0064   W  keyboard controller input buffer (ISA, EISA) (see #P050)

0064   W  (Amstrad/Schneider PC1512) set 'DIP switch S1' setting

  stored in CMOS RAM that PPI should report for compatibility

0065   W  (Amstrad/Schneider PC1512) set 'DIP switch S2' RAM size setting

  stored in CMOS RAM, that PPI port C (PORT 0064h) should report for

  compatibility

0065  R	  communications port (Olivetti M24)

0068   W  (HP-Vectra) control buffer (HP commands) (see #P051)

0069  R	  (HP-Vectra) SVC (keyboard request SerViCe port)

006A   W  (HP-Vectra) Acknowledge (clear processing, done)

006C-006F	HP-HIL	(Human Interface Link = async. serial inputs 0-7)

Bitfields for AT keyboard controller input port:

Bit(s)	Description	(Table P033)

 7	=0  keyboard inhibited

 6	=0  CGA, else MDA

 5	=0  manufacturing jumper installed

 4	=0  system RAM 512K, else 640K

 3-0	reserved

SeeAlso: #P034,#P036

Bitfields for AT keyboard controller input port (Compaq):

Bit(s)	Description	(Table P034)

 7	security lock is unlocked

 6	=0  Compaq dual-scan display, 1=non-Compaq display

 5	system board dip switch 5 is OFF

 4	=0  auto speed selected, 1=high speed selected

 3	=0  slow (4MHz), 1 = fast (8MHz)

 2	no math coprocessor installed

 1-0	reserved

SeeAlso: #P035

Bitfields for AT keyboard controller output port:

Bit(s)	Description	(Table P035)

 7	keyboard data output

 6	keyboard clock output

 5	input buffer NOT full

 4	output buffer NOT empty

 3	reserved (see note)

 2	reserved (see note)

 1	gate A20

 0	system reset

Note:	bits 2 and 3 are the turbo speed switch or password lock on

  Award/AMI/Phoenix BIOSes.  These bits make use of nonstandard

  keyboard controller BIOS functionality to manipulate

pin 23 (8041 port 22) as turbo switch for AWARD

pin 35 (8041 port 15) as turbo switch/pw lock for Phoenix

SeeAlso: #P033,#P036

Bitfields for HP Vectra keyboard controller output port:

Bit(s)	Description	(Table P036)

 7-5	reserved

 4	output buffer full (OBF) interrupt

 3	HP SVC interrupt

 2	HP-HIL controller AutoPoll

 1	A20 gate

 0	system reset

SeeAlso: #P035,#P037

Bitfields for HP Vectra command byte:

Bit(s)	Description	(Table P037)

 7	reserved (0)

 6	scancode conversion mode (1 = PC/XT, 0 = PC/AT)

 5	unused

 4	disable keyboard (unless bit 3 set)

 3	override keyboard disable

 2	System Flag (may be read from port 0060h)

 1	reserved

 0	OBF interrupt enable

SeeAlso: #P036

(Table P038)

Values for keyboard commands (data also goes to PORT 0060h):

Value	Count	Description

 EDh	double	set/reset mode indicators Caps Num Scrl

bit 2 = CapsLk, bit 1 = NumLk, bit 0 = ScrlLk

all other bits must be zero.

 EEh	sngl	diagnostic echo. returns EEh.

 EFh	sngl	NOP (No OPeration). reserved for future use

 EF+26h	double	[Cherry MF2 G80-1501HAD] read 256 bytes of chipcard data

keyboard must be disabled before this and has to

be enabled after finished.

 F0h	double	get/set scan code set

00h get current set

01h scancode set 1 (PCs and PS/2 mod 30, except Type 2 ctrlr)

02h scancode set 2 (ATs, PS/2, default)

03h scancode set 3

 F2h	sngl	read keyboard ID (read two ID bytes)

AT keyboards returns FA (ACK)

MF2 returns AB 41 (translation) or

    AB 83 (pass through)

 F3h	double	set typematic rate/delay

format of the second byte:

bit7=0 : reserved

bit6-5 : typemativ delay

 00b=250ms     10b= 750ms

 01b=500ms     11b=1000ms

bit4-0 : typematic rate

 00000b=30.0   10000b=7.5

 00001b=26.7   10001b=6.7

 00010b=24.0   10010b=6.0

 00011b=21.8   10011b=5.5

 00100b=20.0   10100b=5.0

 00101b=18.5   10101b=4.6

 00110b=17.1   10110b=4.3

 00111b=16.0   10111b=4.0

 01000b=15.0   11000b=3.7

 01001b=13.3   11001b=3.3

 01010b=12.0   11010b=3.0

 01011b=10.9   11011b=2.7

 01100b=10.0   11100b=2.5

 01101b= 9.2   11101b=2.3

 01110b= 8.5   11110b=2.1

 01111b= 8.0   11111b=2.0

 F4h	sngl	enable keyboard

 F5h	sngl	disable keyboard. set default parameters (no keyboard scanning)

 F6h	sngl	set default parameters

 F7h	sngl	[MCA] set all keys to typematic (scancode set 3)

 F8h	sngl	[MCA] set all keys to make/release

 F9h	sngl	[MCA] set all keys to make only

 FAh	sngl	[MCA] set all keys to typematic/make/release

 FBh	sngl	[MCA] set al keys to typematic

 FCh	double	[MCA] set specific key to make/release

 FDh	double	[MCA] set specific key to make only

 FEh	sngl	resend last scancode

 FFh	sngl	perform internal power-on reset function

Note:	each command is acknowledged by FAh (ACK), if not mentioned otherwise.

  See PORT 0060h-R for details.

SeeAlso: #P039

(Table P039)

Values for Mouse functions (for PS/2-like pointing devices):

Value	Count	Description

 E6h	sngl	set mouse scaling to 1:1

 E7h	sngl	set mouse scaling to 2:1

 E8h	double	set mouse resolution

(00h=1/mm, 01h=2/mm, 02h=4/mm, 03h=8/mm)

 E9h	sngl	get mouse information

read two status bytes:

  byte 0

bit 7 unused

bit 6 remote rather than stream mode

bit 5 mouse enabled

bit 4 scaling set to 2:1

bit 3 unused

bit 2 left button pressed

bit 1 unused

bit 0 right button pressed

  byte 1: resolution

 EAh	sngl	set mouse to stream mode (mouse sends data on any changes)

 EBh	sngl	get mouse data (from mouse to controller)

on reading, each data packet consists of 8 bytes:

 +0: status

      bit7    : y-data overrun

      bit6    : x-data overrun

      bit5    : y-data negative

      bit4    : x-data negative

      bit3-2=0: reserved

      bit1    : right button pressed

      bit0    : left button pressed

 +1: reserved

 +2: x-data

 +3: reserved

 +4: y-data

 +5: reserved

 +6: z-data (0)

 +7: reserved

 ECh	sngl	reset mouse wrap mode (to normal mode)

 EEh	sngl	set wrap mode

 F0h	sngl	set remote mode (instead of stream mode), mouse sends data

  only on issueing command EBh.

 F2h	sngl	read mouse ID (read one, two?? ID bytes)

00h=mouse

 F3h	double	set mouse sample rate in reports per second

0Ah=10/s	   50h= 80/s

14h=20/s	   64h=100/s

28h=40/s	   C8h=200/s

3Ch=60/s

 F4h	sngl	enable mouse (in stream mode)

 F5h	sngl	disable mouse (in steam mode), set default parameters

 F6h	sngl	reset to defaults: 100/s, scaling 1:1, stream-mode, 4/mm,

  disabled

 FEh	sngl	resend last mouse data (8 bytes, see EBh)

 FFh	sngl	reset mouse

Notes:	 must issue command D4h to port 64h first to access mouse functions

 all commands except ECh and FFh are acknowledged by FAh (ACK) or

   FEh (Resend); get mouse ID (F2h) returns mouse ID.

SeeAlso: #P038

(Table P040)

Values for keyboard special codes:

 00h	(MF2 in codeset2&3 or AT keyboards) keydetection/overrun error

 00h	(mouse) ID

 AAh	BAT completion code (sent after errorfree Basic Assurance Test)

 ABh	first byte of general MF2 keyboard ID

 EEh	Echo command return

 FAh	Acknowledge (all general commands except Resend and Echo)

 FAh	(mouse) Acknowledge (all commands except commands ECh,F2h,FFh)

 FCh	(MF2) BAT Failure Code (error in second half of the power on self test)

 FDh	(AT-keyboard) BAT Failure Code (error in the second half of the

  power-on self test)

 FEh	Resend: CPU to controller should resend last keyboard-command

 FEh	(mouse) CPU to controller should resend last mouse-command

 FFh	(MF2 in codeset1) keydetection/overrun error

Note:	keyboard stops scanning and waits for next command after returning

  code FCh or FDh

SeeAlso: PORT 0060h-R

Bitfields for KB controller port B (system control port) [output]:

Bit(s)	Description	(Table P041)

 7	pulse to 1 for IRQ1 reset (PC,XT)

 6-4	reserved

 3	I/O channel parity check disable

 2	RAM parity check disable

 1	speaker data enable

 0	timer 2 gate to speaker enable

SeeAlso: PORT 0061h-W,#P042

Bitfields for KB controller port B control register (system control port) [input]:

Bit(s)	Description	(Table P042)

 7	RAM parity error occurred

 6	I/O channel parity error occurred

 5	mirrors timer 2 output condition

 4	toggles with each refresh request

 3	NMI I/O channel check status

 2	NMI parity check status

 1	speaker data status

 0	timer 2 clock gate to speaker status

SeeAlso: PORT 0061h-R,#P041

Bitfields for Progr. Peripheral Interface (8255) system control port [output]:

Bit(s)	Description	(Table P043)

 7	clear keyboard (only pulse, normally kept at 0)

 6	=0  hold keyboard clock low

 5	NMI I/O parity check disable

 4	NMI RAM parity check disable

 3	=0 read low nybble of switches S2

=1 read high nybble of switches S2

 2	reserved, often used as turbo switch

original PC: cassette motor off

 1	speaker data enable

 0	timer 2 gate to speaker enable

Note:	bits 2 and 3 are sometimes used as turbo switch

SeeAlso: PORT 0061h-W,#P0051,#P044,#P045,#P046

Bitfields for PPI (XT only) data port C:

Bit(s)	Description	(Table P044)

 7	RAM parity error occurred

 6	I/O channel parity error occurred

 5	timer 2 channel out

 4	reserved

original PC: cassette data input

---

 3	system board RAM size type 1

 2	system board RAM size type 2

 1	coprocessor installed

 0	loop in POST

---

 3-0	DIL switch S2 high/low nybble (depending on PORT 0061h bit 3)

SeeAlso: PORT 0062h-RW,#P043,#P045,#P046

Bitfields for PPI (PC,XT only) equipment switches [input]:

Bit(s)	Description	(Table P045)

 7-6	number of disk drives

00  1 diskette drive

01  2 diskette drives

10  3 diskette drives

11  4 diskette drives

 5-4	initial video

00  reserved (video adapter has on-board BIOS)

01  40*25 color (mono mode)

10  80*25 color (mono mode)

11  MDA 80*25

 3-2	memory size (using 256K chips)

00  256K

01  512K

10  576K

11  640K

 3-2	memory size (using 64K chips)

00  64K

01  128K

10  192K

11  256K

 3-2	memory size (original PC)

00  16K

01  32K

10  48K

11  64K

 1-0	reserved

 1	NPU (math coprocessor) present

 0	boot from floppy

SeeAlso: #P044,#P046,PORT 0060h-R

Bitfields for PPI (8255) command mode register:

Bit(s)	Description	(Table P046)

 7	activation function (0 = bit set/reset, 1 = mode set function)

 6,5	port A mode: 00 = mode0, 01 = mode1, 1x = mode2

 4	port A direction: 0 = output, 1 = input

 3	port C bits 7-4 direction: 0 = output, 1 = input

 2	port B mode: 0 = mode0, 1 = mode1

 1	port B direction: 0 = output, 1 = input

 0	port C bits 3-0 direction: 0 = output, 1 = input

Note:	Attention: Never write anything other than 99h to this port

  (better: never write anything to this port, only during BIOS

  init), as other values may connect multiple output drivers

  and will cause hardware damage in PC/XTs!  By setting command

  word to 99h, PPI will be set in input/output modes as it is

  necessary to support the commonly known IO-ports 60, 61, 62

  as desired.

SeeAlso: #P043,#P044,#P045

Bitfields for keyboard controller read status (ISA, EISA):

Bit(s)	Description	(Table P047)

 7	parity error on transmission from keyboard

 6	receive timeout

 5	transmit timeout

 4	keyboard interface inhibited by keyboard lock

 3	=1 data written to input register is command (PORT 0064h)

=0 data written to input register is data (PORT 0060h)

 2	system flag status: 0=power up or reset	 1=selftest OK

 1	input buffer full (input 60/64 has data for 8042)

no write access allowed until bit clears

 0	output buffer full (output 60 has data for system)

bit is cleared after read access

SeeAlso: PORT 0064h-R,#P048,#P049,#P050

Bitfields for keyboard controller read status (MCA):

Bit(s)	Description	(Table P048)

 7	parity error on transmission from keyboard

 6	general timeout

 5	mouse output buffer full

 4	keyboard interface inhibited by keyboard lock

 3	=1 data written to input register is command (PORT 0064h)

=0 data written to input register is data (PORT 0060h)

 2	system flag status: 0=power up or reset	 1=selftest OK

 1	input buffer full (60/64 has data for 804x)

no write access allowed until bit clears

 0	output buffer full (output 60 has data for system)

bit is cleared after read access

SeeAlso: #P047,#P049,#P050

Bitfields for keyboard controller read status (Compaq):

Bit(s)	Description	(Table P049)

 7	parity error detected (11-bit format only). If an

  error is detected, a Resend command is sent to the

  keyboard once only, as an attempt to recover.

 6	receive timeout. transmission didn't finish in 2mS.

 5	transmission timeout error

bit 5,6,7  cause

1 0 0  No clock

1 1 0  Clock OK, no response

1 0 1  Clock OK, parity error

 4	=0 security lock engaged

 3	=1 data in OUTPUT register is command

=0 data in OUTPUT register is data

 2	system flag status: 0=power up or reset	 1=soft reset

 1	input buffer full (60/64 has data for 804x)

no write access allowed until bit clears

 0	output buffer full (port 60 has data for system)

bit is cleared after read access

SeeAlso: #P047,#P048,#P050

(Table P050)

Values for keyboard controller commands (data goes to port 0060)::

Value	Description

 20h	read	read byte zero of internal RAM, this is the last KB command

  sent to the 8041/8042

Compaq	put current command byte on port 0060 (see #P052,#P053)

 21-3F	read	reads the byte specified in the lower 5 bits of the command

  in the 804x's internal RAM

 60-7F	double	writes the data byte to the address specified in the 5 lower

  bits of the command

 60h	Compaq	Load new command (60 to [64], command to [60]) (see #P053)

(also general AT-class machines)

 A0h	AMI	get ASCIZ copyright message on port 0060

 A1h	AMI	get controller version byte on port 0060

 A1h	Compaq	unknown speedfunction ??

 A2h	Compaq	unknown speedfunction ??

 A2h	AMI	set keyboard controller pins 22 and 23 low

 A3h	Compaq	Enable system speed control

 A3h	AMI	set keyboard controller pins 22 and 23 high

 A4h	MCA	check if password installed

 A4h	Compaq	Toggle speed

 A4h	AMI	set internal system speed flag to low

 A5h	MCA	load password

 A5h	AMI	set internal system speed flag to high

 A5h	Compaq	Special read. the 8042 places the real values of port 2

  except for bits 4 and 5 wich are given a new definition in

  the output buffer. No output buffer full is generated.

if bit 5 = 0, a 9-bit keyboard is in use

if bit 5 = 1, an 11-bit keyboard is in use

if bit 4 = 0, output-buff-full interrupt disabled

if bit 4 = 1, output-buffer-full interrupt enabled

 A6h	MCA	check password

 A6h	AMI	get internal system speed flag on port 0060

 A6h	Compaq	unknown speedfunction ??

 A7h	MCA	disable mouse port

 A7h	AMI	set internal flag indicating bad write cache

 A8h	MCA	enable mouse port

 A8h	AMI	set internal flag indicating good write cache

 A9h	MCA	test mouse port

 A9h	AMI	get internal flag indicating cache OK to 0060

 AAh	sngl	initiate self-test. will return 55h to data port if self-test

  successful, FCh if failed

 AAh	Compaq	initializes ports 1 and 2, disables the keyboard and clears

  the buffer pointers. It then places 55h in the output buffer.

 ABh	sngl	initiate interface test. result values:

00h no error

01h keyboard clock line stuck low

02h keyboard clock line stuck high

03h keyboard data line is stuck low

04h keyboard data line stuck high

05h (Compaq only) diagnostic feature

 ACh	read	diagnostic dump. the contents of the 804x RAM, output port,

  input port, status word are sent.

 ADh	sngl	disable keyboard (sets bit 4 of commmand byte)

 ADh	Vectra	HP Vectra diagnostic dump

 AEh	sngl	enable keyboard	 (resets bit 4 of commmand byte)

 AFh	AWARD	Enhanced Command: read keyboard version

 B1h	AMI	set keyboard controller P11 line low

 B2h	AMI	set keyboard controller P12 line low

 B3h	AMI	set keyboard controller P13 line low

 B4h	AMI	set keyboard controller P22 line low

 B5h	AMI	set keyboard controller P23 line low

 B8h	AMI	set keyboard controller P10 line high

 B9h	AMI	set keyboard controller P11 line high

 BAh	AMI	set keyboard controller P12 line high

 BBh	AMI	set keyboard controller P13 line high

 BCh	AMI	set keyboard controller P22 line high

 BDh	AMI	set keyboard controller P23 line high

 C0h	read	read input port and place on PORT 0060h

bit 7	keyboard NOT locked

bit 6	=0 first video is CGA

=1 first video is MDA

bit 5	=0 factory testmode

=1 normal

bit 4	=0 256KB RAM, 1=512KB

bit 5,3-0 are used in Intel chipset 386sx machines with

AMI/Phoenix BIOSes for BIOS specific hardware settings

 C0h	Compaq	places status of input port in output buffer.  Use this

  command only when the output buffer is empty

 C1h	MCA	Enhanced Command: poll input port Low nibble

 C2h	MCA	Enhanced Command: poll input port High nibble

 C8h	AMI	unblock keyboard controller lines P22 and P23

 C9h	AMI	block keyboard controller lines P22 and P23

 CAh	AMI	read keyboard mode, return in 0060 bit 0

  (bit clear if ISA mode, set if PS/2 mode)

 CBh	AMI	set keyboard mode (write back mode byte returned by CAh,

  modifying only bit 0)

 D0h	read	read output port and place on PORT 0060h (see #P054)

 D0h	Compaq	places byte in output port in output buffer. Use this command

  only when the output buffer is empty

 D1h	double	write output port.  The next byte written to port 0060h will

  be written to the 804x output port; the original IBM AT and

  many compatibles use bit 1 of the output port to control

  the A20 gate.

Important: bit 0 (system reset) should always be set here, as

  the system may hang constantly, use pulse output port

  (FEh) instead.

 D1h	Compaq	the system speed bits are not set by this command use

  commands A1-A6 (!) for speed functions.

 D2h	MCA	Enhanced Command: write keyboard output buffer

 D3h	MCA	Enhanced Command: write pointing device out.buf.

 D4h	MCA	write to mouse/pointing device instead of to keyboard; this

  controller command must precede every PORT 0060h command

  directed to the mouse, otherwise it will be sent to the

  keyboard

 D4h	AWARD	Enhanced Command: write to auxiliary device

 DDh	sngl	disable address line A20 (HP Vectra only???)

default in Real Mode

 DFh	sngl	enable address line A20 (HP Vectra only???)

 E0h	read	read test inputs.

bit0 = kbd clock, bit1 = kbd data

 Exxx	AWARD	Enhanced Command: active output port

 EDh	double	this is a two part command to control the state of the

  NumLock, CpasLock and ScrollLock LEDs

The second byte contains the state to set LEDs.

    bit 7-3	reserved. should be set to 0.

    bit 2 = 0	Caps Lock LED off

    bit 1 = 0	Num Lock LED off

    bit 0 = 0	Scroll Lock LED off

 F0-FF	sngl	pulse output port low for 6 microseconds.

bits 0-3 contain the mask for the bits to be pulsed.  A bit is

  pulsed if its mask bit is zero

bit0=system reset. Don't set to zero. Pulse only!

Note:	 keyboard controllers are widely different from each other.  You

   cannot generally exchange them between different machines.

 (Award) Derived from Award's Enhanced KB controller advertising sheet.

 (Compaq) Derived from the Compaq Deskpro 386 Tech. Ref. Guide.

(Table P051)

Values for HP Vectra control buffer command code:

 00h-54h insert standard key make code into 8041 scancode buf

 55h-77h insert HP key make code into 8041 scancode buffer

 7Ah	pass through next data byte

 7Bh	set RAM Switch to 0

 7Ch	set RAM Switch to 1 (default)

 7Dh	set CRT Switch to 0

 7Eh	set CRT Switch to 1 (default)

 7Fh	reserved

 80h-D4h insert standard key break code into scancode buffer

 D5h-F7h insert HP key break code into scancode buffer

 F8h	enable AutoPoll

 F9h	disable AutoPoll

 FAh-FEh reserved

 FFh	keyboard overrun

SeeAlso: PORT 0068h-W

Bitfields for Compaq keyboard command byte:

Bit(s)	Description	(Table P052)

 7	reserved

 6	=1 convert KB codes to 8086 scan codes

 5	=0 use 11-bit codes, 1=use 8086 codes

 4	=0 enable keyboard, 1=disable keyboard

 3	ignore security lock state

 2	this bit goes into bit2 status reg.

 1	reserved (0)

 0	generate interrupt when output buffer full

SeeAlso: #P053

Bitfields for keyboard command byte (alternate description):

Bit(s)	Description	(Table P053)

 7	reserved (0)

 6	IBM PC compatibility mode

 5	IBM PC mode

no parity, no stop bits, no translation

(PS/2) force mouse clock low

 4	disable keyboard (clock)

 3	inhibit override

(PS/2) reserved

 2	system flag

 1	reserved (0)

(PS/2) enable mouse output buffer full interrupt

 0	enable output buffer full interrupt

SeeAlso: #P052,#P054

Bitfields for keyboard controller output port:

Bit(s)	Description	(Table P054)

 7	keyboard data (output)

 6	keyboard clock (output)

 5	input buffer empty

 4	output buffer empty

 3	undefined

 2	undefined

used by Intel 386sx Chipset with AMI/Phoenix BIOSes for BIOS-specific

  configuration of turbo switch

 1	gate address A20

 0	system reset

Note:	bit 0 (system reset) should always be set when writing the output

  port, as the system may hang constantly; use pulse output port

  (command FEh) instead.

SeeAlso: #P053


0065	  ----	AT&T 6300+ high/low chip select


0065	  ----	???

0065  RW  ???

bit 2: A20 gate control (set = A20 enabled, clear = disabled)


0066-0067 ----	AT&T 6300+ system configuration switches


0066	  ----	IBM 4717 Magnetic Stripe Reader - ???

SeeAlso: PORT 0069h"Magnetic Stripe"


0068	  ----	C&T chipsets, turbo mode control


0069	  ----	IBM 4717 Magnetic Stripe Reader - ???

SeeAlso: PORT 0066h"Magnetic Stripe"


006B-006F ----	SSGA control registers

006B  ??  RAM enable/remap

006C  ??  undocumented

006D  ??  undocumented

006E  ??  undocumented

006F  ??  undocumented


0070-007F ----	CMOS RAM/RTC (Real Time Clock)

Note:	the real-time clock may be either a discrete MC146814, MC146818, or

  an emulation thereof built into the motherboard chipset

0070   W  CMOS RAM index register port (ISA, EISA)

 bit 7	= 1  NMI disabled

= 0  NMI enabled

 bit 6-0     CMOS RAM index (64 bytes, sometimes 128 bytes)

any write to 0070 should be followed by an action to 0071

or the RTC wil be left in an unknown state.

0071  RW  CMOS RAM data port (ISA, EISA) (see #P055)

(Table P055)

Values for Real-Time Clock register number (see also CMOS.LST):

 00h-0Dh clock registers

 0Eh	diagnostics status byte

 0Fh	shutdown status byte

 10h	diskette drive type for A: and B:

 11h	reserved / IBM fixed disk / setup options

 12h	fixed disk drive type for drive 0 and drive 1

 13h	reserved / AMI Extended CMOS setup (AMI Hi-Flex BIOS)

 14h	equipment byte

 15h	LSB of system base memory in Kb

 16h	MSB of system base memory in Kb

 17h	LSB of total extended memory in Kb

 18h	MSB of total extended memory in Kb

 19h	drive C extension byte

 1Ah	drive D extension byte

 1Bh-2Dh reserved

 20h-27h commonly used for first user-configurable drive type

 2Eh	CMOS MSB checksum over 10-2D

 2Fh	CMOS LSB checksum over 10-2D

 30h	LSB of extended memory found above 1Mb at POST

 31h	MSB of extended memory found above 1Mb at POST

 32h	date century in BCD

 33h	information flags

 34h-3Fh	reserved

 35h-3Ch commonly used for second user-configurable drive type

 3Dh-3Eh word to 82335 MCR memory config register at [22] (Phoenix)

 42h-4Ch AMI 1990 Hyundai super-NB368S notebook

???

 54h-57h AMI 1990 Hyundai super-NB368S notebook

???

 5Ch-5Dh AMI 1990 Hyundai super-NB368S notebook

???

 60h-61h AMI 1990 Hyundai super-NB368S notebook

???


0073	  ----	Intel Pentium motherboard ("Neptune" chipset)

0073  RW  ???

bit 7: ???

bit 6: ???

bit 3: ???


0074-0076 ----  secondary CMOS (Compaq), NVRAM (IBM) access

Note:	NVRAM may be 2K, 8K, or 16K

SeeAlso: CMOS.LST

0074   W  secondary CMOS RAM (IBM NVRAM) index, low byte

0075   W  secondary CMOS RAM (IBM NVRAM) index, high byte

0076  RW  secondary CMOS RAM (IBM NVRAM) data byte


0078	  ----	HP-Vectra  Hard Reset: NMI enable/disable

0078  ?W  NMI enable/disable

bit 7 = 0  disable & clear hard reset from HP-HIL controller

      = 1  enable hard reset from HP-HIL controller chip

bit 6-0	   reserved


0078-007F ----	PC radio by CoZet Info Systems

Range:  The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

Note:	All of these addresses show a readout of FFh in initial state.

Once started, all of the addresses show FBh, whatever might happen.


007C-007D ----	HP-Vectra  PIC 3   (Programmable Interrupt Controller 8259)

Notes:	cascaded to first controller.

used for keyboard and input device interface.

SeeAlso: PORT 0020h-0021h

007C  RW  HP-Vectra  PIC 3  see at 0020	 PIC 1

007D  RW  HP-Vectra  PIC 3  see at 0021	 PIC 1


0080	  ----	MANUFACTURING DIAGNOSTICS PORT

Note:	sometimes used for a POST hex display

0080   W  Manufacturing Diagnostics port


0080-008F ----	DMA page registers   (74612)

0080  RW  extra page register (temporary storage)

0081  RW  DMA channel 2 address byte 2

0082  RW  DMA channel 3 address byte 2

0083  RW  DMA channel 1 address byte 2

0084  RW  extra page register

0085  RW  extra page register

0086  RW  extra page register

0087  RW  DMA channel 0 address byte 2

0088  RW  extra page register

0089  RW  DMA channel 6 address byte 2

0089  RW  DMA channel 7 address byte 2

0089  RW  DMA channel 5 address byte 2

008C  RW  extra page register

008D  RW  extra page register

008E  RW  extra page register

008F  RW  DMA refresh page register


0080-009F ----	Intel386sx chipset 82231

Note:	includes the DMA controller functionality on PORT 0080h to PORT 008Fh


0084	  ----	Compaq POST Diagnostic


0084	  ----	EISA Synchronize Bus Cycle


0090-009F ----	PS/2 POS (Programmable Option Select)

0090  ??  Central arbitration control port

0091  R	  Card selection feedback

0092  RW  PS/2 system control port A  (port B is at 0061) (see #P056)

0094   W  system board enable/setup register (see #P057)

0095  --  reserved

0096   W  adapter enable / setup register

 bit 3 = 1  setup adapters

       = 0  enable registers

0097  --  reserved

Bitfields for PS/2 system control port A:

Bit(s)	Description	(Table P056)

 7-6	any bit set to 1 turns activity light on

 5	reserved

 4	watchdog timout occurred

 3	=0 RTC/CMOS security lock (on password area) unlocked

=1 CMOS locked (done by POST)

 2	reserved

 1	A20 is active

 0	=0 system reset or write

=1 pulse alternate reset pin (alternate CPU reset)

SeeAlso: #P057

Bitfields for PS/2 system board enable/setup register:

Bit(s)	Description	(Table P057)

 7	=1  enable functions

=0  setup functions

 5	=1  enables VGA

=0  setup VGA

SeeAlso: #P056


00A0-00AF ----	PIC 2	(Programmable Interrupt Controller 8259A)

SeeAlso: PORT 0020h-003Fh"PIC 1",INT 70"IRQ8",INT 77"IRQ15"

00A0  RW  NMI mask register (XT)

 bit 7 = 0 disabled

       = 1 enabled

00A0  RW  PIC 2	 same as 0020 for PIC 1

00A1  RW  PIC 2	 same as 0021 for PIC 1 except for OCW1 (see #P058)

Bitfields for PIC2 output control word OCW2:

Bit(s)	Description	(Table P058)

 7	disable IRQ15 (reserved)

 6	disable IRQ14 (fixed disk interrupt)

 5	disable IRQ13 (coprocessor exception interrupt)

 4	disable IRQ12 (mouse interrupt)

 3	disable IRQ11 (reserved)

 2	disable IRQ10 (reserved)

 1	disable IRQ9  (redirect cascade)

 0	disable IRQ8  (real-time clock interrupt)

SeeAlso: #P010


00B0-00BF ----	PC radio by CoZet Info Systems

Range: 	The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

Notes:	All of these addresses show a readout of FFh in initial state.

Once started, all of the addresses show	FBh, whatever might happen.


00C0	  ----	TI  SN746496 programmable tone/noise generator	PCjr


00C0-00DF ----	DMA 2	(second Direct Memory Access controller 8237)

00C0  RW  DMA channel 4 memory address bytes 1 and 0 (low) (ISA, EISA)

00C2  RW  DMA channel 4 transfer count bytes 1 and 0 (low) (ISA, EISA)

00C4  RW  DMA channel 5 memory address bytes 1 and 0 (low) (ISA, EISA)

00C6  RW  DMA channel 5 transfer count bytes 1 and 0 (low) (ISA, EISA)

00C8  RW  DMA channel 6 memory address bytes 1 and 0 (low) (ISA, EISA)

00CA  RW  DMA channel 6 transfer count bytes 1 and 0 (low) (ISA, EISA)

00CC  RW  DMA channel 7 memory address byte 0 (low), then 1 (ISA, EISA)

00CE  RW  DMA channel 7 transfer count byte 0 (low), then 1 (ISA, EISA)

00D0  R	  DMA channel 4-7 status register (ISA, EISA) (see #P059)

00D0   W  DMA channel 4-7 command register (ISA, EISA) (see #P060)

00D2   W  DMA channel 4-7 write request register (ISA, EISA)

00D4   W  DMA channel 4-7 write single mask register (ISA, EISA) (see #P061)

00D6   W  DMA channel 4-7 mode register (ISA, EISA) (see #P062)

00D8   W  DMA channel 4-7 clear byte pointer flip-flop (ISA, EISA)

00DA  R	  DMA channel 4-7 read temporary register (ISA, EISA)

00DA   W  DMA channel 4-7 master clear (ISA, EISA)

00DC   W  DMA channel 4-7 clear mask register (ISA, EISA)

00DE   W  DMA channel 4-7 write mask register (ISA, EISA)

Bitfields for DMA channel 4-7 status register:

Bit(s)	Description	(Table P059)

 7 = 1	channel 7 request

 6 = 1	channel 6 request

 5 = 1	channel 5 request

 4 = 1	channel 4 request

 3 = 1	terminal count on channel 7

 2 = 1	terminal count on channel 6

 1 = 1	terminal count on channel 5

 0 = 1	terminal count on channel 4

SeeAlso: #P001,#P060

Bitfields for DMA channel 4-7 command register:

Bit(s)	Description	(Table P060)

 7	DACK sense active high

 6	DREQ sense active high

 5	=1  extended write selection

=0  late write selection

 4	rotating priority instead of fixed priority

 3	compressed timing

 2	=1  enable controller

=0  enable memory-to-memory transfer

 1-0	channel number (00 = 4 to 11 = 7)

SeeAlso: #P002,#P059,#P061

Bitfields for DMA channel 4-7 write single mask register:

Bit(s)	Description	(Table P061)

 7-3	reserved

 2	=0  clear mask bit

=1  set mask bit

 1-0	channel select

00 channel 4 select

01 channel 5 select

10 channel 6 select

11 channel 7 select

SeeAlso: #P004,#P060

Bitfields for DMA channel 4-7 mode register:

Bit(s)	Description	(Table P062)

 7-6	transfer mode

00  demand mode

01  single mode

10  block mode

11  cascade mode

 5	direction

0  address increment select

1  address decrement select

 4	autoinitialisation enabled

 3-2	operation

00  verify operation

01  write to memory

10  read from memory

11  reserved

 1-0	channel number

00  channel 4 select

01  channel 5 select

10  channel 6 select

11  channel 7 select

SeeAlso: #P005,#P061


00E0-00E1 ----	chipset from ACT

00E0  ?W  index for accesses to data port

00E1  R?  chip set data


00E0-00E7 ----	Microchannel

00E0  RW  split address register, memory encoding registers PS/2m80 only

00E1  RW  memory register

00E3  RW  error trace

00E4  RW  error trace

00E5  RW  error trace

00E7  RW  error trace


00EC-00ED ----	Compaq LTE Elite


00ED	  ----	???

Note:	on a number of machines, the BIOS appears to write a copy of any

  data sent to numerous other ports to this port as well

00EDw  ?W  ???


00EF	  ----	Hyunday Super-NB386S (AMD386sx with Intel chipset)

Warning: any access to this port causes a cold reset on this machine!


00F0-00F5 ----	PCjr Disk Controller

00F0  ??  disk controller

00F2  ??  disk controller control port

00F4  ??  disk controller status register

00F5  ??  disk controller data port


00F0-00FF ----	coprocessor (8087..80387)

00F0   W  math coprocessor clear busy latch

00F1   W  math coprocessor reset

00F8  RW  opcode transfer

00FA  RW  opcode transfer

00FC  RW  opcode transfer


00F9	  ----	Compaq LTE Elite


00FB	  ----	Compaq LTE Elite


00F9-00FF ----	PC radio by CoZet Info Systems

Range:	The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

Notes:	All of these addresses show a readout of FFh in initial state.

Once started, all of the addresses show	FBh, whatever might happen.


0100	  ----	3COM 3C509 Ethernet card - ID port

Note: this port is present only on the 3C509, not on any other 3COM card

SeeAlso: 0110, 0120


0100-0107 ----	PS/2 POS (Programmable Option Select)

Note:	the default value for PORT 0102h is stored in CMOS 31h

0100  R	  POS register 0	Low adapter ID byte

0101  R	  POS register 1	High adapter ID byte

0102  RW  POS register 2	option select data byte 1 (see #P063)

0103  RW  POS register 3	option select data byte 2

0104  RW  POS register 4	option select data byte 3

0105  RW  POS register 5	option select data byte 4

 bit 7	channel active (-CHCK)

 bit 6	channel status

0106  RW  POS register 6	Low subaddress extension

0107  RW  POS register 7	High subaddress extension

Bitfields for PS/2 POS register 2, option select data byte 1:

Bit(s)	Description	(Table P063)

 7	  0  = unidirectional LPT port

  1  = bidirectional LPT port

 6-5	PS/2 Model 50 and higher

 00b = default LPT port at 3BCh

 01b = ""	   378h

 10b = ""	   278h

 11b = reserved

 4	reserved

 0	card enable (CDEN)

 0	=1 VGA sleep bit, disconnects output drivers from VGA (usage for VGA

  without monitor)

---ET4000---

 7-4	reserved???

 3	video RAM wait enable

 2	ET4000: ROM BIOS wait enable

 1	ET4000: I/O wait enable

Note:	access to this port is only possible when PORT 0094h bit 7 is low.


0100-010F ----	CompaQ Tape drive adapter. alternate address at 0300


0108-010F ----	IBM PS/2 - 8 digit LED info panel

010F   W  leftmost character on display

010E   W  second character

 ...

0108   W  eighth character


0110	  ----	3COM 3C509 Ethernet card - ID port (alternate address)

Note:	this port is present only on the 3C509, not on any other 3COM card

SeeAlso: 0100, 0120


0120	  ----	3COM 3C509 Ethernet card - ID port (alternate address)

Note:	this port is present only on the 3C509, not on any other 3COM card

SeeAlso: 0100, 0110


0130-013F ----	CompaQ SCSI adapter. alternate address at 0330


0130-0133 ----	Adaptec 154xB/154xC SCSI adapter.

Range:	alternate address at 0134, 0230, 0234, 0330 and 0334


0134-0137 ----	Adaptec 154xB/154xC SCSI adapter.

Range:	alternate address at 0130, 0230, 0234, 0330 and 0334


0138-013F ----	PC radio by CoZet Info Systems

Range:	The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

Notes:	All of these addresses show a readout of FFh in initial state.

Once started, all of the addresses show	FBh, whatever might happen.


0140-014F ----	SCSI (alternate Small Computer System Interface) adapter

Note:	first adapter is at 0340-034F


0140-0157 ----	RTC (alternate Real Time Clock for XT)	 (1st at 0340-0357)


015C-015D ----	Dell Enhanced Parallel Port

SeeAlso: 002E, 026E, 0398

015C   W  index for data port

015D  RW  EPP command data


015F	  ----	ARTEC Handyscanner A400Z.  alternate address at 35F.


0170-0177 ----	HDC 2	(2nd Fixed Disk Controller) (ISA, EISA)

Range:	01F0-01F7 for primary controller, 0170-0177 for secondary controller

SeeAlso: PORT 01F0h-01F7h


0178-0179 ----	Power Management

0178   W  index selection for data port

0179  RW  power management data


0178-017F ----	PC radio by CoZet Info Systems

Range:	The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

Notes:	All of these addresses show a readout of FFh in initial state.

Once started, all of the addresses show	FBh, whatever might happen.


01CE-01CF ----	ATI Mach32 video chipset - ???

01CE   W  index register

01CF  RW  data register


01E8-01EF ----	Headland HL21 & Acer M5105 chipsets - SYSTEM CONTROL

01ED  RW  select internal register. Data to/from 01EF

01EE  R	  ???

01EF  RW  register value

05h  = 1000xxxx for low CPU clock speed (4MHz on Morse/Mitac)

     = 0xxxxxxx for high CPU clock speed (16MHz on Morse/Mitac)

10h memory size

   bits 2-0 = size

   (undefined,512K,640K,1024K,2560K,2048K,4096K,undef.)

14h ???

   bit 2: 384K RAM of first 1024K relocated to top of memory


01F0-01F7 ----	HDC 1	(1st Fixed Disk Controller) (ISA, EISA)

Range:	01F0-01F7 for primary controller, 0170-0177 for secondary controller

SeeAlso: PORT 0170h-0177h

01F0  RW  data register

01F1  R	  error register (see #P064)

01F1   W  WPC/4	 (Write Precompensation Cylinder divided by 4)

01F2  RW  sector count

01F3  RW  sector number (CHS mode)

  logical block address, bits 0-7 (LBA mode)

01F4  RW  cylinder low (CHS mode)

  logical block address, bits 15-8 (LBA mode)

01F5  RW  cylinder high (CHS mode)

  logical block address, bits 23-16 (LBA mode)

01F6  RW  drive/head (see #P065)

01F7  R	  status register (see #P066)

01F7   W  command register (see #P067)

Bitfields for Hard Disk Controller error register:

Bit(s)	Description	(Table P064)

---diagnostic mode errors---

 7	which drive failed (0 = master, 1 = slave)

 6-3	reserved

 2-0	error code

001	no error detected

010	formatter device error

011	sector buffer error

100	ECC circuitry error

101	controlling microprocessor error

---operation mode---

 7	bad block detected

 6	uncorrectable ECC error

 5	reserved

 4	ID found

 3	reserved

 2	command aborted prematurely

 1	track 000 not found

 0	DAM not found (always 0 for CP-3022)

SeeAlso: #P065,#P066

Bitfields for hard disk controller drive/head specifier:

Bit(s)	Description	(Table P065)

 7	=1

 6	LBA mode enabled, rather than default CHS mode

 5	=1

 4	drive select (0 = drive 0, 1 = drive 1)

 3-0	head select bits (CHS mode)

logical block address, bits 27-24 (LBA mode)

SeeAlso: #P064,#P066

Bitfields for hard disk controller status register:

Bit(s)	Description	(Table P066)

 7	controller is executing a command

 6	drive is ready

 5	write fault

 4	seek complete

 3	sector buffer requires servicing

 2	disk data read successfully corrected

 1	index - set to 1 each disk revolution

 0	previous command ended in an error

SeeAlso: #P064,#P067

(Table P067)

Values for hard disk controller command codes:

Command	 class: optional:

 1xh	 recalibrate	   1	  no

 20h	 read sectors with retry	   1	  no

 21h	 read sectors without retry	   1	  no

 22h	 read long with retry	   1	  no

 23h	 read long without retry	   1	  no

 30h	 write sectors with retry	   2	  no

 31h	 write sectors without retry	   2	  no

 32h	 write long with retry	   2	  no

 33h	 write long without retry	   2	  no

 3Ch	 write verify	(IDE)	   3	  yes

 40h	 read verify sectors with retry	   1	  no

 41h	 read verify sectors without retry 1	  no

 50h	 format track	   2	  no

 7xh	 seek	   1	  no

 8xh	 vendor unique 3	(IDE)

 90h	 execute drive diagnostics	   1	  no

 91h	 initialize drive parameters	   1	  no

 94h E0h standby immediate	(IDE)	   1	  yes

 95h E1h idle immediate	(IDE)	   1	  yes

 96h E2h standby	(IDE)	   1	  yes

 97h E3h idle	(IDE)	   1	  yes

 98h E5h check power mode	(IDE)	   1	  yes

 99h E6h set sleep mode	(IDE)	   1	  yes

 9Ah	 vendor unique 1	(IDE)

 C0h-C3h vendor unique 2	(IDE)

 C4h	 read multiplec	(IDE)	   1	  yes

 C5h	 write multiple	(IDE)	   3	  yes

 C6h	 set multiple mode	(IDE)	   1	  yes

 C8h	 read DMA with retry	(IDE)	   1	  yes

 C9h	 read DMA without retry (IDE)	   1	  yes

 CAh	 write DMA with retry	(IDE)	   3	  yes

 CBh	 write DMA with retry	(IDE)	   3	  yes

 E4h	 read buffer	(IDE)	   1	  yes

 E8h	 write buffer	(IDE)	   2	  yes

 E9h	 write same	(IDE)	   3	  yes

 ECh	 identify drive	(IDE)	   1	  yes

 EFh	 set features	(IDE)	   1	  yes

 F0h-F4h EATA standard	(IDE)

 F5h-FFh vendor unique 4	(IDE)

SeeAlso: #P064,#P066


01F8	  ----	???

01F8  RW  ???

bit 0: A20 gate control (set = A20 enabled, clear = disabled)


01F9-01FF ----	PC radio by CoZet Info Systems

Range:	The I/O address range is dipswitch selectable from:

   038-03F and 0B0-0BF

   078-07F and 0F0-0FF

   138-13F and 1B0-1BF

   178-17F and 1F0-1FF

   238-23F and 2B0-2BF

   278-27F and 2F0-2FF

   338-33F and 3B0-3BF

   378-37F and 3F0-3FF

Notes:	All of these addresses show a readout of FFh in initial state.

Once started, all of the addresses show	FBh, whatever might happen.


0200-020F ----	Game port reserved I/O address space

0200-0207 ----	Game port, eight identical addresses on some boards

0201  R	  read joystick position and status (see #P068)

0201   W  fire joystick's four one-shots

0201  RW  gameport on mc-soundmachine, mc 03-04/1992: Adlib-compatible,

Covox 'voice master' & 'speech thing' compatible soundcard.

(enabled if bit1=1 in PORT 038Fh. Because it is disabled on

power-on, it cannot be found by BIOS) (see PORT 0388h-038Fh)

Bitfields for joystick position and status:

Bit(s)	Description	(Table P068)

 7	status B joystick button 2 / D paddle button

 6	status B joystick button 1 / C paddle button

 5	status A joystick button 2 / B paddle button

 4	status A joystick button 1 / A paddle button

 3	B joystick Y coordinate	   / D paddle coordinate

 2	B joystick X coordinate	   / C paddle coordinate

 1	A joystick Y coordinate	   / B paddle coordinate

 0	A joystick X coordinate	   / A paddle coordinate


0200-02FF ----	Sunshine uPW48, programmer for EPROM version CPU's 8748/8749

Range:	4 bit DIP switch installable in the range 20x-2Fx

0200-0203	adresses of the 8255 on the uPW48

0208-020B	adresses of ??? on the uPW48 (all showing zeros)


0208-0209 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range:	may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, 02E8


020C-020F ----	AIMS LAB PC Radio

Range:	configurable to 020C or 030C


0210-0217 ----	Expansion unit (XT)

0210   W  latch expansion bus data

0210  R	  verify expansion bus data

0211   W  clear wait, test latch

0211  R	  High byte data address

0212  R	  Low byte data address

0213   W  0=enable,  1=disable expansion unit

0214   W  latch data  (receiver card port)

0214  R	  read data   (receiver card port)

0215  R	  High byte of address, then Low byte	(receiver card port)


0218-0219 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range:	base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8


0220-0223 ---- Sound Blaster / Adlib port (Stereo)

SeeAlso: 0388-0389

0220  R	  Left speaker -- Status port

0220   W  Left speaker -- Address port

0221   W  Left speaker -- Data port

0222  R	  Right speaker -- Status port

0222   W  Right speaker -- Address port

0223   W  Right speaker -- Data port


0220-0227 ----	Soundblaster PRO and SSB 16 ASP


0220-022F ----	Soundblaster PRO 2.0


0220-022F ----	Soundblaster PRO 4.0

Note:	the FM music is accessible on 0388/0389 for compatibility.

0220  R	  left FM status port

0220   W  left FM music register address port (index)

0221  RW  left FM music data port

0222  R	  right FM status port

0222   W  right FM music register address port (index)

0223  RW  right FM music data port

0224   W  mixer register address port (index)

0225  RW  mixer data port

0226   W  DSP reset

0228  R	  FM music status port

0228   W  FM music register address port (index)

0229   W  FM music data port

022A  R	  DSP read data (voice I/O and Midi)

022C   W  DSP write data / write command

022C  R	  DSP write buffer status (bit 7)

022E  R	  DSP data available status (bit 7)


022F	  ----	mc-soundmachine, mc 03-04/1992 - SPEECH I/O

Note:	An Adlib-compatible Covox 'voice master' & 'speech thing' compatible

  soundcard

SeeAlso: PORT 0378h"Covox",PORT 0388h-038Fh"soundmachine"

022F  RW  Covox compatible speech I/O  (via internal A/D converter,

each read access starts a new conversion cycle)

register enabled if bit7=1 in PORT 038Fh


0230-0233 ----	Adaptec 154xB/154xC SCSI adapter.

alternate address at 0130, 0134, 0230, 0330 and 0334


0234-0237 ----	Adaptec 154xB/154xC SCSI adapter.

alternate address at 0130, 0134, 0230, 0330 and 0334


0238-023F ----	COM port addresses on UniRAM card by German magazine c't

selectable from 238, 2E8, 2F8, 338, 3E0, 3E8, 3F8


0238-023x ----	Bus Mouse Port (secondary address)

Note:	secondary address for bus mice from MS and Logitech, and the ATI

  video adapter mouse


023C-023x ----	Bus Mouse Port (primary address)

Note:	primary address for bus mice from MS and Logitech, the ATI video

  adapter mouse, and the Commodore PC30III bus mouse


0240-024F ----	Gravis Ultra Sound by Advanced Gravis

Range:	The I/O address range is dipswitch selectable from:

   0200-020F and 0300-030F

   0210-021F and 0310-031F

   0220-022F and 0320-032F

   0230-023F and 0330-033F

   0240-024F and 0340-034F

   0250-025F and 0350-035F

   0260-026F and 0360-036F

   0270-027F and 0370-037F

SeeAlso: 0340-034F, 0746

0240   W  Mix Control register (see #P069)

0241  R	  Read Data

0241   W  Trigger Timer

0246  R	  IRQ Status Register (see #P070)

0248  RW  Timer Control Reg

  Same as ADLIB Board (see PORT 0200h)

0249   W  Timer Data (see #P071)

024B   W  IRQ Control Register (0240 bit 6 = 1) (see #P072)

024B   W  DMA Control Register (0240 bit 6 = 0) (see #P073)

024F  RW  Register Controls (rev 3.4+)

Bitfields for Gravis Ultra Sound mix control register:

Bit(s)	Description	(Table P069)

 6	   Control Register Select (see 024B)

 5	   Enable MIDI Loopback

 4	   Combine GF1 IRQ with MIDI IRQ

 3	   Enable Latches

 2	   Enable MIC IN

 1	   Disable LINE OUT

 0	   Disable LINE IN

SeeAlso: #P070

Bitfields for Gravis Ultra Sound IRQ status register:

Bit(s)	Description	(Table P070)

 7	   DMA TC IRQ

 6	   Volume Ramp IRQ

 5	   WaveTable IRQ

 3	   Timer 2 IRQ

 2	   Timer 1 IRQ

 1	   MIDI Receive IRQ

 0	   MIDI Transmit IRQ

SeeAlso: #P069,#P072,#P073

Bitfields for Gravis Ultra Sound timer data:

Bit(s)	Description	(Table P071)

 7	   Reset Timr IRQ

 6	   Mask Timer 1

 5	   Mask Timer 2

 1	   Timer 2 Start

 0	   Timer 1 Start

SeeAlso: #P070,#P072

Bitfields for Gravis Ultra Sound IRQ control register:

Bit(s)	Description	(Table P072)

 6	Combine Both IRQ

 5-3	MIDI IRQ Selector

000  No IRQ

001  IRQ 2

010  IRQ 5

011  IRQ 3

100  IRQ 7

101  IRQ 11

110  IRQ 12

111  IRQ 15

 2-0	GF1 IRQ Selector

000  No IRQ

001  IRQ 2

010  IRQ 5

011  IRQ 3

100  IRQ 7

101  IRQ 11

110  IRQ 12

111  IRQ 15

SeeAlso: #P070,#P073

Bitfields for Gravis Ultra Sound DMA Control Register:

Bit(s)	Description	(Table P073)

 6	Combine Both DMA

 5-3	DMA Select Register 2

000  No DMA

001  DMA 1

010  DMA 3

011  DMA 5

100  DMA 6

101  DMA 7

 2-0	DMA Select Register 1

000  No DMA

001  DMA 1

010  DMA 3

011  DMA 5

100  DMA 6

101  DMA 7

SeeAlso: #P070,#P072,#P075


0240-0257 ----	RTC (alternate Real Time Clock for XT)	 (1st at 0340-0357)

(used by TIMER.COM v1.2 which is the 'standard' timer program)


0258-0259 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range:	base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8


0258-0259 ---- AT RAMBANK Memory Expansion Board - EXT. MEMORY AND EMS-SUPPORT

Range:	base address may be set to 0218h, 0228h, 0238h, 0258h, 0268h, 0298h,

  or 02A8h


0258-025F ----	Intel Above Board


0260-0268  ----	 LPT port address on the UniRAM card by German magazine c't

selectable from 260, 2E0, 2E8, 2F0, 3E0, 3E8.


0268-0269 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range:	base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8


026E-026F ----	Dell Enhanced Parallel Port

SeeAlso: 002E, 015C, 0398

026E   W  index for data port

026F  RW  EPP command data


0278	  ----	Covox 'Speech Thing' COMPATIBLES

SeeAlso: PORT 022Fh"Covox",PORT 0388h-038Fh"soundmachine"

0278   W  speech data output via printer data port

(with mc-soundmachine, enabled if bit5=1 in 38F)


0278-027E ----	parallel printer port, same as 0378 and 03BC

0278   W  data port

0279  RW  status port

027A  RW  control port


0280	   ----	LCD display on Wyse 2108 PC


0280-0288  ----	non-standard COM port addresses (V20-XT by German magazine c't)

selectable from 0280, 0288, 0290, 0298, 6A0, 6A8


0288-028F  ----	non-standard COM port addresses (V20-XT by German magazine c't)

0280-0288	selectable from 0280, 0288, 0290, 0298, 06A0, 06A8

0290-0298

0298-029F


02A0-02A7 ----	Sunshine EW-901BN, EW-904BN

EPROM writer card (release 1986) for EPROMs up to 27512

02A0-02A3	adresses of the 8255 on the EW-90xBN


02A2-02A3 ----	MSM58321RS clock


02A8-02A9 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range:	base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8


02B0-02BF ----	Trantor SCSI adapter


02B0-02DF ----	alternate EGA,	primary EGA at 03C0


02B8-02B9 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range: base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8


02C0-02Cx ----	AST-clock


02C0-02DF ----	XT-Real Time Clock 2 (default jumpered address)


02E0-02E8 ----	LPT port address on the UniRAM card by German magazine c't

Range:	base address selectable from 0260, 02E0, 02E8, 02F0, 03E0, and 03E8.


02E0-02EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

(GAB 0 on XT)

02E1  ??  GPIB (adapter 0)

02E2

02E3


02E0-02EF ----	data aquisition	 (AT)

02E2  ??  data aquisition (adapter 0)

02E3  ??  data aquisition (adapter 0)


02E8	  ----	S3 86C928 video controller (ELSA Winner 1000)


02E8-02E9 ----	Intel 82C212B "Neat" chipset - EMS emulation control

Range:	base address may be set to 0208, 0218, 0258, 0268, 02A8, 02B8, or 02E8


02E8-02EF ----	serial port, same as 02F8, 03E8 and 03F8 (COM4)


02E8-02EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

02E8  R	  display status

02E8   W  horizontal total

02EA  RW  Lookup: DAC mask

02EB   W  Lookup: DAC read index

02EC   W  Lookup: DAC write index

02ED  RW  Lookup: DAC data


02EA	  ----	S3 86C928 video controller (ELSA Winner 1000)


02F0-2F8  ----	LPT port address on the UniRAM card by German magazine c't

selectable from 260, 2E0, 2E8, 2F0, 3E0, 3E8.


02F8-02FF ----	serial port, same as 02E8, 03E8 and 03F8 (COM2)

02F8   W  transmitter holding register

02F8  R	  receiver buffer register

02F8  RW  divisor latch, low byte	when DLAB=1

02F9  RW  divisor latch, high byte	when DLAB=1

02F9  RW  interrupt enable register when DLAB=0

02FA  R	  interrupt identification register

02FB  RW  line control register

02FC  RW  modem control register

02FD  R	  line status register

02FF  RW  scratch register


0300	  ----	Award POST Diagnostic


0300-0301 ----	Soundblaster 16 ASP MPU-Midi


0300-???? ----	HP IEC/HP-IB adapter (e.g. for use with tape streamer HP9142)


0300-031F ----	3com Ethernet adapters (default address)


0300-???? ----	NE2000 compatible Ethernet adapters

Range:	may be placed at 0300h, 0320h, 0340h, or 0360h


0300-0303 ----	Panasonic 52x CD-ROM SCSI Miniport

Alternate addresses at 0320, 0340, 0360, and 0380


0300-030F ----	Philips CD-ROM player CM50


0300-030F ----	CompaQ Tape drive adapter. alternate address at 0100


0300-031F ----	prototype cards

Periscope hardware debugger


030C-030F ----	AIMS LAB PC Radio

configurable to 020C or 030C


0310-031F ----	Philips CD-ROM player CM50


0320-0323 ----	XT HDC 1   (Hard Disk Controller)

SeeAlso: PORT 01F0h-01F7h

0320  RW  data register

0321   W  reset controller

0321  R	  read controller hardware status (see #P074)

0322  R	  read DIPswitch setting on XT controller card

0322   W  generate controller-select pulse

0323   W  write pattern to DMA and INT mask register

Bitfields for XT hard disk controller hardware status:

Bit(s)	Description	(Table P074)

 7-6	always 0

 5	logical unit number

 4-2	always 0

 1	error occurred

 0	always 0


0324-0327 ----	XT HDC 2   (Hard Disk Controller)


0328-032B ----	XT HDC 3   (Hard Disk Controller)


032C-032F ----	XT HDC 4   (Hard Disk Controller)


0330-0331 ----	MIDI interface


0330-0333 ----	Adaptec 154xB/154xC SCSI adapter. default address.

Range:	alternate address at 0130, 0134, 0230, 0234 and 0334


0330-033F ----	CompaQ SCSI adapter. alternate address at 0130


0330-033F ----	Philips CD-ROM player CM50


0334-0337 ----	Adaptec 154xB/154xC SCSI adapter.

Range:	alternate address at 0130, 0134, 0230, 0234 and 0330


0338	  ----	AdLib soundblaster card


0338-033F ----	COM port addresses on UniRAM card by German magazine c't

Range:	selectable from 0238, 02E8, 02F8, 0338, 03E0, 03E8, 03F8


0340-034F ----	Philips CD-ROM player CM50


0340-034F ----	SCSI (1st Small Computer System Interface) adapter

Note:	alternate address at 0140-014F


0340-034F ----	Gravis Ultra Sound by Advanced Gravis

Range: The I/O address range is dipswitch selectable from:

   0200-020F and 0300-030F

   0210-021F and 0310-031F

   0220-022F and 0320-032F

   0230-023F and 0330-033F

   0240-024F and 0340-034F

   0250-025F and 0350-035F

   0260-026F and 0360-036F

   0270-027F and 0370-037F

SeeAlso: 0240-024F, 0746

0340   W  MIDI Control (see #P075)

0340  R	  MIDI Status (see #P076)

0341   W  MIDI Transmit Data

0341  R	  MIDI Receive Data

0342  RW  GF1 Page Register / Voice Select

0343  RW  GF1/Global Register Select (see #P077)

0344  RW  GF1/Global Data Low Byte (16 bits)

0345  RW  GF1/Global Data High Byte (8 bits)

0346   W  Mixer Data Port

0347  RW  GF1 DRAM

 Direct Read Write at Loction pointed with regs 43 and 44

Bitfields for Gravis Ultra Sound MIDI control register:

Bit(s)	Description	(Table P075)

 7	   Receive IRQ (1 = enabled)

 5-6   Xmit IRQ

 0-1   Master Reset (1 = enabled)

SeeAlso: #P070,#P072,#P076

Bitfields for Gravis Ultra Sound MIDI status register:

Bit(s)	Description	(Table P076)

 7	Interrupt pending

 5	Overrun Error

 4	Framing Error

 1	Transmit Register Empty

 0	Receive Register Empty

SeeAlso: #P075,#P077

(Table P077)

Values for Gravis Ultra Sound GF1/Global Registers:

---Voice specific registers---

 00h  w	    Voice Control (see #P078)

 01h  w	    Frequency Control

     bit 15-10	 Integer Portion

     bit 9-1	 Fractional Portion

 02h  w	    Start Address HIGH

     bit 12-0	 Address Lines 19-7

 03h  w	    Start Address LOW

     bit 15-9	 Address Lines 6-0

     bit 8-5	 Fractional Part of Start Address

 04h  w	    End Address HIGH

     bit 12-0	 Address Lines 19-7

 05h  w	    End Address LOW

     bit 15-9	 Address Lines 6-0

     bit 8-5	 Fractional Part of End Address

 06h  w	    Volume Ramp Rate

     bit 5-0	 Amount added

     bit 7-6	 Rate

 07h  w	    Volume Ramp Start

     bit 7-4	 Exponent

     bit 3-0	 Mantissa

 08h  w	    Volume Ramp End

     bit 7-4	 Exponent

     bit 3-0	 Mantissa

 09h  w	    Current Volume

     bit 15-12	 Exponent

     bit 11-4	 Mantissa

 0Ah  w	    Current Address HIGH

     bit 12-0	 Address Lines 19-7

 0Bh  w	    Current Address LOW

     bit 15-9	 Address Lines 6-0

     bit 8-0	 Fractional Position

 0Ch  w	    Pan Position

     bit 3-0	 Pan Postion

 0Dh  w	    Volume Control (see #P079)

 0Eh  w	    Active Voices

     bit 5-0	 #Voices -1  (allowed 13 - 31)

 0Fh  w	    IRQ Source Register (see #P080)

---NOT voice specific---

 41h  r/w   DRAM DMA Control (see #P081)

 42h  w	    DMA Start Address

     bits 15-0	 DMA Address Lines 19-4

 43h  w	    DRAM I/O Address LOW

 44h  w	    DRAM I/O Address HIGH

     bits 0-3	 Upper 4 Address Lines

 45h  r/w   Timer Control

     bit 3	 Enable Timer 2

     bit 2	 Enable Timer 1

 46h  w	    Timer 1 Count (granularity of 80 micro sec)

 47h  w	    Timer 2 Count (granulatity of 320 micro sec)

 48h  w	    Sampling Frequency

     rate = 9878400 / (16 * (FREQ + 2))

 49h  r/w   Sampling Control (see #P082)

 4Bh  w	    Joystick Trim DAC

 4Ch  r/w   RESET

     bit 2	 GF1 Master IRQ Enable

     bit 1	 DAC Enable

     bit 0	 Master Reset

---Voice specific registers---

 80h  r	    Voice Control (see 00h)

 81h  r	    Frequency Control (see 01h)

 82h  r	    Start Address HIGH (see 02h)

 83h  r	    Start Address LOW (see 03h)

 84h  r	    End Address HIGH (see 04h)

 85h  r	    End Address LOW (see 05h)

 86h  r	    Volume Ramp Rate (see 06h)

 87h  r	    Volume Ramp Start (see 07h)

 88h  r	    Volume Ramp End (see 08h)

 89h  r	    Current Volume (see 09h)

 8Ah  r	    Current Address HIGH (see 0Ah)

 8Bh  r	    Current Address LOW (see 0Bh)

 8Ch  r	    Pan Position (see 0Ch)

 8Dh  r	    Volume Control (see 0Dh)

 8Eh  r	    Active Voices (see 0Eh)

 8Fh  r	    IRQ Status (see 0Fh)

SeeAlso: #P076

Bitfields for Gravis Ultra Sound voice control global register:

Bit(s)	Description	(Table P078)

 7	 IRQ pending

 6	 Direction

 5	 Enable WAVE IRQ

 4	 Enable bi-directional Looping

 3	 Enable Looping

 2	 Size data (8/16 bits)

 1	 Stop Voice

 0	 Voice Stopped

SeeAlso: #P077,#P079

Bitfields for Gravis Ultra Sound volume control global register:

Bit(s)	Description	(Table P079)

 7	 IRQ Pending

 6	 Direction

 5	 Enable Volume Ramp IRQ

 4	 Enable bi-directional Looping

 3	 Enable Looping

 2	 Rollover Condition

 1	 Stop Ramp

 0	 Ramp Stopped

SeeAlso: #P077,#P078

Bitfields for Gravis Ultra Sound IRQ source register:

Bit(s)	Description	(Table P080)

 7	 WaveTable IRQ pending

 6	 Volume Ramp IRQ pending

 4-0	 Voice Number

SeeAlso: #P077,#P078,#P081

Bitfields for Gravis Ultra Sound DRAM DMA control register:

Bit(s)	Description	(Table P081)

 7	 Invert MSB

 6	 Data Size (8/16 bits)

 5	 DMA Pending

 3-4	 DMA Rate Divider

 2	 DMA Channel Width (8/16 bits)

 1	 DMA Direction (1 = read)

 0	 DMA Enable

SeeAlso: #P077,#P080

Bitfields for Gravis Ultra Sound sampling control register:

Bit(s)	Description	(Table P082)

 7	 Invert MSB

 6	 DMA IRQ pending

 5	 DMA IRQ enable

 2	 DMA width (8/16 bits)

 1	 Mode (mone/stereo)

 0	 Start Sampling

SeeAlso: #P077


0340-0357 ----	RTC (1st Real Time Clock for XT)

(used by TIMER.COM v1.2 which is the 'standard' timer program)

Range:	alternate at 0240-0257

SeeAlso:  PORT 0240h-0257h

0340  RW  0.001 seconds	0-99

0341  RW  0.1 and 0.01 seconds	0-99

0342  RW  seconds	0-59

0343  RW  minutes	0-59

0343  RW  hours	0-23

0345  RW  day of week	1-7

0346  RW  day of month	1-31

0347  RW  month	1-12

0348  RW  RAM (upper nybble only)

0349  RW  year	0-99

034A  RW  RAM last month storage

034B  RW  RAM year storage (-80)

034C  RW  RAM reserved

034D  RW  RAM not used

034E  RW  RAM not used

034F  RW  RAM not used

0350  R	  interrupt status register

0351   W  interrupt control register

0352   W  counter reset

0353   W  RAM reset

0354  R	  status bit

0355   W  GO command

0356  ??  standby interrupt

0357  ??  test mode


0348-0357 ----	DCA 3278


034C-034F ----	Gravis UltraMax by Advanced Gravis

Range:	The I/O address range is dipswitch selectable from:

   0200-020F and 0300-030F

   0210-021F and 0310-031F

   0220-022F and 0320-032F

   0230-023F and 0330-033F

   0240-024F and 0340-034F

   0250-025F and 0350-035F

   0260-026F and 0360-036F

   0270-027F and 0370-037F


035A-035B ----	Adaptec AH1520 jumper settings

035A  R	  I/O channel setup (see #P083)

035B  R	  transfer mode setup (see #P084)

Bitfields for Adaptec AH1520 channel setup jumper settings:

Bit(s)	Description	(Table P083)

 7	SCSI parity disabled

 6-5	DMA channel (00 = channel 0, 01 = 5, 10 = 6, 11 = 7)

 4-3	IRQ number (00 = IRQ9, 01 = IRQ10, 10 = IRQ11, 11 = IRQ12)

 2-0	SCSI ID

SeeAlso: #P084

Bitfields for Adaptec AH1520 transfer mode setup jumper settings:

Bit(s)	Description	(Table P084)

 7	DMA transfer mode (clear for PIO)

 6	boot enabled

 5-4	boot type

00 ???

01 boot from floppy

10 print configured options

11 boot from hard disk

 3	enable sync negotiation

 2	enable target disconnection

 1-0	unused???

SeeAlso: #P083


035F	  ----	ARTEC Handyscanner A400Z.  alternate address at 15F.


0360-036F ----	PC network (AT)

0360-0367 ----	PC network (XT only)


0360-036F ----	National Semiconductor DP8390(1)C/NS3249C network chipset

Note:	cards based on this IEEE 802.3 networking chipset can use any range

  of 16 consecutive addresses, and provide a total of four pages of

  sixteen registers (see #P085,#P086,#P087,#P098

(Table P085)

Values for NS DP8390C/NS3249C network chipset Page 0 registers:

Number	Read Register	Write Register

 00h	Command reg. (see #P089)	CR	Command reg.	CR

 01h	current local DMA address 0	CLDA0	page start reg.	PSTART

 02h	current local DMA address 1	CLDA1	page stop reg.	PSTOP

 03h	boundary pointer	BNRY	boundary pointer	BNRY

 04h	transmit status reg.	TSR	Tx page start address	TPSR

 05h	number of collisions reg.	NCR	Tx byte count reg.0	TBCR0

 06h	FIFO	Tx byte count reg.1	TBCR1

 07h	interrupt status reg.	ISR	interrupt status reg.	ISR

 08h	current remote DMA address 0	CRDA0	remote start addr.reg.0 RSAR0

 09h	current remote DMA address 1	CRDA1	remote start addr.reg.1 RSAR1

 0Ah	reserved	remote byte count reg.0 RBCR0

 0Bh	reserved	remote byte count reg.1 RBCR1

 0Ch	receive status reg.	RSR	Rx configuration reg.	RCR

 0Dh	tally counter 0 (frame errors)	CNTR0	Tx configuration reg.	TCR

 0Eh	tally counter 1 (CRC errors)	CNTR1	data configuration reg. DCR

 0Fh	tally counter 2 (missed pkt)	CNTR2	interrupt mask reg.	IMR

SeeAlso: #P086,#P087,#P088

(Table P086)

Values for NS DP8390C/NS3249C network chipset Page 1 registers:

Number	Read/Write

 00h	Command	CR (see #P089)

 01h	physical address reg.0	PAR0

 02h	physical address reg.1	PAR1

 03h	physical address reg.2	PAR2

 04h	physical address reg.3	PAR3

 05h	physical address reg.4	PAR4

 06h	physical address reg.5	PAR5

 07h	current page reg.	CURR

 08h	multicast address reg.0 MAR0

 09h	multicast address reg.1 MAR1

 0Ah	multicast address reg.2 MAR2

 0Bh	multicast address reg.3 MAR3

 0Ch	multicast address reg.4 MAR4

 0Dh	multicast address reg.5 MAR5

 0Eh	multicast address reg.6 MAR6

 0Fh	multicast address reg.7 MAR7

SeeAlso: #P085,#P087,#P088

(Table P087)

Values for NS DP8390C/NS3249C network chipset Page 2 registers:

Number	Read Register	Write Register

 00h	Command	CR	Command	 CR

 01h	page start reg.	PSTART	current local DMA addr.0 CLDA0

 02h	page stop reg.	BPSTOP	current local DMA addr.1 CLDA1

 03h	remote next packet pointer	remote next packet pointer

 04h	Tx page start address	TPSR	reserved

 05h	local next packet pointer	local next packet pointer

 06h	address counter (upper)	address counter (upper)

 07h	address counter (lower)	address counter (lower)

 08h	reserved	reserved

 09h	reserved	reserved

 0Ah	reserved	reserved

 0Bh	reserved	reserved

 0Ch	Rx configuration reg.	RCR	reserved

 0Dh	Tx configuration reg.	TCR	reserved

 0Eh	data configuration reg.	DCR	reserved

 0Fh	interrupt mask reg.	IMR	reserved

Note:	this is a diagnostics page, and should never be modfied under normal

  operation.

SeeAlso: #P085,#P086,#P088

(Table P088)

Values for NS DP8390C/NS3249C network chipset Page 3 registers:

Number	Read Register	Write Register

 00h	Command CR (see #P089)	Command CR

Note:	Test Page - should never be modified!

SeeAlso: #P085,#P086,#P087

Bitfields for NS DP8390C/NS3249C network chipset command register (00h):

Bit(s)	Description	(Table P089)

 0	software reset command (1=offline, 0=online)

 1	do not activate NIC after reset command

 2	start transmision of a packet

 3-5	remote DMA command

000 not allowed

001 remote read

010 remote write

011 send packet

1xx abort/complete rmote DMA

 6-7	page select

00 register page 0

01 register page 1

10 register page 2

11 register page 3

SeeAlso: #P088


0370-0377 ----	FDC 2  (2nd Floppy Disk Controller)	first FDC at 03F0

Note:	floppy disk controller is usually an 8272, 8272A, NEC765 (or

  compatible), or an 82072 or 82077AA for perpendicular recording at

  2.88M

SeeAlso: PORT 03F0h-03F7h

0370  R	  diskette Extra High Density controller board jumpers (AT)

0370  R	  diskette controller status A (PS/2, PS/2 model 30)

0371  R	  diskette controller status B (PS/2, PS/2 model 30)

0372   W  diskette controller DOR (Digital Output Register)

0374  R	  diskette controller main status register

0374   W  diskette controller datarate select register

0375  RW  diskette controller command/data register

0376  RW  (2nd FIXED disk controller status/data register)

0377  RW  (2nd FIXED disk controller drive address register)

0377  R	  diskette controller DIR (Digital Input Register)

0377   W  select register for diskette data transfer rate


0378	  ----	Covox 'Speech Thing' COMPATIBLE SPEECH OUTPUT

SeeAlso: PORT 022Fh"mc-soundmachine",PORT 0388h-038Fh"soundmachine"

0378   W  speech output via printer port

  (with mc-soundmachine, enabled if bit4=1 in 38F)


0378-037A ----	parallel printer port, same as 0278 and 03BC

0378   W  data port

0379  RW  status port

037A  RW  control port

037B  ??  bit 7: shadow RAM on/off (UniRAM adapter,according to c't 7/90)


0380-038F ----	2nd Binary Synchronous Data Link Control adapter (see 03A0)

0380  RW   on board 8255 port A, internal/external sense

0381  RW   on board 8255 port B, external modem interface

0382  RW   on board 8255 port C, internal control and gating

0383  RW   on board 8255 mode register

0384  RW   on board 8253 channel square wave generator

0385  RW   on board 8253 channel 1 inactivity time-out

0386  RW   on board 8253 channel 2 inactivity time-out

0387  RW   on board 8253 mode register

0388  RW   on board 8273 read: status  write: command

0389  RW   on board 8273 read: response	 write: parameter

038A  RW   on board 8273 transmit interrupt status

038B  RW   on board 8273 receiver interrupt status

038C  RW   on board 8273 data


0388-0389 ---- Sound Blaster / Adlib port - MONO OUTPUT

SeeAlso: PORT 0220h-0223h,PORT 0388h-038Fh"soundmachine"

0388  R	  both speakers -- Status

    bit7  : interrupt request (IRQ)

    bit6  : timer 1 overflow

    bit5  : timer 2 overflow

    bit4-0: reserved

0388   W  both speakers -- Address port (see #P090)

index in OPL2 (YMF3812), OPL3 (YMF262), OPL4 (YF278-F)

0389   W  data port

(Table P090)

Values for Sound Blaster dual-speaker address port index:

 01h	Enable waveform control

bit 7-6: (OPL4, OPL3 in OPL2 mode only) lsi test

bit 5: (OPL2 only) wave select enable (WS)

       (OPL4, OPL3) lsi test

bit 4-0: lsi test

 02h	Timer #1 data (OPL2 and OPL3 in OPL2 mode only)

 03h	Timer #2 data (OPL2 and OPL3 in OPL2 mode only)

 04h	Timer control flags (OPL2 and OPL3 in OPL2 mode only)

bit 7  : reset interrupt (RST)

bit 6  : timer 1 mask (MASK1)

bit 5  : timer 2 mask (MASK2)

bit 4-2: reserved

bit 1  : start timer 2 (ST2)

bit 0  : start timer 1 (ST1)

 04h	(OPL3 in OPL3 mode only) connection select

bit 7-6: reserved

bit 5-0: connection selection

 05h	(OPL3) compatibility register

bit 7-1: reserved

bit 0: enable OPL3 mode (NEW), default disabled

 08h	Speech synthesis mode

bit 7: (OPL2 only) speech synthesis or FM music mode (CSM)

bit 6: select keyboard split point (SEL/NTS)

bit 5-0: reserved

 20h-35h Amplitude Modulation / Vibrato

bit 7: AM modulation (AM)

bit 6: vibrato (VIB)

bit 5: sustain (EG)

bit 4: keyboard scaling rate (KSR)

bit 3-0: multi (MF)

 40h-55h Level key scaling / Total level

bit 7-6: key scale level (KSL)

bit 5-0: total level (TL)

 60h-75h Attack / Decay rate

bit 7-4: attack rate

bit 3-0: decay rate

 80h-95h Sustain / Release rate

bit 7-4: sustain level

bit 3-0: release rate

 A0h-A8h Octave / Frequency (LSB)

 A9h-AFh ???

 B0h-B8h Octave / Frequency Number

bit 7-6: reserved

bit 5  : key on, mute

bit 4-2: block, octave

bit 1-0: f-number (MSB)

 BDh	percussion, vibrato, AM	(OPL2, OPL3 in OPL2 mode only)

bit 7: amplitude modulation (AM)

bit 6: vibrato (VIB)

bit 5: ryhthm, percussion on/off (R)

bit 4: bass drum on/off (BD)

bit 3: snare drum on/off (SD)

bit 2: tom-tom on/off (TOM)

bit 1: top cymbal on/off (TC)

bit 0: hi hat on/off (HH)

 C0h-C8h Feedback / Algorithm

bit 7-4: OPL3: channel D-A

bit 3-1: feedback

bit 0: connection

 E0h-F5h Waveform Selection

bit 7-3: reserved

bit 2  : (OPL3) waveform bit2

bit 1-0: waveform

SeeAlso: #P091

(Table P091)

Values for Sound Blaster registers inside groups:

Offset

 +00..+02: operators 1-3    modulator channel 1-3

 +03..+05: operators 4-6    carrier channel 1-3

 +08..+0A: operators 7-9    modulator channel 4-6

 +0B..+0D: operators 10-12  carrier channel 4-6

 +10..+12: operators 13-15  modulator channel 7-9

 +13..+15: operators 16-18  carrier channel 7-9

 +06, +07, +0E, +0F: reserved

SeeAlso: #P090


0388-0389 ---- Soundblaster PRO FM-Chip


0388-038B ---- Soundblaster 16 ASP FM-Chip


0388-038F ----	mc-soundmachine, mc 03-04/1992 - SPEECH I/O

Note:	Adlib-compatible, Covox 'voice master' & 'speech thing' compatible

  soundcard

SeeAlso: PORT 022Fh"soundmachine",PORT 0278h"Covox"

0388   W  Covox 'speech thing'compatible speech output via printer port?

    enabled if bit 6 set in PORT 038Fh

0388  RW  Adlib compatible (YM3812), enabled if bit 0 set in PORT 038Fh

    (see PORT 0388h-0389h"Sound Blaster"

0389   W  Adlib compatible (YM3812), enabled if bit 0 set in PORT 038Fh

    (see PORT 0388h-0389h"Sound Blaster"

038A   W  I²C control for TDA7302 NF-MUX and X24C04 EEPROM

    bit 7: I²C bus SDA out (data),  enabled if bit2=1 in PORT 038Fh

    bit 0: I²C bus SCL out (clock), enabled if bit2=1 in PORT 038Fh

038B  R	  I²C status for TDA7302 NF-MUX and X24C04 EEPROM

    bit 7: I²C bus SDA in (data),  enabled if bit2=1 in PORT 038Fh

    bit 0: I²C bus SCL in (clock), enabled if bit2=1 in PORT 038Fh

038F  RW  configuration port (power on default=0, all features disabled)

    bit 7 Covox 'voice master' enabled at PORT 022Fh

    bit 6  ""   'speech thing' enabled at PORT 03BCh

    bit 5  ""	   enabled at PORT 0278h

    bit 4  ""	   enabled at PORT 0378h

    bit 3  not used (0388???)

    bit 2  I²C bus enabled (PORT 038Ah,PORT 038Bh)

    bit 1  gameport enabled (PORT 0201h)

    bit 0  AdLib registers (PORT 0388h,PORT 0389h) enabled


0390-0397 ----	Sunshine EW-901B, EW-904B

EPROM writer card for EPROMs up to 27512

0390-0393  ??  adresses of the 8255 on the EW-90xB


0390-039F ----	Cluster adapter (AT)

0390  ??  (adapter 0)	(XT)

0391  ??  (adapter 0)	(XT)

0392  ??  (adapter 0)	(XT)

0393  ??  (adapter 0)	(XT)


0398-0399 ----	Dell Enhanced Parallel Port

SeeAlso: 002E, 015C, 026E

0398   W  index for data port

0399  RW  EPP command data


03A0-03AF ----	1st SDLC (Binary Synchronous Data Link Control adapter)

03A0  RW   on board 8255 port A, internal/external sense

03A1  RW   on board 8255 port B, external modem interface

03A2  RW   on board 8255 port C, internal control and gating

03A3  RW   on board 8255 mode register

03A4  RW   on board 8253 counter 0 unused

03A5  RW   on board 8253 channel 1 inactivity time-out

03A6  RW   on board 8253 channel 2 inactivity time-out

03A7  RW   on board 8253 mode register

03A8  RW   on board 8251 data

03A9  RW   on board 8251 command/mode/status register


03B0-03BF ----	MDA  (Monochrome Display Adapter based on 6845)

03B0   W  same as 03B4

03B1  RW  same as 03B5

03B2   W  same as 03B4

03B3  RW  same as 03B5

03B4   W  MDA CRT index register	 (MDA/mono EGA/mono VGA)

selects which register (0-11h) is to be accessed through 03B5h

Note: this port is read/write on some VGAs

bit7-6: VGA: reserved (0)

bit5  : VGA: reserved for testing (0)

bit4-0: selects which register is to be accessed through 03B5h

03B5  RW  MDA CRT data register	 (MDA/mono EGA/mono VGA)

selected by port 3B4. registers 0C-0F may be read

Color adapters are at 3D4/3D5, but are mentioned here for

  better overview.

There are differences in names and some bits functionality

  on EGA, VGA in their native modes, but clones in their

  emulation modes emulate the original 6845 at bit level. The

  default values are for MDA, HGC, CGA only, if not otherwise

  mentioned.

03B6   W  same as 03B4h

03B7  RW  same as 03B5h

03B8  rW  MDA mode control register (see #P093)

03B9  ?W  reserved for color select register on color adapter

03B9   W  MDA/HGC: set lightpen flipflop (value written is ignored)

cannot be found on native mono EGA, mono VGA (without

  translation ROM)

03BA  R	  CRT status register (see #P094)

    (EGA/VGA) input status 1 register

03BA   W  (mono EGA/mono VGA) feature control register

    (see PORT 03DAh-W for details; VGA, see PORT 03CAh-R)

03BB   W  light pen strobe reset (on any value)

(Table P092)

Values for mono video adapter CRT data register index:

  defaults:    MDA/HGC	HGC   CGA   CGA	  CGA

 text  graph text1 text2 graph

   7  720x348  1     3	  5,6

 00h	horizontal total	  61h	35h   38h   71h	  38h

      ET4000: in VGA mode scanlines-5

      in EGA mode scanlines-2

 01h	horizontal displayed	  50h	2Dh   28h   50h	  28h

      horizontal display end-1 (EGA,VGA)

 02h	horizontal sync position	  52h	2Eh   2Dh 5Ah/5Ch 2Dh

 03h	sync pulse width	  0Fh 07h/0Fh 0Ah   0Ah	  0Ah

       bit7-4 vsync, bit3-0 hsync

      end horizontal blanking (EGA,VGA)

       VGA    : bit7=1	  : enable read access to regs

    10h, 11h (otherwise VGA clones

    may show lightpen values)

       EGA,VGA: bit6-5=0-3: display enable skew control

bit4-0	  : end blanking

 04h	vertical total (vcycle-1)	  19h	5Bh   1Fh   1Fh	  7Fh

       bit7 only used on MCGA

      start horizontal retrace (EGA, VGA)

      Genoa SuperEGA only???:

       bit7  : start at odd memory address

       bit6-5: horizontal sync skew

       bit4-0: start retrace+ retrace width

 05h	vertical total adjust	  06h	02h   06h   06h	  06h

       bit7-5 only used on MCGA

      end horizontal retrace (EGA, VGA)

       bit7  : EGA: start at odd memory address

       VGA: bit5 of end horizontal retrace

       bit6-5: horizontal sync skew

       bit4-0: end horizontal retrace

 06h	vertical displayed	  19h	57h   19h   19h	  64h

       bit7 only used on MCGA

      EGA: vertical total-1

      VGA: vertical total-2

 07h	vertical sync pulse width-1	  19h	57h   1Ch   1Ch 70h/66h

       bit7  only used on MCGA

      controller overflow (EGA,VGA)

       bit7: VGA: bit9 of start vertical retrace (10h)

       bit6: VGA: bit9 of vertical display end (12h)

       bit5: VGA: bit9 of vertical total (06h)

     EGA: bit5 of cursor-position (0Ah)

       bit4: bit8 of line compare (18h)

       bit3: bit8 of start vertical blanking (15h)

       bit2: bit8 of vertical retrace start (10h)

       bit1: bit8 of vertical display end (12h)

       bit0: bit8 of vertical total (06h)

 08h	interlace mode (not MCGA)	  02h	02h   02h   02h	  02h

       bit7-2: reserved

       bit1  : delay

       bit0=1: interlace on

      preset row scan (EGA, VGA)

       bit7  : reserved

       bit6-5: VGA: byte panning

       bit4-0: start row scan after retrace

 09h	maximum scan lines	  0Dh	03h   07h   07h	  01h

       bit7  : VGA: double scan active

       bit6  : VGA: bit9 of line compare (18h)

       bit5  : VGA: bit9 of start vertical blanking (15h)

       bit4-0: maximum scan line 00..31 (height-1)

 0Ah	cursor start	  0Bh	00h   06h   06h 06h/00h

       bit7  : reserved

       bit6-5: original 6845: cursor on/off, blink intervall

       (not on all adapters, as original MDA, CGA have

       extra circuitrity to avoid this!!)

       bit6-5: native EGA: not used

       bit6  : VGA: not used

       bit5=0: VGA: cursor on

       bit4-0: first cursor scanline

 0Bh	cursor end	  0Ch	00h   07h   07h 07h/00h

       bit7  : reserved

       bit6-5: EGA, VGA: cursor skew control

       bit4-0: end cursor row

 0Ch	start address high	  00h	00h   00h   00h	  00h

       bit7-6 not used by original 6845 (MDA,HGC,CGA)

 0Dh	start address low	  00h	00h   00h   00h	  00h

 0Eh RW	cursor location high	  00h	00h   00h   00h	  00h

       bit7-4 not used by original 6845 (MDA,HGC,CGA)

       bit5-4 reserved on MCGA

 0Fh RW cursor location low	  00h	00h   00h   00h	  00h

---for 10h-14h MCGA registers see at 3D4h/3D5h---

 10h R-	light pen high (MDA/CGA/EGA only, some HGC, few VGA

       clones in emulation, not with ET4000)

 10h R-	native VGA with bit7=1 in end horizontal blanking (03h) and ET4000:

       start vertical retrace

 10h R- MCGA at 3D5h only: mode control status register

 10h -W EGA, VGA: start vertical retrace

 10h -W MCGA at 3D5h only: mode control register

 11h R- light pen low (MDA/CGA/EGA only, some HGC, few VGA

       clones in emulation, not with ET4000)

 1xh	according to a info paper by Quarterdeck three extra

     write-only registers are available in HGC+ for controlling

     two extra RAMfont modes. No more info available.

     This might conflict with MCGA/EGA/VGA registers.

 11h R- native VGA with bit7=1 in end horizontal blanking (03h):

       end vertical retrace

 11h -W EGA, VGA: end vertical retrace

       bit7  : VGA: protection bit

    =0 enable write access to 00h-07h

    =1 read only regs 00h-07h with the exception

       of bit4 in 07h. ET4000: protect 35h also.

       bit6  : VGA: =0 three, =1 five refreshcycles/line

       ET4000: reserved

       bit5=0: (MCGA also) enable vertical interrupt

       bit4=0: (MCGA also) clear vertical interrupt

   =1:	   no effect

       bit3-0: (MCGA also) vertical retrace end

 11h RW MCGA at 3D5h only: interrupt control register

 12h	EGA, VGA: vertical display end register

 12h RW MCGA at 3D5h only: character generator/sync pol. register

 12h R- MCGA at 3D5h only: display sense register

       (with bit7=1 in 11h only)

 13h	EGA, VGA: row offset register

       logical screen line width in

byte mode : bytes/(line/2)

word mode : bytes/(line/4)

dword mode: bytes/(line/8)

 13h -W MCGA at 3D5h only: character font pointer register

 14h	EGA, VGA: underline location register

       bit7=0: reserved

       bit6  : VGA: 0=word-mode, 1=dword-mode (see 17h, bit6)

       bit5  : VGA: 0=standard address counter clock

    1=address counter clock/4 (see 17h, bit3)

       bit4-0: horizontal underline row scan

 14h -W MCGA at 3D5h only: number of characters to load during

       vretrace period

 15h	EGA, VGA: start vertical blanking-1

 16h	EGA, VGA: end vertical blanking register

       bit7-5 : EGA: reserved, but used on original EGA???

       bit4-0 : end vertical blanking

 17h	EGA, VGA: mode control register (see #P095)

 18h	EGA, VGA: line compare register

 19h	Genoa SuperEGA only: double scan control

       at 3B5h only in MDA, HGC emulation, but at 3D5h even in

       mono EGA modes.

       bit7-5 : reserved

       bit4   : HR/VR width adjust flag for double scan mode

       bit3-1 : 1=test, 0=normal

       bit0   : double scan enable

 1Bh	ET3000 only: x-zoom start register

      The existence of this register is often used to decide

       between ET3000 and ET4000, as the ET4000 does not offer

       hardware-zoom features.

 1Ch	ET3000 only: x-zoom end register

 1Dh	ET3000 only: y-zoom start register low

 1Eh	ET3000 only: y-zoom end register low

 1Fh	ET3000 only: y-zoom start & end high register

 20h	ET3000 only: zoom start address register low

 21h	ET3000 only: zoom start address register medium

 23h	ET3000 only: extended start address (see 33h)

 24h	ET3000 only: compatibility register (see 34h)

 25h	ET3000 only: overflow high register (see 35h, 07h)

 32h	ET4000: RAS/CAS configuration ('key' protected) (see #P096)

 33h	ET4000: extended start address

      This register is often used to decide between ET4000

      and ET3000, when bit3-0 can be reread after write.

       bit7-4 : reserved

       bit3-2 : cursor address bit 17-16

       bit1-0 : linear start address bits 17-16

 34h	ET4000: 6845 compatibility control register ('key' protected)

  (see #P097)

 35h	ET4000: overflow high register (protected by 11h, bit7) (see #P098)

 36h	ET4000: video system configuration 1 ('key' protected) (see #P099)

 37h	ET4000: video system configuration 2 ('key' protected) (see #P100)

Notes:	MDA, HGC, CGA: 6845 registers 00h-0Dh are write only, 0Eh, 0Fh

       are r/w, and 10h-11h are read only.

       The alternative initial defaults may be used

       sometimes on modern adapters.

HGC+(RamFont): as with HGC, but 3 (unknown) registers more for

       font control

emulations   : more registers may be r/w, but most often it's

       the same as with native 6845.

MCGA (CGA+)  : Though this is a mixture of CGA and VGA, most

       registers are same as with CGA, but with some

       enhancements and incompatibilities to EGA, VGA.

native EGA   : registers 00h-0Bh are write only, 0Ch-0Fh are

       r/w, 10h-11h are read/write, 12h-18h are write

       only. More regs may be r/w on enhanced clones.

GenoaSuperEGA: adapter with chips SEQCRT GN006001 and GRAT

       GN006002, e.g. c't Super-EGA adapter. Is EGA

       clone with up to 800x600 and full 6845 emulation.

native VGA   : all registers 00-18h are r/w, but 00h-07h are

       write-locked if bit7 in 11h is set.

ET4000	     : same as VGA, but with additional r/w registers

       32h-37h, protected by 'key' except 33h, 35h

       (see 3BFh for details). 35h is protected by

       bit7 in 11h. The 'key' must be issued at least

       after each power on or synchronous reset.

SeeAlso: #P093,#P094

Bitfields for mono video adapter mode control register:

Bit(s)	Description	(Table P093)

 7 not used by MDA, page number on HGC

 6	not used

 6  R-O	(mono ET4000 only) report status of bit 1 (enable 2nd page) of

  Hercules compatibility register (PORT 03BFh)

 5	enable blink (0 = intense background, 1 = blink)

 4	not used

 3	video enable

 2	not used

 1	(MDA) not used

(HGC) graphics enable

the 6845 has to be reprogrammed completely, if this bit is

  changed, otherwise the TTL-monitor may be damaged by wrong

  sync impulses!

 0	high resolution mode (always set on MDA)

---mono ET4000 only, W-O ---

 7-0	=A0h: second part of 'key', see Hercules compatibility register

  (PORT 03BFh) for details

Note:	this port might be completely or partially readable on very few MDA,

  HGC clones or emulations (e.g. Genoa SuperEGA), but not with the

  majority of original and clone chips.  It cannot be found on

  native mono EGA, mono VGA, but on most clones, where it is usually

  R/W.

SeeAlso: #P092,#P094

Bitfields for mono video adapter CRT status register:

Bit(s)	Description	(Table P094)

 7	HGC: vertical sync pulse in progress

 6-4	adapter identification

(MSD says) if bit 7 changes within 8000h reads then

    =000 adapter is Hercules or compatible

    =001 adapter is Hercules+

    =101 adapter is Hercules InColor

    else: adapter is unknown

 6-4	=111 on MDA and some HGC clones

 5-4	(mono EGA, mono ET4000) diagnose video display feedback

select from color plane enable

 3	(MDA,HGC) pixel stream (0=currently black, 1=currently white)

(mono EGA, mono VGA) vertical retrace in progress

 2-1	(MDA) reserved

 2	(HGC, mono EGA) lightpen flipflop set

(mono ET4000) reserved (0)

 1	(HGC) lightpen input stream (if set, current value to get from

  PORT 03B5h/10h-11h)

(mono ET4000) reserved (0)

 0	horizontal drive enabled

SeeAlso: #P092,#P093

Bitfields for EGA,VGA mode control register:

Bit(s)	Description	(Table P095)

 7	0=CRTC reset and stop, 1=resume reset

 6	0=word-mode, 1=byte-mode (VGA: see 14h, bit6)

 5	0=14bit, 1=16bit address wrap

 4	(native VGA only) reserved (0)

 4	(EGA and most VGA clones) output control

0: video driver active

1: video driver not active

 3	linear address counter clock (0 = standard, 1 = clock/2)

(VGA: see register 14h, bit 5)

 2	horizontal retrace clock (0 = standard, 1 = clock/2)

 1	row scan counter

0: address bit 14 = scan bit 1

1: address bit 14 not altered

 0	6845 compatibility mode

0: address bit 13 = scan bit 0 (as with 6845)

1: address bit 13 not altered

SeeAlso: #P092

Bitfields for ET4000 RAS/CAS configuration register:

Bit(s)	Description	(Table P096)

 7	static column memory

ET4000/W32i: interleave mode

 6	RAL RAS&CAS column setup time

 5	RCD RAS & CAS time

 4-3	RSP, RAS pre-charge time

 2	CPS, CAS pre-charge time

 1-0	CSW, CAS low pulse width

SeeAlso: #P092,#P097

Bitfields for ET4000 compatibility control register:

Bit(s)	Description	(Table P097)

 7	6845 compatibility enabled

 6	ENBA enable double scan/underline in AT&T mode

 5	ENXL enable translation ROM on writing

 4	ENXR enable translation ROM on reading

 3	ENVS VSE register port address

 2	TRIS tristate ET4000 output pins

 1	CS2 MCLCK clock select 2

 0	EMCK enable translation of CS0 bit

SeeAlso: #P092,#P096,#P098

Bitfields for ET4000 overflow high register:

Bit(s)	Description	(Table P098)

 7	vertical interlace mode

 6	alternate RMW control

 5	external sync reset (gen-lock) the line/chr counter

 4	line compare bit10

 3	vertical sync start bit10

 2	vertical display end bit10

 1	vertical total bit10

 0	vertical blank start bit10

SeeAlso: #P092,#P097,#P099

Bitfields for ET4000 video system configuration 1 register:

Bit(s)	Description	(Table P099)

 7	enable 16bit I/O read/write

 6	enable 16bit display memory read/write

 5	addressing mode (0=IBM, 1=TLI)

 4	0=segment / 1=linear system configuration

 3	font width control (1=up to 16bit, 0=8bit)

 2-0	refresh count per line-1

SeeAlso: #P092,#P098,#P100

Bitfields for ET4000 video system configuration 2 register:

Bit(s)	Description	(Table P100)

 7	DRAM display memory type (1=VRAM, 0=DRAM)

 6	test (1=TLI interal test mode)

 5	priority threshold control (0=more mem BW)

 4	disable block read-ahead

 3	display memory data depth

 2	bus read data latch control

 1-0	display memory data bus width

SeeAlso: #P092,#P099


03BC-03BF ----	PARALLEL PRINTER PORT (MDA's LPT1)

Range:	PORT 0278h, PORT 0378h, or PORT 03BCh

03BC   W  data port

03BC  R	  bidirectional port: input from connector

  unidirectional port: last value written to port

03BD  RW  status port (see #P101)

03BE  RW  control port (see #P102)

Bitfields for parallel interface status port:

Bit(s)	Description	(Table P101)

 7	busy

 6	NOT acknowledge (approx. 5us low pulse)

 5	out of paper

 4	printer is selected

 3	*no* error

 2 	IRQ has *not* occurred

(PS/2) printer returned -ACK

 1-0	reserved

SeeAlso: #P102

Bitfields for parallel interface control port:

Bit(s)	Description	(Table P102)

 7-5    reserved

 7	(see PORT 037Bh bit 7)

 5	enable bidirectional port

(PS/2 also requires enabling via port 0102h)

 4	enable IRQ (via -ACK)

 3	select printer (SLCT IN line)

 2	=0 initialize printer (-RESET line)

 1	automatic line feed

 0	strobe (must be set for minimum of 5 microseconds)

SeeAlso: #P101


03BF	  ----	Hercules configuration switch register

Note:	can also be found on EGA and VGA clones in Hercules emulation

03BF   W  configuration switch register (see #P103)

03BF   W  (ET4000) Hercules compatibility register (see #P104)

03BF  RW  (Genoa SuperEGA) miscellaneous register

Note: only available in MDA, HGC, and CGA emulation; should be

  compatible with Hercules configuration register, but may contain

  additional features

Bitfields for Hercules configuration switch register:

Bit(s)	Description	(Table P103)

 7-2	reserved

 1	=0  disables upper 32K of graphics mode buffer

=1  enables upper 32K of graphics mode buffer

 0	=0  prevents graphics mode

=1  allows graphics mode

SeeAlso: #P104

Bitfields for ET4000 compatibility register:

Bit(s)	Description	(Table P104)

 1	=0 disables upper 32K of graphics mode buffer

=1 enables upper 32K of graphics mode buffer

 0	reserved (not needed for HGC graphics)

 7-0	=03h: first part of 'key' for access to some extra

     ET4000 regs. To issue the 'key', the following

     code must be executed:

      MOV DX, 3BFh

      MOV AL, 3

      OUT DX, AL

      MOV DX, 3D8h  (3B8h in mono mode)

      MOV AL, 0A0h

      OUT DX, AL

SeeAlso: #P103


03C0-03C7 ----	Sunshine EW-901, EW-901A, EW-904, EW-904A

EPROM writer card for EPROMs up to 27512

03C0-03C3	adresses of the 8255 on the EW-90x


03C0-03CF ----	EGA  (1st Enhanced Graphics Adapter)	alternate at 02C0

!!!

03C0  rW  EGA VGA ATC index/data register

 Every write access to this register will toggle an internal

 index/data selection flipflop, so that consequtive writes to

 index & data is possible through this port. To get a defined

 start condition, each read access to the input status register

 #1 (3BAh in mono / 3DAh in color) resets the flipflop to load

 index. If values are changed during the vertical retrace

 period only no flicker will occur.

index register (flipflop reset to 'index'): (default 20h)

 bit7-6: reserved

 bit5  : 0=CPU access (screen dark),

 1=video access to registers

 bit4-0: index in ATC (0..31)

indexed registers in ATC (flipflop set to 'data'):

 00h..0Fh 16 palette registers, each:

 bit7-6: reserved

 bit5  : secondary red video

 bit4  : secondary green/intensity video

 bit3  : secondary blue/mono video

 bit2  : primary red video

 bit1  : primary green video

 bit0  : primary blue video

 10h	mode control register

 bit7  : VGA: SB/SG select

 (0=4 pages á 64 regs, 1=16 pages á 16 regs)

 bit6  : VGA: PELCLK/2 (0=4bit color, 1=8bit color)

 bit5  : VGA: enable pixel panning

 (0=all, 1=up to line compare register value)

 bit4  : reserved

 bit3  : background intensity (0=16 colors, 1=blink)

 bit2  : line graphics enable (0=background, 1=line 8=9)

 bit1  : 1=mono, 0=color select

 bit0  : 1=graphics, 0=text select

 11h	EGA: overscan color register (see VGA: 11h) (default: 00h)

 bit7-6: reserved

 bit5  : secondary red (SR)

 bit4  : secondary green (SR) / intensity

 bit3  : secondary blue (SB)

 bit2  : primary red (PR)

 bit1  : primary green (PG)

 bit0  : primary blue (PB)

 11h	VGA: overscan color register (see EGA: 11h) (default: 00h)

 bit7  : secondary intensity border color (SI)

 bit6  : secondary red (SR)

 bit5  : secondary green (SG)

 bit4  : secondary blue (SB)

 bit3  : intensity border color (PI)

 bit2  : primary red (PR)

 bit1  : primary green (PG)

 bit0  : primary blue (PB)

 12h	color enable register

 bit7-6: reserved

 bit5-4: diagnose / video status select

EGA:	  VGA, ET4000:

  00b = PR/PB	     PR/PB

  01b = SB/PG	     SG/SB

  10b = SR/SG	     PI/PG

  11b = reserved     SI/SR

 bit3  : enable plane 3

 bit2  : enable plane 2

 bit1  : enable plane 1

 bit0  : enable plane 0

 13h	horizontal pixel panning register

 bit7-4: reserved

 bit3-0: horizontal pixel panning

 14h	VGA: color select register (default: 00h)

 bit7-4: reserved

 bit3  : s-color 7

 bit2  : s-color 6

 bit1  : s-color 5 (only with 16 pages á 16 regs)

 bit0  : s-color 4 (only with 16 pages á 16 regs)

 16h	ET3000, ET4000 only: ATC miscellanenous

 (at least on ET4000 'key' protected)

 This register is also supported by ET3000, but the

 description is proved for ET4000 only.

 bit7  : bypass the internal palette

 (e.g. for HiColor modes with Sierra RAMDACs)

 bit6  : reserved

 bit5-4: select high resolution / color mode

 bit3-0: reserved

03C1  R	  VGA	ATC index/data read register

03C2  R	  EGA VGA input status 0 register

 (Genoa SuperEGA in all emulation modes)

 bit6-5 are 'key' protected on ET4000.

 bit7  : CRT interrupt occured

 EGA: 0=vertical retrace in progress, 1=display

 bit6  : EGA and ET4000: feature control 1 (pin17)

 bit5  : EGA and ET4000: feature control 0 (pin19)

 bit4  : DIP switch sense

(0=closed, 1=open/switches readable)

 bit3-0: reserved

03C2   W  EGA VGA miscellaneous output register

 (Genoa SuperEGA in all emulation modes)

 bit7-6: vertical resolution

  00b= 200 lines (EGA)

  01b= 400 lines (VGA)

  10b= 350 lines (EGA/VGA)

  11b= 480 lines (VGA)

 vsync (bit7) / hsync (bit6) polarity

  (0=positive, 1=negative)

 bit5  : odd/even pagebit

 bit4  : EGA: 0=video driver on,

      1=video driver off (feature connector used)

 bit3-2: pixelclock

  00b= 14/25MHz (EGA/VGA)

  01b= 16/28Mhz (EGA/VGA)

  10b= EGA, VGA: external clock (EGA)

  11b= EGA, VGA: reserved

  10b= Genoa SuperEGA: 39Mhz

  11b= Genoa SuperEGA: 26,824Mhz

 bit1=1: enable CPU RAM access

 bit0  : CRTC port address

  0=3B4 mono

  1=3D4 color

    (color EGA: enable feature control at 3DAh,

status reg 1 at 3D2h)

03C3  RW  VGA	video subsystem enable (see also port 46E8h)

for IBM, motherboard VGA only

 bit7-4=0: reserved

 bit3	 : select video subsystem (address 46E8h)

 bit2-1	 : reserved

 bit0	 : select video subsystem (address 03C3)

03C4   W  EGA	TS index register

03C4  RW  VGA	sequencer index register

 bit7-3	 : reserved

 bit2-0	 : current TS index

03C5   W  EGA	TS data register

03C5  RW  VGA	sequencer data register

EGA, VGA indexed TS registers:

    00h reset register

 bit7-2 : reserved

 bit1 =0: synchronous reset (EGA/VGA)

 bit0 =0: asynchronous reset (EGA, ET4000)

  synchronous reset, also (VGA)

    01h clocking mode register / TS mode

 bit7-6 : reserved

 bit5 =1: VGA: screen refresh off

 bit4	: VGA: shift load (0=4x8, 1=1x32)

 bit3	: dot clock (0=normal, 1=clock/2)

 bit2	: serial shift video load (0=4x8, 1=2x16)

 bit1	: EGA: CRTC bandwidth (0=4/5, 1=2/5)

 bit0	: dot clocks (0=9, 1=8) (ET4000: see 06h)

    02h map mask register

 bit7-4 : reserved

 bit4	: Genoa SuperEGA only: plane4 ???

 bit3	: write enable display memory plane 3

 bit2	: write enable display memory plane 2

 bit1	: write enable display memory plane 1

 bit0	: write enable display memory plane 0

    03h character map select register / font select

 bit7-6 : reserved

 bit5	: VGA: bit3 for 2nd text-font

 bit4	: VGA: bit3 for 1st text-font

 bit3-2 : 2nd text-font (attr bit3=1)

 bit1-0 : 1st text-font (attr bit3=0)

  offset in font memory (4-7: VGA only)

   0 00b =  0KB

   0 01b = 16KB

   0 10b = 32KB

   0 11b = 48KB

   1 00b =  8KB

   1 01b = 24KB

   1 10b = 40KB

   1 11b = 56KB

    04h memory mode register

 bit7-4 : reserved

 bit3 =1: VGA: enable chain 4 linear graphics mode

 bit2	: 0=odd/even mode, 1=sequencial mode

 bit1 =1: extended memory (0=64KB, 1=more)

 bit0	: EGA: 1=textmode, 0=graphics mode

    06h ET3000 only: Zoom control register

    06h ET4000 only: TS state control (protected by 'key')

 bit7-3 : reserved

 bit2-1 : timing sequencer state bit2-1

   (bit0 is bit0 TS mode register)

   00 0b=  9 dots

   00 1b=  8 dots

   01 0b= 10	  (10-16 are ET4000 only)

   01 1b= 11

   10 0b= 12

   11 1b= 16

 bit0	: reserved

    07h ET3000/ET4000 only: TS auxiliary mode

 (at least on ET4000 protected by 'key')

 This register is also supported by ET3000, but

 the description is proved on ET4000 only:

 bit7	: 1=VGA, 0=EGA compatibility mode

 bit6	: select MCLK/2 (with bit0=0)

 bit5	: BIOS ROM address map 2

 bit4	: reserved

 bit3	: BIOS ROM address map 1

 bit2 =1: reserved

 bit1	: select SCLK input from MCLK

 bit0	: select MCLK/4 (with bit6=1)

 bit5/3: ROM address

  00b=C0000-C3FFF

  01b=disabled

  10b=C0000-C5FFF, C6800-C7FFF

  11b=C0000-C7FFF (default)

03C6  RW  (VGA, MCGA) PEL mask register (default FFh)

 VGA:	AND mask for color-register address.

 MCGA:	Never change from the default FFh.

03C6  RW  HiColor ET4000 (Sierra RAMDACs e.g. SC11486, SC11481, SC11488):

 Enable HiColor feature: beside other assignments,

 consequtive read 3C6h 4 times and write magic value 80h to it.

03C7   W  (VGA,MCGA,CEG-VGA) PEL address register (read mode)

 Sets DAC in read mode and assign start of color register

 index (0..255) for following read accesses to 3C9h.

 Don't write to 3C9h while in read mode. Next access to

 03C8h will stop pending mode immediatly.

037C   W  (CEG-Color VGA w/ Edun Labs RAMDACs)

 Enable and set Countinous Edge Graphics Mode:

 Consecutive write the following three key sequences in read

 mode (!) to 3C9h register DEh : 'CEG', 'EDS', 'UNx' (x see

 below). Current CEG mode can be read from palette register

 BFh 'blue', write access to that register will disable CEG

 features.

 In CEG modes by combining old with new colors and dynamically

 changing palette values, the effective colors displayable

 are enhanced dramatically (in EDP modes up to virtually 32bit

 truecolor) on standard 16/256 color VGA. Also, effective

 resolution enhancement takes effect by anti-aliasing.

 Neccessary EDP escape sequences should be moved to image

 border or single colored areas, if possible.

 REP-mode: if pixel are doubled in current video mode

 EDP-mode: pseudo-truecolor with Edsun dynamic palette

 CEG modes:

   x:  mode:	 colors:  mix:	pixel depth:  effective colors:

   0 = disabled	   256	   -	     8	    256

   1 = A	    16	  16	     8	   1920

   2 = A+REP	    16	  16	  8 dblscn	   1920

   3 = A+EDP	    15	  16	truecolor

   4 = reserved	     -	   -	     -	     -

   5 = B	    16	   8	     8	    960

   6 = B+REP	    16	   8	  8 dblscn	    960

   7 = B+EDP	    15	   8	truecolor

   8 = reserved	     -	   -	     -	     -

   9 = C	     8	   8	     4	    224

  10 = C+REP	     8	   8	  4 dblscn	    224

  11 = C+EDP	     7	   8	truecolor

  12 = reserved	     -	   -	     -	     -

  13 = D	   223	  32	     8	 792096

  14 = D+REP	   223	  32	  8 dblscn	 792096

  15 = D+EDP	   223	  32	truecolor

 Codes for mixes:

  Mode A:	       |  Mode C:

   mix: new:	old:   |   mix: new:   old:   colorcode:

    0 = 32/32	0/32   |    0 =	  -	 -     0

    1 = 30/32	2/32   |    1 =	  -	 -     1

    2 = 28/32	4/32   |    2 =	  -	 -     2

    3 = 26/32	6/32   |    3 =	  -	 -     3

    4 = 24/32	8/32   |    4 =	  -	 -     4

    5 = 22/32  10/32   |    5 =	  -	 -     5

    6 = 20/32  12/32   |    6 =	  -	 -     6

    7 = 18/32  14/32   |    7 =	  -	 -     7/EDP

    8 = 16/32  16/32   |    8 = 30/32	2/32   -

    9 = 14/32  18/32   |    9 = 28/32	4/32   -

   10 = 12/32  20/32   |   10 = 26/32	6/32   -

   11 = 10/32  22/32   |   11 = 24/32	8/32   -

   12 =	 8/32  24/32   |   12 = 22/32  10/32   -

   13 =	 6/32  26/32   |   13 = 20/32  12/32   -

   14 =	 4/32  28/32   |   14 = 18/32  14/32   -

   15 =	 2/32  30/32   |   15 = 16/32  16/32   -

  Mode B:	       |  Mode D:

   mix: new:	old:   |   mix:	      new:   old:  description:

    0 = 30/32	2/32   |   00h..BEh =	-      -   normal color

    1 = 26/32	6/32   |   BFh	    =	-      -   EDP

    2 = 22/32  10/32   |   C0h	    = 32/32   0/32

    3 = 18/32  14/32   |   C1h	    = 31/32   1/32

    4 = 14/32  18/32   |   C2h	    = 30/32   2/32

    5 = 10/32  22/32   |   ...	    =  ...    ...

    6 =	 6/32  26/32   |   DFh	    =  0/32  32/32

    7 =	 2/32  30/32   |   E0h-FFh  =	-      -   normal color

 Palette-color-register single-byte-format (each 3 times):

  Mode A:	  Mode C:

   bit7-4: mix code	   bit3	 : 0=color, 1=code

   bit3-0: color code	   bit2-0: color / mix code

  Mode B:	  Mode D:

   bit7-5: mix code	   bit7-0: see mix code table

   bit4	 : 0=new, 1=old	  Non-CEG modes:

   bit3-0: color code	   bit7-0: as usual

 In EDP modes, video-memory-palette-changing escape-sequences:

  Mode A:     Mode B:	  Mode C:     Mode D:

   7/escape    7/escape	   7/escape    0BFh

   red	       red	   red7-4      red

   green       green	   red3-0      green

   blue	       blue	   green7-4    blue

   address     address	   green3-0    address

   blue7-4

   blue3-0

   address

03C7  R	  VGA	DAC state register

bit7-2 reserved

bit1-0: 00b write palette cycle (write mode)

01h reserved

10b reserved

11b read palette cycle (read mode)

03C8  RW  (VGA,MCGA) PEL address register (write mode)

 Sets DAC in write mode and assign start of color register

 index (0..255) for following write accesses to 3C9h.

 Don't read from 3C9h while in write mode. Next access to

 03C8h will stop pending mode immediatly.

03C8  RW  (Genoa SuperEGA) SuperEGA control register (all emulation modes)

  bit7-2: reserved

  bit1	: 0=EGA mode, 1=backward compatibility mode

  bit0	: not used

03C9  RW  (VGA,MCGA) PEL data register

 Three consequtive reads (in read mode) or writes (in write

 mode) in the order: red, green, blue. The internal DAC index

 is incremented each 3rd access.

  bit7-6: HiColor VGA DACs only: color-value bit7-6

  bit5-0:	 color-value bit5-0

03CA   W  EGA	graphics 2 position register

03CA  R	  VGA	feature control register (see PORT 03BAh,PORT 03DAh-W)

03CB  RW  (ET4000/W32) GDC segment select register 2 ('key' protected?)

The existence of this r/w register 0..255 is often

 used to decide between ET4000 and ET4000/W32.

 bit7-6: reserved, but existent

 bit5-4: bits 5-4 of read segment pointer

 bit3-2: reserved, but existent

 bit1-0: bits 5-4 of write segment pointer

03CC   W  EGA	graphics 1 position register

03CC  R	  VGA	miscellaneous output register (see PORT 03C2h-W)

03CD  RW  (ET3000, ET4000, ET4000/W32) GDC segment select ('key' protected)

The existence of this r/w register is often used as

detection of ET3000, ET4000 and ET4000/W32 chips.

 bit7-4: read segment pointer for mapping to A0000h

 bit3-0: write segment pointer for mapping to A0000h

03CE   W  EGA	GDC index register

03CE  RW  VGA	graphics address register / GDC index

      bit7-4: reserved

      bit3-0: index

03CF   W  EGA	GDC data register

03CF  RW  VGA	other graphics register

(EGA,VGA) indexed registers in GDC:

 00h set/reset register (default 00h)

      functionality depending on write mode (see 05h)

      bit7-4: reserved

      bit3  : 0=write 00h, 1=write FFh in plane 3

      bit2  : 0=write 00h, 1=write FFh in plane 2

      bit1  : 0=write 00h, 1=write FFh in plane 1

      bit0  : 0=write 00h, 1=write FFh in plane 0

 01h enable set/reset register (default 00h)

      bit7-4: reserved (used on Genoa SuperEGA???)

      bit3  : enable set/reset plane 3

      bit2  : enable set/reset plane 2

      bit1  : enable set/reset plane 1

      bit0  : enable set/reset plane 0

      bit3-0: 0=CPU access, 1=set/reset access to plane

 02h color compare register (default 00h)

      bit7-4: reserved

      bit3  : color compare 3

      bit2  : color compare 2

      bit1  : color compare 1

      bit0  : color compare 0

      bit3-0: color number

 03h data rotate register (default 00h)

      bit7-5: reserved

      bit4-3: logical function select

       00b= CPU-data overwrites

       01b= CPU-data AND with latch-register

       10b= CPU-data OR with latch-register

       11b= CPU-data XOR with latch-register

      bit2-0: rotate count

 04h read map select register (default 00h)

      bit7-3: reserved

      bit2  : EGA?? & Genoa SuperEGA: map select bit2

      bit1-0: map select (0..3)

 05h mode register

      bit7  : reserved

      bit6  : VGA: 0=standard, 1=enable 256 colors

      bit5  : shift register mode, 0=standard, 1=CGA-graphics

      (not used on Genoa SuperEGA???)

      bit4=1: enable odd/even address mode

      bit3  : read mode, 0=mode0, 1=mode1

      bit2  : EGA: test condition, 0=standard, 1=output tristate

      bit1-0: write mode

       00b = mode0, plane source is CPU or set/reset

       01b = mode1, plane source is latch-register

       10b = mode2, plane source is CPU as set/reset

       11b = VGA: mode3, CPU as set/reset AND bitmask

 06h miscellaneous register

      bit7-4: reserved (=0)

      bit3-2: memory map

       00b = A0000..BFFFF (128KB)

       01b = A0000..AFFFF (64KB)

       10b = B0000..B7FFF (32KB)

       11b = B8000..BFFFF (32KB)

      bit1  : chain odd maps to even, 1=subst addess bit0

      bit0  : 0=testmode, 1=graphics mode

 07h color don't care register

      bit7-4: reserved

      bit3=1: color plane 3 don't care (ignore bit3)

      bit2=1: color plane 2 don't care (ignore bit2)

      bit1=1: color plane 1 don't care (ignore bit1)

      bit0=1: color plane 0 don't care (ignore bit0)

 08h bit mask register (default FFh)

      bit7-0: bitmask for latch/databyte

      (bit set=change allowed)

 0Fh Paradise SuperVGA only: lock register

     The ability to write and reread 00h..07h to this register

     is often used as detection of Paradise chips.

      bit7-0 = 01h lock/hide Paradise specific registers

     = 05h unlock Paradise specific registers

      bit7-3: reserved

      bit2-0: flipflops, reserved


03CE-03CF ----	Compaq Qvision - Functionality Level

03CE   W  graphics address register (index for next port)

03CF  RW  other graphics register

Index

 0Ch  RO    controller version

2Fh Advanced VGA

37h early QVision 1024

71h QVision 1280 or later QVision 1024

 0Dh	    extended controller version

 0Eh	    extended controller capabilities

 0Fh	    environment info

 54h	    available memory

 55h	    phase-locked-loop clock

 56h-57h    controller capabilities


03D0-03DF ----	CGA   (Color Graphics Adapter)

03D0   W  same as 03D4

03D1  RW  same as 03D5

03D2   W  same as 03D4

03D3  RW  same as 03D5

03D4  rW  CRT (6845) index register   (CGA/MCGA/color EGA/color VGA)

selects which register (0-11h) is to be accessed through 03D5

this port is r/w on some VGA, e.g. ET4000

    bit 7-6 =0: VGA: reserved

    bit 5   =0: VGA: reserved for testage

    bit 4-0   : selects which register is to be accessed through 03D5

03D5   W  CRT (6845) data register    (CGA/MCGA/color EGA/color VGA)

selected by port 03D4h. registers 0C-0F may be read

 (see also PORT 03B5h)

MCGA, native EGA and VGA use very different defaults from

those mentioned for the other adapters.

(for additionally notes and registers 00h-0Fh and EGA, VGAs

10h-18h and ET4000 32h-37h see at 3B5)

10h-11h on CGA, EGA, VGA and 12h-14h on EGA, VGA are

conflictive with MCGA:

w 10h MCGA only: mode control register (defaults 18h, 1Ah, 19h)

      bit7 = 1: suppress hsync/vsync

      bit6 = 0: reserved

      bit5    : reserved

      bit4 = 1: dot clock rate

      bit3 = 1: refresh calculations in 80x25 modes

      bit2    : reserved

      bit1 = 1: videomode 11h active

      bit0 = 1: videomode 13h active

r 10h MCGA only: mode control status register

      bit7    : status bit0 CGA mode control register

      bit6    : reserved

      bit5 =1	clockrate 640 pixel, =0: clockrate/2 320 pixel

      bit4 =1 : clock rate is 25,175Mhz

      bit3 =1 : currently in textmode

      bit2 =1 : double-scan activated

      bit1 =1 : videomode 11h active

      bit0 =1 : videomode 13h active

      r/w 11h MCGA only: interrupt control register (default 30h)

      bit7 =1 : set output driver to tristate

=0: for reading of character generator reg (12h)

=1: for reading of display sense register (12h)

      bit6    : read only: intr generated by memory controller

      bit5 =0 : requested intr ok to handle

      bit4 =0 : free interrupt latch register

      bit3-0  : reserved

      r/w 12h MCGA only: character generator/sync polarity register

      default 46h in all modes, except 04h in mode 11h.

      bit7 =1 : character generator active

      bit6 =1 : load codepage during display

   =0 : load codepage during retrace

      bit5    : codepage number (0,1)

      bit4 =1 : 512 characters active

   =0 : 256 characters active

      bit3 =0 : reserved

      bit2 =1 : enable hsync/vsync

      bit1 =1 : positive vsync polarity

      bit0 =1 : positive hsync polarity

r 12h MCGA only: display sense register (11h, bit7=1)

      bit7-2  : not used

      bit1-0  : pins 11 & 12 in monitor cable

00b = reserved

01b = analogue monochrom monitor

10b = analogue color graphics monitor

11b = no monitor

w 13h MCGA only: character font pointer register

      only 00h, 10h, 20h, 30h (default 00h) are allowed here

      for textmode fonts at A0000, A2000, A4000, A6000

w 14h MCGA only: number of characters to load during vretrace

      period (default FFh).

03D6   W  same as 03D4

(under OS/2, reads return 0 if full-screen DOS session,

nonzero if windowed DOS session)

03D7  RW  same as 03D5

03D8  RW  CGA mode control register  (except PCjr)

cannot be found on native color EGA, color VGA, but on most

clones

 bit7-0=A0h color ET4000: second part of 'key',

       see hercules compatibility reg (3BFh) for

       details. For reseting the key, e.g. write

       01h to 3BFh and 29h to 3D8h.

 bit 7-6      not used

 bit 6	 color ET4000 only, read-only: report status of

       bit1 (enable 2nd page) of hercules compatibility

       register (3BFh)

 bit 5	 = 1  blink enabled instead of foreground high-int.

 bit 4	 = 1  640*200 graphics mode

 bit 3	 = 1  video enabled (HZ309, see PORT 03DAh bit 0)

 bit 2	 = 1  monochrome signal

       MCGA: in mode 6 and 11h color comes from pal-

       regs 00 (black) and 07 (white), and can be

       changed there.

 bit 1	 = 0  text mode

 = 1  320*200 graphics mode

 bit 0	 = 0  40*25 text mode

 = 1  80*25 text mode

03D9  RW  CGA palette register

  (MCGA) CGA border control register

Cannot be found on native EGA, VGA (without translation ROM)

but only most clones. Read access on Genoa SuperEGA is

'reset'???

 bit 7-6      not used

 bit 5	 = 0 active 320x200x4 color set: red, green brown

 = 1 active 320x200x4 color set: cyan, magenta, white

 bit 4	     intense colors in graphics, background colors text

 bit 3	     intense border in 40*25, intense background in

     320*200, intense foreground in 640*200

 bit 2	     red border in 40*25, red background in 320*200,

     red foreground in 640*200

 bit 1	     green border in 40*25, green background in

     320*200, green foreground in 640*200

 bit 0	     blue border in 40*25, blue background in 320*200,

     blue foreground in 640*200

03DA  R	  CGA status register	color EGA/VGA: input status 1 register

 bit 7-6     not used

 bit 5-4     color EGA, color ET4000: diagnose video display

      feedback, select from color plane enable

 bit 3 = 1   in vertical retrace

 bit 2 = 1  (CGA,color EGA) light pen switch is off

    (MCGA,color ET4000) reserved (0)

 bit 1 = 1  (CGA,color EGA) positive edge from light pen has

set trigger

    (MCGA,color ET4000) reserved (0)

 bit 0	    horizontal retrace in progress

       = 0   do not use memory

       = 1   memory access without interfering with display

    (Genoa SuperEGA) horizontal or vertical retrace

03DA   W  color EGA/color VGA feature control register

 (at 3BAh w in mono mode, VGA: 3CAh r)

 bit7	 : ET4000 only: enable NMI generation ('key' protected)

 bit6-4	 : not used

 bit3	 : VGA: 0 = normal vsync, 1 = vsync OR display enable

 bit2	 : reserved

 bit1	 : EGA and ET4000 only:

    FEAT1 control bit1 (pin17 feature connector)

 bit0	 : EGA and ET4000 only:

    FEAT0 control bit0 (pin19 feature connector)

03DA   W  HZ309 (MDA/HGC/CGA clone) card from in Heath/Zenith HZ150 PC

 bit7-1=0: unknown, zero is default and known to function

   properly at least in CGA modes.

 bit 0 = 1 override 3x8h bit3 control register that switches

   CRT beam off if bit3 is cleared. So screens always

   stays on.

 bit 0 = 0 3x8h bit3 indicates if CRT beam is on or off.

   No more info available. Might conflict with EGA/VGA.

03DB  rW  clear light pen latch	(not MCGA)

  (R/W only with Genoa SuperEGA)

03DC  RW  (not MCGA) preset light pen latch

03DC   W  (CGA) set light pen latch

03DD   W  (MCGA)  Extended mode control register

  (Plantronics & Genoa SuperEGA: Plantronics ColorPlus control,

      compatible with MCGA???)

(default is 00h, in mode 13h: 04h)

 bit7 =1: DAC active, cannot be read

      =0: DAC not active, read allowed

 bit6-3 : reserved

 bit2 =1: videomode 13h with 256 colors active

 bit1	: reserved

 bit0 =0: reserved

03DE  --  (MCGA) reserved

03DE   W  AT&T & color ET4000 in AT&T compatibility mode:

AT&T mode control register

  (register enabled in ET4000, if bit7=1 in CRTC 3D4h/34h.)

 bit7: reserved

 bit6: underline color attribute enable

       ET4000: enabled, if bit6=1 in CRTC 3D4h/34h.

 bit5: reserved

 bit4: reserved

 bit3: alternate page select (=1: 2nd 16KB page, with bit0=0)

 bit2: alternate font select (0=default font block)

 bit1: reserved

 bit0: double scan line mode

(0=IBM 200, 1=AT&T 400 line graphics)

ET4000: enabled, if bit7-6=11b in CRTC 3D4h/34h.

03DF  --  MCGA: reserved

03DF  ?W  CRT/CPU page register	 (PCjr only)


03E0-03E8  ----	LPT port address on the UniRAM card by German magazine c't

Range:	selectable from 260, 2E0, 2E8, 2F0, 3E0, 3E8.


03E0-03EF ----	COM port addresses on UniRAM card by German magazine c't

Range:	selectable from 238, 2E8, 2F8, 338, 3E0, 3E8, 3F8


03E8-03EF ----	serial port, same as 02E8, 02F8 and 03F8 (COM3)

SeeAlso: 03F8-03FF


03E8-03EF  ----	 LPT port address on the UniRAM card by German magazine c't

Range:	selectable from 260, 2E0, 2E8, 2F0, 3E0, 3E8.


03F0-03F7 ----	FDC 1  (1st Floppy Disk Controller)	second FDC at 0370

Note:	floppy disk controller is usually an 8272, 8272A, NEC765 (or

  compatible), or an 82072 or 82077AA for perpendicular recording at

  2.88M

SeeAlso: PORT 0370h-0377h

03F0  R	  diskette EHD controller board jumper settings (82072AA)

 bit 7-6      drive 3

 bit 5-4      drive 2

 bit 3-2      drive 1

 bit 1-0      drive 0

 = 00  1.2Mb

 = 01  720Kb

 = 10  2.8Mb

 = 11  1.4Mb

03F0  R	  diskette controller status A (PS/2)

 bit 7	 interrupt pending

 bit 6	 -DRV2	second drive installed

 bit 5	 step

 bit 4	 -track 0

 bit 3	 head 1 select

 bit 2	 -index

 bit 1	 -write protect

 bit 0	 +direction

03F0  R	  diskette controller status A (PS/2 model 30)

 bit 7	 interrupt pending

 bit 6	 DRQ

 bit 5	 step F/F

 bit 4	 -track 0

 bit 3	 head 1 select

 bit 2	 +index

 bit 1	 +write protect

 bit 0	 -direction

03F1  R	  diskette controller status B (PS/2)

 bit 7-6  =1 reserved

 bit 5	  drive select (0=A:, 1=B:)

 bit 4	  write data

 bit 3	  read data

 bit 2	  write enable

 bit 1	  motor enable 1

 bit 0	  motor enable 0

03F1  R	  diskette controller status B (PS/2 model 30)

 bit 7	  -DRV2 second drive installed

 bit 6	  -DS1

 bit 5	  -DS0

 bit 4	  write data F/F

 bit 3	  read data F/F

 bit 2	  write enable F/F

 bit 1	  -DS3

 bit 0	  -DS2

03F2   W  diskette controller DOR (Digital Output Register)

 bit 7-6    reserved on PS/2

 bit 7 = 1  drive 3 motor enable

 bit 6 = 1  drive 2 motor enable

 bit 5 = 1  drive 1 motor enable

 bit 4 = 1  drive 0 motor enable

 bit 3 = 1  diskette DMA enable (reserved PS/2)

 bit 2 = 1  FDC enable	(controller reset)

       = 0  hold FDC at reset

 bit 1-0    drive select (0=A 1=B ..)

03F3  ?W  tape drive register (on the 82077AA)

 bit 7-2      reserved, tri-state

 bit 1-0      tape select

 = 00  none, drive 0 cannot be a tape drive.

 = 01  drive1

 = 10  drive2

 = 11  drive3

03F4  R	  diskette controller main status register

 bit 7 = 1  RQM	 data register is ready

 0  no access is permitted

 bit 6 = 1  transfer is from controller to system

 0  transfer is from system to controller

 bit 5 = 1  non-DMA mode

 bit 4 = 1  diskette controller is busy

 bit 3 = 1  drive 3 busy (reserved on PS/2)

 bit 2 = 1  drive 2 busy (reserved on PS/2)

 bit 1 = 1  drive 1 busy (= drive is in seek mode)

 bit 0 = 1  drive 0 busy (= drive is in seek mode)

Note:	in non-DMA mode, all data transfers occur through

  port 03F5h and the status registers (bit 5 here

  indicates data read/write rather than than

  command/status read/write)

03F4   W  diskette controller data rate select register

 bit 7-2      reserved on 8272

 bit 7	 = 1  software reset (self clearing)	82072/82077AA

 bit 6	 = 1  power down	82072/82077AA

 bit 5	 = 0  reserved on 8272 and 82077AA

      PLL select bit on 82072

 bit 4-2      write precompensation value, 000 default

 bit 1-0      data rate select

 = 00  500 Kb/S MFM	250 Kb/S FM

 = 01  300 Kb/S MFM	150 Kb/S FM

 = 10  250 Kb/S MFM	125 Kb/S FM

 = 11  1Mb/S	MFM	illegal	 FM on 8207x

03F5  R	  diskette command/data register 0 (ST0)

 bit 7-6      last command status

 = 00  command terminated successfully

 = 01  command terminated abnormally

 = 10  invalid command

 = 11  terminated abnormally by change in ready signal

 bit 5	 = 1  seek completed

 bit 4	 = 1  equipment check occurred after error

 bit 3	 = 1  not ready

 bit 2	 = 1  head number at interrupt

 bit 1-0 = 1  unit select (0=A 1=B .. )

      (on PS/2	01=A  10=B)

status register 1 (ST1)

 bit 7	    end of cylinder; sector# greater then sectors/track

 bit 6 = 0

 bit 5 = 1  CRC error in ID or data field

 bit 4 = 1  overrun

 bit 3 = 0

 bit 2 = 1  sector ID not found

 bit 1 = 1  write protect detected during write

 bit 0 = 1  ID address mark not found

status register 2 (ST2)

 bit 7 = 0

 bit 6 = 1  deleted Data Address Mark detected

 bit 5 = 1  CRC error in data

 bit 4 = 1  wrong cylinder detected

 bit 3 = 1  scan command equal condition satisfied

 bit 2 = 1  scan command failed, sector not found

 bit 1 = 1  bad cylinder, ID not found

 bit 0 = 1  missing Data Address Mark

status register 3 (ST3)

 bit 7	    fault status signal

 bit 6	    write protect status

 bit 5	    ready status

 bit 4	    track zero status

 bit 3	    two sided status signal

 bit 2	    side select (head select)

 bit 1-0    unit select (0=A 1=B .. )

03F5   W  diskette command register.  The commands summarized here are

mostly multibyte commands. This is for brief recognition only.

MFM = MFM mode selected, opposite to MF mode.

HDS = head select

DS  = drive select

MT  = multi track operation

SK  = skip deleted data address mark

   Command	     # bytes	D7  6	5   4	3   2	1   0

 read track	9	0  MFM	0   0	0   0	1   0

0   0	0   0	0 HDS DS1 DS0

 specify	3	0   0	0   O	O   O	1   1

 sense drive status	2	0   0	0   0	0   1	0   0

0   0	0   0	0 HDS DS1 DS0

 write data	9	MT MFM	0   0	0   1	0   1

0   0	0   0	0 HDS DS1 DS0

 read data	9	MT MFM SK   0	0   1	1   0

0   0	0   0	0 HDS DS1 DS0

 recalibrate	2	0   0	0   0	0   1	1   1

0   0	0   0	0   0 DS1 DS0

 sense interrupt status 1	0   0	0   0	1   0	0   0

 write deleted data	9	MT MFM	0   0	1   0	0   1

0   0	0   0	0 HDS DS1 DS0

 read ID	2	0  MFM	0   0	1   0	1   0

0   0	0   0	0 HDS DS1 DS0

 read deleted data	9	MT MFM SK   0	1   1	0   0

0   0	0   0	0 HDS DS1 DS0

 format track	10	0  MFM	0   0	1   1	0   1

0   0	0   0	0 HDS DS1 DS0

 dumpreg **	1	0   0	0   0	1   1	1   0

 seek	3	0   0	0   0	1   1	1   1

0   0	0   0	0 HDS DS1 DS0

 version **	1	0   0	0   1	0   0	0   0

 scan equal *	9	MT MFM SK   1	0   0	0   1

0   0	0   0	0 HDS DS1 DS0

 perpendicular mode **	2	0   0	0   1	0   0	1   0

0   0	0   0	0   0 WGATE GAP

 configure **	4	0   0	0   1	0   0	1   1

0   0	0   0	0   0	0   0

 verify	9	MT MFM SK   1	0   1	1   0

EC  0	0   0	0 HDS DS1 DS0

 scan low or equal *	9	MT MFM SK   1	1   0	0   1

0   0	0   0	0 HDS DS1 DS0

 scan high or equal *	9	MT MFM SK   1	1   1	0   1

0   0	0   0	0 HDS DS1 DS0

 relative seek **	3	1  DIR	0   0	1   1	1   1

0   0	0   0	0 HDS DS1 DS0

 BEWARE: not every invalid command is treated as invalid!

 *  Note: the scan commands aren't mentioned for the 82077AA.

 ** Note: EHD controller commands.

03F6  --  reserved on FDC

03F6  rW  FIXED disk controller data register

 bit 7-4    reserved

 bit 3 = 0  reduce write current

 1  head select 3 enable

 bit 2 = 1  disk reset enable

 0  disk reset disable

 bit 1 = 0  disk initialization enable

 1  disk initialization disable

 bit 0	    reserved

03F7  RW  harddisk controller

 bit 6	   FIXED DISK write gate

 bit 5	   FIXED DISK head select 3 / reduced write current

 bit 4	   FIXED DISK head select 2

 bit 3	   FIXED DISK head select 1

 bit 2	   FIXED DISK head select 0

 bit 1	   FIXED DISK drive 1 select

 bit 0	   FIXED DISK drive 0 select

03F7  R	  diskette controller DIR (Digital Input Register, PC/AT mode)

 bit 7 = 1 diskette change

 bit 6-0   tri-state on FDC

03F7  R	  diskette controller DIR (Digital Input Register, PS/2 mode)

 bit 7	 = 1 diskette change

 bit 6-3 = 1

 bit 2	     datarate select1

 bit 1	     datarate select0

 bit 0	 = 0 high density select (500Kb/s, 1Mb/s)

 conflicts with	 bit 0	   FIXED DISK drive 0 select

03F7  R	  diskette controller DIR (Digital Input Register, PS/2 model 30)

 bit 7	 = 0 diskette change

 bit 6-4 = 0

 bit 3	     -DMA gate (value from DOR register)

 bit 2	     NOPREC (value from CCR register)

 bit 1	     datarate select1

 bit 0	     datarate select0

 conflicts with	 bit 0	   FIXED DISK drive 0 select

03F7   W  configuration control register (PC/AT, PS/2)

 bit 7-2       reserved, tri-state

 bit 1-0 = 00  500 Kb/S mode (MFM)

 = 01  300 Kb/S mode (MFM)

 = 10  250 Kb/S mode (MFM)

 = 11  1   Mb/S mode (MFM) (on 82072/82077AA)

 conflicts with	 bit 0	   FIXED DISK drive 0 select

03F7   W  configuration control register (PS/2 model 30)

 bit 7-3       reserved, tri-state

 bit 2	       NOPREC (has no function. set to 0 by hardreset)

 bit 1-0 = 00  500 Kb/S mode (MFM)

 = 01  300 Kb/S mode (MFM)

 = 10  250 Kb/S mode (MFM)

 = 11  1   Mb/S mode (MFM) (on 82072/82077AA)

 conflicts with	 bit 0	   FIXED DISK drive 0 select


03F8-03FF ----	serial port (8250,8250A,8251,16450,16550,16550A,etc.) COM1

same as 02E8, 02F8 and 03E8

 chips overview:

 8250  original PC, specified up to 56Kbd, but mostly runs

       only 9600Bd, no scratchregister, bug: sometimes shots

       ints without reasons

 8250A, 16450, 16C451: ATs, most chips run up to 115KBd,

       no bug: shots no causeless ints

 8250B: PC,XT,AT, pseudo bug: shots one causeless int for

compatibility with 8250, runs up to 56KBd

 16550, 16550N, 16550V: early PS/2, FIFO bugs

 16550A,16550AF,16550AFN,16550C,16C551,16C552: PS/2, FIFO ok

 82510: laptops & industry, multi emulation mode

(default=16450), special-FIFO.

 8251: completely different synchronous SIO chip, not

compatible!

03F8   W  serial port, transmitter holding register (THR), which contains the

  character to be sent. Bit 0 is sent first.

bit 7-0	  data bits when DLAB=0 (Divisor Latch Access Bit)

03F8  R	  receiver buffer register (RBR), which contains the received

  character. Bit 0 is received first

 bit 7-0   data bits when DLAB=0 (Divisor Latch Access Bit)

03F8  RW  divisor latch low byte (DLL) when DLAB=1

03F9  RW  divisor latch high byte (DLM) when DLAB=1

  some baudrates (using standard 1.8432 Mhz clock)

       baudrate	   divisor	 DLM  DLL

    50	   2304	  09h 00h

    75	   1536	  06h 00h

   110	   1047	  04h 17h

   134,5    857	  03h 59h

   150	    768	  03h 00h

   300	    384	  01h 80h

   600	    192	  00h C0h

  1200	     96	  00h 60h

  1800	     64	  00h 40h

  2000	     58	  00h 3Ah

  2400	     48	  00h 30h

  3600	     32	  00h 20h

  4800	     24	  00h 18h

  7200	     16	  00h 10h

  9600	     12	  00h 0Ch

 19200	      6	  00h 06h

 38400	      3	  00h 03h

 57600	      2	  00h 02h

115200	      1	  00h 01h

 MIDI baudrate 32250Bd with 4Mhz quarz for c't MIDI interface

 following c't 01/1991

'14400'	  00h 08h

03F9  RW  interrupt enable register (IER) when DLAB=0

 bits 7-4   reserved (0)

 bit 3 = 1  modem-status interrupt enable

 bit 2 = 1  receiver-line-status interrupt enable

 bit 1 = 1  transmitter-holding-register empty interrupt enable

 bit 0 = 1  received-data-available interrupt enable

(also 16550(A) timeout interrupt)

      - 16550(A) will interrupt with a timeout if data exists in the

FIFO and isn't read within the time it takes to receive four

bytes or if no data is received within the time it takes to

receive four bytes

03FA  R	  interrupt identification register. Information about a pending

interrupt is stored here. When the ID register is addressed,

the highest priority interrupt is held, and no other interrupts

are acknowledged until the CPU services that interrupt.

 bit 7-6 = 00  reserved on 8250, 8251, 16450

 = 01  if FIFO queues enabled but unusable (16550 only)

 = 11  if FIFO queues are enabled (16550A only)

 bit 5-4 = 0 reserved

 bit 3	 = 0 reserved  8250, 16450

 = 1 16550  timeout int. pending

 bit 2-1 identify pending interrupt with the highest priority

  = 11	receiver line status interrupt. priority=highest

  = 10	received data available register interrupt. pr.=second

  = 01	transmitter holding register empty interrupt. pr.=third

  = 00	modem status interrupt. priority=fourth

 bit 0 = 0  interrupt pending. contents of register can be used

    as a pointer to the appropriate int.service routine

 1  no interrupt pending

      - interrupt pending flag uses reverse logic, 0=pending, 1=none

      - interrupt will occur if any of the line status bits are set

      - THRE bit is set when THRE register is emptied into the TSR

03FA   W  16650 FIFO Control Register (FCR)

 bit 7-6 = received data available interrupt trigger level

00  1 byte

01  4 bytes

10  8 bytes

11 14 bytes

 bit 5-4 = 00 reserved

 bit 3	 = 1  change RXRDY  TXRDY pins from mode 0 to mode 1

 bit 2	 = 1  clear XMIT FIFO

 bit 1	 = 1  clear RCVR FIFO

 bit 0	 = 1  enable clear XMIT and RCVR FIFO queues

      - bit 0 must be set in order to write to other FCR bits

      - bit 1 when set	the RCVR FIFO is cleared and this bit is reset

 the receiver shift register is not cleared

      - bit 2 when set	the XMIT FIFO is cleared and this bit is reset

 the transmit shift register is not cleared

      - due to a hardware bug, 16550 FIFOs don't work correctly (this

was fixed in the 16550A)

03FB  RW  line control register (LCR)

 bit 7 = 1  divisor latch access bit (DLAB)

 0  receiver buffer, transmitter holding, or interrupt

    enable register access

 bit 6 = 1  set break enable. serial ouput is forced to spacing

    state and remains there.

 bit 5-3 =  PM2 PM1 PM0

     x	 x   0	 = no parity

     0	 0   1	 = odd parity

     0	 1   1	 = even parity

     1	 0   1	 = high parity (sticky)

     1	 1   1	 = low parity (sticky)

     x	 x   1	 = software parity

 bit 2 = stop bit length (STB/SBL)

 0  one stop bit

 1  2 stop bits with (word length 6, 7, 8)

    1.5 stop bits with word length 5

 bit 1-0 (WLS1-0, CL1-0)

 00 word length is 5 bits

 01 word length is 6 bits

 10 word length is 7 bits

 11 word length is 8 bits

03FC  RW  modem control register

 bit 7-5 = 0  reserved

 bit 4 = 1  loopback mode for diagnostic testing of serial port

    output of transmitter shift register is looped back

    to receiver shift register input. In this mode

    transmitted data is received immediately so that

    the CPU can verify the transmit data/receive data

    serial port paths.

    If OUT2 is disabled, there is no officially

    way to generate an IRQ during loopback mode.

 bit 3 = 1  auxiliary user-designated output 2 (OUT2)

    because of external circuity OUT2 must be 1 to

    master-intr-enableing. Bug: Some Toshiba Laptops

    utilize this bit vice versa, newer Toshiba machines

    allow to assign the bits polarity in system setup.

    82050: This bit is only effective, if the chip is

    being used with an externally generated clock.

 bit 2 = 1/0  auxiliary user-designated output 1 (OUT1)

    should generally be cleared!!

    Some external hardware, e.g. c't MIDI interface

    (and compatibles) uses this bit to change the 8250

    input clock from 1,8432 MHz to 4Mhz (enableing

    MIDI conform baudrates) and switching to MIDI

    compatible current loop connectors.

 bit 1 = 1  force request-to-send active (RTS)

 bit 0 = 1  force data-terminal-ready active (DTR)

03FD  R	  line status register

 bit 7 = 0  reserved

       = 1  on some chips produced by UMC

 bit 6 = 1  transmitter shift and holding registers empty

 bit 5 = 1  transmitter holding register empty (THRE)

Controller is ready to accept a new character to send.

 bit 4 = 1  break interrupt. the received data input is held in

    in the zero bit state longer than the time of start

    bit + data bits + parity bit + stop bits.

 bit 3 = 1  framing error (FE). the stop bit that follows the

    last parity or data bit is a zero bit.

 bit 2 = 1  parity error (PE). Character has wrong parity

 bit 1 = 1  overrun error (OE). a character was sent to the

    receiver buffer before the previous character in

    the buffer could be read. This destroys the

    previous character.

 bit 0 = 1  data ready. a complete incoming character has been

    received and sent to the receiver buffer register.

03FE  R	  modem status register (MSR)

 bit 7 = 1  data carrier detect (-DCD)

 bit 6 = 1  ring indicator (-RI)

 bit 5 = 1  data set ready (-DSR)

 bit 4 = 1  clear to send (-CTS)

 bit 3 = 1  delta data carrier detect (DDCD)

 bit 2 = 1  trailing edge ring indicator (TERI)

 bit 1 = 1  delta data set ready (DDSR)

 bit 0 = 1  delta clear to send (DCTS)

      - bits 0-3 are reset when the CPU reads the MSR

      - bit 4 is the Modem Control Register RTS during loopback test

      - bit 5 is the Modem Control Register DTR during loopback test

      - bit 6 is the Modem Control Register OUT1 during loopback test

      - bit 7 is the Modem Control Register OUT2 during loopback test

03FF  RW  scratch register (SCR)

(not used for serial I/O; available to any application using

16450,16550) (not present on original 8250)

Adresses above 03FF generally apply to EISA machines only !

 1000-1FFF	slot 1 EISA

 2000-2FFF	slot 2 EISA

 3000-3FFF	slot 3 EISA

 4000-4FFF	slot 4 EISA

 5000-5FFF	slot 5 EISA

 6000-6FFF	slot 6 EISA

 7000-7FFF	slot 7 EISA


0401-04D6 ----	used by EISA systems only

0401  RW  DMA channel 0 word count byte 2 (high)

0403  RW  DMA channel 1 word count byte 2 (high)

0405  RW  DMA channel 2 word count byte 2 (high)

0407  RW  DMA channel 3 word count byte 2 (high)

040A   W  extended DMA chaining mode register, channels 0-3

 bit 7-5      reserved

 bit 4	 = 0  generates IRQ13

 = 1  generates terminal count

 bit 3	 = 0  do not start chaining

 = 1  programming complete

 bit 2	 = 0  disable buffer chaining mode (default)

 = 1  enable buffer chaining mode

 bit 1-0      DMA channel select

040A  R	  channel interrupt (IRQ13) status register

 bit 7-5  interrupt on channels 7-5

 bit 4	  reserved

 bit 3-0  interrupt on channels 3-0

040B   W  DMA extended mode register for channels 3-0.

bit settings same as 04D6

 bit 7	 = 0  enable stop register

 bit 6	 = 0  terminal count is an output for this channel

(default)

 bit 5-4      DMA cycle timing

 = 00 ISA-compatible (default)

 = 01 type A timing mode

 = 10 type B timing mode

 = 11 burst DMA mode

 bit 3-2      Address mode

 = 00 8-bit I/O, count by bytes (default)

 = 01 16-bit I/O, count by words, address shifted

 = 10 32-bit I/O, count by bytes

 = 11 16-bit I/O, count by bytes

 bit 1-0      DMA channel select


0461-0462 ----	NMI CONTROL

0461  RW  Extended NMI status/control register

 bit 7 = 1  NMI pending from fail-safe timer (read only)

 bit 6 = 1  NMI pending from bus timeout NMI status (read only)

 bit 5 = 1  NMI pending (read only)

 bit 4	    reserved

 bit 3 = 1  bus timeout NMI enable (read/write)

 bit 2 = 1  fail-safe NMI enable (read/write)

 bit 1 = 1  NMI I/O port enable (read/write)

 bit 0	    RSTDRV. bus reset (read/write)

       = 0  NORMAL bus reset operation

       = 1  reset bus asserted

0462   W  Software NMI register. writing to this register causes an NMI

if NMI's are enabled

 bit 7 = 1  generates an NMI


0464-0465 ----	EISA BUS MASTER STATUS

0464  R	  bus master status latch register (slots 1-8). identifies the

last bus master that had control of the bus

 bit 7 = 0  slot 8 had control last

 bit 6 = 0  slot 7 had control last

 bit 5 = 0  slot 6 had control last

 bit 4 = 0  slot 5 had control last

 bit 3 = 0  slot 4 had control last

 bit 2 = 0  slot 3 had control last

 bit 1 = 0  slot 2 had control last

 bit 0 = 0  slot 1 had control last

0465  R	  bus master status latch register (slots 9-16)

 bit 7 = 0  slot 16 had control last

 bit 6 = 0  slot 15 had control last

 bit 5 = 0  slot 14 had control last

 bit 4 = 0  slot 13 had control last

 bit 3 = 0  slot 12 had control last

 bit 2 = 0  slot 11 had control last

 bit 1 = 0  slot 10 had control last

 bit 0 = 0  slot 9  had control last


0481-048B ---- EISA DMA page registers

0481  RW  DMA channel 2 address byte 3 (high)

0482  RW  DMA channel 3 address byte 3 (high)

0483  RW  DMA channel 1 address byte 3 (high)

0487  RW  DMA channel 0 address byte 3 (high)

0489  RW  DMA channel 6 address byte 3 (high)

048A  RW  DMA channel 7 address byte 3 (high)

048B  RW  DMA channel 5 address byte 3 (high)


04C6-04CF ---- EISA DMA count registers

04C6  RW  DMA channel 5 word count byte 2 (high)

04CA  RW  DMA channel 6 word count byte 2 (high)

04CE  RW  DMA channel 7 word count byte 2 (high)


04D0-04D1 ---- EISA IRQ control

04D0   W  IRQ 0-7 interrupt edge/level registers

 bit 7 = 1  IRQ 7 is level sensitive

 bit 6 = 1  IRQ 6 is level sensitive

 bit 5 = 1  IRQ 5 is level sensitive

 bit 4 = 1  IRQ 4 is level sensitive

 bit 3 = 1  IRQ 3 is level sensitive

 bit 2-0    reserved

04D1   W  IRQ 8-15 interrupt edge/level registers

 bit 7 = 1  IRQ 15 is level sensitive

 bit 6 = 1  IRQ 14 is level sensitive

 bit 5 = 1  reserved

 bit 4 = 1  IRQ 12 is level sensitive

 bit 3 = 1  IRQ 11 is level sensitive

 bit 2 = 1  IRQ 10 is level sensitive

 bit 1 = 1  IRQ 9  is level sensitive

 bit 0	    reserved


04D4-04D6 ---- EISA DMA control

04D4  R	  DMA chaining status

04D4   W  extended DMA chaining mode register, channels 4-7

 bit 7-5 = 0  reserved

 bit 4	 = 0  generates IRQ 13

 = 1  generates terminal count

 bit 3	 = 0  do not start chaining

 = 1  programming complete

 bit 2	 = 0  disable buffer chaining mode (default)

 = 1  enable buffer chaining mode

 bit 1-0      DMA channel select

04D6   W  DMA extended mode register for channels 4-7

bit settings same as 04B

 bit 7	 = 0  enable stop register

 bit 6	 = 0  terminal count is an output for this channel

(default)

 bit 5-4      DMA cycle timing

 = 00 ISA-compatible (default)

 = 01 type A timing mode

 = 10 type B timing mode

 = 11 burst DMA mode

 bit 3-2      Address mode

 = 00 8-bit I/O, count by bytes (default)

 = 01 16-bit I/O, count by words, address shifted

 = 10 32-bit I/O, count by bytes

 = 11 16-bit I/O, count by bytes

 bit 1-0      DMA channel select


04E0-04FF ---- EISA DMA stop registers

04E0-04E2  RW	channel 0

04E4-04E6  RW	channel 1

04E8-04EA  RW	channel 2

04EC-04EE  RW	channel 3

04F4-04F6  RW	channel 5

04F8-04FA  RW	channel 6

04FC-04FE  RW	channel 7


0530-0533 ----	Gravis Ultra Sound Daughter Card by Advanced Gravis

Range:	dipswitch selectable from 0530-0533, 0604-0607, 0E80-0E83, and

  0F40-0F43

0530  RW  address select

0531  RW  data

0532  RW  status

0533  RW  PIO


0601	  ----	Headland HL21, Acer M5105 chipsets - SYSTEM CONTROL

0601   W  system control

bit 7 = 1  power led on

bit 6 = 1  LCD backlight off

bit 5

bit 4

bit 3

bit 2 = 1  video chips disabled, screen blanked.

bit 1

bit 0 = 1  will lock up your machine!

0601  R	  status

bit 7 = 0  if screen enabled always these values

bit 6 = 0

bit 5 = 0

bit 4 = 0

bit 3 = 0

bit 2 = 1  (=0 at low power)

bit 1 = 0  power OK

bit 0 = 0


0620-0627 ----	PC network (adapter 1)

0628-062F ----	PC network (adapter 2)


0680-0681 ----	Microchannel POST Diagnostic (write only)

0680   W  Microchannel POST Diagnostic (write only)

0681   W  secondary MCA POST diagnostic


06A0-06A8  ----	non-standard COM port addresses (V20-XT by German magazine c't)

06A8-06AF	selectable from 0280, 0288, 0290, 0298, 06A0, 06A8


06E2-06E3 ----	data aquisition (adapter 1)


06E8	  ----	S3 86C928 video controller (ELSA Winner 1000)


06E8-06EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

SeeAlso: 02E8-02EF, 0AE8, 96E8, 9AE8

06E8   W  CRT control: horizontal displayed


0746	  ----	Gravis Ultra Sound by Advanced Gravis

SeeAlso: 0240-024F, 0340-034F

0746  R	  board version (rev 3.7+)

 FF	  Pre 3.6 boards, ICS mixer NOT present

 05	  Rev 3.7 with ICS Mixer. Some R/L: flip problems.

 06-09	  Revision 3.7 and above. ICS Mixer present

 0A-	  UltraMax. CS4231 present, no ICS mixer

0746   W  Mixer Control Port


0790-0793 ----	cluster (adapter 1)


0800-08FF ----	I/O port access registers for extended CMOS RAM or SRAM

(256 bytes at a time)

Sometimes plain text can be seen here.


0800-08FF ----	reserved for EISA system motherboard


0A20-0A23 ----	Token Ring (adapter 1)

0A24-0A27 ----	Token Ring (adapter 2)


0AE2-0AE3 ----	cluster (adapter 2)


0AE8	  ----	S3 86C928 video controller (ELSA Winner 1000)


0AE8-0AEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

0AE8   W  CRT control: horizontal sync start


0B90-0B93 ----	cluster (adapter 2)


0C00	  ----	EISA??? - PAGE REGISTER

0C00  RW  page register to write to SRAM or I/O


0C00-0CFF ----	reserved for EISA system motherboard


0C7C	bit 7-4 (Compaq)


0C80-0C83 ----	EISA system board ID registers


0CF8	  ----	Intel Pentium motherboard ("Neptune" chipset)

SeeAlso: C008


0CFA	  ----	Intel Pentium motherboard ("Neptune" chipset)

SeeAlso: C008


0EE8	  ----	S3 86C928 video controller (ELSA Winner 1000)


0EE8-0EEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

0EE8   W  CRT control: horizontal sync width


1000-10FF ----	available for EISA slot 1


12E8-12EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

12E8   W  CRT control: vertical total


1390-1393 ----	cluster (adapter 3)


1400-14FF ----	available for EISA slot 1


16E8-16EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

16E8   W  CRT control: vertical displayed


1800-18FF ----	available for EISA slot 1


1AE8-1AEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

1AE8   W  CRT cotnrol: vertical sync start


1C00-1CFF ----	available for EISA slot 1


1C65	  ----	Compaq Contura Aero

SeeAlso: 2065

1C65  R?  bit 6: operating on battery power


1C80-1C8F ----	VESA XGA Video in EISA slot 1

1C80-1C83  RW	EISA Video ID

1C84  RW	EISA Video expansion board control

1C85  RW	EISA Setup control

1C88  RW	EISA Video Programmable Option Select 0

1C89-1C8F  RW	EISA Video Programmable Option Select 1-7


1C80-1C83	EISA board product ID (board in slot 1)


1C85	Compaq Qvision EISA - Virtual Controller ID


1EE8-1EEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

1EE8   W  CRT control: vertical sync width


2000-20FF ----	available for EISA slot 2


2065	  ----	Compaq Contura Aero

SeeAlso: 1C65, 2465

2065   W  ??? (84h seen)


2100	  ----	XGA Video Operating Mode Register

Note:	this port is for the first XGA in the system; 2110-2170 are used for

  the second through eighth XGAs


2101	  ----	XGA VIdeo Aperture Control

Note:	this port is for the first XGA in the system; 2111-2171 are used for

  the second through eighth XGAs


2102-2103 ----	XGA ???

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2104	  ----	XGA Video Interrupt Enable

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2105	  ----	XGA Video Interrupt Status

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2106	  ----	XGA Video Virtual Memory Control

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2107	  ----	XGA Video Virtual Memory Interrupt Status

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2108	  ----	XGA Video Aperture Index

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2109	  ----	XGA Video Memory Access Mode

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


210A	  ----	XGA Video Index for Data

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


210B	  ----	XGA Video Data (byte)

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


210C-210F ----	XGA Video Data (word/dword)

Note:	this port is for the first XGA in the system; 211x-217x are used for

  the second through eighth XGAs


2110-211F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (second installed)

2120-212F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (third installed)

2130-213F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (fourth installed)

2140-214F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (fifth installed)

2150-215F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (sixth installed)

2160-216F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (seventh installed)

2170-217F ----	IBM XGA (eXtended Graphics Adapter  8514/A) (eighth installed)

Notes:	see individual 210x entries above

c't says default instance number is 6, i.e. addresses 216x


217A-217B ---- ET4000/W32 CRTC-B/Sprite

Alternative addresses may depend on adapter manufacturer,

Tseng claims 21xA with x=three address bits, selected by

IOD2..0 during power up reset.

21xA  RW  ET4000/W32(i) CRTC-B/Sprite index register

   bit7-0: index

21xB  RW  ET4000/W32(i) CRTC-B/Sprite data register

 indexed registers:

  E0h CRTC-B / Sprite Horizontal Pixel Position, Low

   bit7-0: horizontal pixel position bit7-0

  E1h CRTC-B / Sprite Horizontal Pixel Position, High

   bit7-4: reserved

   bit3-0: horizontal pixel position bit11-8

  E2h CRTC-B Width Low / Sprite Horizontal Preset

   bit7-0: width of CRTC-B bit7-0

   bit5-0: horizontal preset for sprite

  E3h CRTC-B Width High / Sprite Horizontal Preset

   bit7-4: reserved

   bit3-0: width of CRTC-B bit11-8

  E4h CRTC-B / Sprite Vertical Pixel Position, Low

   bit7-0: vertical pixel position bit7-0

  E5h CRTC-B / Sprite Vertical Pixel Position, High

   bit7-4: reserved

   bit3-0: vertical pixel position bit11-8

  E6h CRTC-B Height Low / Sprite Vertical Preset

   bit7-0: height of CRTC-B bit7-0

   bit5-0: vertical preset for sprite

  E7h CRTC-B Height High / Sprite Vertical Preset

   bit7-4: reserved

   bit3-0: height of CRTC-B bit11-8

  E8h CRTC-B / Sprite Starting Address Low

   pointer to CRTC-B / sprite image in display memory.

   (maximum size of sprites 64x64x4=1KB with 4 colors:

    00b=color-0, 01b=color-255, 10b=transparent, 11b=reserved)

   bit7-0: startaddress bit7-0

  E9h CRTC-B / Sprite Starting Address Middle

   bit7-0: startaddress bit15-8

  EAh CRTC-B / Sprite Starting Address High

   bit7-4: reserved

   bit3-0: startaddress bit19-16

  EBh CRTC-B / Sprite Row Offset Low

   bit7-0: offset bit7-0

  ECh CRTC-B / Sprite Row Offset High

   bit7-4: revision ID (any ET4000/W32)

    0000b=W32	     0100b-1111b reserved

    0001b=W32i

    0010b=W32p

    0011b=W32i, new

   bit3-0: offset bit11-8

  EDh CRTC-B Pixel Panning

   bit7-3: reserved

   bit2-0: CRTC-B pixel panning

  EEh CRTC-B Color-Depth-Register / Hardware-Zoom

   bit7-4: reserved (concerning databook ET4000/W32)

   bit7-6: vertical zoom (undocumented)

   (original ET4000/W32 ok, doesn't work properly

    with some ET4000/W32i)

    00b=zoomx1	   10b=zoomx3

    01b=zoomx2	   11b=zoomx4

   bit5-4: horizontal zoom (undocumented)

   (original ET4000/W32 ok, doesn't work properly

    with some ET4000/W32i)

    00b=zoomx1	   10b=zoomx3

    01b=zoomx2	   11b=zoomx4

   bit3-0: bit/pixel

    0000b=1	   0011b=8

    0001b=2	   0100b=16

    0010b=4

  EFh CRTC-B / Sprite Control

   bit7-2: reserved

   bit1	 : 1=2nd CRTC-B image overlays main CRTC-A image

   0=CRTC-B image at pin SP1/0

   bit0	 : 1=enable CRTC-B

   0=enable sprite (see F7h)

  F7h Image Port Control

   bit7	 : 1=CRTC-B or sprite active

   0=CRTC-B and sprite not active

   bit6-0: reserved


22E8-22EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

22E8   W  CRT control: display control


2390-2393 ----	cluster (adapter 4)


23C0-23CF ----	Compaq QVision - BitBLT engine


2400-24FF ----	available for EISA slot 2


2465	  ----	Compaq Contura Aero

SeeAlso: 1C65, 2065

2465  R	  current battery power level

(166 fully-charged, 130 = LowBat1)


27C6	  ----	Compaq LTE Lite - LCD TIMEOUT

27C6  RW  LCD timeout in minutes


2800-28FF ----	available for EISA slot 2


28E9	  ----	8514/A - WD Escape Functions


2C80-2C8F ----	VESA XGA Video in EISA slot 2 (see 1C80-1C8F)


2C80-2C83 ----	EISA board product ID (board in slot 2)


3000-30FF ----	available for EISA slot 3


3220-3227 ----	serial port 3, description same as 03F8

3228-322F ----	serial port 4, description same as 03F8


33C0-33CF ----	Compaq QVision - BitBLT engine


3400-34FF ----	available for EISA slot 3


3510-3513 ----	ESDI primary harddisk controller

3510  R	  status word

3510   W  command word

3512  R	  basic status

3512   W  basic control

3513  R	  interrupt status

3513   W  attention


3518-351B ----	ESDI secondary harddisk controller

3518  R	  status word

3518   W  command word

351A  R	  basis status

351A   W  basic control

351B  R	  interrupt status

351B   W  attention


3540-354F ----	IBM SCSI (Small Computer System Interface) adapter

3550-355F ----	IBM SCSI (Small Computer System Interface) adapter

3560-356F ----	IBM SCSI (Small Computer System Interface) adapter

3570-357F ----	IBM SCSI (Small Computer System Interface) adapter


3800-38FF ----	available for EISA slot 3


3C00-3CFF ----	available for EISA slot 3


3C80-3C8F ----	VESA XGA Video in EISA slot 3

3C80-3C83  RW	EISA Video ID

3C84  RW	EISA Video expansion board control

3C85  RW	EISA Setup control

3C88  RW	EISA Video Programmable Option Select 0

3C89-3C8F  RW	EISA Video Programmable Option Select 1-7

SeeAlso: 1C80-1C8F,2C80-2C8F,7C80-7C8F


3C80-3C83 ----	EISA board product ID (board in slot 3)


4000-40FF ----	available for EISA slot 4


4220-4227 ----	serial port, description same as 03F8

4228-422F ----	serial port, description same as 03F8


42E0-42EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

42E1  RW  GPIB (adapter 2)


42E8	  ----	8514/A and hardware-compatible video cards

42E8  R	  Misc. control: Subsystem Status

42E8   W  Misc. control: Subsystem Control


4400-44FF ----	available for EISA slot 4


46E8	  ----	VGA video adapter enable

Note:	IBM uses this port for adapter-card VGAs only, and port 03C3 for

  motherboard VGA only (see 03C3 for details)

SeeAlso: 03C3

46E8  rW  Misc. control: enable flags / select ROM page (8514/A)

bits 7-5 unused or vendor-specific

bit 4: setup for POS registers (MCA)

bit 3: enable video I/O ports and video buffer

bits 2-0 unused or vendor-specific


46E8	  ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

46E8   W  ROM page select


4800-48FF ----	available for EISA slot 4


4AE8-4AEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

4AE8   W  CRT control: Advanced function control

(02h = VGA mode, 03h = 480-line mode, 07h = 768-line mode)


4C00-4CFF ----	available for EISA slot 4


4C80-4C83	EISA board product ID (board in slot 4)


4C80-4C8F ----	VESA XGA Video in EISA slot 4 (see 3C80-3C8F)

SeeAlso: 1C80-1C8F,6C80-6C8F


5000-50FF ----	available for EISA slot 5


5220-5227 ----	serial port, description same as 03F8

5228-522F ----	serial port, description same as 03F8


5400-54FF ----	available for EISA slot 5


5800-58FF ----	available for EISA slot 5


5C00-5CFF ----	available for EISA slot 5


5C80-5C8F ----	VESA XGA Video in EISA slot 5

SeeAlso: 2C80-2C8F,4C80-4C8F,6C80-6C8F

5C80-5C83 r/w	EISA Video ID

5C84  RW	EISA Video expansion board control

5C85  RW	EISA Setup control

5C88  RW	EISA Video Programmable Option Select 0

5C89-5C8F r/w	EISA Video Programmable Option Select 1-7


5C80-5C83	EISA board product ID (board in slot 5)


6000-60FF ----	available for EISA slot 6


62E0-62EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

62E1  RW  GPIB (adapter 3)


63C0-63CF ----	Compaq QVision - BitBLT engine


6400-64FF ----	available for EISA slot 6


6800-68FF ----	available for EISA slot 6


6C00-6CFF ----	available for EISA slot 6


6C80-6C83 ----	EISA board product ID (board in slot 6)


6C80-6C8F ----	VESA XGA Video in EISA slot 1

SeeAlso: 1C80-1C8F,2C80-2C8F,5C80-5C8F

6C80-6C83 r/w	EISA Video ID

6C84  RW  EISA Video expansion board control

6C85  RW  EISA Setup control

6C88  RW  EISA Video Programmable Option Select 0

6C89-1C8F r/w	EISA Video Programmable Option Select 1-7


7000-70FF ----	available for EISA slot 7


7400-74FF ----	available for EISA slot 7


7800-78FF ----	available for EISA slot 7


7C00-7CFF ----	available for EISA slot 7


7C80-7C83 ----	EISA board product ID (board in slot 7)


7C80-7C8F ----	VESA XGA Video in EISA slot 7

SeeAlso: 1C80-1C8F, 6C80-6C8F

7C80-7C83  RW	EISA Video ID

7C84  RW	EISA Video expansion board control

7C85  RW	EISA Setup control

7C88  RW	EISA Video Programmable Option Select 0

7C89-7C8F  RW	EISA Video Programmable Option Select 1-7


8000-80FF ----	available for EISA slot 8


82E0-82EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

82E1  RW  GPIB (adapter 4)


82E8-82EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

82E8   W  drawing control: current Y position


82F8-82FF ----	serial port, description same as 03F8

83F8-83FF ----	serial port, description same as 03F8


83C0-83CF ----	Compaq QVision - Line Draw Engine


83C4	  ----	Compaq Qvision EISA - Virtual Controller Select


83C6-83C9 ----	Compaq Qvision EISA - DAC color registers


8400-84FF ----	available for EISA slot 8


86E8-86EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

86E8   W  drawing control: current X position


8800-88FF ----	available for EISA slot 8


8AE8-8AEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

8AE8   W  drawing control: destination Y position / axial step constant


8C00-8CFF ----	available for EISA slot 8


8C80-8C83 ----	EISA board product ID (board in slot 8)


8EE8-8EEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

8EE8   W  drawing control: destination X position / axial step constant


9000-90FF ----	available for EISA slot 9


92E8-92EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

92E8   W  drawing control: error term


9400-94FF ----	available for EISA slot 9


96E8-96EF ----	8514/A and hardware-compatible video cards

96E8  R	  enter WD Enhanced Mode

96E8   W  drawing control: major axis pixel count


9800-98FF ----	available for EISA slot 9


9AE8-9AE9 ----	8514/A Graphics Processor Status

9AE8w R	  drawing control: graphic processor status

 bit15-10: reserved

 bit9 =1 : hardware busy

 bit8 =1 : data ready

 bit7-0	 : status of queue (0=empty, 1=filled)

   (each bit represents a position in queue)

9AE8w  W  drawing control: command register

 bit15-13: command

   000b = no operation

   001b = draw vector

   010b = fast rectangle fill

   011b = rectangle fill vertical #1

   100b = rectangle fill vertical #2 (4 pixels)

   101b = draw vector, 1 pixel/scanline

   110b = copy rectangle

   111b = reserved

 bit12	 : 0=high byte first, 1=low byte first (BYTSEQ)

 bit11-10: reserved

 bit9  =1: enable 16bit write access (16BIT)

 bit8	 : 0=use 8514/A data, 1=pixel data trans reg (PCDATA)

 bit7	 : 0=draw vector above, 1=draw vector below (INC_Y)

 bit6	 : 0=x is maj. axis, 1=y is maj. axis (YMAJAXIS)

 bit5	 : 0=draw vector left, 1=draw vector right (INC_X)

 bit4	 : 0=move only, 1=draw and move (DRAW)

 bit3	 : 0=Bresenham line, 1=direct vector (LINETYPE)

 bit2	 : 0=draw last pixel, 1=don't draw last pixel (LASTPIX)

 bit1	 : 0=single pixel, 1=4pixel (PLANAR)

 bit0	 : 0=read data, 1=write data (RD/WR)


9C00-9CFF ----	available for EISA slot 9


9C80-9C83 ----	EISA board product ID (board in slot 9)


9EE8	  ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

9EE8   W  short line vector transfer


A220	  ----	soundblaster support in AMI Hi-Flex BIOS  ????


A2E0-A2EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

A2E1  RW  GPIB (adapter 5)


A2E8-A2EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

A2E8   W  drawing control: background color


A6E8-A6EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

A6E8   W  drawing control: foreground color


AAE8-AAEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

AAE8   W  drawing control: write mask


AEE8-AEEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

AEE8   W  drawing control: read mask


AFFF	  ----	VIDEO REGISTER

AFFF  RW  plane 0-3 system latch (video register)


B220-B227 ----	serial port, description same as 03F8

B228-B22F ----	serial port, description same as 03F8


B2E8-B2EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

B2E8   W  drawing control: color compare


B6E8-B6EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

B6E8   W  drawing control: background mix


BAE8-BAEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

BAE8   W  drawing control: foreground mix


BEE8-BEEF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

BEE8   W  drawing control: multi-function control


C000-C004 ----	Intel Pentium motherboard ("Neptune" chipset)


C008	  ----	Intel Pentium motherboard ("Neptune" chipset)

SeeAlso: 0CF8,0CFA


C050	  ----	Intel Pentium motherboard ("Neptune" chipset)

C050  RW  bit 2: ???


C052	  ----	Intel Pentium motherboard ("Neptune" chipset)

SeeAlso: 0CF8,0CFA

C052  R?  bits 6,7: ???


C059	  ----	Intel Pentium motherboard ("Neptune" chipset)


C065	  ----	Intel "Neptune" chipset - MEMORY SIZE???

SeeAlso: INT 15/AX=DA88h

C065  R	  system memory in MB??? (10h on a 16MB machine)


C200-C204 ----	Intel Pentium motherboard ("Neptune" chipset)


C220-C227 ----	serial port, description same as 03F8

C228-C22F ----	serial port, description same as 03F8


C244	  ----	Intel Pentium motherboard ("Neptune" chipset)


C2E0-C2EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

C2E1  RW  GPIB (adapter 6)


D220-D227 ----	serial port, description same as 03F8

D228-D22F ----	serial port, description same as 03F8


E2E0-E2EF ----	GPIB (General Purpose Interface Bus, IEEE 488 interface)

E2E1  RW  GPIB (adapter 7)


E2E8-E2EF ----	8514/A and compatible video cards (e.g. ATI Graphics Ultra)

E2E8   W  drawing control: pixel data transfer

MEMORY-MAPPED ADDRESSES


80C00000  Compaq Deskpro 386 system memory board register

80C00000  R   Diagnostics register

bit 7	= 0  memory expansion board is installed

bit 6	= 0  second 1 MB of system memory board is installed

bit 5-4 = 00 base memory set to 640 KB

  01 invalid

  10 base memory set to 512 KB

  11 base memory set to 256 KB

bit 3	= 0  parity error in byte 3

bit 2	= 0  parity error in byte 2

bit 1	= 0  parity error in byte 1

bit 0	= 0  parity error in byte 0 (in 32-bit double word)

80C00000   W  RAM relocation register

bit 7-2	   Reserved, always write 1's.

bit 1 = 0  Write-protect 128-Kbyte RAM at FE0000.

      = 1  Do not write-protect RAM at FE0000.

bit 0 = 0  Relocate 128-Kbyte block at FE0000 to address 0E0000

      = 1  128-Kbyte RAM is addressed only at FE0000.


C0000000-C000FFFF	Weitek "Abacus" math coprocessor


Chuck Proctor	<71534.2302@CompuServe.COM>

Richard W. Watson	<73042.1420@CompuServe.COM>

Matthias Paul	<mpaul@ibh.rwth-aachen.de>

[Some of the information in this list was extracted from Frank van Gilluwe's

_The_Undocumented_PC_, a must-have book for anyone programming down to the

"bare metal" of a PC.]

[Some of the information in this list from the shareware version of Dave

Williams' DOSREF, v3.0]

[8514/A hardware ports found in FractInt v18.0 source file FR8514A.ASM]

[Compaq QVision info from the _COMPAQ_QVision_Graphics_System_Technical_

_Reference_Guide_, second edition (October 1993).  Compaq part number

073A/0693.  Much more to come!]

[AMI keyboard controller port 0064 commands from the American Megatrends, Inc.

_Version_KF_and_KH_Keyboard_Controller_BIOS_Reference_, available on the

AMI BBS and american.megatrends.com as KFKHMAN.ZIP.]

[Various chipset infos from "Het BIOS Boekje" 2nd edition, by Alle Metzlar,

ISBN 90-72260-59-7 (1995).]


Highest Table Number = P104


Please redistribute all of the files comprising the interrupt list (listed at

the beginning of the list and in INTERRUP.1ST) unmodified as a group, in a

quartet of archives named INTER47A through INTER47D (preferably the original

authenticated PKZIP archives), and the utility programs in a two additional

archives called INTER47E.ZIP and INTER47F.ZIP

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown


Internet: ralf@telerama.lm.com

UUCP: {uunet,harvard}!telerama.lm.com!ralf

FIDO: Ralf Brown 1:129/26.1

or post a message to me in the DR_DEBUG echo (I probably won't see it

unless you address it to me)

CIS:  >INTERNET:ralf@telerama.lm.com


Interrupt Index
Interrupt List      Release 47      Last change 8/13/95

This compilation is Copyright (c) 1989,1990,1991,1992,1993,1994,1995 Ralf Brown

Interrupt Index

Compress index

Notes

  FILELIST

  CONTACT_INFO

  Note

  DISCLAIMER

  FLAGS

  CATEGORIES

INT 00 - CPU-generated - DIVIDE ERROR

  INT 00 ---- - CPU-generated - DIVIDE ERROR

  INT 00 ---- - Zenith - ROM DEBUGGER

INT 01 - CPU-generated - SINGLE STEP; (80386+) - DEBUGGING EXCEPTIONS

  INT 01 ---- - CPU-generated - SINGLE STEP

  INT 01 ---- - CPU-generated (80386+) - DEBUGGING EXCEPTIONS

INT 02 - external hardware - NON-MASKABLE INTERRUPT

  INT 02 ---- - external hardware - NON-MASKABLE INTERRUPT

INT 03 - CPU-generated - BREAKPOINT

  INT 03 ---- - CPU-generated - BREAKPOINT

  INT 03 ---- - Columbia PCs (desktop,VP portables) - ROM DEBUGGER

  INT 03 ---- - Realia COBOL - DEBUGGER SUPPORT

  INT 03 ---- - Watcom WVIDEO, Watcom WD - OUTPUT DEBUGGING MESSAGE

  INT 03 ---- - DTown Utilities - POP UP

  INT 03 0910 - Soft-ICE - BACK DOOR COMMANDS - DISPLAY STRING IN Soft-ICE WINDOW

  INT 03 0911 - Soft-ICE - BACK DOOR COMMANDS - EXECUTE Soft-ICE COMMAND

  INT 03 0912 - Soft-ICE - BACK DOOR COMMANDS - GET BREAKPOINT INFORMATION

  INT 03 0913 - Soft-ICE v2.5x - BACK DOOR COMMANDS - SET Soft-ICE BREAKPOINT

  INT 03 0914 - Soft-ICE v2.5x - BACK DOOR COMMANDS - REMOVE Soft-ICE BREAKPOINT

INT 04 - CPU-generated - INTO DETECTED OVERFLOW

  INT 04 ---- - CPU-generated - INTO DETECTED OVERFLOW

INT 05 - PRINT SCREEN; CPU-generated (80186+) - BOUND RANGE EXCEEDED

  INT 05 ---- - PRINT SCREEN

  INT 05 ---- - CPU-generated (80186+) - BOUND RANGE EXCEEDED

  INT 05 454A - PSPS v2.01 - EJECT PAGE

  INT 05 4E57 - PSPS v2.01 - SET PARAMETERS

  INT 05 5053 - PSPS v2.01 - GET PARAMETERS

  INT 05 554E - PSPS v2.01 - UNINSTALL

INT 06 - CPU-generated (80286+) - INVALID OPCODE

  INT 06 ---- - CPU-generated (80286+) - INVALID OPCODE

  INT 06 ---- - HP 95LX - SLEEP/WAKEUP

  INT 06 ---- - no-name clone - GRAPHICS CHARACTER TABLE (NOT A VECTOR!)

INT 07 - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE

  INT 07 ---- - CPU-generated (80286+) - PROCESSOR EXTENSION NOT AVAILABLE

INT 08 - IRQ0 - SYSTEM TIMER; CPU-generated (80286+)

  INT 08 ---- - IRQ0 - SYSTEM TIMER

  INT 08 ---- - CPU-generated (80286+) - DOUBLE EXCEPTION DETECTED

INT 09 - IRQ1 - KEYBOARD DATA READY; CPU-generated (80286,80386)

  INT 09 ---- - IRQ1 - KEYBOARD DATA READY

  INT 09 ---- - CPU-generated (80286,80386) - PROCESSOR EXTENSION PROTECTION ERROR

  INT 09 ---- - internal hardware - RESERVED BY Intel (80486)

INT 0A - IRQ2 - LPT2/EGA,VGA/IRQ9; CPU-generated (80286+)

  INT 0A ---- - IRQ2 - LPT2 (PC), VERTICAL RETRACE INTERRUPT (EGA,VGA)

  INT 0A ---- - IRQ2 - Tandy 1000-series HARD DISK

  INT 0A ---- - IRQ2 - ROLAND MPU MIDI INTERFACE

  INT 0A ---- - CPU-generated (80286+) - INVALID TASK STATE SEGMENT

INT 0B - IRQ3 - SERIAL COMMUNICATIONS (COM2); CPU-generated (80286+)

  INT 0B ---- - IRQ3 - SERIAL COMMUNICATIONS (COM2)

  INT 0B ---- - CPU-generated (80286+) - SEGMENT NOT PRESENT

  INT 0B ---- - HP 95LX - LOW-LEVEL KEYBOARD HANDLER

INT 0C - IRQ4 - SERIAL COMMUNICATIONS (COM1); CPU-generated (80286+)

  INT 0C ---- - IRQ4 - SERIAL COMMUNICATIONS (COM1)

  INT 0C ---- - CPU-generated (80286+) - STACK FAULT

  INT 0C ---- - IBM SYSTEM 36/38 WORKSTATION EMULATION - API POINTER

INT 0D - IRQ5 - FIXED DISK/LPT2/reserved; CPU-generated (80286+)

  INT 0D ---- - IRQ5 - FIXED DISK (PC,XT), LPT2 (AT), reserved (PS/2)

  INT 0D ---- - IRQ5 - Tandy 1000 60 Hz RAM REFRESH

  INT 0D ---- - HP 95LX - INFRARED INTERRUPT

  INT 0D ---- - CPU-generated (80286+) - GENERAL PROTECTION VIOLATION

INT 0E - IRQ6 - DISKETTE CONTROLLER; CPU-generated (80386+)

  INT 0E ---- - IRQ6 - DISKETTE CONTROLLER

  INT 0E ---- - CPU-generated (80386+ native mode) - PAGE FAULT

  INT 0E ---- - HP 95LX - EXTERNAL CARD INTERRUPT

INT 0F - IRQ7 - PARALLEL PRINTER

  INT 0F ---- - IRQ7 - PARALLEL PRINTER

  INT 0F ---- - HP 95LX - REAL-TIME CLOCK

INT 10 - VIDEO; CPU-generated (80286+)

  INT 10 ---- - CPU-generated (80286+) - COPROCESSOR ERROR

  INT 10 00-- - VIDEO - SET VIDEO MODE

  INT 10 0070 - VIDEO - Everex Micro Enhancer EGA/Viewpoint VGA - EXTENDED MODE SET

  INT 10 007E - VIDEO - Paradise VGA, AT&T VDC600 - SET SPECIAL MODE

  INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - SET VGA OPERATION

  INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - SET NON-VGA OPERATION

  INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - QUERY MODE STATUS

  INT 10 007F - VIDEO - Paradise VGA, AT&T VDC600 - EXTENDED FUNCTIONS

  INT 10 007F - Paradise VGA - ???

  INT 10 007F - Paradise VGA - ???

  INT 10 007F - Paradise VGA - ???

  INT 10 007F - Paradise VGA - ???

  INT 10 007F - Paradise VGA - ???

  INT 10 01-- - VIDEO - SET TEXT-MODE CURSOR SHAPE

  INT 10 02-- - VIDEO - SET CURSOR POSITION

  INT 10 03-- - VIDEO - GET CURSOR POSITION AND SIZE

  INT 10 04-- - VIDEO - READ LIGHT PEN POSITION (except VGA)

  INT 10 04-- - HUNTER 16 - GET CURSOR ADDRESS

  INT 10 05-- - VIDEO -  SELECT ACTIVE DISPLAY PAGE

  INT 10 05-- - VIDEO - PCjr, Tandy 1000 - MANIPULATE CRT/CPU PAGE REGISTERS

  INT 10 05-- - VIDEO - Corona/Cordata BIOS v4.10+ - GRAPHICS BITMAP BUFFER

  INT 10 06-- - VIDEO - SCROLL UP WINDOW

  INT 10 07-- - VIDEO - SCROLL DOWN WINDOW

  INT 10 08-- - VIDEO - READ CHARACTER AND ATTRIBUTE AT CURSOR POSITION

  INT 10 09-- - VIDEO - WRITE CHARACTER AND ATTRIBUTE AT CURSOR POSITION

  INT 10 0A-- - VIDEO - WRITE CHARACTER ONLY AT CURSOR POSITION

  INT 10 0B-- - VIDEO - SET BACKGROUND/BORDER COLOR

  INT 10 0B-- - VIDEO - SET PALETTE

  INT 10 0C-- - VIDEO - WRITE GRAPHICS PIXEL

  INT 10 0D-- - VIDEO - READ GRAPHICS PIXEL

  INT 10 0E-- - VIDEO - TELETYPE OUTPUT

  INT 10 0E-- - V20-XT-BIOS - TELETYPE OUTPUT WITH ATTRIBUTE

  INT 10 0F-- - VIDEO - GET CURRENT VIDEO MODE

  INT 10 0F56 - VUIMAGE DISPLAY DRIVER (v2.20 and below)

  INT 10 0F-- - FRIEZE v7.41+ - INSTALLATION CHECK

  INT 10 10-- - BIOS Window Extension v1.1 - SET WINDOW COORDINATES

  INT 10 10-- - VIDEO - Eagle PC2 BIOS Rev. C - SET SCROLL SPEED

  INT 10 1000 - VIDEO - SET SINGLE PALETTE REGISTER (PCjr,Tandy,EGA,MCGA,VGA)

  INT 10 1001 - VIDEO - SET BORDER (OVERSCAN) COLOR (PCjr,Tandy,EGA,VGA)

  INT 10 1002 - VIDEO - SET ALL PALETTE REGISTERS (PCjr,Tandy,EGA,VGA)

  INT 10 1003 - VIDEO - TOGGLE INTENSITY/BLINKING BIT (Jr, PS, TANDY 1000, EGA, VGA)

  INT 10 1007 - VIDEO - GET INDIVIDUAL PALETTE REGISTER (VGA,UltraVision v2+)

  INT 10 1008 - VIDEO - READ OVERSCAN (BORDER COLOR) REGISTER (VGA,UltraVision v2+)

  INT 10 1009 - VIDEO - READ ALL PALETTE REGISTERS AND OVERSCAN REGISTER (VGA)

  INT 10 1010 - VIDEO - SET INDIVIDUAL DAC REGISTER (VGA/MCGA)

  INT 10 1012 - VIDEO - SET BLOCK OF DAC REGISTERS (VGA/MCGA)

  INT 10 1013 - VIDEO - SELECT VIDEO DAC COLOR PAGE (VGA)

  INT 10 1015 - VIDEO - READ INDIVIDUAL DAC REGISTER (VGA/MCGA)

  INT 10 1017 - VIDEO - READ BLOCK OF DAC REGISTERS (VGA/MCGA)

  INT 10 1018 - VIDEO - SET PEL MASK (VGA/MCGA)

  INT 10 1019 - VIDEO - READ PEL MASK (VGA/MCGA)

  INT 10 101A - VIDEO - GET VIDEO DAC COLOR-PAGE STATE (VGA)

  INT 10 101B - VIDEO - PERFORM GRAY-SCALE SUMMING (VGA/MCGA)

  INT 10 10E0 - VIDEO - Diamond Speedstar 24 - SET 24-BIT GRAPHICS MODE

  INT 10 10F0 - VIDEO - Tseng ET-4000 BIOS - SET HiColor GRAPHICS MODE

  INT 10 10F1 - VIDEO - Tseng ET-4000 BIOS - GET DAC TYPE

  INT 10 10F2 - VIDEO - Tseng ET-4000 BIOS - CHECK IF HiColor MODE/SET HiColor MODE

  INT 10 11-- - BIOS Window Extension v1.1 - GET WINDOW COORDINATES

  INT 10 11-- - VIDEO - TEXT-MODE CHARACTER GENERATOR FUNCTIONS (PS, EGA, VGA)

  INT 10 11-- - VIDEO - Realtek RTVGA - TEXT-MODE CHARACTER GENERATOR FUNCTIONS

  INT 10 110F - VIDEO - Realtek RTVGA - SET USER 8x8 GRAPHICS CHARACTERS

  INT 10 1110 - VIDEO - Realtek RTVGA - SET USER GRAPHICS CHARACTERS

  INT 10 1111 - VIDEO - Realtek RTVGA - SET ROM 8x14 GRAPHICS CHARACTERS

  INT 10 1112 - VIDEO - Realtek RTVGA - SET ROM 8x8 DOUBLE-DOT CHARACTERS

  INT 10 1120 - VIDEO - GRAPH-MODE CHARGEN - SET USER 8x8 GRAPHICS CHARS (PS,EGA,VGA)

  INT 10 1121 - VIDEO - GRAPH-MODE CHARGEN - SET USER GRAPHICS CHARACTERS (PS,EGA,VGA)

  INT 10 1122 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x14 GRAPHICS CHARS (PS,EGA,VGA)

  INT 10 1123 - VIDEO - GRAPH-MODE CHARGEN - SET ROM 8x8 DOUBLE-DOT CHARS (PS,EGA,VGA)

  INT 10 1124 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPHICS CHARS (VGA,MCGA)

  INT 10 1129 - VIDEO - GRAPH-MODE CHARGEN - LOAD 8x16 GRAPH CHARS (Compaq Systempro)

  INT 10 1130 - VIDEO - GET FONT INFORMATION (EGA, MCGA, VGA)

  INT 10 1130 - M10_SCR.COM v3.5+ - INSTALLATION CHECK

  INT 10 12-- - BIOS Window Extension v1.1 - GET BLANKING ATTRIBUTE

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS, EGA, VGA, MCGA) - GET EGA INFO

  INT 10 12-- - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET BIOS INFO

  INT 10 12-- - VIDEO - Trident TVGA 8800/8900/9000 BIOS - GET VIDEO RAM SIZE

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS,EGA,VGA,MCGA) - ALTERNATE PRTSC

  INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - SELECT VERTICAL RESOLUTION

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - PALETTE LOADING

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - VIDEO ADDRESSING

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA, MCGA) - GRAY-SCALE SUMMING

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (VGA) - CURSOR EMULATION

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS) - DISPLAY-SWITCH INTERFACE

  INT 10 12-- - VIDEO - ALTERNATE FUNCTION SELECT (PS, VGA) - VIDEO REFRESH CONTROL

  INT 10 12-- - VIDEO - XGA - MAINFRAME INTERACTIVE SUPPORT

  INT 10 12-- - Tseng ET-4000 BIOS v8.00 (06/07/91) - BUG

  INT 10 12-- - Tseng ET-4000 BIOS v8.00 (06/07/91) - BUG

  INT 10 12-- - VIDEO - ALTERNATE FUNC SELECT (ATI,Tatung,Taxan) - ENHANCED FEATURES

  INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 12-- - Cirrus Logic BIOS - INQUIRE VGA TYPE

  INT 10 12-- - Cirrus Logic BIOS - GET BIOS VERSION NUMBER

  INT 10 12-- - Cirrus Logic BIOS - GET DESIGN REVISION CODE

  INT 10 12-- - Cirrus Logic BIOS v3.02 - INQUIRE OPTIONS

  INT 10 12-- - Cirrus Logic BIOS - GET INSTALLED MEMORY

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - EN/DISABLE REVERSE VIDEO MODE

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET FRAME COLOR

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE BOLD MODE

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET AUTOMAP/EMULATE ATTRIBUTES

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - ENABLE/DISABLE EXPAND MODE

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET CENTERING MODE

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SET 720-DOT FIXUP MODE

  INT 10 12-- - Cirrus Logic BIOS v3.02 - LCD panel - SWITCH DISPLAY

  INT 10 12-- - Cirrus Logic BIOS - FORCE 8-BIT OR 16-BIT OPERATION

  INT 10 12-- - Cirrus Logic BIOS v3.02 - POWER CONSERVATION

  INT 10 12-- - Cirrus Logic BIOS - GET USER OPTIONS

  INT 10 12-- - Cirrus Logic BIOS - GET VIDEO MODE AVAILABILITY

  INT 10 12-- - Cirrus Logic BIOS - READ MONITOR TYPE AND ID FROM 15-PIN CONNECTOR

  INT 10 12-- - Cirrus Logic BIOS - SET MONITOR HORIZONTAL RETRACE FREQUENCY

  INT 10 12-- - Cirrus Logic BIOS - SET VGA REFRESH

  INT 10 12-- - Cirrus Logic BIOS - SET MONITOR TYPE

  INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 12-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 13-- - VIDEO - WRITE STRING (AT and later,EGA)

  INT 10 13-- - DOS/V - READ/WRITE DOUBLE-BYTE CHARACTER SET CHARACTERS/ATTRIBUTES

  INT 10 1400 - VIDEO - LOAD USER-SPECIFIED LCD CHARACTER FONT (CONV,Compaq Port 386)

  INT 10 1401 - VIDEO - LOAD SYSTEM ROM DEFAULT LCD CHARACTER FONT (CONV,CP386)

  INT 10 1402 - VIDEO - SET MAPPING OF LCD HIGH INTENSITY ATTRIBUTES (CONV,CP386)

  INT 10 15-- - VIDEO - GET PHYSICAL DISPLAY PARAMETERS (CONVERTIBLE)

  INT 10 15-- - VIDEO - SET SUPERIMPOSE MODE (Sperry PC)

  INT 10 18-- - VIDEO - DOS/V - GET/SET FONT PATTERN

  INT 10 19-- - Japanese VIDEO - DOUBLE-BYTE CHARACTER SET SHIFT INFORMATION

  INT 10 1A00 - VIDEO - GET DISPLAY COMBINATION CODE (PS,VGA/MCGA)

  INT 10 1A01 - VIDEO - SET DISPLAY COMBINATION CODE (PS,VGA/MCGA)

  INT 10 1B-- - VIDEO - FUNCTIONALITY/STATE INFORMATION (PS,VGA/MCGA)

  INT 10 1C-- - VIDEO - SAVE/RESTORE VIDEO STATE (PS50+,VGA)

  INT 10 1D-- - VIDEO - DOS/V - SHIFT STATUS LINE CONTROL

  INT 10 1D-- - SpeedSTAR Plus BIOS v4.23+ - SET SYNC PARAMETERS

  INT 10 1D-- - Tseng ET-4000 BIOS v3.00 and v8.00 - BUG

  INT 10 1F00 - VIDEO - XGA - GET DMQS (Display Mode Query and Set) DATA LENGTH

  INT 10 1F01 - VIDEO - XGA - READ DMQS DATA

  INT 10 3000 - VIDEO - LOCATE 3270PC CONFIGURATION TABLE (INSTALLATION CHECK)

  INT 10 3800 - Tinytalk Personal v1.09f+ - GET CONFIGURATION INFO

  INT 10 3801 - Tinytalk Personal v1.10 - ???

  INT 10 3802 - Tinytalk Personal v1.10 - ???

  INT 10 3803 - Tinytalk Personal v1.10 - GET ???

  INT 10 3804 - Tinytalk Personal v1.10 - GET ???

  INT 10 3805 - Tinytalk Personal v1.10 - GET ???

  INT 10 3806 - Tinytalk Personal v1.10 - ???

  INT 10 39-- - Tinytalk Personal v1.10 - ???

  INT 10 40-- - VIDEO - SET GRAPHICS MODE (Hercules GRAFIX)

  INT 10 41-- - VIDEO - SET TEXT MODE (Hercules GRAFIX)

  INT 10 42-- - VIDEO - CLEAR CURRENT PAGE (Hercules GRAFIX)

  INT 10 43-- - VIDEO - SELECT DRAWING PAGE (Hercules GRAFIX)

  INT 10 44-- - VIDEO - SELECT DRAWING FUNCTION (Hercules GRAFIX)

  INT 10 45-- - VIDEO - SELECT PAGE TO DISPLAY (Hercules GRAFIX)

  INT 10 46-- - VIDEO - DRAW ONE PIXEL (Hercules GRAFIX)

  INT 10 47-- - VIDEO - FIND PIXEL VALUE (Hercules GRAFIX)

  INT 10 48-- - VIDEO - MOVE TO POINT (Hercules GRAFIX)

  INT 10 49-- - VIDEO - DRAW TO POINT (Hercules GRAFIX)

  INT 10 4A-- - VIDEO - BLOCK FILL (Hercules GRAFIX)

  INT 10 4B-- - VIDEO - DISPLAY CHARACTER (Hercules GRAFIX)

  INT 10 4B-- - FRIEZE - API

  INT 10 4C-- - VIDEO - DRAW ARC (Hercules GRAFIX)

  INT 10 4D-- - VIDEO - DRAW CIRCLE (Hercules GRAFIX)

  INT 10 4E-- - VIDEO - FILL AREA (Hercules GRAFIX)

  INT 10 4E00 - VESA XGA BIOS Extensions - GET XGA ENVIRONMENT INFORMATION

  INT 10 4E01 - VESA XGA BIOS Extensions - RETURN XGA SUBSYSTEM INFORMATION

  INT 10 4E02 - VESA XGA BIOS Extensions - RETURN XGA MODE INFORMATION

  INT 10 4E03 - VESA XGA BIOS Extensions - SET XGA VIDEO MODE

  INT 10 4E04 - VESA XGA BIOS Extensions - RETURN CURRENT VIDEO MODE

  INT 10 4E05 - VESA XGA BIOS Extensions - SET FEATURE CONNECTOR STATE

  INT 10 4E06 - VESA XGA BIOS Extensions - RETURN FEATURE CONNECTOR STATE

  INT 10 4F00 - VESA SuperVGA BIOS (VBE) - GET SuperVGA INFORMATION

  INT 10 4F01 - VESA SuperVGA BIOS - GET SuperVGA MODE INFORMATION

  INT 10 4F02 - VESA SuperVGA BIOS - SET SuperVGA VIDEO MODE

  INT 10 4F03 - VESA SuperVGA BIOS - GET CURRENT VIDEO MODE

  INT 10 4F04 - VESA SuperVGA BIOS - SAVE/RESTORE SuperVGA VIDEO STATE

  INT 10 4F05 - VESA SuperVGA BIOS - CPU VIDEO MEMORY CONTROL

  INT 10 4F06 - VESA SuperVGA BIOS v1.1+ - GET/SET LOGICAL SCAN LINE LENGTH (PIXELS)

  INT 10 4F06 - VESA SuperVGA BIOS v2.0+ - SET LOGICAL SCAN LINE LENGTH (BYTES)

  INT 10 4F06 - VESA SuperVGA BIOS v2.0+ - GET MAXIMUM SCAN LINE LENGTH

  INT 10 4F07 - VESA SuperVGA BIOS v1.1+ - GET/SET DISPLAY START

  INT 10 4F08 - VESA SuperVGA BIOS v1.2+ - GET/SET DAC PALETTE CONTROL

  INT 10 4F09 - VESA SuperVGA BIOS v2.0+ - GET/SET PALETTE ENTRIES

  INT 10 4F0A - VESA SuperVGA BIOS v2.0+ - GET PROTECTED-MODE CODE

  INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - GET CAPABILITIES

  INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - SET DISPLAY POWER STATE

  INT 10 4F10 - VESA VBE/PM (Power Management) v1.0+ - GET DISPLAY POWER STATE

  INT 10 4F13 - VESA Audio Interface - VBE/AI INSTALLATION CHECK

  INT 10 4F13 - VESA Audio Interface - LOCATE DEVICE

  INT 10 4F13 - VESA Audio Interface - QUERY DEVICE

  INT 10 4F13 - VESA Audio Interface - OPEN DEVICE

  INT 10 4F13 - VESA Audio Interface - CLOSE DEVICE

  INT 10 4F13 - VESA Audio Interface - UNINSTALL DRIVER

  INT 10 4F13 - VESA Audio Interface - DRIVER CHAIN/UNCHAIN

  INT 10 4F4D - VESA - VIDEO CURSOR INTERFACE REQUEST

  INT 10 4FFF - VESA SuperVGA BIOS - Everex - TURN VESA ON/OFF

  INT 10 4FFF - Diamond Stealth 24 - SET/RESET DUAL DISPLAY MODE

  INT 10 50-- - SCROLOCK.COM - INSTALLATION CHECK

  INT 10 5000 - VIDEO - AX PC - SET SCREEN COUNTRY CODE

  INT 10 5001 - VIDEO - AX PC - GET SCREEN COUNTRY CODE

  INT 10 5049 - VIDEO - SCREENR v1.55+ - API

  INT 10 51-- - SCROLOCK.COM - ENABLE/DISABLE

  INT 10 5100 - VIDEO - AX PC - REGISTER EXTERNAL CHARACTER

  INT 10 5101 - VIDEO - AX PC - READ CHARACTER

  INT 10 5200 - VIDEO - AX PC - SET VIRTUAL TEXT RAM BUFFER

  INT 10 5201 - VIDEO - AX PC - GET VIRTUAL TEXT RAM BUFFER

  INT 10 53-- - Show Partner F/X v3.6 - START PRESENTATION

  INT 10 55-- - Show Partner F/X v3.6 - UNINSTALL

  INT 10 5555 - VIDEO - ATI EGA/VGA Wonder Super Switch - INSTALLATION CHECK

  INT 10 5F00 - Chips & Technologies Extended BIOS - RETURN CHIP INFORMATION

  INT 10 5F00 - VIDEO - Realtek RTVGA - RETURN CHIP VERSION

  INT 10 5F01 - Chips & Technologies Extended BIOS - SET PREPROGRAMMED EMULATION

  INT 10 5F01 - VIDEO - Realtek RTVGA - WRITE RTVGA BIOS STRING TO DESTINATION

  INT 10 5F02 - Chips & Technologies Extended BIOS - AUTO EMULATION CONTROL

  INT 10 5F02 - VIDEO - Realtek RTVGA - RETURN RTVGA ON-BOARD MEMORY SIZE

  INT 10 5F03 - VIDEO - Realtek RTVGA - SET ???

  INT 10 5F03 - Chips & Technologies Extended BIOS - SET POWER-ON VIDEO CONDITIONS

  INT 10 5F03 - Chips & Technologies Extended BIOS - SET POWER-ON EMULATION MODE

  INT 10 5F10 - Chips & Technologies Extended BIOS - ???

  INT 10 5F50 - Chips & Technologies Extended BIOS - GET LAPTOP DISPLAY STATUS

  INT 10 5F51 - Chips & Technologies Extended BIOS - SET DISPLAY STATUS ???

  INT 10 5F5E - Chips & Technologies Extended BIOS - SET ???

  INT 10 5F-- - Chips & Technologies Extended BIOS - SAVE/RESTORE SUPERVGA STATE

  INT 10 60-- - HUNTER 16 - SET GRAPHICS FONT

  INT 10 61-- - HUNTER 16 - MOVE CURSOR TO GRAPHICS CO-ORDINATES

  INT 10 62-- - HUNTER 16 - GET CURSOR POSITION IN GRAPHICS CO-ORDINATES

  INT 10 63-- - HUNTER 16 - SET CONTRAST

  INT 10 64-- - HUNTER 16 - SET BACKLIGHT LEVEL

  INT 10 6500 - HUNTER 16 - GET BACKLIGHT TIMEOUT

  INT 10 6501 - HUNTER 16 - SET BACKLIGHT TIMEOUT

  INT 10 66-- - HUNTER 16 - SPLIT DISPLAY

  INT 10 6A00 - Direct Graphics Interface Standard (DGIS) - INQUIRE AVAILABLE DEVICES

  INT 10 6A01 - Direct Graphics Interface Standard (DGIS) - REDIRECT CHARACTER OUTPUT

  INT 10 6A02 - DGIS - INQUIRE INT 10 OUTPUT DEVICE

  INT 10 6E00 - Paradise VGA internal - GET ???

  INT 10 6E04 - Paradise VGA internal - GET SCREEN SIZE AND ???

  INT 10 6E05 - Paradise VGA internal - SET MODE

  INT 10 6F00 - HP Vectra EX-BIOS - INSTALLATION CHECK

  INT 10 6F00 - VIDEO - Video7 VGA,VEGA VGA - INSTALLATION CHECK

  INT 10 6F01 - VIDEO - Video7 VGA,VEGA VGA,HP EX-BIOS - GET MONITOR INFO

  INT 10 6F02 - HP Vectra EX-BIOS - SET MONITOR INFO

  INT 10 6F03 - HP Vectra EX-BIOS - MODIFY MONITOR INFO

  INT 10 6F04 - VIDEO - Video7 VGA,VEGA VGA,HP Vectra - GET MODE AND SCREEN RESOLUTION

  INT 10 6F05 - VIDEO - Video7 VGA,VEGA EXTENDED EGA/VGA,HP Vectra - SET VIDEO MODE

  INT 10 6F06 - VIDEO - Video7 VGA,VEGA VGA - SELECT AUTOSWITCH MODE

  INT 10 6F07 - VIDEO -  Video7 VGA,VEGA VGA - GET VIDEO MEMORY CONFIGURATION

  INT 10 70-- - VIDEO - TANDY 2000 only - GET ADDRESS OF VIDEO RAM

  INT 10 70-- - HUNTER 16 - DRAW ELLIPSE/CIRCLE

  INT 10 7000 - Everex Extended Video BIOS - RETURN EMULATION STATUS

  INT 10 7000 - Everex Extended Video BIOS - GET PAGING FUNCTION POINTER FOR CURR MODE

  INT 10 7000 - Everex Extended Video BIOS - GET SUPPORTED MODE INFO

  INT 10 71-- - VIDEO - TANDY 2000 only - GET ADDRESS OF INCRAM

  INT 10 71-- - HUNTER 16 - DRAW LINE/BOX

  INT 10 72-- - VIDEO - TANDY 2000 only - SCROLL RIGHT PART OR ALL OF SCREEN

  INT 10 72-- - HUNTER 16 - SELECT TEXT-MODE INVERSE VIDEO MECHANISM

  INT 10 73-- - VIDEO - TANDY 2000 only - SCROLL LEFT PART OR ALL OF SCREEN

  INT 10 73-- - HUNTER 16 - SELECT TEXT FONT

  INT 10 74-- - HUNTER 16 - SET LCD WINDOWS POSITION

  INT 10 75-- - HUNTER 16 - SET ZOOM

  INT 10 76-- - HUNTER 16 - LOOKING KEYS

  INT 10 77-- - HUNTER 16 - GET GRAPHICS FONT

  INT 10 78-- - HUNTER 16 - TURN BACKLIGHT ON/OFF

  INT 10 7F-- - Paradise SVGA - WD90C24 INSTALLATION CHECK

  INT 10 7F00 - SOLLEX SuperVGA - GET EXTENSIONS INFO

  INT 10 7F00 - Diamond Stealth 24 - GET S3 INFORMATION BLOCK

  INT 10 7F00 - Diamond Stealth 24 - GET LINEAR ADDRESS

  INT 10 7F00 - Diamond Stealth 24 - SET LINEAR ADDRESS

  INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - SET ADAPTER

  INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - GET ADAPTER

  INT 10 7F01 - SOLLEX SuperVGA - ADAPTER CONTROL - DETERMINE ADAPTER SUPPORT

  INT 10 7F02 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - SET DISPLAY OUTPUT

  INT 10 7F02 - SOLLEX SuperVGA - DISPLAY OUTPUT CONTROL - GET DISPLAY OUTPUT

  INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GET SUPPORT INFO

  INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - INITIALIZE VIDEO SUPPORT

  INT 10 7F03 - SOLLEX SuperVGA - VIDEO SUPPORT CONTROL - GO RAM RESIDENT

  INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - SET POWER STATE

  INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - GET POWER STATE

  INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - SET TIMEOUT RESET

  INT 10 7F04 - SOLLEX SuperVGA - POWER CONTROL - GET TIMEOUT RESET

  INT 10 7F05 - SOLLEX SuperVGA - LOAD REGISTER

  INT 10 7F06 - SOLLEX SuperVGA - MULTIPLE FONT CONTROL

  INT 10 7F07 - SOLLEX SuperVGA - FILL VIDEO RAM

  INT 10 80-- - CU Writer v1.4 - GET OPTION

  INT 10 80-- - VIDEO - DESQview 2.0x only - internal - SET ??? HANDLER

  INT 10 81-- - CU Writer v1.4 - SET OPTION

  INT 10 81-- - VIDEO - DESQview 2.0x only - internal - GET ???

  INT 10 82-- - VIDEO - DESQview 2.0x only - internal - GET CURRENT WINDOW INFO

  INT 10 8200 - VIDEO - AX PC - GET/SET SCROLL MODE

  INT 10 8300 - VIDEO - AX PC - GET VIDEO RAM ADDRESS

  INT 10 8B-- - Alloy MW386 - FORCE WORKSTATION SCREEN UPDATE

  INT 10 90-- - Alloy MW386 - GET PHYSICAL WORKSTATION DISPLAY MODE

  INT 10 91-- - Alloy MW386 - GET PHYSICAL WORKSTATION ADAPTER TYPE

  INT 10 92-- - Alloy MW386 - INHIBIT WORKSTATION SCREEN UPDATES

  INT 10 93-- - Alloy MW386 - REDRAW SCREEN

  INT 10 A0-- - CU Writer v1.4 - SET PIXEL WRITE MODE

  INT 10 A0-- - ATI Mach64 BIOS - Display Power Management Signalling API???

  INT 10 A004 - PhoenixVIEW/LC - VIDEO DISPLAY TYPE

  INT 10 A00C - ATI Mach64 BIOS - SET SLEEP MODE

  INT 10 A01B - PhoenixVIEW/LC - CRT MONITOR DETECTION

  INT 10 B0-- - CU Writer v1.4 - PUT PIXEL

  INT 10 B1-- - CU Writer v1.4 - MOVE TO

  INT 10 B2-- - CU Writer v1.4 - DRAW LINE TO

  INT 10 B3-- - CU Writer v1.4 - FLOOD FILL

  INT 10 B4-- - CU Writer v1.4 - DRAW RECTANGLE

  INT 10 B5-- - CU Writer v1.4 - DRAW FILLED RECTANGLE

  INT 10 BD44 - Compaq QVision - ???

  INT 10 BF-- - Athena Digital HGCIBM.COM - INSTALLATION CHECK

  INT 10 BF00 - VIDEO - Compaq Extensions - SELECT EXTERNAL MONITOR

  INT 10 BF01 - VIDEO - Compaq Extensions - SELECT INTERNAL MONITOR

  INT 10 BF02 - VIDEO - Compaq Extensions - SET MASTER MODE OF CURRENT CONTROLLER

  INT 10 BF03 - VIDEO - Compaq Extensions - GET ENVIRONMENT

  INT 10 BF04 - VIDEO - Compaq Extensions - SET MODE SWITCH DELAY

  INT 10 BF05 - VIDEO - Compaq Extensions - ENABLE/DISABLE DISPLAY

  INT 10 BF06 - VIDEO - Compaq SLT/286 - READ GRAY SCALE TABLE

  INT 10 BF07 - VIDEO - Compaq SLT/286 - WRITE GRAY SCALE TABLE

  INT 10 BF08 - VIDEO - Compaq SLT/286 - WRITE COLOR MIX REGISTERS

  INT 10 BF09 - VIDEO - Compaq Extensions - TURN ON REVERSE VIDEO

  INT 10 BF0A - VIDEO - Compaq Extensions - TURN OFF REVERSE VIDEO

  INT 10 BF0B - VIDEO - Compaq Extensions - CHECK WHETHER VIDEO REVERSED

  INT 10 BF0C - VIDEO - Compaq Extensions - SET DAC 6-BIT MODE

  INT 10 BF0D - VIDEO - Compaq Extensions - SET DAC 8-BIT MODE

  INT 10 BF0E - VIDEO - Compaq Extensions - CHECK DAC 6-BIT/8-BIT mode

  INT 10 BF0F - VIDEO - Compaq Extensions - SET HIGH ADRESS MAP REGISTER

  INT 10 BF10 - VIDEO - Compaq Extensions - GET HIGH ADDRESS MAP REGISTER

  INT 10 BF11 - VIDEO - Compaq Extensions - GET EXTENDED ENVIRONMENT

  INT 10 BF12 - VIDEO - Compaq Extensions - NEW ACTIVE MONITOR

  INT 10 BF13 - VIDEO - Compaq QVision - GAMMA CORRECTION

  INT 10 BFA0 - VIDEO - Compaq ADAPT.COM - INSTALLATION CHECK

  INT 10 BFA1 - VIDEO - Compaq ADAPT.COM - GET ???

  INT 10 BFA2 - VIDEO - Compaq ADAPT.COM - SET ???

  INT 10 C0-- - CU Writer v1.4 - GO TO TEXT ROW AND COLUMN

  INT 10 C1-- - CU Writer v1.4 - OUTPUT TEXT

  INT 10 C2-- - CU Writer v1.4 - REVERSE TEXT

  INT 10 C3-- - CU Writer v1.4 - TEXT BAR

  INT 10 C4-- - CU Writer v1.4 - TEXT MENU

  INT 10 CB00 - UNCHAIN - SAVE CURRENT VGA REGISTERS

  INT 10 CB01 - UNCHAIN - UPDATE PAGE 1 OFFSET

  INT 10 CB02 - UNCHAIN - UPDATE PAGE 2 OFFSET

  INT 10 CB03 - UNCHAIN - UPDATE PAGE 3 OFFSET

  INT 10 CB04 - UNCHAIN - UPDATE PAGE 4 OFFSET

  INT 10 CB05 - UNCHAIN - SAVE PALETTE

  INT 10 CB06 - UNCHAIN - RESTORE VGA REGISTERS

  INT 10 CBFF - UNCHAIN - INSTALLATION CHECK

  INT 10 CC00 - VIDEO - UltraVision - GET STATUS (INSTALLATION CHECK)

  INT 10 CC01 - VIDEO - UltraVision - DISABLE EXTENSIONS

  INT 10 CC02 - VIDEO - UltraVision - ENABLE EXTENSIONS

  INT 10 CD00 - VIDEO - UltraVision - LOAD ULTRAVISION PALETTE (color EGA,VGA)

  INT 10 CD01 - VIDEO - UltraVision - SET PALETTE LOCKING STATUS (color EGA,VGA)

  INT 10 CD02 - VIDEO - UltraVision - GET ULTRAVISION PALETTE (EGA,VGA)

  INT 10 CD03 - VIDEO - UltraVision - GET PALETTE LOCKING STATUS (color EGA,VGA)

  INT 10 CD04 - VIDEO - UltraVision - GET UltraVision TEXT MODE (EGA,VGA)

  INT 10 CD05 - VIDEO - UltraVision - SET CURSOR TYPE (EGA,VGA)

  INT 10 CD06 - VIDEO - UltraVision - GET CURSOR TYPE (EGA,VGA)

  INT 10 CD07 - VIDEO - UltraVision v1.2+ - SET UNDERLINE STATUS (EGA,VGA)

  INT 10 CD08 - VIDEO - UltraVision v1.2+ - GET UNDERLINE STATUS (EGA,VGA)

  INT 10 CD10 - VIDEO - UltraVision - LOAD USER FONT (EGA,VGA)

  INT 10 CD-- - VIDEO - UltraVision - SET ULTRAVISION TEXT MODE (EGA,VGA)

  INT 10 D0-- - CU Writer v1.4 - LOAD PICTURE

  INT 10 D0-- - HP 100LX/200LX - SET ZOOM MODE

  INT 10 D1-- - HP 100LX/200LX - INTERNAL - ???

  INT 10 D4-- - HP 100LX/200LX - INTERNAL - ???

  INT 10 D5-- - Netroom SCRNCLK - ???

  INT 10 DFA5 - VIDEO - Compaq ADAPT.COM - GET ??? DATA AREA

  INT 10 EF-- - VIDEO - MSHERC.COM - GET VIDEO ADAPTER TYPE AND MODE

  INT 10 F0-- - EGA Register Interface Library - READ ONE REGISTER

  INT 10 F1-- - EGA Register Interface Library - WRITE ONE REGISTER

  INT 10 F2-- - EGA Register Interface Library - READ REGISTER RANGE

  INT 10 F3-- - EGA Register Interface Library - WRITE REGISTER RANGE

  INT 10 F4-- - EGA Register Interface Library - READ REGISTER SET

  INT 10 F5-- - EGA Register Interface Library - WRITE REGISTER SET

  INT 10 F6-- - EGA Register Interface Library - REVERT TO DEFAULT REGISTERS

  INT 10 F7-- - EGA Register Interface Library - DEFINE DEFAULT REGISTER TABLE

  INT 10 FA-- - EGA Register Interface Library - INTERROGATE DRIVER

  INT 10 FA-- - FASTBUFF.COM - INSTALLATION CHECK

  INT 10 FE-- - TopView - GET SHADOW BUFFER

  INT 10 FF-- - TopView - UPDATE SCREEN FROM SHADOW BUFFER

  INT 10 FF-- - DJ GO32.EXE 80386+ DOS extender - VIDEO EXTENSIONS

  INT 10 FF-- - VIDEO - Oak VGA BIOS v1.02+ - SET EMULATION

  INT 10 FF00 - CARBON COPY PLUS v5.0 - CHECK IF CC CONNECTED TO CCHELP

  INT 10 FF01 - CARBON COPY PLUS v5.0 - DISCONNECT AND RESET LINE

  INT 10 FF02 - CARBON COPY PLUS v5.0 - GET LAST PHONE NUMBER DIALED

INT 11 - BIOS - GET EQUIPMENT LIST; CPU-generated (80486+)

  INT 11 ---- - CPU-generated (80486+) - ALIGNMENT CHECK

  INT 11 ---- - BIOS - GET EQUIPMENT LIST

  INT 11 ---- - Columbia Data Products Standard Device Level Protocol (SDLP) 1.6

  INT 11 0225 - Blank-It Screen Blanker - INSTALLATION CHECK

  INT 11 0225 - Blank-It Screen Blanker - SET TIMEOUT FOR SCREEN BLANKING

  INT 11 0225 - Blank-It Screen Blanker - ENABLE THE SOFTWARE

  INT 11 0225 - Blank-It Screen Blanker - DISABLE THE SOFTWARE

  INT 11 0225 - Blank-It Screen Blanker - GET BLANKING TIMEOUT

  INT 11 0225 - Blank-It Screen Blanker - ENABLE WINDOWS COMPATIBILITY MODE

  INT 11 0225 - Blank-It Screen Blanker - DISABLE WINDOWS COMPATIBILITY MODE

  INT 11 0225 - Blank-It Screen Blanker - UNBLANK THE SCREEN

  INT 11 0225 - Blank-It Screen Blanker - BLANK THE SCREEN

  INT 11 0225 - Blank-It Screen Blanker - SET HOTKEY FOR MANUAL BLANKING

  INT 11 05D7 - Borland C++ IDE - INSTALLED CALLOUT

  INT 11 77-- - RainbowFAX v1.3 - SFENGINE API - OPERATIONAL CONTROL

  INT 11 78-- - RainbowFAX v1.3 - SFENGINE API - ???

  INT 11 79-- - RainbowFAX v1.3 - SFENGINE API - ???

  INT 11 7A-- - RainbowFAX v1.3 - SFENGINE API - ???

  INT 11 7C-- - RainbowFAX v1.3 - SFENGINE API - ???

  INT 11 BC-- - BNU FOSSIL - INSTALLATION CHECK

  INT 11 FF-- - WD7000 SDLP interface - EXECUTE GENERIC SCSI COMMAND

  INT 11 FFFE - BACK&FORTH (before v1.62) API

INT 12 - BIOS - GET MEMORY SIZE

  INT 12 ---- - BIOS - GET MEMORY SIZE

  INT 12 ---- - KEYBUI v2.0+ - INSTALLATION CHECK

  INT 12 ---- - PARKER v2.0+ - INSTALLATION CHECK

  INT 12 05D7 - Borland C++ IDE - INSTALLATION CHECK

  INT 12 4350 - CPI-standard virus - "FRIEND" CHECK

  INT 12 FFFE - Back&Forth v1.62+ - API

INT 13 - DISK

  INT 13 00-- - DISK - RESET DISK SYSTEM

  INT 13 01-- - DISK - GET STATUS OF LAST OPERATION

  INT 13 02-- - DISK - READ SECTOR(S) INTO MEMORY

  INT 13 03-- - DISK - WRITE DISK SECTOR(S)

  INT 13 04-- - DISK - VERIFY DISK SECTOR(S)

  INT 13 05-- - FLOPPY - FORMAT TRACK

  INT 13 05-- - FIXED DISK - FORMAT TRACK

  INT 13 05-- - Future Domain SCSI BIOS - SEND SCSI MODE SELECT COMMAND

  INT 13 057F - 2M - FORMAT TRACK

  INT 13 06-- - FIXED DISK - FORMAT TRACK AND SET BAD SECTOR FLAGS (XT,PORT)

  INT 13 06-- - Future Domain SCSI BIOS - FORMAT DRIVE WITH BAD SECTOR MAPPING

  INT 13 06-- - Adaptec AHA-154xA/Bustek BT-542 BIOS - IDENTIFY SCSI DEVICES

  INT 13 06-- - V10DISK.SYS - READ DELETED SECTORS

  INT 13 07-- - FIXED DISK - FORMAT DRIVE STARTING AT GIVEN TRACK (XT,PORT)

  INT 13 07-- - Future Domain SCSI BIOS - FORMAT DRIVE

  INT 13 07-- - V10DISK.SYS - WRITE DELETED SECTORS

  INT 13 08-- - DISK - GET DRIVE PARAMETERS (PC,XT286,CONV,PS,ESDI,SCSI)

  INT 13 08-- - V10DISK.SYS - SET FORMAT

  INT 13 0800 - SecureDrive - INSTALLATION CHECK

  INT 13 09-- - HARD DISK - INITIALIZE CONTROLLER WITH DRIVE PARAMETERS (AT,PS)

  INT 13 0A-- - HARD DISK - READ LONG SECTOR(S) (AT and later)

  INT 13 0B-- - HARD DISK - WRITE LONG SECTOR(S) (AT and later)

  INT 13 0C-- - HARD DISK - SEEK TO CYLINDER

  INT 13 0D-- - HARD DISK - RESET HARD DISKS

  INT 13 0E-- - HARD DISK - READ SECTOR BUFFER (XT only)

  INT 13 0F-- - HARD DISK - WRITE SECTOR BUFFER (XT only)

  INT 13 10-- - HARD DISK - CHECK IF DRIVE READY

  INT 13 11-- - HARD DISK - RECALIBRATE DRIVE

  INT 13 12-- - HARD DISK - CONTROLLER RAM DIAGNOSTIC (XT,PS)

  INT 13 12-- - Future Domain SCSI CONTROLLER - STOP SCSI DISK

  INT 13 12-- - SyQuest - START/STOP SCSI DISK

  INT 13 13-- - HARD DISK - DRIVE DIAGNOSTIC (XT,PS)

  INT 13 13-- - SyQuest - READ DRIVE PARAMATERS (for DOS 5+)

  INT 13 14-- - HARD DISK - CONTROLLER INTERNAL DIAGNOSTIC

  INT 13 15-- - DISK - GET DISK TYPE (XT 1/10/86 or later,XT286,AT,PS)

  INT 13 16-- - FLOPPY DISK - DETECT DISK CHANGE (XT 1/10/86 or later,XT286,AT,PS)

  INT 13 17-- - FLOPPY DISK - SET DISK TYPE FOR FORMAT (AT,PS)

  INT 13 1700 - Future Domain SCSI CONTROLLER - GET INQUIRY INFO FROM SCSI DEVICE

  INT 13 18-- - DISK - SET MEDIA TYPE FOR FORMAT (AT model 3x9,XT2,XT286,PS)

  INT 13 18-- - Future Domain SCSI BIOS - GET SCSI CONTROLLER INFORMATION

  INT 13 18-- - XDF.COM - API

  INT 13 19-- - FIXED DISK - PARK HEADS ON ESDI DRIVE (XT286,PS)

  INT 13 19-- - Future Domain SCSI CONTROLLER - REINITIALIZE DRIVE

  INT 13 1A-- - ESDI FIXED DISK - FORMAT UNIT (PS)

  INT 13 1A-- - Future Domain SCSI CONTROLLER - GET SCSI PARTIAL MEDIUM CAPACITY

  INT 13 1B-- - ESDI FIXED DISK - GET MANUFACTURING HEADER

  INT 13 1B-- - Future Domain SCSI CONTROLLER - GET POINTER TO SCSI DISK INFO BLOCK

  INT 13 1C-- - Future Domain SCSI CONTROLLER - GET POINTER TO FREE CONTROLLER RAM

  INT 13 1C-- - ESDI FIXED DISK - ???

  INT 13 1C08 - ESDI FIXED DISK - GET COMMAND COMPLETION STATUS

  INT 13 1C09 - ESDI FIXED DISK - GET DEVICE STATUS

  INT 13 1C0A - ESDI FIXED DISK - GET DEVICE CONFIGURATION

  INT 13 1C0B - ESDI FIXED DISK - GET ADAPTER CONFIGURATION

  INT 13 1C0C - ESDI FIXED DISK - GET POS INFORMATION

  INT 13 1C0D - ESDI FIXED DISK - ???

  INT 13 1C0E - ESDI FIXED DISK - TRANSLATE RBA TO ABA

  INT 13 1C0F - ESDI FIXED DISK - ???

  INT 13 1C12 - ESDI FIXED DISK - ???

  INT 13 1D-- - IBMCACHE.SYS - CACHE STATUS

  INT 13 1F-- - SyQuest - DOOR LATCH/DOOR BUTTON DETECT

  INT 13 20-- - DISK - ??? (Western Digital "Super BIOS")

  INT 13 20-- - Compaq DESKPRO/i - GET CURRENT MEDIA FORMAT

  INT 13 20-- - QUICKCACHE II v4.20 - DISMOUNT

  INT 13 21-- - HARD DISK - PS/1 and newer PS/2 - READ MULTIPLE DISK SECTORS

  INT 13 21-- - QUICKCACHE II v4.20 - FLUSH CACHE

  INT 13 22-- - HARD DISK - PS/1 and newer PS/2 - WRITE MULTIPLE DISK SECTORS

  INT 13 22-- - QUICKCACHE II v4.20 - ENABLE/DISABLE CACHE

  INT 13 23-- - HARD DISK - PS/1 and newer PS/2 - SET CONTROLLER FEATURES REGISTER

  INT 13 23-- - QUICKCACHE II v4.20 - GET ??? ADDRESS

  INT 13 24-- - HARD DISK - PS/1 and newer PS/2 - SET MULTIPLE MODE

  INT 13 24-- - QUICKCACHE II v4.20 - SET SECTORS

  INT 13 25-- - HARD DISK - PS/1 and newer PS/2 - IDENTIFY DRIVE

  INT 13 25-- - QUICKCACHE II v4.20 - SET FLUSH INTERVAL

  INT 13 26-- - QUICKCACHE II v4.20 - UNINSTALL

  INT 13 27-- - QUICKCACHE II v4.20 - INSTALLATION CHECK

  INT 13 28-- - QUICKCACHE II v4.20 - SET AUTOMATIC DISMOUNT

  INT 13 29-- - QUICKCACHE II v4.20 - NOP

  INT 13 2A-- - QUICKCACHE II v4.20 - SET BUFFER SIZE

  INT 13 2B-- - QUICKCACHE II v4.20 - DRIVE ACCESS SOUNDS

  INT 13 2C-- - QUICKCACHE II v4.20 - SET BUFFERED WRITES

  INT 13 2D-- - QUICKCACHE II v4.20 - SET BUFFERED READ

  INT 13 2E-- - QUICKCACHE II v4.20 - SET FLUSH COUNT

  INT 13 2F-- - QUICKCACHE II v4.20 - FORCE IMMEDIATE INCREMENTAL FLUSH

  INT 13 30-- - QUICKCACHE II v4.20 - GET INFO

  INT 13 31-- - QUICKCACHE II v4.20 - RESERVE MEMORY

  INT 13 32-- - QUICKCACHE II v4.20 - ENABLE CACHING FOR SPECIFIC DRIVE

  INT 13 33-- - QUICKCACHE II v4.20 - DISABLE CACHING FOR SPECIFIC DRIVE

  INT 13 34-- - QUICKCACHE II v4.20 - SECTOR LOCKING

  INT 13 35-- - QUICKCACHE II v4.20 - SET LOCK POOL SIZE

  INT 13 36-- - QUICKCACHE II v4.20 - SET TRACE BUFFER SIZE

  INT 13 37-- - QUICKCACHE II v4.20 - SET BUFFERED READS FOR SPECIFIC DRIVE

  INT 13 38-- - QUICKCACHE II v4.20 - SET BUFFERED WRITES FOR SPECIFIC DRIVE

  INT 13 39-- - QUICKCACHE II v4.20 - SET READ BUFFER SIZE FOR SPECIFIC DRIVE

  INT 13 3A-- - QUICKCACHE II v4.20 - SET WRITE BUFFER SIZE FOR SPECIFIC DRIVE

  INT 13 3B-- - QUICKCACHE II v4.20 - ENABLE/DISABLE ???

  INT 13 3C-- - QUICKCACHE II v4.20 - ENABLE/DISABLE ???

  INT 13 3D-- - QUICKCACHE II v4.20 - ENABLE/DISABLE CYLINDER FLUSH FOR DRIVE

  INT 13 3E-- - QUICKCACHE II v4.20 - SET SINGLE-SECTOR BONUS

  INT 13 3F-- - QUICKCACHE II v4.20 - SET BONUS THRESHOLD

  INT 13 40-- - QUICKCACHE II v4.20 - SET "sticky_max"

  INT 13 41-- - IBM/MS INT 13 Extensions - INSTALLATION CHECK

  INT 13 41-- - QUICKCACHE II v4.20 - SAVE/RESTORE ???

  INT 13 42-- - IBM/MS INT 13 Extensions - EXTENDED READ

  INT 13 4257 - Beame&Whiteside BWLPD - INSTALLATION CHECK

  INT 13 43-- - IBM/MS INT 13 Extensions - EXTENDED WRITE

  INT 13 44-- - IBM/MS INT 13 Extensions - VERIFY SECTORS

  INT 13 45-- - IBM/MS INT 13 Extensions - LOCK/UNLOCK DRIVE

  INT 13 46-- - IBM/MS INT 13 Extensions - EJECT MEDIA

  INT 13 47-- - IBM/MS INT 13 Extensions - EXTENDED SEEK

  INT 13 48-- - IBM/MS INT 13 Extensions - GET DRIVE PARAMETERS

  INT 13 49-- - IBM/MS INT 13 Extensions - EXTENDED MEDIA CHANGE

  INT 13 5001 - VIRUS - "Andropinis" - INSTALLATION CHECK

  INT 13 5342 - ScanBoot - INSTALLATION CHECK

  INT 13 5501 - Seagate ST01/ST02 - Inquiry

  INT 13 5502 - Seagate ST01/ST02 - RESERVED

  INT 13 5503 - Seagate ST01/ST01 - Set Device Type Qualifier (DTQ)

  INT 13 5504 - Seagate - ??? - RETURN IDENTIFICATION

  INT 13 5504 - Seagate ST01/ST02 - RETURN IDENTIFICATION

  INT 13 5505 - Seagate - ??? - PARK HEADS

  INT 13 5505 - Seagate ST01/ST02 - PARK HEADS

  INT 13 5506 - Seagate ST01/ST02 - SCSI Bus Parity

  INT 13 5507 - Seagate ST01/ST02 - RESERVED FUNCTIONS

  INT 13 5514 - Seagate - ???

  INT 13 5515 - Seagate - PARK HEADS???

  INT 13 59-- - SyQuest - Generic SCSI pass through

  INT 13 70-- - Priam EDVR.SYS DISK PARTITIONING SOFTWARE???

  INT 13 75-- - ???

  INT 13 76-- - ???

  INT 13 7B00 - NOW! v3.05 - GET INFORMATION

  INT 13 7B01 - NOW! v3.05 - ???

  INT 13 7B02 - NOW! v3.05 - SET INFORMATION

  INT 13 7B03 - NOW! v3.05 - ???

  INT 13 7B04 - NOW! v3.05 - ???

  INT 13 7B05 - NOW! v3.05 - GET DISK ACCESSES???

  INT 13 7B06 - NOW! v3.05 - GET ???

  INT 13 7B07 - NOW! v3.05 - GET ???

  INT 13 7B08 - NOW! v3.05 - ???

  INT 13 80-- - FAST! v4.02+ - API

  INT 13 8001 - FAST! v4.02+ - GET CACHE INFORMATION

  INT 13 8006 - FAST! v4.02+ - INSTALLATION CHECK

  INT 13 8007 - FAST! v4.02+ - UNHOOK INTERRUPTS

  INT 13 81-- - Super PC-Kwik v3.20+ - ???

  INT 13 82-- - Super PC-Kwik v3.20+ - ???

  INT 13 83-- - Super PC-Kwik v3.20+ - ???

  INT 13 84-- - Super PC-Kwik v3.20+ - ???

  INT 13 85-- - Super PC-Kwik v3.20+ - ???

  INT 13 86-- - Super PC-Kwik v4.00+ - ???

  INT 13 87-- - Super PC-Kwik v4.00+ - ???

  INT 13 88-- - Super PC-Kwik v4.00+ - ???

  INT 13 89-- - Super PC-Kwik v5.10+ - ???

  INT 13 8A-- - Super PC-Kwik v5.10+ - ???

  INT 13 8EED - HyperDisk v4.01+ - ???

  INT 13 8EEE - HyperDisk v4.01+ - ???

  INT 13 8EEF - HyperDisk v4.01+ - ???

  INT 13 92-- - Super PC-Kwik v5.10+ - ???

  INT 13 93-- - Super PC-Kwik v5.10+ - ???

  INT 13 94-- - Super PC-Kwik v5.10+ - ???

  INT 13 95-- - Super PC-Kwik v5.10+ - ???

  INT 13 96-- - Super PC-Kwik v5.10+ - ???

  INT 13 97-- - Super PC-Kwik v5.10+ - ???

  INT 13 98-- - Super PC-Kwik v5.10+ - ???

  INT 13 99-- - Super PC-Kwik v5.10+ - ???

  INT 13 9A-- - Super PC-Kwik v5.10+ - ???

  INT 13 9B-- - Super PC-Kwik v5.10+ - ???

  INT 13 9C-- - Super PC-Kwik v5.10+ - ???

  INT 13 9D-- - Super PC-Kwik v5.10+ - ???

  INT 13 A0-- - Super PC-Kwik v3.20+ - GET RESIDENT CODE SEGMENT

  INT 13 A1-- - Super PC-Kwik v3.20+ - FLUSH CACHE

  INT 13 A2-- - Super PC-Kwik v3.20+ - ???

  INT 13 A3-- - Super PC-Kwik v5.10+ - DISABLE CACHE

  INT 13 A4-- - Super PC-Kwik v5.10+ - ENABLE CACHE

  INT 13 A5-- - Super PC-Kwik v5.10+ - PROGRAM TERMINATION NOTIFICATION

  INT 13 A6-- - Super PC-Kwik v5.10+ - PROGRAM LOAD NOTIFICATION

  INT 13 A7-- - Super PC-Kwik 5.1 - ???

  INT 13 A759 - Novell DOS 7 - SDRes v27.03 - ???

  INT 13 A8-- - Super PC-Kwik 5.1 - ???

  INT 13 A9-- - Super PC-Kwik 5.1 - EXITCODE RETRIEVAL NOTIFICATION

  INT 13 AA-- - Super PC-Kwik v4+ - ???

  INT 13 AB-- - Super PC-Kwik v4+ - ???

  INT 13 AC-- - Super PC-Kwik v4+ - ???

  INT 13 AD-- - Priam HARD DISK CONTROLLER???

  INT 13 AD-- - Super PC-Kwik v4+ - ???

  INT 13 AE-- - Super PC-Kwik v5.10+ - ???

  INT 13 B0-- - Super PC-Kwik v3.20+ - ???

  INT 13 EC00 - VIRUS - "Tiso" - INSTALLATION CHECK

  INT 13 EE-- - SWBIOS - SET 1024-CYLINDER FLAG

  INT 13 EF-- - Ontrack Drive Rocket - SET CYLINDER OFFSET

  INT 13 F2-- - VIRUS - "Neuroquila" - INSTALLATION CHECK

  INT 13 F9-- - SWBIOS - INSTALLATION CHECK

  INT 13 FA-- - PC Tools v8+ VSAFE, VWATCH - API

  INT 13 FD50 - VIRUS - "Predator" - INSTALLATION CHECK

  INT 13 FE-- - SWBIOS - GET EXTENDED CYLINDER COUNT

  INT 13 FFFF - UNIQUE UX Turbo Utility - SET TURBO MODE

INT 14 - SERIAL

  INT 14 ---- - SERIAL - Digiboard DigiCHANNEL PC/X* Extender INT 14 (XAPCM232.SYS)

  INT 14 00-- - SERIAL - INITIALIZE PORT

  INT 14 00-- - FOSSIL (Fido/Opus/Seadog Standard Interface Level) - INITIALIZE

  INT 14 00-- - MBBIOS - INITIALIZE PORT

  INT 14 00-- - Connection Manager - MODIFY DEFAULT CONNECTION PARAMETERS

  INT 14 01-- - SERIAL - WRITE CHARACTER TO PORT

  INT 14 01-- - Connection Manager - SEND CHARACTER

  INT 14 02-- - SERIAL - READ CHARACTER FROM PORT

  INT 14 02-- - FOSSIL - RECEIVE CHARACTER WITH WAIT

  INT 14 02-- - Connection Manager - RECEIVE CHARACTER

  INT 14 03-- - SERIAL - GET PORT STATUS

  INT 14 03-- - Connection Manager - RETURN COMMUNICATION PORT STATUS

  INT 14 04-- - SERIAL - EXTENDED INITIALIZE (CONVERTIBLE,PS)

  INT 14 04-- - FOSSIL - INITIALIZE DRIVER

  INT 14 04-- - MultiDOS Plus IODRV - INITIALIZE PORT

  INT 14 04-- - Digiboard DigiCHANNEL PC/X* - CHANGE BAUD RATE

  INT 14 04-- - MBBIOS - INSTALLATION CHECK

  INT 14 04-- - Connection Manager - OPEN COMMUNICATION

  INT 14 0400 - Microsoft Systems Journal TSRCOMM INT14 - INSTALLATION CHECK

  INT 14 0401 - Microsoft Systems Journal TSRCOMM INT14 - INITIALIZE MODE

  INT 14 0402 - Microsoft Systems Journal TSRCOMM INT14 - EXTENDED INITIALIZE

  INT 14 0403 - Microsoft Systems Journal TSRCOMM INT14 - SET TIMEOUT

  INT 14 0404 - Microsoft Systems Journal TSRCOMM INT14 - CLEAR THE RECEIVE BUFFER

  INT 14 0405 - Microsoft Systems Journal TSRCOMM INT14 - GET RECEIVE BUFFER COUNT

  INT 14 0406 - Microsoft Systems Journal TSRCOMM INT14 - CLEAR THE TRANSMIT BUFFER

  INT 14 0407 - Microsoft Systems Journal TSRCOMM INT14 - GET TRANSMIT BUFFER COUNT

  INT 14 0408 - Microsoft Systems Journal TSRCOMM INT14 - UNINSTALL

  INT 14 05-- - SERIAL - EXTENDED COMMUNICATION PORT CONTROL (CONVERTIBLE,PS)

  INT 14 05-- - FOSSIL - DEINITIALIZE DRIVER

  INT 14 05-- - MultiDOS Plus IODRV - READ CHARACTER FROM PORT

  INT 14 05-- - Digiboard DigiCHANNEL PC/X* - CHANGE PROTOCOL

  INT 14 05-- - MBBIOS - DROP DTR AND RTS

  INT 14 05-- - PC-MOS/386 v5.01 $serial.sys v5.04 - CHANGE PORT PROTOCOL

  INT 14 05-- - Connection Manager - CLOSE COMMUNICATION

  INT 14 06-- - FOSSIL - RAISE/LOWER DTR

  INT 14 06-- - MultiDOS Plus IODRV - WRITE CHARACTER TO PORT

  INT 14 06-- - MBBIOS - RAISE DTR AND RTS

  INT 14 06-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DRIVER 'ID' FUNCTION

  INT 14 06-- - TelAPI - WRITE BLOCK

  INT 14 06-- - Connection Manager - SEND CHARACTER BLOCK

  INT 14 07-- - FOSSIL - RETURN TIMER TICK PARAMETERS

  INT 14 07-- - MultiDOS Plus IODRV - GET PORT STATUS

  INT 14 07-- - MBBIOS - SEND BREAK

  INT 14 07-- - PC-MOS/386 v5.01 $serial.sys v5.04 - SEND RS-232 BREAK

  INT 14 07-- - TelAPI - READ BLOCK

  INT 14 07-- - Connection Manager - RECEIVE CHARACTER BLOCK

  INT 14 08-- - FOSSIL - FLUSH OUTPUT BUFFER WAITING TILL ALL OUTPUT IS DONE

  INT 14 08-- - MultiDOS Plus 4.0 IODRV - GET AND RESET PORT LINE STATUS

  INT 14 08-- - Digiboard DigiCHANNEL PC/X* - ALTERNATE STATUS CHECK

  INT 14 08-- - MBBIOS - NON-DESTRUCTIVE READ

  INT 14 08-- - PC-MOS/386 v5.01 $serial.sys v5.04 - INPUT STATUS CHECK

  INT 14 08-- - Connection Manager - RETURN DEFAULT CONNECTION PARAMETERS

  INT 14 09-- - FOSSIL - PURGE OUTPUT BUFFER THROWING AWAY ALL PENDING OUTPUT

  INT 14 09-- - MultiDOS Plus IODRV - RESET PORT STATUS

  INT 14 09-- - Digiboard DigiCHANNEL PC/X* - CLEAR BUFFERS

  INT 14 09-- - MBBIOS - GET/SET OPTIONS

  INT 14 09-- - PC-MOS/386 v5.01 $serial.sys v5.04 - RESET I/O BUFFER POINTERS

  INT 14 09-- - Connection Manager - SEND BREAK

  INT 14 0A-- - FOSSIL - PURGE INPUT BUFFER THROWING AWAY ALL PENDING INPUT

  INT 14 0A-- - Digiboard DigiCHANNEL PC/X* - INPUT QUEUE CHECK

  INT 14 0A-- - MBBIOS - WRITE BUFFER

  INT 14 0A-- - Connection Manager - MODIFY ACTIVE CONNECTION PARAMETERS

  INT 14 0B-- - FOSSIL - TRANSMIT NO WAIT

  INT 14 0B-- - MBBIOS - READ BUFFER

  INT 14 0B-- - Connection Manager - PREPARE FOR INBOUND CONNECTION

  INT 14 0C-- - FOSSIL - NON-DESTRUCTIVE READ AHEAD

  INT 14 0C-- - MBBIOS PACCOM support - BUFFER MANAGEMENT

  INT 14 0C-- - Connection Manager - TEST FOR INBOUND CONNECTION REQUEST

  INT 14 0D-- - FOSSIL - KEYBOARD READ WITHOUT WAIT

  INT 14 0D-- - Digiboard DigiCHANNEL PC/X* - GET POINTER TO CH_KEY_RDY FLAG

  INT 14 0D-- - MBBIOS PACCOM support - SET TXD

  INT 14 0D-- - Connection Manager - TERMINATE CONNECTION CLIENT ACTIVITY

  INT 14 0D00 - MBBIOS - GET AVAILABLE BYTES

  INT 14 0D01 - MBBIOS - LOWER ALL MODEM CONTROL SIGNALS

  INT 14 0D02 - MBBIOS - RAISE ALL MODEM CONTROL SIGNALS

  INT 14 0D03 - MBBIOS - SET HANDSHAKE BYTE

  INT 14 0E-- - FOSSIL - KEYBOARD READ WITH WAIT

  INT 14 0E-- - Digiboard DigiCHANNEL PC/X* - WRITE STRING

  INT 14 0E-- - MBBIOS PACCOM support - SET PERSISTENCE

  INT 14 0E-- - Connection Manager - SET HARDWARE FLOW STATE

  INT 14 0F-- - FOSSIL - ENABLE/DISABLE FLOW CONTROL

  INT 14 0F-- - Digiboard DigiCHANNEL PC/X* - READ STRING

  INT 14 0F-- - MBBIOS PACCOM support - SET SLOT TIME

  INT 14 0F-- - Connection Manager - RETURN ACTIVE CONNECTION PARAMETERS

  INT 14 10-- - FOSSIL - EXTENDED ^C/^K CHECKING AND TRANSMIT ON/OFF

  INT 14 10-- - Digiboard DigiCHANNEL PC/X* - CLEAR RECEIVE BUFFER

  INT 14 10-- - MBBIOS PACCOM support - SET CRC WAIT

  INT 14 10-- - Connection Manager - QUERY SERVICE NAMES

  INT 14 11-- - FOSSIL - SET CURRENT CURSOR LOCATION

  INT 14 11-- - Digiboard DigiCHANNEL PC/X* - CLEAR TRANSMIT BUFFER

  INT 14 11-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DISABLE PORT

  INT 14 12-- - FOSSIL - READ CURRENT CURSOR LOCATION

  INT 14 12-- - Digiboard DigiCHANNEL PC/X* - GET TRANSMIT BUFFER FREE SPACE

  INT 14 12-- - PC-MOS/386 v5.01 $serial.sys v5.04 - GET CURRENT PORT PARAMETERS

  INT 14 13-- - FOSSIL - SINGLE CHARACTER ANSI WRITE TO SCREEN

  INT 14 13-- - PC-MOS/386 v5.01 $serial.sys v5.04 - REGISTER A PORT WITH A TERMINAL

  INT 14 14-- - FOSSIL - ENABLE OR DISABLE WATCHDOG PROCESSING

  INT 14 14-- - PC-MOS/386 v5.01 $serial.sys v5.04 - OUTPUT STRING

  INT 14 14-- - Digiboard - GET NUMBER OF BOARDS INSTALLED

  INT 14 15-- - FOSSIL - WRITE CHARACTER TO SCREEN USING BIOS SUPPORT ROUTINES

  INT 14 15-- - PC-MOS/386 v5.01 $serial.sys v5.04 - INPUT STRING

  INT 14 15-- - Digiboard - ENABLE/DISABLE MEMORY

  INT 14 16-- - FOSSIL - INSERT/DELETE FUNCTION FROM TIMER TICK CHAIN

  INT 14 16-- - PC-MOS/386 v5.01 $serial.sys v5.04 - LINK TO ANOTHER SERIAL DRIVER

  INT 14 16-- - Digiboard DigiCHANNEL PC/X* - CCB COMMAND

  INT 14 1646 - Digiboard - CCB COMMAND - SET INTERRUPT TO HOST MASK

  INT 14 1647 - Digiboard - CCB COMMAND - SET BAUD/DATABITS/STOPBITS/PARITY

  INT 14 1649 - Digiboard - CCB COMMAND - SET MODEM LINES

  INT 14 164A - Digiboard - CCB COMMAND - SET BREAK COUNT

  INT 14 164B - Digiboard - CCB COMMAND - SET HANDSHAKE

  INT 14 164C - Digiboard - CCB COMMAND - SET XON/XOFF CHARACTERS

  INT 14 164D - Digiboard - CCB COMMAND - SET TRANSMIT MID-WATER MARK

  INT 14 164E - Digiboard - CCB COMMAND - IRQ POLLING TIMER TO HOST

  INT 14 164F - Digiboard - CCB COMMAND - BUFFER SET ALL

  INT 14 1653 - Digiboard - CCB COMMAND - SPECIAL CHARACTER INTERRUPT

  INT 14 17-- - FOSSIL - REBOOT SYSTEM

  INT 14 17-- - PC-MOS/386 v5.01 $serial.sys v5.04 - WRITE MODEM CONTROL REGISTER

  INT 14 18-- - FOSSIL - READ BLOCK

  INT 14 18-- - Digiboard DigiCHANNEL PC/X* - SEND BIOS COMMAND

  INT 14 18-- - PC-MOS/386 v5.01 $serial.sys v5.04 - GET DRIVER DESCRIPTION

  INT 14 19-- - FOSSIL - WRITE BLOCK

  INT 14 19-- - Digiboard DigiCHANNEL PC/X* - SPECIAL CHARACTER INTERRUPT

  INT 14 19-- - PC-MOS/386 v5.01 $serial.sys v5.04 - SELECTIVE BUFFER FLUSH

  INT 14 1A-- - FOSSIL - BREAK BEGIN OR END

  INT 14 1A-- - Digiboard DigiCHANNEL PC/X - SPECIAL CHARACTER FLAG/COUNTER

  INT 14 1B-- - FOSSIL - RETURN INFORMATION ABOUT THE DRIVER

  INT 14 1C-- - X00 FOSSIL - ACTIVATE PORT

  INT 14 1D-- - X00 FOSSIL - DEACTIVATE PORT

  INT 14 1E-- - X00 FOSSIL - EXTENDED LINE CONTROL INITIALIZATION

  INT 14 1E-- - HUNTER 16 - READ COMMS PARAMETERS

  INT 14 1F-- - X00 FOSSIL - EXTENDED SERIAL PORT STATUS/CONTROL

  INT 14 20-- - X00 FOSSIL - DESTRUCTIVE READ WITH NO WAIT

  INT 14 20-- - Alloy MW386 - ATTACH LOGICAL COMMUNICATIONS PORT TO PHYSICAL PORT

  INT 14 20-- - MultiDOS Plus - INITIALIZE PORT

  INT 14 20-- - PC-MOS/386 v5.01 $serial.sys v5.04 - CHECK OUTPUT QUEUE

  INT 14 20-- - HUNTER 16 - SELECT COMMS PARAMETERS

  INT 14 21-- - X00 FOSSIL - STUFF RECEIVE BUFFER

  INT 14 21-- - Alloy MW386 v1.x only - RELEASE PHYSICAL COMMUNICATIONS PORT

  INT 14 21-- - MultiDOS Plus - TRANSMIT CHARACTER

  INT 14 21-- - PC-MOS/386 v5.01 $serial.sys v5.04 - OUTPUT CHARACTER, WITH TIMEOUT

  INT 14 21-- - HUNTER 16 - EXTENDED CONTROL

  INT 14 22-- - Alloy MW386 v2+ - RELEASE LOGICAL COMMUNICATIONS PORT

  INT 14 22-- - MultiDOS Plus - RECEIVE CHARACTER

  INT 14 22-- - PC-MOS/386 v5.01 $serial.sys v5.04 - RECEIVE CHARACTER, WITH TIMEOUT

  INT 14 22-- - HUNTER 16 - EXTENDED STATUS

  INT 14 23-- - Alloy MW386 v2+ - GET PORT NUMBER FROM LOGICAL PORT ID

  INT 14 23-- - MultiDOS Plus - GET PORT STATUS

  INT 14 23-- - PC-MOS/386 v5.01 $serial.sys v5.04 - DECLARE PORT OWNERSHIP

  INT 14 23-- - HUNTER 16 - CONTROL HANDSHAKE LINES

  INT 14 24-- - Alloy MW386 v2+ - CHANGE PHYSICAL PORT PARAMETERS

  INT 14 24-- - MultiDOS Plus - SET MONITOR MODE

  INT 14 24-- - PC-MOS/386 v5.01 $serial.sys v5.04 - ???

  INT 14 24-- - HUNTER 16 - CONTROL CTS HANDSHAKING

  INT 14 25-- - MultiDOS Plus - CLEAR BUFFERS

  INT 14 25-- - HUNTER 16 - CONTROL RS232 DRIVERS

  INT 14 26-- - HUNTER 16 - CONTROL RI POWER UP

  INT 14 27-- - MultiDOS Plus - GET BUFFER CHARACTER COUNT

  INT 14 27-- - HUNTER 16 - GET INSTALLED PROTOCOLS COUNT

  INT 14 28-- - HUNTER 16 - GET PROTOCOL NAME

  INT 14 29-- - HUNTER 16 - GET PROTOCOL HANDLE

  INT 14 2A-- - HUNTER 16 - EXTENDED PROTOCOL MENU

  INT 14 2B-- - HUNTER 16 - GET EXTENDED PROTOCOL PARAMETERS

  INT 14 2C00 - HUNTER 16 - GET DTR

  INT 14 2C-- - HUNTER 16 - SET DTR

  INT 14 36-- - ComShare - INSTALLATION CHECK

  INT 14 56-- - BWCOM14 - INSTALLATION CHECK

  INT 14 57-- - BWCOM14 - INITIALIZE

  INT 14 58-- - BWCOM14 - SHUTDOWN

  INT 14 6F-- - Connection Manager - ???

  INT 14 6F-- - Connection Manager - INSTALLATION CHECK

  INT 14 6F00 - HP Vectra EX-BIOS - "F14_INQUIRE" - INSTALLATION CHECK

  INT 14 6F01 - HP Vectra EX-BIOS - "F14_EXINIT" - INITIALIZE SERIAL PORT

  INT 14 6F02 - HP Vectra EX-BIOS - "F14_PUT_BUFFER" - TRANSMIT BUFFER

  INT 14 6F03 - HP Vectra EX-BIOS - "F14_GET_BUFFER" - READ DATA INTO BUFFER

  INT 14 6F04 - HP Vectra EX-BIOS - "F14_TRM_BUFFER" - READ UNTIL TERMINATOR

  INT 14 7E-- - FOSSIL - INSTALL AN EXTERNAL APPLICATION FUNCTION

  INT 14 7F-- - FOSSIL - REMOVE AN EXTERNAL APPLICATION FUNCTION

  INT 14 80-- - COMMUNICATIONS FOSSIL

  INT 14 80-- - COURIERS.COM - INSTALLATION CHECK

  INT 14 8000 - ARTICOM - INSTALLATION CHECK

  INT 14 8000 - COMM-DRV v14.0 - READ PORT METRICS - GET ERROR CODE AND BUFFER STATUS

  INT 14 8001 - ARTICOM - UNLOAD ASYNCHRONOUS REDIRECTOR FROM MEMORY

  INT 14 8001 - COMM-DRV v14.0 - READ PORT METRICS - GET PORT PARAMETERS

  INT 14 8002 - ARTICOM - GET ASYNCHRONOUS REDIRECTOR STATUS

  INT 14 8002 - COMM-DRV v14.0 - READ PORT METRICS - GET PORT PARAMETERS

  INT 14 8003 - ARTICOM - TRANSLATE ERROR CODE TO ERROR STRING

  INT 14 8003 - COMM-DRV v14.0 - READ PORT METRICS - GET I/O BUFFER SIZES

  INT 14 8004 - ARTICOM - ATTACH ASYNCHRONOUS RESOURCE

  INT 14 8005 - ARTICOM - DETACH ASYNCHRONOUS RESOURCE

  INT 14 8006 - ARTICOM - GET RESOURCE INFORMATION

  INT 14 8007 - ARTICOM - GET REDIRECTED PORT INFORMATION

  INT 14 8008 - ARTICOM - GET AVAILABLE SERVER NAME

  INT 14 8009 - ARTICOM - SET SEND AND RECEIVE TIMEOUTS

  INT 14 800A - ARTICOM - MODIFY FLOW CONTROL

  INT 14 8025 - ARTICOM - SET INTERNAL SEND/RECEIVE VECTOR

  INT 14 8035 - ARTICOM - GET INTERNAL SEND/RECEIVE VECTOR

  INT 14 81-- - COURIERS.COM - CHECK IF PORT BUSY

  INT 14 81-- - COMM-DRV - EXTENDED INITIALIZATION

  INT 14 8100 - VIDEO FOSSIL - RETURN VFOSSIL INFORMATION

  INT 14 8101 - VIDEO FOSSIL - OPEN VFOSSIL

  INT 14 8102 - VIDEO FOSSIL - CLOSE VFOSSIL

  INT 14 8103 - VIDEO FOSSIL - UNINSTALL

  INT 14 82-- - KEYBOARD FOSSIL

  INT 14 82-- - COURIERS.COM - CONFIGURE PORT

  INT 14 82-- - COMM-DRV v14.0 - PORT CLEANUP

  INT 14 83-- - SYSTEM FOSSIL

  INT 14 83-- - COURIERS.COM - START INPUT

  INT 14 83-- - COMM-DRV v14.0 - FLUSH COMMUNICATION BUFFERS

  INT 14 84-- - COURIERS.COM - READ CHARACTER

  INT 14 84-- - COMM-DRV v14.0 - SEND PACKET

  INT 14 85-- - COURIERS.COM - FLUSH PENDING INPUT

  INT 14 85-- - COMM-DRV v14.0 - RECEIVE PACKET

  INT 14 86-- - COURIERS.COM - START OUTPUT

  INT 14 86-- - COMM-DRV v14.0 - SET INPUT/OUTPUT TIMEOUTS

  INT 14 87-- - COURIERS.COM - OUTPUT STATUS

  INT 14 87-- - COMM-DRV v14.0 - TURN ON DTR

  INT 14 88-- - COURIERS.COM - ABORT OUTPUT

  INT 14 88-- - COMM-DRV v14.0 - TURN OFF DTR

  INT 14 89-- - COURIERS.COM - SEND SINGLE CHARACTER

  INT 14 89-- - COMM-DRV v14.0 - TURN ON RTS

  INT 14 8A-- - COURIERS.COM - SEND BREAK

  INT 14 8A-- - COMM-DRV v14.0 - TURN OFF RTS

  INT 14 8B-- - COMM-DRV v14.0 - SET USER INTERRUPT ROUTINE

  INT 14 8C-- - COURIERS.COM - SET SPEED

  INT 14 8C-- - COMM-DRV v14.0 - READ UART REGISTER

  INT 14 8D-- - COURIERS.COM - DECONFIGURE PORT

  INT 14 8D-- - COMM-DRV v14.0 - WRITE UART REGISTER

  INT 14 8E-- - COMM-DRV v14.0 - READ PACKET NONDESTRUCTIVELY

  INT 14 A0-- - 3com BAPI SERIAL I/O - CONNECT TO PORT

  INT 14 A0-- - Interconnections Inc. TES - INSTALLATION CHECK/STATUS REPORT

  INT 14 A1-- - 3com BAPI SERIAL I/O - DISCONNECT FROM PORT

  INT 14 A1-- - Interconnections Inc. TES - GET LIST OF SESSIONS WITH STATUS

  INT 14 A2-- - 3com BAPI SERIAL I/O - WRITE CHARACTER

  INT 14 A2-- - Interconnections Inc. TES - GET LIST OF SERVER NAMES

  INT 14 A3-- - 3com BAPI SERIAL I/O - READ CHARACTER

  INT 14 A3-- - Interconnections Inc. TES - START A NEW SESSION

  INT 14 A4-- - 3com BAPI SERIAL I/O - WRITE BLOCK

  INT 14 A4-- - Interconnections Inc. TES - HOLD CURRENTLY ACTIVE SESSION

  INT 14 A5-- - 3com BAPI SERIAL I/O - READ BLOCK

  INT 14 A5-- - Interconnections Inc. TES - RESUME A SESSION

  INT 14 A6-- - 3com BAPI SERIAL I/O - SEND SHORT BREAK

  INT 14 A6-- - Interconnections Inc. TES - DROP A SESSION

  INT 14 A7-- - 3com BAPI SERIAL I/O - READ STATUS

  INT 14 A7-- - Interconnections Inc. TES - SWITCH TO NEXT ACTIVE SESSION

  INT 14 A8-- - Interconnections Inc. TES - SEND STRING TO COMMAND INTERPRETER

  INT 14 A8-- - Novell TelAPI v4.01 - CONNECTION INFORMATION???

  INT 14 A9-- - Novell TelAPI v4.01 - CONNECTION CONTROL???

  INT 14 AA01 - DimVGA v2.0+ - INSTALLATION CHECK

  INT 14 AA02 - DimVGA v2.0+ - SET TIME-OUT (DIMMING/BLANKING) PERIOD

  INT 14 AA03 - DimVGA v2.0+ - SET DIMMING FACTOR

  INT 14 AA04 - DimVGA v2.0+ - GET TIME-OUT PERIOD

  INT 14 AA05 - DimVGA v2.0+ - GET DIMMING FACTOR

  INT 14 AA06 - DimVGA v2.0+ - DISABLE

  INT 14 AA07 - DimVGA v2.0+ - ENABLE

  INT 14 AA08 - DimVGA v2.0+ - DIM SCREEN 'MANUALLY'

  INT 14 AA09 - DimVGA v2.0+ - UNDIM SCREEN 'MANUALLY'

  INT 14 AA0A - DimVGA v2.0+ - CHECK WHETHER ENABLED

  INT 14 AA0B - DimVGA v2.1+ - SET HOTKEY

  INT 14 AA0C - DimVGA v2.1+ - GET HOTKEY

  INT 14 AA0D - DimVGA v3.0+ - SET MOUSE CHECK STATUS

  INT 14 AA0E - DimVGA v3.0+ - GET MOUSE CHECK STATUS

  INT 14 AA0F - DimVGA v3.4 - SET LOCKING STATUS

  INT 14 AA10 - DimVGA v3.4 - GET MOUSE CHECK STATUS

  INT 14 AF00 - 3com BAPI SERIAL I/O - INSTALLATION CHECK

  INT 14 B0-- - 3com BAPI SERIAL I/O - EN/DISABLE "ENTER COMMAND MODE" (ECM) CHARACTER

  INT 14 B1-- - 3com BAPI SERIAL I/O - ENTER COMMAND MODE

  INT 14 B2-- - 3com BAPI SERIAL I/O - GET ECM WATCH STATE

  INT 14 B3-- - 3com BAPI SERIAL I/O - GET/SET CONFIGURATION INFO

  INT 14 E0-- - TelAPI - "telopen" - CREATE TELNET CONNECTION (BLOCKING)

  INT 14 E000 - MX5 Extended FOSSIL - GET MNP STATUS BLOCK

  INT 14 E001 - MX5 Extended FOSSIL - GET/SET MNP LEVEL

  INT 14 E002 - MX5 Extended FOSSIL - GET/SET MNP ANSWER/ORIGINATE MODE

  INT 14 E003 - MX5 Extended FOSSIL - GET/SET MNP WAIT TICKS

  INT 14 E004 - MX5 Extended FOSSIL - GET/SET MNP CONNECT SOUND LEVEL

  INT 14 E005 - MX5 Extended FOSSIL - UNINSTALL

  INT 14 E006 - MX5 Extended FOSSIL - INSTALLATION CHECK

  INT 14 E007 - MX5 Extended FOSSIL - WAIT SPECIFIED NUMBER OF TICKS

  INT 14 E1-- - TelAPI - "telclose" - TERMINATE TELNET CONNECTION

  INT 14 E2-- - TelAPI - "telread" - BUFFERED READ

  INT 14 E3-- - TelAPI - "telwrite" - BUFFERED WRITE

  INT 14 E4-- - TelAPI - "telioctl" - CONNECTION CONTROL

  INT 14 E5-- - TelAPI - "telreset" - RESET ALL CONNECTIONS

  INT 14 E6-- - TelAPI - "telunload" - UNINSTALL

  INT 14 E7-- - TelAPI - "tellist" - GET TELNET SESSION LIST

  INT 14 E8-- - TelAPI - "telattach" - ATTACH COM PORT TO/FROM TELNET SESSION

  INT 14 E9-- - TelAPI - "telportosn" - GET SESSION NUMBER FOR COM PORT

  INT 14 EA-- - TelAPI - "telstatus" - GET TELNET CONNECTION STATUS INFORMATION

  INT 14 EB-- - TelAPI - "telname" - GET AVAILABLE/INUSE STATUS FOR ALL SESSIONS

  INT 14 EC-- - TelAPI - "telnblkopen" - CREATE TELNET CONNECTION (NON-BLOCKING)

  INT 14 ED-- - TelAPI - "telpoll" - POLL TELNET SESSION FOR CONNECTION COMPLETION

  INT 14 F0F0 - ASAP v1.0 - ???

  INT 14 F0F1 - ASAP v1.0 - INSTALLATION CHECK

  INT 14 F4FF - IBM/Yale EBIOS SERIAL I/O - INSTALLATION CHECK

  INT 14 F9-- - IBM/Yale EBIOS SERIAL I/O - REGAIN CONTROL

  INT 14 FA-- - IBM/Yale EBIOS SERIAL I/O - SEND BREAK

  INT 14 FB-- - IBM/Yale EBIOS SERIAL I/O - SET OUTGOING MODEM SIGNALS

  INT 14 FC-- - IBM/Yale EBIOS SERIAL I/O - READ CHARACTER, NO WAIT

  INT 14 FD02 - IBM/Yale EBIOS SERIAL I/O - READ STATUS

  INT 14 FF00 - TelAPI - "telcheck" - INSTALLATION CHECK

  INT 14 FF01 - IBM/Yale EBIOS SERIAL I/O - SET SEND BUFFER

  INT 14 FF02 - IBM/Yale EBIOS SERIAL I/O - SET RECEIVE BUFFER

  INT 14 FFF8 - COMM-DRV v14.0 - SET BAUD RATE DIVISOR

  INT 14 FFFB - COMM-DRV v14.0 - GET HIGHEST ALLOWED PORT NUMBER

  INT 14 FFFC - COMM-DRV v14.0 - GET INT 14 FLAGS

  INT 14 FFFD - COMM-DRV v14.0 - SET INT 14 FLAGS

  INT 14 FFFE - COMM-DRV v14.0 - RESTORE INT 14 VECTOR TO ORIGINAL

  INT 14 FFFF - COMM-DRV v14.0 - GET INT 14 INFORMATION AREA

INT 15 - CASSETTE

  INT 15 ---- - Microsoft TSR Specification

  INT 15 00-- - CASSETTE - TURN ON TAPE DRIVE'S MOTOR (PC and PCjr only)

  INT 15 00-- - Amstrad PC1512 - GET AND RESET MOUSE COUNTS

  INT 15 00-- - VMiX v2+ - INSTALLATION CHECK

  INT 15 00-- - MultiDOS Plus - GIVE UP TIME SLICE

  INT 15 01-- - CASSETTE - TURN OFF TAPE DRIVE'S MOTOR (PC and PCjr only)

  INT 15 01-- - Amstrad PC1512 - WRITE DATA TO NON-VOLATILE RAM

  INT 15 01-- - VMiX - "sys_chanreq" - I/O CHANNEL OBJECT MANAGER

  INT 15 01-- - MultiDOS Plus - REQUEST RESOURCE SEMAPHORE

  INT 15 02-- - CASSETTE - READ DATA (PC and PCjr only)

  INT 15 02-- - Amstrad PC1512 - READ DATA FROM NON-VOLATILE RAM

  INT 15 02-- - VMiX - "sys_memreq" - MEMORY OBJECT MANAGER

  INT 15 02-- - MultiDOS Plus - RELEASE RESOURCE SEMAPHORE

  INT 15 03-- - CASSETTE - WRITE DATA (PC and PCjr only)

  INT 15 03-- - Amstrad PC1512 - WRITE VDU COLOR PLANE WRITE REGISTER

  INT 15 03-- - VMiX - "sys_pinput" - PROMPTED CONSOLE INPUT

  INT 15 03-- - MultiDOS Plus - SUSPEND TASK FOR INTERVAL

  INT 15 04-- - SYSTEM - BUILD ABIOS SYSTEM PARAMETER TABLE (PS)

  INT 15 04-- - Amstrad PC1512 - WRITE VDU COLOR PLANE READ REGISTER

  INT 15 04-- - VMiX - "sys_vprintf" - FORMATTED OUTPUT TO STREAM

  INT 15 04-- - MultiDOS Plus - SEND MESSAGE TO ANOTHER TASK

  INT 15 05-- - SYSTEM - BUILD ABIOS INITIALIZATION TABLE (PS)

  INT 15 05-- - Amstrad PC1512 - WRITE VDU GRAPHICS BORDER REGISTER

  INT 15 05-- - VMiX - "sys_getpid" - GET PROCESS ID OF CURRENT PROCESS

  INT 15 05-- - MultiDOS Plus - CHECK MAILBOX

  INT 15 06-- - Amstrad PC1512 - GET ROS VERSION NUMBER

  INT 15 06-- - VMiX - "sys_getpcb" - GET POINTER TO PROCESS CONTROL BLOCK

  INT 15 06-- - MultiDOS Plus - READ MAILBOX

  INT 15 07-- - VMiX - "sys_getocb" - GET POINTER TO OBJECT CONTROL BLOCK

  INT 15 07-- - MultiDOS Plus - SPAWN INTERNAL TASK (CREATE NEW THREAD)

  INT 15 08-- - VMiX - "sys_getccb" - GET CHANNEL CONTROL BLOCK

  INT 15 08-- - MultiDOS Plus - TERMINATE INTERNAL TASK (KILL THREAD)

  INT 15 09-- - VMiX - "sys_getqueue" - GET ID OF QUEUED ELEMENT

  INT 15 09-- - MultiDOS Plus - CHANGE TASK'S PRIORITY

  INT 15 0A-- - VMiX - "sys_qetqnext" - GET ID OF NEXT QUEUED ELEMENT

  INT 15 0A-- - MultiDOS Plus - CHANGE TIME SLICE INTERVAL

  INT 15 0B-- - VMiX - "sys_sysreq" - SYSTEM CONFIGURATION MANAGER

  INT 15 0B-- - MultiDOS Plus - FORCE DISPLAY OUTPUT TO PHYSICAL SCREEN MEMORY

  INT 15 0C-- - VMiX - "sys_getstack" - GET POINTER TO PROCESS TSS STACK

  INT 15 0C-- - MultiDOS Plus - RESTORE OLD VIDEO DISPLAY MEMORY

  INT 15 0D-- - VMiX - "sys_spawn" - START A CHILD PROCESS JOB SHELL

  INT 15 0D-- - MultiDOS Plus - DISABLE MULTITASKING

  INT 15 0E-- - VMiX - "sys_kill" - HARD TERMINATE PROCESS

  INT 15 0E-- - MultiDOS Plus - ENABLE MULTITASKING

  INT 15 0F-- - SYSTEM - FORMAT UNIT PERIODIC INTERRUPT (PS ESDI drives only)

  INT 15 0F-- - VMiX - "sys_getqkey" - GET KEY FIELD OF QUEUED ELEMENT

  INT 15 0F-- - MultiDOS Plus - EXECUTE A MULTIDOS PLUS COMMAND

  INT 15 10-- - VMiX - "sys_virtual" - EXECUTE CONFORMING FUNCTION IN PROTECTED MODE

  INT 15 10-- - MultiDOS Plus - TEST RESOURCE SEMAPHORE

  INT 15 1000 - TopView - "PAUSE" - GIVE UP CPU TIME

  INT 15 1001 - TopView - "GETMEM" - ALLOCATE "SYSTEM" MEMORY

  INT 15 1002 - TopView - "PUTMEM" - DEALLOCATE "SYSTEM" MEMORY

  INT 15 1003 - TopView - "PRINTC" - DISPLAY CHARACTER/ATTRIBUTE ON SCREEN

  INT 15 10-- - TopView - UNIMPLEMENTED IN DV 2.x

  INT 15 1013 - TopView - "GETBIT" - DEFINE A 2ND-LEVEL INTERRUPT HANDLER

  INT 15 1014 - TopView - "FREEBIT" - UNDEFINE A 2ND-LEVEL INTERRUPT HANDLER

  INT 15 1015 - TopView - "SETBIT" - SCHEDULE ONE OR MORE 2ND-LEVEL INTERRUPTS

  INT 15 1016 - TopView - "ISOBJ" - VERIFY OBJECT HANDLE

  INT 15 1017 - TopView - UNIMPLEMENTED IN DV 2.x

  INT 15 1018 - TopView - "LOCATE" - FIND WINDOW AT A GIVEN SCREEN LOCATION

  INT 15 1019 - TopView - "SOUND" - MAKE TONE

  INT 15 101A - TopView - "OSTACK" - SWITCH TO TASK'S INTERNAL STACK

  INT 15 101B - TopView - "BEGINC" - BEGIN CRITICAL REGION

  INT 15 101C - TopView - "ENDC" - END CRITICAL REGION

  INT 15 101D - TopView - "STOP" - STOP TASK

  INT 15 101E - TopView - "START" - START TASK

  INT 15 101F - TopView - "DISPEROR" - POP-UP ERROR WINDOW

  INT 15 1020 - TopView - UNIMPLEMENTED IN DV v2.00+

  INT 15 1021 - TopView - "PGMINT" - INTERRUPT ANOTHER TASK

  INT 15 1022 - TopView - "GETVER" - GET VERSION

  INT 15 1023 - TopView - "POSWIN" - POSITION WINDOW

  INT 15 1024 - TopView - "GETBUF" - GET VIRTUAL SCREEN INFO

  INT 15 1025 - TopView - "USTACK" - SWITCH BACK TO USER'S STACK

  INT 15 10-- - DESQview (TopView???) - UNIMPLEMENTED IN DV 2.x

  INT 15 102B - DESQview v2.00+ (TopView???) - "POSTTASK" - AWAKEN TASK

  INT 15 102C - DESQview v2.00+ - "NEWPROC" - START NEW APPLICATION IN NEW PROCESS

  INT 15 102D - DESQview v2.00+ - "KMOUSE" - KEYBOARD MOUSE CONTROL

  INT 15 102E - DESQview v2.40+ - ALLOCATE SYSTEM MEMORY

  INT 15 11-- - TopView commands

  INT 15 11-- - VMiX - "sys_system" - EXECUTE SHELL SYSTEM COMMANDS

  INT 15 11-- - MultiDOS Plus - TURN OFF AltZ TOGGLE

  INT 15 1117 - DESQview v2.20+ - "ASSERTMAP" - GET/SET MAPPING CONTEXT

  INT 15 11DE - DESQview - QEXT.SYS - INSTALLATION CHECK

  INT 15 12-- - VMiX - "sys_sleep" - PUT PROCESS TO SLEEP

  INT 15 12-- - MultiDOS Plus - TURN ON AltZ TOGGLE

  INT 15 12-- - TopView - SEND MESSAGE - "HANDLE" - RETURN OBJECT HANDLE

  INT 15 12-- - TopView - SEND MESSAGE - "NEW" - CREATE NEW OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "FREE" - FREE AN OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "ADDR" - GET HANDLE OF MESSAGE SENDER

  INT 15 12-- - DESQview v2.26+ - "CONNECT" - CONNECT TWO WINDOWS

  INT 15 12-- - TopView - SEND MESSAGE - "DIR" - GET PANEL FILE DIRECTORY

  INT 15 12-- - TopView - SEND MESSAGE - "READ" - READ NEXT LOGICAL LINE OF WINDOW

  INT 15 12-- - TopView - SEND MESSAGE - "READ" - GET NEXT RECORD FROM OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "READ" - WAIT FOR TIMER TO EXPIRE

  INT 15 12-- - TopView - SEND MESSAGE - "APPLY" - WRITE PANEL TO WINDOW

  INT 15 12-- - TopView - SEND MESSAGE - "WRITE" - WRITE TO OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "WRITE" - WRITE STRING TO WINDOW

  INT 15 12-- - DESQview 2.20+ - SEND MESSAGE - "SETPRI" - SET PRIORITY WITHIN OBJECTQ

  INT 15 12-- - DESQview 2.20+ - SEND MESSAGE - "GETPRI" - GET PRIORITY WITHIN OBJECTQ

  INT 15 12-- - TopView - SEND MESSAGE - "SIZEOF" - GET OBJECT SIZE

  INT 15 12-- - TopView - SEND MESSAGE - "LEN" - GET OBJECT LENGTH

  INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - WRITE CHARS AND ATTRIBS TO WINDOW

  INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - SEND MAILBOX MESSAGE/STAT BY VALUE

  INT 15 12-- - TopView - SEND MESSAGE - "ADDTO" - SET OBJECT BITS

  INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - WRITE ATTRIBUTES TO WINDOW

  INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - SEND MAILBOX MESSAGE/STAT BY REF

  INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - REMOVE OBJECT FROM OBJECTQ

  INT 15 12-- - TopView - SEND MESSAGE - "SUBFROM" - RESET OBJECT BITS

  INT 15 12-- - TopView - SEND MESSAGE - "OPEN" - OPEN OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "CLOSE" - CLOSE OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "ERASE" - ERASE OBJECT

  INT 15 12-- - TopView - SEND MESSAGE - "STATUS" - GET OBJECT STATUS

  INT 15 12-- - TopView - SEND MESSAGE - "EOF" - GET OBJECT EOF STATUS

  INT 15 12-- - TopView - SEND MESSAGE - "AT" - POSITION OBJECT CURSOR

  INT 15 12-- - TopView - SEND MESSAGE - "SETNAME" - ASSIGN NAME TO MAILBOX

  INT 15 12-- - TopView - SEND MESSAGE - "SETSCALE" - SET POINTER SCALE FACTOR

  INT 15 12-- - TopView - SEND MESSAGE - "READN" - GET NEXT N OBJECT BYTES

  INT 15 12-- - DESQview 2.50+ - SEND MESSAGE - "GETNAME" - GET NAME OF MAILBOX

  INT 15 12-- - TopView - SEND MESSAGE - "GETSCALE" - GET POINTER SCALE FACTOR

  INT 15 12-- - TopView - SEND MESSAGE - "REDRAW" - REDRAW WINDOW

  INT 15 12-- - DESQview 2.50+ - SEND MESSAGE - "READINTO" - GET NEXT MAIL MESSAGE

  INT 15 12-- - TopView - SEND MESSAGE - "SETICON" - SPECIFY POINTER ICON

  INT 15 12-- - TopView - SEND MESSAGE - "SETESC" - SET ESCAPE ROUTINE ADDRESS

  INT 15 12-- - TopView - SEND MESSAGE - "LOCK" - REQUEST EXCLUSIVE ACCESS TO RESOURCE

  INT 15 12-- - DESQview v2.20+ - SEND MESSAGE - "SETFLAGS" - SET OBJECT FLAGS

  INT 15 12-- - DESQview v2.20+ - SEND MESSAGE - "GETFLAGS" - GET OBJECT FLAGS

  INT 15 12-- - DESQview v2.42-2.52 - BUG

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 00h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 01h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 02h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 03h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 04h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 05h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 06h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 07h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 08h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 09h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Ah WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Bh WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Ch WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Dh WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Eh WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 0Fh WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 10h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 11h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 12h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 13h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 14h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 15h WITH ERROR RECOVERY

  INT 15 12-- - DESQview v2.50+ - SEND MESSAGE 16h WITH ERROR RECOVERY

  INT 15 13-- - VMiX - "sys_wake" - WAKE SLEEPING PROCESS

  INT 15 13-- - MultiDOS Plus - GET TASK CONTROL BLOCK

  INT 15 14-- - VMiX - "sys_clrwindow" - CLEAR WINDOW

  INT 15 14-- - MultiDOS Plus - CHECK IF MultiDOS FOREGROUND OR BACKGROUND

  INT 15 15-- - VMiX - "sys_setbwindow" - SET BANNER WINDOW MESSAGE

  INT 15 15-- - MultiDOS Plus - GET SYSTEM BLOCK

  INT 15 16-- - VMiX - "sys_setwindow" - SET ROOT WINDOW SIZE AND HOME CURSOR

  INT 15 16-- - MultiDOS Plus - INITIALIZATION

  INT 15 17-- - VMiX - "sys_getcolors" - GET CONSOLE WINDOW COLORS

  INT 15 17-- - MultiDOS Plus - MAP IRQ

  INT 15 18-- - VMiX - "sys_setcolors" - SET CONSOLE COLORS

  INT 15 18-- - MultiDOS Plus - UNMAP IRQ

  INT 15 19-- - VMiX v2+ - "sys_setconwn" - SET WINDOW COLORS

  INT 15 19-- - MultiDOS Plus - UNMAP ALL IRQs

  INT 15 1A-- - VMiX v2+ - "sys_sint" - INVOKE SOFTWARE INTERRUPT

  INT 15 1A-- - MultiDOS Plus - MAP SEMAPHORE NAME TO NUMBER

  INT 15 1B-- - VMiX v2+ - "sys_blkmov" - MOVE MEMORY BLOCK

  INT 15 1B-- - MultiDOS Plus - REQUEST RESOURCE SEMAPHORE BY NAME

  INT 15 1C-- - VMiX v2+ - "sys_bitblt" - PUT GRAPHICAL OBJECT AT CURSOR POSITION

  INT 15 1C-- - MultiDOS Plus - RELEASE RESOURCE SEMAPHORE BY NAME

  INT 15 1D-- - VMiX v2+ - "sys_getfont" - GET CURRENT CONSOLE GRAPHICS FONT

  INT 15 1D-- - MultiDOS Plus - TEST RESOURCE SEMAPHORE BY NAME

  INT 15 1E-- - VMiX v2+ - "sys_setfont" - SET CONSOLE GRAPHICS FONT

  INT 15 1E00 - MultiDOS Plus - CLEAR EVENT COUNTER

  INT 15 1E01 - MultiDOS Plus - TRIGGER EVENT

  INT 15 1E02 - MultiDOS Plus - WAIT FOR EVENT

  INT 15 1E08 - MultiDOS Plus 4.01 - SET CONTEXT-SWITCH FUNCTIONS

  INT 15 1F-- - VMiX v2.???+ - "sys_scrollwin" - SCROLL WINDOW

  INT 15 1F-- - MultiDOS Plus v4.01 - GET MEMORY PARAMETERS

  INT 15 20-- - MultiDOS Plus v4.01 - CHECK IF MULTITASKING ENABLED

  INT 15 2000 - DOS 3.0+ PRINT.COM - DISABLE CRITICAL REGION FLAG

  INT 15 2001 - DOS 3.0+ PRINT.COM - SET CRITICAL REGION FLAG

  INT 15 2010 - OS HOOK - SETUP SYSREQ ROUTINE (AT,XT286,PS50+)

  INT 15 2011 - OS HOOK - COMPLETION OF SYSREQ FUNCTION (AT,XT286,PS50+)

  INT 15 21-- - SYSTEM - POWER-ON SELF-TEST ERROR LOG (PS50+)

  INT 15 22-- - SYSTEM - later PS/2s - LOCATE ROM BASIC

  INT 15 2300 - SYSTEM - PS/1s - GET ??? CMOS DATA

  INT 15 2301 - SYSTEM - PS/1s - SET ??? CMOS DATA

  INT 15 2304 - SYSTEM - PS/1s - SYSTEM SETUP

  INT 15 2305 - SYSTEM - PS/1s - GET PROCESSOR SPEED

  INT 15 2400 - SYSTEM - later PS/2s - DISABLE A20 GATE

  INT 15 2401 - SYSTEM - later PS/2s - ENABLE A20 GATE

  INT 15 2402 - SYSTEM - later PS/2s - GET A20 GATE STATUS

  INT 15 2403 - SYSTEM - later PS/2s - QUERY A20 GATE SUPPORT

  INT 15 3000 - Object Kernel for DOS - INSTALLATION CHECK

  INT 15 3001 - Object Kernel for DOS - GET STATUS BLOCK

  INT 15 3002 - Object Kernel for DOS - KILL PROCESS

  INT 15 3003 - Object Kernel for DOS - STOP PROCESS

  INT 15 3004 - Object Kernel for DOS - START PROCESS

  INT 15 3005 - Object Kernel for DOS - RESTART PROCESS

  INT 15 3006 - Object Kernel for DOS - EXECUTE PROCESS

  INT 15 3007 - Object Kernel for DOS - LIST PROCESSES

  INT 15 3008 - Object Kernel for DOS - SWITCH ObjectKernel ON/OFF

  INT 15 3009 - Object Kernel for DOS - RESERVED FOR FUTURE USE

  INT 15 40-- - SYSTEM - READ/MODIFY PROFILES (CONVERTIBLE)

  INT 15 4000 - Compaq SLT/286 or Portable 386 - READ LCD/PLASMA TIMEOUT

  INT 15 4001 - Compaq SLT/286 or Portable 386 - SET LCD/PLASMA TIMEOUT

  INT 15 41-- - SYSTEM - WAIT ON EXTERNAL EVENT (CONVERTIBLE and some others)

  INT 15 42-- - SYSTEM - REQUEST POWER OFF (CONVERTIBLE,HP 95LX)

  INT 15 4280 - Compaq SLT/286 - ENTER STANDBY

  INT 15 43-- - SYSTEM - READ SYSTEM STATUS (CONVERTIBLE)

  INT 15 44-- - SYSTEM - (DE)ACTIVATE INTERNAL MODEM POWER (CONVERTIBLE)

  INT 15 44C0 - Olivetti Quaderno - INITIALIZE DIGITAL SIGNAL PROCESSING???

  INT 15 44C1 - Olivetti Quaderno - ???

  INT 15 44C2 - Olivetti Quaderno - ???

  INT 15 44C3 - Olivetti Quaderno - GET ???

  INT 15 44C4 - Olivetti Quaderno - ???

  INT 15 44C6 - Olivetti Quaderno - READ LCD

  INT 15 44C7 - Olivetti Quaderno - WRITE LCD

  INT 15 44C8 - Olivetti Quaderno - ???

  INT 15 44C9 - Olivetti Quaderno - GET XBIOS VERSION

  INT 15 45-- - HP 100LX/200LX - SET DISPLAY CONTROL STATUS

  INT 15 46-- - HP 100LX/200LX - SET POWER OFF TIMEOUT

  INT 15 4600 - Compaq SLT/286 - READ POWER CONSERVATION/MODEM CONFIGURATION

  INT 15 4601 - Compaq SLT/286 - MODIFY POWER CONSERVATION/MODEM CONFIGURATION

  INT 15 4604 - Compaq Contura 486 and "Alladin" 08/05/93 ROMs - GET ???

  INT 15 4605 - Compaq Contura 486 and "Alladin" 08/05/93 ROMs - ???

  INT 15 47-- - HP 100LX/200LX - GET/SET DISPLAY CONTRAST

  INT 15 48-- - HP 100LX/200LX - SET BUZZER VOLUME

  INT 15 49-- - HP 100LX/200LX - SERIAL INTERFACE SELECT

  INT 15 4900 - Far East MS-DOS - GET BIOS TYPE

  INT 15 4A-- - HP 100LX/200LX - SERIAL INTERFACE CONTROL

  INT 15 4B-- - HP 100LX/200LX - ADJUST SYSTEM TIME

  INT 15 4DD4 - HP 95LX/100LX/200LX - INSTALLATION CHECK

  INT 15 4E-- - HP 95LX - ENABLE/DISABLE LIGHT SLEEP

  INT 15 4F-- - KEYBOARD - KEYBOARD INTERCEPT (AT model 3x9,XT2,XT286,CONV,PS)

  INT 15 50-- - DOS/V - FONT SUBSYSTEM ACCESS

  INT 15 50-- - VMIX v2.???+ - "sys_vm_page" - SET NEW VIRTUAL PAGE TABLE

  INT 15 51-- - VMiX v2.???+ - "sys_vm_func" - EXECUTE FUNCTION IN PROTECTED MODE

  INT 15 5101 - SYSTEM - later PS/2s - EXPANSION UNIT, RETURN CONFIGURATION NUMBER

  INT 15 52-- - VMiX v2.???+ - "sys_vm_init" - INITIALIZE PROTECTED-MODE ENVIRONMENT

  INT 15 52-- - IBM/MS INT 13 Extensions - MEDIA EJECT INTERCEPT

  INT 15 5300 - Advanced Power Management Specification - INSTALLATION CHECK

  INT 15 5301 - Advanced Power Management Specification - CONNECT REAL-MODE INTERFACE

  INT 15 5302 - Advanced Power Management Spec - CONNECT 16-BIT PROTMODE INTERFACE

  INT 15 5303 - Advanced Power Management Spec - CONNECT 32-BIT PROTMODE INTERFACE

  INT 15 5304 - Advanced Power Management Specification - DISCONNECT INTERFACE

  INT 15 5305 - Advanced Power Management Specification - CPU IDLE

  INT 15 5306 - Advanced Power Management Specification - CPU BUSY

  INT 15 5307 - Advanced Power Management Specification - SET POWER STATE

  INT 15 5307 - Advanced Power Management Specification - SYSTEM STAND-BY

  INT 15 5307 - Advanced Power Management Specification - SUSPEND SYSTEM

  INT 15 5308 - Advanced Power Management Spec - ENABLE/DISABLE POWER MANAGEMENT

  INT 15 5309 - Advanced Power Management Specification - RESTORE POWER-ON DEFAULTS

  INT 15 530A - Advanced Power Management Specification - GET POWER STATUS

  INT 15 530B - Advanced Power Management Specification - GET POWER MANAGEMENT EVENT

  INT 15 530C - Advanced Power Management v1.1 - GET POWER STATE

  INT 15 530D - Advanced Power Management v1.1 - EN/DISABLE DEVICE POWER MANAGEMENT

  INT 15 530E - Advanced Power Management v1.1 - DRIVER VERSION

  INT 15 530F - Advanced Power Management v1.1 - ENGAGE/DISENGAGE POWER MANAGEMENT

  INT 15 5380 - APM SL Enhanced v1.0 - GET SUSPEND/GLOBAL STANDBY MODE

  INT 15 5380 - APM SL Enhanced v1.0 - SET SUSPEND/GLOBAL STANDBY MODE

  INT 15 5380 - APM SL Enhanced v1.0 - GET GLOBAL STANDBY TIMER

  INT 15 5380 - APM SL Enhanced v1.0 - SET GLOBAL STANDBY TIMER

  INT 15 5380 - APM SL Enhanced v1.0 - GET AUTO POWER OFF TIMER

  INT 15 5380 - APM SL Enhanced v1.0 - SET AUTO POWER OFF TIMER

  INT 15 5380 - APM SL Enhanced v1.0 - GET RESUME CONDITION

  INT 15 5380 - APM SL Enhanced v1.0 - SET RESUME CONDITION

  INT 15 5380 - APM SL Enhanced v1.0 - GET CALENDAR EVENT TIME

  INT 15 5380 - APM SL Enhanced v1.0 - SET CALENDAR EVENT TIME

  INT 15 5380 - APM SL Enhanced v1.0 - GET CALENDAR EVENT DATE

  INT 15 5380 - APM SL Enhanced v1.0 - SET CALENDAR EVENT DATE

  INT 15 5380 - APM SL Enhanced v1.0 - GET CPU SPEED MODE

  INT 15 5380 - APM SL Enhanced v1.0 - SET CPU SPEED MODE

  INT 15 5380 - APM SL Enhanced v1.0 - SL HW PARAMETER

  INT 15 5380 - Advanced Power Management v1.1 - OEM APM INSTALLATION CHECK

  INT 15 5380 - Advanced Power Management v1.1 - OEM APM FUNCTIONS

  INT 15 53B0 - Intel System Management Bus - RESERVED

  INT 15 53B0 - Intel System Management Bus - INSTALLATION CHECK

  INT 15 53B0 - Intel System Management Bus - REAL MODE CONNECT

  INT 15 53B0 - Intel System Management Bus - 16-BIT PROTECTED-MODE CONNECT

  INT 15 53B0 - Intel System Management Bus - 32-BIT PROTECTED-MODE CONNECT

  INT 15 53B0 - Intel System Management Bus - DISCONNECT

  INT 15 53B0 - Intel System Management Bus - DEVICE ADDRESS

  INT 15 53B0 - Intel System Management Bus - CRITICAL MESSAGES

  INT 15 53B0 - Intel System Management Bus - RESERVED

  INT 15 53B0 - Intel System Management Bus - REQUEST

  INT 15 53B0 - Intel System Management Bus - REQUEST CONTINUATION

  INT 15 53B0 - Intel System Management Bus - REQUEST ABORT

  INT 15 53B0 - Intel System Management Bus - REQUEST DATA AND STATUS

  INT 15 5400 - Omniview Multitasker - INSTALLATION NOTIFICATION

  INT 15 5401 - Omniview Multitasker - PROCESS CREATION

  INT 15 5402 - Omniview Multitasker - PROCESS DESTRUCTION

  INT 15 5403 - Omniview Multitasker - SAVE

  INT 15 5404 - Omniview Multitasker - RESTORE

  INT 15 5405 - Omniview Multitasker - SWITCHING TO BACKGROUND

  INT 15 5406 - Omniview Multitasker - SWITCHING TO FOREGROUND

  INT 15 5407 - Omniview Multitasker - EXIT NOTIFICATION

  INT 15 60-- - HUNTER 16 - SET SYSTEM CLOCK SPEED

  INT 15 6000 - GET MAIN BATTERY LEVEL

  INT 15 6001 - GET BACKUP BATTERY LEVEL

  INT 15 6002 - GET POWER INFO

  INT 15 6003 - SET MAIN BATTERY TYPE

  INT 15 6004 - SET BATTERY CHARGING MODE

  INT 15 61-- - HUNTER 16 - GET POWER LEVEL

  INT 15 61-- - SET ANNOUNCIATORS POSITION

  INT 15 62-- - HUNTER 16 - SET LOW POWER THRESHOLD

  INT 15 62-- - SET DISPLAY CONTRAST

  INT 15 6300 - HUNTER 16 - GET IDLE TIMEOUT

  INT 15 6301 - HUNTER 16 - SET IDLE TIMEOUT

  INT 15 64-- - HUNTER 16 - CONTROL RESUME MODE

  INT 15 65-- - HUNTER 16 - AUTHORISE CHARGING

  INT 15 66-- - HUNTER 16 - SET BATTERY LEVEL

  INT 15 67-- - HUNTER 16 - CONTROL STOP MODE

  INT 15 68-- - HUNTER 16 - REQUEST POWER DOWN

  INT 15 69-- - HUNTER 16 - CONTROL POWER DOWN AVAILABILITY

  INT 15 6A-- - HUNTER 16 - CONTROL SLOW MODE

  INT 15 6B-- - HUNTER 16 - GET ROM BIOS VERSION

  INT 15 6C-- - HUNTER 16 - GET SERIAL NUMBER

  INT 15 6D-- - HUNTER 16 - GET EVENT DETAIL

  INT 15 6E-- - HUNTER 16 - ENABLE/TRAP EVENT

  INT 15 6F-- - HUNTER 16 - ACKNOWLEDGE EVENT

  INT 15 70-- - HUNTER 16 - CONTROL SOUND

  INT 15 7000 - Tandy 1000SL/TL - READ FROM EEPROM

  INT 15 7001 - Tandy 1000SL/TL - WRITE TO EEPROM

  INT 15 7002 - Tandy 1000 Model ??? - GET ROM PAGE

  INT 15 7003 - Tandy 1000 Model ??? - SET ROM PAGE

  INT 15 71-- - HUNTER 16 - SELECT POWER UP KEYS

  INT 15 7200 - HUNTER 16 - RESET SERIAL NUMBER

  INT 15 72-- - HUNTER 16 - REDIRECT SERIAL NUMBER

  INT 15 73-- - HUNTER 16 - GET ORACLE GT POWER LEVEL

  INT 15 74-- - HUNTER 16 - SET BACKLIGHT POWER UP STATE

  INT 15 75-- - HUNTER 16 - SET CONTRAST POWER UP STATE

  INT 15 76-- - HUNTER 16 - CONTROL POWER SAVE

  INT 15 79-- - HUNTER 16 - REDIRECT LPT1

  INT 15 7A-- - HUNTER 16 - INVOKE HOT KEY

  INT 15 7B-- - HUNTER 16 - CONTROL HOT KEY

  INT 15 7C-- - HUNTER 16 - CONTROL HOT KEY POWER OPTION

  INT 15 7D-- - HUNTER 16 - OVERRIDE LOW POWER TURN OFF

  INT 15 7E-- - HUNTER 16 - CONTROL BATTERY CHANGE FACILITIES (APM)

  INT 15 7F-- - HUNTER 16 - SET BATTERY TYPE (APM)

  INT 15 80-- - OS HOOK - DEVICE OPEN (AT,XT286,PS)

  INT 15 80-- - HUNTER 16 - GET/SET BATTERY CAPACITY (APM)

  INT 15 81-- - OS HOOK - DEVICE CLOSE

  INT 15 81-- - HUNTER 16 - CONTROL POWER OUTPUT

  INT 15 82-- - OS HOOK - PROGRAM TERMINATION

  INT 15 82-- - HUNTER 16 - SOUND OUTPUT

  INT 15 83-- - BIOS - SET EVENT WAIT INTERVAL (AT,PS50+)

  INT 15 83-- - HUNTER 16 - CONTROL SCREEN SYNCHRONISATION

  INT 15 84-- - BIOS - JOYSTICK SUPPORT (XT after 11/8/82,AT,XT286,PS)

  INT 15 84-- - V20-XT-BIOS - JOYSTICK SUPPORT

  INT 15 8400 - HUNTER 16 - GET DISKETTE PORT

  INT 15 8401 - HUNTER 16 - SET DISKETTE PORT

  INT 15 85-- - OS HOOK - SysReq KEY ACTIVITY (AT,PS)

  INT 15 8500 - HUNTER 16 - RESTORE POWER MENU (APM)

  INT 15 8501 - HUNTER 16 - SET POWER MENU (APM)

  INT 15 86-- - BIOS - WAIT (AT,PS)

  INT 15 86-- - HUNTER 16 - GET/SET SCREEN ATTRIBUTE TABLE

  INT 15 87-- - SYSTEM - COPY EXTENDED MEMORY

  INT 15 87-- - HUNTER 16 - SET INT 72h VECTOR

  INT 15 88-- - SYSTEM - GET EXTENDED MEMORY SIZE (286+)

  INT 15 88-- - HUNTER 16 - GET POWER UP KEYS

  INT 15 89-- - SYSTEM - SWITCH TO PROTECTED MODE

  INT 15 8900 - HUNTER 16 - GET POWER MODE

  INT 15 8901 - HUNTER 16 - SET POWER MODE

  INT 15 8A-- - HUNTER 16 - CONTROL POWER INPUT (SPM)

  INT 15 8B-- - HUNTER 16 - GET/SET CHARGER TEMPERATURE OVERRIDE

  INT 15 8C-- - HUNTER 16 - GET/SET POWER SAVE ENTRY FLAG

  INT 15 8D-- - HUNTER 16 - GET/SET BOOST CHARGE (SPM)

  INT 15 90-- - OS HOOK - DEVICE BUSY (AT,PS)

  INT 15 91-- - OS HOOK - DEVICE POST (AT,PS)

  INT 15 A100 - AMI PCI BIOS - SET ??? FLAG

  INT 15 BA10 - HP OmniShare - Pen Driver - REPORT PEN CONTROL AREA EVENT

  INT 15 BA11 - HP OmniShare - Pen Driver - SET THE COMMUNICATION LED STATE

  INT 15 BA12 - HP OmniShare - Pen Driver - STORE PEN BATTERY CHARGE

  INT 15 BA13 - HP OmniShare - Pen Driver - GET PEN BATTERY CHARGE

  INT 15 BA20 - HP OmniShare - STANDBY.COM - INSTALLATION CHECK

  INT 15 BA21 - HP OmniShare - STANDBY.COM - SET STANDBY DURATION

  INT 15 BA22 - HP OmniShare - STANDBY.COM - GET STANDBY DURATION

  INT 15 BA23 - HP OmniShare - STANDBY.COM - TURN ON THE SCREEN IMMEDIATELY

  INT 15 BA24 - HP OmniShare - STANDBY.COM - TURN OFF THE SCREEN IMMEDIATELY

  INT 15 BA25 - HP OmniShare - STANDBY.COM - PREPARE FOR UNINSTALL

  INT 15 BA26 - HP OmniShare - STANDBY.COM - IS THE DISPLAY IN STANDBY MODE?

  INT 15 BA27 - HP OmniShare - STANDBY.COM - RESERVED FUNCTIONS

  INT 15 BC-- - Phoenix 386 BIOS - DETERMINE CPU SPEED FOR DELAY LOOPS

  INT 15 BF00 - Rational Systems DOS/16M - ???

  INT 15 BF01 - Rational Systems DOS/16M - ???

  INT 15 BF02 - Rational Systems DOS/16M - INSTALLATION CHECK

  INT 15 BF03 - Rational Systems DOS/4GW - UNINSTALL???

  INT 15 BF04 - Rational Systems DOS/4GW - ???

  INT 15 BF05 - Rational Systems DOS/4GW - INITIALIZE PROTECTED-MODE INTERFACE

  INT 15 BF06 - Rational Systems DOS/4GW - ???

  INT 15 BFDC - Rational Systems DOS/4GW - INSTALLATION CHECK

  INT 15 BFDE - DESQview/X - DVDOS4GX.DVR - INSTALLATION CHECK

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET PROCESS MANAGER NAME

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET PROTECTED MODE PROGRAM LOADER

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - DECREMENT ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - INCREMENT ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET TASK HANDLE

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - LOCK ??? MAILBOX

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - UNLOCK ??? MAILBOX

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - CHECK IF ??? MAILBOX OWNED

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ??? MAILBOX OWNER

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - GET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - SET ???

  INT 15 BFDE - DESQview/X 1.02+ - DVDOS4GX.DVR - NOP

  INT 15 C0-- - SYSTEM - GET CONFIGURATION (XT after 1/10/86,AT mdl 3x9,CONV,XT286,PS)

  INT 15 C1-- - SYSTEM - RETURN EXTENDED-BIOS DATA-AREA SEGMENT ADDRESS (PS)

  INT 15 C200 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - ENABLE/DISABLE

  INT 15 C201 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - RESET

  INT 15 C202 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET SAMPLING RATE

  INT 15 C203 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET RESOLUTION

  INT 15 C204 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - GET TYPE

  INT 15 C205 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - INITIALIZE

  INT 15 C206 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - EXTENDED COMMANDS

  INT 15 C207 - SYSTEM - POINTING DEVICE BIOS INTERFACE (PS) - SET DEVICE HANDLER ADDR

  INT 15 C3-- - SYSTEM - ENABLE/DISABLE WATCHDOG TIMEOUT (PS50+)

  INT 15 C4-- - SYSTEM - PROGRAMMABLE OPTION SELECT (PS50+)

  INT 15 C5-- - OS HOOK - ROM BIOS TRACING CALLOUT (PS30/286,PS50Z,PS95)

  INT 15 C6-- - later PS/2 models - GET POS DATA

  INT 15 C7-- - SYSTEM - later PS/2s - RETURN MEMORY-MAP INFORMATION

  INT 15 C8-- - SYSTEM - ENABLE/DISABLE PROCESSOR FUNCTIONS

  INT 15 C9-- - newer PS/2; various BIOSes - GET CPU TYPE AND MASK REVISION

  INT 15 CA-- - PS/2 Model 95 - READ/WRITE CMOS MEMORY

  INT 15 CB-- - PS/2 Model 95 - RESERVED

  INT 15 CC-- - PS/2 Model 95 - RESERVED

  INT 15 CCCC - Toshiba laptops - VCHAD.EXE - INSTALLATION CHECK

  INT 15 CD-- - PS/2 Model 95 - RESERVED

  INT 15 CE-- - later PS/2s - ALLOCATE DMA ARBITRATION LEVEL

  INT 15 CF-- - later PS/2s - DEALLOCATE DMA ARBITRATION LEVEL

  INT 15 D0-- - later PS/2s - RESERVED

  INT 15 D100 - later PS/2s - GET NUMBER OF DEVICE DESCRIPTOR TABLE (DDT) ENTRIES

  INT 15 D101 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY NUMBER

  INT 15 D102 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY I/O ADDRSS

  INT 15 D103 - later PS/2s - RETURN ENTIRE DDT

  INT 15 D104 - later PS/2s - RETURN DEVICE DESCRIPTOR TABLE (DDT) ENTRY BY DEVICE ID

  INT 15 D2-- - later PS/2s - RESERVED

  INT 15 D3-- - later PS/2s - RESERVED

  INT 15 D4-- - later PS/2s - GET PHYSICAL FIXED DISK DRIVE NUMBER (SELECTABLE BOOT)

  INT 15 D5-- - later PS/2s - RESERVED

  INT 15 D600 - later PS/2s - READ BOOT DEVICE ID

  INT 15 D600 - later PS/2s - WRITE BOOT DEVICE ID

  INT 15 D601 - later PS/2s - READ BOOT DEVICE KEY

  INT 15 D601 - later PS/2s - WRITE BOOT DEVICE KEY

  INT 15 D602 - later PS/2s - QUERY BOOT REFERENCE PARTITION

  INT 15 D800 - EISA SYSTEM ROM - READ SLOT CONFIGURATION INFORMATION

  INT 15 D801 - EISA SYSTEM ROM - READ FUNCTION CONFIGURATION INFORMATION

  INT 15 D802 - EISA SYSTEM ROM - CLEAR NONVOLATILE MEMORY (EISA CMOS)

  INT 15 D803 - EISA SYSTEM ROM - WRITE NONVOLATILE MEMORY

  INT 15 D804 - EISA SYSTEM ROM - READ PHYSICAL SLOT

  INT 15 D820 - Compaq LTE Lite - GET ???

  INT 15 D821 - Compaq LTE Lite - SET ???

  INT 15 D822 - Compaq EISA System ROM 04/08/93 - GET ???

  INT 15 D823 - Compaq EISA System ROM 04/08/93 - ???

  INT 15 D824 - Compaq EISA System ROM 04/08/93 - ???

  INT 15 D825 - Compaq EISA System ROM 04/08/93 - ???

  INT 15 D826 - Compaq EISA System ROM 04/08/93 - ???

  INT 15 D8-- - EISA SYSTEM ROM - 32-bit CS ADDRESSING MODE CALLS

  INT 15 D8-- - Compaq EISA System ROM 04/08/93 - 32-bit CS ADDRESSING MODE CALLS

  INT 15 DA-- - AMI PCI BIOS v1.00.05.AX1 - ???

  INT 15 DA00 - AMI PCI BIOS - ???

  INT 15 DA01 - AMI PCI BIOS - CPU SPEED CONTROL

  INT 15 DA05 - AMI PCI BIOS - GET ??? AND BIOS REVISION STRINGS

  INT 15 DA08 - AMI PCI BIOS - ???

  INT 15 DA12 - AMI PCI BIOS - v1.00.05.AX1 - ???

  INT 15 DA14 - AMI PCI BIOS - GET/SET ???

  INT 15 DA15 - AMI PCI BIOS - GET ??? AND BIOS REVISION STRINGS

  INT 15 DA19 - AMI PCI BIOS - GET/SET ???

  INT 15 DA88 - AMI PCI BIOS - GET EXTENDED MEMORY SIZE

  INT 15 DA8C - AMI PCI BIOS - GET BIOS AND CHIPSET??? VERSION

  INT 15 DA8E - AMI PCI BIOS - ???

  INT 15 DA92 - AMI PCI BIOS - GET CPU TYPE AND SPEED

  INT 15 DA99 - AMI PCI BIOS - GET/SET ??? FLAG

  INT 15 DB00 - AMI BIOS - Flash ROM - ???

  INT 15 DB01 - AMI BIOS - Flash ROM - GET BIOS SUBSYSTEM INFORMATION

  INT 15 DB02 - AMI BIOS - Flash ROM - GET SIZE OF ??? CODE

  INT 15 DB03 - AMI BIOS - Flash ROM - GET ??? CODE

  INT 15 DB04 - AMI BIOS - Flash ROM - GET BIOS REVISION

  INT 15 DE00 - DESQview - GET PROGRAM NAME

  INT 15 DE01 - DESQview - UPDATE "OPEN WINDOW" MENU

  INT 15 DE02 - DESQview 1.x only - SET ??? FLAG FOR CURRENT WINDOW

  INT 15 DE03 - DESQview 1.x only - GET ??? FOR CURRENT WINDOW

  INT 15 DE04 - DESQview - GET AVAILABLE COMMON MEMORY

  INT 15 DE05 - DESQview - GET AVAILABLE CONVENTIONAL MEMORY

  INT 15 DE06 - DESQview - GET AVAILABLE EXPANDED MEMORY

  INT 15 DE07 - DESQview - "APPNUM" - GET CURRENT PROGRAM'S NUMBER

  INT 15 DE08 - DESQview - GET ???

  INT 15 DE09 - DESQview - UNIMPLEMENTED

  INT 15 DE0A - DESQview v2.00+ - "DBGPOKE" - DISPLAY CHARACTER ON STATUS LINE

  INT 15 DE0B - DESQview v2.00+ - "APILEVEL" - DEFINE MINIMUM API LEVEL REQUIRED

  INT 15 DE0C - DESQview v2.00+ - "GETMEM" - ALLOCATE "SYSTEM" MEMORY

  INT 15 DE0D - DESQview v2.00+ - "PUTMEM" - DEALLOCATE "SYSTEM" MEMORY

  INT 15 DE0E - DESQview v2.00+ - "FINDMAIL" - FIND MAILBOX BY NAME

  INT 15 DE0F - DESQview v2.00+ - ENABLE DESQview EXTENSIONS

  INT 15 DE10 - DESQview v2.00+ - "PUSHKEY" - PUT KEY INTO KEYBOARD INPUT STREAM

  INT 15 DE11 - DESQview v2.00+ - "JUSTIFY" - EN/DISABLE AUTOM. WINDOW JUSTIFICATION

  INT 15 DE12 - DESQview v2.01+ - "CSTYLE" - SET "C"-COMPATIBLE CONTROL CHAR INTERPRET

  INT 15 DE13 - DESQview v2.20+ - "GETCRIT" - GET CRITICAL NESTING COUNT

  INT 15 DE14 - DESQview v2.20+ - GET OBJECT TYPE

  INT 15 DE15 - DESQview v2.20+ - SET ERROR HANDLING

  INT 15 DE16 - DESQview v2.20+ - GET ERROR HANDLING

  INT 15 DE17 - DESQview v2.20-2.25 - reserved

  INT 15 DE17 - DESQview v2.26+ - "ASSERTMAP" - GET/SET MAPPING CONTEXT

  INT 15 DE18 - DESQview v2.20+ - internal - ???

  INT 15 DE19 - DESQview v2.23+ - "GETCOMMON" - ALLOCATE "COMMON" MEMORY

  INT 15 DE1A - DESQview v2.23+ - "PUTCOMMON" - DEALLOCATE "COMMON" MEMORY

  INT 15 DE1B - DESQview v2.23+ internal - DECREMENT CRITICAL NESTING COUNT

  INT 15 DE1C - DESQview v2.23+ - "ENTERC" - INCREMENT CRITICAL NESTING COUNT

  INT 15 DE1D - DESQview v2.23+ - "PUTKEY" - FAKE USER KEYSTROKES

  INT 15 DE1E - DESQview v2.23+ - "SCRNINFO" - GET TRUE VIDEO PARAMETERS

  INT 15 DE1F - DESQview v2.23+ - "DOSUSER" - GET HANDLE OF TASK CURRENTLY USING DOS

  INT 15 DE20 - DESQview v2.26+ - "DISPATCHINT" - INTERRUPT ANOTHER TASK

  INT 15 DE21 - DESQview v2.26+ - "ASSERTVIR" - CONTROL 386 SCREEN VIRTUALIZATION

  INT 15 DE22 - DESQview v2.26+ - "PROCESSMEM" - GET TASK MEMORY STATUS

  INT 15 DE23 - DESQview v2.31+ - ???

  INT 15 DE24 - DESQview v2.40+ - "XNEWPROC" - START NEW APPLICATION

  INT 15 DE25 - DESQview v2.40+ - "GETDVPATH" - GET DESQview DIRECTORY

  INT 15 DE26 - DESQview v2.40+ - "GETFOREGROUND" - GET KEYBOARD FOCUS

  INT 15 DE27 - DESQview v2.50+ - "ADDINSTANCEDATA" - ADD PER-TASK SAVE/RESTORE AREA

  INT 15 DE28 - DESQview v2.50+ - ???

  INT 15 DE29 - DESQview/X - ???

  INT 15 DE29 - DESQview/X - ???

  INT 15 DE29 - DESQview/X - ???

  INT 15 DE29 - DESQview/X - ???

  INT 15 DE29 - DESQview/X - GET DISPLAY NAME

  INT 15 DE29 - DESQview/X - ???

  INT 15 DE2A - DESQview v2.50+ - "DISPATCHINTAFTERDOS" - INTERRUPT ANOTHER TASK

  INT 15 DE2B - DESQview v2.50+ - "OBJNEXT" - TRAVERSE OBJECT LIST

  INT 15 DE2C - DESQview v2.50+ - "WININFO" - GET WINDOW INFORMATION

  INT 15 DE2D - DESQview v2.50+ - GET/SET SOCKET HANDLER

  INT 15 DE2E - DESQview v2.50+ - SOCKET API

  INT 15 DE2F - DESQview v2.50+ - "VIDEONOTIFY" - HAS DIRECT WINDOW BEEN ACTIVE?

  INT 15 DE30 - DESQview v2.50+ - "GETDVXVERSION" - GET DESQview/X VERSION

  INT 15 DE31 - DESQview/X v1.10 - ???

  INT 15 DF-- - Juko UNIQUE UX BIOS - TURBO MODE CONTROL

  INT 15 E00F - Compaq Systempro - MULTIPROCESSOR DISPATCH

  INT 15 E10E - Compaq Systempro - MULTIPROCESSOR END-OF-DISPATCH

  INT 15 E200 - Compaq Systempro - MULTIPROCESSOR AVAILABLE

  INT 15 E4-- - Tandy??? - ???

  INT 15 E4-- - Compaq ROM BIOS 03/08/93 and newer - ???

  INT 15 E800 - Compaq Contura - GET ???

  INT 15 E800 - Compaq Contura Aero, Contura 400 - GET SYSTEM MODEL CODE???

  INT 15 E800 - Compaq Prolinea - GET ???

  INT 15 E801 - Compaq Contura - GET ???

  INT 15 E801 - Dell XPS P90 - DISPLAY MEMORY FOR >64M CONFIGURATIONS

  INT 15 E802 - Compaq Contura - GET ???

  INT 15 E820 - Dell XPS P90 - GET MEMORY MAP

  INT 15 F200 - Tandon memory mapper - Tandon MAPPER HARDWARE INITIALISATION CHECK ???

INT 16 - KEYBOARD

  INT 16 00-- - KEYBOARD - GET KEYSTROKE

  INT 16 01-- - KEYBOARD - CHECK FOR KEYSTROKE

  INT 16 02-- - KEYBOARD - GET SHIFT FLAGS

  INT 16 03-- - KEYBOARD - SET TYPEMATIC RATE AND DELAY

  INT 16 04-- - KEYBOARD - SET KEYCLICK (PCjr only)

  INT 16 04-- - K3PLUS v6.22+ - SET KEYCLICK

  INT 16 05-- - KEYBOARD - STORE KEYSTROKE IN KEYBOARD BUFFER (AT/PS w enh keybd only)

  INT 16 05-- - KEYBOARD - SELECT KEYBOARD LAYOUT (PCjr only)

  INT 16 09-- - KEYBOARD - GET KEYBOARD FUNCTIONALITY

  INT 16 0A-- - KEYBOARD - GET KEYBOARD ID

  INT 16 10-- - KEYBOARD - GET ENHANCED KEYSTROKE (enhanced kbd support only)

  INT 16 11-- - KEYBOARD - CHECK FOR ENHANCED KEYSTROKE (enh kbd support only)

  INT 16 12-- - KEYBOARD - GET EXTENDED SHIFT STATES (enh kbd support only)

  INT 16 13-- - DOS/V - DOUBLE-BYTE CHARACTER SET SHIFT CONTROL

  INT 16 14-- - DOS/V - SHIFT STATUS DISPLAY CONTROL

  INT 16 20-- - KEYBOARD - GET 122-KEY KEYSTROKE (122-key kbd support only)

  INT 16 20-- - HUNTER 16 - SET TEMPORARY SHIFT

  INT 16 20-- - K3 v1.5+, K3PLUS v5.0+ - GET EXTENDED BUFFER STATE

  INT 16 21-- - KEYBOARD - CHECK FOR 122-KEY KEYSTROKE (122-key kbd support only)

  INT 16 21-- - HUNTER 16 - CONTROL SHIFT KEYS

  INT 16 22-- - KEYBOARD - GET 122-KEY SHIFT STATUS (122-key kbd support only)

  INT 16 22-- - HUNTER 16 - CONTROL CTRL-ALT-DEL

  INT 16 23-- - HUNTER 16 - CONTROL EMERGENCY BREAKOUT

  INT 16 24-- - HUNTER 16 - REDEFINE KEY CODES

  INT 16 25-- - HUNTER 16 - RESET KEYBOARD

  INT 16 25-- - K3 v1.5+, K3PLUS v5.0+ - COPY INTO EXTENDED BUFFER

  INT 16 26-- - HUNTER 16 - CONTROL KEYCLICK

  INT 16 27-- - HUNTER 16 - CONTROL SCREEN DUMP AREA

  INT 16 29-- - HUNTER 16 - GET KEY REPEAT

  INT 16 2A-- - HUNTER 16 - CONTROL KEY REPEAT

  INT 16 2B-- - HUNTER 16 - REDEFINE KEY SCAN CODES

  INT 16 2C-- - HUNTER 16 - REDEFINE RAW KEY CODES

  INT 16 2D-- - HUNTER 16 - CONTROL BREAK KEYS

  INT 16 3577 - TextWare TWTSR - API

  INT 16 4252 - TEXTCAP 2.0 - INSTALLATION CHECK

  INT 16 4253 - TEXTCAP 2.0 - UNINSTALL

  INT 16 4254 - TEXTCAP 2.0 - DUMP TEXT SCREEN TO FILE

  INT 16 4500 - Shamrock Software EMAIL - GET STATUS

  INT 16 4501 - Shamrock Software EMAIL - GET ELAPSED ONLINE TIME AND MAXIMUM TIME

  INT 16 4502 - Shamrock Software EMAIL - GET CURRENT COMMUNICATIONS PARAMETERS

  INT 16 4503 - Shamrock Software EMAIL - SPECIFY COMMAND-WORD FOR USER FUNCTION

  INT 16 4504 - Shamrock Software EMAIL - CHECK FOR USER FUNCTION COMMAND-WORD

  INT 16 4505 - Shamrock Software EMAIL - SEND RESULT OF USER FUNCTION

  INT 16 4506 - Shamrock Software EMAIL - MONITOR XMODEM DOWNLOAD

  INT 16 4D4F - M16_KBD.COM v5.6 - INSTALLATION CHECK

  INT 16 5000 - KEYBOARD - AX PC - SET KEYBOARD COUNTRY CODE

  INT 16 5001 - KEYBOARD - AX PC - GET KEYBOARD COUNTRY CODE

  INT 16 51-- - KEYBOARD - AX PC - READ SHIFT KEY STATUS

  INT 16 5453 - TSRBONES - INSTALLATION CHECK

  INT 16 5500 - Microsoft Word internal - MICROSOFT WORD COOPERATION WITH TSR

  INT 16 55FE - Microsoft QBASIC internal - MICROSOFT COOPERATION WITH TSR

  INT 16 55FF - Microsoft Word - TSR COOPERATION???

  INT 16 5758 - Netroom CACHECLK - INSTALLATION CHECK

  INT 16 5758 - Netroom ??? - ???

  INT 16 5758 - Netroom ??? - ???

  INT 16 5758 - Netroom ??? - INSTALLATION CHECK

  INT 16 5758 - Netroom PRENET - GET OLD INTERRUPT VECTORS

  INT 16 5758 - Netroom POSTNET - GET OLD INTERRUPT VECTORS

  INT 16 6969 - PC Tools v5.1+ BACKTALK - UNHOOK

  INT 16 6969 - PC Tools v5.1+ BACKTALK - INSTALLATION CHECK

  INT 16 6A6B - FastJuice - DISABLE/UNLOAD???

  INT 16 6C63 - TMED v1.6a - INSTALLATION CHECK

  INT 16 6F00 - HP Vectra EX-BIOS - "F16_INQUIRE" - Extended BIOS INSTALLATION CHECK

  INT 16 6F01 - HP Vectra EX-BIOS - "F16_DEF_ATTR" - GET DEFAULT TYPEMATIC VALUES

  INT 16 6F02 - HP Vectra EX-BIOS - "F16_GET_ATTR" - GET CURRENT TYPEMATIC VALUES

  INT 16 6F03 - HP Vectra EX-BIOS - "F16_SET_ATTR" - SET TYPEMATIC VALUES

  INT 16 6F04 - HP Vectra EX-BIOS - "F16_DEF_MAPPING" - GET DEFAULT KEY MAPPINGS

  INT 16 6F05 - HP Vectra EX-BIOS - "F16_GET_MAPPING" - GET CURRENT KEY MAPPINGS

  INT 16 6F06 - HP Vectra EX-BIOS - "F16_SET_MAPPING" - SET KEY MAPPINGS

  INT 16 6F07 - HP Vectra EX-BIOS - "F16_SET_XLATORS" - SET CCP AND SOFTKEY PADS

  INT 16 6F08 - HP Vectra EX-BIOS - "F16_KBD" - GET KEYBOARD INFORMATION

  INT 16 6F09 - HP Vectra EX-BIOS - "F16_KBD_RESET" - RESET KEYBOARD TO DEFAULTS

  INT 16 6F0A - HP Vectra ES/QS/RS EX-BIOS - READ PROCESSOR SPEED

  INT 16 6F0B - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO LOW

  INT 16 6F0C - HP Vectra ES/QS/RS EX-BIOS - SET PROCESSOR SPEED TO HIGH

  INT 16 6F0D - HP Vectra ES/QS/RS EX-BIOS - GET HIL Extended BIOS INTERRUPT NUMBER

  INT 16 6F0E - HP Vectra ES/QS/RS EX-BIOS - SET HIL Extended BIOS INTERRUPT NUMBER

  INT 16 6F0F - HP Vectras RS/20C and RS/25C - ENABLE MEMORY CACHING

  INT 16 6F10 - HP Vectras RS/20C and RS/25C - DISABLE MEMORY CACHING

  INT 16 6F11 - HP Vectras RS/20C and RS/25C - GET MEMORY CACHING STATE

  INT 16 6F12 - HP Vectras RS/20C and RS/25C - SET PROCESSOR SPEED TO MEDIUM

  INT 16 70-- - FAKEY.COM - INSTALLATION CHECK

  INT 16 71-- - FAKEY.COM - PUSH KEYSTROKES

  INT 16 72-- - FAKEY.COM - CLEAR FAKED KEYSTROKES

  INT 16 73-- - FAKEY.COM - PLAY TONES

  INT 16 7463 - FastJuice - INSTALLATION CHECK

  INT 16 75-- - pcANYWHERE III - SET TICK COUNT FOR SCANNING

  INT 16 76-- - pcANYWHERE III - SET ERROR CHECKING TYPE

  INT 16 77-- - pcANYWHERE III - LOG OFF

  INT 16 7761 - WATCH.COM v2.x-v3.0 - INSTALLATION CHECK

  INT 16 7788 - PC Magazine PUSHDIR.COM - INSTALLATION CHECK

  INT 16 79-- - pcANYWHERE III - CHECK STATUS

  INT 16 7A-- - pcANYWHERE III - CANCEL SESSION

  INT 16 7B00 - pcANYWHERE III - SUSPEND

  INT 16 7B01 - pcANYWHERE III - RESUME

  INT 16 7C-- - pcANYWHERE III - GET PORT CONFIGURATION

  INT 16 7D-- - pcANYWHERE III - GET/SET TERMINAL PARAMETERS

  INT 16 7E-- - pcANYWHERE III - COMMUNICATIONS I/O THROUGH PORT

  INT 16 7F-- - pcANYWHERE III - SET KEYBOARD/SCREEN MODE

  INT 16 80-- - MAKEY.COM - INSTALLATION CHECK

  INT 16 8765 - AT.COM version 8/26/87 - API

  INT 16 92-- - KEYB.COM KEYBOARD CAPABILITIES CHECK (not an actual function!)

  INT 16 99-- - SCOUT v5.4 - GET ???

  INT 16 9E-- - SCOUT v5.4 - INSTALLATION CHECK

  INT 16 A2-- - KEYB.COM KEYBOARD CAPABILITIES CHECK (not an actual function!)

  INT 16 AA-- - PTxxx.COM - (xxx=CGA,EGA,VGA,HER...) CALL GATE FOR GRAPHICS

  INT 16 AABB - JORJ v4.3 - INSTALLATION CHECK

  INT 16 AF20 - K3PLUS v6.00+ (API v2.0+) - GET EXTENDED BUFFER STATE

  INT 16 AF25 - K3PLUS v6.00+ (API v2.0+) - COPY INTO EXTENDED BUFFER

  INT 16 AF4D - K3PLUS v6.00+ (API v2.0+) - GET VERSION INFORMATION

  INT 16 AF50 - K3PLUS v6.00+ (API v2.0+) - CHECK IF FUNCTION SUPPORTED

  INT 16 AF51 - K3PLUS v6.00+ (API v2.00+) - SET OPTIONS

  INT 16 AF80 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 09h VECTOR

  INT 16 AF81 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 16h HANDLER

  INT 16 AF82 - K3PLUS v6.00+ (API v2.00+) - GET ORIGINAL INT 10h HANDLER

  INT 16 B0B1 - VGARAM v1.00 - INSTALLATION CHECK

  INT 16 CA-- - CtrlAlt Associates STACKEY.COM v3.00 - API

  INT 16 CA00 - CtrlAlt Associates EGAPAL.COM v1.00 - INSTALLATION CHECK

  INT 16 CA00 - CtrlAlt Associates VGAPAL.COM v1.00 - INSTALLATION CHECK

  INT 16 CB00 - PUPClip v1.12+ - INSTALLATION CHECK

  INT 16 CB01 - PUPClip v1.12+ - GET CLIPBOARD CURSOR POSITION

  INT 16 CB02 - PUPClip v1.12+ - SET CLIPBOARD CURSOR POSITION

  INT 16 CB03 - PUPClip v1.12+ - GET CHARACTER FROM CURRENT CLIPBOARD CURSOR POSITION

  INT 16 CB04 - PUPClip v1.12+ - WRITE CHARACTER TO CURRENT CLIPBOARD CURSOR POSITION

  INT 16 CB05 - PUPClip v1.12+ - CLEAR CLIPBOARD CONTENTS

  INT 16 CB06 - PUPClip v1.12+ - SCROLL UP CLIPBOARD CONTENTS

  INT 16 CB07 - PUPClip v1.12+ - SCROLL DOWN CLIPBOARD CONTENTS

  INT 16 CB08 - PUPClip v1.12+ - POP UP

  INT 16 D724 - APCAL v3.20 - GET ???

  INT 16 D724 - APCAL v3.20 - GET ???

  INT 16 D724 - APCAL v3.20 - GET ???

  INT 16 DD-- - VIRUS - "Frumble" - INSTALLATION CHECK

  INT 16 DFDF - Corel PowerSCSI - FDAUDIO.COM - INSTALLATION CHECK

  INT 16 E000 - AMI BIOS - BIOS-FLASH Interface - GET VERSION NUMBER

  INT 16 E001 - AMI BIOS - BIOS-FLASH Interface - GET CHIPSET SAVE/RESTORE SIZE

  INT 16 E002 - AMI BIOS - BIOS-FLASH Interface - SAVE CHIPSET STATUS & PREPARE CHPSET

  INT 16 E003 - AMI BIOS - BIOS-FLASH Interface -  RESTORE CHIPSET STATUS

  INT 16 E004 - AMI BIOS - BIOS-FLASH Interface - LOWER PROGRAMMING VOLTAGE Vpp

  INT 16 E005 - AMI BIOS - BIOS-FLASH Interface - RAISE PROGRAMMING VOLTAGE Vpp

  INT 16 E006 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE PROTECT

  INT 16 E007 - AMI BIOS - BIOS-FLASH Interface - FLASH WRITE ENABLE

  INT 16 E008 - AMI BIOS - BIOS-FLASH Interface - FLASH SELECT

  INT 16 E009 - AMI BIOS - BIOS-FLASH Interface - FLASH DE-SELECT

  INT 16 E00A - AMI BIOS - BIOS-FLASH Interface - VERIFY ALLOCATED MEMORY

  INT 16 E00B - AMI BIOS - BIOS-FLASH Interface - SAVE INTERNAL CACHE STATUS

  INT 16 E00C - AMI BIOS - BIOS-FLASH Interface - RESTORE INTERNAL CACHE STATUS

  INT 16 E0E0 - TurboPower TSRs - ALTERNATE INSTALLATION CHECK

  INT 16 E0FF - AMI BIOS - BIOS-FLASH Interface - GENERATE CPU RESET

  INT 16 ED-- - BORLAND TURBO LIGHTNING - API

  INT 16 EF-- - CALCULATOR - INSTALLATION CHECK

  INT 16 F0-- - Compaq 386 and newer - SET CPU SPEED

  INT 16 F0F0 - TurboPower TSRs - INSTALLATION CHECK

  INT 16 F1-- - Compaq 386 and newer - READ CURRENT CPU SPEED

  INT 16 F2-- - Compaq 386 and newer - DETERMINE ATTACHED KEYBOARD TYPE

  INT 16 F3-- - Compaq 80286s - SET CPU SPEED LIMIT (OVERRIDE JUMPER)

  INT 16 F398 - NORTON GUIDES - INSTALLATION CHECK

  INT 16 F400 - Compaq Systempro and higher - CACHE CONTROLLER STATUS

  INT 16 F401 - Compaq Systempro and higher - ENABLE CACHE CONTROLLER

  INT 16 F402 - Compaq Systempro and higher - DISABLE CACHE CONTROLLER

  INT 16 FA00 - PC Tools v8+ VSAFE, VWATCH - INSTALLATION CHECK

  INT 16 FA01 - PC Tools v8+ VSAFE, VWATCH - UNINSTALL

  INT 16 FA02 - PC Tools v8+ VSAFE, VWATCH - GET/SET OPTIONS

  INT 16 FA03 - PC Tools v8+ VSAFE, VWATCH - GET ???

  INT 16 FA04 - PC Tools v8+ VSAFE - GET HOTKEY DISABLE FLAG

  INT 16 FA05 - PC Tools v8+ VSAFE - SET HOTKEY DISABLE FLAG

  INT 16 FA06 - PC Tools v8+ VSAFE, VWATCH - GET NETWORK DRIVES TEST FLAG

  INT 16 FA07 - PC Tools v8+ VSAFE, VWATCH - SET NETWORK DRIVES TEST FLAG

  INT 16 FA08 - PC Tools v9+ VWATCH v2.1 - ???

  INT 16 FE55 - PC Tools v8+ programs - GET ???

  INT 16 FEA4 - PC Tools v7+ CPSCHED/DESKTOP - RESET ???

  INT 16 FEC6 - PC Tools v7+ CPSCHED - ENABLE/DISABLE CPSCHED API

  INT 16 FED3 - PC Tools v7+ CPSCHED/DESKTOP - ???

  INT 16 FEDC - PC Tools v7+ CPSCHED - UNHOOK INTERRUPTS

  INT 16 FEEF - PC Tools v7+ CPSCHED/DESKTOP - INSTALLATION CHECK

  INT 16 FEF1 - PC Tools v7 only CPSCHED/DESKTOP - ALTERNATE INSTALLATION CHECK

  INT 16 FF-- - KEYBOARD - KBUF extensions - ADD KEY TO TAIL OF KEYBOARD BUFFER

  INT 16 FF-- - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY ZOOM INTERRUPT

  INT 16 FF-- - FREEZE.COM - INSTALLATION CHECK

  INT 16 FF70 - PC Tools v8+ DRIVEMAP - INSTALLATION CHECK

  INT 16 FF70 - PC Tools v8+ DRIVEMAP - ???

  INT 16 FF70 - PC Tools v8+ DRIVEMAP - ???

  INT 16 FF80 - PC Tools v8+ CPTASK - INSTALLATION CHECK

  INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

  INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

  INT 16 FF80 - PC Tools v8+ CPTASK - GET ??? FLAGS

  INT 16 FF80 - PC Tools v8+ CPTASK - SET ???

  INT 16 FF80 - PC Tools v8+ CPTASK - GET NUMBER OF ACTIVE TASKS???

  INT 16 FF80 - PC Tools v8+ CPTASK - GET AND CLEAR ??? FLAG

  INT 16 FF80 - PC Tools v8+ CPTASK - ???

  INT 16 FF80 - PC Tools v8+ CPTASK - ???

  INT 16 FF80 - PC Tools v8+ CPTASK - GET ???

  INT 16 FF80 - PC Tools v9+ CPTASK - SET ???

  INT 16 FF80 - PC Tools v9+ CPTASK - SET ???

  INT 16 FF80 - PC Tools v9+ CPTASK - SET IDLE??? DELAY

  INT 16 FF80 - PC Tools v8+ CPTASK - UNINSTALL

  INT 16 FF90 - PC Tools v8+ DESKTOP - ???

  INT 16 FF91 - PC Tools v7+ DESKTOP - ???

  INT 16 FF92 - PC Tools v7+ DESKTOP - ???

  INT 16 FF93 - PC Tools v7+ DESKTOP - SET ??? FLAG

  INT 16 FF94 - PC Tools v7+ DESKTOP - SET ???

  INT 16 FF95 - PC Tools v7+ DESKTOP - SET ???

  INT 16 FF96 - PC Tools v7+ DESKTOP - ???

  INT 16 FF97 - PC Tools v7+ DESKTOP - ???

  INT 16 FF98 - PC Tools v7+ DESKTOP - OPEN \DESK.OVL FILE AND SEEK TO OVERLAY

  INT 16 FF99 - PC Tools v7+ DESKTOP - ???

  INT 16 FF9A - PC Tools v7+ DESKTOP - GET NAME OF COLOR SCHEME

  INT 16 FF9B - PC Tools v7+ DESKTOP - UNUSED

  INT 16 FF9C - PC Tools v8+ CPTASK - SET/CLEAR ??? POINTER

  INT 16 FF9D - PC Tools v8+ CPTASK, VSAFE - ???

  INT 16 FF9E - PC Tools v7+ DESKTOP - ???

  INT 16 FFA1 - PC Tools v7+ DESKTOP - ???

  INT 16 FFA2 - PC Tools v7+ DESKTOP - ???

  INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - INSTALLATION CHECK

  INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

  INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

  INT 16 FFA3 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

  INT 16 FFA3 - PC Tools v7+ DATAMON - SET ??? FLAG

  INT 16 FFA3 - PC Tools v7+ DATAMON - CLEAR ??? FLAG

  INT 16 FFA3 - PC Tools v7+ DATAMON - SET PSP SEGMENT ???

  INT 16 FFA3 - PC Tools v9 DSKLIGHT - INSTALLATION CHECK

  INT 16 FFA4 - PC Tools v7-8 DESKTOP - ???

  INT 16 FFA5 - PC-Cache v6+ - INSTALLATION CHECK

  INT 16 FFA5 - PC-Cache v6+ - ENABLE DELAYED WRITES

  INT 16 FFA5 - PC-Cache v6+ - FLUSH CACHE AND DISABLE DELAYED WRITES

  INT 16 FFA5 - PC-Cache v6+ - FLUSH AND DISABLE CACHE

  INT 16 FFA5 - PC-Cache v6+ - ENABLE CACHE

  INT 16 FFA5 - PC-Cache v6+ - FLUSH CACHE

  INT 16 FFA6 - PC Tools v6.0-8.0 DESKTOP - GET ???

  INT 16 FFA7 - PC Tools v6.0-8.0 DESKTOP - GET ??? PATH

  INT 16 FFA8 - PC Tools v6.0-8.0 DESKTOP - ???

  INT 16 FFA9 - PC Tools v6.0-8.0 DESKTOP - GET VERSION STRING

  INT 16 FFAA - PC Tools v6.0-8.0 DESKTOP - ???

  INT 16 FFAB - PC Tools v6.0-8.0 DESKTOP - GET EDITOR SETTINGS???

  INT 16 FFAC - PC Tools v6.0-8.0 DESKTOP - SET ???

  INT 16 FFAD - PC Tools v6.0-8.0 DESKTOP - SET ???

  INT 16 FFAE - PC Tools v6.0-8.0 DESKTOP - GET ???

  INT 16 FFAF - PC Tools v6.0-8.0 DESKTOP - SET ???

  INT 16 FFB0 - PC Tools v6.0-8.0 DESKTOP - SET ???

  INT 16 FFB1 - PC Tools v6.0-8.0 DESKTOP - ???

  INT 16 FFB2 - PC Tools v5.5-8.0 DESKTOP - GET ???

  INT 16 FFB3 - PC Tools v5.5-8.0 DESKTOP - ???

  INT 16 FFB4 - PC Tools v5.5-8.0 DESKTOP - SET ??? FLAG

  INT 16 FFB5 - PC Tools v5.5-8.0 DESKTOP - GET/SET WINDOW PARAMETERS

  INT 16 FFB6 - PC Tools v5.5-8.0 DESKTOP - GET ???

  INT 16 FFB7 - PC Tools v5.5-8.0 DESKTOP - GET/SET ???

  INT 16 FFB8 - PC Tools v5.1-8.0 DESKTOP - GET/SET???

  INT 16 FFB9 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFBA - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFBB - PC Tools v5.1-8.0 DESKTOP - CLEAR ??? FLAG

  INT 16 FFBC - PC Tools v5.1-8.0 DESKTOP - RESTORE ORIGINAL SCREEN???

  INT 16 FFBD - PC Tools v5.1-8.0 DESKTOP - ??? DATABASE INDEXING MESSAGES

  INT 16 FFBE - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFBF - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFC0 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFC1 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFC2 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFC3 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFC4 - PC Tools v5.1-8.0 DESKTOP - GET ???

  INT 16 FFC5 - PC Tools v5.1-8.0 DESKTOP - CHECK WHETHER DESKTOP LOADED RESIDENT

  INT 16 FFC6 - PC Tools v5.1-8.0 DESKTOP - SET ???

  INT 16 FFC7 - PC Tools v5.1-8.0 DESKTOP - REMOVE WINDOW

  INT 16 FFC8 - PC Tools v5.1-8.0 DESKTOP - GET ???

  INT 16 FFC9 - PC Tools v5.1-8.0 DESKTOP - COPY DATA TO CLIPBOARD

  INT 16 FFCA - PC Tools v5.1-8.0 DESKTOP - SET ???

  INT 16 FFCB - PC Tools v5.1-8.0 DESKTOP - SELECT WINDOW PARAMETERS???

  INT 16 FFCC - PC Tools v5.1-8.0 DESKTOP - DISPLAY ASCIZ STRING CENTERED IN WINDOW

  INT 16 FFCD - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFCE - PC Tools v5.1-8.0 DESKTOP - SET ??? DELAYS

  INT 16 FFCF - PC Tools v5.1-8.0 DESKTOP - CLOSE PRINTER/PRINT FILE

  INT 16 FFD0 - PC Tools v5.1-8.0 DESKTOP - PREPARE TO PRINT???

  INT 16 FFD1 - PC Tools v5.1-8.0 DESKTOP - DISPLAY PRINT OPTIONS MENU

  INT 16 FFD2 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFD3 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFD4 - PC Tools v5.1-8.0 DESKTOP - CREATE/OPEN/DELETE FILE

  INT 16 FFD5 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFD6 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFD7 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFD8 - PC Tools v5.1-8.0 DESKTOP - SAFE CREATE FILE

  INT 16 FFD9 - PC Tools v5.1-8.0 DESKTOP - GET ???

  INT 16 FFDA - PC Tools v5.1-8.0 DESKTOP - GET NAME OF LAST FILE OPENED

  INT 16 FFDB - PC Tools v5.1-8.0 DESKTOP - SET ???

  INT 16 FFDC - PC Tools v5.1-8.0 DESKTOP - UNHOOK

  INT 16 FFDD - PC Tools v5.1+ PCShell API - INSTALLATION CHECK

  INT 16 FFDD - PC Tools v5.1+ PCShell API - REQUEST POP-UP

  INT 16 FFDD - PC Tools v5.1-5.5 PCShell API - GET ???

  INT 16 FFDD - PC Tools v5.1+ PCShell API - REQUEST POP-UP

  INT 16 FFDD - PC Tools v5.1+ PCShell API - GET ???

  INT 16 FFDD - PC Tools v5.1+ PCShell API - ???

  INT 16 FFDD - PC Tools v5.1+ PCShell API - ???

  INT 16 FFDD - PC Tools v5.1+ PCShell API - SET ??? FLAG

  INT 16 FFDD - PC Tools v5.1+ PCShell API - CLEAR ??? FLAG

  INT 16 FFDD - PC Tools v6.0+ PCShell API - GET PCRUN PARAMETERS

  INT 16 FFDD - PC Tools v6.0+ PCRUN API - INSTALLATION CHECK

  INT 16 FFDD - PC Tools v6.0+ PCRUN API - ???

  INT 16 FFDE - PC Tools v5.1-8.0 DESKTOP - DISPLAY POPUP MENU

  INT 16 FFDF - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFE0 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFE1 - PC Tools v5.1-8.0 DESKTOP - BEEP

  INT 16 FFE2 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFE3 - PC Tools v5.1-8.0 DESKTOP - PRINT CHARACTER

  INT 16 FFE4 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFE5 - PC Tools v5.1-8.0 DESKTOP - POP UP FILE SELECTION MENU

  INT 16 FFE6 - PC Tools v5.1-8.0 DESKTOP - CHECK FOR AND GET KEYSTROKE

  INT 16 FFE7 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFE8 - PC Tools v5.1-8.0 DESKTOP - DISPLAY NUMBER

  INT 16 FFE9 - PC Tools v5.1-8.0 DESKTOP - GET FILE LIST???

  INT 16 FFEA - PC Tools v5.1-8.0 DESKTOP - DISPLAY COUNTED STRING

  INT 16 FFEB - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFEC - PC Tools v5.1-8.0 DESKTOP - GET KEY

  INT 16 FFED - PC Tools v5.1-8.0 DESKTOP - GET ???

  INT 16 FFEE - PC Tools v5.1-8.0 DESKTOP - DEFINE PULLDOWN MENUS

  INT 16 FFEF - PC Tools v5.1-8.0 DESKTOP - INSTALLATION CHECK

  INT 16 FFF0 - PC Tools v5.1-8.0 DESKTOP - SET ???

  INT 16 FFF1 - PC Tools v5.1-8.0 DESKTOP - ALTERNATE INSTALLATION CHECK

  INT 16 FFF2 - PC Tools v5.1-8.0 DESKTOP - DISPLAY HELP LINE

  INT 16 FFF3 - PC Tools v5.1-8.0 DESKTOP - PREPARE TO UNLOAD RESIDENT DESKTOP

  INT 16 FFF4 - PC Tools v5.1-8.0 DESKTOP - ???

  INT 16 FFF5 - PC Tools v5.1-8.0 DESKTOP - GET SCREEN ATTRIBUTE ARRAY

  INT 16 FFF6 - PC Tools v5.1-8.0 DESKTOP - INVOKE NOTEPAD EDITOR

  INT 16 FFF7 - PC Tools v5.1-8.0 DESKTOP - PROCESS MENU BAR ENTRY???

  INT 16 FFF8 - PC Tools v5.1-8.0 DESKTOP - DRAW EMPTY WINDOW

  INT 16 FFF9 - PC Tools v5.1-8.0 DESKTOP - DEFINE SCREEN REFRESH ROUTINE

  INT 16 FFFA - PC Tools v5.1-8.0 DESKTOP - DEFINE STANDARD PULLDOWN MENUS

  INT 16 FFFB - PC Tools v5.1-8.0 DESKTOP - PROCESS STANDARD MENU BAR

  INT 16 FFFC - PC Tools v5.1-8.0 DESKTOP - GET HOTKEYS AND KEYBOARD VECTOR

  INT 16 FFFD - PC Tools v5.1-8.0 DESKTOP - COPY ???

  INT 16 FFFE - PC Tools v5.1-8.0 DESKTOP - SHOW MOUSE CURSOR

  INT 16 FFFF - PC Tools v5.1-8.0 DESKTOP - HIDE MOUSE CURSOR

INT 17 - PRINTER

  INT 17 ---- - PRINTER - LPTx v5.x INSTALLATION CHECK

  INT 17 ---- - PRINTER - LPTx v6.x INSTALLATION CHECK

  INT 17 ---- - PRINTER - LPTx v7.x INSTALLATION CHECK

  INT 17 ---- - PRINTER - LPTx v4.x INSTALLATION CHECK

  INT 17 00-- - PRINTER - WRITE CHARACTER

  INT 17 01-- - PRINTER - INITIALIZE PORT

  INT 17 02-- - PRINTER - GET STATUS

  INT 17 02-- - INSET - INSTALLATION CHECK

  INT 17 0200 - Advanced Parallel Port (EPP) BIOS - INSTALLATION CHECK

  INT 17 03-- - Emulaser ELTSR - INSTALL INTERRUPT HANDLERS

  INT 17 03-- - PC-MOS/386 v5.01 - PRINT SPOOLER - PRINT STRING

  INT 17 03-- - DMP Print Spooler v2.03 - INSTALLATION CHECK

  INT 17 0300 - DOSISODE to WATTCP TSR Interface - "socket"

  INT 17 04-- - Emulaser ELTSR - BEGIN CAPTURING OUTPUT

  INT 17 0400 - DOSISODE to WATTCP TSR Interface - "bind"

  INT 17 0500 - Emulaser ELTSR - ???

  INT 17 0500 - DOSISODE to WATTCP TSR Interface - "connect"

  INT 17 0501 - Emulaser ELTSR - UNHOOK INTERRUPTS

  INT 17 0502 - Emulaser ELTSR - SET ???

  INT 17 0503 - Emulaser ELTSR - DEACTIVATE???

  INT 17 06-- - Emulaser ELTSR - ???

  INT 17 0600 - DOSISODE to WATTCP TSR Interface - "listen"

  INT 17 07-- - Emulaser ELTSR - OPEN CAPTURE FILE

  INT 17 0700 - DOSISODE to WATTCP TSR Interface - "accept"

  INT 17 08-- - Emulaser ELTSR - CLOSE CAPTURE FILE

  INT 17 0800 - DOSISODE to WATTCP TSR Interface - "recvfrom"

  INT 17 09-- - Emulaser ELTSR - PRINT CAPTURE FILE???

  INT 17 0900 - DOSISODE to WATTCP TSR Interface - "sendto"

  INT 17 0A-- - Emulaser ELTSR - SET ??? FILENAME

  INT 17 0A00 - DOSISODE to WATTCP TSR Interface - "select"

  INT 17 0B-- - Emulaser ELTSR - GET ???

  INT 17 0B00 - DOSISODE to WATTCP TSR Interface - "ioctl"

  INT 17 0C-- - Emulaser ELTSR - SET ??? FLAG

  INT 17 0C00 - DOSISODE to WATTCP TSR Interface - "close"

  INT 17 0D-- - Emulaser ELTSR - GET TRUE ScrlLk STATE

  INT 17 0D00 - DOSISODE to WATTCP TSR Interface - "shutdown" - SHUTDOWN INTERFACE

  INT 17 0E-- - Emulaser ELTSR - BACKGROUND PROCESSING

  INT 17 0E00 - DOSISODE to WATTCP TSR Interface - INSTALLATION CHECK

  INT 17 2000 - PC Paint Plus 2.0 - PRINTER DRIVER - INSTALLATION CHECK

  INT 17 2001 - PC Paint Plus 2.0 - PRINTER DRIVER - SET ??? FLAG

  INT 17 2002 - PC Paint Plus 2.0 - PRINTER DRIVER - GET INFORMATION

  INT 17 2003 - PC Paint Plus 2.0 - PRINTER DRIVER - ???

  INT 17 2004 - PC Paint Plus 2.0 - PRINTER DRIVER - GET ???

  INT 17 2005 - PC Paint Plus 2.0 - PRINTER DRIVER - ADVANCE PRINTER TO NEXT PAGE

  INT 17 2006 - PC Paint Plus 2.0 - PRINTER DRIVER - ADVANCE TO NEXT PAGE & SHUT DOWN

  INT 17 2007 - PC Paint Plus 2.0 - PRINTER DRIVER - UNIMPLEMENTED

  INT 17 2400 - Shamrock Software NET.24 v3.11+ - ENABLE/DISABLE API FUNCTIONS

  INT 17 2401 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, NO HANDSHAKE

  INT 17 2402 - Shamrock Software NET.24 v3.11+ - TRANSMIT BLOCK, NO HANDSHAKE

  INT 17 2403 - Shamrock Software NET.24 v3.11+ - GET STATUS AND TRANSMISSION BUFFER

  INT 17 2404 - Shamrock Software NET.24 v3.11+ - SEND ACK BLOCK

  INT 17 2405 - Shamrock Software NET.24 v3.11+ - SEND NAK BLOCK

  INT 17 2406 - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED RECEIVE

  INT 17 2407 - Shamrock Software NET.24 v3.11+ - RECEIVE CHARACTER FROM REMOTE

  INT 17 2408 - Shamrock Software NET.24 v3.11+ - RECEIVE BLOCK, WITH HANDSHAKE

  INT 17 2409 - Shamrock Software NET.24 v3.11+ - TRANSMIT COMMAND, WITH HANDSHAKE

  INT 17 240A - Shamrock Software NET.24 v3.11+ - PREPARE CHARACTER-ORIENTED TRANSMIT

  INT 17 240B - Shamrock Software NET.24 v3.11+ - TRANSMIT SINGLE CHARACTER TO REMOTE

  INT 17 240C - Shamrock Software NET.24 v3.11+ - END CHARACTER-ORIENTED TRANSMIT

  INT 17 5000 - AX (Japanese AT) PRINTER - SET PRINTER COUNTRY CODE

  INT 17 5001 - AX (Japanese AT) PRINTER - GET PRINTER COUNTRY CODE

  INT 17 51-- - AX (Japanese AT) PRINTER - JIS to Shift-JIS CONVERSION

  INT 17 52-- - AX (Japanese AT) PRINTER - Shift-JIS to JIS CONVERSION

  INT 17 60-- - FLASHUP.COM - INSTALLATION CHECK

  INT 17 61-- - SPEEDSCR.COM - INSTALLATION CHECK

  INT 17 62-- - T2PS v1.0 - UNINSTALL

  INT 17 63-- - T2PS v1.0 - SET PARAMETERS

  INT 17 64-- - T2PS v1.0 - GET PARAMETERS

  INT 17 6F00 - HP Vectra - EXTENDED BIOS - "F17_INQUIRE" - INSTALLATION CHECK

  INT 17 6F02 - HP Vectra - EXTENDED BIOS - "F17_PUT_BUFFER" - PRINT BUFFER

  INT 17 81-- - Alloy NTNX, MW386 - CANCEL JOBS FOR CURRENT USER

  INT 17 82-- - Alloy NTNX, MW386 - CANCEL ALL JOBS FOR CURRENT USER

  INT 17 83-- - Alloy NTNX, MW386 - SET NUMBER OF COPIES

  INT 17 84-- - Alloy NTNX, MW386 - GENERATE PRINT BREAK

  INT 17 84-- - AX (Japanese AT) PRINTER - OUTPUT CHARACTER WITHOUT CONVERSION

  INT 17 85-- - AX (Japanese AT) PRINTER - ENABLE/DISABLE CHARACTER CONVERSION

  INT 17 87-- - Alloy NTNX - SET INDOS POINTER

  INT 17 88-- - Alloy NTNX, MW386 - REMOVE PRINTER FROM SPOOLER

  INT 17 89-- - Alloy NTNX, MW386 - ADD PRINTER TO SPOOLER

  INT 17 8A-- - Alloy NTNX - ACTIVATE USER-WRITTEN PRINTER DRIVER

  INT 17 8B-- - Alloy MW386 - GET PHYSICAL DEVICE NUMBER FROM NAME

  INT 17 8C-- - Alloy MW386 - GET DEVICE NAME FROM PHYSICAL DEVICE NUMBER

  INT 17 8D-- - Alloy NTNX,MW386 - RESET SPOOLER

  INT 17 8E-- - Alloy NTNX - GET INT 28 ENTRY POINT

  INT 17 8F-- - Alloy NTNX - GET DOS INTERCEPT ENTRY POINT

  INT 17 90-- - Alloy NTNX, MW386 - SPOOL FILE BY NAME

  INT 17 91-- - Alloy NTNX, MW386 - GET USER NUMBER AND CURRENT PRINTER

  INT 17 92-- - Alloy NTNX - CHECK PRINTER DRIVER

  INT 17 94-- - Alloy NTNX, MW386 - SELECT PRINTER

  INT 17 95-- - Alloy NTNX, MW386 - GET CURRENT PRINTER

  INT 17 96-- - Alloy NTNX - SET SERIAL PORT PARAMETERS

  INT 17 97-- - Alloy NTNX, MW386 - SET DATA DRIVEN PRINT BREAK

  INT 17 98-- - Alloy NTNX,MW386 - RESTART PRINTER

  INT 17 99-- - Alloy NTNX, MW386 - GET/SET PRINTER MODE

  INT 17 9A-- - Alloy NTNX,MW386 - SET TAB EXPANSION

  INT 17 9B-- - Alloy NTNX,MW386 - SET PRINT BREAK TIMEOUT

  INT 17 A0-- - Alloy MW386 - SPOOL COPY OF FILE

  INT 17 A4-- - Alloy MW386 - ENABLE/DISABLE FORM FEED

  INT 17 A6-- - Alloy MW386 - ENABLE/DISABLE BANNER PAGE

  INT 17 A7-- - Alloy MW386 v2+ - GET/SET SPOOL FLAGS

  INT 17 A8-- - Alloy MW386 - DEFINE TEMPORARY FILENAME

  INT 17 A9-- - Alloy MW386 - CHANGE TEMPORARY SPOOL DRIVE

  INT 17 AA-- - Alloy MW386 v2+ - GET REAL-TIME PRINTER STATUS

  INT 17 AF-- - Alloy MW386 - CHECK SPOOLER

  INT 17 C0-- - PC Magazine PCSpool - GET CONTROL BLOCK ADDRESS

  INT 17 C1-- - PC Magazine PCSpool - BUILD PAUSE CONTROL RECORD

  INT 17 C2-- - PC Magazine PCSpool - FLUSH PENDING WRITES

  INT 17 C3-- - PC Magazine PCSpool - CANCEL PRINTER QUEUE (FLUSH ALL QUEUED OUTPUT)

  INT 17 C4-- - PC Magazine PCSpool - QUERY SPOOLER ACTIVE

  INT 17 C5-- - PC Magazine PCSpool - JOB SKIP PRINTER QUEUE

  INT 17 C6-- - PC Magazine PCSpool - CHECK PRINTER QUEUE STATUS

  INT 17 C7-- - PC Magazine PCSpool - CLOSE QUEUE

  INT 17 CD00 - INSET - EXECUTE COMMAND STRING

  INT 17 CD01 - INSET - GET IMAGE SIZE

  INT 17 CD02 - INSET - INITIALIZE

  INT 17 CD03 - INSET - EXECUTE INSET MENU WITHIN OVERRIDE MODE

  INT 17 CD04 - INSET - INITIALIZE LINKED MODE

  INT 17 CD05 - INSET - START MERGING IMAGE INTO TEXT

  INT 17 CD06 - INSET - GRAPHICS LINE FEED

  INT 17 CD07 - INSET - FLUSH GRAPHICS FROM MERGE BUFFER

  INT 17 CD08 - INSET - CANCEL LINK MODE

  INT 17 CD09 - INSET - ALTER TEXT LINE SPACING

  INT 17 CD0A - INSET - GET SETUP

  INT 17 CD0B - INSET - START GETTING SCALED IMAGE

  INT 17 CD0C - INSET - GET NEXT IMAGE STRIP

  INT 17 E0-- - EPP BIOS - INSTALLATION CHECK

  INT 17 E1-- - EPP BIOS - DISABLE EPP

  INT 17 E2-- - EPP BIOS - ENABLE EPP

  INT 17 F0-- - NorthNet Jetstream API - INSTALLATION CHECK

  INT 17 F1-- - NorthNet Jetstream API - PRINT DATA BUFFER

  INT 17 F2-- - NorthNet Jetstream API - GET PRINT PROGRESS STATUS

  INT 17 F3-- - NorthNet Jetstream API - ABORT PRINT OPERATION

  INT 17 F4-- - NorthNet Jetstream API - SET COMPLETION (POST) ADDRESS

  INT 17 F5-- - NorthNet Jetstream API - PRINT DATA BUFFER FROM EXTENDED MEMORY

  INT 17 FF-- - PC-MOS/386 v5.01 - PRINT SPOOLER - CLOSE SPOOL FILE

INT 18 - DISKLESS BOOT HOOK (START CASSETTE BASIC)

  INT 18 ---- - DISKLESS BOOT HOOK (START CASSETTE BASIC)

  INT 18 00-- - NEC PC-9800 series - KEYBOARD - GET KEYSTROKE

  INT 18 01-- - NEC PC-9800 series - KEYBOARD - CHECK FOR KEYSTROKE

  INT 18 02-- - NEC PC-9800 series - KEYBOARD - GET SHIFT STATUS

  INT 18 03-- - NEC PC-9800 series - KEYBOARD - INITIALIZE

  INT 18 04-- - NEC PC-9800 series - KEYBOARD - KEY PRESSED

  INT 18 ---- - NEC PC-9800 series - VIDEO

  INT 18 5350 - SPHINX C-- - WB.COM - API

  INT 18 6900 - Gravis Ultra Sound YEA_GUS.EXE - GET STATUS

  INT 18 6901 - Gravis Ultra Sound YEA_GUS.EXE - RESET

  INT 18 6902 - Gravis Ultra Sound YEA_GUS.EXE - SET VOLUME FOR SPECIFIC VOICE

  INT 18 6903 - Gravis Ultra Sound YEA_GUS.EXE - SET FREQUENCY FOR VOICE

  INT 18 6904 - Gravis Ultra Sound YEA_GUS.EXE - SET LEFT/RIGHT BALANCE

  INT 18 6905 - Gravis Ultra Sound YEA_GUS.EXE - PLAY MUSIC

  INT 18 6906 - Gravis Ultra Sound YEA_GUS.EXE - LOAD SOUND DATA

  INT 18 6907 - Gravis Ultra Sound YEA_GUS.EXE - STOP VOICE

  INT 18 6908 - Gravis Ultra Sound YEA_GUS.EXE - SET VOICE END

  INT 18 6909 - Gravis Ultra Sound YEA_GUS.EXE - RAMP VOLUME

  INT 18 690A - Gravis Ultra Sound YEA_GUS.EXE - GET VOLUME

  INT 18 690B - Gravis Ultra Sound YEA_GUS.EXE - GET POSITION

  INT 18 690C - Gravis Ultra Sound YEA_GUS.EXE - SAVE SOUND DATA

  INT 18 690D - Gravis Ultra Sound YEA_GUS.EXE - RESTART VOICE

  INT 18 8000 - Gravis Ultra Sound EURO_MOD.EXE - INITIALIZE

  INT 18 8001 - Gravis Ultra Sound EURO_MOD.EXE - LOAD .MOD FILE

  INT 18 8002 - Gravis Ultra Sound EURO_MOD.EXE - PLAY .MOD FILE

  INT 18 8003 - Gravis Ultra Sound EURO_MOD.EXE - STOP PLAYING

  INT 18 8004 - Gravis Ultra Sound EURO_MOD.EXE - SHUTDOWN

INT 19 - SYSTEM - BOOTSTRAP LOADER

  INT 19 ---- - SYSTEM - BOOTSTRAP LOADER

INT 1A - TIME

  INT 1A 00-- - TIME - GET SYSTEM TIME

  INT 1A 01-- - TIME - SET SYSTEM TIME

  INT 1A 02-- - TIME - GET REAL-TIME CLOCK TIME (AT,XT286,PS)

  INT 1A 03-- - TIME - SET REAL-TIME CLOCK TIME (AT,XT286,PS)

  INT 1A 04-- - TIME - GET REAL-TIME CLOCK DATE (AT,XT286,PS)

  INT 1A 04-- - Sperry PC - GET REAL-TIME CLOCK DATE

  INT 1A 05-- - TIME - SET REAL-TIME CLOCK DATE (AT,XT286,PS)

  INT 1A 04-- - Sperry PC - SET REAL-TIME CLOCK DATE

  INT 1A 06-- - TIME - SET ALARM (AT,XT286,PS)

  INT 1A 07-- - TIME - CANCEL ALARM (AT,XT286,PS)

  INT 1A 08-- - TIME - SET RTC ACTIVATED POWER ON MODE (CONVERTIBLE)

  INT 1A 09-- - TIME - READ RTC ALARM TIME AND STATUS (CONV,PS30)

  INT 1A 0A-- - TIME - READ SYSTEM-TIMER DAY COUNTER (XT2,PS)

  INT 1A 0B-- - TIME - SET SYSTEM-TIMER DAY COUNTER (XT2,PS)

  INT 1A 10-- - NEC PC-9800 series - PRINTER - INITIALIZE

  INT 1A 11-- - NEC PC-9800 series - PRINTER - OUTPUT CHARACTER

  INT 1A 12-- - NEC PC-9800 series - PRINTER - SENSE STATUS

  INT 1A 3601 - WORD PERFECT v5.0 Third Party Interface - INSTALLATION CHECK

  INT 1A 6108 - SNAP.EXE 3.2+ - "SNAP_SENDWITHREPLY" - SEND MSG AND GET REPLY

  INT 1A 6205 - SNAP.EXE 3.2+ - "SNAP_SENDNOREPLY" - SEND MSG, DON'T AWAIT REPLY

  INT 1A 6308 - SNAP.EXE 3.2+ - "SNAP_BEGINCONV" - BEGIN CONVERSATION

  INT 1A 6405 - SNAP.EXE 3.2+ - "SNAP_ENDCONV" - END CONVERSATION

  INT 1A 6900 - SNAP.EXE 3.2+ - "SNAP_DATASEG" - GET RESIDENT DATA SEGMENT

  INT 1A 6A01 - SNAP.EXE 3.2+ - "SNAP_ALLOC" - ALLOCATE BUFFER IN SNAP DATA SEGMENT

  INT 1A 6B01 - SNAP.EXE 3.2+ - "SNAP_FREE" - DEALLOCATE BUFFER IN SNAP DATA SEGMENT

  INT 1A 6C04 - SNAP.EXE 3.2+ - "SNAP_COPYTO" - COPY DATA TO RESIDENT SNAP PACKAGE

  INT 1A 6D04 - SNAP.EXE 3.2+ - "SNAP_COPYFROM" - COPY DATA FROM RESIDENT SNAP PACKAGE

  INT 1A 6E01 - SNAP.EXE 3.2+ - "SNAP_SETDEBUG" - SET ???

  INT 1A 6F01 - SNAP.EXE 3.2+ - "SNAP_CHKINSTALL" - INSTALLATION CHECK

  INT 1A 7002 - SNAP.EXE 3.2+ - "SNAP_SETANCHOR"

  INT 1A 7101 - SNAP.EXE 3.2+ - "SNAP_GETANCHOR"

  INT 1A 7202 - SNAP.EXE 3.2+ - "SNAP_SETCONVPARMS" - SET CONVERSATION PARAMETERS

  INT 1A 7302 - SNAP.EXE 3.2+ - "SNAP_CLIENTVERSION" - ???

  INT 1A 7400 - SNAP.EXE 3.2+ - "SNAP_VERSION" - GET VERSION

  INT 1A 75-- - SNAP.EXE 3.2+ - "SNAP_NOP" - ???

  INT 1A 76-- - SNAP.EXE 3.2+ - "SNAP_802_5" - ???

  INT 1A 77-- - SNAP.EXE 3.4 - ???

  INT 1A 7802 - SNAP.EXE 3.4 - ???

  INT 1A 7F-- - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???

  INT 1A 80-- - PCjr, Tandy 2500???, Tandy 1000SL/TL - SET UP SOUND MULTIPLEXOR

  INT 1A 80-- - PCMCIA Socket Services v1.00 - GET NUMBER OF ADAPTERS

  INT 1A 81-- - PCMCIA Socket Services v1.00 - REGISTER STATUS CHANGE CALLBACK

  INT 1A 8100 - Tandy 2500, Tandy 1000L series - DIGITAL SOUND - INSTALLATION CHECK

  INT 1A 82-- - Tandy 2500???, Tandy 1000SL/TL - DIGITAL SOUND - RECORD SOUND

  INT 1A 82-- - PCMCIA Socket Services v1.00 - REGISTER CARD TECHNOLOGY CALLBACK

  INT 1A 83-- - Tandy 2500, Tandy 1000L series - START PLAYING DIGITAL SOUND

  INT 1A 83-- - PCMCIA Socket Services v1.00 - GET SOCKET SERVICES VERSION NUMBER

  INT 1A 84-- - Tandy 2500, Tandy 1000L series - STOP PLAYING DIGITAL SOUND

  INT 1A 84-- - PCMCIA Socket Services v1.00 - INQUIRE ADAPTER

  INT 1A 85-- - Tandy 2500, Tandy 1000L series - DIGITAL SOUND???

  INT 1A 85-- - PCMCIA Socket Services v1.00 - GET ADAPTER

  INT 1A 86-- - PCMCIA Socket Services v1.00 - SET ADAPTER

  INT 1A 87-- - PCMCIA Socket Services v1.00 - INQUIRE WINDOW

  INT 1A 88-- - PCMCIA Socket Services v1.00 - GET WINDOW

  INT 1A 89-- - PCMCIA Socket Services v1.00 - SET WINDOW

  INT 1A 8A-- - PCMCIA Socket Services v1.00 - GET PAGE

  INT 1A 8B-- - PCMCIA Socket Services v1.00 - SET PAGE

  INT 1A 8C-- - PCMCIA Socket Services v1.00 - INQUIRE SOCKET

  INT 1A 8D-- - PCMCIA Socket Services v1.00 - GET SOCKET

  INT 1A 8E-- - PCMCIA Socket Services v1.00 - SET SOCKET

  INT 1A 8F-- - PCMCIA Socket Services v1.00 - GET CARD

  INT 1A 90-- - PCMCIA Socket Services v1.00 - RESET CARD

  INT 1A 91-- - PCMCIA Socket Services v1.00 - READ ONE

  INT 1A 92-- - PCMCIA Socket Services v1.00 - WRITE ONE

  INT 1A 93-- - PCMCIA Socket Services v1.00 - READ MULTIPLE

  INT 1A 94-- - PCMCIA Socket Services v1.00 - WRITE MULTIPLE

  INT 1A 95-- - PCMCIA Socket Services v1.00 - INQUIRE ERROR DETECTION CODE

  INT 1A 96-- - PCMCIA Socket Services v1.00 - GET ERROR DETECTION CODE

  INT 1A 97-- - PCMCIA Socket Services v1.00 - SET ERROR DETECTION CODE

  INT 1A 98-- - PCMCIA Socket Services v1.00 - START ERROR DETECTION CODE

  INT 1A 99-- - PCMCIA Socket Services v1.00 - PAUSE ERROR DETECTION CODE

  INT 1A 9A-- - PCMCIA Socket Services v1.00 - RESUME ERROR DETECTION CODE

  INT 1A 9B-- - PCMCIA Socket Services v1.00 - STOP ERROR DETECTION CODE

  INT 1A 9C-- - PCMCIA Socket Services v1.00 - READ ERROR DETECTION CODE

  INT 1A 9D-- - PCMCIA Socket Services v2.1? - GET VENDOR INFO

  INT 1A 9D-- - Intel PCMCIA ExCA Card Services - API

  INT 1A 9E-- - PCMCIA Socket Services v2.1 - ACKNOWLEDGE INTERRUPT

  INT 1A 9F-- - PCMCIA Socket Services v2.1 - GET/SET PRIOR INT 1A HANDLER

  INT 1A A0-- - Disk Spool II v2.07+ - INSTALLATION CHECK

  INT 1A A0-- - PCMCIA Socket Services v2.1 - GET/SET SOCKET SERVICES ADDRESS

  INT 1A A1-- - PCMCIA Socket Services v2.1 - GET ACCESS OFFSETS

  INT 1A AB-- - Disk Spool II v1.83 - INSTALLATION CHECK

  INT 1A AC-- - Disk Spool II v1.83 - INSTALLATION CHECK

  INT 1A AD-- - Disk Spool II v1.83 - FUNCTION CALLS

  INT 1A AE-- - PCMCIA Socket Services v2.1 - VENDOR SPECIFIC

  INT 1A AE-- - PCMCIA Socket Services v2.1 - API

  INT 1A AF-- - PCMCIA v2 - API

  INT 1A B000 - HP 100LX/200LX - PCMCIA - ???

  INT 1A B001 - Microsoft Real-Time Compression Interface (MRCI) - ROM-BASED SERVER

  INT 1A B101 - Intel PCI BIOS v2.0c - INSTALLATION CHECK

  INT 1A B102 - Intel PCI BIOS v2.0c - FIND PCI DEVICE

  INT 1A B103 - Intel PCI BIOS v2.0c - FIND PCI CLASS CODE

  INT 1A B106 - Intel PCI BIOS v2.0c - PCI BUS-SPECIFIC OPERATIONS

  INT 1A B108 - Intel PCI BIOS v2.0c - READ CONFIGURATION BYTE

  INT 1A B109 - Intel PCI BIOS v2.0c - READ CONFIGURATION WORD

  INT 1A B10A - Intel PCI BIOS v2.0c - READ CONFIGURATION DWORD

  INT 1A B10B - Intel PCI BIOS v2.0c - WRITE CONFIGURATION BYTE

  INT 1A B10C - Intel PCI BIOS v2.0c - WRITE CONFIGURATION WORD

  INT 1A B10D - Intel PCI BIOS v2.0c - WRITE CONFIGURATION DWORD

  INT 1A B181 - Intel PCI BIOS v2.0c - INSTALLATION CHECK (32-bit)

  INT 1A B182 - Intel PCI BIOS v2.0c - FIND PCI DEVICE (32-bit)

  INT 1A B183 - Intel PCI BIOS v2.0c - FIND PCI CLASS CODE (32-bit)

  INT 1A B186 - Intel PCI BIOS v2.0c - PCI BUS-SPECIFIC OPERATIONS (32-bit)

  INT 1A B188 - Intel PCI BIOS v2.0c - READ CONFIGURATION BYTE (32-bit)

  INT 1A B189 - Intel PCI BIOS v2.0c - READ CONFIGURATION WORD (32-bit)

  INT 1A B18A - Intel PCI BIOS v2.0c - READ CONFIGURATION DWORD (32-bit)

  INT 1A B18B - Intel PCI BIOS v2.0c - WRITE CONFIGURATION BYTE (32-bit)

  INT 1A B18C - Intel PCI BIOS v2.0c - WRITE CONFIGURATION WORD (32-bit)

  INT 1A B18D - Intel PCI BIOS v2.0c - WRITE CONFIGURATION DWORD (32-bit)

  INT 1A B400 - Intel Plug-and-Play AUTO-CONFIGURATION - INSTALLATION CHECK

  INT 1A B401 - Intel Plug-and-Play AUTO-CONFIGURATION - GET DEFAULT CONFIG TABLE

  INT 1A B402 - Intel Plug-and-Play AUTO-CONFIGURATION - COPY AND VERIFY CONFIG TABLE

  INT 1A B403 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

  INT 1A B404 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

  INT 1A B405 - Intel Plug-and-Play AUTO-CONFIGURATION - GET ???

  INT 1A B406 - Intel Plug-and-Play AUTO-CONFIGURATION - GET ???

  INT 1A B407 - Intel Plug-and-Play AUTO-CONFIGURATION - ???

  INT 1A B4-- - Intel Plug-and-Play AUTO-CONFIGURATION - 32-BIT API

  INT 1A C0-- - Disk Spool II v2.07+ - ALTERNATE INSTALLATION CHECK

  INT 1A CCCC - DATEFIX - INSTALLATION CHECK

  INT 1A D0-- - Disk Spool II v2.07+ - FUNCTION CALLS

  INT 1A E0-- - Disk Spool II v4.0x - ENABLE/DISABLE

  INT 1A E1-- - Disk Spool II v4.0x - GET STATUS

  INT 1A E11B - TheGrab v4.60 - ???

  INT 1A E11D - TheGrab v4.60 - INSTALLATION CHECK

  INT 1A E2-- - Disk Spool II v4.0x - GET SPOOL FILES

  INT 1A E301 - Disk Spool II v4.0x - GET SPOOL FILE STATUS

  INT 1A E302 - Disk Spool II v4.0x - UPDATE SPOOL FILE

  INT 1A E401 - Disk Spool II v4.0x - SPOOL EXISTING FILE

  INT 1A E402 - Disk Spool II v4.0x - SPOOL EXISTING FILE???

  INT 1A E5-- - Emulaser ELSPL.COM - ???

  INT 1A EE-- - Disk Spool II v4.05 - ???

  INT 1A F7-- - RighTime v1.1 - TEMPORARILY DISABLE

  INT 1A F8-- - RighTime v1.1 - ENABLE

  INT 1A FE-- - AT&T 6300 - READ TIME AND DATE

  INT 1A FF-- - AT&T 6300 - SET TIME AND DATE

  INT 1A FF-- - RighTime v1.1 - PERMANENTLY DISABLE

  INT 1A FF00 - SND - INSTALLATION CHECK???

  INT 1A FF01 - SND - PAUSE

  INT 1A FF02 - SND - START SOUND

  INT 1A FF03 - SND - STOP SOUND

  INT 1A FF04 - SND - PLAY MUSIC STRING IN BACKGROUND

  INT 1A FF05 - SND - UNCONDITIONALLY STOP SOUND

INT 1B - KEYBOARD - CONTROL-BREAK HANDLER

  INT 1B ---- - KEYBOARD - CONTROL-BREAK HANDLER

INT 1C - TIME - SYSTEM TIMER TICK

  INT 1C ---- - TIME - SYSTEM TIMER TICK

INT 1D - SYSTEM DATA - VIDEO PARAMETER TABLES

  INT 1D ---- - SYSTEM DATA - VIDEO PARAMETER TABLES

INT 1E - SYSTEM DATA - DISKETTE PARAMETERS

  INT 1E ---- - SYSTEM DATA - DISKETTE PARAMETERS

INT 1F - SYSTEM DATA - 8x8 GRAPHICS FONT

  INT 1F ---- - SYSTEM DATA - 8x8 GRAPHICS FONT

  INT 1F 12-- - C&T "SuperState" BIOS - POWER OFF

  INT 1F 17-- - C&T "SuperState" BIOS - EXECUTE FAR PROC ROUTINE ON SuperState

  INT 1F 19-- - C&T "SuperState" BIOS - ENABLE AUTO WAKEUP AND SET TIME AND DATE

  INT 1F 1C-- - C&T "SuperState" BIOS - SET SUSPEND TIMEOUT

  INT 1F 1D-- - C&T "SuperState" BIOS - SET SLEEP TIMEOUT

  INT 1F 90-- - NEC PC-9801 - COPY EXTENDED MEMORY

  INT 1F F5-- - C&T "SuperState" BIOS - REQUEST PASSWORD INPUT

  INT 1F F5-- - C&T "SuperState" BIOS - ENCRYPT PASSWORD

  INT 1F F5-- - C&T "SuperState" BIOS - SET PASSWORD

  INT 1F F5-- - C&T "SuperState" BIOS - GET ENCRYPTED PASSWORD

  INT 1F FB-- - C&T "SuperState" BIOS - GET/SET CPU SPEED

  INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM STATUS

  INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM STATUS

  INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM TIME

  INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM TIME

  INT 1F FC-- - C&T "SuperState" BIOS - GET ALARM DATE

  INT 1F FC-- - C&T "SuperState" BIOS - SET ALARM DATE

  INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP STATUS

  INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP STATUS

  INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP TIME

  INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP TIME

  INT 1F FD-- - C&T "SuperState" BIOS - GET AUTO WAKE UP DATE

  INT 1F FD-- - C&T "SuperState" BIOS - SET AUTO WAKE UP DATE

INT 20 - DOS 1+ - TERMINATE PROGRAM

  INT 20 ---- - Minix - SEND/RECEIVE MESSAGE

  INT 20 ---- - DOS 1+ - TERMINATE PROGRAM

  INT 20 ---- - COMTROL HOSTESS i/ISA DEBUGGER - INVOKE FIRMWARE DEBUGGER

  INT 20 ---- - Microsoft Windows - VxD FUNCTIONS

INT 21 - DOS 1+ - Function Calls

  INT 21 ---- - COMTROL HOSTESS i/ISA DEBUGGER - GET SEGMENT FOR CONTROL PROGRAM USE

  INT 21 00-- - DOS 1+ - TERMINATE PROGRAM

  INT 21 01-- - DOS 1+ - READ CHARACTER FROM STANDARD INPUT, WITH ECHO

  INT 21 02-- - DOS 1+ - WRITE CHARACTER TO STANDARD OUTPUT

  INT 21 03-- - DOS 1+ - READ CHARACTER FROM STDAUX

  INT 21 04-- - DOS 1+ - WRITE CHARACTER TO STDAUX

  INT 21 05-- - DOS 1+ - WRITE CHARACTER TO PRINTER

  INT 21 06-- - DOS 1+ - DIRECT CONSOLE OUTPUT

  INT 21 06-- - DOS 1+ - DIRECT CONSOLE INPUT

  INT 21 07-- - DOS 1+ - DIRECT CHARACTER INPUT, WITHOUT ECHO

  INT 21 08-- - DOS 1+ - CHARACTER INPUT WITHOUT ECHO

  INT 21 09-- - DOS 1+ - WRITE STRING TO STANDARD OUTPUT

  INT 21 0A-- - DOS 1+ - BUFFERED INPUT

  INT 21 0A00 - WCED v1.6+ - INSTALLATION CHECK

  INT 21 0B-- - DOS 1+ - GET STDIN STATUS

  INT 21 0B56 - VIRUS - "Perfume" - INSTALLATION CHECK

  INT 21 0C-- - DOS 1+ - FLUSH BUFFER AND READ STANDARD INPUT

  INT 21 0D-- - DOS 1+ - DISK RESET

  INT 21 0D20 - VIRUS - "Crazy Imp" - INSTALLATION CHECK

  INT 21 0E-- - DOS 1+ - SELECT DEFAULT DRIVE

  INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - INSTALLATION CHECK

  INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - CLEAR ??? FLAG

  INT 21 0E-- - Novell DOS 7 - SDRes v27.03 - SET ??? FLAG

  INT 21 0F-- - DOS 1+ - OPEN FILE USING FCB

  INT 21 10-- - DOS 1+ - CLOSE FILE USING FCB

  INT 21 11-- - DOS 1+ - FIND FIRST MATCHING FILE USING FCB

  INT 21 12-- - DOS 1+ - FIND NEXT MATCHING FILE USING FCB

  INT 21 13-- - DOS 1+ - DELETE FILE USING FCB

  INT 21 14-- - DOS 1+ - SEQUENTIAL READ FROM FCB FILE

  INT 21 15-- - DOS 1+ - SEQUENTIAL WRITE TO FCB FILE

  INT 21 16-- - DOS 1+ - CREATE OR TRUNCATE FILE USING FCB

  INT 21 17-- - DOS 1+ - RENAME FILE USING FCB

  INT 21 18-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

  INT 21 1812 - VIRUS - "Tasha Yar" - INSTALLATION CHECK

  INT 21 19-- - DOS 1+ - GET CURRENT DEFAULT DRIVE

  INT 21 1A-- - DOS 1+ - SET DISK TRANSFER AREA ADDRESS

  INT 21 1B-- - DOS 1+ - GET ALLOCATION INFORMATION FOR DEFAULT DRIVE

  INT 21 1C-- - DOS 1+ - GET ALLOCATION INFORMATION FOR SPECIFIC DRIVE

  INT 21 1D-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

  INT 21 1E-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

  INT 21 1F-- - DOS 1+ - GET DRIVE PARAMETER BLOCK FOR DEFAULT DRIVE

  INT 21 20-- - DOS 1+ - NULL FUNCTION FOR CP/M COMPATIBILITY

  INT 21 21-- - DOS 1+ - READ RANDOM RECORD FROM FCB FILE

  INT 21 22-- - DOS 1+ - WRITE RANDOM RECORD TO FCB FILE

  INT 21 23-- - DOS 1+ - GET FILE SIZE FOR FCB

  INT 21 24-- - DOS 1+ - SET RANDOM RECORD NUMBER FOR FCB

  INT 21 25-- - DOS 1+ - SET INTERRUPT VECTOR

  INT 21 2501 - Phar Lap 386/DOS-Extender - RESET DOS EXTENDER DATA STRUCTURES

  INT 21 2502 - Phar Lap 386/DOS-Extender - GET PROTECTED-MODE INTERRUPT VECTOR

  INT 21 2503 - Phar Lap 386/DOS-Extender - GET REAL-MODE INTERRUPT VECTOR

  INT 21 2504 - Phar Lap 386/DOS-Extender - SET PROTECTED-MODE INTERRUPT VECTOR

  INT 21 2505 - Phar Lap 386/DOS-Extender - SET REAL-MODE INTERRUPT VECTOR

  INT 21 2506 - Phar Lap 386/DOS-Extender - SET INT TO ALWAYS GAIN CNTRL IN PR. MODE

  INT 21 2507 - Phar Lap 386/DOS-Extender - SET REAL- & PROTECTED-MODE INT VECTORS

  INT 21 2508 - Phar Lap 386/DOS-Extender - GET SEGMENT LINEAR BASE ADDRESS

  INT 21 2509 - Phar Lap 386/DOS-Extender - CONVERT LINEAR TO PHYSICAL ADDRESS

  INT 21 2509 - FlashTek X-32VM - GET SYSTEM SEGMENTS AND SELECTORS

  INT 21 250A - Phar Lap 386/DOS-Extender - MAP PHYSICAL MEMORY AT END OF SEGMENT

  INT 21 250C - Phar Lap 386/DOS-Extender - GET HARDWARE INTERRUPT VECTORS

  INT 21 250D - Phar Lap 386/DOS-Extender - GET REAL-MODE LINK INFORMATION

  INT 21 250E - Phar Lap 386/DOS-Extender - CALL REAL-MODE PROCEDURE

  INT 21 250F - Phar Lap 386/DOS-Extender - CONVERT PROTECTED-MODE ADDRESS TO MS-DOS

  INT 21 2510 - Phar Lap 386/DOS-Extender - CALL REAL-MODE PROCEDURE, REGISTERS

  INT 21 2511 - Phar Lap 386/DOS-Extender - ISSUE REAL-MODE INTERRUPT

  INT 21 2512 - Phar Lap 386/DOS-Extender - LOAD PROGRAM FOR DEBUGGING

  INT 21 2513 - Phar Lap 386/DOS-Extender - ALIAS SEGMENT DESCRIPTOR

  INT 21 2514 - Phar Lap 386/DOS-Extender - CHANGE SEGMENT ATTRIBUTES

  INT 21 2515 - Phar Lap 386/DOS-Extender - GET SEGMENT ATTRIBUTES

  INT 21 2516 - Phar Lap 386/DOS-Extender v2.2+ - FREE ALL MEMORY OWNED BY LDT

  INT 21 2517 - Phar Lap 386/DOS-Extender v2.1c+ - GET INFO ON DOS DATA BUFFER

  INT 21 2518 - Phar Lap 386/DOS-Extender 2.1c+ - SPECIFY HANDLER FOR MOVED SEGMENTS

  INT 21 2519 - Phar Lap 386/DOS-Extender VMM - GET ADDITIONAL MEMORY ERROR INFO

  INT 21 251A - Phar Lap 386/DOS-Extender VMM - LOCK PAGES IN MEMORY

  INT 21 251B - Phar Lap 386/DOS-Extender VMM - UNLOCK PAGES

  INT 21 251C - Phar Lap 386/DOS-Extender VMM v2.1c+ - FREE PHYSICAL MEMORY PAGES

  INT 21 251D - Phar Lap 386/DOS-Extender VMM v2.1c - READ PAGE-TABLE ENTRY

  INT 21 251E - Phar Lap 386/DOS-Extender VMM v2.1c - WRITE PAGE-TABLE ENTRY

  INT 21 251F - Phar Lap 386/DOS-Extender VMM - EXHANGE TWO PAGE-TABLE ENTRIES

  INT 21 2520 - Phar Lap 386/DOS-Extender VMM - GET MEMORY STATISTICS

  INT 21 2521 - Phar Lap 386/DOS-Extender VMM - LIMIT PROGRAM'S EXTENDED MEM USAGE

  INT 21 2522 - Phar Lap 386/DOS-Ext VMM v2.2+ - SPECIFY ALTERNATE PAGE-FAULT HANDLR

  INT 21 2523 - Phar Lap 386/DOS-Ext VMM v2.2+ - SPECIFY OUT-OF-SWAP-SPACE HANDLER

  INT 21 2524 - Phar Lap 386/DOS-Ext VMM v2.2+ - INSTALL PAGE-REPLACEMENT HANDLERS

  INT 21 2525 - Phar Lap 386/DOS-Extender VMM - LIMIT PROGRAM'S CONVENT'L MEM USAGE

  INT 21 2526 - Phar Lap 386/DOS-Extender - GET CONFIGURATION INFORMATION

  INT 21 2527 - Phar Lap 386/DOS-Extender VMM - EN/DISABLE STATE SAVE ON INTERRUPTS

  INT 21 2528 - Phar Lap 386/DOS-Extender VMM - READ REGISTERS AFTER CTRL-C INT

  INT 21 2529 - Phar Lap 386/DOS-Extender - LOAD FLAT MODEL .EXP or .REX FILE

  INT 21 252A - Phar Lap 386/DOS-Extender VMM - NEW LOAD PROGRAM FOR DEBUG

  INT 21 252B - Phar Lap 386/DOS-Extender - CREATE UNMAPPED PAGES

  INT 21 252B - Phar Lap 386/DOS-Extender - CREATE ALLOCATED PAGES

  INT 21 252B - Phar Lap 386/DOS-Extender - CREATE PHYSICAL DEVICE PAGES

  INT 21 252B - Phar Lap 386/DOS-Extender - MAP DATA FILE

  INT 21 252B - Phar Lap 386/DOS-Extender - GET PAGE TYPES

  INT 21 252B - Phar Lap 386/DOS-Extender - VIRTUAL MEMORY MANAGEMENT - PAGE LOCKING

  INT 21 252B - Phar Lap 386/DOS-Extender - FREE PHYSICAL PAGES

  INT 21 252B - Phar Lap 386/DOS-Extender v4.1 - GET PAGETABLE ENTRY/PAGE TABLE INFO

  INT 21 252B - Phar Lap 386/DOS-Extender v4.1 - SET PAGETABLE ENTRY/PAGE TABLE INFO

  INT 21 252B - Phar Lap 386/DOS-Extender v4.1+ - MAP DATA FILE AT FILE OFFSET

  INT 21 252C - Phar Lap 386/DOS-Ext VMM v3.0 - ADD UNMAPPED PAGES AT END OF SEGMENT

  INT 21 252D - Phar Lap 386/DOS-Extender VMM v2.3+ - CLOSE VMM FILE HANDLE

  INT 21 252E - Phar Lap 386/DOS-Extender VMM v2.3+ - GET/SET VMM PARAMETERS

  INT 21 252F - Phar Lap 386/DOS-Ext VMM v3.0 - WRITE RECORD TO VMM PAGE LOG FILE

  INT 21 2530 - Phar Lap 386/DOS-Ext VMM v2.3+ - SET SIZE OF BUFFER FOR DOS CALLS

  INT 21 2531 - Phar Lap 386/DOS-Extender VMM v3.0 - READ/WRITE LDT DESCRIPTOR

  INT 21 2532 - Phar Lap 386/DOS-Extender - GET EXCEPTION HANDLER VECTOR

  INT 21 2533 - Phar Lap 386/DOS-Extender - SET EXCEPTION HANDLER VECTOR

  INT 21 2534 - Phar Lap 386/DOS-Extender v3.0+ - GET INTERRUPT FLAG

  INT 21 2535 - Phar Lap 386/DOS-Extender v3.0+ - READ/WRITE SYSTEM REGISTERS

  INT 21 2536 - Phar Lap 386/DOS-Ext VMM v3.0+ - MIN/MAX EXTENDED/CONV MEMORY USAGE

  INT 21 2537 - Phar Lap 386/DOS-Ext VMM v3.0 - ALLOCATE DOS MEMORY ABOVE DOS BUFFER

  INT 21 2538 - Phar Lap 386/DOS-Ext VMM v3.0 - READ PROTMODE REGS AFTER SFTWARE INT

  INT 21 2539 - Phar Lap 386/DOS-Ext VMM v3.0 - GET OFFSET OF .EXP FILE HEADER

  INT 21 253A - Phar Lap 386/DOS-Extender v3.0+ - INSTALL MOD. SEG FAILURE HANDLER

  INT 21 253B - Phar Lap 386/DOS-Extender v3.0+ - JUMP TO REAL MODE CODE, NO CONTEXT

  INT 21 253C - Phar Lap 386/DOS-Extender VMM v3.0+ - SHRINK 386|VMM SWAP FILE

  INT 21 253D - Phar Lap 386/DOS-Extender v4.0+ - READ/WRITE IDT DESCRIPTOR

  INT 21 253F - Phar Lap 386/DOS-Extender v6.0+ - ALLOCATE LDT DESCRIPTOR

  INT 21 2540 - Phar Lap 386/DOS-Extender v6.0+ - FORCE ALIAS OF SEGMENT

  INT 21 2544 - Phar Lap 386/DOS-Extender v6.0+ - FREE DLL

  INT 21 2545 - Phar Lap 386/DOS-Extender v6.0+ - GET/SET PROCEDURE ADDRESS

  INT 21 2546 - Phar Lap 386/DOS-Extender v6.0+ - GET MODULE HANDLE

  INT 21 25C0 - Phar Lap 386/DOS-Extender - ALLOCATE MS-DOS MEMORY BLOCK

  INT 21 25C1 - Phar Lap 386/DOS-Extender - RELEASE MS-DOS MEMORY BLOCK

  INT 21 25C2 - Phar Lap 386/DOS-Extender - MODIFY MS-DOS MEMORY BLOCK

  INT 21 25C3 - Phar Lap 386/DOS-Extender - EXECUTE PROGRAM

  INT 21 26-- - DOS 1+ - CREATE NEW PROGRAM SEGMENT PREFIX

  INT 21 27-- - DOS 1+ - RANDOM BLOCK READ FROM FCB FILE

  INT 21 28-- - DOS 1+ - RANDOM BLOCK WRITE TO FCB FILE

  INT 21 29-- - DOS 1+ - PARSE FILENAME INTO FCB

  INT 21 2A-- - DOS 1+ - GET SYSTEM DATE

  INT 21 2B-- - DOS 1+ - SET SYSTEM DATE

  INT 21 2B-- - AI Architects - ??? - INSTALLATION CHECK

  INT 21 2B-- - Super PC-Kwik v3.20+ - INSTALLATION CHECK

  INT 21 2B-- - DESQview - INSTALLATION CHECK

  INT 21 2B-- - ELRES v1.1 - INSTALLATION CHECK

  INT 21 2B01 - Quarterdeck DOS-UP.SYS v2.00 - INSTALLATION CHECK

  INT 21 2B01 - TAME v2.10+ - INSTALLATION CHECK

  INT 21 2B16 - VIRUS - "Maltese Amoeba" - INSTALLATION CHECK

  INT 21 2B44 - pcANYWHERE IV/LAN - INSTALLATION CHECK

  INT 21 2B-- - WDTSR.COM - INSTALLATION CHECK

  INT 21 2B-- - bitFOSS - INSTALLATION CHECK

  INT 21 2B-- - bitFOSSI - INSTALLATION CHECK

  INT 21 2C-- - DOS 1+ - GET SYSTEM TIME

  INT 21 2C-- - VIRUS - "Anti Pode 2.0" - INSTALLATION CHECK

  INT 21 2C00 - SKUDO - INSTALLATION CHECK

  INT 21 2C2C - VIRUS - "LockJaw/Proto-T" - INSTALLATION CHECK

  INT 21 2D-- - DOS 1+ - SET SYSTEM TIME

  INT 21 2D01 - PC-Mix - INSTALLATION CHECK

  INT 21 2E-- - DOS 1+ - SET VERIFY FLAG

  INT 21 2F-- - DOS 2+ - GET DISK TRANSFER AREA ADDRESS

  INT 21 30-- - DOS 2+ - GET DOS VERSION

  INT 21 30-- - Phar Lap 386/DOS-Extender, Intel Code Builder - INSTALLATION CHECK

  INT 21 30-- - VIRUS - "Possessed" - INSTALLATION CHECK

  INT 21 3000 - CTask 2.0+ - INSTALLATION CHECK

  INT 21 3000 - PC-MOS/386 v3.0 - INSTALLATION CHECK/GET VERSION

  INT 21 3000 - VIRUS - "Jackal" - INSTALLATION CHECK

  INT 21 3022 - StopPrg v2.0 - INSTALLATION CHECK

  INT 21 30F1 - VIRUS - "Dutch-555"/"Quit 1992" - INSTALLATION CHECK

  INT 21 30FF - DESQ??? - INSTALLATION CHECK

  INT 21 31-- - DOS 2+ - TERMINATE AND STAY RESIDENT

  INT 21 32-- - DOS 2+ - GET DOS DRIVE PARAMETER BLOCK FOR SPECIFIC DRIVE

  INT 21 33-- - DOS 2+ - EXTENDED BREAK CHECKING

  INT 21 3302 - DOS 3.x+ internal - GET AND SET EXTENDED CONTROL-BREAK CHECKING STATE

  INT 21 3303 - DOS 4.0+ - UNUSED

  INT 21 3304 - DOS 4.0+ - UNUSED

  INT 21 3305 - DOS 4.0+ - GET BOOT DRIVE

  INT 21 3306 - DOS 5+ - GET TRUE VERSION NUMBER

  INT 21 3306 - CBIS POWERLAN - NETWORK REDIRECTOR - ???

  INT 21 330F - VIRUS - "Burghofer" - INSTALLATION CHECK

  INT 21 3341 - Diet Disk v1.0 - INSTALLATION CHECK

  INT 21 33DA - VIRUS - "CoffeeShop" - INSTALLATION CHECK

  INT 21 33E0 - VIRUS - "Oropax" - INSTALLATION CHECK

  INT 21 34-- - DOS 2+ - GET ADDRESS OF INDOS FLAG

  INT 21 35-- - DOS 2+ - GET INTERRUPT VECTOR

  INT 21 3501 - FlashTek X-32VM - ALLOCATE PROTECTED-MODE SELECTOR

  INT 21 3502 - FlashTek X-32VM - DEALLOCATE PROTECTED-MODE SELECTOR

  INT 21 3503 - FlashTek X-32VM - SET SELECTOR BASE ADDRESS

  INT 21 3504 - FlashTek X-32VM - GET SELECTOR BASE ADDRESS

  INT 21 3505 - FlashTek X-32VM - SET SELECTOR LIMIT

  INT 21 350A - FlashTek X-32VM - PHYSICAL ADDRESS MAPPING

  INT 21 350B - FlashTek X-32VM - UPDATE AND RETURN AVAILABLE FREE MEMORY

  INT 21 350C - FlashTek X-32VM - ALLOCATE A BLOCK OF MEMORY

  INT 21 350D - FlashTek X-32VM - RESERVE BLOCK OF MEMORY FOR 32-BIT STACK

  INT 21 357F - VIRUS - "Agiplan"/"Month 4-6" - INSTALLATION CHECK

  INT 21 36-- - DOS 2+ - GET FREE DISK SPACE

  INT 21 3700 - DOS 2+ - "SWITCHAR" - GET SWITCH CHARACTER

  INT 21 3701 - DOS 2+ - "SWITCHAR" - SET SWITCH CHARACTER

  INT 21 37-- - DOS 2.x and 3.3+ only - "AVAILDEV" - SPECIFY \DEV\ PREFIX USE

  INT 21 37D0 - DIET v1.43e - TSR INSTALLATION CHECK

  INT 21 37D1 - DIET v1.43e - GET DIET.EXE RESIDENT SEGMENT

  INT 21 37D2 - DIET v1.43e - GET TSR CONTROL FLAGS

  INT 21 37D3 - DIET v1.43e - SET TSR CONTROL FLAGS

  INT 21 37D4 - DIET v1.43e - GET TSR OPTIONS

  INT 21 37D5 - DIET v1.43e - SET TSR OPTIONS

  INT 21 37D6 - DIET v1.43e - GET TEMPORARY DIRECTORY NAMES

  INT 21 37D7 - DIET v1.43e - SET TEMPORARY DIRECTORY NAMES

  INT 21 37DC - DIET v1.43e - SET ADDRESS OF EXTERNAL PROCEDURE

  INT 21 37DD - DIET v1.43e - RELEASE EXTERNAL PROCEDURE

  INT 21 37DE - DIET v1.43e - READ EMS STATUS

  INT 21 37DF - DIET v1.43e - UNLOAD TSR

  INT 21 38-- - DOS 2+ - GET COUNTRY-SPECIFIC INFORMATION

  INT 21 38-- - DOS 3.0+ - SET COUNTRY CODE

  INT 21 39-- - DOS 2+ - "MKDIR" - CREATE SUBDIRECTORY

  INT 21 3A-- - DOS 2+ - "RMDIR" - REMOVE SUBDIRECTORY

  INT 21 3B-- - DOS 2+ - "CHDIR" - SET CURRENT DIRECTORY

  INT 21 3C-- - DOS 2+ - "CREAT" - CREATE OR TRUNCATE FILE

  INT 21 3D-- - DOS 2+ - "OPEN" - OPEN EXISTING FILE

  INT 21 3DFF - VIRUS - "JD-448" - INSTALLATION CHECK

  INT 21 3E-- - DOS 2+ - "CLOSE" - CLOSE FILE

  INT 21 3F-- - DOS 2+ - "READ" - READ FROM FILE OR DEVICE

  INT 21 3F-- - Turbo Debug HARDWARE BREAKPOINTS - READ STATUS BLOCK

  INT 21 3F-- - PC/TCP IPCUST.SYS - READ CONFIGURATION DATA

  INT 21 3F-- - WORKGRP.SYS - GET ENTRY POINT

  INT 21 3F-- - BW-TCP - GET DRIVER INFO

  INT 21 3F-- - Trusted Access - NB.SYS - GET STATE

  INT 21 3F-- - IFSHLP.SYS - GET ENTRY POINT

  INT 21 40-- - DOS 2+ - "WRITE" - WRITE TO FILE OR DEVICE

  INT 21 40-- - Turbo Debug HARDWARE BREAKPOINTS - SEND CMD TO HARDWARE BRKPNT DRIVER

  INT 21 40-- - PC/TCP IPCUST.SYS - WRITE CONFIGURATION DATA

  INT 21 40-- - Trusted Access - NB.SYS - SET STATE

  INT 21 4000 - FARTBELL.EXE - INSTALLATION CHECK

  INT 21 4001 - FARTBELL.EXE - FORCE NOISE

  INT 21 41-- - DOS 2+ - "UNLINK" - DELETE FILE

  INT 21 4101 - SoftLogic Data Guardian - ???

  INT 21 42-- - DOS 2+ - "LSEEK" - SET CURRENT FILE POSITION

  INT 21 4203 - VIRUS - "Shake" - INSTALLATION CHECK

  INT 21 4243 - VIRUS - "Invader" - INSTALLATION CHECK

  INT 21 4300 - DOS 2+ - GET FILE ATTRIBUTES

  INT 21 4301 - DOS 2+ - "CHMOD" - SET FILE ATTRIBUTES

  INT 21 4302 - DOS 7 (Chicago) - GET VOLUME INFORMATION

  INT 21 4302 - DR-DOS 3.41+ internal - GET ACCESS RIGHTS

  INT 21 4303 - DR-DOS 3.41+ internal - SET ACCESS RIGHTS AND PASSWORD

  INT 21 4304 - DR-DOS 5.0-6.0 internal - GET ENCRYPTED PASSWORD

  INT 21 4305 - DR-DOS 5.0-6.0 internal - SET EXTENDED FILE ATTRIBUTES

  INT 21 4306 - DR-DOS 6.0 - GET FILE OWNER

  INT 21 4307 - DR-DOS 6.0 - SET FILE OWNER

  INT 21 4310 - Banyan VINES 2.1+ - GET EXTENDED FILE ATTRIBUTES

  INT 21 4311 - Banyan VINES 2.1+ - SET EXTENDED FILE ATTRIBUTES

  INT 21 4321 - Q87, Q387 - INSTALLATION CHECK

  INT 21 4321 - Q87, Q387 - ENABLE EMULATOR

  INT 21 4321 - Q87, Q387 - DISABLE EMULATOR

  INT 21 4380 - Novell DOS 7 - UNDELETE PENDING DELETE FILE

  INT 21 4381 - Novell DOS 7 - PURGE PENDING DELETE FILE

  INT 21 4400 - DOS 2+ - IOCTL - GET DEVICE INFORMATION

  INT 21 4401 - DOS 2+ - IOCTL - SET DEVICE INFORMATION

  INT 21 4402 - DOS 2+ - IOCTL - READ FROM CHARACTER DEVICE CONTROL CHANNEL

  INT 21 4402 - Network Driver Interface Specification (NDIS) 2.0.1 - PROTOCOL MANAGER

  INT 21 4402 - IBM SYSTEM 36/38 WORKSTATION EMULATION - VDI.SYS - GET ???

  INT 21 4402 - LASTBYTE.SYS v1.19 - IOCTL - GET ??? TABLE

  INT 21 4402 - HIGHUMM.SYS v1.17+ - IOCTL - GET API ADDRESS

  INT 21 4402 - SMARTDRV.SYS v3.x only - IOCTL - GET CACHE STATUS

  INT 21 4402 - CD-ROM device driver - IOCTL INPUT

  INT 21 4402 - Quarterdeck - QEMM-386 v5+ - GET API ENTRY POINT

  INT 21 4402 - Quarterdeck - HOOKROM.SYS - GET HOOKED VECTOR TABLE

  INT 21 4402 - Advanced SCSI Programming Interface (ASPI) - INTERFACE

  INT 21 4402 - Qualitas 386MAX v6.00+ - IOCTL INPUT - GET STATE

  INT 21 4402 - PGS1600.DEV - IOCTL - GET CONFIGURATION INFO

  INT 21 4402 - PC/TCP IPCUST.SYS - RESET CONFIGURATION DATA READ POINTER

  INT 21 4402 - WORKGRP.SYS - GET API ENTRY POINT

  INT 21 4402 - 10NET v5.0 - 10BEUI.DOS - API

  INT 21 4402 - 10NET v5.0 - 10MEMMGR.SYS - API

  INT 21 4402 - Compaq AG1024.SYS - RGDI - GET DRIVER LOCATION

  INT 21 4402 - FTPSOFT.DOS v3.1 - GET ???

  INT 21 4402 - PenDOS PENDEV.SYS - GET ENTRY POINTS

  INT 21 4402 - LAN Manager - TCPDRV.DOS - API

  INT 21 4402 - PC Tools 9 CPRLOW.EXE - GET CODE AND DATA ADDRESSES

  INT 21 4402 - Creative Technology CTMMSYS.SYS v1.00.01 - API

  INT 21 4402 - Creative Technology CTSB2.SYS v1.01.01 - API

  INT 21 4402 - Novell DOS 7 EMM386.EXE - GET STATE RECORD???

  INT 21 4402 - Memory Managers - GET API ENTRY POINT

  INT 21 4402 - Memory Managers - GET EMM IMPORT STRUCTURE ADDRESS

  INT 21 4402 - Memory Managers - GET MEMORY MANAGER VERSION

  INT 21 4402 - Microsoft EMM386.EXE v4.45 - GET MEMORY MANAGER INFORMATION

  INT 21 4402 - IFSHLP.SYS - GET ENTRY POINT

  INT 21 4403 - DOS 2+ - IOCTL - WRITE TO CHARACTER DEVICE CONTROL CHANNEL

  INT 21 4403 - SMARTDRV.SYS v3.x only - IOCTL - CACHE CONTROL

  INT 21 4403 - CD-ROM device driver - IOCTL OUTPUT

  INT 21 4403 - Brian Antoine Seagate ST-01 SCSI.SYS - IOCTL - EXECUTE COMMANDS

  INT 21 4403 - AI Architects - OS/x86??? - API

  INT 21 4403 - PGS1600.DEV - IOCTL - SET CONFIGURATION???

  INT 21 4403 - PC/TCP IPCUST.SYS - RESET CONFIGURATION DATA READ POINTER

  INT 21 4403 - Compaq AG1024.SYS - CPQ_MGES - IOCTL OUTPUT

  INT 21 4403 - Compaq AG1024.SYS - RGDI - IOCTL OUTPUT

  INT 21 4403 - Qualitas 386MAX v6.01+ - TURN 386MAX OFF

  INT 21 4403 - Qualitas 386MAX v6.01+ - TURN 386MAX ON

  INT 21 4403 - Qualitas 386MAX v6.01+ - SET STATE

  INT 21 4403 - Qualitas 386MAX v7.00+ - LIMIT AUTOMATIC ACTIVATION TO STD EMS CALLS

  INT 21 4403 - Qualitas 386MAX v7.00+ - ALLOW AUTOMATIC ACTIVATION ON ANY INT 67

  INT 21 4403 - PenDOS PENDEV.SYS - ???

  INT 21 4404 - DOS 2+ - IOCTL - READ FROM BLOCK DEVICE CONTROL CHANNEL

  INT 21 4404 - Stacker - GET DEVICE DRIVER ADDRESS AND SET VOLUME NUMBER

  INT 21 4404 - Stacker - GET STACVOL FILE SECTORS

  INT 21 4404 - DUBLDISK.SYS v2.6 - GET INFO

  INT 21 4404 - DBLSPACE.BIN - IOCTL - FLUSH OR INVALIDATE INTERNAL CACHES

  INT 21 4404 - DBLSPACE.BIN v6.2 - IOCTL - GET ??? FOR SPECIFIED DRIVE

  INT 21 4404 - DoubleTools v1.0 - GET ???

  INT 21 4404 - xDISK v3.31 - CONFIGURE

  INT 21 4404 - COMBI-disk v1.13 - GET DATA RECORD

  INT 21 4404 - SFS v1.00 - GET CONFIGURATION INFORMATION

  INT 21 4405 - DOS 2+ - IOCTL - WRITE TO BLOCK DEVICE CONTROL CHANNEL

  INT 21 4405 - Brian Antoine Seagate ST-01 SCSI.SYS - IOCTL - EXECUTE COMMANDS

  INT 21 4405 - DBLSPACE.BIN - IOCTL - FLUSH OR INVALIDATE INTERNAL CACHES

  INT 21 4405 - xDISK v3.31 - ???

  INT 21 4405 - COMBI-disk v1.13 - CONTROL COMBI-disk

  INT 21 4405 - SFS v1.00 - DRIVER CONTROL

  INT 21 4406 - DOS 2+ - IOCTL - GET INPUT STATUS

  INT 21 4407 - DOS 2+ - IOCTL - GET OUTPUT STATUS

  INT 21 4408 - DOS 3.0+ - IOCTL - CHECK IF BLOCK DEVICE REMOVABLE

  INT 21 4409 - DOS 3.1+ - IOCTL - CHECK IF BLOCK DEVICE REMOTE

  INT 21 440A - DOS 3.1+ - IOCTL - CHECK IF HANDLE IS REMOTE

  INT 21 440B - DOS 3.1+ - IOCTL - SET SHARING RETRY COUNT

  INT 21 440C - DOS 3.2+ - IOCTL - GENERIC CHARACTER DEVICE REQUEST

  INT 21 440C - Greg Shenaut ASPITAPE.SYS - INTERFACE

  INT 21 440D - DOS 3.2+ - IOCTL - GENERIC BLOCK DEVICE REQUEST

  INT 21 440E - DOS 3.2+ - IOCTL - GET LOGICAL DRIVE MAP

  INT 21 440F - DOS 3.2+ - IOCTL - SET LOGICAL DRIVE MAP

  INT 21 4410 - DOS 5+ - IOCTL - QUERY GENERIC IOCTL CAPABILITY (HANDLE)

  INT 21 4410 - NewSpace - ENABLE DRIVER

  INT 21 4411 - DOS 5+ - IOCTL - QUERY GENERIC IOCTL CAPABILITY (DRIVE)

  INT 21 4411 - NewSpace - DISABLE DRIVER

  INT 21 4412 - DR-DOS 5.0-6.0 - DETERMINE DOS TYPE

  INT 21 4412 - NewSpace - INSTALLATION CHECK???

  INT 21 4413 - NewSpace - GET ???

  INT 21 4414 - DR-DOS 5.0-6.0 - SET GLOBAL PASSWORD

  INT 21 4414 - NewSpace - DEBUGGING DUMP

  INT 21 44-- - DR-DOS 5.0-6.0 - HISTORY BUFFER, SHARE, AND HILOAD CONTROL

  INT 21 4451 - Concurrent DOS v3.2+ - INSTALLATION CHECK

  INT 21 4452 - DR-DOS 3.41+ - DETERMINE DOS TYPE/GET DR-DOS VERSION

  INT 21 4454 - DR-DOS 3.41+ - SET GLOBAL PASSWORD

  INT 21 4456 - DR-DOS 5.0+ - HISTORY BUFFER CONTROL

  INT 21 4457 - DR-DOS 5.0+ - SHARE/HILOAD CONTROL

  INT 21 4457 - DR-DOS 6.0 - GET SHARE STATUS

  INT 21 4458 - DR-DOS 5.0+ internal - GET POINTER TO INTERNAL VARIABLE TABLE

  INT 21 4459 - DR MultiUser DOS 5.0 - API

  INT 21 44E0 - Sun PC-NFS - API???

  INT 21 44FF - NewSpace - ???

  INT 21 45-- - DOS 2+ - "DUP" - DUPLICATE FILE HANDLE

  INT 21 46-- - DOS 2+ - "DUP2", "FORCEDUP" - FORCE DUPLICATE FILE HANDLE

  INT 21 47-- - DOS 2+ - "CWD" - GET CURRENT DIRECTORY

  INT 21 48-- - DOS 2+ - ALLOCATE MEMORY

  INT 21 49-- - DOS 2+ - FREE MEMORY

  INT 21 4A-- - DOS 2+ - RESIZE MEMORY BLOCK

  INT 21 4A-- - VIRUS???

  INT 21 4A-- - VIRUS???

  INT 21 4B-- - DOS 2+ - "EXEC" - LOAD AND/OR EXECUTE PROGRAM

  INT 21 4B-- - ELRES v1.0 only - INSTALLATION CHECK

  INT 21 4B04 - VIRUS - "MG", "699"/"Thirteen Minutes" - INSTALLATION CHECK

  INT 21 4B05 - DOS 5+ - SET EXECUTION STATE

  INT 21 4B20 - VIRUS - "Holocaust"/"Telefonica" - ???

  INT 21 4B21 - VIRUS - "Holocaust"/"Telefonica" - ???

  INT 21 4B25 - VIRUS - "1063"/"Mono" - INSTALLATION CHECK

  INT 21 4B40 - VIRUS - "Plastique"/"AntiCad" - INSTALLATION CHECK

  INT 21 4B41 - VIRUS - "Plastique"/"AntiCad" - ???

  INT 21 4B4A - VIRUS - "Jabberwocky" - INSTALLATION CHECK

  INT 21 4B4B - VIRUS - "Horse-2" - INSTALLATION CHECK

  INT 21 4B4D - VIRUS - "Murphy-2", "Patricia"/"Smack" - INSTALLATION CHECK

  INT 21 4B50 - VIRUS - "Plastique-2576"/"AntiCad-2576" - INSTALLATION CHECK

  INT 21 4B53 - VIRUS - "Horse" - INSTALLATION CHECK

  INT 21 4B53 - VIRUS - "One Half" - INSTALLATION CHECK

  INT 21 4B55 - VIRUS - "Sparse" - INSTALLATION CHECK

  INT 21 4B59 - VIRUS - "Murphy-1", "Murphy-4" - INSTALLATION CHECK

  INT 21 4B5E - VIRUS - "Brothers" - INSTALLATION CHECK

  INT 21 4B60 - VIRUS - "Plastique-2576"/"AntiCad-2576" - ???

  INT 21 4B87 - VIRUS - "Shirley" - INSTALLATION CHECK

  INT 21 4B95 - VIRUS - "Zherkov-1882" - INSTALLATION CHECK

  INT 21 4BA7 - VIRUS - "1876"/"Dash-em" - INSTALLATION CHECK

  INT 21 4BAA - VIRUS - "Nomenklatura" - INSTALLATION CHECK

  INT 21 4BAF - VIRUS - "948"/"Screenplus1", "Magnitogorsk" - INSTALLATION CHECK

  INT 21 4BDD - VIRUS - "Lozinsky"/"Zherkov" - INSTALLATION CHECK

  INT 21 4BEE - F-DRIVER.SYS v1.14+ - GRAB INT 21

  INT 21 4BF0 - DIET v1.10+ (Overlay Mode) - INSTALLATION CHECK

  INT 21 4BF1 - DIET v1.10+ (Overlay Mode) - EXPAND PROGRAM???

  INT 21 4BFE - VIRUS - "Hitchcock", "Dark Avenger-1028", "1193" - INSTALLATION CHECK

  INT 21 4BFF - VIRUS - "USSR-707", "Justice", "Europe 92" - INSTALLATION CHECK

  INT 21 4BFF - VIRUS - "Cascade" - INSTALLATION CHECK

  INT 21 4C-- - DOS 2+ - "EXIT" - TERMINATE WITH RETURN CODE

  INT 21 4C57 - Headroom - ???

  INT 21 4D-- - DOS 2+ - GET RETURN CODE (ERRORLEVEL)

  INT 21 4E-- - DOS 2+ - "FINDFIRST" - FIND FIRST MATCHING FILE

  INT 21 4E-- - WILDUNIX.COM internal - INSTALLATION CHECK

  INT 21 4F-- - DOS 2+ - "FINDNEXT" - FIND NEXT MATCHING FILE

  INT 21 50-- - DOS 2+ internal - SET CURRENT PROCESS ID (SET PSP ADDRESS)

  INT 21 51-- - DOS 2+ internal - GET CURRENT PROCESS ID (GET PSP ADDRESS)

  INT 21 52-- - DOS 2+ internal - "SYSVARS" - GET LIST OF LISTS

  INT 21 5252 - VIRUS - "516"/"Leapfrog" - INSTALLATION CHECK

  INT 21 53-- - DOS 2+ internal - TRANSLATE BIOS PARAMETER BLOCK TO DRIVE PARAM BLOCK

  INT 21 54-- - DOS 2+ - GET VERIFY FLAG

  INT 21 55-- - DOS 2+ internal - CREATE CHILD PSP

  INT 21 56-- - DOS 2+ - "RENAME" - RENAME FILE

  INT 21 5643 - VIRUS - "PS-MPC.Gold" - INSTALLATION CHECK

  INT 21 5700 - DOS 2+ - GET FILE'S DATE AND TIME

  INT 21 5701 - DOS 2+ - SET FILE'S DATE AND TIME

  INT 21 5702 - DOS 4.x only - GET EXTENDED ATTRIBUTES FOR FILE

  INT 21 5702 - OS/2 v1.1+ Family API - DosQFileInfo

  INT 21 5702 - OS/2 v1.1+ Compatibility Box Family API - DosQPathInfo

  INT 21 5703 - DOS 4.x only - GET EXTENDED ATTRIBUTE PROPERTIES

  INT 21 5703 - OS/2 v1.1+ Family API - DosSetFileInfo

  INT 21 5703 - OS/2 v1.1+ Family API - DosSetPathInfo

  INT 21 5704 - DOS 4.x only - SET EXTENDED ATTRIBUTES

  INT 21 5757 - IBM Genie - Resident Manager - INSTALLATION CHECK

  INT 21 5758 - Headroom - API

  INT 21 58-- - DOS 2.11+ - GET OR SET MEMORY ALLOCATION STRATEGY

  INT 21 58-- - DOS 5+ - GET OR SET UMB LINK STATE

  INT 21 58CC - VIRUS - "1067"/"Headcrash" - INSTALLATION CHECK

  INT 21 58DD - VIRUS - "1067"/"Headcrash" - GET ORIGINAL INT 21h VECTOR

  INT 21 59-- - DOS 3.0+ - GET EXTENDED ERROR INFORMATION

  INT 21 59-- - European MS-DOS 4.0 - GET HARD ERROR INFORMATION

  INT 21 5A-- - DOS 3.0+ - CREATE TEMPORARY FILE

  INT 21 5B-- - DOS 3.0+ - CREATE NEW FILE

  INT 21 5C-- - DOS 3.0+ - "FLOCK" - RECORD LOCKING

  INT 21 5D00 - DOS 3.1+ internal - SERVER FUNCTION CALL

  INT 21 5D01 - DOS 3.1+ internal - COMMIT ALL FILES FOR SPECIFIED COMPUTER/PROCESS

  INT 21 5D02 - DOS 3.1+ internal - SHARE.EXE - CLOSE FILE BY NAME

  INT 21 5D03 - DOS 3.1+ internal - SHARE.EXE - CLOSE ALL FILES FOR GIVEN COMPUTER

  INT 21 5D04 - DOS 3.1+ internal - SHARE.EXE - CLOSE ALL FILES FOR GIVEN PROCESS

  INT 21 5D05 - DOS 3.1+ internal - SHARE.EXE - GET OPEN FILE LIST ENTRY

  INT 21 5D06 - DOS 3.0+ internal - GET ADDRESS OF DOS SWAPPABLE DATA AREA

  INT 21 5D07 - DOS 3.1+ network - GET REDIRECTED PRINTER MODE

  INT 21 5D08 - DOS 3.1+ network - SET REDIRECTED PRINTER MODE

  INT 21 5D09 - DOS 3.1+ network - FLUSH REDIRECTED PRINTER OUTPUT

  INT 21 5D0A - DOS 3.1+ - SET EXTENDED ERROR INFORMATION

  INT 21 5D0B - DOS 4.x only internal - GET DOS SWAPPABLE DATA AREAS

  INT 21 5E00 - DOS 3.1+ network - GET MACHINE NAME

  INT 21 5E00 - 10NET v5.0 - GET MACHINE NAME

  INT 21 5E01 - DOS 3.1+ network - SET MACHINE NAME

  INT 21 5E01 - 10NET v5.0 - GET LOCAL 10NET CONFIGURATION TABLE

  INT 21 5E02 - DOS 3.1+ network - SET NETWORK PRINTER SETUP STRING

  INT 21 5E03 - DOS 3.1+ network - GET NETWORK PRINTER SETUP STRING

  INT 21 5E04 - DOS 3.1+ network - SET PRINTER MODE

  INT 21 5E04 - 10NET v5.0 - INITIATE PRINT JOB

  INT 21 5E05 - DOS 3.1+ network - GET PRINTER MODE

  INT 21 5E05 - 10NET v5.0 - TERMINATE PRINT JOB

  INT 21 5E06 - 10NET v5.0 - GET/SET 10NET WORKSTATION PRINTER SETUP STRUCTURE

  INT 21 5F00 - DOS 3.1+ network - GET REDIRECTION MODE

  INT 21 5F01 - DOS 3.1+ network - SET REDIRECTION MODE

  INT 21 5F02 - DOS 3.1+ network - GET REDIRECTION LIST ENTRY

  INT 21 5F03 - DOS 3.1+ network - REDIRECT DEVICE

  INT 21 5F04 - DOS 3.1+ network - CANCEL REDIRECTION

  INT 21 5F05 - DOS 4.0+ network - GET EXTENDED REDIRECTION LIST ENTRY

  INT 21 5F05 - STARLITE architecture - MAP LOCAL DRIVE LETTER TO REMOTE FILE SYSTEM

  INT 21 5F06 - Network - GET FULL REDIRECTION LIST

  INT 21 5F06 - STARLITE architecture - UNMAP DRIVE LETTER

  INT 21 5F07 - DOS 5+ - ENABLE DRIVE

  INT 21 5F07 - STARLITE architecture - MAKE NAMED OBJECT AVAILABLE ON NETWORK

  INT 21 5F08 - DOS 5+ - DISABLE DRIVE

  INT 21 5F08 - STARLITE architecture - REMOVE GLOBAL NETWORK NAME OF OBJECT

  INT 21 5F09 - STARLITE architecture - BIND TO NETWORK DEVICE

  INT 21 5F0A - STARLITE architecture - DETACH FROM NETWORK DEVICE

  INT 21 5F30 - LAN Manager Enhanced DOS - GET REDIRECTOR VERSION

  INT 21 5F32 - Named Pipes - LOCAL DosQNmPipeInfo

  INT 21 5F33 - Named Pipes - LOCAL DosQNmPHandState

  INT 21 5F34 - Named Pipes - LOCAL DosSetNmPHandState

  INT 21 5F35 - Named Pipes - LOCAL DosPeekNmPipe

  INT 21 5F36 - Named Pipes - LOCAL DosTransactNmPipe

  INT 21 5F37 - Named Pipes - DosCallNmPipe

  INT 21 5F38 - Named Pipes - LOCAL DosWaitNmPipe - AWAIT AVAIL. OF PIPE INSTANCE

  INT 21 5F39 - Named Pipes - LOCAL DosRawReadNmPipe

  INT 21 5F3A - Named Pipes - LOCAL DosRawWriteNmPipe

  INT 21 5F3B - LAN Manager Enhanced DOS - NetHandleSetInfo

  INT 21 5F3C - LAN Manager Enhanced DOS - NetHandleGetInfo

  INT 21 5F3D - LAN Manager Enhanced DOS - WRITE MAILSLOT???

  INT 21 5F3E - LAN Manager Enhanced DOS - LOCAL NetSpecialSMB

  INT 21 5F3F - LAN Manager Enhanced DOS - REMOTE API CALL

  INT 21 5F40 - LAN Manager Enhanced DOS - LOCAL NetMessageBufferSend

  INT 21 5F41 - LAN Manager Enhanced DOS - LOCAL NetServiceEnum

  INT 21 5F42 - LAN Manager Enhanced DOS - LOCAL NetServiceControl

  INT 21 5F43 - LAN Manager Enhanced DOS - LOCAL DosPrintJobGetId

  INT 21 5F44 - LAN Manager Enhanced DOS - LOCAL NetWkstaGetInfo

  INT 21 5F45 - LAN Manager Enhanced DOS - LOCAL NetWkstaSetInfo

  INT 21 5F46 - LAN Manager Enhanced DOS - LOCAL NetUseEnum

  INT 21 5F47 - LAN Manager Enhanced DOS - LOCAL NetUseAdd

  INT 21 5F48 - LAN Manager Enhanced DOS - LOCAL NetUseDel

  INT 21 5F49 - LAN Manager Enhanced DOS - NetUseGetInfo

  INT 21 5F4A - LAN Manager Enhanced DOS - LOCAL NetRemoteCopy

  INT 21 5F4B - LAN Manager Enhanced DOS - LOCAL NetRemoteMove

  INT 21 5F4C - LAN Manager Enhanced DOS - LOCAL NetServerEnum

  INT 21 5F4D - LAN Manager Enhanced DOS - DosMakeMailslot

  INT 21 5F4E - LAN Manager Enhanced DOS - DosDeleteMailslot

  INT 21 5F4F - LAN Manager Enhanced DOS - DosMailslotInfo

  INT 21 5F50 - LAN Manager Enhanced DOS - DosReadMailslot

  INT 21 5F51 - LAN Manager Enhanced DOS - DosPeekMailslot

  INT 21 5F52 - LAN Manager Enhanced DOS - DosWriteMailslot

  INT 21 5F53 - LAN Manager Enhanced DOS - NetServerEnum2

  INT 21 5F55 - LAN Manager Enhanced DOS - KILL ALL CONNECTIONS???

  INT 21 5F80 - LANtastic - GET LOGIN ENTRY

  INT 21 5F81 - LANtastic - LOGIN TO SERVER

  INT 21 5F82 - LANtastic - LOGOUT FROM SERVER

  INT 21 5F83 - LANtastic - GET USERNAME ENTRY

  INT 21 5F84 - LANtastic - GET INACTIVE SERVER ENTRY

  INT 21 5F85 - LANtastic - CHANGE PASSWORD

  INT 21 5F86 - LANtastic - DISABLE ACCOUNT

  INT 21 5F87 - LANtastic v3+ - GET ACCOUNT

  INT 21 5F88 - LANtastic v4.0+ - LOGOUT FROM ALL SERVERS

  INT 21 5F97 - LANtastic - COPY FILE

  INT 21 5F98 - LANtastic - SEND UNSOLICITED MESSAGE

  INT 21 5F99 - LANtastic - GET LAST RECEIVED UNSOLICITED MESSAGE

  INT 21 5F9A - LANtastic - GET MESSAGE PROCESSING FLAGS

  INT 21 5F9B - LANtastic - SET MESSAGE PROCESSING FLAGS

  INT 21 5F9C - LANtastic v3+ - POP UP LAST RECEIVED MESSAGE

  INT 21 5F9D - LANtastic v4.1+ - GET REDIRECTOR CONTROL BITS

  INT 21 5F9E - LANtastic v4.1+ - SET REDIRECTOR CONTROL BITS

  INT 21 5FA0 - LANtastic - GET QUEUE ENTRY

  INT 21 5FA1 - LANtastic - SET QUEUE ENTRY

  INT 21 5FA2 - LANtastic - CONTROL QUEUE

  INT 21 5FA3 - LANtastic v3+ - GET PRINTER STATUS

  INT 21 5FA4 - LANtastic v3+ - GET STREAM INFO

  INT 21 5FA5 - LANtastic v3+ - SET STREAM INFO

  INT 21 5FA7 - LANtastic - CREATE USER AUDIT ENTRY

  INT 21 5FA9 - LANtastic v4.1+ - SET EXTENDED QUEUE ENTRY

  INT 21 5FB0 - LANtastic - GET ACTIVE USER INFORMATION

  INT 21 5FB1 - LANtastic - GET SHARED DIRECTORY INFORMATION

  INT 21 5FB2 - LANtastic v3+ - GET USERNAME FROM ACCOUNT FILE

  INT 21 5FB3 - LANtastic v3+ - TRANSLATE PATH

  INT 21 5FB4 - LANtastic v3+ - CREATE INDIRECT FILE

  INT 21 5FB5 - LANtastic v3+ - GET INDIRECT FILE CONTENTS

  INT 21 5FB6 - LANtastic v4.1+ - SET AUTO-LOGIN DEFAULTS

  INT 21 5FB7 - LANtastic v4.1+ - GET AUTO-LOGIN DEFAULTS

  INT 21 5FC0 - LANtastic - GET TIME FROM SERVER

  INT 21 5FC8 - LANtastic v4.0+ - SCHEDULE SERVER SHUTDOWN

  INT 21 5FC9 - LANtastic v4.0+ - CANCEL SERVER SHUTDOWN

  INT 21 5FCA - LANtastic v4.0+ - STUFF SERVER KEYBOARD BUFFER

  INT 21 5FCB - LANtastic v4.1+ - TERMINATE USER

  INT 21 5FCC - LANtastic v4.1+ - GET/SET SERVER CONTROL BITS

  INT 21 5FCD - LANtastic v4.1+ - FLUSH SERVER CACHES

  INT 21 5FD0 - LANtastic - GET REDIRECTED PRINTER TIMEOUT

  INT 21 5FD1 - LANtastic - SET REDIRECTED PRINTER TIMEOUT

  INT 21 5FE0 - LANtastic - GET DOS SERVICE VECTOR

  INT 21 5FE1 - LANtastic - SET DOS SERVICE VECTOR

  INT 21 5FE2 - LANtastic - GET MESSAGE SERVICE VECTOR

  INT 21 5FE3 - LANtastic - SET MESSAGE SERVICE VECTOR

  INT 21 60-- - DOS 3.0+ - "TRUENAME" - CANONICALIZE FILENAME OR PATH

  INT 21 61-- - DOS 3.0+ - UNUSED

  INT 21 61-- - OS/2 v1.x FAPI - OS/2 FILE SYSTEM JOIN/SUBST

  INT 21 62-- - DOS 3.0+ - GET CURRENT PSP ADDRESS

  INT 21 6300 - DOS 2.25 only - GET LEAD BYTE TABLE ADDRESS

  INT 21 6300 - Far East DOS 3.2+ - GET DOUBLE BYTE CHARACTER SET LEAD-BYTE TABLE

  INT 21 6301 - DOS 2.25, Far East DOS 3.2+ - SET KOREAN (HANGEUL) INPUT MODE

  INT 21 6302 - DOS 2.25, Far East DOS 3.2+ - GET KOREAN (HANGEUL) INPUT MODE

  INT 21 6303 - VIRUS - "DOS IDLE" - INSTALLATION CHECK

  INT 21 6304 - VIRUS - "Replicator" - INSTALLATION CHECK

  INT 21 64-- - DOS 3.2+ internal - SET DEVICE DRIVER LOOKAHEAD FLAG

  INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - ENABLE AUTOMATIC TITLE SWITCH

  INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - SET SESSION TITLE

  INT 21 64-- - OS/2 v2.0+ Virtual DOS Machine - GET SESSION TITLE

  INT 21 64-- - OS/2 v2.1 Virtual DOS Machine - GET LASTDRIVE

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET SIZE OF PTDA JFT

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET SECOND SFT FLAGS WORD

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - UNLOAD DOSKRNL SYMBOLS & LOAD PROGR

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET WinOS2 CALL GATE ADDRESS

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - GET LOADING MESSAGE

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API support

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DOS32StartSession

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DosQFSAttach

  INT 21 64-- - OS/2 v2.1+ Virtual DOS Machine - OS/2 API DosForceDelete

  INT 21 65-- - DOS 3.3+ - GET EXTENDED COUNTRY INFORMATION

  INT 21 65-- - DOS 4.0+ - COUNTRY-DEPENDENT CHARACTER CAPITALIZATION

  INT 21 6523 - DOS 4.0+ - DETERMINE IF CHARACTER REPRESENTS YES/NO RESPONSE

  INT 21 65-- - DOS 4.0+ internal - COUNTRY-DEPENDENT FILENAME CAPITALIZATION

  INT 21 6601 - DOS 3.3+ - GET GLOBAL CODE PAGE TABLE

  INT 21 6602 - DOS 3.3+ - SET GLOBAL CODE PAGE TABLE

  INT 21 67-- - DOS 3.3+ - SET HANDLE COUNT

  INT 21 68-- - DOS 3.3+ - "FFLUSH" - COMMIT FILE

  INT 21 69-- - DOS 4.0+ internal - GET/SET DISK SERIAL NUMBER

  INT 21 69-- - DR-DOS 5.0 - NULL FUNCTION

  INT 21 6969 - VIRUS - "Rape-747" - INSTALLATION CHECK

  INT 21 69FF - CUBIT v4.00 - GET CUBIT INT 21 HANDLER

  INT 21 69FF - CUBIT v4.00 - UNINSTALL

  INT 21 6A-- - DOS 4.0+ - COMMIT FILE

  INT 21 6B-- - DOS 4.0 internal - IFS IOCTL

  INT 21 6B-- - DOS 5+ - NULL FUNCTION

  INT 21 6C00 - DOS 4.0+ - EXTENDED OPEN/CREATE

  INT 21 6C01 - OS/2 v2.0 - "DosOpen2"

  INT 21 6D-- - DOS 5+ ROM - FIND FIRST ROM PROGRAM

  INT 21 6D-- - OS/2 v1.x FAPI - "DosMkDir2"

  INT 21 6D-- - Novell DOS 7 - NOP

  INT 21 6E-- - DOS 5+ ROM - FIND NEXT ROM PROGRAM

  INT 21 6E-- - OS/2 v1.x FAPI - "DosENumAttrib"

  INT 21 6F-- - OS/2 v1.x FAPI - "DosQMaxEASize" - GET MAXIMUM SIZE OF EXTENDED ATTR

  INT 21 6F00 - DOS 5+ ROM - GET ROM SCAN START ADDRESS

  INT 21 6F01 - DOS 5+ ROM - SET ROM SCAN START ADDRESS

  INT 21 6F02 - DOS 5+ ROM - GET EXCLUSION REGION LIST

  INT 21 6F03 - DOS 5+ ROM - SET EXCLUSION REGION LIST

  INT 21 70-- - MS-DOS 7 (Windows95) - ??? (country-specific?)

  INT 21 7070 - PCW Weather Card interface - GET DATA SEGMENT

  INT 21 7070 - PCW Weather Card interface - INSTALLATION CHECK

  INT 21 71-- - MS-DOS 7 (Chicago) - LONG FILENAME FUNCTIONS

  INT 21 714E - Windows95 - LONG FILENAME - FIND FIRST MATCHING FILE

  INT 21 714F - Windows95 - LONG FILENAME - FIND NEXT MATCHING FILE

  INT 21 7160 - Windows95 - LONG FILENAME - "TRUENAME" - CANONICALIZE FILENAME OR PATH

  INT 21 71A0 - Windows95 - LONG FILENAME - GET VOLUME INFORMATION

  INT 21 71A1 - Windows95 - LONG FILENAME - "FindClose" - TERMINATE DIRECTORY SEARCH

  INT 21 72-- - MS-DOS 7 (Windows95) - ???

  INT 21 73-- - MS-DOS 7 (Windows95) - DRIVE LOCKING ???

  INT 21 76-- - VIRUS - "Klaeren"/"Hate" - INSTALLATION CHECK

  INT 21 7700 - VIRUS - "Growing Block" - INSTALLATION CHECK

  INT 21 7734 - SCROLLit v1.7 - INSTALLATION CHECK

  INT 21 7761 - WATCH.COM v3.2+ - INSTALLATION CHECK

  INT 21 7BCE - VIRUS - "Whisper"/"Taipan" - INSTALLATION CHECK???

  INT 21 7F-- - VIRUS - "Squeaker" - INSTALLATION CHECK

  INT 21 80-- - European MS-DOS 4.0 - "AEXEC" - EXECUTE PROGRAM IN BACKGROUND

  INT 21 8080 - PCW Weather Card interface - UNINSTALL PCW.COM AND FREE MEMORY

  INT 21 81-- - European MS-DOS 4.0 - "FREEZE" - STOP A PROCESS

  INT 21 82-- - European MS-DOS 4.0 - "RESUME" - RESTART A PROCESS

  INT 21 83-- - European MS-DOS 4.0 - "PARTITION" - GET/SET FOREGROUND PARTITION SIZE

  INT 21 83-- - VIRUS - "SVC" - INSTALLATION CHECK

  INT 21 84-- - VIRUS - "SVC 5.0" or "SVC 6.0" - INSTALLATION CHECK

  INT 21 8400 - European MS-DOS 4.0 - "CREATMEM" - CREATE A SHARED MEMORY AREA

  INT 21 8401 - European MS-DOS 4.0 - "GETMEM" - OBTAIN ACCESS TO SHARED MEMORY AREA

  INT 21 8402 - European MS-DOS 4.0 - "RELEASEMEM" - FREE SHARED MEMORY AREA

  INT 21 85-- - European MS-DOS 4.0 - ???

  INT 21 86-- - European MS-DOS 4.0 - "SETFILETABLE" - INSTALL NEW FILE HANDLE TABLE

  INT 21 87-- - European MS-DOS 4.0 - "GETPID" - GET PROCESS IDENTIFIER

  INT 21 88-- - European MS-DOS 4.0 - ???

  INT 21 89-- - European MS-DOS 4.0 - SLEEP

  INT 21 89-- - VIRUS - "Vriest" - INSTALLATION CHECK

  INT 21 8A-- - European MS-DOS 4.0 - "CWAIT" - WAIT FOR CHILD TO TERMINATE

  INT 21 8B-- - European MS-DOS 4.0 - ???

  INT 21 8C-- - European MS-DOS 4.0 - SET SIGNAL HANDLER

  INT 21 8D-- - European MS-DOS 4.0 - SEND SIGNAL

  INT 21 8E00 - European MS-DOS 4.0 - "SETPRI" - GET/SET PROCESS PRIORITY

  INT 21 8F-- - European MS-DOS 4.0 - ???

  INT 21 90-- - European MS-DOS 4.0 - ???

  INT 21 90-- - VIRUS - "Carioca" - INSTALLATION CHECK

  INT 21 91-- - European MS-DOS 4.0 - ???

  INT 21 92-- - European MS-DOS 4.0 - ???

  INT 21 93-- - European MS-DOS 4.0 - "PIPE" - CREATE A NEW PIPE

  INT 21 94-- - European MS-DOS 4.0 - ???

  INT 21 95-- - European MS-DOS 4.0 - HARD ERROR PROCESSING

  INT 21 96-- - European MS-DOS 4.0 - ???

  INT 21 97-- - European MS-DOS 4.0 - ???

  INT 21 9753 - VIRUS - "Nina" - INSTALLATION CHECK

  INT 21 98-- - European MS-DOS 4.0 - ???

  INT 21 99-- - European MS-DOS 4.0 - "PBLOCK" - BLOCK A PROCESS

  INT 21 9A-- - European MS-DOS 4.0 - "PRUN" - UNBLOCK A PROCESS

  INT 21 9AD5 - VIRUS - "Massacre/Beavis" - INSTALLATION CHECK

  INT 21 A0-- - Attachmate Extra! - GET 3270 DISPLAY STATE

  INT 21 A1-- - Attachmate Extra! - SET 3270 DISPLAY STATE

  INT 21 A1D5 - VIRUS - "789"/"Filehider" - INSTALLATION CHECK

  INT 21 A2-- - Attachmate Extra! - SET HOST WINDOW STATE

  INT 21 A3-- - Attachmate Extra! - SEND KEYSTROKES TO HOST WINDOW

  INT 21 A4-- - Attachmate Extra! - GET HOST WINDOW BUFFER ADDRESS

  INT 21 A5-- - Attachmate Extra! - GET HOST WINDOW CURSOR POSITION

  INT 21 A55A - VIRUS - "Eddie-2" - INSTALLATION CHECK

  INT 21 AA00 - VIRUS - "Blinker" - INSTALLATION CHECK

  INT 21 AA03 - VIRUS - "Backtime" - INSTALLATION CHECK

  INT 21 AB-- - VIRUS - "600" or "Voronezh"-family - INSTALLATION CHECK

  INT 21 ABCD - VIRUS - "SuperVirus 2" - INSTALLATION CHECK

  INT 21 AF-- - Attachmate Extra! - GET TRANSLATE TABLE ADDRESS

  INT 21 B300 - Novell NetWare - CHECK LIP/PACKET SIGNING/IPX CHECKSUM SUPPORT???

  INT 21 B301 - Novell NetWare - CHECK SIGNATURE LEVEL???

  INT 21 B302 - Novell NetWare - START PACKET SIGNING

  INT 21 B304 - Novell NetWare - SET SIGNATURE LEVEL

  INT 21 B306 - Novell NetWare - RENEGOTIATE SECURITY LEVEL

  INT 21 B4-- - Novell NetWare - "AttachHandle"

  INT 21 B500 - Novell NetWare - VNETWARE.386 API - GET INSTANCE DATA

  INT 21 B501 - Novell NetWare - VNETWARE.386 API - END VIRTUAL MACHINE

  INT 21 B502 - Novell NetWare - VNETWARE.386 API - START VIRTUAL MACHINE

  INT 21 B5-- - Novell NetWare shell 3.01 - TASK MODE CONTROL

  INT 21 B505 - Novell NetWare - VNETWARE.386 API - SET VIRTUAL MACHINE ID

  INT 21 B506 - Novell NetWare - VNETWARE.386 API - GET VIRTUAL MACH SUPPORT LEVEL

  INT 21 B507 - Novell NetWare - NetWare Shell - GET NUMBER OF PACKET BURST BUFFERS

  INT 21 B6-- - Novell NetWare - FILE SERVICES - EXTENDED FILE ATTRIBUTES

  INT 21 B7-- - Novell NetWare - "HoldFileModeSet" (obsolete)

  INT 21 B8-- - Attachmate Extra! - DISABLE HOST BUFFER UPDATES

  INT 21 B800 - Novell NetWare - PRINT SERVICES - GET DEFAULT CAPTURE FLAGS

  INT 21 B801 - Novell NetWare - PRINT SERVICES - SET DEFAULT CAPTURE FLAGS

  INT 21 B802 - Novell NetWare - PRINT SERVICES - GET SPECIFIC CAPTURE FLAGS

  INT 21 B803 - Novell NetWare - PRINT SERVICES - SET SPECIFIC CAPTURE FLAGS

  INT 21 B804 - Novell NetWare - PRINT SERVICES - GET DEFAULT LOCAL PRINTER

  INT 21 B805 - Novell NetWare - PRINT SERVICES - SET DEFAULT LOCAL PRINTER

  INT 21 B806 - Novell NetWare - PRINT SERVICES - SET CAPTURE PRINT QUEUE

  INT 21 B807 - Novell NetWare - PRINT SERVICES - SET CAPTURE PRINT JOB

  INT 21 B808 - Novell NetWare - PRINT SERVICES - GET BANNER USER NAME

  INT 21 B809 - Novell NetWare - PRINT SERVICES - SET BANNER USER NAME

  INT 21 B9-- - Novell NetWare - "SpecialAttachableFunction"

  INT 21 BA-- - Novell NetWare - "ReturnCommandComPointers"

  INT 21 BB-- - Novell NetWare - WORKSTATION - SET END OF JOB STATUS

  INT 21 BBBB - VIRUS - "Hey You" - INSTALLATION CHECK

  INT 21 BC-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG PHYSICAL RECORD

  INT 21 BD-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE PHYSICAL RECORD

  INT 21 BE-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR PHYSICAL RECORD

  INT 21 BE-- - VIRUS - "Datalock" - INSTALLATION CHECK

  INT 21 BE00 - VIRUS - "USSR-1049" - INSTALLATION CHECK

  INT 21 BF-- - Novell NetWare, Alloy NTNX - LOG/LOCK RECORD (FCB)

  INT 21 C0-- - Novell NetWare, Alloy NTNX - RELEASE RECORD (FCB)

  INT 21 C0-- - VIRUS - "Slow"/"Zerotime", "Solano" - INSTALLATION CHECK

  INT 21 C1-- - Novell NetWare, Alloy NTNX - CLEAR RECORD (FCB)

  INT 21 C1-- - VIRUS - "Solano" - ???

  INT 21 C2-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK PHYSICAL RECORD SET

  INT 21 C2-- - VIRUS - "Scott's Valley" - ???

  INT 21 C3-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE PHYSICAL RECRD SET

  INT 21 C301 - VIRUS - "905"/"Backfont" - INSTALLATION CHECK

  INT 21 C4-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR PHYSICAL RECORD SET

  INT 21 C500 - Novell NetWare - SYNCHRONIZATION SERVICES - OPEN SEMAPHORE

  INT 21 C500 - VIRUS - "Sverdlov" - INSTALLATION CHECK

  INT 21 C501 - Novell NetWare - SYNCHRONIZATION SERVICES - EXAMINE SEMAPHORE

  INT 21 C502 - Novell NetWare - SYNCHRONIZATION SERVICES - WAIT ON SEMAPHORE

  INT 21 C503 - Novell NetWare - SYNCHRONIZATION SERVICES - SIGNAL SEMAPHORE

  INT 21 C504 - Novell NetWare - SYNCHRONIZATION SERVICES - CLOSE SEMAPHORE

  INT 21 C6-- - Novell NetWare - SYNCHRONIZATION SERVICES - GET OR SET LOCK MODE

  INT 21 C6-- - VIRUS - "Socha" - INSTALLATION CHECK

  INT 21 C603 - VIRUS - "Yankee Doodle" or "MLTI" - INSTALLATION CHECK

  INT 21 C700 - Novell NetWare - TRANSACTION TRACKING SYSTEM - BEGIN TRANSACTION

  INT 21 C700 - VIRUS - "MH-757" - INSTALLATION CHECK

  INT 21 C701 - Novell NetWare - TRANSACTION TRACKING SYSTEM - END TRANSACTION

  INT 21 C702 - Novell NetWare - TRANSACTION TRACKING SYSTEM - INSTALLATION CHECK

  INT 21 C703 - Novell NetWare - TRANSACTION TRACKING SYSTEM - ABORT TRANSACTION

  INT 21 C704 - Novell NetWare - TRANSACTION TRACKING SYSTEM - TRANSACTION STATUS

  INT 21 C705 - Novell NetWare - TRANSACTION TRACKING SYSTEM - GET APPLICTN THRESHOLDS

  INT 21 C706 - Novell NetWare - TRANSACTION TRACKING SYSTEM - SET APPLICTN THRESHOLDS

  INT 21 C707 - Novell NetWare - TRANSACTION TRACKING SYSTEM - GET WORKSTN THRESHOLDS

  INT 21 C708 - Novell NetWare - TRANSACTION TRACKING SYSTEM - SET WORKSTN THRESHOLDS

  INT 21 C8-- - Novell NetWare - BEGIN LOGICAL FILE LOCKING

  INT 21 C9-- - Novell NetWare - END LOGICAL FILE LOCKING

  INT 21 CA-- - Novell NetWare, Alloy NTNX - LOG/LOCK PERSONAL FILE (FCB)

  INT 21 CA15 - VIRUS - "Piter" - ???

  INT 21 CB-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK FILE SET

  INT 21 CB-- - VIRUS - "Milous" - INSTALLATION CHECK

  INT 21 CB02 - VIRUS - "Witcode" - INSTALLATION CHECK

  INT 21 CC-- - Novell NetWare, Alloy NTNX - RELEASE FILE (FCB)

  INT 21 CC-- - VIRUS - "Westwood" - INSTALLATION CHECK

  INT 21 CD-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE FILE SET

  INT 21 CD-- - VIRUS - "Westwood" - ???

  INT 21 CE-- - Novell NetWare, Alloy NTNX - CLEAR FILE (FCB)

  INT 21 CF-- - LANstep - ???

  INT 21 CF-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR FILE SET

  INT 21 D0-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG LOGICAL RECORD

  INT 21 D000 - VIRUS - "Fellowship" - INSTALLATION CHECK

  INT 21 D1-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOCK LOGICAL RECORD SET

  INT 21 D2-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE LOGICAL RECORD

  INT 21 D2-- - VIRUS???

  INT 21 D3-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE LOGICAL RECORD SET

  INT 21 D4-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR LOGICAL RECORD

  INT 21 D5-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR LOGICAL RECORD SET

  INT 21 D5-- - VIRUS - "Carfield" - ???

  INT 21 D5AA - VIRUS - "Diamond-A", "Diamond-B" - INSTALLATION CHECK

  INT 21 D5AA - VIRUS - "Dir" - INSTALLATION CHECK

  INT 21 D6-- - Novell NetWare - WORKSTATION - END OF JOB

  INT 21 D7-- - Novell NetWare - CONNECTION SERVICES - SYSTEM LOGOUT

  INT 21 D8-- - Novell NetWare, Banyan VINES - ALLOCATE RESOURCE

  INT 21 D9-- - Novell NetWare, Banyan VINES - DEALLOCATE RESOURCE

  INT 21 DA-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFO WITH NUMBER

  INT 21 DADA - VIRUS - "Gotcha" - INSTALLATION CHECK

  INT 21 DAFE - VIRUS - "Plovdiv 1.3" - INSTALLATION CHECK

  INT 21 DB-- - Novell NetWare - WORKSTATION - GET NUMBER OF LOCAL DRIVES

  INT 21 DC-- - Novell NetWare - CONNECTION SERVICES - GET CONNECTION NUMBER

  INT 21 DC-- - PCMag PCMANAGE/DCOMPRES - TURN ON/OFF

  INT 21 DD-- - Novell NetWare - WORKSTATION - SET NetWare ERROR MODE

  INT 21 DD-- - VIRUS - "Jerusalem"-family - RELOCATE VIRUS???

  INT 21 DDEF - VIRUS- "GOLGI" - INSTALLATION CHECK

  INT 21 DE-- - VIRUS - "Durban" - INSTALLATION CHECK

  INT 21 DE-- - VIRUS - "April 1st EXE" - ???

  INT 21 DE-- - Novell NetWare - MESSAGE SERVICES - SET BROADCAST MODE

  INT 21 DE-- - Novell NetWare - MESSAGE SERVICES - GET BROADCAST MODE

  INT 21 DE-- - Novell NetWare - SHELL TIMER INTERRUPT CHECKS

  INT 21 DEAD - VIRUS - "90210" - INSTALLATION CHECK

  INT 21 DEAD - VIRUS - "Shifting Objective" - RELOCATE CODE ???

  INT 21 DEDE - VIRUS - "Brothers" - INSTALLATION CHECK

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - START LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - END LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - CANCEL LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - FLUSH LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - START SPECIFIC LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - END SPECIFIC LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - CANCEL SPECIFIC LPT CAPTURE

  INT 21 DF-- - Novell NetWare - PRINT SERVICES - FLUSH SPECIFIC LPT CAPTURE

  INT 21 DF00 - Software Carousel - INSTALLATION CHECK

  INT 21 DF01 - Software Carousel - SWITCH TO ANOTHER TASK

  INT 21 DF02 - Software Carousel - KILL PROGRAM IN MEMORY PARTITION

  INT 21 DF03 - Software Carousel - GET PARTITION SIZE AND PROGRAM STATUS

  INT 21 DF04 - Software Carousel - GET PARTITION NAME

  INT 21 DF05 - Software Carousel - CHANGE PARTITION SIZE

  INT 21 DF06 - Software Carousel - CHANGE PARTITION NAME

  INT 21 DF07 - Software Carousel - SEND COMMAND TO MEMORY SECTION

  INT 21 DF08 - Software Carousel - SELECTIVELY ENABLE/DISABLE MENU AND SWITCHING

  INT 21 DF09 - Software Carousel - BOOT THE SYSTEM

  INT 21 DF0A - Software Carousel - GET MEMORY SIZE/PARTITION NUMBER OF CURRENT TASK

  INT 21 DF0B - Software Carousel - SET TASK SWITCH CALLBACK

  INT 21 DF0C - Software Carousel - ENABLE DOS-CALL SAFETY NOTIFICATION

  INT 21 E0-- - Digital Research DOS Plus - CALL BDOS

  INT 21 E0-- - OS/286, OS/386 - INITIALIZE REAL PROCEDURE

  INT 21 E0-- - DoubleDOS - MENU CONTROL

  INT 21 E0-- - VIRUS - "Jerusalem", "Armagedon" - INSTALLATION CHECK

  INT 21 E0-- - Novell NetWare, Alloy NTNX - PRINT SPOOLING

  INT 21 E0-- - Novell NetWare - PRINT SERVICES - GET PRINTER STATUS

  INT 21 E0-- - Novell NetWare - PRINT SERVICES - SPECIFY CAPTURE FILE

  INT 21 E00F - VIRUS - "8-tunes" - INSTALLATION CHECK

  INT 21 E1-- - OS/286, OS/386 - ISSUE REAL PROCEDURE CALL

  INT 21 E1-- - DoubleDOS - CLEAR KEYBOARD BUFFER FOR CURRENT JOB

  INT 21 E1-- - VIRUS - "Mendoza", "Fu Manchu" - INSTALLATION CHECK

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - SEND BROADCAST MESSAGE

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - GET BROADCAST MESSAGE

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - ENABLE/DISABLE BROADCAST MESSAGES

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - SEND PERSONAL MESSAGE

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - GET PERSONAL MESSAGE

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - OPEN MESSAGE PIPE

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - CLOSE MESSAGE PIPE

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - CHECK PIPE STATUS

  INT 21 E1-- - Novell NetWare - MESSAGE SERVICES - BROADCAST TO CONSOLE

  INT 21 E2-- - OS/286, OS/386 - SET REAL PROCEDURE SIGNAL HANDLER

  INT 21 E2-- - DoubleDOS - SEND CHARACTER TO KEYBOARD BUFFER OF OTHER JOB

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SET DIRECTORY HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET DIRECTORY PATH

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SCAN DIRECTORY INFORMATION

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET EFFECTIVE DIRECTORY RIGHTS

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - MODIFY MAXIMUM RIGHTS MASK

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME NUMBER

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME NAME

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - CREATE DIRECTORY

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DELETE DIRECTORY

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SCAN DIRECTORY FOR TRUSTEES

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ADD TRUSTEE TO DIRECTORY

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DELETE TRUSTEE FROM DIRECTORY

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - RENAME DIRECTORY

  INT 21 E2-- - Novell NetWare - FILE SERVICES - PURGE ERASED FILES

  INT 21 E2-- - Novell NetWare - FILE SERVICES - RESTORE ERASED FILE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC PERMANENT DIRECTORY HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC TEMPORARY DIRECTORY HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - DEALLOCATE DIRECTORY HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFO WITH HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - ALLOC SPECIAL TEMP DIR HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SAVE DIRECTORY HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - RESTORE DIRECTORY HANDLE

  INT 21 E2-- - Novell NetWare - DIRECTORY SERVICES - SET DIRECTORY INFORMATION

  INT 21 E2-- - Novell NetWare - FILE SERVER - GET PATH FROM DIRECTORY ENTRY

  INT 21 E3-- - OS/286, OS/386 - ISSUE REAL INTERRUPT

  INT 21 E3-- - DoubleDOS - ADD CHARACTER TO KEYBOARD BUFFER OF CURRENT JOB

  INT 21 E3-- - Novell NetWare - CONNECTION CONTROL

  INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - ENTER LOGIN AREA

  INT 21 E3-- - Novell NetWare - VERIFY NETWORK SERIAL NUMBER

  INT 21 E3-- - Novell NetWare - MESSAGE SERVICES - LOG NETWORK MESSAGE

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK UTILIZATION

  INT 21 E3-- - Novell NetWare - FILE SERVICES - SCAN FILE INFORMATION

  INT 21 E3-- - Novell NetWare - FILE SERVICES - SET FILE INFORMATION

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER INFORMATION

  INT 21 E3-- - Novell NetWare - GET NETWORK SERIAL NUMBER

  INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET INTERNET ADDRESS

  INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - LOGIN TO FILE SERVER

  INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET OBJECT CONNECTION NUMBERS

  INT 21 E3-- - Novell NetWare - CONNECTION SERVICES - GET CONNECTION INFORMATION

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CREATE BINDERY OBJECT

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE BINDERY OBJECT

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - RENAME BINDERY OBJECT

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY OBJECT ID

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY OBJECT NAME

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - SCAN BINDERY OBJECT

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE BINDERY OBJECT SECURITY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CREATE PROPERTY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE PROPERTY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE PROPERTY SECURITY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - SCAN PROPERTY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - READ PROPERTY VALUE

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - WRITE PROPERTY VALUE

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - VERIFY BINDERY OBJECT PASSWORD

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CHANGE BINDERY OBJECT PASSWORD

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - ADD BINDERY OBJECT TO SET

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - DELETE BINDERY OBJECT FROM SET

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - IS BINDERY OBJECT IN SET

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - CLOSE BINDERY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - OPEN BINDERY

  INT 21 E3-- - Novell NetWare - BINDERY SERVICES - GET BINDERY ACCESS LEVEL

  INT 21 E3-- - Novell NetWare - DIRECTORY SERVICES - SCAN BINDERY OBJ TRUSTEE PATHS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CREATE QUEUE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - DESTROY QUEUE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE CURRENT STATUS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SET QUEUE CURRENT STATUS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CREATE QUEUE JOB AND FILE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CLOSE FILE AND START QUEUE JOB

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - REMOVE JOB FROM QUEUE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - GET QUEUE JOB LIST

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE JOB ENTRY

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE QUEUE JOB ENTRY

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE QUEUE JOB POSITION

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ATTACH QUEUE SERVER TO QUEUE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - DETACH QUEUE SERVER FROM QUEUE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SERVICE QUEUE JOB AND OPEN FILE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - FINISH SERVICING QUEUE JOB AND FILE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ABORT SERVICING QUEUE JOB AND FILE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - CHANGE TO CLIENT RIGHTS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - RESTORE QUEUE SERVER RIGHTS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - READ QUEUE SERVER CURRENT STATUS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - SET QUEUE SERVER CURRENT STATUS

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - GET QUEUE JOB'S FILE SIZE

  INT 21 E3-- - Novell NetWare - QUEUE SERVICES - ABORT SERVICING QUEUE JOB

  INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - GET ACCOUNT STATUS

  INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT CHARGE

  INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT HOLD

  INT 21 E3-- - Novell NetWare - ACCOUNTING SERVICES - SUBMIT ACCOUNT NOTE

  INT 21 E3-- - Novell NetWare - FILE SERVER - CHECK CONSOLE PRIVILEGES

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER DESCRIPTION STRINGS

  INT 21 E3-- - Novell NetWare - FILE SERVER - SET FILE SERVER DATE AND TIME

  INT 21 E3-- - Novell NetWare - FILE SERVER - DISABLE FILE SERVER LOGIN

  INT 21 E3-- - Novell NetWare - FILE SERVER - ENABLE FILE SERVER LOGIN

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER LOGIN STATUS

  INT 21 E3-- - Novell NetWare - FILE SERVICES - PURGE ALL ERASED FILES

  INT 21 E3-- - Novell NetWare - FILE SERVER - DISABLE TRANSACTION TRACKING

  INT 21 E3-- - Novell NetWare - FILE SERVER - ENABLE TRANSACTION TRACKING

  INT 21 E3-- - Novell NetWare - FILE SERVER - SEND CONSOLE BROADCAST

  INT 21 E3-- - Novell NetWare - FILE SERVER - CLEAR CONNECTION NUMBER

  INT 21 E3-- - Novell NetWare - FILE SERVER - DOWN FILE SERVER

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SYSTEM STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET TRANSACTION TRACKING STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK CACHE STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET DRIVE MAPPING TABLE

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL DISK STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET DISK CHANNEL STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S TASK INFORMATION

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S OPEN FILES

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTIONS USING A FILE

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL RECORD LOCKS BY CONN&FILE

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET PHYSICAL RECORD LOCKS BY FILE

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET LOGICAL RECORDS BY CONNECTION

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET LOGICAL RECORD INFORMATION

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S SEMAPHORES

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET SEMAPHORE INFORMATION

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET LAN DRIVER'S CONFIGURATION INFO

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET CONNECTION'S USAGE STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET BINDERY OBJECT DISK SPACE LEFT

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER LAN I/O STATISTICS

  INT 21 E3-- - Novell NetWare - FILE SERVER - GET FILE SERVER MISC INFORMATION

  INT 21 E3-- - Novell NetWare - DIRECTORY SERVICES - GET VOLUME INFORMATION

  INT 21 E4-- - Novell NetWare - SET FILE ATTRIBUTES (FCB)

  INT 21 E4-- - VIRUS - "Anarkia" - INSTALLATION CHECK

  INT 21 E400 - DoubleDOS - INSTALLATION CHECK/PROGRAM STATUS

  INT 21 E400 - OS/286, OS/386 - CHAIN TO REAL-MODE HANDLER

  INT 21 E402 - OS/286, OS/386 - SET PROTECTED-MODE TASK GATE

  INT 21 E403 - OS/286, OS/386 - REMOVE PROTECTED-MODE TASK GATE

  INT 21 E5-- - Novell NetWare - UPDATE FILE SIZE (FCB)

  INT 21 E5-- - DoubleDOS - OTHER PROGRAM STATUS

  INT 21 E500 - OS/286, OS/386 - HEAP MANAGEMENT STRATEGY

  INT 21 E501 - OS/286, OS/386 - FORCE HEAP COMPACTION

  INT 21 E6-- - Novell NetWare - COPY FILE TO FILE (FCB)

  INT 21 E6-- - OS/286, OS/386 - ISSUE REAL PROCEDURE SIGNAL FROM PROTECTED MODE

  INT 21 E7-- - Novell NetWare - FILE SERVER - GET FILE SERVER DATE AND TIME

  INT 21 E7-- - OS/286, OS/386 - CREATE CODE SEGMENT

  INT 21 E7-- - VIRUS - "Spyer"/"Kiev" - INSTALLATION CHECK

  INT 21 E8-- - Novell NetWare, Alloy NTNX - SET FCB RE-OPEN MODE

  INT 21 E8-- - OS/286, OS/386 - SEGMENT CREATION

  INT 21 E8-- - DoubleDOS - SET/RESET KEYBOARD CONTROL FLAGS

  INT 21 E9-- - OS/286, OS/386 - CHANGE SEGMENTS

  INT 21 E9-- - DoubleDOS - SET TIMESHARING PRIORITY

  INT 21 E900 - Novell NetWare - DIRECTORY SERVICES - GET DIRECTORY HANDLE

  INT 21 E905 - Novell NetWare shell 3.01 - MAP A FAKE ROOT DIRECTORY

  INT 21 E906 - Novell NetWare shell 3.01 - DELETE FAKE ROOT DIRECTORY

  INT 21 E907 - Novell NetWare shell 3.01 - GET RELATIVE DRIVE DEPTH

  INT 21 E908 - Novell NetWare shell 3.01 - SET SHOW DOTS

  INT 21 E909 - Novell NetWare - NetWare shell - CONVERT DOS FILE HANDLE TO NETWARE

  INT 21 EA-- - Novell NetWare, Alloy NTNX - RETURN SHELL VERSION

  INT 21 EA-- - DoubleDOS - TURN OFF TASK SWITCHING

  INT 21 EA-- - OS/286, OS/386 - ALLOCATE HUGE SEGMENT

  INT 21 EB-- - Novell NetWare - SYNCHRONIZATION SERVICES - LOG FILE

  INT 21 EB-- - DoubleDOS - TURN ON TASK SWITCHING

  INT 21 EB00 - OS/386 VMM - GET A PAGE TABLE ENTRY BY LINEAR ADDRESS

  INT 21 EB02 - OS/386 VMM - GET A PAGE TABLE ENTRY BY 16-BIT SEGMENT:OFFSET

  INT 21 EB03 - OS/386 VMM - FREE MAPPED PAGES

  INT 21 EB04 - OS/386 VMM - GET A PAGE TABLE ENTRY BY 32-BIT SEGMENT:OFFSET

  INT 21 EB05 - OS/386 VMM - MAP PAGES

  INT 21 EB06 - OS/386 VMM - LOCK PAGES IN MEMORY

  INT 21 EB07 - OS/386 VMM - UNLOCK MEMORY PAGES

  INT 21 EC-- - Novell NetWare - SYNCHRONIZATION SERVICES - RELEASE FILE

  INT 21 EC-- - DoubleDOS - GET VIRTUAL SCREEN ADDRESS

  INT 21 EC-- - OS/286, OS/386 - BLOCK TRANSFER

  INT 21 EC59 - VIRUS - "Terror" - INSTALLATION CHECK

  INT 21 ED-- - Novell NetWare - SYNCHRONIZATION SERVICES - CLEAR FILE

  INT 21 ED-- - OS/286, OS/386 - GET SEGMENT OR WINDOW DESCRIPTOR

  INT 21 EE-- - Novell NetWare - CONNECTION SERVICES - GET PHYSICAL STATION ADDRESS

  INT 21 EE-- - DoubleDOS - GIVE AWAY TIME TO OTHER TASKS

  INT 21 EE-- - VIRUS - "Jerusalem-G", "Pregnant" - INSTALLATION CHECK

  INT 21 EF00 - Novell NetWare - WORKSTATION - GET DRIVE HANDLE TABLE

  INT 21 EF01 - Novell NetWare - WORKSTATION - GET DRIVE FLAG TABLE

  INT 21 EF02 - Novell NetWare - WORKSTATION - GET DRIVE CONNECTION ID TABLE

  INT 21 EF03 - Novell NetWare - WORKSTATION - GET CONNECTION ID TABLE

  INT 21 EF04 - Novell NetWare - WORKSTATION - GET FILE SERVER NAME TABLE

  INT 21 F0-- - DoubleDOS - MENU CONTROL

  INT 21 F0-- - VIRUS - "Frere Jacques" - INSTALLATION CHECK

  INT 21 F000 - Novell NetWare - WORKSTATION - SET PREFERRED CONNECTION ID

  INT 21 F001 - Novell NetWare - WORKSTATION - GET PREFERRED CONNECTION ID

  INT 21 F002 - Novell NetWare - WORKSTATION - GET DEFAULT CONNECTION ID

  INT 21 F003 - Novell NetWare - PRINT SERVICES - GET LPT CAPTURE STATUS

  INT 21 F004 - Novell NetWare - WORKSTATION - SET PRIMARY CONNECTION ID

  INT 21 F005 - Novell NetWare - WORKSTATION - GET PRIMARY CONNECTION ID

  INT 21 F1-- - Novell NetWare - CONNECTION SERVICES - FILE SERVER CONNECTION

  INT 21 F1-- - DoubleDOS - CLEAR KEYBOARD BUFFER FOR CURRENT JOB

  INT 21 F1-- - VIRUS - "F1-337" - ???

  INT 21 F1E9 - VIRUS - "Tremor" - INSTALLATION CHECK

  INT 21 F2-- - Novell NetWare v3.01+ shell interface - MULTIPLEXOR

  INT 21 F2-- - DoubleDOS - SEND CHARACTER TO KEYBOARD BUFFER OF OTHER JOB

  INT 21 F216 - Novell NetWare v3+ - ADD USER DISK SPACE RESTRICTION

  INT 21 F216 - Novell NetWare v3+ - SET DIRECTORY DISK SPACE RESTRICTION

  INT 21 F216 - Novell NetWare v3+ - SCAN FILE OR DIRECTORY FOR EXTENDED TRUSTEES

  INT 21 F216 - Novell NetWare v3+ - ADD EXTENDED TRUSTEE TO DIRECTORY OR FILE

  INT 21 F216 - Novell NetWare v3+ - GET OBJECT DISK RESTRICTIONS

  INT 21 F216 - Novell NetWare v4 - GET EXTENDED VOLUME INFORMATION

  INT 21 F217 - Novell NetWare v3+ - GET CONNECTION INFORMATION

  INT 21 F217 - Novell NetWare v4 - CHANGE CONNECTION STATE

  INT 21 F217 - Novell NetWare v4 - SET WATCHDOG DELAY INTERVAL

  INT 21 F217 - Novell NetWare v4 - GET CONNECTION LIST

  INT 21 F217 - Novell NetWare v2.2+ - GET VOLUME EXTENDED INFORMATION

  INT 21 F217 - Novell NetWare v2.2+ - ADD OBJECT TO SET

  INT 21 F217 - Novell NetWare v3+ - CLEAR CONNECTION NUMBER (LOGOUT STATION)

  INT 21 F217 - Novell NetWare v3+ - GET CONNECTION'S OPEN FILES

  INT 21 F217 - Novell NetWare v3+ - GET CONNECTIONS USING A FILE

  INT 21 F217 - Novell NetWare v3+ - GET PHYSICAL RECORD LOCKS BY FILE

  INT 21 F217 - Novell NetWare v3+ - GET SEMAPHORE INFORMATION

  INT 21 F217 - Novell NetWare v3+ - MAP DIRECTORY NUMBER TO PATH

  INT 21 F217 - Novell NetWare v3+ - CONVERT PATH TO DIRECTORY ENTRY

  INT 21 F217 - Novell NetWare v4 - CLEAR CONNECTION NUMBER

  INT 21 F244 - Novell NetWare - FILE SERVICES - ERASE FILES

  INT 21 F257 - Novell NetWare v3+ - GET INFORMATION ABOUT FILE OR DIRECTORY

  INT 21 F258 - Novell NetWare v4+ - GET VOLUME AUDITING STATISTICS

  INT 21 F268 - Novell NetWare v4+ - GET TREE NAME

  INT 21 F268 - Novell NetWare v4+ - GET BINDERY CONTEXT

  INT 21 F268 - Novell NetWare v4+ - NDS LIST PARTITIONS

  INT 21 F268 - Novell NetWare v4+ - NDS GET SERVER NAME AND ADDRESS

  INT 21 F268 - Novell NetWare v4+ - NDS LOGOUT

  INT 21 F268 - Novell NetWare v4+ - GET DS AUDITING STATISTICS

  INT 21 F272 - Novell NetWare v4+ - GET FILE SERVER UTC TIME

  INT 21 F27B - Novell NetWare v4+ - GET ROUTER INFO

  INT 21 F27B - Novell NetWare v4+ - GET KNOWN NETWORKS INFO

  INT 21 F2AA - VIRUS - "PcVrsDs" - INSTALLATION CHECK

  INT 21 F3-- - Novell NetWare - FILE SERVICES - FILE SERVER FILE COPY

  INT 21 F3-- - DoubleDOS - ADD CHARACTER TO KEYBOARD BUFFER OF CURRENT JOB

  INT 21 F3-- - VIRUS - "Carfield" - INSTALLATION CHECK

  INT 21 F400 - DoubleDOS - INSTALLATION CHECK/PROGRAM STATUS

  INT 21 F5-- - DoubleDOS - OTHER PROGRAM STATUS

  INT 21 F7-- - VIRUS - "GP1" - INSTALLATION CHECK

  INT 21 F8-- - DOS v2.11-2.13 - SET OEM INT 21 HANDLER

  INT 21 F8-- - DoubleDOS - SET/RESET KEYBOARD CONTROL FLAGS

  INT 21 F9-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 F9-- - DoubleDOS - SET TIMESHARING PRIORITY

  INT 21 F9-- - VIRUS - "Satans-Bug" - INSTALLATION CHECK

  INT 21 FA-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 FA-- - DoubleDOS - TURN OFF TASK SWITCHING

  INT 21 FA-- - PC Tools v7+ VDEFEND, VSAFE, VWATCH - API

  INT 21 FB-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 FB-- - DoubleDOS - TURN ON TASK SWITCHING

  INT 21 FB-- - VIRUS - "Cinderella" - INSTALLATION CHECK

  INT 21 FB0A - VIRUS - "dBASE" - INSTALLATION CHECK

  INT 21 FC-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 FC-- - DoubleDOS - GET VIRTUAL SCREEN ADDRESS

  INT 21 FC-- - VIRUS - "Troi" - INSTALLATION CHECK

  INT 21 FD-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 FD-- - VIRUS - "Border" - INSTALLATION CHECK

  INT 21 FD12 - Gravis UltraSound - MegaEm/MEGA_EM - INSTALLATION CHECK

  INT 21 FE-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 FE-- - DoubleDOS - GIVE AWAY TIME TO OTHER TASKS

  INT 21 FE-- - VIRUS - "483" - INSTALLATION CHECK

  INT 21 FE01 - VIRUS - "Flip" - INSTALLATION CHECK

  INT 21 FE02 - VIRUS - "2468"/"Tequila" - INSTALLATION CHECK

  INT 21 FE03 - VIRUS - "2468"/"Tequila" - DISPLAY VIRUS MESSAGE

  INT 21 FEAD - VIRUS - "Shifting Objective" - INSTALLATION CHECK

  INT 21 FEDC - PCMag PCMANAGE/DCOMPRES - INSTALLATION CHECK

  INT 21 FEDC - VIRUS - "Black Monday" - INSTALLATION CHECK

  INT 21 FEFE - VIRUS - "CIDER" - INSTALLATION CHECK

  INT 21 FF-- - DOS v2.11-2.13 - OEM FUNCTION

  INT 21 FF-- - CED (Command EDitor) - INSTALLABLE COMMANDS

  INT 21 FF-- - DJ GO32.EXE 80386+ DOS extender - DOS EXTENSIONS

  INT 21 FF-- - DOSED.COM - INSTALLATION CHECK

  INT 21 FF-- - VIRUS - "Sunday", "Tumen 0.5", "Hero" - INSTALLATION CHECK

  INT 21 FF-- - Rational Systems DOS/4GW - API

  INT 21 FF-- - Rational Systems DOS/4GW - VERSION CHECK???

  INT 21 FF-- - Rational Systems DOS/4GW - SET ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - GET ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - GET/SET ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - NOP

  INT 21 FF-- - Rational Systems DOS/4GW - EXCHANGE ??? POINTERS

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF-- - Rational Systems DOS/4GW - GET ??? FUNCTIONS

  INT 21 FF-- - Rational Systems DOS/4GW - GET ???

  INT 21 FF-- - Rational Systems DOS/4GW - ???

  INT 21 FF00 - TopWare Network OS v5.10+ - GET SYSTEM INFORMATION

  INT 21 FF00 - Rational Systems DOS/4G - INSTALLATION CHECK

  INT 21 FF04 - TopWare Network OS v5.10+ - GET/SET DEFAULT FILE PROTECTION ATTRIBS

  INT 21 FF0F - FLU_SHOT+ v1.83 - INSTALLATION CHECK

  INT 21 FF10 - VIRUS - "Twins" - INSTALLATION CHECK

  INT 21 FF80 - TopWare Network OS v5.10+ - SEND MESSAGE

  INT 21 FF82 - TopWare Network OS v5.10+ - GET STATION ADDRESS

  INT 21 FF8C - TopWare Network OS v5.10+ - GET STATUS OF TopShow/Emulated FUNCTION

  INT 21 FF8D - TopWare Network OS v5.10+ - CALL TopShow FUNCTION

  INT 21 FF8E - TopWare Network OS v5.10+ - CANCEL TopShow FUNCTION

  INT 21 FF91 - TopWare Network OS v5.10+ - GET FILE SERVER STATION NUMBER

  INT 21 FF97 - TopWare Network OS v5.10+ - GET MAXIMUM STATION NUMBER (server only)

  INT 21 FF98 - TopWare Network OS v5.10+ - GET MAXIMUM FILE NUMBER (server only)

  INT 21 FF9A - TopWare Network OS v5.10+ - RECEIVE OF USER-DEFINED PACKETS

  INT 21 FF9F - TopWare Network OS v5.10+ - ENABLE/DISABLE TopTerm SERVICE

  INT 21 FFB0 - TopWare Network OS v5.10+ - GET SPOOLER PRINTING PRIORITY

  INT 21 FFB1 - TopWare Network OS v5.10+ - SET SPOOLER PRINTING PRIORITY

  INT 21 FFB3 - TopWare Network OS v5.10+ - GET DEFAULT START-OF-JOB FORMFEED STATUS

  INT 21 FFB4 - TopWare Network OS v5.10+ - SET DEFAULT START-OF-JOB FORMFEED STATUS

  INT 21 FFBB - TopWare Network OS v5.10+ - GET PRINTER SERVER STATION ADDRESS

  INT 21 FFBC - TopWare Network OS v5.10+ - CANCEL TopShow FUNCTION

  INT 21 FFBD - TopWare Network OS v5.10+ - GET CURRENT AUTOPRINT TIME

  INT 21 FFBE - TopWare Network OS v5.10+ - SET AUTOPRINT TIME

  INT 21 FFBF - TopWare Network OS v5.10+ - GET LOGON USER INFORMATION

  INT 21 FFC0 - TopWare Network OS v5.10+ - GET DEFAULT END-OF-JOB FORMFEED STATUS

  INT 21 FFC1 - TopWare Network OS v5.10+ - SET DEFAULT END-OF-JOB FORMFEED STATUS

  INT 21 FFC2 - TopWare Network OS v5.10+ - GET DEFAULT COPIES OF SPOOLING FILE

  INT 21 FFC3 - TopWare Network OS v5.10+ - GET SHARING STATUS OF PRINTER SERVER

  INT 21 FFC4 - TopWare Network OS v5.10+ - GET/SET LPT PORT ON PRINT SERVER

  INT 21 FFC6 - TopWare Network OS v5.10+ - SET DEFAULT PRINT FILE HEADER

  INT 21 FFC7 - TopWare Network OS v5.10+ - SET DEFAULT PRINT COPIES

  INT 21 FFC8 - TopWare Network OS v5.10+ - GET DEFAULT PRINT FILE HEADER STATUS

  INT 21 FFC9 - TopWare Network OS v5.10+ - SET PRINTER SHARING

  INT 21 FFCA - TopWare Network OS v5.10+ - MOVE FILE FROM ONE PRINT SERVER TO ANOTHER

  INT 21 FFCB - TopWare Network OS v5.10+ - DELETE FILE FROM SPOOLING QUEUE

  INT 21 FFCC - TopWare Network OS v5.10+ - GET PRINT SERVER'S SPOOLING QUEUE STATUS

  INT 21 FFCD - TopWare Network OS v5.10+ - GET STATUS OF ALL PRINT SERVERS

  INT 21 FFCF - TopWare Network OS v5.10+ - CALL TopLook FUNCTION

  INT 21 FFD6 - TopWare Network OS v5.10+ - GET KEYCARD SERIAL NUMBER AND MAX USERS

  INT 21 FFD7 - TopWare Network OS v5.10+ - GET NETWORK PROTECTION ATTRIBUTES STATUS

  INT 21 FFE3 - TopWare Network OS v5.10+ - INITIATE ACCESS TO SPECIFIC PACKET TYPE

  INT 21 FFE3 - TopWare Network OS v5.10+ - END ACCESS TO SPECIFIC PACKET TYPE

  INT 21 FFE3 - TopWare Network OS v5.10+ - SEND PACKET

  INT 21 FFE3 - TopWare Network OS v5.10+ - GET LOCAL NETWORK INTERFACE ADDRESS

  INT 21 FFFE - VIRUS - "08/15"/"Many Fingers" - INSTALLATION CHECK

  INT 21 FFFF - VIRUS - "Ontario", "Year 1992"/"B1M92" - INSTALLATION CHECK

  INT 21 FFFF - VIRUS - "Revenge" - INSTALLATION CHECK

INT 22 - DOS 1+ - PROGRAM TERMINATION ADDRESS

  INT 22 ---- - DOS 1+ - PROGRAM TERMINATION ADDRESS

  INT 22 ---- - COMTROL HOSTESS i/ISA DEBUGGER - CHANGE FIRMWARE DEBUGGING PORT

INT 23 - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER

  INT 23 ---- - DOS 1+ - CONTROL-C/CONTROL-BREAK HANDLER

  INT 23 ---- - COMTROL HOSTESS i/ISA DEBUGGER - GET CONFIGURATION INFORMATION

INT 24 - DOS 1+ - CRITICAL ERROR HANDLER

  INT 24 ---- - DOS 1+ - CRITICAL ERROR HANDLER

INT 25 - DOS 1+ - ABSOLUTE DISK READ

  INT 25 ---- - DOS 1+ - ABSOLUTE DISK READ (except partitions > 32M)

  INT 25 ---- - DOS 3.31+ - ABSOLUTE DISK READ (>32M hard-disk partition)

  INT 25 CDCD - Stacker - GET DEVICE DRIVER ADDRESS

  INT 25 --FF - PC-CACHE.SYS - INSTALLATION CHECK

INT 26 - DOS 1+ - ABSOLUTE DISK WRITE

  INT 26 ---- - DOS 1+ - ABSOLUTE DISK WRITE (except partitions > 32M)

  INT 26 ---- - DOS 3.31+ - ABSOLUTE DISK WRITE (>32M hard-disk partition)

  INT 26 ---- - COMTROL HOSTESS i/ISA DEBUGGER - ENTER/EXIT EXTENDED ADDRESSING MODE

INT 27 - DOS 1+ - TERMINATE AND STAY RESIDENT

  INT 27 ---- - DOS 1+ - TERMINATE AND STAY RESIDENT

  INT 27 ---- - COMTROL HOSTESS i/ISA DEBUGGER - INVOKE REMOTE TURBO DEBUGGER KERNEL

INT 28 - DOS 2+ - DOS IDLE INTERRUPT

  INT 28 ---- - DOS 2+ - DOS IDLE INTERRUPT

INT 29 - DOS 2+ - FAST CONSOLE OUTPUT

  INT 29 ---- - DOS 2+ - FAST CONSOLE OUTPUT

INT 2A - NETBIOS

  INT 2A 00-- - NETWORK - INSTALLATION CHECK

  INT 2A 0000 - AT&T Starlan Extended NetBIOS (var length names) - INSTALLATION CHECK

  INT 2A 01-- - NETWORK (Microsoft,LANtastic) - EXECUTE NETBIOS REQUEST,NO ERROR RETRY

  INT 2A 02-- - NETWORK (Microsoft) - SET NET PRINTER MODE

  INT 2A 0300 - NETWORK - CHECK DIRECT I/O

  INT 2A 04-- - NETWORK - EXECUTE NetBIOS REQUEST

  INT 2A 0500 - NETWORK - GET NETWORK RESOURCE AVAILABILITY

  INT 2A 06-- - NETBIOS, LANtastic - NETWORK PRINT-STREAM CONTROL

  INT 2A 07-- - PC Network v1.00 - RECEIVER.COM - ???

  INT 2A 2001 - MS Networks or NETBIOS - ???

  INT 2A 2002 - NETWORK - ???

  INT 2A 2003 - NETWORK - ???

  INT 2A 7802 - NETWORK - PC LAN PROG v1.31+ - GET LOGGED ON USER NAME

  INT 2A 80-- - NETWORK - BEGIN DOS CRITICAL SECTION

  INT 2A 81-- - NETWORK - END DOS CRITICAL SECTION

  INT 2A 82-- - NETWORK - END DOS CRITICAL SECTIONS 0 THROUGH 7

  INT 2A 84-- - NETWORK - KEYBOARD BUSY LOOP

  INT 2A 86-- - PC Network v1.00 - RECEIVER.COM - ???

  INT 2A 8700 - PRINT - BEGIN BACKGROUND PRINTING

  INT 2A 8701 - PRINT - END BACKGROUND PRINTING

  INT 2A 89-- - PC Network v1.00 - RECEIVER.COM - ???

  INT 2A 90-- - IBM PC 3270 EMULATION PROGRAM - ???

  INT 2A C2-- - Network - ???

  INT 2A C4-- - PC Network v1.00 - RECEIVER.COM - ???

  INT 2A D800 - Novell NetWare Lite - SERVER - SET ???

  INT 2A D801 - Novell NetWare Lite - SERVER - RESET ???

  INT 2A D850 - Novell NetWare Lite - CLIENT - INCREMENT ???

  INT 2A D851 - Novell NetWare Lite - CLIENT - RESET ???

  INT 2A D852 - Novell NetWare - DOS Requester v1.03 - ???

  INT 2A D853 - Novell NetWare - DOS Requester v1.03 - ???

  INT 2A E0-- - PC Network 1.00 - ???

  INT 2A FF90 - PC/TCP PREDIR.EXE - ???

  INT 2A FF91 - PC/TCP PREDIR.EXE - ???

  INT 2A FF92 - PC/TCP PREDIR.EXE - INSTALLATION CHECK

  INT 2A FF93 - PC/TCP PREDIR.EXE - ???

  INT 2A FF94 - PC/TCP PREDIR.EXE - ???

  INT 2A FF95 - PC/TCP PREDIR.EXE - GET CONFIGURATION STRINGS

  INT 2A FF96 - PC/TCP PREDIR.EXE - SET PRINT JOB TERMINATION CONFIGURATION

  INT 2A FF97 - PC/TCP PREDIR.EXE - GET PRINT JOB TERMINATION CONFIGURATION

INT 2B - DOS 2+ - RESERVED

  INT 2B ---- - DOS 2+ - RESERVED

INT 2C - DOS 2+ - RESERVED

  INT 2C ---- - DOS 2+ - RESERVED

  INT 2C ---- - STARLITE architecture - KERNEL API

  INT 2C ---- - Cloaking - CALL PROTECTED-MODE PASSALONG CHAIN

  INT 2C 0000 - Cloaking - ALLOCATE GDT SELECTOR

  INT 2C 0001 - Cloaking - FREE GDT SELECTOR

  INT 2C 0002 - Cloaking - SET SEGMENT BASE ADDRESS

  INT 2C 0003 - Cloaking - SET SEGMENT LIMIT

  INT 2C 0004 - Cloaking - SET SEGMENT ACCESS MODE

  INT 2C 0005 - Cloaking - SET SEGMENT EXTENDED ACCESS MODE

  INT 2C 0006 - Cloaking - GET PROTECTED-MODE INTERRUPT VECTOR

  INT 2C 0007 - Cloaking - SET PROTECTED-MODE INTERRUPT VECTOR

  INT 2C 0008 - Cloaking - GET PASSALONG ADDRESS

  INT 2C 0009 - Cloaking - SET PASSALONG ADDRESS

  INT 2C 000A - Cloaking - GET BASE ADDRESS OF GDT SELECTOR

  INT 2C 000B - Cloaking - GET SELECTOR LIMIT

  INT 2C ---- - RM386 v6.00 - CLOAKING - RESERVED FOR CLOAKED BIOS USE UNDER WINDOWS

  INT 2C 000F - Cloaking v1.01 - "Simulate_Shell_Event"

  INT 2C 0011 - Cloaking v1.01 - "Switch_VMs_and_Call_back"

  INT 2C 0012 - Cloaking v1.01 - "Query_Current_VM"

  INT 2C 0013 - Cloaking v1.01 - "Issue_System_Modal_Message"

  INT 2C 001D - Cloaking v1.01 - GET INT 2C API HANDLER ENTRY POINT

  INT 2C 001E - Cloaking v1.01 - CLEAR CRITICAL SECTION

  INT 2C 001F - Cloaking v1.01 - SET CRITICAL SECTION

  INT 2C 0020 - Cloaking - GET SIZE OF PROTECTED-MODE STATE

  INT 2C 0021 - Cloaking - SAVE PROTECTED-MODE STATE

  INT 2C 0022 - Cloaking - RESTORE PROTECTED-MODE STATE

  INT 2C 0023 - Cloaking - ISSUE PROTECTED-MODE XMS CALL

  INT 2C 0024 - Cloaking - SET V86-MODE STACK

  INT 2C 0025 - Cloaking - CALL V86-MODE PROCEDURE

  INT 2C 0026 - Cloaking - CALL V86-MODE INTERRUPT HANDLER

  INT 2C 0027 - Cloaking - CHAIN TO V86-MODE INTERRUPT HANDLER

  INT 2C 0028 - Cloaking - GET ESP0 FROM TSS

  INT 2C 0029 - Cloaking - SET SECONDARY STACK

  INT 2C 002A - Cloaking - SET 8259 IRQ BASE VECTORS

  INT 2C 002B - Cloaking - PROTECTED-MODE VIRTUAL DMA SERVICES

  INT 2C 002C - Cloaking - GET PORT-TRAPPING PASSALONG

  INT 2C 002D - Cloaking - SET PORT-TRAPPING PASSALONG

  INT 2C 002E - Cloaking - TRAP I/O PORT

  INT 2C 002F - Cloaking - UNTRAP I/O PORT

  INT 2C 0030 - Cloaking - GET TRAPPING STATE OF SPECIFIED PORT

  INT 2C 0031 - RM386 v6.00 - BUG

  INT 2C 0031 - Cloaking v1.01 - ALLOCATE V86 CALLBACK

  INT 2C 0032 - Cloaking v1.01 - FREE V86 CALLBACK

  INT 2C 0033 - Cloaking v1.01 - REGISTER CLOAKING CLIENT

  INT 2C 0034 - Cloaking v1.01 - UNREGISTER CLOAKING CLIENT

INT 2D - DOS 2+ - RESERVED

  INT 2D ---- - DOS 2+ - RESERVED

  INT 2D ---- - ALTERNATE MULTIPLEX INTERRUPT SPECIFICATION (AMIS) [v3.5.1]

  INT 2D --10 - RATSR 2.0+ - GET STATUS

  INT 2D --10 - dLite 1.0+ - GET PARAMETER BLOCK ADDRESS

  INT 2D --10 - Burnout Plus v3.00 - GET STATE/CONTROL INFORMATION

  INT 2D --10 - Screen Thief v1.00 - FREE HIGH MEMORY BUFFERS

  INT 2D --10 - RAMLIGHT v1.0 - GET MONITORING INFORMATION

  INT 2D --10 - DTown Utilities v1.40+ - EXTENDED API INSTALLATION CHECK

  INT 2D --11 - dLite 1.0+ - CHECK FOR dPressed FILE AND GET ORIGINAL SIZE

  INT 2D --11 - DTown Utilities v1.40+ - UTILITY INSTALLATION CHECK

  INT 2D --12 - dLite 1.0+ - CHECK FOR dPressed FILE AND GET COMPRESSED SIZE

  INT 2D --20 - DTown Utilities v1.40+ - GET POP-UP HANDLER ADDRESS

  INT 2D --21 - DTown Utilities v1.40+ - POP UP

  INT 2D --50 - DTown Utilities v1.40+ - MEMORY VIEW SET ADDRESS

  INT 2D --51 - DTown Utilities v1.40+ - MEMORY VIEW SET REFERENCE

  INT 2D --DC - DAISY.SYS - BROADCAST: CHAIN RESCANNED

INT 2E - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION

  INT 2E ---- - DOS 2+ - PASS COMMAND TO COMMAND INTERPRETER FOR EXECUTION

  INT 2E ---- - Windows NT - NATIVE API

  INT 2E ---- - 4DOS v2.x-3.03 SHELL2E.COM - UNINSTALL

INT 2F - Multiplex

  INT 2F ---- - Multiplex - NOTES

  INT 2F ---- - BMB Compuscience Canada Utilities Interface - INSTALLATION CHECK

  INT 2F ---- - Ross Wentworth's Turbo Pascal POPUP LIBRARY

  INT 2F ---- - CiriSOFT Spanish University of Valladolid TSR's Interface

  INT 2F 00-- - DOS 2.x only PRINT.COM - ???

  INT 2F 00-- - PSPRINT - PRINT JOB CONTROL

  INT 2F 0080 - DOS 3.1+ PRINT - GIVE PRINT A TIME SLICE

  INT 2F 00D8 - Personal NetWare - VLM - ???

  INT 2F 01-- - DOS 2.x only PRINT.COM - ???

  INT 2F 0100 - DOS 3.0+ PRINT - INSTALLATION CHECK

  INT 2F 0100 - PrintCache 3.1 PRINT.COM - INSTALLATION CHECK

  INT 2F 0101 - DOS 3.0+ PRINT - SUBMIT FILE FOR PRINTING

  INT 2F 0101 - PrintCache v3.1 PRINT.COM - SUBMIT FILE FOR PRINTING

  INT 2F 0102 - DOS 3.0+ PRINT - REMOVE FILE FROM PRINT QUEUE

  INT 2F 0103 - DOS 3.0+ PRINT - CANCEL ALL FILES IN PRINT QUEUE

  INT 2F 0104 - DOS 3.0+ PRINT - FREEZE PRINT QUEUE TO READ JOB STATUS

  INT 2F 0105 - DOS 3.0+ PRINT - RESTART PRINT QUEUE AFTER STATUS READ

  INT 2F 0106 - DOS 3.3+ PRINT - GET PRINTER DEVICE

  INT 2F 0107 - PrintCache v3.1 PRINT.COM - SET TRAILING FORM FEEDS

  INT 2F 0200 - PC LAN PROGRAM REDIR/REDIRIFS internal - INSTALLATION CHECK

  INT 2F 0201 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

  INT 2F 0202 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

  INT 2F 0203 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

  INT 2F 0204 - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

  INT 2F ---- - PC LAN PROGRAM REDIR/REDIRIFS internal - ???

  INT 2F 0500 - DOS 3.0+ CRITICAL ERROR HANDLER - INSTALLATION CHECK

  INT 2F 05-- - DOS 3.0+ CRITICAL ERROR HANDLER - EXPAND ERROR INTO STRING

  INT 2F 0600 - DOS 3.0+ ASSIGN - INSTALLATION CHECK

  INT 2F 0601 - DOS 3.0+ ASSIGN - GET DRIVE ASSIGNMENT TABLE

  INT 2F 0800 - DRIVER.SYS support - INSTALLATION CHECK

  INT 2F 0801 - DRIVER.SYS support - ADD NEW BLOCK DEVICE

  INT 2F 0802 - DRIVER.SYS support - EXECUTE DEVICE DRIVER REQUEST

  INT 2F 0803 - DOS 4.0+ DRIVER.SYS support - GET DRIVE DATA TABLE LIST

  INT 2F 1000 - SHARE - INSTALLATION CHECK

  INT 2F 1001 - DR-DOS 6.0 SHARE internal - SET ???

  INT 2F 1040 - DOS 4 only SHARE internal - ???

  INT 2F 1080 - DOS 4 only SHARE internal - TURN ON FILE SHARING CHECKS

  INT 2F 1081 - DOS 4 only SHARE internal - TURN OFF FILE SHARING CHECKS

  INT 2F 10FE - Novell DOS 7 DELWATCH.EXE - INSTALLATION CHECK

  INT 2F 10FF - Multiplex - DR-DOS 5.0 - ???

  INT 2F 1100 - NETWORK REDIRECTOR - INSTALLATION CHECK

  INT 2F 1100 - MSCDEX (MS CD-ROM Extensions) - INSTALLATION CHECK

  INT 2F 1101 - NETWORK REDIRECTOR - REMOVE REMOTE DIRECTORY

  INT 2F 1102 - IFSFUNC.EXE (DOS 4.x only) - REMOVE REMOTE DIRECTORY

  INT 2F 1103 - NETWORK REDIRECTOR - MAKE REMOTE DIRECTORY

  INT 2F 1104 - IFSFUNC.EXE (DOS 4.x only) - MAKE REMOTE DIRECTORY

  INT 2F 1105 - NETWORK REDIRECTOR - CHDIR

  INT 2F 1106 - NETWORK REDIRECTOR - CLOSE REMOTE FILE

  INT 2F 1107 - NETWORK REDIRECTOR - COMMIT REMOTE FILE

  INT 2F 1108 - NETWORK REDIRECTOR - READ FROM REMOTE FILE

  INT 2F 1109 - NETWORK REDIRECTOR - WRITE TO REMOTE FILE

  INT 2F 110A - NETWORK REDIRECTOR (DOS 3.x only) - LOCK REGION OF FILE

  INT 2F 110A - NETWORK REDIRECTOR (DOS 4.0+) - LOCK/UNLOCK REGION OF FILE

  INT 2F 110B - NETWORK REDIRECTOR (DOS 3.x only) - UNLOCK REGION OF FILE

  INT 2F 110C - NETWORK REDIRECTOR - GET DISK INFORMATION

  INT 2F 110D - IFSFUNC.EXE (DOS 4.x only) - SET REMOTE FILE'S ATTRIBUTES

  INT 2F 110E - NETWORK REDIRECTOR - SET REMOTE FILE'S ATTRIBUTES

  INT 2F 110F - NETWORK REDIRECTOR - GET REMOTE FILE'S ATTRIBUTES AND SIZE

  INT 2F 1110 - IFSFUNC.EXE (DOS 4.x only) - GET REMOTE FILE'S ATTRIBUTES AND SIZE

  INT 2F 1111 - NETWORK REDIRECTOR - RENAME REMOTE FILE

  INT 2F 1112 - IFSFUNC.EXE (DOS 4.x only) - RENAME REMOTE FILE

  INT 2F 1113 - NETWORK REDIRECTOR - DELETE REMOTE FILE

  INT 2F 1114 - IFSFUNC.EXE (DOS 4.x only) - DELETE REMOTE FILE

  INT 2F 1115 - IFSFUNC.EXE (DOS 4.x only) - OPEN REMOTE FILE

  INT 2F 1116 - NETWORK REDIRECTOR - OPEN EXISTING REMOTE FILE

  INT 2F 1117 - NETWORK REDIRECTOR - CREATE/TRUNCATE REMOTE FILE

  INT 2F 1118 - NETWORK REDIRECTOR - CREATE/TRUNCATE FILE WITHOUT CDS

  INT 2F 1119 - NETWORK REDIRECTOR - FIND FIRST FILE WITHOUT CDS

  INT 2F 111A - IFSFUNC.EXE (DOS 4.x only) - FIND NEXT FILE WITHOUT CDS

  INT 2F 111B - NETWORK REDIRECTOR - FINDFIRST

  INT 2F 111C - NETWORK REDIRECTOR - FINDNEXT

  INT 2F 111D - NETWORK REDIRECTOR - CLOSE ALL REMOTE FILES FOR PROCESS (ABORT)

  INT 2F 111E - NETWORK REDIRECTOR - DO REDIRECTION

  INT 2F 111F - NETWORK REDIRECTOR - PRINTER SETUP

  INT 2F 1120 - NETWORK REDIRECTOR - FLUSH ALL DISK BUFFERS

  INT 2F 1121 - NETWORK REDIRECTOR - SEEK FROM END OF REMOTE FILE

  INT 2F 1122 - NETWORK REDIRECTOR - PROCESS TERMINATION HOOK

  INT 2F 1123 - NETWORK REDIRECTOR - QUALIFY REMOTE FILENAME

  INT 2F 1124 - NETWORK REDIRECTOR - TURN OFF REMOTE PRINTER

  INT 2F 1125 - NETWORK REDIRECTOR - REDIRECTED PRINTER MODE

  INT 2F 1126 - NETWORK REDIRECTOR - REMOTE PRINTER ECHO ON/OFF

  INT 2F 1127 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

  INT 2F 1128 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

  INT 2F 1129 - IFSFUNC.EXE (DOS 4.x only) - UNUSED

  INT 2F 112A - IFSFUNC.EXE (DOS 4.x only) - CLOSE ALL FILES FOR PROCESS

  INT 2F 112B - IFSFUNC.EXE (DOS 4.x only) - GENERIC IOCTL

  INT 2F 112C - NETWORK REDIRECTOR (DOS 4.0+) - "UPDATE_CB" - ???

  INT 2F 112D - IFSFUNC.EXE (DOS 4.x only) - EXTENDED ATTRIBUTES

  INT 2F 112E - NETWORK REDIRECTOR (DOS 4.0+) - EXTENDED OPEN/CREATE FILE

  INT 2F 112F - IFSFUNC.EXE (DOS 4.x only) - IFS IOCTL

  INT 2F 1130 - IFSFUNC.EXE (DOS 4.x only) - GET IFSFUNC SEGMENT

  INT 2F 1180 - LAN Manager Enhanced DOS Services - ???

  INT 2F 1182 - LAN Manager Enhanced DOS Services - INSTALL SERVICE

  INT 2F 1184 - LAN Manager Enhanced DOS - ???

  INT 2F 1186 - LAN Manager Enhanced DOS - DosReadAsynchNmPipe

  INT 2F 118A - LAN Manager 2.0+ DOS Enhanced ENCRYPT.EXE - STREAM ENCRYPTION SERVICE

  INT 2F 118B - LAN Manager Enhanced DOS - ???

  INT 2F 118C - LAN Manager Enhanced DOS - ???

  INT 2F 118E - LAN Manager Enhanced DOS - ???

  INT 2F 118F - LAN Manager Enhanced DOS - DosWriteAsynchNmPipe

  INT 2F 1190 - LAN Manager Enhanced DOS - DosReadAsynchNmPipe2

  INT 2F 1191 - LAN Manager Enhanced DOS - DosWriteAsynchNmPipe2

  INT 2F 1200 - DOS 3.0+ internal - INSTALLATION CHECK

  INT 2F 1201 - DOS 3.0+ internal - CLOSE CURRENT FILE

  INT 2F 1202 - DOS 3.0+ internal - GET INTERRUPT ADDRESS

  INT 2F 1203 - DOS 3.0+ internal - GET DOS DATA SEGMENT

  INT 2F 1204 - DOS 3.0+ internal - NORMALIZE PATH SEPARATOR

  INT 2F 1205 - DOS 3.0+ internal - OUTPUT CHARACTER TO STANDARD OUTPUT

  INT 2F 1206 - DOS 3.0+ internal - INVOKE CRITICAL ERROR

  INT 2F 1207 - DOS 3.0+ internal - MAKE DISK BUFFER MOST-RECENTLY USED

  INT 2F 1208 - DOS 3.0+ internal - DECREMENT SFT REFERENCE COUNT

  INT 2F 1209 - DOS 3.0+ internal - FLUSH AND FREE DISK BUFFER

  INT 2F 120A - DOS 3.0+ internal - PERFORM CRITICAL ERROR INTERRUPT

  INT 2F 120B - DOS 3.0+ internal - SIGNAL SHARING VIOLATION TO USER

  INT 2F 120C - DOS 3.0+ internal - OPEN DEVICE AND SET SFT OWNER/MODE

  INT 2F 120D - DOS 3.0+ internal - GET DATE AND TIME

  INT 2F 120E - DOS 3.0+ internal - MARK ALL DISK BUFFERS UNREFERENCED

  INT 2F 120F - DOS 3.0+ internal - MAKE BUFFER MOST RECENTLY USED

  INT 2F 1210 - DOS 3.0+ internal - FIND UNREFERENCED DISK BUFFER

  INT 2F 1211 - DOS 3.0+ internal - NORMALIZE ASCIZ FILENAME

  INT 2F 1212 - DOS 3.0+ internal - GET LENGTH OF ASCIZ STRING

  INT 2F 1213 - DOS 3.0+ internal - UPPERCASE CHARACTER

  INT 2F 1214 - DOS 3.0+ internal - COMPARE FAR POINTERS

  INT 2F 1215 - DOS 3.0+ internal - FLUSH BUFFER

  INT 2F 1216 - DOS 3.0+ internal - GET ADDRESS OF SYSTEM FILE TABLE ENTRY

  INT 2F 1217 - DOS 3.0+ internal - GET CURRENT DIRECTORY STRUCTURE FOR DRIVE

  INT 2F 1218 - DOS 3.0+ internal - GET CALLER'S REGISTERS

  INT 2F 1219 - DOS 3.0+ internal - SET DRIVE???

  INT 2F 121A - DOS 3.0+ internal - GET FILE'S DRIVE

  INT 2F 121B - DOS 3.0+ internal - SET YEAR/LENGTH OF FEBRUARY

  INT 2F 121C - DOS 3.0+ internal - CHECKSUM MEMORY

  INT 2F 121D - DOS 3.0+ internal - SUM MEMORY

  INT 2F 121E - DOS 3.0+ internal - COMPARE FILENAMES

  INT 2F 121F - DOS 3.0+ internal - BUILD CURRENT DIRECTORY STRUCTURE

  INT 2F 1220 - DOS 3.0+ internal - GET JOB FILE TABLE ENTRY

  INT 2F 1221 - DOS 3.0+ internal - CANONICALIZE FILE NAME

  INT 2F 1222 - DOS 3.0+ internal - SET EXTENDED ERROR INFO

  INT 2F 1223 - DOS 3.0+ internal - CHECK IF CHARACTER DEVICE

  INT 2F 1224 - DOS 3.0+ internal - SHARING RETRY DELAY

  INT 2F 1225 - DOS 3.0+ internal - GET LENGTH OF ASCIZ STRING

  INT 2F 1226 - DOS 3.3+ internal - OPEN FILE

  INT 2F 1227 - DOS 3.3+ internal - CLOSE FILE

  INT 2F 1228 - DOS 3.3+ internal - MOVE FILE POINTER

  INT 2F 1229 - DOS 3.3+ internal - READ FROM FILE

  INT 2F 122A - DOS 3.3+ internal - SET FASTOPEN ENTRY POINT

  INT 2F 122B - DOS 3.3+ internal - IOCTL

  INT 2F 122C - DOS 3.3+ internal - GET DEVICE CHAIN

  INT 2F 122D - DOS 3.3+ internal - GET EXTENDED ERROR CODE

  INT 2F 122E - DOS 4.0+ internal - GET OR SET ERROR TABLE ADDRESSES

  INT 2F 122F - DOS 4.x internal - SET DOS VERSION NUMBER TO RETURN

  INT 2F 12FF - DR-DOS 6, Novell DOS 7 - EMM386.EXE - VIDEO MEMORY SPACE CONTROL

  INT 2F 12FF - Novell DOS 7 - SCRIPT.EXE - GET ???

  INT 2F 12FF - Novell DOS 7 - EMM386.EXE - GET VERSION???

  INT 2F 12FF - Novell DOS 7 - EMM386.EXE - ???

  INT 2F 12FF - Novell DOS 7 - EMM386.EXE - CHECK IF MULTITASKING SUPPORT LOADED???

  INT 2F 13-- - DOS 3.2+ - SET DISK INTERRUPT HANDLER

  INT 2F 13-- - MS-NET - ???

  INT 2F 1400 - NLSFUNC.COM - INSTALLATION CHECK

  INT 2F 1400 - European MS-DOS 4.0 POPUP - "CheckPu" - INSTALLATION CHECK

  INT 2F 1401 - NLSFUNC.COM - CHANGE CODE PAGE

  INT 2F 1401 - European MS-DOS 4.0 POPUP - "PostPu" - OPEN/CLOSE POPUP SCREEN

  INT 2F 1402 - NLSFUNC.COM - GET EXTENDED COUNTRY INFO

  INT 2F 1402 - European MS-DOS 4.0 POPUP - "SavePu" - SAVE POPUP SCREEN

  INT 2F 1403 - NLSFUNC.COM - SET CODE PAGE

  INT 2F 1403 - European MS-DOS 4.0 POPUP - "RestorePu" - RESTORE SCREEN

  INT 2F 1404 - NLSFUNC.COM - GET COUNTRY INFO

  INT 2F 14FE - DR-DOS 5.0 NLSFUNC - GET EXTENDED COUNTRY INFORMATION

  INT 2F 14FF - DR-DOS 5.0 NLSFUNC - PREPARE CODE PAGE

  INT 2F 1500 - DOS 4.00 GRAPHICS.COM - INSTALLATION CHECK

  INT 2F 1500 - CD-ROM - INSTALLATION CHECK

  INT 2F 1500 - CDBLITZ v2.11 - INSTALLATION CHECK

  INT 2F 1500 - CDBLITZ v2.11 - GET STATISTICS

  INT 2F 1500 - CDBLITZ v2.11 - ENABLE CACHE

  INT 2F 1500 - CDBLITZ v2.11 - DISABLE CACHE

  INT 2F 1500 - CDBLITZ v2.11 - SET 'MAX' MODE (CACHE BOTH DIRECTORIES AND DATA)

  INT 2F 1500 - CDBLITZ v2.11 - SET 'MIN' MODE (CACHE ONLY DIRECTORY ENTRIES)

  INT 2F 1500 - CDBLITZ v2.11 - FLUSH CACHE

  INT 2F 1500 - CDBLITZ v2.11 - GET CACHE STATISTICS

  INT 2F 1500 - CDBLITZ v2.11 - UNINSTALL

  INT 2F 1501 - CD-ROM - GET DRIVE DEVICE LIST

  INT 2F 1502 - CD-ROM - GET COPYRIGHT FILE NAME

  INT 2F 1503 - CD-ROM - GET ABSTRACT FILE NAME

  INT 2F 1504 - CD-ROM - GET BIBLIOGRAPHIC DOC FILE NAME

  INT 2F 1505 - CD-ROM - READ VTOC

  INT 2F 1506 - CD-ROM - TURN DEBUGGING ON

  INT 2F 1507 - CD-ROM - TURN DEBUGGING OFF

  INT 2F 1508 - CD-ROM - ABSOLUTE DISK READ

  INT 2F 1509 - CD-ROM - ABSOLUTE DISK WRITE

  INT 2F 150A - CD-ROM - RESERVED

  INT 2F 150B - CD-ROM v2.00+ - DRIVE CHECK

  INT 2F 150C - CD-ROM v2.00+ - GET MSCDEX.EXE VERSION (VERSION CHECK)

  INT 2F 150D - CD-ROM v2.00+ - GET CD-ROM DRIVE LETTERS

  INT 2F 150E - CD-ROM v2.00+ - GET/SET VOLUME DESCRIPTOR PREFERENCE

  INT 2F 150F - CD-ROM v2.00+ - GET DIRECTORY ENTRY

  INT 2F 1510 - CD-ROM v2.10+ - SEND DEVICE DRIVER REQUEST

  INT 2F 15FF - CD-ROM - CORELCDX - INSTALLATION CHECK

  INT 2F 1600 - MS Windows - WINDOWS ENHANCED MODE INSTALLATION CHECK

  INT 2F 1602 - MS Windows/386 2.x - GET API ENTRY POINT

  INT 2F 1603 - MS Windows/386 - GET INSTANCE DATA

  INT 2F 1605 - MS Windows - WINDOWS ENHANCED MODE & 286 DOSX INIT BROADCAST

  INT 2F 1606 - MS Windows - WINDOWS ENHANCED MODE & 286 DOSX EXIT BROADCAST

  INT 2F 1607 - MS Windows - VIRTUAL DEVICE CALL OUT API

  INT 2F 1607 - MS Windows - "V86MMGR" VIRTUAL DEVICE API

  INT 2F 1607 - MS Windows - "VMD" VIRTUAL MOUSE DEVICE API

  INT 2F 1607 - MS Windows 3.1 - "BLOCKDEV" VIRTUAL HARD DISK DEVICE API

  INT 2F 1607 - MS Windows - "VNETBIOS" VIRTUAL DEVICE API

  INT 2F 1607 - MS Windows - "DOSMGR" VIRTUAL DEVICE API

  INT 2F 1607 - MS Windows - "VMPoll" VIRTUAL DEVICE - IDLE CALLOUT

  INT 2F 1607 - MS Windows - "PageFile" VIRTUAL DEVICE - GET LOCK BYTE

  INT 2F 1607 - Rational Systems DOS/4GW - ???

  INT 2F 1608 - MS Windows - WINDOWS ENHANCED MODE INIT COMPLETE BROADCAST

  INT 2F 1609 - MS Windows - WINDOWS ENHANCED MODE BEGIN EXIT BROADCAST

  INT 2F 160A - MS Windows 3.1 - IDENTIFY WINDOWS VERSION AND TYPE

  INT 2F 160B - MS Windows 3.1 - IDENTIFY TSRs

  INT 2F 160C - MS Windows 3.1 - DETECT ROMs

  INT 2F 1610 - XMS v1.x only - GET DRIVER ADDRESS

  INT 2F 1680 - MS Windows, DPMI, various - RELEASE CURRENT VIRTUAL MACHINE TIME-SLICE

  INT 2F 1681 - MS Windows 3+ - BEGIN CRITICAL SECTION

  INT 2F 1682 - MS Windows 3+ - END CRITICAL SECTION

  INT 2F 1683 - MS Windows 3+ - GET CURRENT VIRTUAL MACHINE ID

  INT 2F 1684 - MS Windows - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - VPICD - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - VTD - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - REBOOT - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - VMD - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - DOSMGR - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - SHELL - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - PAGEFILE - GET DEVICE API ENTRY POINT

  INT 2F 1684 - Intel Plug-and-Play - CONFIGURATION MANAGER - GET ENTRY POINT

  INT 2F 1684 - MS Windows - VADMAD - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - VSWITCHD - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - PHARLAPX - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - EDOS - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - WPS - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - POSTMSG - GET DEVICE API ENTRY POINT

  INT 2F 1684 - MS Windows - VbillD - GET DEVICE API ENTRY POINT

  INT 2F 1685 - MS Windows - SWITCH VMs AND CALLBACK

  INT 2F 1686 - DOS Protected-Mode Interface - DETECT MODE

  INT 2F 1687 - DOS Protected-Mode Interface - INSTALLATION CHECK

  INT 2F 1688 - MS Windows 3.0, 386MAX v6.01 - GET ALIAS SELECTOR TO LDT

  INT 2F 1689 - MS Windows 3.0+ - KERNEL IDLE CALL

  INT 2F 168A - DPMI 0.9+ - GET VENDOR-SPECIFIC API ENTRY POINT

  INT 2F 168B - MS Windows 3.1 - SET FOCUS TO SPECIFIED VIRTUAL MACHINE

  INT 2F 168C - MS Windows 3.1 - RESTART COMMAND

  INT 2F 1700 - MS Windows "WINOLDAP" - IDENTIFY WinOldAp VERSION

  INT 2F 1701 - MS Windows "WINOLDAP" - OPEN CLIPBOARD

  INT 2F 1702 - MS Windows "WINOLDAP" - EMPTY CLIPBOARD

  INT 2F 1703 - MS Windows "WINOLDAP" - SET CLIPBOARD DATA

  INT 2F 1704 - MS Windows "WINOLDAP" - GET CLIPBOARD DATA SIZE

  INT 2F 1705 - MS Windows "WINOLDAP" - GET CLIPBOARD DATA

  INT 2F 1708 - MS Windows "WINOLDAP" - CloseClipboard

  INT 2F 1709 - MS Windows "WINOLDAP" - COMPACT CLIPBOARD

  INT 2F 170A - MS Windows "WINOLDAP" - GET DEVICE CAPABILITIES

  INT 2F 18-- - MS-Manager

  INT 2F 1900 - DOS 4.x only SHELLB.COM - INSTALLATION CHECK

  INT 2F 1901 - DOS 4.x only SHELLB.COM - SHELLC.EXE INTERFACE

  INT 2F 1902 - DOS 4.x only SHELLB.COM - COMMAND.COM INTERFACE

  INT 2F 1903 - DOS 4.x only SHELLB.COM - COMMAND.COM interface

  INT 2F 1904 - DOS 4.x only SHELLB.COM - SHELLB transient to TSR intrface

  INT 2F 1A00 - DOS 4.0+ ANSI.SYS - INSTALLATION CHECK

  INT 2F 1A00 - ANSIPLUS.SYS v2.00+ - INSTALLATION CHECK

  INT 2F 1A00 - AVATAR.SYS - INSTALLATION CHECK

  INT 2F 1A01 - DOS 4.0+ ANSI.SYS internal - GET/SET DISPLAY INFORMATION

  INT 2F 1A02 - DOS 4.0+ ANSI.SYS internal - MISCELLANEOUS REQUESTS

  INT 2F 1A21 - AVATAR.SYS - SET DRIVER STATE

  INT 2F 1A3C - AVATAR.SYS v0.11 - ???

  INT 2F 1A3E - AVATAR.SYS v0.11 - ???

  INT 2F 1A3F - AVATAR.SYS - QUERY DRIVER STATE

  INT 2F 1A42 - AVATAR Serial Dispatcher - INSTALL IRQ3 HANDLER

  INT 2F 1A43 - AVATAR Serial Dispatcher - INSTALL IRQ4 HANDLER

  INT 2F 1A44 - AVATAR.SYS v0.11+ - GET DATA SEGMENT

  INT 2F 1A52 - AVATAR.SYS v0.11 - GET ???

  INT 2F 1A53 - AVATAR.SYS v0.11 - ???

  INT 2F 1A62 - AVATAR Serial Dispatcher - UNINSTALL IRQ3 HANDLER

  INT 2F 1A63 - AVATAR Serial Dispatcher - UNINSTALL IRQ4 HANDLER

  INT 2F 1A72 - AVATAR.SYS v0.11 - GET ??? SIZE

  INT 2F 1A7B - AVATAR.SYS v0.11 - ???

  INT 2F 1A7D - AVATAR.SYS v0.11 - ???

  INT 2F 1AA5 - ANSIPLUS v4.00+ - GET/SET ANSIPLUS CLIPBOARD

  INT 2F 1AA6 - ANSIPLUS v4.00+ - ENABLE/DISABLE ANSIPLUS DRIVER

  INT 2F 1AA7 - ANSIPLUS v4.00+ - ENABLE/DISABLE ANSIPLUS FEATURES

  INT 2F 1AA8 - ANSIPLUS v3.10+ - GET NEXT ANSIPLUS SCROLLBACK LINE

  INT 2F 1AA9 - ANSIPLUS v3.10+ - GET ANSIPLUS SCROLLBACK INFORMATION

  INT 2F 1AAA - ANSIPLUS v3.01+ - GET/SET ANSIPLUS SCREEN SAVER BLANKING TIME

  INT 2F 1AAB - ANSIPLUS v3.01+ - SET ANSIPLUS KEY REPEAT RATE

  INT 2F 1AAC - ANSIPLUS v3.00+ - LOAD CHARACTER GENERATOR

  INT 2F 1AAD - ANSIPLUS v2.00+ - ANSIPLUS DEVICE STATUS REPORT

  INT 2F 1AAD - AVATAR.SYS v0.11 - ???

  INT 2F 1AAC - ANSIPLUS v3.00+ - LOAD CHARACTER GENERATOR

  INT 2F 1B00 - DOS 4+ XMA2EMS.SYS extension internal - INSTALLATION CHECK

  INT 2F 1B-- - DOS 4+ XMA2EMS.SYS extension internal - GET HIDDEN FRAME INFORMATION

  INT 2F 2300 - DR-DOS 5.0 GRAFTABL - INSTALLATION CHECK

  INT 2F 23-- - DR-DOS 5.0 GRAFTABL - GET GRAPHICS DATA

  INT 2F 2700 - DR-DOS 6.0 TaskMAX - INSTALLATION CHECK

  INT 2F 2701 - DR-DOS 6.0 TaskMAX - GET STATUS

  INT 2F 2702 - DR-DOS 6.0 TaskMAX - GET PER-TASK EMS LIMIT

  INT 2F 2703 - DR-DOS 6.0 TaskMAX - SET PER-TASK EMS LIMIT

  INT 2F 2704 - DR-DOS 6.0 TaskMAX - REGISTER/UNREGISTER TASK MANAGER

  INT 2F 2705 - DR-DOS 6.0 TaskMAX - ENABLE/DISABLE DIRECT SWITCHING

  INT 2F 2706 - DR-DOS 6.0 TaskMAX - SWITCH TO SPECIFIED TASK

  INT 2F 2707 - DR-DOS 6.0 TaskMAX - CREATE NEW TASK

  INT 2F 2708 - DR-DOS 6.0 TaskMAX - DELETE TASK

  INT 2F 2709 - DR-DOS 6.0 TaskMAX - NAME TASK

  INT 2F 270A - DR-DOS 6.0 TaskMAX - CONVERT TASK INDEX TO TASK ID

  INT 2F 270B - DR-DOS 6.0 TaskMAX - CONVERT TASK ID TO TASK INDEX

  INT 2F 270C - DR-DOS 6.0 TaskMAX - CHECK OPEN FILES

  INT 2F 270D - DR-DOS 6.0 TaskMAX - CHECK IF TASK RUNNING PRIMARY COMMAND INTERPRETER

  INT 2F 270E - DR-DOS 6.0 TaskMAX - GET/SET TEXT PASTE LEAD-IN

  INT 2F 270F - DR-DOS 6.0 TaskMAX - GET/SET NUMERIC PASTE LEAD-IN

  INT 2F 2710 - DR-DOS 6.0 TaskMAX - GET/SET PASTE LINE TERMINATOR STRING

  INT 2F 2711 - DR-DOS 6.0 TaskMAX - GET/SET NUMERIC PASTE DECIMAL POINT

  INT 2F 2712 - DR-DOS 6.0 TaskMAX - INITIATE EXPORTING TASK DATA

  INT 2F 2713 - DR-DOS 6.0 TaskMAX - INITIATE PASTE OPERATION

  INT 2F 2714 - DR-DOS 6.0 TaskMAX - GET SWAP SPACE INFO

  INT 2F 2715 - DR-DOS 6.0 TaskMAX - SWITCH TO TASK MANAGER

  INT 2F 2716 - DR-DOS 6.0 TaskMAX - GET PASTE BUFFER STATUS

  INT 2F 2717 - DR-DOS 6.0 TaskMAX - PASTE DATA DIRECTLY TO APPLICATION BUFFER

  INT 2F 2718 - DR-DOS 6.0 TaskMAX - COPY DATA DIRECTLY INTO PASTE BUFFER

  INT 2F 2719 - Novell DOS 7 TaskMGR - NOP

  INT 2F 271C - Novell DOS 7 TaskMGR - ???

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2780 - Novell DOS 7 - EMM386.EXE - MULTITASKING API

  INT 2F 2781 - Novell DOS 7 TaskMGR - BEGIN CRITICAL SECTION???

  INT 2F 2782 - Novell DOS 7 TaskMGR - END CRITICAL SECTION???

  INT 2F 2783 - Novell DOS 7 - EMM386.EXE - GET ???

  INT 2F 278F - Novell DOS 7 TaskMGR - ??? API

  INT 2F 2A-- - Gammafax DOS Dispatcher INTERFACE

  INT 2F 2E00 - Novell DOS 7 - GRAFTABL - INSTALLATION CHECK

  INT 2F 2E-- - Novell DOS 7 - GRAFTABL - GET FONT TABLE

  INT 2F 3900 - Kingswood TSR INTERFACE - COMPATIBILITY MODE

  INT 2F 39-- - Kingswood TSR INTERFACE - INSTALLATION CHECK

  INT 2F 39-- - Kingswood TSR INTERFACE - REMOVAL CHECK

  INT 2F 39-- - Kingswood TSR INTERFACE - APPLICATION-SPECIFIC FUNCTION CALLS

  INT 2F 3901 - Kingswood TSR Windows - OPEN WINDOW

  INT 2F 3901 - Kingswood TSR Windows - HIDE WINDOWS

  INT 2F 3901 - Kingswood TSR Windows - SHOW WINDOWS

  INT 2F 3901 - Kingswood TSR Windows - CLOSE WINDOW

  INT 2F 3901 - Kingswood TSR Windows - SET WINDOW TITLE

  INT 2F 3901 - Kingswood TSR Windows - POSITION CURSOR

  INT 2F 3901 - Kingswood TSR Windows - DISPLAY STRING

  INT 2F 3901 - Kingswood TSR Windows - SCROLL WINDOW

  INT 2F 3901 - Kingswood TSR Windows - SOUND BEEPER

  INT 2F 3901 - Kingswood TSR Windows - ADD OR REMOVE USER

  INT 2F 3912 - Kingswood ANSI display driver - SET COMPATIBILITY MODE

  INT 2F 3912 - Kingswood ANSI display driver - SET FLAGS

  INT 2F 4000 - Windows 3.x (OS/2 2.x???) - GET VIRTUAL DEVICE DRIVER (VDD) CAPABLTIES

  INT 2F 4001 - OS/2 compatibility box - SWITCHING DOS TO BACKGROUND

  INT 2F 4002 - OS/2 compatibility box - SWITCHING DOS TO FOREGROUND

  INT 2F 4003 - Windows 3.x - ENTERING VIDEO DRIVER CRITICAL SECTION

  INT 2F 4004 - Windows 3.x - EXITING VIDEO DRIVER CRITICAL SECTION

  INT 2F 4005 - Windows 3.x - SWITCHING DOS TO BACKGROUND

  INT 2F 4006 - Windows 3.x - SWITCHING DOS TO FOREGROUND

  INT 2F 4007 - Windows 3.x - ENABLE VDD TRAPPING OF VIDEO REGISTERS

  INT 2F 4010 - OS/2 v2.0+ - INSTALLATION CHECK / GET VERSION

  INT 2F 4040 - PharLap 286|DOS-Extender Lite v2.5 - ???

  INT 2F 4100 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - INSTALLATION CHECK

  INT 2F 4103 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - ???

  INT 2F 4104 - DOS Enhanced LAN Manager 2.0+ MINIPOP/NETPOPUP - ???

  INT 2F 42-- - LAN Manager 2.0 DOS Enhanced MSRV.EXE - MESSENGER SERVICE

  INT 2F 4300 - EXTENDED MEMORY SPECIFICATION (XMS) v2+ - INSTALLATION CHECK

  INT 2F 4308 - HIMEM.SYS v2.77+ - GET A20 HANDLER NUMBER

  INT 2F 4309 - HIMEM.SYS v3.09+ - GET XMS HANDLE TABLE

  INT 2F 4310 - EXTENDED MEMORY SPECIFICATION (XMS) v2+ - GET DRIVER ADDRESS

  INT 2F 4310 - Cloaking - REAL-MODE API

  INT 2F 4310 - Helix Netroom RM386 v6.00 - XMS EXTENSIONS

  INT 2F 4310 - NEC PC-9800 - XMZ - PRIVATE API

  INT 2F 4320 - HIMEM.SYS - Mach 20 SUPPORT

  INT 2F 4330 - HIMEM.SYS v2.77+ - GET EXTERNAL A20 HANDLER ADDRESS

  INT 2F 43E0 - DOS Protected Mode Services (DPMS) v1.0 - INSTALLATION CHECK

  INT 2F 43E1 - DOS Protected Mode Services (DPMS) v1.0 - REGISTER CLIENT

  INT 2F 43E2 - DOS Protected Mode Services (DPMS) v1.0 - ENABLE/DISABLE DPMS

  INT 2F 43E3 - DOS Protected Mode Services (DPMS) v1.0 - DPMS STARTUP BROADCAST

  INT 2F 43E4 - DOS Protected Mode Services (DPMS) v1.0 - DPMS EXIT BROADCAST

  INT 2F 44-- - DOS Extender support???

  INT 2F 4500 - Microsoft Profiler (PROF.COM/VPROD.386) - INSTALLATION CHECK

  INT 2F 4501 - Microsoft Profiler (PROF.COM/VPROD.386) - SETUP PROFILER

  INT 2F 4502 - Microsoft Profiler (PROF.COM/VPROD.386) - SET SAMPLING RATE

  INT 2F 4503 - Microsoft Profiler (PROF.COM/VPROD.386) - START PROFILING

  INT 2F 4504 - Microsoft Profiler (PROF.COM/VPROD.386) - STOP PROFILING

  INT 2F 4505 - Microsoft Profiler (PROF.COM/VPROD.386) - CLEAR PROFILING DATA

  INT 2F 4506 - Microsoft Profiler (PROF.COM/VPROD.386) - "ProfFlush"

  INT 2F 4507 - Microsoft Profiler (PROF.COM/VPROD.386) - "ProfFinish"

  INT 2F 4508 - Microsoft Profiler (PROF.COM/VPROD.386) - ALTERNATE SEGDEBUG IFACE

  INT 2F 4601 - MS Windows WINOLDAP - SWITCHING ???

  INT 2F 4602 - MS Windows WINOLDAP - SWITCHING ???

  INT 2F 46-- - Windows/286 DOS Extender

  INT 2F 4653 - F-PROT v1.x only - F-LOCK.EXE - API

  INT 2F 4653 - F-PROT v1.x only - F-XCHK.EXE - API

  INT 2F 4653 - F-PROT v1.x only - F-POPUP.EXE - API

  INT 2F 4653 - F-PROT v1.x only - F-DLOCK.EXE - API

  INT 2F 4680 - MS Windows v3.0 - INSTALLATION CHECK

  INT 2F 47-- - ???

  INT 2F 4800 - DOS 5+ DOSKEY - INSTALLATION CHECK

  INT 2F 4800 - PCED v2.1 - INSTALLATION CHECK

  INT 2F 4810 - DOS 5+ DOSKEY, PCED v2.1 - READ INPUT LINE FROM CONSOLE

  INT 2F 48C0 - PCED v2.1 - PCED API

  INT 2F 48C1 - PCED/VSTACK - INSTALLATION CHECK

  INT 2F 48C2 - PCED/ATTRIB - INSTALLATION CHECK

  INT 2F 48C3 - PCED/KEYDEF - INSTALLATION CHECK

  INT 2F 48C4 - PCED/FLIST - INSTALLATION CHECK

  INT 2F 48C5 - PCED/ASSOC - INSTALLATION CHECK

  INT 2F 48C5 - PCED/ASSOC - VERSION CHECK

  INT 2F 48C5 - PCED/ASSOC - ASSOCIATION TEST

  INT 2F 49-- - ???

  INT 2F 4A00 - DOS 5+ - FLOPPY-DISK LOGICAL DRIVE CHANGE NOTIFICATION

  INT 2F 4A01 - DOS 5+ - QUERY FREE HMA SPACE

  INT 2F 4A02 - DOS 5+ - ALLOCATE HMA SPACE

  INT 2F 4A05 - DOS 5+ DOSSHELL - TASK SWITCHING API???

  INT 2F 4A06 - DOS 5+ - DOS SUPERVISOR "REBOOT PANEL" - ADJUST MEMORY SIZE

  INT 2F 4A07 - RESERVED FOR PROTMAN SUPPORT

  INT 2F 4A10 - SMARTDRV v4.00+ - INSTALLATION CHECK AND HIT RATIOS

  INT 2F 4A10 - Novell NWCACHE - ???

  INT 2F 4A10 - SMARTDRV v4.00+ - FLUSH BUFFERS (COMMIT CACHE)

  INT 2F 4A10 - Novell NWCACHE - ???

  INT 2F 4A10 - SMARTDRV v4.00+ - RESET CACHE

  INT 2F 4A10 - SMARTDRV v4.00+ - STATUS

  INT 2F 4A10 - SMARTDRV v4.00+ - GET CACHE SIZE

  INT 2F 4A10 - SMARTDRV v4.00+ - GET DOUBLE-BUFFER STATUS

  INT 2F 4A10 - SMARTDRV v4.00+ - CHECK IF DRIVE CACHEABLE

  INT 2F 4A10 - SMARTDRV v4.00+ - GET DEVICE DRIVER FOR DRIVE

  INT 2F 4A10 - SMARTDRV v4.20+ - GET/SET FLUSH BEFORE PROMPT, CD-ROM SUPPORT

  INT 2F 4A10 - SMARTDRV v4.00+ - GET ELEMENT STATUS TABLE

  INT 2F 4A10 - SMARTDRV v4.00+ - SIGNAL SERIOUS ERROR

  INT 2F 4A11 - DBLSPACE.BIN - "GetVersion" - INSTALLATION CHECK

  INT 2F 4A11 - DBLSPACE.BIN - "GetDriveMapping" - GET DRIVE MAPPING

  INT 2F 4A11 - DBLSPACE.BIN - "Swap Drive" - SWAP DRIVE LETTERS OF CVF AND HOST DRIVE

  INT 2F 4A11 - DBLSPACE.BIN - "DSGetEntryPoints" - GET DEVICE DRIVER ENTRY POINTS

  INT 2F 4A11 - DBLSPACE.BIN - "DSSetEntryPoints" - SET DEVICE DRIVER ENTRY POINTS

  INT 2F 4A11 - DBLSPACE.BIN - "ActivateDrive" - MOUNT COMPRESSED DRIVE

  INT 2F 4A11 - DBLSPACE.BIN - "DeactivateDrive" - UNMOUNT COMPRESSED DRIVE

  INT 2F 4A11 - DBLSPACE.BIN - "GetDriveSpace" - GET SPACE AVAIL ON COMPRESSED DRIVE

  INT 2F 4A11 - DBLSPACE.BIN - "GetFileFragmentSpace" - GET SIZE OF FRAGMENT HEAP

  INT 2F 4A11 - DBLSPACE.BIN - "GetExtraInfo" - DETERMINE NUMBER OF DISK_UNIT STRUCTS

  INT 2F 4A11 - DBLSPACE.BIN v6.2 - SET AUTOMOUNT DRIVES

  INT 2F 4A11 - DBLSPACE.BIN v6.2 - GET AUTOMOUNT DRIVES

  INT 2F 4A11 - DBLSPACE.BIN - RELOCATE

  INT 2F 4A11 - DBLSPACE.BIN - GET RELOCATION SIZE

  INT 2F 4A12 - Microsoft Realtime Compression Interface (MRCI) - RAM-BASED SERVER

  INT 2F 4A12 - Stacker 4 LZS Compression Interface (LZSAPI)

  INT 2F 4A13 - DBLSPACE.BIN - GET ??? ENTRY POINTS

  INT 2F 4B-- - LAN Manager 2.0 DOS Enh NETWKSTA.EXE - NETWORK WORKSTATION REDIRECTOR

  INT 2F 4B01 - DOS 5+ TASK SWITCHER - BUILD CALLOUT CHAIN

  INT 2F 4B02 - DOS 5+ TASK SWITCHER - INSTALLATION CHECK

  INT 2F 4B03 - DOS 5+ TASK SWITCHER - ALLOCATE SWITCHER ID

  INT 2F 4B04 - DOS 5+ TASK SWITCHER - FREE SWITCHER ID

  INT 2F 4B05 - DOS 5+ TASK SWITCHER - IDENTIFY INSTANCE DATA

  INT 2F 4B06 - MS Windows - WIN.COM - GET ??? POINTER TO WIN.COM

  INT 2F 4B20 - MS Windows 3 - WIN.COM - SET PROGRAM TO EXECUTE ON EXIT

  INT 2F 4B80 - MS Windows - WSWAP.EXE - RESET INTERNAL VARIABLES

  INT 2F 4C-- - Advanced Power Management

  INT 2F 4D-- - ???

  INT 2F 4E53 - SilverNET v2+ - INSTALLATION CHECK

  INT 2F 4E53 - SilverNET - GET RUNTIME PARAMETER

  INT 2F 4E53 - SilverNET - SET RUNTIME PARAMETERS

  INT 2F 5100 - ODIHLP.EXE - INSTALLATION CHECK

  INT 2F 5200 - JAM.SYS v1.10+ - "GetVersion" - INSTALLATION CHECK

  INT 2F 5201 - JAM.SYS v1.10+ - "GetInfo" - GET COMPRESSED DRIVE INFORMATION

  INT 2F 5202 - JAM.SYS v1.10+ - "Attach" - MOUNT COMPRESSED DRIVE

  INT 2F 5203 - JAM.SYS v1.10+ - "Detach" - UNMOUNT COMPRESSED DRIVE

  INT 2F 5204 - JAM.SYS v1.10+ - "Lock" - LOCK COMPRESSED DRIVE

  INT 2F 5205 - JAM.SYS v1.10+ - "UnLock" - UNLOCK COMPRESSED DRIVE

  INT 2F 5206 - JAM.SYS v1.10+ - "Read" - PHYSICAL READ DATA FROM JAM ARCHIVE

  INT 2F 5207 - JAM.SYS v1.10+ - "Write" - PHYSICAL WRITE DATA TO JAM ARCHIVE

  INT 2F 53-- - POWER.EXE - APM event broadcasting???

  INT 2F 530B - ??? (MOUSEPWR.COM, others) - ???

  INT 2F 5400 - POWER.EXE - INSTALLATION CHECK

  INT 2F 5401 - POWER.EXE - GET/SET POWER STATUS

  INT 2F 5402 - POWER.EXE - GET/SET IDLE DETECTION STRATEGY

  INT 2F 5403 - POWER.EXE - GET/SET ADVANCED POWER MANAGEMENT SETTING

  INT 2F 5453 - TesSeRact RAM-RESIDENT PROGRAM INTERFACE

  INT 2F 5480 - POWER.EXE - GET/SET ???

  INT 2F 5481 - POWER.EXE - GET STATISTICS

  INT 2F 5482 - POWER.EXE - GET/SET APM POLLING FREQUENCY

  INT 2F 548F - POWER.EXE - GET/SET ???

  INT 2F 5500 - DOS 5+ - COMMAND.COM INTERFACE

  INT 2F 5501 - DOS 5+ - ROM COMMAND.COM INTERFACE

  INT 2F 5600 - INTERLNK - INSTALLATION CHECK

  INT 2F 5601 - INTERLNK - CHECK IF REDIRECTED DRIVE

  INT 2F 5602 - INTERLNK - GET ???

  INT 2F 57-- - ???

  INT 2F 5758 - Helix Multimedia Cloaking - CACHECLK - INSTALLATION CHECK

  INT 2F 5D00 - PCMCIA - AWARD PCDISK - GET INFO FROM DRIVER ???

  INT 2F 5D01 - PCMCIA - AWARD PCDISK - PUT INFO INTO DRIVER ???

  INT 2F 60FF - IPLAY v1.00b - INSTALLATION CHECK

  INT 2F 60FF - IPLAY v1.00b - GET DATA SEGMENT

  INT 2F 6282 - PC Tools v7.0+ VDEFEND, VSAFE, VWATCH, DATAMON - SET ??? ADDRESS

  INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT       - INSTALLATION CHECK

  INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET ???

  INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - GET OPTIONS

  INT 2F 6284 - PC Tools v7-8 DATAMON, v9+ DPROTECT - SET OPTION??? FLAGS

  INT 2F 6284 - PC Tools v8 DATAMON, v9+ DPROTECT - ???

  INT 2F 6400 - SCRNSAV2.COM - INSTALLATION CHECK

  INT 2F 7000 - License Service API - INSTALLATION CHECK

  INT 2F 7001 - License Service API - REQUEST LICENSE

  INT 2F 7002 - License Service API - RELEASE LICENSE

  INT 2F 7003 - License Service API - UPDATE

  INT 2F 7004 - License Service API - GET ERROR

  INT 2F 7005 - License Service API - QUERY LICENSE

  INT 2F 7041 - HP 200LX - KEY200 - INSTALLATION CHECK

  INT 2F 7200 - SRDISK v1.30+ - INSTALLATION CHECK

  INT 2F 7201 - SRDISK v2.02 - GET CODE/DATA SEGMENT

  INT 2F 7A00 - Novell NetWare - LOW-LEVEL API (IPX) INSTALLATION CHECK

  INT 2F 7A10 - Novell NetWare - TBMI v1.1+ - GET TBMI STATUS

  INT 2F 7A11 - Novell NetWare - TBMI v1.1+ - GET INT2F HANDLERS

  INT 2F 7A12 - Novell NetWare - TBMI v1.1+ - GET INT64 HANDLERS

  INT 2F 7A13 - Novell NetWare - TBMI v1.1+ - GET INT7A HANDLERS

  INT 2F 7A14 - Novell NetWare - TBMI v1.1+ - GET STATISTICS

  INT 2F 7A15 - Novell NetWare - TBMI v1.1 only - RESET ???

  INT 2F 7A16 - Novell NetWare - TBMI v1.1 only - ???

  INT 2F 7A17 - Novell NetWare - TBMI v1.1 only - ???

  INT 2F 7A18 - Novell NetWare - TASKID v1.0 - INSTALLATION CHECK

  INT 2F 7A19 - Novell NetWare - TASKID v1.0 - GET INT 08 HANDLERS

  INT 2F 7A1A - Novell NetWare - TASKID v1.0 - GET INT 2F HANDLERS

  INT 2F 7A1B - Novell NetWare - TASKID v1.0 - GET DIAGNOSTICS INFORMATION

  INT 2F 7A1C - Novell NetWare - TBMI v1.1+ - ???

  INT 2F 7A1D - Novell NetWare - TBMI v1.1+ - ???

  INT 2F 7A1E - Novell NetWare - TBMI v1.1+ - ???

  INT 2F 7A20 - Novell NetWare - Adv NetWare 4.0 DOS Requester - GET VLM CALL ADDRESS

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM CallA ADDRESS

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM MULTIPLEX ADDRESS

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM PARSE API ADDRESS

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM MULTICAST CALLOUT

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET VLM INT 24 ADDRESS

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

  INT 2F 7A20 - Novell NetWare - DOS Requester v1.03+ - GET ??? ENTRY POINT

  INT 2F 7A21 - Novell NetWare - DOS Requester - BROADCAST CALLBACK

  INT 2F 7A22 - Novell NetWare - DOS Requester - BROADCAST/SFT3 INFORM

  INT 2F 7A2F - Novell NetWare - IPXODI v2.12 - GET ???

  INT 2F 7A2F - Personal NetWare - HRMIB - UNINSTALL

  INT 2F 7A40 - Novell NetWare - TCP/IP Protocol Stack - INSTALLATION CHECK

  INT 2F 7A41 - Novell NetWare - TCP/IP Protocol Stack - WINDOWS SUPPORT???

  INT 2F 7A42 - Novell NetWare - TCPIP.EXE v4.1 - GET ??? ENTRY POINT

  INT 2F 7A43 - Novell NetWare - TCPIP.EXE v4.1 - GET ???

  INT 2F 7A44 - Novell NetWare - TCPIP.EXE v4.1 - SET ???

  INT 2F 7A4C - Novell NetWare - TCPIP.EXE v4.1 - GET ???

  INT 2F 7A4D - Novell NetWare - ???

  INT 2F 7A4E - Novell LAN Workplace for DOS - RARPD.EXE - INSTALLATION CHECK

  INT 2F 7A4F - Novell LAN Workplace for DOS - RARPD.EXE - UNINSTALL

  INT 2F 7A4F - Novell NetWare - SNMP.EXE - INSTALLATION CHECK

  INT 2F 7A4F - Novell NetWare - SNMP.EXE - ???

  INT 2F 7A80 - Novell NetWare - SHELL 3.01d BROADCAST - ABNORMAL EXIT

  INT 2F 7A81 - Novell NetWare - SHELL 3.01d BROADCAST - SET SHELL INT 21 HANDLER

  INT 2F 7A85 - Novell NetWare - shell 3.01 - BROADCAST INFORM

  INT 2F 7A90 - Novell NetWare - NETBIOS.EXE 3+ - INSTALLATION CHECK

  INT 2F 7AA0 - Personal NetWare - HRMIB - ???

  INT 2F 7AC1 - LAN HiJack - LHR - DISABLE???

  INT 2F 7AC2 - LAN HiJack - LHR - SYNCHRONIZE SHIFT STATES???

  INT 2F 7AC3 - LAN HiJack - LHR - CLEAR ??? FLAG

  INT 2F 7AC8 - LAN HiJack - LHR - ENABLE FUNCTIONS

  INT 2F 7AC9 - LAN HiJack - LHR - DISABLE FUNCTIONS

  INT 2F 7ACA - LAN HiJack - LHJ - ???

  INT 2F 7ACB - LAN HiJack - LHJ - ???

  INT 2F 7ACC - LAN HiJack - LHJ - ???

  INT 2F 7ACF - LAN HiJack - LHR - INSTALLATION CHECK

  INT 2F 7AF0 - Novell NetWare - DOSNP.EXE v1.30G - INSTALLATION CHECK

  INT 2F 7AF1 - Novell NetWare - Access Server Driver - INSTALLATION CHECK

  INT 2F 7AFE - Novell NetWare - DOSNP.EXE - INSTALLATION CHECK

  INT 2F 7AFF - Novell NetWare - TBMI v1.1+ - INSTALLATION CHECK / Windows SUPPORT

  INT 2F 7AFF - Novell NetWare - TBMI v1.1+, shell v3.01d - INSTALLATION CHECK???

  INT 2F 7F00 - Jim Harper's CD-ROM redirector SCSI driver - INSTALLATION CHECK

  INT 2F 7F01 - Jim Harper's CD-ROM redirector SCSI driver - DO COMMAND

  INT 2F 7F02 - Jim Harper's CD-ROM redirector SCSI driver - DO RESET

  INT 2F 7F03 - Jim Harper's CD-ROM redirector SCSI driver - UNINSTALL

  INT 2F 7F24 - Multiplex - ???

  INT 2F 7F26 - Multiplex - ???

  INT 2F 8000 - EASY-NET - INSTALLATION CHECK

  INT 2F 8000 - Nanosoft, Inc. TurboNET server - INSTALLATION CHECK

  INT 2F 8000 - CS_TSR specification - TSR INSTALLATION CHECK

  INT 2F 8000 - FaxBIOS interface - INSTALLATION CHECK

  INT 2F 8001 - Nanosoft, Inc. TurboNET server - ???

  INT 2F 8001 - CS_TSR specification - GET HANDLE (TSR-SPECIFIC INSTALLATION CHECK)

  INT 2F 8002 - CS_TSR specification - GET PROCESS BLOCK BY PROCESS HANDLE

  INT 2F 8003 - CS_TSR specification - CUSTOM SUBFUNCTION

  INT 2F 80FB - FaxBIOS interface - COMMAND SUBMISSION

  INT 2F 8100 - Nanosoft, Inc. TurboNET redirector - INSTALLATION CHECK

  INT 2F 8101 - Nanosoft, Inc. TurboNET redirector - ???

  INT 2F 8102 - Nanosoft, Inc. TurboNET redirector - ???

  INT 2F 8103 - Nanosoft, Inc. TurboNET redirector - GET MACHINE NAME???

  INT 2F 8104 - Nanosoft, Inc. TurboNET redirector - ???

  INT 2F 8105 - Nanosoft, Inc. TurboNET redirector - ???

  INT 2F 8200 - RESPLAY - SAMPLE/PLAYBACK

  INT 2F 8200 - Nanosoft, Inc. CAPDOS - INSTALLATION CHECK

  INT 2F 8201 - RESPLAY - INSTALLATION CHECK

  INT 2F 8201 - Nanosoft, Inc. CAPDOS - CLEAR QUEUE

  INT 2F 8202 - RESPLAY - UNINSTALL

  INT 2F 8202 - Nanosoft, Inc. CAPDOS - START COLLECTION

  INT 2F 8203 - Nanosoft, Inc. CAPDOS - STOP COLLECTION

  INT 2F 8204 - Nanosoft, Inc. CAPDOS - GET QUEUE PARAMETERS

  INT 2F 8205 - Nanosoft, Inc. CAPDOS - GET QUEUE ITEM

  INT 2F 8210 - RESPLAY - INITIALIZE

  INT 2F 86-- - ???

  INT 2F 8900 - WHOA!.COM - INSTALLATION CHECK

  INT 2F 8901 - WHOA!.COM - UNINSTALL

  INT 2F 8902 - WHOA!.COM - SET DELAY COUNT

  INT 2F 9000 - RAID - INSTALLATION CHECK

  INT 2F 9001 - RAID - GET ???

  INT 2F 9002 - RAID - GET RESIDENT SEGMENT

  INT 2F 9003 - RAID - UNINSTALL

  INT 2F 9004 - RAID - GET ???

  INT 2F 92-- - Network Courier E-Mail - API

  INT 2F 9200 - PC Tools v8.0 DRIVEMAP - BUG

  INT 2F 9201 - PC Tools v8.0 DRIVEMAP - CHECK IF MAPPED DRIVE

  INT 2F 9202 - PC Tools v8.0 DRIVEMAP - UNINSTALL

  INT 2F 9203 - PC Tools v8.0 DRIVEMAP - GET VERSION

  INT 2F 9204 - PC Tools v8.0 DRIVEMAP - INSTALLATION CHECK

  INT 2F 9205 - PC Tools v8.0 DRIVEMAP - SET ???

  INT 2F 9206 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 9207 - PC Tools v8.0 DRIVEMAP - GET ???

  INT 2F 9208 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 9209 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 920A - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 920B - PC Tools v8.0 DRIVEMAP - SET DRIVE MAPPING

  INT 2F 920C - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 920D - PC Tools v8.0 DRIVEMAP - GET DRIVE TYPE

  INT 2F 920E - PC Tools v8.0 DRIVEMAP - SET LPT MAPPING

  INT 2F 920F - PC Tools v8.0 DRIVEMAP - GET ???

  INT 2F 9210 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 9211 - PC Tools v8.0 DRIVEMAP - GET ???

  INT 2F 9212 - PC Tools v8.0 DRIVEMAP - CRITICAL SECTION???

  INT 2F 9213 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 9214 - PC Tools v8.0 DRIVEMAP - GET ???

  INT 2F 9215 - PC Tools v8.0 DRIVEMAP - GET ???

  INT 2F 9216 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 9217 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 9218 - PC Tools v8.0 DRIVEMAP - GET LPT TYPE???

  INT 2F 9219 - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 921A - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 921B - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 921C - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 921D - PC Tools v8.0 DRIVEMAP - GET ???

  INT 2F 921E - PC Tools v8.0 DRIVEMAP - ???

  INT 2F 93-- - InnerMission v1.7+ - INSTALLATION CHECK

  INT 2F 9400 - MICRO.EXE - INSTALLATION CHECK

  INT 2F 9401 - MICRO.EXE - SET ??? FLAG

  INT 2F 9402 - MICRO.EXE - ???

  INT 2F 9403 - MICRO.EXE - SET ??? FLAG

  INT 2F 9404 - MICRO.EXE - CLEAR ??? FLAG

  INT 2F 96C7 - STRETCH - INSTALLATION CHECK

  INT 2F 9C-- - Network Courier E-Mail OPERATOR.EXE - API

  INT 2F 9E00 - INTMON v2.1 - INSTALLATION CHECK

  INT 2F 9E01 - INTMON v2.1 - RESET

  INT 2F 9E02 - INTMON v2.1 - DISPLAY CPU REGISTERS???

  INT 2F 9E03 - INTMON v2.1 - HOOK INTERRUPT???

  INT 2F 9F00 - INTCFG v2.1 - INSTALLATION CHECK

  INT 2F 9F01 - INTCFG v2.1 - ???

  INT 2F 9F30 - INTCFG v2.1 - GET ???

  INT 2F 9F49 - INTCFG v2.1 - UNINSTALL

  INT 2F A1-- - Ergo DOS extenders - INSTALLATION CHECK

  INT 2F A189 - Biologic HRAMDEV.SYS - API

  INT 2F A4E0 - Futurus Team - INSTALLATION CHECK

  INT 2F A900 - METZTSR.COM - INSTALLATION CHECK

  INT 2F A901 - METZTSR.COM - GET TIME OF LAST KEYBOARD ACTIVITY

  INT 2F A902 - METZTSR.COM - SET METZ Ctrl-Alt-Del FLAG

  INT 2F A903 - METZTSR.COM - GET METZ Ctrl-Alt-Del FLAG

  INT 2F AA00 - VIDCLOCK.COM - INSTALLATION CHECK

  INT 2F AB00 - Btrieve Multi-User - INSTALLATION CHECK

  INT 2F AB01 - Btrieve Multi-User - EXECUTE Btrieve OPERATION

  INT 2F AB02 - Btrieve Multi-User - GET NEW PROCESS ID

  INT 2F AC00 - DOS 4.01+ GRAPHICS.COM - INSTALLATION CHECK

  INT 2F AC00 - QRIP/TSR - GIVE CPU TO QRIP

  INT 2F AC01 - QRIP/TSR - CHANGE INTERNAL FLAGS

  INT 2F AC02 - QRIP/TSR - TURN OFF GRAPHICS SCREEN

  INT 2F AC03 - QRIP/TSR - TURN ON GRAPHICS SCREEN

  INT 2F AC04 - QRIP/TSR - OUTPUT STRING THROUGH QRIP

  INT 2F AC05 - QRIP/TSR - OUTPUT NULL-TERMINATED STRING THROUGH QRIP

  INT 2F AC06 - QRIP/TSR - RECEIVE CHARACTERS FROM QRIP

  INT 2F AC07 - QRIP/TSR - GET FONT DIRECTORY

  INT 2F AC08 - QRIP/TSR - GET ICON DIRECTORY

  INT 2F AC09 - QRIP/TSR - OUTPUT STRING THROUGH QRIP

  INT 2F AC0A - QRIP/TSR - OUTPUT NULL-TERMINATED STRING THROUGH QRIP

  INT 2F AC0B - QRIP/TSR - EXECUTE RIP "END SCENE" COMMAND

  INT 2F AC0C - QRIP/TSR - GET STRING TO BE SENT TO BBS

  INT 2F AC0D - QRIP/TSR - SET PROTECTED SCREEN AREA

  INT 2F AC0E - QRIP/TSR - WRITE ASCIZ STRING IN PROTECTED AREA

  INT 2F AC0F - QRIP/TSR - SCROLL PROTECTED AREA

  INT 2F AC10 - QRIP/TSR - SET OUTPUT COLOR FOR PROTECTED AREA

  INT 2F AC11 - QRIP/TSR - CONVERT PROTECTED AREA TO ENTIRE SCREEN

  INT 2F AC12 - QRIP/TSR - BEGIN POPUP-WINDOW MODE

  INT 2F AC13 - QRIP/TSR - END POPUP-WINDOW MODE

  INT 2F AC14 - QRIP/TSR - SAVE GRAPHICS SCREEN AND SWITCH TO TEXT MODE

  INT 2F AC15 - QRIP/TSR - RESTORE GRAPHICS SCREEN

  INT 2F AC16 - QRIP/TSR - REPORT MODE CHANGE TO QRIP

  INT 2F AC17 - QRIP/TSR - CALL (EXECUTE) A RIP FILE

  INT 2F AC18 - QRIP/TSR - SEND USER KEY TO QRIP

  INT 2F AC19 - QRIP/TSR - HANGUP

  INT 2F AC1A - QRIP/TSR - GET RIP_ENTER_BLOCK_MODE INFORMATION

  INT 2F AC1B - QRIP/TSR - SET SYSTEM FONT SIZE

  INT 2F ACF0 - QRIP/TSR - INSTALLATION CHECK

  INT 2F ACFF - QRIP/TSR - UNINSTALL

  INT 2F AD00 - DOS 3.3+ DISPLAY.SYS internal - INSTALLATION CHECK

  INT 2F AD00 - DR-DOS 3.41,5.0 KEYB - INSTALLATION CHECK

  INT 2F AD01 - DOS 3.3+ DISPLAY.SYS internal - SET ACTIVE CODE PAGE

  INT 2F AD01 - DR-DOS 3.41,5.0 KEYB - GET CONFIGURATION

  INT 2F AD02 - DOS 3.3+ DISPLAY.SYS internal - GET ACTIVE CODE PAGE

  INT 2F AD03 - DOS 3.3+ DISPLAY.SYS internal - GET CODE PAGE INFORMATION

  INT 2F AD04 - DOS 4.x only DISPLAY.SYS internal - ???

  INT 2F AD10 - DOS 4.x DISPLAY.SYS internal - INSTALLATION CHECK???

  INT 2F AD10 - DOS 5+ DISPLAY.SYS internal - ???

  INT 2F AD40 - DOS 4.0+ - ???

  INT 2F AD80 - DOS 3.3+ KEYB.COM internal - INSTALLATION CHECK

  INT 2F AD81 - DOS 3.3+ KEYB.COM - SET KEYBOARD CODE PAGE

  INT 2F AD82 - DOS 3.3+ KEYB.COM - SET KEYBOARD MAPPING

  INT 2F AD83 - DOS 5+ KEYB.COM - GET KEYBOARD MAPPING

  INT 2F AE00 - DOS 3.3+ internal - INSTALLABLE COMMAND - INSTALLATION CHECK

  INT 2F AE01 - DOS 3.3+ internal - INSTALLABLE COMMAND - EXECUTE

  INT 2F AF00 - ???

  INT 2F AF02 - ???

  INT 2F AF03 - ???

  INT 2F AF04 - ???

  INT 2F AF05 - ???

  INT 2F AF12 - ???

  INT 2F AF13 - ???

  INT 2F AF30 - ???

  INT 2F AFDE - Disk-Emu - INSTALLATION CHECK / VERSION CHECK

  INT 2F B000 - DOS 3.3+ GRAFTABL.COM - INSTALLATION CHECK

  INT 2F B001 - DOS 3.3+ GRAFTABL.COM - GET GRAPHICS FONT TABLE

  INT 2F B400 - IBM PC3270 EMULATION PROG v3 - INSTALLATION CHECK

  INT 2F B401 - IBM PC3270 EMULATION PROG v3 - GET HOST BUFFER ADDRESS

  INT 2F B402 - IBM PC3270 EMULATION PROG v3 - ???

  INT 2F B403 - IBM PC3270 EMULATION PROG v3 - ???

  INT 2F B404 - IBM PC3270 EMULATION PROG v3 - ???

  INT 2F B405 - IBM PC3270 EMULATION PROG v3 - ???

  INT 2F B700 - APPEND - INSTALLATION CHECK

  INT 2F B701 - APPEND v3.21 only - GET APPEND PATH

  INT 2F B702 - APPEND - VERSION CHECK

  INT 2F B703 - DOS 3.3, DOS 5.0 APPEND - HOOK INT 21

  INT 2F B704 - DOS 3.3+ APPEND - GET APPEND PATH

  INT 2F B706 - DOS 4.0+ APPEND - GET APPEND FUNCTION STATE

  INT 2F B707 - DOS 4.0+ APPEND - SET APPEND FUNCTION STATE

  INT 2F B710 - DOS 3.3+ APPEND - GET VERSION INFO

  INT 2F B711 - DOS 4.0+ APPEND - SET RETURN FOUND NAME STATE

  INT 2F B800 - NETWORK - INSTALLATION CHECK

  INT 2F B800 - 10NET - INSTALLATION CHECK

  INT 2F B803 - NETWORK - GET NETWORK EVENT POST HANDLER

  INT 2F B804 - NETWORK - SET NETWORK EVENT POST HANDLER

  INT 2F B807 - NETWORK - GET NetBIOS NAME NUMBER OF MACHINE NAME

  INT 2F B808 - NETWORK - RELINK KEYBOARD HANDLER

  INT 2F B809 - NETWORK - LANtastic, NetWare Lite - VERSION CHECK

  INT 2F B809 - NETWORK - PC LAN Program - VERSION CHECK

  INT 2F B80A - PC Network 1.00 - ???

  INT 2F B80F - DOS LAN Requester - GET START PARAMETERS

  INT 2F B900 - PC Network RECEIVER.COM - INSTALLATION CHECK

  INT 2F B901 - PC Network RECEIVER.COM - GET RECEIVER.COM INT 2F HANDLER ADDRESS

  INT 2F B903 - PC Network RECEIVER.COM - GET RECEIVER.COM POST ADDRESS

  INT 2F B904 - PC Network RECEIVER.COM - SET RECEIVER.COM POST ADDRESS

  INT 2F B905 - PC Network RECEIVER.COM - GET FILENAME

  INT 2F B906 - PC Network RECEIVER.COM - SET FILENAME

  INT 2F B908 - PC Network RECEIVER.COM - UNLINK KEYBOARD HANDLER

  INT 2F BC00 - Windows 3.0, DOS 5+ EGA.SYS - INSTALLATION CHECK

  INT 2F BC00 - MediaVision MVSOUND.SYS - INSTALLATION CHECK

  INT 2F BC01 - MediaVision MVSOUND.SYS - GET VERSION

  INT 2F BC02 - MediaVision MVSOUND.SYS - GET STATE TABLE POINTER

  INT 2F BC03 - MediaVision MVSOUND.SYS - GET FUNCTION TABLE POINTER

  INT 2F BC04 - MediaVision MVSOUND.SYS - GET DMA AND IRQ CHANNELS

  INT 2F BC06 - MS Windows 3.0, DOS 5+ EGA.SYS - GET VERSION INFO

  INT 2F BC06 - MediaVision MVSOUND.SYS - GET STATUS STRING

  INT 2F BC0B - MediaVision MVSOUND.SYS - GET EXECUTABLE PATH

  INT 2F BE00 - REDVIEW - INSTALLATION CHECK

  INT 2F BF00 - PC LAN PROGRAM REDIRIFS.EXE internal - INSTALLATION CHECK

  INT 2F BF01 - PC LAN PROGRAM REDIRIFS.EXE internal - ???

  INT 2F BF80 - PC LAN PROG REDIR.SYS internal - SET REDIRIFS ENTRY POINT

  INT 2F C0-- - MTEZ XpressFax Hardware TSR (CLASS2) - API

  INT 2F C000 - Novell ODI Link Support Layer (LSL.COM) - INSTALLATION CHECK

  INT 2F C000 - Novell NetWare Event Service Layer (NESL) 1.0 - INSTALLATION CHECK

  INT 2F C000 - Novell NetWare Connect NETWARN - INSTALLATION CHECK

  INT 2F C000 - FN32 32 character filename utilities - INSTALLATION CHECK

  INT 2F C000 - QMR - INSTALLATION CHECK

  INT 2F C000 - VGAsave v1.93 - INSTALLATION CHECK

  INT 2F C000 - AD-DOS - INSTALLATION CHECK

  INT 2F C000 - WANG_ER.COM - INSTALLATION CHECK

  INT 2F C000 - ASPIHOOK.SYS - INSTALLATION CHECK

  INT 2F C000 - PMEASURE.EXE - INSTALLATION CHECK

  INT 2F C000 - PERSONAL MEASURE - HOOK MODULE INSTALLATION CHECK

  INT 2F C000 - PrintCache v3.1 PCACHE.EXE - INSTALLATION CHECK

  INT 2F C000 - Frank Kintrup TSR Utilities - INSTALLATION CHECK

  INT 2F C000 - HP 100LX/200LX - PUSHKEYS - INSTALLATION CHECK

  INT 2F C000 - DIMWIT - INSTALLATION CHECK

  INT 2F C000 - MTEZ XpressFax Hardware TSR (CLASS2) - INSTALLATION CHECK

  INT 2F C000 - TSENGP.COM - INSTALLATION CHECK

  INT 2F C000 - LapLink RemoteAccess (LLRA) - INSTALLATION CHECK

  INT 2F C001 - QMR - REQUEST HARDWARE RESET

  INT 2F C001 - DIMWIT - GET CONFIGURATION DATA

  INT 2F C001 - AD-DOS - GET RESIDENT CODE SEGMENT

  INT 2F C001 - PrintCache v3.1 PCACHE.EXE - GET ENTRY POINTS

  INT 2F C001 - Frank Kintrup TSR Utilities - CLOCK - DISABLE DISPLAY UPDATE

  INT 2F C001 - HP 100LX/200LX - PUSHKEYS - INTERNAL - UNINSTALL

  INT 2F C001 - PERSONAL MEASURE - PASS PARAMETERS TO HOOK MODULE(S)

  INT 2F C002 - AD-DOS - CHECK FOR NEW INPUT

  INT 2F C002 - QMR - DISABLE QMR

  INT 2F C002 - PrintCache v3.1 PCACHE.EXE - GET BUFFER SIZE

  INT 2F C002 - Frank Kintrup TSR Utilities - CLOCK - ENABLE DISPLAY UPDATE

  INT 2F C002 - LapLink RemoteAccess (LLRA) - Core - ???

  INT 2F C003 - AD-DOS - SET MINUTES TO WAIT

  INT 2F C003 - QMR - ENABLE QMR

  INT 2F C003 - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

  INT 2F C004 - AD-DOS - GET MINUTES TO WAIT

  INT 2F C004 - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

  INT 2F C005 - AD-DOS - SET BLANKER STATUS

  INT 2F C005 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C006 - AD-DOS - GET BLANKER STATUS

  INT 2F C006 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C007 - AD-DOS - SET HOT KEY

  INT 2F C007 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C008 - AD-DOS - GET CURRENT HOT KEY

  INT 2F C008 - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

  INT 2F C009 - AD-DOS - UNBLANK MONITOR

  INT 2F C009 - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

  INT 2F C00A - AD-DOS - ???

  INT 2F C00A - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C00B - AD-DOS - ???

  INT 2F C00B - PrintCache v3.1 PCACHE.EXE - NOP

  INT 2F C00C - AD-DOS - SET ??? INTERNAL FLAG TO 01h

  INT 2F C00C - PrintCache v3.1 PCACHE.EXE - GET ???

  INT 2F C00D - PrintCache v3.1 PCACHE.EXE - SET ???

  INT 2F C00E - AD-DOS - SET PASSWORD STATUS

  INT 2F C00E - PrintCache v3.1 PCACHE.EXE - INSTALL ???

  INT 2F C00F - AD-DOS - GET PASSWORD STATUS

  INT 2F C00F - PrintCache v3.1 PCACHE.EXE - REMOVE ???

  INT 2F C010 - PrintCache v3.1 PCACHE.EXE - GET ???

  INT 2F C011 - PrintCache v3.1 PCACHE.EXE - GET ???

  INT 2F C012 - PrintCache v3.1 PCACHE.EXE - GET ???

  INT 2F C013 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C014 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C015 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C016 - PrintCache v3.1 PCACHE.EXE - INCREMENT ???

  INT 2F C017 - PrintCache v3.1 PCACHE.EXE - DECREMENT ???

  INT 2F C018 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C019 - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C01A - PrintCache v3.1 PCACHE.EXE - CLEAR ??? FLAG

  INT 2F C01B - PrintCache v3.1 PCACHE.EXE - SET ??? FLAG

  INT 2F C01C - PrintCache v3.1 PCACHE.EXE - ???

  INT 2F C01D - PrintCache v3.1 PCACHE.EXE - NOP

  INT 2F C020 - AD-DOS - GET AND RESET VxD API STATUS

  INT 2F C04E - Explosiv v2.00+ - NON-TSR EXECUTING CHECK

  INT 2F C050 - Explosiv v2.00+ - INSTALLATION CHECK

  INT 2F C052 - Explosiv v2.00+ - UNINSTALL

  INT 2F C054 - Explosiv v2.x - GET ANIMATION DELAY FACTOR

  INT 2F C054 - Explosiv v3.0+ - UPDATE PARAMETERS

  INT 2F C055 - Explosiv v2.x - SET BLANKING INTERVAL

  INT 2F C056 - Explosiv v2.x - SET ANIMATION DISPLAY TYPE

  INT 2F C056 - Explosiv v3.0+ - ENABLE/DISABLE EXPLOSIV

  INT 2F C057 - Explosiv v2.x - SET ANIMATION DELAY FACTOR

  INT 2F C058 - Explosiv v2.x - SET ANIMATION PARAMETER

  INT 2F C058 - Explosiv v3.0+ - LOAD NEW ANIMATION DISPLAY CODE

  INT 2F C059 - Explosiv v2.x - DISABLE EXPLOSIV

  INT 2F C05A - Explosiv v2.x - ENABLE EXPLOSIV

  INT 2F C05B - Explosiv v2.x - CHANGE ANIMATION DISPLAY

  INT 2F C05C - Explosiv v2.x - SET INT 10 CHECKING

  INT 2F C0AE - HP 100LX/200LX - PUSHKEYS - INSTALLATION CHECK

  INT 2F C0AF - HP 100LX/200LX - PUSHKEYS - INTERNAL - GET BUFFER ADDRESS

  INT 2F C100 - Personal NetWare - STPIPX v1.00 - INSTALLATION CHECK

  INT 2F C101 - Personal NetWare - STPIPX v1.00 - UNINSTALL

  INT 2F C205 - LapLink RemoteAccess (LLRA) - Redirector - ???

  INT 2F C2F0 - LapLink RemoteAccess (LLRA) - Redirector - ???

  INT 2F C2F1 - LapLink RemoteAccess (LLRA) - Redirector - ???

  INT 2F C300 - SETWPR.COM - INSTALLATION CHECK

  INT 2F C300 - SpaceManager - INSTALLATION CHECK

  INT 2F C300 - SpaceManager - INSTALLATION VERIFICATION

  INT 2F C301 - SpaceManager - ???

  INT 2F C301 - LapLink RemoteAccess (LLRA) - Compression - ???

  INT 2F C302 - SpaceManager - ENABLE PROGRAM

  INT 2F C302 - SETWPR.COM - SET WRITE-PROTECTION STATE

  INT 2F C303 - SpaceManager - DISABLE PROGRAM

  INT 2F C304 - SpaceManager - GET PER-DRIVE ENABLEMENT TABLE

  INT 2F C305 - SpaceManager - FORTUNE.EXE - NOP

  INT 2F C305 - SpaceManager - ???

  INT 2F C306 - SpaceManager - CHECK WHETHER PROGRAM ENABLED

  INT 2F C307 - SpaceManager - SELECTC - ???

  INT 2F C308 - SpaceManager - SELECTC - ???

  INT 2F C3F0 - LapLink RemoteAccess (LLRA) - Compression - ???

  INT 2F C3F1 - LapLink RemoteAccess (LLRA) - Compression - ???

  INT 2F C64C - Smart Prompt - INSTALLATION CHECK

  INT 2F C700 - COLAP - INSTALLATION CHECK

  INT 2F C900 - ThunderByte??? - INSTALLATION CHECK

  INT 2F C987 - ThunderByte??? - DISINFECT FILE???

  INT 2F C9FF - StackMan - INSTALLATION BROADCAST

  INT 2F CA-- - FAXPLUS - FAX TSR

  INT 2F CA00 - TBSCANX - INSTALLATION CHECK

  INT 2F CA01 - TBSCANX - GET STATUS

  INT 2F CA02 - TBSCANX - SET STATE

  INT 2F CA03 - TBSCANX - SCAN BUFFER

  INT 2F CA04 - TBSCANX - SCAN FILE

  INT 2F CAFE - THELP v3.0 - INSTALLATION CHECK

  INT 2F CB00 - Communicating Applications Specification - INSTALLATION CHECK

  INT 2F CB00 - MTEZ XpressFax CASMGR - INSTALLATION CHECK

  INT 2F CB01 - Communicating Applications Specification - SUBMIT A TASK

  INT 2F CB02 - Communicating Applications Specification - ABORT CURRENT EVENT

  INT 2F CB05 - Communicating Applications Specification - FIND FIRST QUEUE ENTRY

  INT 2F CB06 - Communicating Applications Specification - FIND NEXT QUEUE ENTRY

  INT 2F CB07 - Communicating Applications Specification - OPEN FILE

  INT 2F CB08 - Communicating Applications Specification - DELETE FILE

  INT 2F CB09 - Communicating Applications Specification - DELETE ALL FILES IN Q

  INT 2F CB0A - Communicating Applications Specification - GET EVENT DATE

  INT 2F CB0B - Communicating Applications Specification - SET TASK DATE

  INT 2F CB0C - Communicating Applications Specification - GET EVENT TIME

  INT 2F CB0D - Communicating Applications Specification - SET TASK TIME

  INT 2F CB0E - Communicating Applications Specification - GET EXTERNAL DATA BLOCK

  INT 2F CB0F - Communicating Applications Specification - GET/SET AUTORECEIVE

  INT 2F CB10 - Communicating Applications Specification - GET CURRENT EVENT STATUS

  INT 2F CB11 - Communicating Applications Specification - GET QUEUE STATUS

  INT 2F CB11 - Communicating Applications Spec v1.2+ - GET NUMBER OF SEND EVENTS

  INT 2F CB11 - Communicating Applications Spec v1.2+ - GET NUMBER OF RECEIVE EVENTS

  INT 2F CB12 - Communicating Applications Specification - GET HARDWARE STATUS

  INT 2F CB13 - Communicating Applications Specification - GET DIAGNOSTICS RESULTS

  INT 2F CB13 - Communicating Applications Specification - START DIAGNOSTICS

  INT 2F CB14 - Communicating Applications Specification - MOVE RECEIVED FILE

  INT 2F CB15 - Communicating Applications Specification - SUBMIT FILE TO SEND

  INT 2F CB16 - Communicating Applications Spec v1.2+ - UNLOAD RESIDENT MANAGER

  INT 2F CB17 - Communicating Applications Spec v1.2+ - SET COVER PAGE STATUS

  INT 2F CB80 - Intel SatisFAXtion CASMGR - ???

  INT 2F CB81 - Intel SatisFAXtion CASMGR - ???

  INT 2F CB82 - Intel SatisFAXtion CASMGR - ???

  INT 2F CBDC - Comwave Microfax Specification - GET STATUS ARRAY

  INT 2F CBDD - Comwave Microfax Specification - COMMAND SUBMISSION

  INT 2F CC-- - PC-Kwik Programs - API

  INT 2F CC00 - Tsoft NFSDRVR - INSTALLATION CHECK

  INT 2F CC01 - Tsoft NFSDRVR - ???

  INT 2F CC02 - Tsoft NFSDRVR - ???

  INT 2F CC03 - Tsoft NFSDRVR - ???

  INT 2F CC04 - Tsoft NFSDRVR - ???

  INT 2F CC05 - Tsoft NFSDRVR - ???

  INT 2F CC06 - Tsoft NFSDRVR - ???

  INT 2F CD00 - Intel Image Processing Interface - INSTALLATION CHECK

  INT 2F CD00 - LaserPort Interface - INSTALLATION CHECK

  INT 2F CD00 - SWELL.EXE - INSTALLATION CHECK

  INT 2F CD00 - Forte/Gravis ULTRAMID - INSTALLATION CHECK

  INT 2F CD01 - Intel Image Processing Interface - SET DEVICE NAME

  INT 2F CD01 - SWELL.EXE - SUSPEND ONCE

  INT 2F CD02 - Intel Image Processing Interface - GET VERSION NUMBER

  INT 2F CD02 - SWELL.EXE - SUSPEND

  INT 2F CD03 - Intel Image Processing Interface - SELECT SCAN LINE

  INT 2F CD03 - SWELL.EXE - ACTIVATE

  INT 2F CD04 - Intel Image Processing Interface - MOVE BITMAP TO SCANLINE

  INT 2F CD04 - SWELL.EXE - TURN OFF VERBOSE MODE

  INT 2F CD05 - Intel Image Processing Interface - PRINT PAGE

  INT 2F CD05 - SWELL.EXE - TURN ON VERBOSE MODE

  INT 2F CD06 - Intel Image Processing Interface - CLEAR PAGE

  INT 2F CD06 - SWELL.EXE - UNINSTALL

  INT 2F CD07 - Intel Image Processing Interface - reserved

  INT 2F CD07 - SWELL.EXE - GET INFO

  INT 2F CD08 - Intel Image Processing Interface - SCREEN IMAGE

  INT 2F CD08 - SWELL.EXE - UNUSED

  INT 2F CD09 - Intel Image Processing Interface - LOAD SCREEN

  INT 2F CD09 - SWELL.EXE - TURN OFF "BORLAND SUPPORT"

  INT 2F CD0A - Intel Image Processing Interface - LOAD PALETTE

  INT 2F CD0A - SWELL.EXE - TURN ON "BORLAND SUPPORT"

  INT 2F CD0F - LaserPort Interface - EXECUTE FUNCTION

  INT 2F CF00 - TEMPLEXX 1.0 - INSTALLATION CHECK

  INT 2F D000 - MDEBUG display driver - GET DRIVER STATUS

  INT 2F D000 - ZWmous - INSTALLATION CHECK

  INT 2F D000 - Lotus CD/Networker - INSTALLATION CHECK

  INT 2F D001 - MDEBUG display driver - INITIALIZE DRIVER

  INT 2F D002 - MDEBUG display driver - SAVE GRAPHIC DATA

  INT 2F D002 - Multiplex - Lotus CD/Networker GET DATA AREA

  INT 2F D003 - MDEBUG display driver - RESTORE GRAPHIC DATA

  INT 2F D004 - MDEBUG display driver - SHOW SAVED DATA

  INT 2F D005 - MDEBUG display driver - SWITCH BACK TO TEXT SCREEN

  INT 2F D0-- - MDEBUG display driver - RESERVED FUNCTION NUMBERS

  INT 2F D0-- - MDEBUG display driver - USER DEFINED FUNCTION NUMBERS

  INT 2F D100 - MDEBUG command driver - GET STATUS

  INT 2F D101 - MDEBUG command driver - INITIALIZE DRIVER

  INT 2F D102 - MDEBUG command driver - EXECUTE INTERPRETER COMMAND

  INT 2F D103 - MDEBUG command driver - EXECUTE KEY IN THE MONITOR

  INT 2F D104 - MDEBUG command driver - EXECUTE KEY IN THE INTERPRETER

  INT 2F D1-- - MDEBUG command driver - RESERVED FUNCTIONS

  INT 2F D110 - MDEBUG command driver - GET ADDRESS OF THE OLD INT 2F

  INT 2F D111 - MDEBUG command driver - START DRIVER

  INT 2F D112 - MDEBUG command driver - END DRIVER

  INT 2F D1-- - MDEBUG command driver - RESERVED FUNCTIONS

  INT 2F D1-- - MDEBUG command driver - USER DEFINED FUNCTIONS

  INT 2F D200 - PCL-838.EXE - INSTALLATION CHECK

  INT 2F D200 - Quarterdeck RPCI - INSTALLATION CHECK

  INT 2F D201 - PCL-838.EXE - UNINSTALL

  INT 2F D201 - Quarterdeck RPCI - GET QD HIMEM PRESENCE

  INT 2F D201 - Quarterdeck RPCI - QEMM/QRAM v5.0+ - GET HIRAM MEMORY CHAIN

  INT 2F D201 - Quarterdeck RPCI - MANIFEST v1.0+ - INSTALLATION CHECK

  INT 2F D201 - Quarterdeck RPCI - DVDOS4GX.DVR - ???

  INT 2F D201 - Quarterdeck RPCI - QEMM v5.0+ - INSTALLATION CHECK

  INT 2F D201 - Quarterdeck RPCI - VIDRAM v5.0+ - INSTALLATION CHECK

  INT 2F D202 - PCL-838.EXE - EXECUTE PCL838 COMMANDS

  INT 2F D300 - TeleReplica - INSTALLATION CHECK

  INT 2F D3CB - LapLink Quick Connect v6 - API

  INT 2F D44D - 4DOS.COM v2.1+ - API

  INT 2F D44E - 4DOS v3.0+ - AWAITING USER INPUT

  INT 2F D44F - 4DOS v4.0+ - KSTACK.COM - INSTALLATION CHECK

  INT 2F D44F - 4DOS v4.0+ - KSTACK.COM - PLACE KEYSTROKES INTO KEYSTACK

  INT 2F D600 - HEART.COM - INSTALLATION CHECK

  INT 2F D600 - VEDIT VSWAP - INSTALLATION CHECK

  INT 2F D601 - VEDIT VSWAP - ???

  INT 2F D602 - VEDIT VSWAP - EXEC PROGRAM WITH SWAP

  INT 2F D701 - Banyan VINES v4+ - GET BANV INTERRUPT NUMBER

  INT 2F D702 - Banyan VINES v4+ - PCPRINT interface

  INT 2F D703 - Banyan VINES v4+ - MAIL interface

  INT 2F D704 - Banyan VINES v4+ - Streettalk Directory Assistance interface

  INT 2F D800 - Novell NetWare Lite - CLIENT.EXE - INSTALLATION CHECK

  INT 2F D856 - Novell NetWare Lite v1.1 - SERVER - GET ???

  INT 2F D880 - Novell NetWare Lite v1.0+ - SERVER - INSTALLATION CHECK

  INT 2F D8C0 - Novell NLCACHE,NWCACHE - INSTALLATION CHECK

  INT 2F DA00 - ZyXEL ZFAX - INSTALLATION CHECK

  INT 2F DA01 - ZyXEL ZFAX - UNINSTALL

  INT 2F DA02 - ZyXEL ZFAX - DISABLE

  INT 2F DA03 - ZyXEL ZFAX - ENABLE

  INT 2F DA55 - TRAP.COM - INSTALLATION CHECK

  INT 2F DAB2 - Beame&Whiteside BWSNMP - INSTALLATION CHECK

  INT 2F DB00 - ZyXEL ZFAX v2+ - INSTALLATION CHECK

  INT 2F DB00 - WINGO.COM - INSTALLATION CHECK

  INT 2F DB01 - ZyXEL ZFAX v2+ - UNINSTALL

  INT 2F DB01 - WINGO.COM - SET CALLBACK FUNCTION POINTER

  INT 2F DB02 - ZyXEL ZFAX v2.x - DISABLE

  INT 2F DB02 - WINGO.COM - RESET CALLBACK FUNCTION POINTER

  INT 2F DB03 - ZyXEL ZFAX v2.x - ENABLE

  INT 2F DB03 - WINGO.COM - SET ??? FLAG

  INT 2F DB04 - WINGO.COM - RESET ??? FLAG

  INT 2F DB05 - WINGO.COM - GET ??? FLAG

  INT 2F DB06 - WINGO.COM - CALL CALLBACK FUNCTION

  INT 2F DB10 - ZyXEL ZFAX v3 - EXECUTE ZFAX MAIN MENU

  INT 2F DB11 - ZyXEL ZFAX v3 - SEND FAX

  INT 2F DB12 - ZyXEL ZFAX v3 - PRINT FAX

  INT 2F DB13 - ZyXEL ZFAX v3 - CONVERT FAX

  INT 2F DB14 - ZyXEL ZFAX v3 - VIEW FAX

  INT 2F DB20 - ZyXEL ZFAX v3 - POLL FAX

  INT 2F DB21 - ZyXEL ZFAX v3 - SEND VOICE

  INT 2F DB22 - ZyXEL ZFAX v3 - CONVERT VOICE FILE

  INT 2F DB23 - ZyXEL ZFAX v3 - RECORD VOICE FILE

  INT 2F DB24 - ZyXEL ZFAX v3 - PLAY VOICE FILE

  INT 2F DB25 - ZyXEL ZFAX v3 - ANSWER MODEM WITH VOICE SYSTEM

  INT 2F DB26 - ZyXEL ZFAX v3 - DIAL PHONE

  INT 2F DB27 - ZyXEL ZFAX v3 - RECEIVE FAX - ANSWER MODEM AND SET TO FAX MODE

  INT 2F DB28 - ZyXEL ZFAX v3 - RECEIVE FAX DATA - ANSWER MODEM IN MULTI-AUDIO MODE

  INT 2F DB31 - ZyXEL ZFAX v3 - SEND DATA - DIAL NUMBER AND UPLOAD FILE WITH ZMODEM

  INT 2F DB40 - ZyXEL ZFAX v3 - INTERNAL TERMINAL

  INT 2F DC00 - GOLD.COM - INSTALLATION CHECK

  INT 2F DC01 - GOLD.COM - GET STATE

  INT 2F DC02 - GOLD.COM - SET STATE

  INT 2F DD-- - CappaCom programs - API

  INT 2F DD-- - MIXFIX.EXE - API

  INT 2F DD-- - xDISK v3.32+ - INSTALLATION CHECK

  INT 2F DE00 - Novell Netware - RPRINTER, NPRINTER - INSTALLATION CHECK

  INT 2F DE00 - DESQview v2.26+ External Device Interface - INSTALLATION CHECK

  INT 2F DE01 - DESQview v2.26+ External Device Interface - DRIVER CUSTOM SUBFUNCTION

  INT 2F DE01 - Quarterdeck QDPMI.SYS v1.0 - INSTALLATION CHECK

  INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, Ralf Brown's XDI drivers

  INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, DVTXDI.COM

  INT 2F DE01 - DESQview v2.26+ XDI - CUSTOM SUBFUNCTION, DVSIXDI.COM

  INT 2F DE01 - DESQview v2.26+ XDI - DVXMS.DVR - ???

  INT 2F DE02 - DESQview v2.26+ External Dev Interface - DV INITIALIZATION COMPLETE

  INT 2F DE03 - DESQview v2.26+ External Dev Interface - DV TERMINATION

  INT 2F DE04 - DESQview v2.26+ External Dev Interface - ADD PROCESS

  INT 2F DE05 - DESQview v2.26+ External Dev Interface - REMOVE PROCESS

  INT 2F DE06 - DESQview v2.26+ External Dev Interface - CREATE TASK

  INT 2F DE07 - DESQview v2.26+ External Dev Interface - TERMINATE TASK

  INT 2F DE08 - DESQview v2.26+ External Dev Interface - SAVE STATE

  INT 2F DE09 - DESQview v2.26+ External Dev Interface - RESTORE STATE

  INT 2F DE0A - DESQview v2.26+ External Dev Interface - CHANGE KEYBOARD FOCUS

  INT 2F DE0B - DESQview v2.26+ External Dev Interface - DVP PROCESSING COMPLETE

  INT 2F DE0C - DESQview v2.26+ External Dev Interface - SWAP OUT PROCESS

  INT 2F DE0D - DESQview v2.26+ External Dev Interface - SWAP IN PROCESS

  INT 2F DE0E - DESQview v2.26+ External Dev Interface - DVP START FAILED

  INT 2F DE0F - DESQview v2.50+ External Dev Interface - INITIALIZE DV

  INT 2F DE10 - DESQview v2.50+ External Dev Interface - FREE TASK

  INT 2F DF00 - HyperWare programs - INSTALLATION CHECK

  INT 2F DF00 - Quarterdeck TELTSR.COM - INSTALLATION CHECK

  INT 2F DF01 - MSG.COM - INSTALLATION CHECK

  INT 2F DF01 - HyperDisk v4.50+ - GET CURRENT CACHE STATE

  INT 2F DF01 - Quarterdeck TELTSR.COM - CLOSE CONNECTION

  INT 2F DF02 - HyperDisk v4.50+ - SET CACHE STATE

  INT 2F DF02 - Quarterdeck TELTSR.COM - OPEN CONNECTION

  INT 2F E000 - SETDRVER.COM v2.10+ - INSTALLATION CHECK

  INT 2F E000 - StuffIt v3.21+ - INSTALLATION CHECK

  INT 2F E001 - SETDRVER.COM v2.10+ - GET SETDRVER VERSION

  INT 2F E002 - SETDRVER.COM v2.10+ - GET ORIGINAL DOS VERSION INFO

  INT 2F E003 - SETDRVER.COM v2.10+ - RESET INTERNAL VARIABLES

  INT 2F E004 - SETDRVER.COM v2.10+ - ENABLE TSR

  INT 2F E005 - SETDRVER.COM v2.10+ - DISABLE TSR

  INT 2F E006 - SETDRVER.COM v2.10+ - GET TSR STATUS

  INT 2F E007 - SETDRVER.COM v2.10+ - GET TaskMAX STATUS AT INSTALLATION

  INT 2F E0-- - SETDRVER.COM - RESERVED FOR FUTURE USE

  INT 2F E100 - Phantom2 v1.1+ - INSTALLATION CHECK

  INT 2F E101 - Phantom2 v1.1+ - FUNCTION REQUEST

  INT 2F E102 - Phantom2 v1.1+ - UNINSTALL

  INT 2F E103 - Phantom2 v2.8 - SET ??? FLAG

  INT 2F E200 - SecureDevice - LOGIN TO DRIVE

  INT 2F E201 - SecureDevice - GET INFORMATION

  INT 2F E203 - SecureDevice - DESTROY PASSWORD (LOGOUT FROM DRIVE)

  INT 2F E209 - SecureDevice - INSTALLATION CHECK

  INT 2F E300 - ANARKEY.COM - INSTALLATION CHECK

  INT 2F E300 - Blank - INSTALLATION CHECK

  INT 2F E301 - ANARKEY.COM v2+ - GET ???

  INT 2F E302 - ANARKEY.COM v3+ - ???

  INT 2F E303 - ANARKEY.COM v3+ - ANARKMD API

  INT 2F E304 - ANARKEY.COM v2+ - ???

  INT 2F E305 - ANARKEY.COM v3+ - ENABLE/SUSPEND ANARKEY

  INT 2F E306 - ANARKEY.COM v4.0 - GET ???

  INT 2F E307 - ANARKEY.COM v4.0 - GET ???

  INT 2F E44D - NDOS - API

  INT 2F E44E - NDOS - AWAITING USER INPUT

  INT 2F E44F - NDOS v4.0+ - KSTACK.COM - INSTALLATION CHECK

  INT 2F E44F - NDOS v4.0+ - KSTACK.COM - PLACE KEYSTROKES INTO KEYSTACK

  INT 2F E77E - CTDEMN - INSTALLATION CHECK

  INT 2F ED00 - Phar Lap DOS EXTENDERS - INSTALLATION CHECK

  INT 2F ED03 - Phar Lap 386/DOS-Extender v4.1 - GET EXTENDER ENTRY POINT

  INT 2F ED10 - Pharlap DOS Extender - ???

  INT 2F ED11 - Pharlap DOS Extender - FATAL EXIT TO REAL MODE ???

  INT 2F ED58 - K5.COM - INSTALLATION CHECK

  INT 2F ED80 - Phar Lap 286|DOS Extender Lite v2.5 - ???

  INT 2F EDC8 - Novell ??? - INSTALLATION CHECK???

  INT 2F EE00 - GRIDLOC.EXE - INSTALLATION CHECK

  INT 2F EE00 - XVIEW - INSTALLATION CHECK

  INT 2F EE00 - WEB v4.02 - INSTALLATION CHECK

  INT 2F EE01 - XVIEW - POP UP GIVING TOPIC SEARCH KEYWORD

  INT 2F EE02 - XVIEW - POP UP GIVING A PAGE NUMBER

  INT 2F EE03 - XVIEW - POP UP GIVING FILENAME AND SEARCH TOPIC OR PAGE NUMBER

  INT 2F EE04 - XVIEW - POP UP AND READ SCREEN FOR SEARCH TOPIC KEYWORD

  INT 2F EE05 - XVIEW - POP UP TO MOST-RECENTLY VIEWED PAGE

  INT 2F EE06 - XVIEW - WAIT FOR POP-DOWN AND GET EXIT CODE

  INT 2F EE-- - WEB v4.02 - WEB MODULE INSTALLATION CHECK

  INT 2F EEF0 - WEB v4.02 - WEB GENERAL NOTIFICATION

  INT 2F F000 - 4MAP - INSTALLATION CHECK

  INT 2F F001 - 4MAP - GET KEY MAPPINGS

  INT 2F F002 - 4MAP - INSERT CHARACTER INTO ???

  INT 2F F003 - 4MAP - INSERT CHARACTER INTO ???

  INT 2F F1-- - MIN-MEM v2.11 - INSTALLATION CHECK

  INT 2F F100 - DOS EXTENDER INSTALLATION CHECK

  INT 2F F200 - WINX - INSTALLATION CHECK

  INT 2F F201 - WINX - RETURN ADDRESS OF SERVER BUFFER

  INT 2F F202 - WINX - SET SERVER'S WORKING DIRECTORY

  INT 2F F203 - WINX - EXECUTE COMMAND

  INT 2F F400 - FINDIRQ.COM - INSTALLATION CHECK

  INT 2F F401 - PowerLAN - VERSION CHECK

  INT 2F F401 - FINDIRQ.COM - GET HOOKED INTERRUPTS

  INT 2F F700 - AUTOPARK.COM - INSTALLATION CHECK

  INT 2F F701 - AUTOPARK.COM - SET PARKING DELAY

  INT 2F F800 - SuperStor PRO 2XON.COM - INSTALLATION CHECK

  INT 2F F801 - SuperStor PRO 2XON.COM - UNINSTALL

  INT 2F FB-- - Multiplex - RESERVED BY BORLAND INTERNATIONAL

  INT 2F FB-- - Conner Backup Exec AUTORES - API

  INT 2F FB00 - AutoBraille v1.1A - INSTALLATION CHECK

  INT 2F FB00 - Jot-It! v1.50 - INSTALLATION CHECK

  INT 2F FB01 - AutoBraille v1.1A - ???

  INT 2F FB01 - Jot-It! v1.50 - GET USER NAME

  INT 2F FB02 - AutoBraille v1.1A - ???

  INT 2F FB02 - Jot-It! v1.50 - GET MESSAGE DIRECTORY

  INT 2F FB03 - AutoBraille v1.1A - GET NEXT ???

  INT 2F FB03 - Jot-It! v1.50 - UNINSTALL

  INT 2F FB-- - AutoBraille v1.1A - SET ???

  INT 2F FB-- - AutoBraille v1.1A - SET ???

  INT 2F FB-- - AutoBraille v1.1A - SET ???

  INT 2F FB20 - AutoBraille v1.1A - SET ??? FLAGS

  INT 2F FB21 - AutoBraille v1.1A - CLEAR ??? FLAGS

  INT 2F FB22 - AutoBraille v1.1A - SET ???

  INT 2F FB28 - AutoBraille v1.1A - ???

  INT 2F FB29 - AutoBraille v1.1A - ???

  INT 2F FB-- - AutoBraille v1.1A - SET ???

  INT 2F FB35 - AutoBraille v1.1A - SET ???

  INT 2F FB36 - AutoBraille v1.1A - SET ???

  INT 2F FB37 - AutoBraille v1.1A - SET ???

  INT 2F FB42 - Borland C++ DPMILOAD.EXE - INSTALLATION CHECK???

  INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - ALLOCATE MEMORY

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ALLOCATE MEMORY

  INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET AVAILABLE MEMORY

  INT 2F FB42 - Borland C++ DPMILOAD.EXE - LOAD PROTECTED-MODE EXECUTABLE???

  INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET ADDRESS OF ??? BY NAME

  INT 2F FB42 - Borland C++ DPMILOAD.EXE - GET ADDRESS OF ??? BY NUMBER

  INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 2.0 DPMILOAD.EXE - FREE MEMORY BLOCK

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - FREE MEMORY BLOCK

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - RESIZE MEMORY BLOCK

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - INIT DPMI HOST AND SPAWN SUBSHELL

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - UNUSED

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - FREE DESCRIPTORS FOR MEMORY BLOCK???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SIMULATE REAL MODE INTERRUPT

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ADDRESS OF ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - REALLOCATE LDT DESCRPS TO MEMBLK???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - CONVERT SEGMENT TO SELECTOR

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - INSTALLATION CHECK

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - UNINSTALL

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ADDRESS OF ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - NULL FUNCTION???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET PROCESSOR EXCEPTION HANDLER VECT

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET PROCESSOR EXCEPTION HANDLER VECT

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - CONVERT SELECTOR TO SEGMENT NUMBER

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET PROTECTED-MODE INTERRUPT VECTOR

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - SET PROTECTED-MODE INTERRUPT VECTOR

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - ???

  INT 2F FB42 - Borland C++ 3.0 DPMILOAD.EXE - GET ???

  INT 2F FB42 - ??? - CALLED BY Borland C++ 3.0 DPMILOAD.EXE

  INT 2F FB42 - ??? - CALLED BY Borland C++ 3.0 DPMILOAD.EXE

  INT 2F FB42 - Borland RTM.EXE 1.0 - INSTALLATION CHECK???

  INT 2F FB42 - Borland RTM.EXE 1.0 - ???

  INT 2F FB42 - Borland RTM.EXE 1.0 - ???

  INT 2F FB43 - Borland C++ 3.0 DPMILOAD.EXE - NULL FUNCTION

  INT 2F FB43 - Borland TDX - INSTALLATION CHECK

  INT 2F FB64 - AutoBraille v1.1A - GET ???

  INT 2F FBA1 - TKERNEL (Borland DOS extender) - INSTALLATION CHECK

  INT 2F FBA1 - TKERNEL (Borland DOS extender) - GET ENTRY POINT

  INT 2F FBA1 - TKERNEL (Borland DOS extender) - UNINSTALL

  INT 2F FBFB - SoundBlaster speech driver - INSTALLATION CHECK

  INT 2F FE00 - PC-NFS ??? - INSTALLATION CHECK

  INT 2F FE00 - PC-NFS ??? - INSTALLATION CHECK

  INT 2F FE00 - NORTON UTILITIES 5.0+ TSRs - INSTALLATION CHECK/STATUS REPORT

  INT 2F FE00 - GO! v3.22+ - API

  INT 2F FE01 - NORTON UTILITIES 5.0+ TSRs - ENABLE

  INT 2F FE02 - NORTON UTILITIES 5.0+ TSRs - DISABLE

  INT 2F FE03 - NORTON UTILITIES 5.0+ TSRs - FLUSH BUFFERS

  INT 2F FE04 - NORTON UTILITIES 5.0+ DISKMON, FILESAVE / EP - internal - ???

  INT 2F FE05 - NORTON UTILITIES 5.0+ DISKMON, FILESAVE / EP - internal - ???

  INT 2F FE08 - PC-NFS ??? - GET ???

  INT 2F FE10 - NORTON UTILITIES 6.0 NCACHE - REBOOT

  INT 2F FEEF - RTS Control TSR - INSTALLATION CHECK

  INT 2F FF00 - Topware Network Operating System - INSTALLATION CHECK

  INT 2F FF01 - Topware Network Operating System - GET VERSION

  INT 2F FF02 - TopWare Network OS v5.10+ - GET TopNet VERSION STRING

  INT 2F FF10 - TopWare Network OS v5.10+ - TopTerm - INSTALLATION CHECK

  INT 2F FF11 - TopWare Network OS v5.10+ - TopTerm - ENABLE KEYBOARD SERVICE

  INT 2F FF12 - TopWare Network OS v5.10+ - TopTerm - DISABLE KEYBOARD SERVICE

  INT 2F FF13 - TopWare Network OS v5.10+ - TopTerm - SET INSTALLATION FLAG

  INT 2F FF14 - TopWare Network OS v5.10+ - START BACKGROUND RECEIVE VIDEO DATA

  INT 2F FF15 - TopWare Network OS v5.10+ - END BACKGROUND RECEIVE VIDEO DATA

  INT 2F FF16 - TopWare Network OS v5.10+ - SET CONTROL NUMBER OF "SHOW" SCREEN

  INT 2F FF18 - TopWare Network OS v5.10+ - SEND FULL SCREEN OF DATA FOR TopShow

  INT 2F FF23 - TopWare Network OS v5.10+ - CLOSE SPOOL FILES AND START PRINTING

  INT 2F FF27 - TopWare Network OS v5.10+ - GET "SHOW" TYPE

INT 30 - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction

  INT 30 ---- - (NOT A VECTOR!) - DOS 1+ - FAR JMP instruction for CP/M-style calls

  INT 30 ---- - QRIP/TSR - USED BY GRAPHICS LIBRARY

INT 31 - overwritten by CP/M jump instruction in INT 30

  INT 31 ---- - overwritten by CP/M jump instruction in INT 30

  INT 31 ---- - VIRUS - "Vacsina" series - INSTALLATION CHECK (NOT A VECTOR!)

  INT 31 0000 - DPMI 0.9+ - ALLOCATE LDT DESCRIPTORS

  INT 31 0001 - DPMI 0.9+ - FREE LDT DESCRIPTOR

  INT 31 0002 - DPMI 0.9+ - SEGMENT TO DESCRIPTOR

  INT 31 0003 - DPMI 0.9+ - GET NEXT SELECTOR INCREMENT VALUE

  INT 31 0004 - DPMI 0.9+ - LOCK SELECTOR

  INT 31 0005 - DPMI 0.9+ - UNLOCK SELECTOR

  INT 31 0006 - DPMI 0.9+ - GET SEGMENT BASE ADDRESS

  INT 31 0007 - DPMI 0.9+ - SET SEGMENT BASE ADDRESS

  INT 31 0008 - DPMI 0.9+ - SET SEGMENT LIMIT

  INT 31 0009 - DPMI 0.9+ - SET DESCRIPTOR ACCESS RIGHTS

  INT 31 000A - DPMI 0.9+ - CREATE ALIAS DESCRIPTOR

  INT 31 000B - DPMI 0.9+ - GET DESCRIPTOR

  INT 31 000C - DPMI 0.9+ - SET DESCRIPTOR

  INT 31 000D - DPMI 0.9+ - ALLOCATE SPECIFIC LDT DESCRIPTOR

  INT 31 000E - DPMI 1.0+ - GET MULTIPLE DESCRIPTORS

  INT 31 000F - DPMI 1.0+ - SET MULTIPLE DESCRIPTORS

  INT 31 0100 - DPMI 0.9+ - ALLOCATE DOS MEMORY BLOCK

  INT 31 0101 - DPMI 0.9+ - FREE DOS MEMORY BLOCK

  INT 31 0102 - DPMI 0.9+ - RESIZE DOS MEMORY BLOCK

  INT 31 0200 - DPMI 0.9+ - GET REAL MODE INTERRUPT VECTOR

  INT 31 0201 - DPMI 0.9+ - SET REAL MODE INTERRUPT VECTOR

  INT 31 0202 - DPMI 0.9+ - GET PROCESSOR EXCEPTION HANDLER VECTOR

  INT 31 0203 - DPMI 0.9+ - SET PROCESSOR EXCEPTION HANDLER VECTOR

  INT 31 0204 - DPMI 0.9+ - GET PROTECTED MODE INTERRUPT VECTOR

  INT 31 0205 - DPMI 0.9+ - SET PROTECTED MODE INTERRUPT VECTOR

  INT 31 0210 - DPMI 1.0+ - GET PROTECTED MODE EXTENDED PROCESSOR EXCEPTION HANDLER

  INT 31 0211 - DPMI 1.0+ - GET REAL MODE EXTENDED PROCESSOR EXCEPTION HANDLER

  INT 31 0212 - DPMI 1.0+ - SET PROTECTED MODE EXTENDED PROCESSOR EXCEPTION HANDLER

  INT 31 0213 - DPMI 1.0+ - SET REAL MODE EXTENDED PROCESSOR EXCEPTION HANDLER

  INT 31 0300 - DPMI 0.9+ - SIMULATE REAL MODE INTERRUPT

  INT 31 0301 - DPMI 0.9+ - CALL REAL MODE PROCEDURE WITH FAR RETURN FRAME

  INT 31 0302 - DPMI 0.9+ - CALL REAL MODE PROCEDURE WITH IRET FRAME

  INT 31 0303 - DPMI 0.9+ - ALLOCATE REAL MODE CALLBACK ADDRESS

  INT 31 0304 - DPMI 0.9+ - FREE REAL MODE CALLBACK ADDRESS

  INT 31 0305 - DPMI 0.9+ - GET STATE SAVE/RESTORE ADDRESSES

  INT 31 0306 - DPMI 0.9+ - GET RAW MODE SWITCH ADDRESSES

  INT 31 0400 - DPMI 0.9+ - GET DPMI VERSION

  INT 31 0401 - DPMI 1.0+ - GET DPMI CAPABILITIES

  INT 31 0500 - DPMI 0.9+ - GET FREE MEMORY INFORMATION

  INT 31 0501 - DPMI 0.9+ - ALLOCATE MEMORY BLOCK

  INT 31 0502 - DPMI 0.9+ - FREE MEMORY BLOCK

  INT 31 0503 - DPMI 0.9+ - RESIZE MEMORY BLOCK

  INT 31 0504 - DPMI 1.0+ - ALLOCATE LINEAR MEMORY BLOCK

  INT 31 0505 - DPMI 1.0+ - RESIZE LINEAR MEMORY BLOCK

  INT 31 0506 - DPMI 1.0+ - GET PAGE ATTRIBUTES

  INT 31 0507 - DPMI 1.0+ - MODIFY PAGE ATTRIBUTES

  INT 31 0508 - DPMI 1.0+ - MAP DEVICE IN MEMORY BLOCK

  INT 31 0509 - DPMI 1.0+ - MAP CONVENTIONAL MEMORY IN MEMORY BLOCK

  INT 31 050A - DPMI 1.0+ - GET MEMORY BLOCK SIZE AND BASE

  INT 31 050B - DPMI 1.0+ - GET MEMORY INFORMATION

  INT 31 0600 - DPMI 0.9+ - LOCK LINEAR REGION

  INT 31 0601 - DPMI 0.9+ - UNLOCK LINEAR REGION

  INT 31 0602 - DPMI 0.9+ - MARK REAL MODE REGION AS PAGEABLE

  INT 31 0603 - DPMI 0.9+ - RELOCK REAL MODE REGION

  INT 31 0604 - DPMI 0.9+ - GET PAGE SIZE

  INT 31 0700 - DPMI 0.9+ - MARK PAGES AS PAGING CANDIDATES

  INT 31 0701 - DPMI 0.9+ - DISCARD PAGES

  INT 31 0702 - DPMI 0.9+ - MARK PAGE AS DEMAND PAGING CANDIDATE

  INT 31 0703 - DPMI 0.9+ - DISCARD PAGE CONTENTS

  INT 31 0800 - DPMI 0.9+ - PHYSICAL ADDRESS MAPPING

  INT 31 0801 - DPMI 1.0+ - FREE PHYSICAL ADDRESS MAPPING

  INT 31 0900 - DPMI 0.9+ - GET AND DISABLE VIRTUAL INTERRUPT STATE

  INT 31 0901 - DPMI 0.9+ - GET AND ENABLE VIRTUAL INTERRUPT STATE

  INT 31 0902 - DPMI 0.9+ - GET VIRTUAL INTERRUPT STATE

  INT 31 0A00 - DPMI 0.9+ - GET VENDOR SPECIFIC API ENTRY POINT

  INT 31 0B00 - DPMI 0.9+ - SET DEBUG WATCHPOINT

  INT 31 0B01 - DPMI 0.9+ - CLEAR DEBUG WATCHPOINT

  INT 31 0B02 - DPMI 0.9+ - GET STATE OF DEBUG WATCHPOINT

  INT 31 0B03 - DPMI 0.9+ - RESET DEBUG WATCHPOINT

  INT 31 0C00 - DPMI 1.0+ - INSTALL RESIDENT HANDLER INIT CALLBACK

  INT 31 0C01 - DPMI 1.0+ - TERMINATE AND STAY RESIDENT

  INT 31 0D00 - DPMI 1.0+ - ALLOCATE SHARED MEMORY

  INT 31 0D01 - DPMI 1.0+ - FREE SHARED MEMORY

  INT 31 0D02 - DPMI 1.0+ - SERIALIZE SHARED MEMORY

  INT 31 0D03 - DPMI 1.0+ - FREE SERIALIZATION ON SHARED MEMORY

  INT 31 0E00 - DPMI 1.0+ - GET COPROCESSOR STATUS

  INT 31 0E01 - DPMI 1.0+ - SET EMULATION

  INT 31 57-- - Netroom3 DPMI.EXE v3.00 - ???

  INT 31 5702 - Netroom3 DPMI.EXE v3.00 - SWITCH TO PROTECTED MODE

  INT 31 EE00 - DOS32 v3.0+ - GET DOS32 VERSION AND SELECTOR VALUES

  INT 31 EE02 - DOS32 v3.0+ - GET DOS32 ADDRESS INFORMATION

  INT 31 EE20 - DOS32 v3.0+ - GET REAL MODE CALL BACK ADDRESS WITH RETF STACK FRAME

  INT 31 EE21 - DOS32 v3.0+ - GET REAL MODE CALL BACK ADDRESS WITH IRET STACK FRAME

  INT 31 EE30 - DOS32 v3.0+ - TERMINATE AND STAY RESIDENT

  INT 31 EE40 - DOS32 v3.0+ - UNDO PREVIOUS MEMORY ALLOCATION or DMA BUFFER

  INT 31 EE41 - DOS32 v3.0+ - ALLOCATE 16KB DMA BLOCK

  INT 31 EE42 - DOS32 v3.0+ - ALLOCATE MEMORY BLOCK

  INT 31 FF00 - CauseWay - "Info" - GET SYSTEM SELECTORS/FLAGS

  INT 31 FF01 - CauseWay - "IntXX" - SIMULATE REAL-MODE INTERRUPT

  INT 31 FF02 - CauseWay - "FarCallReal" - SIMULATE REAL-MODE FAR CALL

  INT 31 FF03 - CauseWay - "GetSel" - ALLOCATE NEW SELECTOR

  INT 31 FF04 - CauseWay - "RelSel" - RELEASE A SELECTOR

  INT 31 FF05 - CauseWay - "CodeSel" - CONVERT SELECTOR TO EXECUTABLE CODE SELECTOR

  INT 31 FF06 - CauseWay - "AliasSel" - CREATE READ/WRITE DATA ALIAS SELECTOR

  INT 31 FF07 - CauseWay - "GetSelDet" - GET SELECTOR BASE AND LIMIT

  INT 31 FF08 - CauseWay - "GetSelDet32" - GET SELECTOR BASE AND LIMIT (32-bit)

  INT 31 FF09 - CauseWay - "SetSelDet" - SET SELECTOR BASE AND LIMIT

  INT 31 FF0A - CauseWay - "SetSelDet32" - SET SELECTOR BASE AND LIMIT (32-bit)

  INT 31 FF0B - CauseWay - "GetMem" - ALLOCATE BLOCK OF MEMORY

  INT 31 FF0C - CauseWay - "GetMem32" - ALLOCATE BLOCK OF MEMORY (32-bit)

  INT 31 FF0D - CauseWay - "ResMem" - RESIZE MEMORY BLOCK

  INT 31 FF0E - CauseWay - "ResMem32" - RESIZE MEMORY BLOCK (32-bit)

  INT 31 FF0F - CauseWay - "RelMem" - RELEASE PREVIOUSLY ALLOCATED MEMORY

  INT 31 FF10 - CauseWay - "GetMemLinear" - ALLOCATE MEMORY WITHOUT SELECTOR

  INT 31 FF11 - CauseWay - "GetMemLinear32" - ALLOCATE MEMORY WITHOUT SELECTOR

  INT 31 FF12 - CauseWay - "ResMemLinear" - RESIZE LINEAR MEMORY BLOCK

  INT 31 FF13 - CauseWay - "ResMemLinear32" - RESIZE LINEAR MEMORY BLOCK (32-bit)

  INT 31 FF14 - CauseWay - "RelMemLinear" - RELEASE LINEAR MEMORY BLOCK

  INT 31 FF15 - CauseWay - "RelMemLinear32" - RELEASE LINEAR MEMORY BLOCK (32-bit)

  INT 31 FF16 - CauseWay - "GetMemNear" - ALLOCATE APPLICATION-RELATIVE MEMORY

  INT 31 FF17 - CauseWay - "ResMemNear" - RESIZE APPLICATION-RELATIVE MEMORY BLOCK

  INT 31 FF18 - CauseWay - "RelMemNear" - RELEASE APPLICATION-RELATIVE MEMORY BLOCK

  INT 31 FF19 - CauseWay - "Linear2Near" - CONVERT LINEAR TO APP-RELATIVE ADDRESS

  INT 31 FF1A - CauseWay - "Near2Linear" - CONVERT APP-RELATIVE TO LINEAR ADDRESS

  INT 31 FF1B - CauseWay - "LockMem" - LOCK REGION OF MEMORY

  INT 31 FF1C - CauseWay - "LockMem32" - LOCK REGION OF MEMORY (32-bit)

  INT 31 FF1D - CauseWay - "UnLockMem" - UNLOCK REGION OF MEMORY

  INT 31 FF1E - CauseWay - "UnLockMem32" - UNLOCK REGION OF MEMORY (32-bit)

  INT 31 FF1F - CauseWay - "LockMemNear" - LOCK APPLICATION-RELATIVE MEMORY REGION

  INT 31 FF20 - CauseWay - "UnLockMemNear" - UNLOCK APP-RELATIVE MEMORY REGION

  INT 31 FF21 - CauseWay - "GetMemDOS" - ALLOCATE CONVENTIONAL MEMORY

  INT 31 FF22 - CauseWay - "ResMemDOS" - RESIZE CONVENTIONAL MEMORY BLOCK

  INT 31 FF23 - CauseWay - "RelMemDOS" - RELEASE CONVENTIONAL MEMORY BLOCK

  INT 31 FF24 - CauseWay - "ExecOverlay" - LOAD AND OPTIONALLY EXECUTE APP CODE

  INT 31 FF25 - CauseWay - "GetDOSTrans" - GET DOS TRANSFER BUFFER

  INT 31 FF26 - CauseWay - "SetDOSTrans" - SET DOS TRANSFER BUFFER

INT 32 - (no special use)

  INT 32 ---- - VIRUS - reportedly used by "Tiny" Viruses

  INT 32 ---- - VIRUS - "Plovdiv 1.3"/"Damage 1.3" - ORIGINAL INT 21h VECTOR

INT 33 - MS MOUSE

  INT 33 0000 - MS MOUSE - RESET DRIVER AND READ STATUS

  INT 33 0001 - MS MOUSE v1.0+ - SHOW MOUSE CURSOR

  INT 33 0002 - MS MOUSE v1.0+ - HIDE MOUSE CURSOR

  INT 33 0003 - MS MOUSE v1.0+ - RETURN POSITION AND BUTTON STATUS

  INT 33 0004 - MS MOUSE v1.0+ - POSITION MOUSE CURSOR

  INT 33 0005 - MS MOUSE v1.0+ - RETURN BUTTON PRESS DATA

  INT 33 0006 - MS MOUSE v1.0+ - RETURN BUTTON RELEASE DATA

  INT 33 0007 - MS MOUSE v1.0+ - DEFINE HORIZONTAL CURSOR RANGE

  INT 33 0008 - MS MOUSE v1.0+ - DEFINE VERTICAL CURSOR RANGE

  INT 33 0009 - MS MOUSE v3.0+ - DEFINE GRAPHICS CURSOR

  INT 33 000A - MS MOUSE v3.0+ - DEFINE TEXT CURSOR

  INT 33 000B - MS MOUSE v1.0+ - READ MOTION COUNTERS

  INT 33 000C - MS MOUSE v1.0+ - DEFINE INTERRUPT SUBROUTINE PARAMETERS

  INT 33 000D - MS MOUSE v1.0+ - LIGHT PEN EMULATION ON

  INT 33 000E - MS MOUSE v1.0+ - LIGHT PEN EMULATION OFF

  INT 33 000F - MS MOUSE v1.0+ - DEFINE MICKEY/PIXEL RATIO

  INT 33 0010 - MS MOUSE v1.0+ - DEFINE SCREEN REGION FOR UPDATING

  INT 33 0010 - Genius MOUSE - DEFINE SCREEN REGION FOR UPDATING

  INT 33 0011 - Genius Mouse 9.06 - GET NUMBER OF BUTTONS

  INT 33 0012 - MS MOUSE - SET LARGE GRAPHICS CURSOR BLOCK

  INT 33 0013 - MS MOUSE v5.0+ - DEFINE DOUBLE-SPEED THRESHOLD

  INT 33 0014 - MS MOUSE v3.0+ - EXCHANGE INTERRUPT SUBROUTINES

  INT 33 0015 - MS MOUSE v6.0+ - RETURN DRIVER STORAGE REQUIREMENTS

  INT 33 0016 - MS MOUSE v6.0+ - SAVE DRIVER STATE

  INT 33 0017 - MS MOUSE v6.0+ - RESTORE DRIVER STATE

  INT 33 0018 - MS MOUSE v6.0+ - SET ALTERNATE MOUSE USER HANDLER

  INT 33 0019 - MS MOUSE v6.0+ - RETURN USER ALTERNATE INTERRUPT VECTOR

  INT 33 001A - MS MOUSE v6.0+ - SET MOUSE SENSITIVITY

  INT 33 001B - MS MOUSE v6.0+ - RETURN MOUSE SENSITIVITY

  INT 33 001C - MS MOUSE v6.0+ - SET INTERRUPT RATE

  INT 33 001D - MS MOUSE v6.0+ - DEFINE DISPLAY PAGE NUMBER

  INT 33 001E - MS MOUSE v6.0+ - RETURN DISPLAY PAGE NUMBER

  INT 33 001F - MS MOUSE v6.0+ - DISABLE MOUSE DRIVER

  INT 33 0020 - MS MOUSE v6.0+ - ENABLE MOUSE DRIVER

  INT 33 0021 - MS MOUSE v6.0+ - SOFTWARE RESET

  INT 33 0022 - MS MOUSE v6.0+ - SET LANGUAGE FOR MESSAGES

  INT 33 0023 - MS MOUSE v6.0+ - GET LANGUAGE FOR MESSAGES

  INT 33 0024 - MS MOUSE v6.26+ - GET SOFTWARE VERSION, MOUSE TYPE, AND IRQ NUMBER

  INT 33 0025 - MS MOUSE v6.26+ - GET GENERAL DRIVER INFORMATION

  INT 33 0026 - MS MOUSE v6.26+ - GET MAXIMUM VIRTUAL COORDINATES

  INT 33 0026 - Genius Mouse 9.06 - ???

  INT 33 0027 - MS MOUSE v7.01+ - GET SCREEN/CURSOR MASKS AND MICKEY COUNTS

  INT 33 0028 - MS MOUSE v7.0+ - SET VIDEO MODE

  INT 33 0029 - MS MOUSE v7.0+ - ENUMERATE VIDEO MODES

  INT 33 002A - MS MOUSE v7.02+ - GET CURSOR HOT SPOT

  INT 33 002B - MS MOUSE v7.0+ - LOAD ACCELERATION PROFILES

  INT 33 002C - MS MOUSE v7.0+ - GET ACCELERATION PROFILES

  INT 33 002D - MS MOUSE v7.0+ - SELECT ACCELERATION PROFILE

  INT 33 002E - MS MOUSE v8.10+ - SET ACCELERATION PROFILE NAMES

  INT 33 002F - MS MOUSE v7.02+ - MOUSE HARDWARE RESET

  INT 33 0030 - MS MOUSE v7.04+ - GET/SET BallPoint INFORMATION

  INT 33 0031 - MS MOUSE v7.05+ - GET CURRENT MINIMUM/MAXIMUM VIRTUAL COORDINATES

  INT 33 0032 - MS MOUSE v7.05+ - GET ACTIVE ADVANCED FUNCTIONS

  INT 33 0033 - MS MOUSE v7.05+ - GET SWITCH SETTINGS AND ACCELERATION PROFILE DATA

  INT 33 0034 - MS MOUSE v8.0+ - GET INITIALIZATION FILE

  INT 33 0035 - MS MOUSE v8.10+ - LCD SCREEN LARGE POINTER SUPPORT

  INT 33 0042 - PCMOUSE - GET MSMOUSE STORAGE REQUIREMENTS

  INT 33 0043 - Mouse Systems MOUSE DRIVER v7.01+ - CONFIGURE MOUSE???

  INT 33 0044 - Mouse Systems MOUSE DRIVER v7.01+ - TOGGLE IGNORE ACCELERATION CMDS

  INT 33 0045 - Mouse Systems MOUSE DRIVER v7.01+ - TOGGLE RESOLUTION DOUBLING

  INT 33 0047 - Mouse Systems MOUSE DRIVER v7.01+ - SET BUTTON ASSIGNMENTS

  INT 33 0048 - Mouse Systems MOUSE DRIVER v7.01+ - GET ???

  INT 33 004B - Z-NIX MOUSE DRIVER v7.04d - INSTALLATION CHECK

  INT 33 004C - Mouse Systems MOUSE DRIVER v7.01+ - SET ??? FLAG

  INT 33 004D - MS MOUSE - RETURN POINTER TO COPYRIGHT STRING

  INT 33 004F - Mouse Systems MOUSE DRIVER v7.01+ - ENABLE MOUSE

  INT 33 0050 - PCMOUSE - SAVE MSMOUSE STATE

  INT 33 0052 - PCMOUSE - RESTORE MSMOUSE STATE

  INT 33 0053 - Mouse Systems MOUSE DRIVER v7.01+ - DISABLE MOUSE

  INT 33 0054 - Mouse Systems MOUSE DRIVER v7.01+ - SELECT ULTRARES ACCELERATION LEVEL

  INT 33 0055 - Kraft Mouse - GET ???

  INT 33 0058 - Mouse Systems MOUSE DRIVER v7.01+ - ???

  INT 33 005A - Mouse Systems MOUSE DRIVER v7.01+ - SET ULTRARES ACCELERATIONS

  INT 33 0061 - Mouse Systems MOUSE DRIVER v7.01+ - ???

  INT 33 0067 - Mouse Systems MOUSE DRIVER v7.01+ - GET MOUSE BUTTONS???

  INT 33 006A - ATI Mouse - INSTALLATION CHECK

  INT 33 006C - TRUEDOX Mouse driver v4.01 - GET/SET HARDWARE PARAMETERS

  INT 33 006C - Mouse Systems MOUSE DRIVER v7.01+ - CLEAR ??? FLAG

  INT 33 006D - MS MOUSE - GET VERSION STRING

  INT 33 0070 - Mouse Systems MOUSE DRIVER - POPUP.COM - INSTALLATION CHECK

  INT 33 0072 - Mouse Systems MOUSE DRIVER v7.01+ - ???

  INT 33 0073 - Mouse Systems MOUSE DRIVER v7.01+ - GET BUTTON ASSIGNMENTS

  INT 33 00A0 - TRUEDOX Mouse driver - SET HARDWARE PC MODE (3 button)

  INT 33 00A1 - TRUEDOX Mouse driver - SET HARDWARE MS MODE (2 button)

  INT 33 00A6 - TRUEDOX Mouse driver - SET RESOLUTION

  INT 33 0100 - GRTMOUSE v1.00+ - INSTALLATION CHECK

  INT 33 0101 - GRTMOUSE v1.00+ - SET MOUSE CURSOR SHAPE

  INT 33 0102 - GRTMOUSE v1.00+ - GET MOUSE CURSOR SHAPE

  INT 33 0103 - GRTMOUSE v1.00+ - SET ACTIVE CHARACTERS

  INT 33 0104 - GRTMOUSE v1.00+ - GET ACTIVE CHARACTERS

  INT 33 012E - MS MOUSE v8.10+ - ???

  INT 33 022E - MS MOUSE v8.10+ - ???

  INT 33 0666 - TRUEDOX Mouse driver v4.01 - GET COPYRIGHT STRING

  INT 33 136C - LOGITECH MOUSE v6.10+ - ???

  INT 33 146C - LOGITECH MOUSE v6.10+ - GET/SET ???

  INT 33 156C - LOGITECH MOUSE v6.10+ - GET SIGNATURE AND VERSION STRINGS

  INT 33 166C - LOGITECH MOUSE v6.10+ - ???

  INT 33 176C - LOGITECH MOUSE v6.10+ - ???

  INT 33 186C - LOGITECH MOUSE v6.10+ - ???

  INT 33 196C - LOGITECH MOUSE v6.10+ - ???

  INT 33 1A6C - LOGITECH MOUSE v6.10+ - GET ???

  INT 33 1B6C - LOGITECH MOUSE v6.10+ - SET ???

  INT 33 1C6C - LOGITECH MOUSE v6.10+ - ???

  INT 33 1D6C - LOGITECH MOUSE - GET COMPASS PARAMETER

  INT 33 1E6C - LOGITECH MOUSE - SET COMPASS PARAMETER

  INT 33 1F6C - LOGITECH MOUSE - GET BALLISTICS INFORMATION

  INT 33 206C - LOGITECH MOUSE - SET LEFT OR RIGHT PARAMETER

  INT 33 216C - LOGITECH MOUSE - GET LEFT OR RIGHT PARAMETER

  INT 33 226C - LOGITECH MOUSE - REMOVE DRIVER FROM MEMORY

  INT 33 236C - LOGITECH MOUSE - SET BALLISTICS INFORMATION

  INT 33 246C - LOGITECH MOUSE - GET PARAMETERS AND RESET SERIAL MOUSE

  INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET BAUD RATE (SERIAL MOUSE ONLY)

  INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET EMULATION (SERIAL MOUSE ONLY)

  INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET REPORT RATE (SERIAL MOUSE ONLY)

  INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET MOUSE PORT (SERIAL MOUSE ONLY)

  INT 33 256C - LOGITECH MOUSE - SET PARAMETERS - SET MOUSE LOGICAL BUTTONS

  INT 33 266C - LOGITECH MOUSE - GET VERSION???

  INT 33 276C - LOGITECH MOUSE - ??? Tries MMSeries, Baud 2400

  INT 33 3000 - Smooth Mouse Driver, PrecisePoint - INSTALLATION CHECK

  INT 33 3001 - Smooth Mouse Driver, PrecisePoint - ENABLE SMOOTH MOUSE

  INT 33 3002 - Smooth Mouse Driver, PrecisePoint - DISABLE SMOOTH MOUSE

  INT 33 3003 - Smooth Mouse Driver, PrecisePoint - GET INFORMATION

  INT 33 3004 - Smooth Mouse Driver, PrecisePoint - RESERVED FUTURE EXPANSION

  INT 33 3005 - Smooth Mouse Driver, PrecisePoint - RESERVED FUTURE EXPANSION

  INT 33 4F00 - LOGITECH MOUSE v6.10+ - GET ???

  INT 33 4F01 - LOGITECH MOUSE v6.10+ - ???

  INT 33 6F00 - Hewlett Packard - HP MOUSE DRIVER INSTALLATION CHECK

  INT 33 8800 - InfoTrack IMOUSE.COM - UNHOOK MOUSE IRQ

  INT 33 8800 - InfoTrack IMOUSE.COM - GET ACTIVE IRQ

  INT 33 FFE6 - Switch-It v3.23 - GET ??? PROGRAM

  INT 33 FFE7 - Switch-It v3.23 - GET ???

  INT 33 FFE8 - Switch-It v3.23 - ???

  INT 33 FFE9 - Switch-It v3.23 - SET ???

  INT 33 FFEA - Switch-It v3.23 - SET ???

  INT 33 FFEB - Switch-It v3.23 - SET ??? FLAG

  INT 33 FFEC - Switch-It v3.23 - SET ???

  INT 33 FFED - Switch-It v3.23 - GET ???

  INT 33 FFEE - Switch-It v3.23 - GET ???

  INT 33 FFEF - Switch-It v3.23 - GET ???

  INT 33 FFF0 - Switch-It v3.23 - SET ???

  INT 33 FFF1 - Switch-It v3.23 - GET CONFIGURATION FILE

  INT 33 FFF2 - Switch-It v3.23 - SET ??? FLAG

  INT 33 FFF3 - Switch-It v3.23 - GET ???

  INT 33 FFF4 - Switch-It v3.23 - SET ???

  INT 33 FFF5 - Switch-It v3.23 - GET ???

  INT 33 FFF6 - Switch-It v3.23 - GET ???

  INT 33 FFF7 - Switch-It v3.23 - GET ???

  INT 33 FFF8 - Switch-It v3.23 - ???

  INT 33 FFF9 - Switch-It v3.23 - NOP

  INT 33 FFFA - Switch-It v3.23 - SET ???

  INT 33 FFFB - Switch-It v3.23 - GET ???

  INT 33 FFFC - Switch-It v3.23 - CLEAR ???

  INT 33 FFFD - Switch-It v3.23 - GET MEMORY ADDRESSES???

  INT 33 FFFE - Switch-It v3.23 - INSTALLATION CHECK

  INT 33 FFFF - Switch-It v3.23 - ???

INT 34 - FLOATING POINT EMULATION - OPCODE D8h

  INT 34 ---- - FLOATING POINT EMULATION - OPCODE D8h

INT 35 - FLOATING POINT EMULATION - OPCODE D9h

  INT 35 ---- - FLOATING POINT EMULATION - OPCODE D9h

INT 36 - FLOATING POINT EMULATION - OPCODE DAh

  INT 36 ---- - FLOATING POINT EMULATION - OPCODE DAh

INT 37 - FLOATING POINT EMULATION - OPCODE DBh

  INT 37 ---- - FLOATING POINT EMULATION - OPCODE DBh

INT 38 - FLOATING POINT EMULATION - OPCODE DCh

  INT 38 ---- - FLOATING POINT EMULATION - OPCODE DCh

  INT 38 ---- - PC-MOS/386 v3.0 - API

INT 39 - FLOATING POINT EMULATION - OPCODE DDh

  INT 39 ---- - FLOATING POINT EMULATION - OPCODE DDh

INT 3A - FLOATING POINT EMULATION - OPCODE DEh

  INT 3A ---- - FLOATING POINT EMULATION - OPCODE DEh

INT 3B - FLOATING POINT EMULATION - OPCODE DFh

  INT 3B ---- - FLOATING POINT EMULATION - OPCODE DFh

INT 3C - FLOATING POINT EMULATION - SEGMENT OVERRIDE

  INT 3C ---- - FLOATING POINT EMULATION - INSTRUCTIONS WITH SEGMENT OVERRIDE

INT 3D - FLOATING POINT EMULATION - STANDALONE FWAIT

  INT 3D ---- - FLOATING POINT EMULATION - STANDALONE FWAIT

INT 3E - FLOATING POINT EMULATION - Borland "SHORTCUT" CALL

  INT 3E ---- - FLOATING POINT EMULATION - Borland LANGUAGES "SHORTCUT" CALL

INT 3F - Overlay manager interrupt (Microsoft/Borland)

  INT 3F ---- - Overlay manager interrupt (Microsoft LINK.EXE, Borland TLINK VROOMM)

  INT 3F ---- - Microsoft Dynamic Link Library manager

INT 40 - DISKETTE - RELOCATED ROM BIOS DISKETTE HANDLER

  INT 40 ---- - DISKETTE - ROM BIOS DISKETTE HANDLER RELOCATED BY HARD DISK BIOS

  INT 40 ---- - Z100 - Master 8259 - Parity error or S100 error

  INT 40 ---- - Acorn BBC Master 512 - "OSFIND" - OPEN FILE

  INT 40 ---- - TI Professional PC - IRQ0

INT 41 - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE; CPU - MS Windows

  INT 41 ---- - SYSTEM DATA - HARD DISK 0 PARAMETER TABLE

  INT 41 ---- - Z100 - Master 8259 - Processor Swap

  INT 41 ---- - TI Professional PC - IRQ1

  INT 41 ---- - Acorn BBC Master 512 - "OSGBPB" - MULTI-BYTE GET/PUT

  INT 41 0000 - MS Windows debugging kernel - OUTPUT CHARACTER FOR USER

  INT 41 0001 - MS Windows debugging kernel - INPUT CHARACTER

  INT 41 000D - MS Windows debugging kernel - TASK GOING OUT

  INT 41 000E - MS Windows debugging kernel - TASK COMING IN

  INT 41 0012 - MS Windows debugging kernel - "OutputDebugString"

  INT 41 004F - MS Windows debugging kernel - DEBUGGER INSTALLATION CHECK

  INT 41 0050 - MS Windows debugging kernel - "DefineDebugSegment"

  INT 41 0051 - MS Windows debugging kernel - MOVE SEGMENT

  INT 41 0052 - MS Windows debugging kernel - FREE SEGMENT

  INT 41 0059 - MS Windows debugging kernel - LOAD TASK

  INT 41 005C - MS Windows debugging kernel - FREE INITIAL SEGMENT

  INT 41 0060 - MS Windows debugging kernel -  END OF SEGMENT LOAD

  INT 41 0061 - MS Windows debugging kernel - END OF SEGMENT DISCARD

  INT 41 0062 - MS Windows debugging kernel - APPLICATION TERMINATING

  INT 41 0063 - MS Windows debugging kernel - ASYNCHRONOUS STOP (Ctrl-Alt-SysReq)

  INT 41 0064 - MS Windows debugging kernel - DLL LOADED

  INT 41 0065 - MS Windows debugging kernel - MODULE REMOVED

INT 42 - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)

  INT 42 ---- - VIDEO - RELOCATED DEFAULT INT 10 VIDEO SERVICES (EGA,VGA)

  INT 42 ---- - Z100 - Master 8259 - Timer

  INT 42 ---- - TI Professional PC - IRQ2

  INT 42 ---- - Western Digital WD1002 SuperBIOS - INT 40 CASCADE

  INT 42 ---- - Acorn BBS Master 512 - "OSBPUT" - WRITE SINGLE BYTE TO FILE

  INT 42 7500 - Toshiba laptops - ???

  INT 42 7501 - Toshiba laptop - GET ??? DATA

  INT 42 7502 - Toshiba laptops - SET ??? DATA

  INT 42 7503 - Toshiba laptops - GET DISPLAY STATUS

  INT 42 7504 - Toshiba laptops - ???

INT 43 - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)

  INT 43 ---- - VIDEO DATA - CHARACTER TABLE (EGA,MCGA,VGA)

  INT 43 ---- - Z100 - Master 8259 - Slave 8259 input

  INT 43 ---- - TI Professional PC - IRQ3 - TIMER1 25ms INTERVAL INTERRUPT

  INT 43 ---- - Acorn BBC Master 512 - "OSBGET" - READ SINGLE BYTE FROM FILE

INT 44 - VIDEO DATA - CHARACTER FONT (PCjr); Novell NetWare

  INT 44 ---- - VIDEO DATA - ROM BIOS CHARACTER FONT, CHARACTERS 00h-7Fh (PCjr)

  INT 44 ---- - Novell NetWare - HIGH-LEVEL LANGUAGE API

  INT 44 ---- - IBM 3270-PC High Level Language API

  INT 44 ---- - Z100 - Master 8259 - Serial A

  INT 44 ---- - TI Professional PC - IRQ4

  INT 44 ---- - VIRUS - "Lehigh" - ORIGINAL INT 21h VECTOR

  INT 44 00-- - Acorn BBC Master 512 - "OSARGS" - GET/SET FILE PARAMS FOR OPEN FILE

  INT 44 ---- - Acorn BBC Master 512 - "OSARGS" - GET/SET FILE PARAMS FOR OPEN FILE

INT 45 - Z100/Acorn

  INT 45 ---- - Z100 - Master 8259 - Serial B

  INT 45 ---- - TI Professional PC - IRQ5

  INT 45 ---- - Acorn BBC Master 512 - "OSFILE" - READ/WRITE FILE OR DIRECTORY INFO

INT 46 - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE

  INT 46 ---- - SYSTEM DATA - HARD DISK 1 DRIVE PARAMETER TABLE

  INT 46 ---- - Z100 - Master 8259 - Keyboard, Retrace, and Light Pen

  INT 46 ---- - TI Professional PC - IRQ6

  INT 46 ---- - Acorn BBC Master 512 - "OSRDCH" - GET CHARACTER FROM CUR INPUT STREAM

INT 47 - Z100/Acorn/Western Digital/SQL Base

  INT 47 ---- - Z100 - Master 8259 - Printer

  INT 47 ---- - TI Professional PC - IRQ7 - KEYBOARD USART

  INT 47 ---- - Acorn BBC Master 512 - "OSWRCH" - WRITE CHARACTER TO CUR OUTPUT STREAM

  INT 47 ---- - Western Digital WD1002-27X SuperBIOS - INT 40 CASCADE

  INT 47 8000 - SQL Base - DATABASE ENGINE API

  INT 47 8001 - SQL Base - GET VERSION NUMBER

INT 48 - KEYBOARD (PCjr) - Z100/Watstar/Acorn/Western Digital/Compaq

  INT 48 ---- - KEYBOARD - CORDLESS KEYBOARD TRANSLATION (PCjr)

  INT 48 ---- - Z100 - Slave 8259 - S100 vectored line 0

  INT 48 ---- - Watstar PC Network data pointer 1

  INT 48 ---- - TI Professional PC - SPEAKER DEVICE SERVICE ROUTINE

  INT 48 ---- - Acorn BBC Master 512 - "OSNEWL" - SEND NEWLINE TO OUTPUT STREAM

  INT 48 ---- - Western Digital WD1002-27X SuperBIOS - DRIVE DATA (NOT A VECTOR!)

  INT 48 ---- - Compaq UILIB.EXE - API

  INT 48 1A70 - Compaq UILIB.EXE - INSTALLATION CHECK

INT 49 - SYSTEM DATA (PCjr) - Z100/TI/Watstar/Acorn/MAGic

  INT 49 ---- - SYSTEM DATA - NON-KEYBOARD SCAN-CODE TRANSLATION TABLE (PCjr)

  INT 49 ---- - Z100 - Slave 8259 - S100 vectored line 1

  INT 49 ---- - TI Professional PC - CRT DEVICE SERVICE ROUTINE

  INT 49 ---- - Watstar PC Network data pointer 2

  INT 49 ---- - Acorn BBC Master 512 - "OSASCI" - WRITE CHARACTER TO CUR OUTPUT STREAM

  INT 49 0001 - MAGic v1.16+ - TURN ON MAGNIFICATION

  INT 49 0002 - MAGic v1.16+ - TURN OFF MAGNIFICATION

  INT 49 0003 - MAGic v1.16+ - SHIFT MAGNIFIED WINDOW TO INCLUDE SPECIFIED LOCATION

  INT 49 0004 - MAGic v1.16+ - REPOSITION MAGNIFIED WINDOW

  INT 49 0005 - MAGic v1.16+ - GET POSITION OF MAGNIFIED WINDOW

  INT 49 0006 - MAGic v1.16+ - GET SIZE OF FULL SCREEN

  INT 49 0007 - MAGic v1.16+ - GET SIZE OF MAGNIFICATION WINDOW

  INT 49 0008 - MAGic v1.23+ - SET TEXT MODE MAGNIFICATION SIZE

INT 4A - SYSTEM - USER ALARM HANDLER

  INT 4A ---- - SYSTEM - USER ALARM HANDLER

  INT 4A ---- - Z100 - Slave 8259 - S100 vectored line 2

  INT 4A ---- - TI Professional PC - KEYBOARD DEVICE SERVICE ROUTINE

  INT 4A ---- - Acorn BBC Master 512 - "OSWORD" - MISC FUNCTIONS USING CONTROL BLOCK

INT 4B - IBM SCSI interface; Virtual DMA Specification (VDS)

  INT 4B ---- - Z100 - Slave 8259 - S100 vectored line 3

  INT 4B ---- - TI Professional PC - PARALLEL PORT DEVICE SERVICE ROUTINE

  INT 4B ---- - Common Access Method SCSI interface (draft revision 1.9)

  INT 4B ---- - Acorn BBC Master 512 - "OSBYTE" - MISC FUNCTIONS USING REGISTER PARAMS

  INT 4B 80-- - IBM SCSI interface

  INT 4B 8102 - Virtual DMA Specification (VDS) - GET VERSION

  INT 4B 8103 - Virtual DMA Specification - LOCK DMA REGION

  INT 4B 8104 - Virtual DMA Specification - UNLOCK DMA REGION

  INT 4B 8105 - Virtual DMA Specification - SCATTER/GATHER LOCK REGION

  INT 4B 8106 - Virtual DMA Specification - SCATTER/GATHER UNLOCK REGION

  INT 4B 8107 - Virtual DMA Specification - REQUEST DMA BUFFER

  INT 4B 8108 - Virtual DMA Specification - RELEASE DMA BUFFFER

  INT 4B 8109 - Virtual DMA Specification - COPY INTO DMA BUFFER

  INT 4B 810A - Virtual DMA Specification - COPY OUT OF DMA BUFFER

  INT 4B 810B - Virtual DMA Specification - DISABLE DMA TRANSLATION

  INT 4B 810C - Virtual DMA Specification - ENABLE DMA TRANSLATION

  INT 4B 810D - QEMM-386 - BUG

INT 4C - Z100/Acorn/TI

  INT 4C ---- - Z100 - Slave 8259 - S100 vectored line 4

  INT 4C ---- - TI Professional PC - CLOCK/ANALOG INTERFACE

  INT 4C ---- - Acorn BBC Master 512 - "OSCLI" - INTERPRET COMMAND LINE

INT 4D - Z100

  INT 4D ---- - Z100 - Slave 8259 - S100 vectored line 5

  INT 4D 00-- - TI Professional PC - DISK - RESET DISK SYSTEM

  INT 4D 01-- - TI Professional PC - DISK - GET STATUS OF LAST OPERATION

  INT 4D 02-- - TI Professional PC - DISK - READ SECTOR(S) INTO MEMORY

  INT 4D 03-- - TI Professional PC - DISK - WRITE SECTOR(S) FROM MEMORY

  INT 4D 04-- - TI Professional PC - DISK - VERIFY DISK SECTOR CRC(S)

  INT 4D 06-- - TI Professional PC - DISK - VERIFY DISK SECTOR(S)

  INT 4D 07-- - TI Professional PC - DISK - GET RETRY STATUS OF LAST OPERATION

  INT 4D 08-- - TI Professional PC - DISK - SET STANDARD DEVICE INTERFACE TABLE

  INT 4D 09-- - TI Professional PC - DISK - SET DEVICE INTERFACE TABLE ADDRESS

  INT 4D 0A-- - TI Professional PC - DISK - GET DEVICE INTERFACE TABLE ADDRESS

  INT 4D 0B-- - TI Professional PC - DISK - TURN OFF ALL DRIVES

INT 4E - TI/Z100

  INT 4E ---- - Z100 - Slave 8259 - S100 vectored line 6

  INT 4E ---- - TI Professional PC - TIME-OF-DAY CLOCK DEVICE SERVICE ROUTINE

INT 4F - Common Access Method SCSI

  INT 4F ---- - Z100 - Slave 8259 - S100 vectored line 7

  INT 4F ---- - TI Professional PC - SYSTEM CONFIGURATION CALL

  INT 4F 8100 - Common Access Method SCSI interface rev 2.3 - SEND CCB TO XPT/SIM

  INT 4F 8200 - Common Access Method SCSI interface rev 2.3 - INSTALLATION CHECK

INT 50 - IRQ0 relocated by software

  INT 50 ---- - TIL Xpert AIM (X.25)

  INT 50 ---- - IRQ0 relocated by DESQview

  INT 50 ---- - IRQ0 relocated by IBM 3278 emulation control program

  INT 50 ---- - IRQ0 relocated by OS/2 v1.x

  INT 50 ---- - TI Professional PC - FATAL SOFTWARE ERROR TRAP

  INT 50 0000 - Vanderaart TEXT WINDOWS, PC Thuis Shell - OPEN TEXT WINDOW

  INT 50 0001 - Vanderaart TEXT WINDOWS, PC Thuis Shell - CLOSE TEXT WINDOW

  INT 50 0002 - Vanderaart TEXT WINDOWS - PUT CHARACTER IN WINDOW

  INT 50 0002 - PC Thuis Organizer Shell - PLOT TEXT

  INT 50 0003 - Vanderaart TEXT WINDOWS - OUTPUT LINE TO WINDOW

  INT 50 0003 - PC Thuis Organizer Shell - WRITE FILE

  INT 50 0004 - Vanderaart TEXT WINDOWS - GET KEY

  INT 50 0004 - PC Thuis Organizer Shell - READ FILE

  INT 50 0005 - Vanderaart TEXT WINDOWS - CHANGE ATTRIBUTE

  INT 50 0005 - PC Thuis Organizer Shell - PROMPT YES/NO

  INT 50 0006 - Vanderaart TEXT WINDOWS - EDIT LINE IN WINDOW

  INT 50 0006 - PC Thuis Organizer Shell - ALERT USER

  INT 50 0007 - PC Thuis Organizer Shell - DO LINE

  INT 50 0008 - PC Thuis Organizer Shell - DO MENU

  INT 50 0009 - PC Thuis Organizer Shell - MESSAGE ON

  INT 50 000A - PC Thuis Organizer Shell - MESSAGE OFF

  INT 50 000B - PC Thuis Organizer Shell - CHANGE ATTRIBUTE

  INT 50 000C - PC Thuis Organizer Shell - DO REQUEST

  INT 50 000D - PC Thuis Organizer Shell - EDIT LINE

  INT 50 000E - PC Thuis Organizer Shell - PLOT CHARACTER

  INT 50 000F - PC Thuis Organizer Shell - EMPTY WINDOW

  INT 50 0010 - PC Thuis Organizer Shell - TRACE MENU

  INT 50 0011 - PC Thuis Organizer Shell - MOVE MEMORY

  INT 50 0012 - PC Thuis Organizer Shell - COMPARE MEMORY

  INT 50 0013 - PC Thuis Organizer Shell - GET KEY

  INT 50 0014 - PC Thuis Organizer Shell - SCROLL WINDOW

  INT 50 0015 - PC Thuis Organizer Shell - GET MEMORY HANDLE

INT 51 - IRQ1 relocated by software

  INT 51 ---- - IRQ1 relocated by DESQview

  INT 51 ---- - IRQ1 relocated by IBM 3278 emulation control program

  INT 51 ---- - IRQ1 relocated by OS/2 v1.x

  INT 51 ---- - TI Professional PC - RESTART TIMING EVENT

INT 52 - IRQ2 relocated by software

  INT 52 ---- - IRQ2 relocated by DESQview

  INT 52 ---- - IRQ2 relocated by IBM 3278 emulation control program, OS/2 v1.x

  INT 52 ---- - TI Professional PC - CANCEL TIMING EVENT

INT 53 - IRQ3 relocated by software

  INT 53 ---- - IRQ3 relocated by DESQview

  INT 53 ---- - IRQ3 relocated by IBM 3278 emulation control program, OS/2 v1.x

  INT 53 ---- - TI Professional PC - SVC INTERFACE

  INT 53 ---- - WEB??? - API

INT 54 - IRQ4 relocated by software

  INT 54 ---- - IRQ4 relocated by DESQview

  INT 54 ---- - IRQ4 relocated by IBM 3278 emulation control program, OS/2 v1.x

  INT 54 ---- - TI Professional PC - ACTIVATE TASK SUBROUTINE

  INT 54 5400 - Toshiba PCMCIA2 - INSTALLATION CHECK

INT 55 - IRQ5 relocated by software

  INT 55 ---- - IRQ5 relocated by DESQview

  INT 55 ---- - IRQ5 relocated by IBM 3278 emulation control program, OS/2 v1.x

  INT 55 ---- - TI Professional PC - RESERVED FOR FUTURE USE

INT 56 - IRQ6 relocated by software

  INT 56 ---- - IRQ6 relocated by DESQview

  INT 56 ---- - IRQ6 relocated by IBM 3278 emulation control program, OS/2 v1.x

  INT 56 ---- - TI Professional PC - RESERVED FOR FUTURE USE

INT 57 - IRQ7 relocated by software

  INT 57 ---- - IRQ7 relocated by DESQview

  INT 57 ---- - IRQ7 relocated by IBM 3278 emulation control program, OS/2 v1.x

  INT 57 ---- - TI Professional PC - CRT MAPPING HOOK

INT 58 - IRQ8/0 relocated by software

  INT 58 ---- - IRQ8 relocated by DESQview 2.26+

  INT 58 ---- - IRQ0 relocated by DoubleDOS

  INT 58 ---- - TI Professional PC - SYSTEM TIMER 25ms HOOK

INT 59 - IRQ9/1 relocated by software; GSS Computer Graphics Interface

  INT 59 ---- - IRQ9 relocated by DESQview 2.26+

  INT 59 ---- - IRQ1 relocated by DoubleDOS

  INT 59 ---- - TI Professional PC - COMMON ROM HARDWARE INTERRUPT EXIT VECTOR

  INT 59 ---- - GSS Computer Graphics Interface (GSS*CGI)

INT 5A - IRQ10/2 relocated by software

  INT 5A ---- - IRQ10 relocated by DESQview 2.26+

  INT 5A ---- - IRQ2 relocated by DoubleDOS

  INT 5A ---- - PC Cluster adapter BIOS entry address

  INT 5A ---- - TI Professional PC - SYSTEM TIMER 100ms HOOK

INT 5B - IRQ11/3 relocated by software; Network

  INT 5B ---- - IRQ11 relocated by DESQview 2.26+

  INT 5B ---- - IRQ3 relocated by DoubleDOS

  INT 5B ---- - PC cluster adapter - RELOCATED INT 19

  INT 5B ---- - AT&T Starlan Extended NetBIOS (variable length names)

  INT 5B ---- - Microsoft Network Transport Layer Interface

  INT 5B ---- - used by Alloy NTNX

  INT 5B ---- - ISOLAN Multi Protocol Software

  INT 5B ---- - TI Professional PC - KEYBOARD MAPPING HOOK

  INT 5B 5254 - SitBack v3.02R - GET ???

  INT 5B 8485 - SitBack v3.02R - INSTALLATION CHECK

  INT 5B 8485 - SitBack v3.02R - SET ??? FLAG AND GET ??? ADDRESS

  INT 5B 8485 - SitBack v3.02R - CLEAR ??? FLAG

  INT 5B 8485 - SitBack v3.02R - ???

  INT 5B 8485 - SitBack v3.02R - ???

  INT 5B 8485 - SitBack v3.02R - ???

  INT 5B 8485 - SitBack v3.02R - ???

  INT 5B 8485 - SitBack v3.02R - SET ??? FLAG

  INT 5B 8485 - SitBack v3.02R - GET RESIDENT DATA SEGMENT

  INT 5B 8485 - SitBack v3.02R - GET DTA

  INT 5B 8485 - SitBack v3.02R - TOGGLE ???

INT 5C - IRQ12/4 relocated by software; Network Interface

  INT 5C ---- - IRQ12 relocated by DESQview 2.26+

  INT 5C ---- - IRQ4 relocated by DoubleDOS

  INT 5C ---- - NetBIOS INTERFACE

  INT 5C ---- - TOPS INTERFACE

  INT 5C ---- - ATALK.SYS - AppleTalk INTERFACE

  INT 5C ---- - IBM 802.2 INTERFACE (LLC)

  INT 5C ---- - TI Professional PC - KEYBOARD PAUSE KEY VECTOR

  INT 5C ---- - $25 LAN - INSTALLATION CHECK

  INT 5C 04-- - $25 LAN - CHECK IF CONNECTION ALIVE

INT 5D - IRQ13/5 relocated by software

  INT 5D ---- - IRQ13 relocated by DESQview 2.26+

  INT 5D ---- - IRQ5 relocated by DoubleDOS

  INT 5D ---- - TI Professional PC - KEYBOARD BREAK KEY VECTOR

INT 5E - IRQ14/6 relocated by software

  INT 5E ---- - IRQ14 relocated by DESQview 2.26+

  INT 5E ---- - IRQ6 relocated by DoubleDOS

  INT 5E ---- - TI Professional PC - KEYBOARD PRINT-SCREEN VECTOR

INT 5F - IRQ15/7 relocated by software; HP 95LX GRAPHICS PRIMITIVES

  INT 5F ---- - IRQ15 relocated by DESQview 2.26+

  INT 5F ---- - IRQ7 relocated by DoubleDOS

  INT 5F ---- - TI Professional PC - KEYBOARD QUEUEING VECTOR

  INT 5F 00-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET VIDEO MODE

  INT 5F 01-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET FILL MASK

  INT 5F 02-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET CURRENT GRAPHICS INFO

  INT 5F 03-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LOGICAL ORIGIN

  INT 5F 04-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET CLIP REGION

  INT 5F 05-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW RECTANGLE

  INT 5F 06-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - DRAW LINE

  INT 5F 07-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PLOT POINT

  INT 5F 08-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - MOVE PEN

  INT 5F 09-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET PEN COLOR

  INT 5F 0A-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET REPLACEMENT RULE

  INT 5F 0B-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - SET LINE TYPE

  INT 5F 0C-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET PIXEL

  INT 5F 0D-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - GET IMAGE

  INT 5F 0E-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - PUT IMAGE

  INT 5F 0F-- - HP 95LX/100LX/200LX GRAPHICS PRIMITIVES - WRITE TEXT

  INT 5F 10-- - HP 100LX/200LX GRAPHICS PRIMITIVES - GET FONT POINTER

  INT 5F 11-- - HP 100LX/200LX GRAPHICS PRIMITIVES - SET CURRENT FONT

INT 60 - reserved for user interrupt; multiple purposes

  INT 60 ---- - reserved for user interrupt

  INT 60 ---- - VIRUS - "Zero Bug" - INSTALLATION CHECK

  INT 60 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

  INT 60 ---- - TI Professional PC - SYSTEM ROM DATA AREA POINTER (NOT A VECTOR!)

  INT 60 ---- - Atari Portfolio - USER INTERFACE FUNCTIONS

  INT 60 ---- - Nabbit v2.0 - (NOT A VECTOR!) - INSTALLATION CHECK

  INT 60 ---- - Buffit v3.0 - (NOT A VECTOR!) - INSTALLATION CHECK

  INT 60 ---- - PC-IPC API

  INT 60 ---- - Tangram Arbiter - API

  INT 60 ---- - Excelan LAN Workplace for DOS 3.5 - API

  INT 60 ---- - TCPDRV 2.01 - TCP/IP Application Binary Interface (ABI)

  INT 60 ---- - INTRSPY/CMDSPY v1.0 only - API

  INT 60 ---- - PC/370 v4.2 - ???

  INT 60 ---- - JPI TopSPEED Modula-2 v1 - PROCEDURE ENTRY TRAP

  INT 60 ---- - FTP Packet Driver - PC/TCP Packet Driver Specification

  INT 60 ---- - 3270-PC CONTROL PROGRAM - ???

  INT 60 ---- - HP 95LX System Manager - WAIT FOR EVENT

  INT 60 ---- - HP 95LX System Manager - CHECK FOR EVENT

  INT 60 ---- - HP 95LX System Manager - "SH_STATUS"

  INT 60 ---- - HP 95LX System Manager - LOTUS 1-2-3 BRIDGE SERVICES

  INT 60 ---- - HP 95LX System Manager - FLUSH KEYBOARD BUFFER

  INT 60 ---- - HP 95LX System Manager - YIELD CPU

  INT 60 ---- - HP 95LX System Manager - "NO_FINI" - REFUSE TERMINATION REQUEST

  INT 60 ---- - HP 95LX System Manager - SETUP MENU

  INT 60 ---- - HP 95LX System Manager - DISPLAY OR REDISPLAY MENU

  INT 60 ---- - HP 95LX System Manager - "MENU_ON" - ENABLE PROCESSING OF MENU

  INT 60 ---- - HP 95LX System Manager - REMOVE MENU

  INT 60 ---- - HP 95LX System Manager - LET SYSTEM MANAGER HANDLE MENU KEYSTROKE

  INT 60 ---- - HP 95LX System Manager - INITIALIZE FILE SELECTION MENU

  INT 60 ---- - HP 95LX System Manager - DISPLAY/REDISPLAY FILE SELECTION MENU

  INT 60 ---- - HP 95LX System Manager - LET SYSMGR PROCESS FILE SEL MENU KEYSTROKE

  INT 60 ---- - HP 95LX System Manager - REMOVE FILE SELECTION MENU

  INT 60 ---- - HP 95LX System Manager - DISPLAY STRING

  INT 60 ---- - HP 95LX System Manager - CLEAR PORTION OF SCREEN

  INT 60 ---- - HP 95LX System Manager - SCROLL PORTION OF SCREEN

  INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_XCHG"

  INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRATTR"

  INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRRVRT"

  INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_CHRINV"

  INT 60 ---- - HP 95LX System Manager - SCREEN SERVICE "M_ROWS_COLS"

  INT 60 ---- - HP 95LX System Manager - SET SCREEN (VIDEO???) MODE

  INT 60 ---- - HP 95LX System Manager - GET SCREEN (VIDEO???) MODE

  INT 60 ---- - HP 95LX System Manager - SET CURSOR POSITION

  INT 60 ---- - HP 95LX System Manager - "EDIT_INIT"

  INT 60 ---- - HP 95LX System Manager - EDIT ON TOP LINE

  INT 60 ---- - HP 95LX System Manager - DISPLAY OR REDISPLAY EDIT FIELD

  INT 60 ---- - HP 95LX System Manager - LET SYSTEM MANAGER PROCESS EDITING KEYSTROK

  INT 60 ---- - HP 95LX System Manager - "MDIT_INI"

  INT 60 ---- - HP 95LX System Manager - "MDIT_DIS"

  INT 60 ---- - HP 95LX System Manager - "MDIT_KEY"

  INT 60 ---- - HP 95LX System Manager - "MDIT_FIL"

  INT 60 ---- - HP 95LX System Manager - "MDIT_MARK"

  INT 60 ---- - HP 95LX System Manager - "MDIT_UNMARK"

  INT 60 ---- - HP 95LX System Manager - "MDIT_CUTMARK"

  INT 60 ---- - HP 95LX System Manager - "MDIT_INS_STR"

  INT 60 ---- - HP 95LX System Manager - OPEN FILE

  INT 60 ---- - HP 95LX System Manager - OPEN FILE IN READ-ONLY MODE

  INT 60 ---- - HP 95LX System Manager - CREATE NEW FILE

  INT 60 ---- - HP 95LX System Manager - CREATE OR TRUNCATE FILE

  INT 60 ---- - HP 95LX System Manager - READ FROM FILE

  INT 60 ---- - HP 95LX System Manager - WRITE TO FILE

  INT 60 ---- - HP 95LX System Manager - SET FILE POSITION

  INT 60 ---- - HP 95LX System Manager - GET FILE POSITION

  INT 60 ---- - HP 95LX System Manager - CLOSE FILE

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_SETPAT"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_MATCH"

  INT 60 ---- - HP 95LX System Manager - IDENTIFY FILENAME REFERENT

  INT 60 ---- - HP 95LX System Manager - DELETE FILE

  INT 60 ---- - HP 95LX System Manager - RENAME FILE

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GETDIR"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_SETDIR"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_VOLUME"

  INT 60 ---- - HP 95LX System Manager - MAKE A SUBDIRECTORY

  INT 60 ---- - HP 95LX System Manager - REMOVE A SUBDIRECTORY

  INT 60 ---- - HP 95LX System Manager - GET DEFAULT DRIVE

  INT 60 ---- - HP 95LX System Manager - SET DEFAULT DRIVE

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_FDATE"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GET_SYSDIR"

  INT 60 ---- - HP 95LX System Manager - GET FILE ATTRIBUTES

  INT 60 ---- - HP 95LX System Manager - SET FILE ATTRIBUTES

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_COMMON_OPEN"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_COPYDT"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_GETFDT"

  INT 60 ---- - HP 95LX System Manager - FILE SERVICE "M_PUTFDT"

  INT 60 ---- - HP 95LX System Manager - PROCESS INITIALIZING

  INT 60 ---- - HP 95LX System Manager - PROCESS TERMINATION

  INT 60 ---- - HP 95LX System Manager - "M_LOCK" - PREVENT TASK SWITCHES

  INT 60 ---- - HP 95LX System Manager - "M_UNLOCK" - ALLOW TASK SWITCHES

  INT 60 ---- - HP 95LX System Manager - "M_SPAWN"

  INT 60 ---- - HP 95LX System Manager - "M_APPCOUNT"

  INT 60 ---- - HP 95LX System Manager - "M_REBOOT"

  INT 60 ---- - HP 95LX System Manager - "M_SPAWNARG"

  INT 60 ---- - HP 95LX System Manager - "M_REG_APP_NAME"

  INT 60 ---- - HP 95LX System Manager - "M_APP_NAME"

  INT 60 ---- - HP 95LX System Manager - OPEN CLIPBOARD

  INT 60 ---- - HP 95LX System Manager - CLOSE CLIPBOARD

  INT 60 ---- - HP 95LX System Manager - RESET CLIPBOARD

  INT 60 ---- - HP 95LX System Manager - "M_NEW_REP" - START A NEW REPRESENTATION???

  INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_FINI_REP"

  INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_NAME"

  INT 60 ---- - HP 95LX System Manager - CLIPBOARD SERVICE "M_REP_INDEX"

  INT 60 ---- - HP 95LX System Manager - WRITE TO CLIPBOARD

  INT 60 ---- - HP 95LX System Manager - READ FROM CLIPBOARD

  INT 60 ---- - HP 95LX System Manager - BEEP

  INT 60 ---- - HP 95LX System Manager - SOUND SERVICE "M_THUD"

  INT 60 ---- - HP 95LX System Manager - MAKE A SOUND PATTERN

  INT 60 ---- - HP 95LX System Manager - TURN OFF SOUND

  INT 60 ---- - HP 95LX System Manager - ALLOCATE REGULAR MEMORY BLOCK

  INT 60 ---- - HP 95LX System Manager - FREE REGULAR MEMORY BLOCK

  INT 60 ---- - HP 95LX System Manager - ALLOCATE LARGE MEMORY BLOCK

  INT 60 ---- - HP 95LX System Manager - FREE LARGE MEMORY BLOCK

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DTINFO"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GETDTM"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SETDTM"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_XALARM"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_ALARM"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_SW"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SW"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_SW"

  INT 60 ---- - HP 95LX System Manager - "M_TELLTIME" - DISPLAY TIMESTAMP

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_SETTINGS"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_SET_SETTINGS"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_START_TIMER"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_STOP_TIMER"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_GET_TIMER"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_TELL_ANYTIME"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVCE "M_GET_SETTINGS_ADDR"

  INT 60 ---- - HP 95LX System Manager - PARSE DATE SPECIFICATION

  INT 60 ---- - HP 95LX System Manager - PARSE TIME SPECIFICATION

  INT 60 ---- - HP 95LX System Manager - SET DATE PARSING RULE

  INT 60 ---- - HP 95LX System Manager - SET TIME PARSING RULE

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_POST_TIME"

  INT 60 ---- - HP 95LX System Manager - CLOCK/CALENDAR SERVICE "M_DAY_TRIGGER"

  INT 60 ---- - HP 95LX System Manager - OPEN PRINTER

  INT 60 ---- - HP 95LX System Manager - CLOSE PRINTER

  INT 60 ---- - HP 95LX System Manager - WRITE TO PRINTER

  INT 60 ---- - HP 95LX System Manager - INITIALIZE PRINTER

  INT 60 ---- - HP 95LX System Manager - "M_TRANS_PRINTER"

  INT 60 ---- - HP 95LX System Manager - "M_FALL_PRINTER"

  INT 60 ---- - HP 95LX System Manager - COMMUNICATIONS SERVICE "M_COMM_INIT"

  INT 60 ---- - HP 95LX System Manager - OPEN COMMUNICATIONS CHANNEL

  INT 60 ---- - HP 95LX System Manager - CLOSE COMMUNICATIONS CHANNEL

  INT 60 ---- - HP 95LX System Manager - "M_COMM_GETMDM"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_ANSWER"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_DIAL"

  INT 60 ---- - HP 95LX System Manager - RESET COMMUNICATIONS CHANNEL

  INT 60 ---- - HP 95LX System Manager - "M_COMM_HANGUP"

  INT 60 ---- - HP 95LX System Manager - SEND DATA OVER COMM CHANNEL

  INT 60 ---- - HP 95LX System Manager - QUERY COMM CHANNEL TRANSMIT QUEUE

  INT 60 ---- - HP 95LX System Manager - QUERY COMM CHANNEL RECEIVE QUEUE

  INT 60 ---- - HP 95LX System Manager - RECEIVE DATA FROM COMM CHANNEL

  INT 60 ---- - HP 95LX System Manager - "M_COMM_HAZCMD"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_COMAND"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_BREAK"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_FRCXON"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_FRCXOF"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_SETDTR"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_XMITNG"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_STATUS"

  INT 60 ---- - HP 95LX System Manager - SET COMMUNICATIONS SETTINGS

  INT 60 ---- - HP 95LX System Manager - GET COMMUNICATIONS SETTINGS

  INT 60 ---- - HP 95LX System Manager - "M_COMM_CNFGUR"

  INT 60 ---- - HP 95LX System Manager - "M_COMM_QRYERR"

  INT 60 ---- - HP 95LX System Manager - "M_ERRMSG"

  INT 60 ---- - HP 95LX System Manager - DRAW STANDARD TITLE BOX

  INT 60 ---- - HP 95LX System Manager - "SHOWNAME"

  INT 60 ---- - HP 95LX System Manager - DISPLAY TWO-LINE MESSAGE BOX

  INT 60 ---- - HP 95LX System Manager - REMOVE MESSAGE BOX

  INT 60 ---- - HP 95LX System Manager - "M_COM_TIMER_ADDR"

  INT 60 ---- - HP 95LX System Manager - "M_COM_TIMER_COUNT_ADDR"

  INT 60 ---- - HP 95LX System Manager - "M_SYS_RSRC_ADDR"

  INT 60 ---- - HP 95LX System Manager - "M_BIOS_OUTSTR"

  INT 60 ---- - HP 95LX System Manager - DISPLAY THREE-LINE MESSAGE BOX

  INT 60 ---- - HP 95LX System Manager - DISABLE MACROS

  INT 60 ---- - HP 95LX System Manager - ENABLE MACROS

  INT 60 ---- - HP 95LX System Manager - "M_DATE_TIME_SEPS"

  INT 60 ---- - HP 95LX System Manager - "M_FORM_FT"

  INT 60 ---- - HP 95LX System Manager - "M_RAM_IV_INFO"

  INT 60 ---- - HP 95LX System Manager - "M_DIRTY_SYNC" - FORCE SCREEN UPDATE

  INT 60 ---- - HP 95LX System Manager - RESOURCE SERVICE "MAP_RESOURCE_FILE"

  INT 60 ---- - HP 95LX System Manager - "GET_RESOURCE_PTR"

  INT 60 ---- - HP 95LX System Manager - "GET_RSRC_TAB_PTR"

  INT 60 ---- - HP 95LX System Manager - "INIT_SYSMGR_RSRCS"

  INT 60 ---- - HP 95LX System Manager - INITIALIZE HELP SYSTEM

  INT 60 ---- - HP 95LX System Manager - DISPLAY HELP

  INT 60 ---- - HP 95LX System Manager - "M_HELP_KEY"

  INT 60 ---- - HP 95LX System Manager - "M_HELP_TERM"

  INT 60 ---- - HP 95LX System Manager - "M_ColInit"

  INT 60 ---- - HP 95LX System Manager - "M_ColCpStr"

  INT 60 ---- - HP 95LX System Manager - "M_ColLicsStr"

  INT 60 ---- - HP 95LX System Manager - "M_ColLicsChar"

  INT 60 ---- - HP 95LX System Manager - "M_ColToLower"

  INT 60 ---- - HP 95LX System Manager - "M_ColCpSearch"

  INT 60 ---- - HP 95LX System Manager - "M_ColToUpper"

  INT 60 ---- - HP 95LX System Manager - "GrDispInit"

  INT 60 ---- - HP 95LX System Manager - "GrDispClear"

  INT 60 ---- - HP 95LX System Manager - "GrDispDot"

  INT 60 ---- - HP 95LX System Manager - "GrDispDraw"

  INT 60 ---- - HP 95LX System Manager - "GrDispFill"

  INT 60 ---- - HP 95LX System Manager - "GrDispRead"

  INT 60 ---- - HP 95LX System Manager - "GrDispString"

  INT 60 ---- - HP 95LX System Manager - "GrDispPan"

  INT 60 ---- - HP 95LX System Manager - "GrDispZoom"

  INT 60 ---- - HP 95LX System Manager - "GrDispSave"

  INT 60 ---- - HP 95LX System Manager - "GrDispRestore"

  INT 60 ---- - HP 95LX System Manager - "GrDispCorner"

  INT 60 ---- - HP 95LX System Manager - "CP_TO_LICS"

  INT 60 00-- - SYS_PROF.EXE - PROFILER STATUS

  INT 60 00-- - MDEBUG - GET STATUS

  INT 60 0000 - RIFS - CLIENT - INSTALLATION CHECK

  INT 60 0001 - RIFS - CLIENT - UNINSTALL

  INT 60 0002 - RIFS - CLIENT - REMAP DRIVE

  INT 60 0003 - RIFS - CLIENT - UNMAP DRIVE

  INT 60 0004 - RIFS - CLIENT - UNMAP ALL DRIVES

  INT 60 0005 - RIFS - CLIENT - GET TRANSLATION TABLE

  INT 60 0006 - RIFS - CLIENT - GET STATISTICS TABLE

  INT 60 0007 - RIFS - CLIENT - GET PORT TRANSLATION TABLE

  INT 60 0008 - RIFS - SERVER - INSTALLATION CHECK

  INT 60 0009 - RIFS - SERVER - UNINSTALL

  INT 60 000A - RIFS - SERVER - GET STATISTICS TABLE

  INT 60 000B - RIFS - SERVER - RESET

  INT 60 01-- - MDEBUG - GET ADDRESS OF THE HELP REGISTERS

  INT 60 01-- - SYS_PROF.EXE - TURN PROFILING OFF

  INT 60 01FF - FTP Packet Driver - BASIC FUNC - GET DRIVER INFO

  INT 60 02-- - MDEBUG - SET STATUS

  INT 60 02-- - FTP Packet Driver - BASIC FUNC - ACCESS TYPE

  INT 60 02-- - SYS_PROF.EXE - TURN PROFILING ON

  INT 60 03-- - MDEBUG - POP UP

  INT 60 03-- - FTP Packet Driver - BASIC FUNC - RELEASE TYPE

  INT 60 03-- - SYS_PROF.EXE - GET ADDRESS OF PROFILING TABLE

  INT 60 04-- - FTP Packet Driver - BASIC FUNC - SEND PACKET

  INT 60 04-- - MDEBUG - POP UP

  INT 60 04-- - SYS_PROF.EXE - CLEAR PROFILING TABLE

  INT 60 05-- - FTP Packet Driver - BASIC FUNC - TERMINATE DRIVER FOR HANDLE

  INT 60 05-- - MDEBUG - GET AND SET MDEBUG FLAGS

  INT 60 06-- - FTP Packet Driver - BASIC FUNC - GET ADDRESS

  INT 60 06-- - MDEBUG - GET PASSWORD STATUS

  INT 60 07-- - FTP Packet Driver - BASIC FUNC - RESET INTERFACE

  INT 60 07-- - MDEBUG v1.70+ - GET ACTIVE PART OF MDEBUG

  INT 60 08-- - MDEBUG - UNUSED

  INT 60 0A-- - FTP Packet Driver 1.09+ - HIGH-PERF FUNC - GET PARAMETERS

  INT 60 0B-- - FTP Packet Driver 1.09 - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET

  INT 60 0C-- - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - ASYNCHRONOUS SEND PACKET

  INT 60 0C-- - Banyan VINES, 3com - GET STATION ADDRESS

  INT 60 0D-- - FTP Packet Driver 1.10+ - HIGH-PERF FUNC - DROP PACKET FROM QUEUE

  INT 60 11-- - 3com, 10NET, Banyan VINES - LOCK AND WAIT

  INT 60 12-- - 3com, 10NET, Banyan VINES - LOCK

  INT 60 13-- - 3com, 10NET, Banyan VINES - UNLOCK

  INT 60 14-- - FTP Packet Driver - EXTENDED FUNC - SET RECEIVE MODE

  INT 60 15-- - FTP Packet Driver - EXTENDED FUNC - GET RECEIVE MODE

  INT 60 16-- - FTP Packet Driver - EXTENDED FUNC - SET MULTICAST LIST

  INT 60 17-- - FTP Packet Driver - EXTENDED FUNC - GET MULTICAST LIST

  INT 60 18-- - FTP Packet Driver - EXTENDED FUNC - GET STATISTICS

  INT 60 19-- - FTP Packet Driver - EXTENDED FUNC - SET NETWORK ADDRESS

  INT 60 1A-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - SEND RAW BYTES

  INT 60 1B-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - FLUSH RAW BYTES RECEIVED

  INT 60 1C-- - FTP Packet Driver v1.10+ - EXTENDED FUNC - FETCH RAW BYTES RECEIVED

  INT 60 AD-- - AccessDOS - API

  INT 60 E9-- - FTP Packet Driver - Crynwr Software - AUTOSELECT TRANSCEIVER

INT 61 - reserved for user interrupt; multiple purposes

  INT 61 ---- - reserved for user interrupt

  INT 61 ---- - Atari Portfolio - EXTENDED BIOS

  INT 61 ---- - TI Professional PC - FACTORY ROM DATA AREA POINTER (NOT A VECTOR!)

  INT 61 ---- - HP 95LX System Manager - LOAD DS

  INT 61 ---- - JPI TopSPEED Modula-2 v1 - PROCEDURE EXIT TRAP

  INT 61 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

  INT 61 ---- - Sangoma CCIP (CCPOP 3270 resident module) INTERFACE

  INT 61 ---- - VIRUS - "SEMTEX"/"Screen Trasher" - INT 21h SUBSTITUTE

  INT 61 ---- - PC-Magazin - PAGE, SWAPx

  INT 61 ---- - TCPOpen kernel - API

  INT 61 ---- - XFS v1.76 - XFSKRNL.EXE - API

  INT 61 ---- - FTP Software PC/TCP - TCP/IP TSR System Call interface

  INT 61 00-- - PC/TCP kernel v2.05+ - GET DEBUG INFORMATION

  INT 61 00-- - Banyan VINES - CALL A SERVICE

  INT 61 0000 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ZOOM DISPLAY

  INT 61 0001 - Banyan VINES - INTERNAL VINES SOCKET API (NEAR DATA)

  INT 61 0001 - Banyan VINES - "Sosock" - OPEN COMMUNICATIONS SOCKET

  INT 61 0001 - Banyan VINES - "Sosend" - INITIATE OUTPUT EVENT

  INT 61 0001 - Banyan VINES - "Sorec" - RECEIVE INPUT EVENT NOTIFICATION

  INT 61 0001 - Banyan VINES - "Soclose" - CLOSE A SOCKET

  INT 61 0001 - Banyan VINES - "Sowait" - WAIT FOR ASYNCHRONOUS EVENT COMPLETION

  INT 61 0001 - Banyan VINES - "Sosession" - REGISTER APPLICATION WITH COMM SERVICE

  INT 61 0001 - Banyan VINES - "Soint" - SET USER COMPLETION FUNCTION

  INT 61 0001 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - CENTER ZOOM WINDOW

  INT 61 0002 - Banyan VINES - 3270 INTERFACE

  INT 61 0002 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - END ZOOM

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INIT USER BUFFER PTR INFO

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SEND TO HOST

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - "CONTROL MONITOR"

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - "FLOW CONTROL DATA"

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - END ACTIVE SESSION

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SESSION PARAMETER

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET SESSION PARAMETER

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET TAB SETTINGS

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET TAB SETTINGS

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - REFRESH EMULATION SCREEN

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SUSPEND SESSION TEMPORARILY

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - RESUME SUSPENDED SESSION

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - SET SCROLL LOCK CHECKING

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - EXIT EMULATION

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON CHAR FROM HOST

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START A SESSION

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP PRINTING

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET FILE TRANSFER PARAMETERS

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - GET CONNECTION INFORMATION

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - START/STOP TRACING TRAFFIC

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - INTERRUPT ON HOST MESSAGE

  INT 61 0003 - Banyan VINES - ASYNC TERMINAL EMULATION - RESET ERROR

  INT 61 0003 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - REPORT ZOOM FACTOR

  INT 61 0004 - Banyan VINES - FILE SERVICE CONTROL

  INT 61 0004 - Banyan VINES - SET DRIVE CONNECTION

  INT 61 0004 - Banyan VINES - GET DRIVE CONNECTION

  INT 61 0004 - Banyan VINES - GET NETWORK DRIVE MAP

  INT 61 0004 - Banyan VINES - SET USER NAME

  INT 61 0004 - Banyan VINES - GET USER NAME

  INT 61 0004 - Banyan VINES - TEST DRIVE CONNECTION

  INT 61 0004 - Banyan VINES - GET CONNECTION DATA STRUCTURES

  INT 61 0004 - Banyan VINES - GET SERVER SERIAL NUMBER

  INT 61 0004 - Banyan VINES - SET ??? PARAMETER

  INT 61 0004 - Banyan VINES - GET ??? DRIVE PARAMETER

  INT 61 0004 - Banyan VINES - LOGOUT FROM VINES

  INT 61 0004 - Banyan VINES - GET ACCESS RIGHTS LIST (ARL)

  INT 61 0004 - Banyan VINES - SET ACCESS RIGHTS LIST (ARL)

  INT 61 0004 - Banyan VINES - FILE SERVICE CONTROL - ???

  INT 61 0004 - Banyan VINES - GET VALUE OF GLOBAL VARIABLE

  INT 61 0004 - Banyan VINES - SET VALUE OF GLOBAL VARIABLE

  INT 61 0004 - Banyan VINES - GET NUMBER OF OPEN FILES ON REMOTE DRIVE

  INT 61 0004 - Banyan VINES - SET UNIDENTIFIED INTERNAL FLAG

  INT 61 0004 - Banyan VINES - UNIDENTIFIED DRIVE SPECIFIC FUNCTION

  INT 61 0004 - Banyan VINES - UNIDENTIFIED FUNCTION

  INT 61 0004 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - ENTER SPECIFY MODE

  INT 61 0005 - Banyan VINES - PRINT SERVICE CONTROL

  INT 61 0005 - OPTIMA 1024 VGA-Sync - QUERY ZOOM WINDOW

  INT 61 0006 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM WINDOW

  INT 61 0006 - Banyan VINES - GET ADDRESS OF GLOBAL VARIABLE

  INT 61 0007 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - QUERY APPLICATION KEY

  INT 61 0007 - Banyan VINES - RECONNECT TO STREETTALK

  INT 61 0007 - Banyan VINES - GET MM PORT FOR A SERVICE

  INT 61 0007 - Banyan VINES - GET PORTS FOR A SERVICE

  INT 61 0007 - Banyan VINES - FIND A SERVICE

  INT 61 0007 - Banyan VINES - SET PORTS FOR A SERVICE

  INT 61 0007 - Banyan VINES - GET USER NAME

  INT 61 0007 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING

  INT 61 0007 - Banyan VINES - VERIFY EXISTENCE OF NAME AND RETURN CANONICAL FORM

  INT 61 0007 - Banyan VINES - ENUMERATE StreetTalk NAMES

  INT 61 0007 - Banyan VINES - TRANSLATE ERROR INTO ASCII STRING (SELECTED PORT)

  INT 61 0007 - Banyan VINES - internal, OS/2 only - GET MANY PORTS FOR SERVICE

  INT 61 0008 - OPTIMA 1024 VGA-Sync,ET-3000 chipset - SET ZOOM OFFSET

  INT 61 0008 - Banyan VINES - TALKPORT SERVICE - GET HANDLER ADDRESS

  INT 61 0008 - Banyan VINES - TALKPORT SERVICE - SET HANDLER ADDRESS

  INT 61 0008 - Banyan VINES - TALKPORT SERVICE - POST MESSAGE ON LOCAL DISPLAY

  INT 61 0008 - Banyan VINES - TALKPORT SERVICE - INTERCEPT VINES 25th-LINE MESSAGES

  INT 61 0009 - Banyan VINES - NETBIOS CLIENT SERVICE

  INT 61 000A - Banyan VINES - SECONDARY 3270 INTERFACE

  INT 61 000B - Banyan VINES - SEMAPHORE SERVICE

  INT 61 000C - Banyan VINES - 3270 KEYBOARD HANDLER

  INT 61 000D - Banyan VINES - T3270 SERVICE FUNCTION

  INT 61 000E - Banyan VINES - ENHANCED 3270 SERVICE

  INT 61 000F - Banyan VINES - VINES SOCKET API (FAR DATA)

  INT 61 000F - Banyan VINES - OPEN SOCKET

  INT 61 000F - Banyan VINES - SEND MESSAGE ON A SOCKET

  INT 61 000F - Banyan VINES - CLOSE SOCKET

  INT 61 000F - Banyan VINES - GET PROCESS HANDLE

  INT 61 0010 - Banyan VINES - INTERFACE TO NBNS

  INT 61 01-- - Banyan VINES - CHECK SERVICE

  INT 61 01-- - PC/TCP kernel v2.1+ - "net_config" - CONFIGURE RUNNING KERNEL

  INT 61 02-- - Banyan VINES - GET REVISION NUMBER

  INT 61 02-- - PC/TCP kernel v2.1+ - "get_kernel_info" - GET MISCELLAN LOCAL INFO

  INT 61 03-- - Banyan VINES - INSTALL SERVICE HANDLER

  INT 61 04-- - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE

  INT 61 05-- - PC/TCP kernel v2.05+ - "get_addr" - GET INTERNET ADDRESS OF NET DESCR

  INT 61 05-- - Banyan VINES - READ PCCONFIG BYTES

  INT 61 06-- - PC/TCP kernel v2.05 - "net_info" - GET INTERFACE STATISTICS

  INT 61 06-- - Banyan VINES - GET PCCONFIG BASE ADDRESS

  INT 61 07-- - PC/TCP kernel v2.05+ - "net_globalize" - MAKE NET DESCRIPTOR GLOBAL

  INT 61 07-- - Banyan VINES - GET VINES REVISION NUMBER (LONG)

  INT 61 08-- - PC/TCP kernel v2.05+ - "net_release" - CLOSE A NETWORK DESCRIPTOR

  INT 61 08-- - Banyan VINES - CHECK VINES REVISION NUMBER IN RANGE (LONG)

  INT 61 09-- - PC/TCP kernel v2.05+ - "net_releaseall" - CLOSE ALL NON-GLOBAL DESCRS

  INT 61 09-- - Banyan VINES - GET VALUE OF AN OS/2 BACKEND VARIABLE

  INT 61 0A-- - PC/TCP kernel v2.05 - "net_send" - ???

  INT 61 0A-- - Banyan VINES - SET VALUE OF AN OS/2 BACKEND VARIABLE

  INT 61 0B-- - PC/TCP kernel v2.05 - "net_sendto" - ???

  INT 61 0B-- - Banyan VINES - SET PCCONFIG IN BACKEND

  INT 61 0C-- - PC/TCP kernel v2.05+ - "net_stat" - GET CONNECTION STATISTICS

  INT 61 0D-- - PC/TCP kernel v2.05+ - "is_netnd" - CHECK IF NETWORK DESCRIPTOR VALID

  INT 61 0E-- - PC/TCP kernel v2.05+ - "net_select" - DETECT READINESS OF NETWORK

  INT 61 0F-- - PC/TCP kernel v2.05+ - "get_netversion" - GET SOFTWARE VERSION

  INT 61 10-- - PC/TCP kernel v2.05+ - "net_shutdown" - UNINSTALL

  INT 61 11-- - PC/TCP kernel v2.05+ - "disable_async" - DISABLE ASYNCHRONOUS HANDLERS

  INT 61 12-- - PC/TCP kernel v2.05+ - "enable_async" - ENABLE ASYNCHRONOUS HANDLERS

  INT 61 13-- - PC/TCP kernel v2.05 - "net_connect" - OPEN A NETWORK CONNECTION

  INT 61 14-- - PC/TCP kernel v2.05 - "net_recv" - NO LONGER SUPPORTED

  INT 61 15-- - PC/TCP kernel v2.05 - "net_recvfrom" - ???

  INT 61 16-- - PC/TCP kernel v2.05+ - "net_peer" - GET DATA ON REMOTE PEER

  INT 61 17-- - PC/TCP kernel v2.05+ - "net_reconfig" - RE-READ KERNEL CONFIGURATION

  INT 61 18-- - PC/TCP kernel v2.05+ - "net_eof" - CLOSE TRANSMIT SIDE OF CONNECTION

  INT 61 19-- - PC/TCP kernel v2.05+ - "net_abort" - RESET A NETWORK CONNECTION

  INT 61 1A-- - PC/TCP kernel v2.05+ - "net_write" - WRITE TO THE NETWORK

  INT 61 1B-- - PC/TCP kernel v2.05+ - "net_read" - READ FROM THE NETWORK

  INT 61 1C-- - PC/TCP kernel v2.05+ - "net_writeto" - WRITE A DATAGRAM

  INT 61 1D-- - PC/TCP kernel v2.05+ - "net_readfrom" - READ A DATAGRAM

  INT 61 1E-- - PC/TCP kernel v2.05+ - "net_flush" - FLUSH PENDING DATA

  INT 61 1F-- - PC/TCP kernel v2.05+ - "net_asynch" - SET UP ASYNCHRONOUS CALL-BACK

  INT 61 20-- - PC/TCP kernel v2.05+ - "set_option" - SET AN OPTION ON A DESCRIPTOR

  INT 61 21-- - PC/TCP kernel v2.05+ - "get_option" - GET OPTIONS APPLIED TO NET DESCR

  INT 61 22-- - PC/TCP kernel v2.05+ - "net_getdesc" - ALLOCATE NETWORK DESCRIPTOR

  INT 61 23-- - PC/TCP kernel v2.05+ - "net_listen" - LISTEN FOR INCOMING CONNECTIONS

  INT 61 24-- - PC/TCP kernel v2.05+ - "net_abortall" - RESET ALL NETWORK CONNECTIONS

  INT 61 25-- - PC/TCP kernel v2.05+ - "ad_res_name" - GET HOST NAME GIVEN ADDRESS

  INT 61 26-- - PC/TCP kernel v2.05+ - "ad_htable" - GET HOST NAME FROM LOCAL TABLE

  INT 61 27-- - PC/TCP kernel v2.05+ - "ad_domain" - GET HOST NAME FROM DNS

  INT 61 28-- - PC/TCP kernel v2.05+ - "net_swap" - EXCHANGE TWO NETWORK DESCRIPTORS

  INT 61 29-- - PC/TCP kernel v2.05+ - "net_getglobdesc" - ALLOCATE GLOBAL DESCRIPTOR

  INT 61 2A-- - PC/TCP kernel v2.05+ - GET CONFIGURATION INFORMATION

  INT 61 2B-- - PC/TCP kernel v2.02+ - "net_alarm" - SET TIMED ASYNCHRONOUS EVENT

  INT 61 30-- - PC/TCP kernel v2.05+ - "icmp_ping" - SEND ICMP ECHO REQUEST (PING)

  INT 61 ---- - PC/TCP kernel v2.05 - NOP for SLIP kernel

  INT 61 32-- - PC/TCP kernel v2.3 - GET ???

  INT 61 34-- - PC/TCP kernel v2.1+ - "icmp_destun" - ???

  INT 61 50-- - PC/TCP kernel v2.05+ - "nm_prs_addr" - TRANSLATE NUMERICAL IP ADDRESS

  INT 61 51-- - PC/TCP kernel v2.05+ - "nm_htable" - RESOLVE NAME USING HOST TABLE

  INT 61 52-- - PC/TCP kernel v2.05+ - "nm_domain" - RESOLVE NAME USING DNS

  INT 61 53-- - PC/TCP kernel v2.05- - "nm_ien116" - RESOLVE HOST NAME USING IEN116

  INT 61 54-- - PC/TCP kernel v2.05+ - "nm_res_name" - RESOLVE HOST NAME

  INT 61 55-- - PC/TCP kernel v2.3 - ???

  INT 61 56-- - PC/TCP kernel v2.3 - ???

  INT 61 57-- - PC/TCP kernel v2.3 - ???

  INT 61 58-- - PC/TCP kernel v2.3 - ???

  INT 61 59-- - PC/TCP kernel v2.3 - ???

  INT 61 5A-- - PC/TCP kernel v2.3 - ???

  INT 61 5B-- - PC/TCP kernel v2.3 - ???

  INT 61 5C-- - PC/TCP kernel v2.3 - ???

  INT 61 5D-- - PC/TCP kernel v2.3 - ???

  INT 61 5E-- - PC/TCP kernel v2.3 - ???

  INT 61 5F-- - PC/TCP kernel v2.3 - ???

INT 62 - reserved for user interrupt; multiple purposes

  INT 62 ---- - reserved for user interrupt

  INT 62 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

  INT 62 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

  INT 62 ---- - HP 95LX - USED BY CALCULATOR

  INT 62 ---- - MS SQL Server/Sybase DBLIBRARY interface - ???

  INT 62 ---- - MPAUSE - ???

  INT 62 ---- - XFS v1.76 - FILTERED PACKET DRIVER API

  INT 62 00-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET PHYSICAL HARDWARE ADDRESS

  INT 62 0000 - FGDRIVER v3.03+ - "FG_ALLOCATE" - CREATE VIRTUAL VIDEO PAGE

  INT 62 0001 - FGDRIVER v3.03+ - "FG_ALLOCCMS" - CREATE LOGICAL VIDEO PAGE (CONV)

  INT 62 0002 - FGDRIVER v3.03+ - "FG_ALLOCEMS" - CREATE LOGICAL VIDEO PAGE (EMS)

  INT 62 0003 - FGDRIVER v3.03+ - "FG_ALLOCXMS" - CREATE LOGICAL VIDEO PAGE (XMS)

  INT 62 0004 - FGDRIVER 1.10,3.03+ - "FG_AUTOMODE" - GET VIDEO MODE W/MOST FEATURES

  INT 62 0005 - FGDRIVER v3.03+ - "FG_BESTMODE" - GET BEST VIDEO MODE GIVEN RESOLUTN

  INT 62 0006 - FGDRIVER v3.03+ - "FG_BOX" - DRAW UNFILLED RECTANGLE

  INT 62 0007 - FGDRIVER v3.03+ - "FG_BOXDEPTH" - SET RECTANGLE BORDER WIDTH

  INT 62 0008 - FGDRIVER v3.03+ - "FG_BOXX" - XOR HOLLOW RECTANGLE

  INT 62 0009 - FGDRIVER v3.03+ - "FG_BUTTON" - GET JOYSTICK BUTTON STATE

  INT 62 000A - FGDRIVER v3.03+ - "FG_CAPSLOCK" - GET STATE OF CAPSLOCK KEY

  INT 62 000B - FGDRIVER v3.03+ - "FG_CHGATTR" - APPLY CURRENT TEXT ATTRIB TO CHARS

  INT 62 000C - FGDRIVER v3.03+ - "FG_CHGTEXT" - DISPLAY STRING AT CURSOR POSITION

  INT 62 000D - FGDRIVER v3.03+ - "FG_CIRCLE" - DRAW UNFILLED CIRCLE

  INT 62 000E - FGDRIVER v3.03+ - "FG_CIRCLEF" - DRAW FILLED CIRCLE

  INT 62 000F - FGDRIVER v4.02 - "FG_CLIPMAP" - DISPLAY CLIPPED IMAGE (MODE-INDEP)

  INT 62 0010 - FGDRIVER v4.02 - "FG_CLIPMASK" - DISPLAY CLIPPED IMAGE (MASKING MAP)

  INT 62 0011 - FGDRIVER v4.02 - "FG_CLPIMAGE" - DISPLAY CLIPPED IMAGE (BITMAP)

  INT 62 0012 - FGDRIVER v4.02 - "FG_CLPRECT" - DRAW FILLED RECTANGLE IN SCREEN SPCE

  INT 62 0013 - FGDRIVER v4.02 - "FG_COLORS" - GET SIMULTANEOUSLY-AVAILABLE COLORS

  INT 62 0014 - FGDRIVER v4.02 - "FG_COPYPAGE" - TRANSFER VIDEO PAGE CONTENTS

  INT 62 0015 - FGDRIVER v4.02 - "FG_CURSOR" - SPECIFY WHETHER TEXT CURSR IS VISIBLE

  INT 62 0016 - FGDRIVER v4.02 - "FG_DASH" - DRAW DASHED LINE TO ABSOLUTE POSITION

  INT 62 0017 - FGDRIVER v4.02 - "FG_DASHREL" - DRAW DASHED LINE TO RELATVE POSITION

  INT 62 0018 - FGDRIVER v4.02 - "FG_DEFCOLOR" - ASSIGN COLOR VALUE TO COLOR INDEX

  INT 62 0019 - FGDRIVER v4.02 - "FG_DEFPAGES" - DEF SRC/DEST PAGES FOR BLOCK XFERS

  INT 62 001A - FGDRIVER v4.02 - "FG_DISPFILE" - DISPLAY STORED IMAGE

  INT 62 001B - FGDRIVER v4.02 - "FG_DISPLAY" - DISPLAY IMAGE (STD PIXEL RUN FORMAT)

  INT 62 001C - FGDRIVER v4.02 - "FG_DISPLAYP" - DISPLAY IMAGE (PACKED PIXEL RUNS)

  INT 62 001D - FGDRIVER v4.02 - "FG_DRAW" - DRAW SOLID LINE TO ABSOLUTE POSITION

  INT 62 001E - FGDRIVER v4.02 - "FG_DRAWMAP" - DISPLAY MODE-INDEPENDENT BIT MAP

  INT 62 001F - FGDRIVER v4.02 - "FG_DRAWMASK" - DISPLAY IMAGE (MASKING MAP)

  INT 62 0020 - FGDRIVER v4.02 - "FG_DRAWREL" - DRAW SOLID LINE TO RELATIVE POSITION

  INT 62 0021 - FGDRIVER v4.02 - "FG_DRAWRELX" - XOR SOLID LINE TO RELATIVE POSITION

  INT 62 0022 - FGDRIVER v4.02 - "FG_DRAWX" - XOR SOLID LINE TO ABSOLUTE POSITION

  INT 62 0023 - FGDRIVER v4.02 - "FG_DRECT" - DRAW DITHERED RECTANGLE IN SCRN SPACE

  INT 62 0024 - FGDRIVER v4.02 - "FG_DRWIMAGE" - DISPLAY BITMAPPED IMAGE

  INT 62 0025 - FGDRIVER v4.02 - "FG_EGACHECK" - GET INFO ABOUT ACTIVE EGA DISPLAY

  INT 62 0026 - FGDRIVER v4.02 - "FG_ELLIPSE" - DRAW UNFILLED ELLIPSE IN SCRN SPACE

  INT 62 0027 - FGDRIVER v4.02 - "FG_ELLIPSEF" - DRAW FILLED ELLIPSE IN SCREEN SPACE

  INT 62 0028 - FGDRIVER v4.02 - "FG_ERASE" - CLEAR THE ACTIVE VIDEO PAGE

  INT 62 0029 - FGDRIVER v4.02 - "FG_FADEIN" - FADE IN HIDDEN PAGE

  INT 62 002A - FGDRIVER v4.02 - "FG_FADEOUT" - FADE OUT TO CURRENT COLOR

  INT 62 002B - FGDRIVER v4.02 - "FG_FILLPAGE" - FILL THE ACTIVE VIDEO PAGE

  INT 62 002C - FGDRIVER v4.02 - "FG_FINDPAGE" - FIND AVAILABLE VIRTUAL/LOGICAL PAGE

  INT 62 002D - FGDRIVER v4.02 - "FG_FLICDONE" - CLOSE FLIC FILE

  INT 62 002E - FGDRIVER v4.02 - "FG_FLICHEAD" - READ FLI/FLC FILE HEADER

  INT 62 002F - FGDRIVER v4.02 - "FG_FLICMODE" - GET OPTIMAL VIDEO MODE FOR FLI/FLC

  INT 62 0030 - FGDRIVER v4.02 - "FG_FLICOPEN" - OPEN FLI/FLC FILE

  INT 62 0031 - FGDRIVER v4.02 - "FG_FLICPLAY" - DISPLAY NEXT FRAME(S) IN FLI/FLC

  INT 62 0032 - FGDRIVER v4.02 - "FG_FLICSIZE" - GET IMAGE SIZE

  INT 62 0033 - FGDRIVER v4.02 - "FG_FLICSKIP" - SKIP FRAME(S) IN FLI/FLC FILE

  INT 62 0034 - FGDRIVER v4.02 - "FG_FLIPMASK" - DISPLAY INV CLIPPED IMAGE (MASKMAP)

  INT 62 0035 - FGDRIVER v4.02 - "FG_FLOOD" - FLOOD FILL ARBITRARY CLOSED REGION

  INT 62 0036 - FGDRIVER v4.02 - "FG_FLPIMAGE" - DISPLAY INV CLIPPED IMAGE (BITMAP)

  INT 62 0037 - FGDRIVER v4.02 - "FG_FONTSIZE" - SPECIFY FONT SIZE FOR TEXT OUTPUT

  INT 62 0038 - FGDRIVER v4.02 - "FG_FREEPAGE" - FREE VIRTUAL OR LOGICAL VIDEO PAGE

  INT 62 0039 - FGDRIVER v4.02 - "FG_GETADDR" - GET SEGMENT OF ACTIVE VIDEO PAGE

  INT 62 003A - FGDRIVER v4.02 - "FG_GETATTR" - GET CHARACTER ATTRIB FOR POSITION

  INT 62 003B - FGDRIVER v4.02 - "FG_GETBANKS" - GET SVGA READ AND WRITE BANKS

  INT 62 003C - FGDRIVER v4.02 - "FG_GETBLOCK" - GRAB RECTANGLE OF DISPLAY

  INT 62 003D - FGDRIVER v4.02 - "FG_GETCHAR" - GET CHARACTER FOR SCREEN POSITION

  INT 62 003E - FGDRIVER v4.02 - "FG_GETCLIP" - GET CLIPPING REGION IN SCREEN SPACE

  INT 62 003F - FGDRIVER v4.02 - "FG_GETCLOCK" - GET CLOCK TICKS SINCE MIDNIGHT

  INT 62 0040 - FGDRIVER v4.02 - "FG_GETCOLOR" - GET CURRENT TEXT ATTRIBUTE

  INT 62 0041 - FGDRIVER v4.02 - "FG_GETDACS" - GET VIDEO DAC CONTENTS

  INT 62 0042 - FGDRIVER v4.02 - "FG_GETENTRY" - GET PAGE TYPE AND ADDRESS

  INT 62 0043 - FGDRIVER v4.02 - "FG_GETHPAGE" - GET CURRENT HIDDEN VIDEO PAGE NUM

  INT 62 0044 - FGDRIVER v4.02 - "FG_GETIMAGE" - STORE IMAGE AS BITMAP

  INT 62 0045 - FGDRIVER v4.02 - "FG_GETINDEX" - GET COLOR VALUE FOR COLOR INDEX

  INT 62 0046 - FGDRIVER v4.02 - "FG_GETKEY" - GET NEXT KEYSTROKE

  INT 62 0047 - FGDRIVER v4.02 - "FG_GETLINES" - GET TEXT ROWS FOR CURR VIDEO MODE

  INT 62 0048 - FGDRIVER v4.02 - "FG_GETMAP" - STORE IMAGE AS MODE-INDEPENDNT BITMAP

  INT 62 0049 - FGDRIVER v4.02 - "FG_GETMAXX" - GET MAXIMUM COLUMN IN SCREEN SPACE

  INT 62 004A - FGDRIVER v4.02 - "FG_GETMAXY" - GET MAXIMUM ROW IN SCREEN SPACE

  INT 62 004B - FGDRIVER v4.02 - "FG_GETMODE" - GET CURRENT VIDEO MODE NUMBER

  INT 62 004C - FGDRIVER v4.02 - "FG_GETPAGE" - GET ACTIVE VIDEO PAGE NUMBER

  INT 62 004D - FGDRIVER v4.02 - "FG_GETPIXEL" - GET COLOR OF SPECIFIED PIXEL

  INT 62 004E - FGDRIVER v4.02 - "FG_GETRGB" - GET VIDEO DAC REGISTER CONTENTS

  INT 62 004F - FGDRIVER v4.02 - "FG_GETVIEW" - GET VIEWPORT EXTREME LIMITS

  INT 62 0050 - FGDRIVER v4.02 - "FG_GETVPAGE" - GET VISIBLE VIDEO PAGE NUMBER

  INT 62 0051 - FGDRIVER v4.02 - "FG_GETXBOX" - GET WIDTH OF VERTICAL BOX LINES

  INT 62 0052 - FGDRIVER v4.02 - "FG_GETXJOY" - GET HORIZONTAL POSITION OF JOYSTICK

  INT 62 0053 - FGDRIVER v4.02 - "FG_GETXJUST" - GET HORIZONTAL JUSTIFICATION

  INT 62 0054 - FGDRIVER v4.02 - "FG_GETXPOS" - GET GRAPHICS CURSOR COLUMN

  INT 62 0055 - FGDRIVER v4.02 - "FG_GETYBOX" - GET WIDTH OF HORIZONTAL BOX LINES

  INT 62 0056 - FGDRIVER v4.02 - "FG_GETYJOY" - GET VERTICAL POSITION OF JOYSTICK

  INT 62 0057 - FGDRIVER v4.02 - "FG_GETYJUST" - GET VERTICAL JUSTIFICATION

  INT 62 0058 - FGDRIVER v4.02 - "FG_GETYPOS" - GET GRAPHICS CURSOR ROW

  INT 62 0059 - FGDRIVER v4.02 - "FG_HUSH" - STOP ASYNCHRONOUS SOUND IMMEDIATELY

  INT 62 005A - FGDRIVER v4.02 - "FG_HUSHNEXT" - STOP ASYNCHRONOUS SOUND

  INT 62 005B - FGDRIVER v4.02 - "FG_IMAGEBUF" - SPECIFY TEMPORARY IMAGE BUFFER

  INT 62 005C - FGDRIVER v4.02 - "FG_IMAGESIZ" - DETERMINE IMAGE STORAGE REQUIREMENT

  INT 62 005D - FGDRIVER v4.02 - "FG_INITEMS" - INITIALIZE EXPANDED MEMORY USE

  INT 62 005E - FGDRIVER v4.02 - "FG_INITJOY" - INITIALIZE JOYSTICK USE

  INT 62 005F - FGDRIVER v4.02 - "FG_INITPM"??? - (NOT IMPLEMENTED)

  INT 62 0060 - FGDRIVER v1.10 only - "FG_DISPPCX" - DISPLAY PCX FILE

  INT 62 0060 - FGDRIVER v4.02 - "FG_INITXMS" - INITIALIZE EXTENDED MEMORY USE

  INT 62 0061 - FDGRIVER v4.02 - "FG_INSIDE" - CHECK IF POINT INSIDE CONVEX POLYGON

  INT 62 0062 - FGDRIVER v4.02 - "FG_INTJOY" - GET KEYCODES CORRESP TO JOYSTICK POS

  INT 62 0063 - FGDRIVER v4.02 - "FG_INTKEY" - GET KEYSTROKE, NO WAIT

  INT 62 0064 - FGDRIVER v4.02 - "FG_INVERT" - INVERT ORIENTATION OF BITMAP

  INT 62 0065 - FGDRIVER v4.02 - "FG_JUSTIFY" - SET TEXT OUTPUT JUSTIFICATION

  INT 62 0066 - FGDRIVER v4.02 - "FG_KBINIT" - ENABLE/DISABLE LOW-LEVEL KBD HANDLER

  INT 62 0067 - FGDRIVER v4.02 - "FG_KBLAST" - GET MOST RECENT SCANCODE PROCESSED

  INT 62 0068 - FGDRIVER v4.02 - "FG_KBRESET" - RESET LOW-LEVEL KEYBOARD HANDLER

  INT 62 0069 - FGDRIVER v4.02 - "FG_KBTEST" - CHECK WHETHER SPECIFIED KEY PRESSED

  INT 62 006A - FGDRIVER v4.02 - "FG_LOADPCX" - LOAD .PCX INTO ACTIVE VIRTUAL BUFFER

  INT 62 006B - FGDRIVER v4.02 - "FG_LOCATE" - SET TEXT-MODE CURSOR POSITION

  INT 62 006C - FGDRIVER v4.02 - "FG_MAKEPCX" - CREATE PCX FILE FROM SCREEN WINDOW

  INT 62 006D - FGDRIVER v4.02 - "FG_MAKEPPR" - CREATE PACKED PIXEL RUN FILE

  INT 62 006E - FGDRIVER v4.02 - "FG_MAKESPR" - CREATE STANDARD PIXEL RUN FILE

  INT 62 006F - FGDRIVER v4.02 - "FG_MAPRGB" - MAP COLOR COMPONENTS INTO PALETTE VAL

  INT 62 0070 - FGDRIVER v4.02 - "FG_MEASURE" - GET DELAY UNITS PER CLOCK TICK

  INT 62 0071 - FGDRIVER v4.02 - "FG_MEMAVAIL" - QUERY AMOUNT OF FREE MEMORY

  INT 62 0072 - FGDRIVER v4.02 - "FG_MEMORY" - GET SIZE OF VIDEO MEMORY

  INT 62 0073 - FGDRIVER v4.02 - "FG_MOUSE256" - DEFINE 256-COLOR MOUSE CURSOR

  INT 62 0074 - FGDRIVER v4.02 - "FG_MOUSEBUT" - GET MOUSE BUTTON PRESS/RELEASE CNTS

  INT 62 0075 - FGDRIVER v4.02 - "FG_MOUSECUR" - SPECIFY TEXT-MODE MOUSE CURSOR

  INT 62 0076 - FGDRIVER v4.02 - "FG_MOUSEFIN" - UNHOOK FASTGRAPH MOUSE HANDLER

  INT 62 0077 - FGDRIVER v4.02 - "FG_MOUSEINI" - INITIALIZE MOUSE SUPPORT

  INT 62 0078 - FGDRIVER v4.02 - "FG_MOUSELIM" - SPECIFY MOUSE CURSOR LIMITS

  INT 62 0079 - FGDRIVER v4.02 - "FG_MOUSEMOV" - SET MOUSE CURSOR POSITION

  INT 62 007A - FGDRIVER v4.02 - "FG_MOUSEPOS" - GET CURRENT MOUSE POSITION

  INT 62 007B - FGDRIVER v4.02 - "FG_MOUSEPTR" - SPECIFY GRAPH-MODE MOUSE CURSOR

  INT 62 007C - FGDRIVER v4.02 - "FG_MOUSESPD" - SET MOUSE CURSOR SPEED

  INT 62 007D - FGDRIVER v4.02 - "FG_MOUSEVIS" - SET MOUSE CURSOR VISIBILITY

  INT 62 007E - FGDRIVER v4.02 - "FG_MOVE" - SET GRAPHICS CURSOR POSITION

  INT 62 007F - FGDRIVER v4.02 - "FG_MOVEREL" - ADJUST GRAPHICS CURSOR POSITION

  INT 62 0080 - FGDRIVER v4.02 - "FG_MUSIC" - PLAY SERIES OF NOTES

  INT 62 0081 - FGDRIVER v4.02 - "FG_MUSICB" - PLAY SERIES OF NOTES IN BACKGROUND

  INT 62 0082 - FGDRIVER v4.02 - "FG_NUMLOCK" - GET STATE OF NUMLOCK KEY

  INT 62 0083 - FGDRIVER v4.02 - "FG_PACK" - CONVERT PIXEL-PER-BYTE TO PACKED BITMAP

  INT 62 0084 - FGDRIVER v4.02 - "FG_PAGESIZE" - GET VIDEO PAGE SIZE FOR CURR MODE

  INT 62 0085 - FGDRIVER v4.02 - "FG_PAINT" - FLOOD CLOSED REGION WITH COLOR

  INT 62 0086 - FGDRIVER v4.02 - "FG_PALETTE" - SET PALETTE / SET VIDEO DAC REGISTER

  INT 62 0087 - FGDRIVER v4.02 - "FG_PALETTES" - SET ALL PALETTE REGISTERS

  INT 62 0088 - FGDRIVER v4.02 - "FG_PAN" - SET SCREEN ORIGIN

  INT 62 0089 - FGDRIVER v4.02 - "FG_PATTERN" - SPECIFY DISPLAY PATTERN FOR COLOR

  INT 62 008A - FGDRIVER v4.02 - "FG_PCXHEAD" - GET PCX FILE HEADER

  INT 62 008B - FGDRIVER v4.02 - "FG_PCXMODE" - GET OPTIMAL VIDEO MODE FOR DISPLAY

  INT 62 008C - FGDRIVER v4.02 - "FG_PCXPAL" - GET PALETTE STORED IN PCX FILE

  INT 62 008D - FGDRIVER v4.02 - "FG_PCXRANGE" - GET EXTENT OF PCX IMAGE

  INT 62 008E - FGDRIVER v4.02 - "FG_PLAYING" - DETERMINE WHETHER ASYNC SOUND ACTIVE

  INT 62 008F - FGDRIVER v4.02 - "FG_POINT" - DISPLAY A PIXEL

  INT 62 0090 - FGDRIVER v4.02 - "FG_POINTX" - DISPLAY A PIXEL IN XOR MODE

  INT 62 0091 - FGDRIVER v4.02 - "FG_POLYEDGE" - SPECIFY INCLUSION OF FINAL PIXELS

  INT 62 0092 - FGDRIVER v4.02 - "FG_POLYFILL" - DRAW A FILLED CONVEX POLYGON

  INT 62 0093 - FGDRIVER v4.02 - "FG_POLYGON" - DRAW AN UNFILLED POLYGON

  INT 62 0094 - FGDRIVER v4.02 - "FG_POLYLINE" - DRAW AN UNFILLED POLYGON

  INT 62 0095 - FGDRIVER v4.02 - "FG_POLYOFF" - DEFINE POLYGON DRAWING OFFSET

  INT 62 0096 - FGDRIVER v4.02 - "FG_PRINT" - DISPLAY STRING OF HARDWARE CHARACTERS

  INT 62 0097 - FGDRIVER v4.02 - "FG_PRINTC" - DISPLAY STRING OF HW CHARS (CLIPPED)

  INT 62 0098 - FGDRIVER v4.02 - "FG_PUTBLOCK" - RESTORE RECTANGLE OF DISPLAY

  INT 62 0099 - FGDRIVER v4.02 - "FG_PUTIMAGE" - DISPLAY MODE-SPECIFIC BITMAP IMAGE

  INT 62 009A - FGDRIVER v4.02 - "FG_QUIET" - STOP CONTINUOUS SYNCHRONOUS SOUND

  INT 62 009B - FGDRIVER v4.02 - "FG_RECT" - DRAW UNFILLED RECTANGLE IN SCREEN SPACE

  INT 62 009C - FGDRIVER v4.02 - "FG_RESET" - ERASE SCREEN AND RESTORE SCREEN ATTR

  INT 62 009D - FGDRIVER v4.02 - "FG_RESIZE" - SET GRAPHICS MODE VIDEO PAGE SIZE

  INT 62 009E - FGDRIVER v4.02 - "FG_RESTORE" - COPY REGION FROM HIDDEN TO VIS PAGE

  INT 62 009F - FGDRIVER v4.02 - "FG_RESUME" - RESTART ASYNCHRONOUS SOUND

  INT 62 00A0 - FGDRIVER v4.02 - "FG_REVIMAGE" - DISPLAY REVERSED IMAGE (BITMAP)

  INT 62 00A1 - FGDRIVER v4.02 - "FG_REVMASK" - DISPLAY REVERSED IMAGE (MASKING MAP)

  INT 62 00A2 - FGDRIVER v4.02 - "FG_SAVE" - COPY REGION FROM VISIBLE TO HIDDEN PAGE

  INT 62 00A3 - FGDRIVER v4.02 - "FG_SCALE" - SCALE BITMAP

  INT 62 00A4 - FGDRIVER v4.02 - "FG_SCRLOCK" - GET STATE OF SCROLL LOCK KEY

  INT 62 00A5 - FGDRIVER v4.02 - "FG_SCROLL" - VERTICALLY SCROLL SCREEN REGION

  INT 62 00A6 - FGDRIVER v4.02 - "FG_SETATTR" - SET TEXT-MODE CHARACTER ATTRIBUTE

  INT 62 00A7 - FGDRIVER v4.02 - "FG_SETBANKS" - SET SVGA READ AND WRITE BANKS

  INT 62 00A8 - FGDRIVER v4.02 - "FG_SETCAPS" - SET STATE OF CAPSLOCK KEY

  INT 62 00A9 - FGDRIVER v4.02 - "FG_SETCLIP" - SET CLIPPING REGION

  INT 62 00AA - FGDRIVER v4.02 - "FG_SETCOLOR" - SET CURRENT COLOR

  INT 62 00AB - FGDRIVER v4.02 - "FG_SETDACS" - SET VIDEO DAC CONTENTS

  INT 62 00AC - FGDRIVER v4.02 - "FG_SETENTRY" - SET TYPE AND ADDRESS OF VIDEO PAGE

  INT 62 00AD - FGDRIVER v4.02 - "FG_SETFUNC" - SET LOGICAL OPERATION FOR VIDEO OPS

  INT 62 00AE - FGDRIVER v4.02 - "FG_SETHPAGE" - SET HIDDEN VIDEO PAGE

  INT 62 00AF - FGDRIVER v4.02 - "FG_SETLINES" - SET TEXT ROWS ON SCREEN

  INT 62 00B0 - FGDRIVER v4.02 - "FG_SETMODE" - SELECT VIDEO MODE AND INITIALIZE

  INT 62 00B1 - FGDRIVER v4.02 - "FG_SETNUM" - SET STATE OF NUMLOCK KEY

  INT 62 00B2 - FGDRIVER v4.02 - "FG_SETPAGE" - SET ACTIVE VIDEO PAGE

  INT 62 00B3 - FGDRIVER v4.02 - "FG_SETRGB" - SET VIDEO DAC REGISTER CONTENTS

  INT 62 00B4 - FGDRIVER v4.02 - UNUSED

  INT 62 00B5 - FGDRIVER v4.02 - "FG_SETVIEW" - DEFINE VIEWPORT

  INT 62 00B6 - FGDRIVER v4.02 - "FG_SETVPAGE" - SET VISIBLE VIDEO PAGE

  INT 62 00B7 - FGDRIVER v4.02 - "FG_SHEAR" - SHEAR UNPACKED BITMAP

  INT 62 00B8 - FGDRIVER v4.02 - "FG_SHOWFLIC" - DISPLAY IMAGE FROM FLI/FLC FILE

  INT 62 00B9 - FGDRIVER v4.02 - "FG_SHOWPCX" - DISPLAY IMAGE FROM PCX FILE

  INT 62 00BA - FGDRIVER v4.02 - "FG_SHOWPPR" - DISPLAY IMAGE FROM PPR FILE

  INT 62 00BB - FGDRIVER v4.02 - "FG_SHOWSPR" - DISPLAY IMAGE FROM SPR FILE

  INT 62 00BC - FGDRIVER v4.02 - "FG_SOUND" - MAKE SOUND FOR SPECIFIED DURATION

  INT 62 00BD - FGDRIVER v4.02 - "FG_SOUNDS" - PLAY SOUNDS IN BACKGROUND

  INT 62 00BE - FGDRIVER v4.02 - "FG_SPLIT" - ENABLE/DISABLE SPLIT SCREEN ENVIRONMNT

  INT 62 00BF - FGDRIVER v4.02 - "FG_STALL" - PAUSE FOR SPECIFIED DURATION

  INT 62 00C0 - FGDRIVER v4.02 - "FG_SUSPEND" - TEMPORARILY STOP ASYNCHRONOUS SOUND

  INT 62 00C1 - FGDRIVER v4.02 - "FG_SVGAINIT" - INITIALIZE FASTGRAPH SVGA KERNEL

  INT 62 00C2 - FGDRIVER v4.02 - "FG_SVGASTAT" - GET SVGA CHIPSET INFORMATION

  INT 62 00C3 - FGDRIVER v4.02 - "FG_SVGAVER" - GET FASTGRAPH SVGA KERNEL VERSION

  INT 62 00C4 - FGDRIVER v4.02 - "FG_TCDEFINE" - DEFINE TRANSPARENCY OF COLOR INDEX

  INT 62 00C5 - FGDRIVER v4.02 - "FG_TCMASK" - SET TRANSPARENT COLORS

  INT 62 00C6 - FGDRIVER v4.02 - "FG_TCXFER" - COPY REGION EXCLUDING TRANSPARENT

  INT 62 00C7 - FGDRIVER v4.02 - "FG_TESTMODE" - CHECK IF VIDEO MODE AVAILABLE

  INT 62 00C8 - FGDRIVER v4.02 - "FG_TEXT" - DISPLAY STRING OF CHARACTERS

  INT 62 00C9 - FGDRIVER v4.02 - "FG_TEXTC" - DISPLAY STRING OF CHARACTERS (CLIPPED)

  INT 62 00CA - FGDRIVER v4.02 - "FG_TRANSFER" - COPY REGION

  INT 62 00CB - FGDRIVER v4.02 - "FG_UNPACK" - EXPAND MODE-SPECIFIC BITMAP

  INT 62 00CC - FGDRIVER v4.02 - "FG_VBADDR" - GET ADDRESS OF VIRTUAL BUFFER

  INT 62 00CD - FGDRIVER v4.02 - "FG_VBALLOC" - CREATE VIRTUAL BUFFER

  INT 62 00CE - FGDRIVER v4.02 - "FG_VBCLOSE" - CLOSE ACTIVE VIRTUAL BUFFER

  INT 62 00CF - FGDRIVER v4.02 - "FG_VBCOPY" - COPY RECT BETWEEN VIRTUAL BUFFERS

  INT 62 00D0 - FGDRIVER v4.02 - "FG_VBCUT" - COPY RECT FROM VIDEO TO VIRTUAL BUFFER

  INT 62 00D1 - FGDRIVER v4.02 - "FG_VBDEFINE" - CREATE VIRTUAL BUFFER

  INT 62 00D2 - FGDRIVER v4.02 - "FG_VBFREE" - RELEASE VIRTUAL BUFFER

  INT 62 00D3 - FGDRIVER v4.02 - "FG_VBHANDLE" - GET ACTIVE VIRTUAL BUFFER'S HANDLE

  INT 62 00D4 - FGDRIVER v4.02 - "FG_VBINIT" - INITIALIZE VIRTUAL BUFFER ENVIRONMENT

  INT 62 00D5 - FGDRIVER v4.02 - "FG_VBOPEN" - MAKE VIRTUAL BUFFER ACTIVE

  INT 62 00D6 - FGDRIVER v4.02 - "FG_VBPASTE" - COPY RECT FROM VIRTUAL BUF TO VIDEO

  INT 62 00D7 - FGDRIVER v4.02 - "FG_VBTCCOPY" - COPY RECTANGLE BETWEEN VIRTUAL BUFS

  INT 62 00D8 - FGDRIVER v4.02 - "FG_VBTCXFER" - COPY RECTANGLE TO ACTIVE VIDEO PAGE

  INT 62 00D9 - FGDRIVER v4.02 - "FG_VBUNDEF" - RELEASE HANDLE FOR VIRTUAL BUFFER

  INT 62 00DA - FGDRIVER v4.02 - "FG_VGASTATE" - SAVE/RESTORE VGA CONTROLLER STATE

  INT 62 00DB - FGDRIVER v4.02 - "FG_VOICE" - START SOUND

  INT 62 00DC - FGDRIVER v4.02 - "FG_VOICES" - PLAY SOUNDS IN BACKGROUND

  INT 62 00DD - FGDRIVER v4.02 - "FG_WAITFOR" - DELAY FOR SPECIFIED DURATION

  INT 62 00DE - FGDRIVER v4.02 - "FG_WAITKEY" - FLUSH KEYBOARD BUFFER AND AWAIT KEY

  INT 62 00DF - FGDRIVER v4.02 - "FG_WAITVR" - ENABLE/DISABLE VERTICAL RETRACE WAIT

  INT 62 00E0 - FGDRIVER v4.02 - "FG_WHERE" - GET CURRENT CURSOR POSITION

  INT 62 00E1 - FGDRIVER v4.02 - "FG_XALPHA" - CONVERT SCREEN COLUMN TO CHAR COLUMN

  INT 62 00E2 - FGDRIVER v4.02 - "FG_XCONVERT" - CONVERT CHAR COLUMN TO SCREEN COL

  INT 62 00E3 - FGDRIVER v4.02 - "FG_XVIEW" - CONVERT VIEWPORT COORDINATE

  INT 62 00E4 - FGDRIVER v4.02 - "FG_YALPHA" - CONVERT SCREEN ROW TO CHARACTER ROW

  INT 62 00E5 - FGDRIVER v4.02 - "FG_YCONVERT" - CONVERT CHARACTER ROW TO SCREEN ROW

  INT 62 00E6 - FGDRIVER v4.02 - "FG_YVIEW" - TRANSLATE VERTICAL VIEWPORT COORDINATE

  INT 62 01-- - Cswitch - GIVE UP REST OF TIME-SLICE

  INT 62 01-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI

  INT 62 02-- - Cswitch - WAIT FOR SEMAPHORE

  INT 62 02-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - INITIALIZE

  INT 62 03-- - Cswitch - CHECK SEMAPHORE

  INT 62 03-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET REAL IP ADDRESS

  INT 62 04-- - Cswitch - TRIGGER SEMAPHORE

  INT 62 04-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???

  INT 62 05-- - Cswitch - SLEEP

  INT 62 05-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 06-- - Cswitch - SUSPEND

  INT 62 06-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 07-- - Cswitch - SPAWN

  INT 62 07-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 08-- - Cswitch - WAKE UP TASK

  INT 62 08-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 08-- - MS SQL Server/Sybase DBLIBRARY interface - UNINSTALL/GET PSP ADDR

  INT 62 09-- - Cswitch - SET PRIORITY

  INT 62 09-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - HOOK TIMER INTERRUPT

  INT 62 0A-- - Cswitch - TEST MESSAGE QUEUE

  INT 62 0A-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - UNHOOK TIMER INTERRUPT

  INT 62 0B-- - Cswitch - SEND MESSAGE

  INT 62 0B-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ADD ???

  INT 62 0C-- - Cswitch - READ MESSAGE

  INT 62 0C-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - REMOVE ???

  INT 62 0D-- - Cswitch - DON'T ALLOW TASK TO BE SWAPPED OUT

  INT 62 0D-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - NOP for ETHDEV.ODI

  INT 62 0E-- - Cswitch - ALLOW TASK TO BE SWAPPED OUT

  INT 62 0E-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - BEGIN CRITICAL SECTION

  INT 62 0F-- - Cswitch - LOAD AND RUN PROGRAM FROM DISK

  INT 62 0F-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - END CRITICAL SECTION

  INT 62 10-- - Cswitch - TERMINATE SPAWNED PROGRAM

  INT 62 10-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - QUERY CRITICAL SECTION

  INT 62 11-- - Cswitch - GET TCB INFORMATION

  INT 62 11-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - SET ???

  INT 62 12-- - Cswitch - GET TCB ADDRESS

  INT 62 12-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET SOCKET NUMBER???

  INT 62 13-- - Cswitch - CHECK STATUS OF PREVIOUS LOAD_TASK

  INT 62 13-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 14-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 15-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - GET ???

  INT 62 16-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 17-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ???

  INT 62 18-- - BW-TCP - HW DRIVER (ETHDEV.SYS) - ALLOCATE AND MAP EMS FOR DRIVER

  INT 62 47-- - PC Tools v7 COMMUTE - ???

  INT 62 48-- - PC Tools v7 COMMUTE - ???

  INT 62 49-- - PC Tools v7 COMMUTE - ???

  INT 62 4A-- - PC Tools v7 COMMUTE - ???

  INT 62 4B-- - PC Tools v7 COMMUTE - ???

  INT 62 4C-- - PC Tools v7 COMMUTE - ???

  INT 62 6262 - PC Tools v7 COMMUTE - INSTALLATION CHECK

  INT 62 C0-- - GWBTSR - API

  INT 62 FE-- - BW-TCP - ETHDRV.SYS - MAP EMS PAGE FRAME

INT 63 - reserved for user interrupt; multiple purposes

  INT 63 ---- - reserved for user interrupt

  INT 63 ---- - Adaptec and OMTI controllers - DRIVE 0 DATA

  INT 63 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

  INT 63 ---- - Oracle SQL Protected Mode Executive - ???

  INT 63 ---- - 4+Power FLOPPY CONTROLLER - ORIGINAL INT 13/40

  INT 63 ---- - Kofax KF9X00 image manipulation card interface

  INT 63 ---- - DESQview/X - SOCKET API

  INT 63 00-- - HP 100LX - MAP HIGH MEMORY

  INT 63 00-- - BW-TCP - TCPIP.SYS - SET IP ADDRESS???

  INT 63 01-- - HP 100LX - SAVE/RESTORE MEMORY MAP

  INT 63 01-- - BW-TCP - TCPIP.SYS - ???

  INT 63 02-- - BW-TCP - TCPIP.SYS - ???

  INT 63 03-- - BW-TCP - TCPIP.SYS - GET IP ADDRESS

  INT 63 04-- - BW-TCP - TCPIP.SYS - ???

  INT 63 05-- - BW-TCP - TCPIP.SYS - ???

  INT 63 06-- - BW-TCP - TCPIP.SYS - ???

  INT 63 07-- - BW-TCP - TCPIP.SYS - ???

  INT 63 08-- - BW-TCP - TCPIP.SYS - SET DEFAULT ??? HANDLER

  INT 63 09-- - BW-TCP - TCPIP.SYS - INSTALL ??? HANDLERS

  INT 63 0A-- - BW-TCP - TCPIP.SYS - DELETE ??? HANDLERS

  INT 63 0B-- - BW-TCP - TCPIP.SYS - ???

  INT 63 0C-- - BW-TCP - TCPIP.SYS - ???

  INT 63 0D-- - BW-TCP - TCPIP.SYS - INSTALL DEFAULT ??? HANDLER

  INT 63 0E-- - BW-TCP - TCPIP.SYS - CLOSE NETWORK DESCRIPTOR

  INT 63 0F-- - BW-TCP - TCPIP.SYS - ???

  INT 63 10-- - BW-TCP - TCPIP.SYS - ???

  INT 63 11-- - BW-TCP - TCPIP.SYS - ???

  INT 63 12-- - BW-TCP - TCPIP.SYS - LISTEN FOR INCOMING CONNECTIONS

  INT 63 13-- - BW-TCP - TCPIP.SYS - NOP

  INT 63 14-- - BW-TCP - TCPIP.SYS - OPEN NETWORK CONNECTION

  INT 63 15-- - BW-TCP - TCPIP.SYS - ???

  INT 63 16-- - BW-TCP - TCPIP.SYS - RESET NETWORK CONNECTION

  INT 63 17-- - BW-TCP - TCPIP.SYS - ???

  INT 63 18-- - BW-TCP - TCPIP.SYS - ???

  INT 63 19-- - BW-TCP - TCPIP.SYS - WRITE TO THE NETWORK

  INT 63 1A-- - BW-TCP - TCPIP.SYS - READ FROM THE NETWORK

  INT 63 1B-- - BW-TCP - TCPIP.SYS - ???

  INT 63 1C-- - BW-TCP - TCPIP.SYS - ???

  INT 63 1D-- - BW-TCP - TCPIP.SYS - ???

  INT 63 1E-- - BW-TCP - TCPIP.SYS - ???

  INT 63 1F-- - BW-TCP - TCPIP.SYS - SET SOCKET ??? HANDLER

  INT 63 20-- - BW-TCP - TCPIP.SYS - REMOVE SOCKET ??? HANDLER

  INT 63 21-- - BW-TCP - TCPIP.SYS - ???

  INT 63 22-- - BW-TCP - TCPIP.SYS - REMOVE ??? HANDLER

  INT 63 23-- - BW-TCP - TCPIP.SYS - ???

  INT 63 24-- - BW-TCP - TCPIP.SYS - GET SOCKET

  INT 63 25-- - BW-TCP - TCPIP.SYS - GET INTERNET ADDRESS

  INT 63 26-- - BW-TCP - TCPIP.SYS - SET INTERNET ADDRESS???

  INT 63 27-- - BW-TCP - TCPIP.SYS - SET ???

  INT 63 28-- - BW-TCP - TCPIP.SYS - ???

  INT 63 29-- - BW-TCP - TCPIP.SYS - ???

INT 64 - reserved for user interrupt; multiple purposes

  INT 64 ---- - reserved for user interrupt

  INT 64 ---- - Adaptec controllers - DRIVE 1 DATA

  INT 64 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

  INT 64 ---- - Oracle SQL Protected Mode Executive - ???

  INT 64 ---- - Novell NetWare to v2.0a - LOW-LEVEL API

  INT 64 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

  INT 64 ---- - Extended Batch Language v3.14+

  INT 64 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

  INT 64 01-- - BW-NFS - BWRPC - ???

  INT 64 02-- - BW-NFS - BWRPC - ???

  INT 64 03-- - BW-NFS - BWRPC - ADD ???

  INT 64 04-- - BW-NFS - BWRPC - REMOVE ???

  INT 64 05-- - BW-NFS - BWRPC - ???

  INT 64 06-- - BW-NFS - BWRPC - ???

  INT 64 07-- - BW-NFS - BWRPC - GET IP ADDRESS

  INT 64 10-- - BW-NFS - BWRPC - CALL ETHDEV.SYS

  INT 64 11-- - BW-NFS - BWRPC - NOP???

  INT 64 FE-- - BW-NFS - BWRPC - MAP EMS PAGE FRAME

INT 65 - reserved for user interrupt; multiple purposes

  INT 65 ---- - reserved for user interrupt

  INT 65 ---- - Adaptec controllers - DRIVE 1 DATA

  INT 65 ---- - TI Professional PC - OPTION ROM DATA AREA POINTER (NOT A VECTOR!)

  INT 65 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

  INT 65 ---- - FTP Software NDIS-Packet Driver adapter - POST PROCESSING INTERRUPT

  INT 65 ---- - SD.COM v6.2

  INT 65 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

  INT 65 ---- - Ad Lib SOUND.COM - INTERFACE

  INT 65 ---- - Ad Lib SOUND.COM - INITIALIZE (RESET)

  INT 65 ---- - Ad Lib SOUND.COM - SET STATE

  INT 65 ---- - Ad Lib SOUND.COM - GET STATE

  INT 65 ---- - Ad Lib SOUND.COM - SET MODE

  INT 65 ---- - Ad Lib SOUND.COM - GET MODE

  INT 65 ---- - Ad Lib SOUND.COM - SET ACTIVE VOICE

  INT 65 ---- - Ad Lib SOUND.COM - GET ACTIVE VOICE

  INT 65 ---- - Media Vision FM.COM v4.1a+ - GET INTERNAL DATA STRUCTURES

  INT 65 ---- - Media Vision FM.COM v4.1a+ - GET VOICE COUNT

  INT 65 ---- - Media Vision FM.COM v4.1a+ - START BACKGROUND FM SOUNDS

  INT 65 ---- - Media Vision FM.COM v4.1a+ - STOP BACKGROUND FM SOUNDS

  INT 65 ---- - Media Vision FM.COM v4.1a+ - GET ???

  INT 65 ---- - Media Vision FM.COM v4.1a+ - ???

  INT 65 ---- - EZRECV v1.0 - API

INT 66 - reserved for user interrupt; multiple purposes

  INT 66 ---- - reserved for user interrupt

  INT 66 ---- - Adaptec controllers - DRIVE 1 DATA

  INT 66 ---- - TI Professional PC - SYSTEM INFORMATION (NOT A VECTOR!)

  INT 66 ---- - Data General DG10 - MicroECLIPSE COPROCESSOR INTERFACE

  INT 66 ---- - Nanosoft, Inc. TurboNET - NETWORK PROCESSING ???

  INT 66 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

  INT 66 ---- - Microsoft Windows VITD.386 Virtual Interval Timer

  INT 66 ---- - Newkey v5.4 - INSTALLATION VECTOR

  INT 66 ---- - PC-Magazin - INCA

  INT 66 01-- - BitFax Scheduler - SET MODE???

  INT 66 02-- - BitFax Scheduler - SET MODE???

  INT 66 03-- - BitFax Scheduler - SCHEDULE FAX TRANSMISSIONS

  INT 66 04-- - BitFax Scheduler - GET STATUS???

  INT 66 05-- - BitFax Scheduler - CONVERT FILE AND SEND FAX

  INT 66 06-- - BitFax Scheduler - SET MODE???

  INT 66 0688 - IBMSND driver, DIGPAK - PLAY 8-BIT DIGITIZED SOUND

  INT 66 0689 - IBMSND driver, DIGPAK - REPORT SOUND DRIVER STATUS

  INT 66 068A - IBMSND driver, DIGPAK - PREFORMAT SOUND

  INT 66 068B - IBMSND driver, DIGPAK - PLAY PREFORMATTED SOUND

  INT 66 068C - IBMSND driver, DIGPAK - REPORT AUDIO DRIVER CAPABILITIES

  INT 66 068D - IBMSND driver, DIGPAK - REPORT CURRENT SAMPLE ADDRESS

  INT 66 068E - IBMSND driver, DIGPAK - SET CALLBACK ADDRESS

  INT 66 068F - IBMSND driver, DIGPAK - STOP CURRENT SOUND

  INT 66 0690 - IBMSND driver, DIGPAK - "SetAudioHardware" - SET UP HARDWARE INFO

  INT 66 0691 - IBMSND driver, DIGPAK - REPORT CALLBACK ADDRESS

  INT 66 0693 - DIGPAK - SET TIMER DIVISOR RATE

  INT 66 0694 - DIGPAK - PLAY PREFORMATTED DATA

  INT 66 0695 - DIGPAK - POST AUDIO PENDING

  INT 66 0696 - DIGPAK - GET AUDIO PENDING STATUS

  INT 66 0697 - DIGPAK - SET STEREO PANNING

  INT 66 0698 - DIGPAK - SET PLAY MODE

  INT 66 0699 - DIGPAK - GET ADDRESSES

  INT 66 069A - DIGPAK - SET RECORD MODE

  INT 66 069B - DIGPAK - STOP NEXT LOOP

  INT 66 069C - DIGPAK - SET DMA BACKFILL MODE

  INT 66 069D - DIGPAK - REPORT DMA COUNTER

  INT 66 069E - DIGPAK - VERIFY DMA BLOCK

  INT 66 069F - DIGPAK - SET PCM VOLUME

  INT 66 06A0 - DIGPAK - SET DPMI MODE

  INT 66 0700 - MIDPAK - UNINSTALL

  INT 66 0701 - IBM Digitized Sound Package MIDI driver - GET DIGITIZED SOUND CAPABIL

  INT 66 0702 - MIDPAK - PLAY SEQUENCE

  INT 66 0703 - MIDPAK - SEGUE SEQUENCE

  INT 66 0704 - MIDPAK - REGISTER XMIDI

  INT 66 0705 - MIDPAK - STOP MIDI

  INT 66 0706 - MIDPAK - REMAP CHANNEL

  INT 66 0707 - MIDPAK - REPORT TRIGGER EVENT COUNTER

  INT 66 0708 - MIDPAK - RESET EVENT TRIGGER COUNTER

  INT 66 0709 - MIDPAK - MIDI SLEEP

  INT 66 070A - MIDPAK - MIDI AWAKE

  INT 66 070B - MIDPAK - RESUME PLAYING

  INT 66 070C - MIDPAK - GET SEQUENCE STATUS

  INT 66 070D - MIDPAK - REGISTER XMIDI FILE

  INT 66 070E - MIDPAK - GET RELATIVE VOLUME

  INT 66 070F - MIDPAK - SET RELATIVE VOLUME

  INT 66 0710 - MIDPAK - LOAD MIDPAK DRIVER

  INT 66 0711 - MIDPAK - POLL MIDPAK

  INT 66 0712 - MIDPAK - GET MIDI CLOCK

  INT 66 0713 - MIDPAK - GET TRIGGER COUNT ADDRESS

  INT 66 0714 - MIDPAK - GET EVENT ID ADDRESS

  INT 66 0716 - MIDPAK - REPORT SEQUENCE NUMBER

  INT 66 10-- - PenDOS - TDMOUSE.EXE - GET ???

  INT 66 11-- - PenDOS - TDMOUSE.EXE - SET ??? HANDLER

  INT 66 12-- - PenDOS - TDMOUSE.EXE - INITIALIZE

  INT 66 13-- - PenDOS - TDMOUSE.EXE - SHUTDOWN???

  INT 66 14-- - PenDOS - TDMOUSE.EXE - ???

  INT 66 15-- - PenDOS - TDMOUSE.EXE - SET ??? HANDLER

  INT 66 16-- - PenDOS - TDMOUSE.EXE - UNUSED FUNCTIONS

  INT 66 21-- - PenDOS - PINK - ???

  INT 66 22-- - PenDOS - PINK - ???

  INT 66 23-- - PenDOS - PINK - ???

  INT 66 24-- - PenDOS - PINK - ???

  INT 66 25-- - PenDOS - PINK - ???

  INT 66 27-- - PenDOS - PINK - ???

  INT 66 28-- - PenDOS - PINK - ???

  INT 66 29-- - PenDOS - PINK - ???

  INT 66 2A-- - PenDOS - PINK - ???

  INT 66 2B-- - PenDOS - PINK - ???

  INT 66 2F-- - PenDOS - PINK - INITIALIZE

  INT 66 3345 - BitFax Scheduler - REMOVE TSR FROM MEMORY

  INT 66 40-- - PenDOS - PKEYUS - GET VERSION

  INT 66 41-- - PenDOS - PKEYUS - SET ???

  INT 66 42-- - PenDOS - PKEYUS - ???

  INT 66 43-- - PenDOS - PKEYUS - ???

  INT 66 44-- - PenDOS - PKEYUS - UNUSED FUNCTIONS

  INT 66 50-- - PenDOS - PMOUSE - SET ???

  INT 66 51-- - PenDOS - PMOUSE - NOP

  INT 66 52-- - PenDOS - PMOUSE - ???

  INT 66 53-- - PenDOS - PMOUSE - UNUSED FUNCTIONS

  INT 66 ---- - PenDOS - PMOUSE - ALTERNATE API

  INT 66 AA02 - HelpTSR v2.10 - INSTALLATION CHECK

  INT 66 C5-- - PenDOS - VLOAD - API

  INT 66 FFFB - MicroHelp Stay-Res Plus - ???

  INT 66 FFFE - MicroHelp Stay-Res/Stay-Res Plus - UNINSTALL

  INT 66 FFFF - MicroHelp Stay-Res Plus - FIND PROGRAM NAME

INT 67 - reserved for user interrupt; LIM EMS; multiple purposes

  INT 67 ---- - Adaptec controllers - DRIVE 1 DATA

  INT 67 ---- - TI Professional PC - SYSTEM DATA (NOT A VECTOR!)

  INT 67 ---- - Pdisk by Scott Garfinkle - Overwritten for Hard Drive information

  INT 67 ---- - Sangoma CCPOP 3270 resident module

  INT 67 ---- - CUCKOO.COM - INSTALLATION CHECK

  INT 67 00-- - PC-NET, Alloy NTNX - LOCK SEMAPHORE AND WAIT

  INT 67 01-- - PC-NET, Alloy NTNX - LOCK SEMAPHORE

  INT 67 02-- - PC-NET, Alloy NTNX - UNLOCK SEMAPHORE

  INT 67 1E-- - Qualitas 386MAX v7.00 - MEMLIMIT - INSTALLATION CHECK

  INT 67 1F-- - Qualitas 386MAX v7.00 - MEMLIMIT - API

  INT 67 3F-- - QEMM-386 v4.23+ - INSTALLATION CHECK

  INT 67 40-- - LIM EMS - GET MANAGER STATUS

  INT 67 41-- - LIM EMS - GET PAGE FRAME SEGMENT

  INT 67 42-- - LIM EMS - GET NUMBER OF PAGES

  INT 67 43-- - LIM EMS - GET HANDLE AND ALLOCATE MEMORY

  INT 67 44-- - LIM EMS - MAP MEMORY

  INT 67 45-- - LIM EMS - RELEASE HANDLE AND MEMORY

  INT 67 46-- - LIM EMS - GET EMM VERSION

  INT 67 47-- - LIM EMS - SAVE MAPPING CONTEXT

  INT 67 48-- - LIM EMS - RESTORE MAPPING CONTEXT

  INT 67 49-- - LIM EMS - reserved - GET I/O PORT ADDRESSES

  INT 67 4A-- - LIM EMS - reserved - GET TRANSLATION ARRAY

  INT 67 4B-- - LIM EMS - GET NUMBER OF EMM HANDLES

  INT 67 4C-- - LIM EMS - GET PAGES OWNED BY HANDLE

  INT 67 4D-- - LIM EMS - GET PAGES FOR ALL HANDLES

  INT 67 4E-- - LIM EMS - GET OR SET PAGE MAP

  INT 67 4F-- - LIM EMS 4.0 - GET/SET PARTIAL PAGE MAP

  INT 67 50-- - LIM EMS 4.0 - MAP/UNMAP MULTIPLE HANDLE PAGES

  INT 67 51-- - LIM EMS 4.0 - REALLOCATE PAGES

  INT 67 52-- - LIM EMS 4.0 - GET/SET HANDLE ATTRIBUTES

  INT 67 53-- - LIM EMS 4.0 - GET/SET HANDLE NAME

  INT 67 54-- - LIM EMS 4.0 - GET HANDLE DIRECTORY

  INT 67 55-- - LIM EMS 4.0 - ALTER PAGE MAP AND JUMP

  INT 67 56-- - LIM EMS 4.0 - ALTER PAGE MAP AND CALL

  INT 67 56FF - RM386 v6.00 - ???

  INT 67 57-- - LIM EMS 4.0 - MOVE/EXCHANGE MEMORY REGION

  INT 67 58-- - LIM EMS 4.0 - GET MAPPABLE PHYSICAL ADDRESS ARRAY

  INT 67 5857 - NETROOM??? - ???

  INT 67 59-- - LIM EMS 4.0 - GET EXPANDED MEMORY HARDWARE INFORMATION

  INT 67 5A-- - LIM EMS 4.0 - ALLOCATE STANDARD/RAW PAGES

  INT 67 5B-- - LIM EMS 4.0 - ALTERNATE MAP REGISTER SET

  INT 67 5B-- - LIM EMS 4.0 - ALTERNATE MAP REGISTER SET - DMA REGISTERS

  INT 67 5BE0 - MICEMM v4D, RM386 - GET LINEAR ADDRESS OF MEMORY

  INT 67 5BE1 - RM386 v6.00+ - GET MEMORY MANAGER SIZE

  INT 67 5BE2 - RM386 v6.00+ - GET INTERRUPT VECTORS

  INT 67 5BF0 - MICEMM v4D, RM386 - INSTALLATION CHECK

  INT 67 5BF1 - MICEMM v4D, RM386 - GET ADDRESS MAP

  INT 67 5BF2 - RM386 - GET RM386 INTERNAL DATA

  INT 67 5BF3 - RM386 - RETURN TO REAL MODE

  INT 67 5BF4 - RM386 v6.00 - GET RM386 GLOBAL FLAGS

  INT 67 5BF5 - RM386 v6.00 - GET RM386 EMS HANDLE COUNT

  INT 67 5C-- - LIM EMS 4.0 - PREPARE EXPANDED MEMORY HARDWARE FOR WARM BOOT

  INT 67 5D-- - LIM EMS 4.0 - ENABLE/DISABLE OS FUNCTION SET FUNCTIONS

  INT 67 5D03 - Nanosoft MD386 - INTERNAL INITIALIZATION

  INT 67 5D04 - Nanosoft MD386 - GET ALTERNATE MAP STRUCTURE

  INT 67 5D05 - Nanosoft MD386 - GET INTERNAL HANDLE TABLE

  INT 67 5DE0 - RM386 - DISABLE RM386

  INT 67 5DE1 - RM386 - ENABLE RM386

  INT 67 5DE2 - RM386 - GET PAGE TABLE

  INT 67 5DE3 - RM386 - SET PAGE TABLE

  INT 67 5DE4 - RM386 - SET WRITE-PROTECTION FOR PAGE IN FIRST MEGABYTE

  INT 67 5DE5 - RM386 - MAP PHYSICAL PAGE TO PHYSICAL SEGMENT

  INT 67 5DE6 - RM386 - MAP LOGICAL 4K PAGE TO PHYSICAL SEGMENT

  INT 67 5DE7 - RM386 - SET PAGE TABLE BITS FOR RANGE OF PAGES

  INT 67 5DE8 - RM386 - GET PARTIAL PAGE TABLE

  INT 67 5DE9 - RM386 - SET PARTIAL PAGE TABLE

  INT 67 5DEA - RM386 - V86-MODE I/O PORT TRAPPING CONTROL

  INT 67 5DEB - RM386 - V86-MODE I/O TRAPPING PORT CONTROL

  INT 67 5DFD - RM386 v6.00 - ???

  INT 67 5DFE - RM386 v6.00 - ???

  INT 67 5DFF - RM386 v6.00 - ???

  INT 67 5E00 - Nanosoft MD386 - SET HARDWARE BREAKPOINT

  INT 67 5E01 - Nanosoft MD386 - GET HARDWARE DEBUG REGISTER

  INT 67 5E02 - Nanosoft MD386 - SET DEBUG EXCEPTION HANDLER

  INT 67 5E03 - Nanosoft MD386 - ENABLE/DISABLE MEMORY WRITE PROTECTION

  INT 67 5E04 - Nanosoft MD386 - GET DEBUG EXCEPTION

  INT 67 5E05 - Nanosoft MD386 - IGNORE NEXT DEBUG EXCEPTION

  INT 67 60-- - EEMS - GET PHYSICAL WINDOW ARRAY

  INT 67 61-- - EEMS - GENERIC ACCELERATOR CARD SUPPORT

  INT 67 68-- - EEMS - GET ADDRESSES OF ALL PAGE FRAMES IN SYSTEM

  INT 67 69-- - EEMS - MAP PAGE INTO FRAME

  INT 67 6A-- - EEMS - PAGE MAPPING

  INT 67 6B-- - DESQview 2.42-2.53 - BUG

  INT 67 DD-- - Quadtel QMAPS - API

  INT 67 DE00 - Virtual Control Program Interface - INSTALLATION CHECK

  INT 67 DE01 - Virtual Control Program Interface - GET PROTECTED MODE INTERFACE

  INT 67 DE02 - Virtual Control Program Interface - GET MAX PHYSICAL MEMORY ADDRESS

  INT 67 DE03 - Virtual Control Program Interface - GET NUMBER OF FREE 4K PAGES

  INT 67 DE04 - Virtual Control Program Interface - ALLOCATE A 4K PAGE

  INT 67 DE05 - Virtual Control Program Interface - FREE 4K PAGE

  INT 67 DE06 - Virtual Control Program Interface - GET PHYS ADDR OF PAGE IN FIRST MB

  INT 67 DE07 - Virtual Control Program Interface - READ CR0

  INT 67 DE08 - Virtual Control Program Interface - READ DEBUG REGISTERS

  INT 67 DE09 - Virtual Control Program Interface - SET DEBUG REGISTERS

  INT 67 DE0A - Virtual Control Program Interface - GET 8259 INTERRUPT VECTOR MAPPINGS

  INT 67 DE0B - Virtual Control Program Interface - SET 8259 INTERRUPT VECTOR MAPPINGS

  INT 67 DE0C - Virtual Control Program Interface - SWITCH TO PROTECTED MODE

  INT 67 DE0F - Netroom3 - ???

  INT 67 EF-- - RM386 v6.00+ - EXECUTE XMS FUNCTION

  INT 67 FFA5 - Microsoft EMM386.EXE v4.20+ - INSTALLATION CHECK

  INT 67 FFA5 - Compaq CEMM v5.10+ - PRIVATE API

INT 68 - multiple purposes

  INT 68 ---- - Sangoma CCPOP 3270 resident module

  INT 68 ---- - Novell NetWare LU6.2

  INT 68 ---- - HP Vectra AT - IRQ16 - 8041 SERVICE REQUEST

  INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DISPLAY

  INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ATTACH PHYSICAL UNIT

  INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ATTACH LOGICAL UNIT

  INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DETACH LOGICAL UNIT

  INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - DETACH PHYSICAL UNIT

  INT 68 01-- - APPC/PC - NETWORK DEVICE CONTROL - ACTIVATE DLC

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - ALLOCATE

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - CONFIRM

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - CONFIRMED

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - DEALLOCATE

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - FLUSH

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - GET ATTRIBUTES

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - GET CONVERSATION TYPE

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - POST ON RECEIPT

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - PREPARE TO RECEIVE

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - RECEIVE AND WAIT

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - RECEIVE IMMEDIATE

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - REQUEST TO SEND

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - SEND DATA

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - SEND ERROR

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - TEST

  INT 68 02-- - APPC/PC - CONNECTION CONTROL - WAIT

  INT 68 03-- - APPC/PC - TP STARTED

  INT 68 03-- - APPC/PC - GET ALLOCATE

  INT 68 03-- - APPC/PC - CHANGE LOGICAL UNIT

  INT 68 04-- - APPC/PC - TRANSACTION PROCESSING

  INT 68 05-- - APPC/PC - TRANSFER MESSAGE DATA

  INT 68 06-- - APPC/PC - CHANGE NUMBER OF SESSIONS

  INT 68 07-- - APPC/PC - PASSTHROUGH

  INT 68 4300 - ??? - INSTALLATION CHECK???

  INT 68 4400 - ???

  INT 68 47-- - MS Windows debugging kernel - OUTPUT STRING

  INT 68 FA-- - APPC/PC - ENABLE/DISABLE APPC

  INT 68 FB-- - APPC/PC - CONVERT

  INT 68 FC-- - APPC/PC - ENABLE/DISABLE MESSAGE TRACING

  INT 68 FD-- - APPC/PC - ENABLE/DISABLE API VERB TRACING

  INT 68 FE-- - APPC/PC - SET TRACE DESTINATION

  INT 68 FF-- - APPC/PC - SET PASSTHROUGH

INT 69 - multiple purposes

  INT 69 ---- - Zenith AT BIOS - ???

  INT 69 ---- - HP Vectra AT - IRQ17 - KEYBOARD OUTPUT-BUFFER-FULL SERVICE ROUTINE

  INT 69 0100 - DECnet DOS CTERM - INSTALLATION CHECK

  INT 69 0101 - DECnet DOS CTERM - SEND BYTE

  INT 69 0102 - DECnet DOS CTERM - READ BYTE

  INT 69 0103 - DECnet DOS CTERM - STATUS

  INT 69 0104 - DECnet DOS CTERM - DECnet STATUS

  INT 69 0105 - DECnet DOS CTERM - OPEN SESSION

  INT 69 0106 - DECnet DOS CTERM - CLOSE SESSION

  INT 69 010A - DECnet DOS CTERM - GET SESSION CONTROL BLOCK SIZE

  INT 69 010B - DECnet DOS CTERM - GET DECnet SOCKET

  INT 69 010F - DECnet DOS CTERM - DEINSTALL CTERM

  INT 69 0A-- - DECnet DOS 2.1+ - DATA LINK LAYER

  INT 69 4001 - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 4002 - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 4101 - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 4102 - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 4103 - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 4104 - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 42-- - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 43-- - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 44-- - 10NET v5.0 - SYSSVC.COM - ???

  INT 69 49-- - 10NET v5.0 - SYSSVC.COM - BUG

  INT 69 6996 - ISR.COM v1.00 - SPECIFY INTERRUPT HANDLER

  INT 69 FF-- - 10NET v5.0 - SYSSVC.COM - SIGNAL SYSTEM ERROR

INT 6A - multiple purposes

  INT 6A ---- - OPTHELP.COM

  INT 6A ---- - DECnet DOS - LOCAL AREA TRANSPORT PROGRAM

  INT 6A ---- - HP Vectra AT - IRQ18 - RESERVED HARDWARE INTERRUPT

  INT 6A 0000 - Super-TCP DOS TSR Kernel v3.57 - INSTALLATION CHECK

  INT 6A 0001 - Super-TCP DOS TSR Kernel v3.57 - ???

  INT 6A 0002 - Super-TCP DOS TSR Kernel v3.57 - ???

  INT 6A 0003 - Super-TCP DOS TSR Kernel v3.57 - GET ??? DATA AREA

  INT 6A 0004 - Super-TCP DOS TSR Kernel v3.57 - ALLOCATE ???

  INT 6A 0005 - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ???

  INT 6A 000F - Super-TCP DOS TSR Kernel v3.57 - FREE/CLOSE ALL ???

  INT 6A 0010 - Super-TCP DOS TSR Kernel v3.57 - UNINSTALL

  INT 6A 01-- - DECnet DOS LOCAL AREA TRANSPORT - SEND BYTE

  INT 6A 02-- - DECnet DOS LOCAL AREA TRANSPORT - READ BYTE

  INT 6A 03-- - DECnet DOS LOCAL AREA TRANSPORT - STATUS

  INT 6A D0-- - DECnet DOS LOCAL AREA TRANSPORT - OPEN SESSION

  INT 6A D000 - DECnet DOS LOCAL AREA TRANSPORT - CLOSE SESSION

  INT 6A D100 - DECnet DOS LOCAL AREA TRANSPORT - SEND BREAK

  INT 6A D300 - DECnet DOS LOCAL AREA TRANSPORT - RESET LAT COUNTERS

  INT 6A D400 - DECnet DOS LOCAL AREA TRANSPORT - COPY LAT COUNTERS

  INT 6A D500 - DECnet DOS LOCAL AREA TRANSPORT - GET NEXT LAT SERVICE NAME

  INT 6A D600 - DECnet DOS LOCAL AREA TRANSPORT - LAT SERVICE TABLE RESET

INT 6B - multiple purposes

  INT 6B ---- - DECnet DOS - PORT DRIVER

  INT 6B ---- - VIRUS - "Saddam" - ORIGINAL INT 21h VECTOR

  INT 6B ---- - HP Vectra AT - IRQ19 - RESERVED HARDWARE INTERRUPT

  INT 6B 0000 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED WRITE

  INT 6B 0100 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - BUFFERED READ

  INT 6B 02-- - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - INSTALL CHECK

  INT 6B 0600 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - CONTROL

  INT 6B 0700 - Novell NASI/NACS, Ungermann-Bass Net One SERIAL I/O - GET STATUS

  INT 6B 08-- - TelAPI - CHECK FOR BREAK SIGNAL

  INT 6B 10-- - NPC NCSI EXTENDED SERIAL I/O - GET STATUS

  INT 6B 11-- - NPC NCSI EXTENDED SERIAL I/O - ALLOCATE A VIRTUAL CIRCUIT

  INT 6B 12-- - NPC NCSI EXTENDED SERIAL I/O - VIRTUAL CIRCUIT STATUS

  INT 6B 13-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE REQUEST/REPLY SERVICE NAME

  INT 6B 14-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE SERVICE ADDRESS

  INT 6B 15-- - NPC NCSI EXTENDED SERIAL I/O - SET/RETRIEVE VIRTUAL CIRCUIT CONFIG

  INT 6B 16-- - NPC NCSI EXTENDED SERIAL I/O - LOG AND/OR INITIALIZE VIRTUAL CIRCUIT

  INT 6B 17-- - NPC NCSI EXTENDED SERIAL I/O - DISCONNECT A VIRTUAL CIRCUIT

  INT 6B 18-- - NPC NCSI EXTENDED SERIAL I/O - WRITE DATA ON A VIRTUAL CIRCUIT

  INT 6B 19-- - NPC NCSI EXTENDED SERIAL I/O - READ DATA ON A VIRTUAL CIRCUIT

  INT 6B 1A-- - NPC NCSI EXTENDED SERIAL I/O - RECEIVE STATUS

  INT 6B 1B-- - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT STATUS

  INT 6B 1C-- - NPC NCSI EXTENDED SERIAL I/O - CLEAR RECEIVE BUFFER

  INT 6B 1D-- - NPC NCSI EXTENDED SERIAL I/O - TRANSMIT BUFFER CONTROL

  INT 6B 1E-- - NPC NCSI EXTENDED SERIAL I/O - ISSUE CONTROL REQUEST

  INT 6B 1F-- - NPC NCSI EXTENDED SERIAL I/O - EXTERNAL STATUS

  INT 6B 20-- - Connection Manager CLIENT.EXE - ???

  INT 6B 21-- - NPC NCSI EXTENDED SERIAL I/O - QUERY NAME SERVICE

  INT 6B 6B-- - Tandy SCHOOLMATE PLUS - API

INT 6C - CONVERTIBLE; DOS 3.2; DECnet DOS network scheduler

  INT 6C ---- - system resume vector (CONVERTIBLE)

  INT 6C ---- - DOS 3.2 Realtime Clock update

  INT 6C ---- - DECnet DOS network scheduler

  INT 6C ---- - HP Vectra AT - IRQ20 - HP-HIL CONTROLLER INTERRUPT

INT 6D - VGA - internal

  INT 6D ---- - VIDEO - many VGA - VIDEO BIOS ENTRY POINT

  INT 6D ---- - Trident SVGA - VIDEO BIOS HANDLER

  INT 6D ---- - DECnet DOS (before 2.1) - DATA LINK LAYER PROGRAM

  INT 6D ---- - HP Vectra AT - IRQ21 - RESERVED HARDWARE INTERRUPT

INT 6E - DECnet DOS - DECnet NETWORK PROCESS API

  INT 6E ---- - DECnet DOS - DECnet NETWORK PROCESS API

  INT 6E ---- - HP Vectra AT - IRQ22 - RESERVED HARDWARE INTERRUPT

INT 6F - Novell NetWare; 10NET; MS Windows 3.0

  INT 6F ---- - Novell NetWare - PCOX API (3270 PC terminal interface)

  INT 6F 00-- - 10NET - LOGIN

  INT 6F 00-- - HP Vectra EX-BIOS - "F_ISR" (internal) - RESPOND TO LOGICAL ISR

  INT 6F 01-- - 10NET - LOGOFF

  INT 6F 02-- - 10NET - STATUS OF NODE

  INT 6F 0200 - HP Vectra EX-BIOS - "F_SYSTEM SF_INIT" - START INITIALIZING DRIVER

  INT 6F 0202 - HP Vectra EX-BIOS - "F_SYSTEM SF_START" - COMPLETE DRIVER INITIALIZ.

  INT 6F 0204 - MS Windows 3.0 - DOS APPLICATION SWITCH HOOK

  INT 6F 0204 - HP Vectra EX-BIOS - "F_SYSTEM SF_REPORT_STATE" - GET DRIVER STATE

  INT 6F 0206 - HP Vectra EX-BIOS - "F_SYSTEM SF_VERSION_DESC" - GET DRIVER VERSION

  INT 6F 0208 - HP Vectra EX-BIOS - "F_SYSTEM SF_DEF_ATTR" - RESET TO DEFAULT ATTR

  INT 6F 020A - HP Vectra EX-BIOS - "F_SYSTEM SF_GET_ATTR" - GET CURRENT ATTRIBUTES

  INT 6F 020C - HP Vectra EX-BIOS - "F_SYSTEM SF_SET_ATTR" - SET DEVICE ATTRIBUTES

  INT 6F 020E - HP Vectra EX-BIOS - "F_SYSTEM SF_OPEN" - RESERVE DRIVER FOR ACCESS

  INT 6F 0210 - HP Vectra EX-BIOS - "F_SYSTEM SF_CLOSE" - RELEASE DRIVER

  INT 6F 0212 - HP Vectra EX-BIOS - "F_SYSTEM SF_TIMEOUT" - REPORT REQUESTED TIMEOUT

  INT 6F 0214 - HP Vectra EX-BIOS - "F_SYSTEM SF_INTERVAL" - 60 HZ INTERVAL EXPIRED

  INT 6F 0216 - HP Vectra EX-BIOS - "F_SYSTEM SF_TEST" - PERFORM HARDWARE TEST

  INT 6F 03-- - 10NET - GET ADDRESS OF CONFIGURATION TABLE

  INT 6F 04-- - 10NET - SEND

  INT 6F 04-- - HP Vectra EX-BIOS - "F_INS_BASEHPVT" - GET HP_VECTOR_TABLE ADDRESS

  INT 6F 04-- - HP Vectra EX-BIOS - "F_TRACK_INIT" - RESET TRACKING DRIVER TO DEFAULTS

  INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_LOCK" - RESERVE SUB-ADDRESSES

  INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_SVC" - UNMASK 8041 SVC INT

  INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DEF_LINKS" - SET DEFAULT PARENTS

  INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_ID_HP" - INSTALLATION CHECK

  INT 6F 0400 - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - INIT INT 33 HANDLER

  INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_UNLOCK" - RELEASE SUB-ADDRESSES

  INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_SVC" - MASK 8041 SVC INT

  INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_GET_LINKS" - GET DRIVER LINK FIELDS

  INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_INFO" - GET DISPLAY INFO

  INT 6F 0402 - HP Vectra EX-BIOS - "F_IO_CTRL SF_MOUSE_COM" - FORCE INT 33 INIT

  INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_ON" - GRAPHICS CURSOR ON

  INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_KBD" - UNMASK 8041 OBF INT

  INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_LINKS" - SET DRIVER LINK FIELDS

  INT 6F 0404 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_INFO" - SET EXT-CTRL INFO

  INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_TRACK_OFF" - GRAPHICS CURSOR OFF

  INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_KBD" - MASK 8041 OBF INT

  INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_MOD_INFO" - SET EXT-CTRL REG

  INT 6F 0406 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_RECONFIGURE" - RECONFIG LINK

  INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_EVENT" - SET EVENT HANDLER

  INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABLE_HPHIL" - UNMASK HP-HIL INT

  INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_GET_RES" - GET VIDMODE RESOLUTN

  INT 6F 0408 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_PROMPTS" - WRITE PROMPT

  INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_ON" - ENABLE EVENT HANDLER

  INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISABLE_HPHIL" - MASK HP-HIL INT

  INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_VID_SET_MODE" - SET VIDEO MODE

  INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_CREATE_INTR" - CREATE INTERVAL ENTRY

  INT 6F 040A - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_WR_ACK" - ACKNOWLEDGE DEVICE

  INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_EVENT_OFF" - DISABLE EVENT HANDLER

  INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_DELET_INTR" - DELETE INTERVAL ENTRY

  INT 6F 040C - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPEAT" - SET KEY REPEAT RATE

  INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_ON" - ENABLE CLIPPING

  INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_ENABL_INTR" - START INTERRUPT SRVICE

  INT 6F 040E - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_DISABLE_REPEAT" - KEY REPT OFF

  INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLIPPING_OFF" - DISABLE CLIPPING

  INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_DISBL_INTR" - END INTERRUPT SERVICE

  INT 6F 0410 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_SELF_TEST" - PERFORM SELFTEST

  INT 6F 0412 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_RAMSW" - SET RAM SWITCH IN 8041

  INT 6F 0412 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_STATUS" - GET DEVSTATUS

  INT 6F 0414 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_RAMSW" - CLEAR 8041 RAM SWITCH

  INT 6F 0414 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CRV_REPORT_NAME" - GET DEV NAME

  INT 6F 0416 - HP Vectra EX-BIOS - "F_IO_CTRL SF_SET_CRTSW" - SET CRT TO MULTIMODE

  INT 6F 0416 - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_REPEAT" - SET TYPEMATIC

  INT 6F 0418 - HP Vectra EX-BIOS - "F_IO_CTRL SF_CLR_CRTSW" - SET CRT TO MONOCHROME

  INT 6F 0418 - HP Vectra EX-BIOS - "F_IO_CTRL SF_KEYBOARD_LED" - SET KEYBOARD LEDS

  INT 6F 041A - HP Vectra EX-BIOS - "F_IO_CTRL SF_PASS_THRU" - SEND DATA BYTE TO 8041

  INT 6F 05-- - 10NET - RECEIVE

  INT 6F 06-- - HP Vectra EX-BIOS - "F_PUT_BYTE" - WRITE A BYTE OF DATA TO DEVICE

  INT 6F 06-- - HP Vectra EX-BIOS - "F_SAMPLE" - POLL CURRENT ABSOLUTE POSITION

  INT 6F 06-- - HP Vectra EX-BIOS - "F_INS_XCHGFIX" - EXCH VALUES WITH FIXED VECTOR

  INT 6F 06-- - HP Vectra EX-BIOS - "F_INQUIRE" - GET DRIVER PHYSICAL DESCRIBE RECORD

  INT 6F 06-- - HP Vectra EX-BIOS - "F_TRACK_ON" - ENABLE CURSOR TRACKING

  INT 6F 07-- - 10NET - LOCK HANDLE

  INT 6F 08-- - 10NET - UNLOCK HANDLE

  INT 6F 08-- - HP Vectra EX-BIOS - "F_GET_BYTE" - READ A BYTE OF DATA FROM DEVICE

  INT 6F 08-- - HP Vectra EX-BIOS - "F_INS_XCHGRSVD" - EXCH VALUES WITH RESRVED VECTOR

  INT 6F 08-- - HP Vectra EX-BIOS - "F_INQUIRE_ALL" - GET DRIVER STATUS TABLE

  INT 6F 08-- - HP Vectra EX-BIOS - "F_TRACK_OFF" - DISABLE CURSOR TRACKING

  INT 6F 09-- - 10NET - SUBMIT

  INT 6F 0A-- - 10NET - CHAT

  INT 6F 0A-- - HP Vectra EX-BIOS - "F_PUT_BUFFER" - WRITE A BUFFER TO DEVICE

  INT 6F 0A-- - HP Vectra EX-BIOS - "F_PUT_BLOCK" - WRITE BLOCKS TO DEVICE

  INT 6F 0A-- - HP Vectra EX-BIOS - "F_INS_XCHGFREE" - EXCH VALUES WITH FREE VECTOR

  INT 6F 0A-- - HP Vectra EX-BIOS - "F_INQUIRE_FIRST" - GET PHYSICAL DRIVER VECTOR

  INT 6F 0A-- - HP Vectra EX-BIOS - "F_DEF_MASKS" - DEFINE GRAPHICS CURSOR MASKS

  INT 6F 0B-- - 10NET - LOCK SEMAPHORE, RETURN IMMEDIATELY

  INT 6F 0C-- - 10NET - UNLOCK SEMAPHORE

  INT 6F 0C-- - HP Vectra EX-BIOS - "F_GET_BUFFER" - READ A BUFFER OF DATA FROM DEVICE

  INT 6F 0C-- - HP Vectra EX-BIOS - "F_GET_BLOCK" - READ BLOCKS OF DATA FROM DEVICE

  INT 6F 0C-- - HP Vectra EX-BIOS - "F_INS_FIXOWNDS" - INSTALL VALUES IN FIXED VECTOR

  INT 6F 0C-- - HP Vectra EX-BIOS - "F_INQUIRE_ENTRY" - GET GID DRIVER ENTRY POINT

  INT 6F 0C-- - HP Vectra EX-BIOS - "F_SET_LIMITS_X" - SET HORIZONTAL TRACKING LIMITS

  INT 6F 0D-- - 10NET - "WHO" - ENUMERATE USERS ON NETWORK

  INT 6F 0E-- - 10NET - SPOOL/PRINT

  INT 6F 0E-- - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE WORD OF DATA TO DEVICE

  INT 6F 0E-- - HP Vectra EX-BIOS - "F_PUT_WORD" - WRITE A WORD OF DATA

  INT 6F 0E-- - HP Vectra EX-BIOS - "F_INS_FIXGETDS" - INSTALL VALUES IN FIXED VECTOR

  INT 6F 0E-- - HP Vectra EX-BIOS - "F_SET_LIMITS_Y" - SET VERTICAL TRACKING LIMITS

  INT 6F 0F-- - 10NET v5.0 - "RM LOCK" - ???

  INT 6F 10-- - 10NET - ATTACH/DETACH PRINTER

  INT 6F 0E-- - HP Vectra EX-BIOS - "F_GET_WORD" - READ WORD OF DATA FROM DEVICE

  INT 6F 10-- - HP Vectra EX-BIOS - "F_INS_FIXGLBDS" - INSTALL VALUES IN FIXED VECTOR

  INT 6F 10-- - HP Vectra EX-BIOS - "F_PUT_SPRITE" - DISPLAY GRAPHICS CURSOR SPRITE

  INT 6F 11-- - 10NET - LOCK FCB

  INT 6F 12-- - 10NET - UNLOCK FCB

  INT 6F 12-- - HP Vectra EX-BIOS - "F_INS_FREEOWNDS" - INSTALL VALUES IN FREE VECTOR

  INT 6F 12-- - HP Vectra EX-BIOS - "F_REMOVE_SPRITE" - REMOVE GRAPHICS CURSOR SPRITE

  INT 6F 13-- - 10NET v3.3+ - GET REMOTE CONFIGURATION TABLE ADDRESS

  INT 6F 14-- - 10NET v3.3+ - GET REMOTE MEMORY

  INT 6F 14-- - HP Vectra EX-BIOS - "F_INS_FREEGETDS" - INSTALL VALUES IN FREE VECTOR

  INT 6F 1501 - 10NET v3.3+ - GET SHARED DEVICE ENTRY

  INT 6F 1502 - 10NET v3.3+ - SET SHARED DEVICE ENTRY

  INT 6F 1503 - 10NET v3.3+ - DELETE SHARED DEVICE ENTRY

  INT 6F 16-- - 10NET v5.0 - "GL WHO" - ???

  INT 6F 16-- - HP Vectra EX-BIOS - "F_INS_FREEGLBDS" - INSTALL VALUES IN FREE VECTOR

  INT 6F 17-- - 10NET v3.3+ - MOUNT

  INT 6F 18-- - 10NET v3.3+ - UNMOUNT

  INT 6F 18-- - HP Vectra EX-BIOS - "F_INS_FIND" - FIND DRIVER BY ATTRIBUTES

  INT 6F 19-- - 10NET v5.0 - AUDIT

  INT 6F 1A-- - 10NET v5.0 - "BULL" - ???

  INT 6F 1B-- - 10NET v5.0 - "GMOUNT" - ???

  INT 6F 1C-- - 10NET v5.0 - "GLOGIN" - GET LOGIN LIST

  INT 6F 1D-- - 10NET v5.0 - "TABDATA" - ???

  INT 6F 1E-- - 10NET v5.0 - "SCHED" - ???

  INT 6F 1E-- - HP Vectra EX-BIOS - "F_RAM_GET" - GET EX-BIOS FREE RAM AREA

  INT 6F 1F-- - 10NET v5.0 - "WHOAMI" - ???

  INT 6F 20-- - 10NET v5.0 - ???

  INT 6F 20-- - HP Vectra EX-BIOS - "F_RAM_RET" - RESERVE EX-BIOS MEMORY

  INT 6F 21-- - 10NET v5.0 - ???

  INT 6F 22-- - 10NET v5.0 - ???

  INT 6F 22-- - HP Vectra EX-BIOS - "F_CMOS_GET" - READ CMOS MEMORY

  INT 6F 24-- - HP Vectra EX-BIOS - "F_CMOS_RET" - WRITE CMOS MEMORY

  INT 6F 2A-- - HP Vectra EX-BIOS - "F_YIELD" - GIVE UP CPU TO OTHER TASKS

  INT 6F 30-- - HP Vectra EX-BIOS - "F_SND_CLICK_ENABLE" - TURN ON KEYCLICKS

  INT 6F 32-- - HP Vectra EX-BIOS - "F_SND_CLICK_DISABLE" - TURN OFF KEYCLICKS

  INT 6F 34-- - HP Vectra EX-BIOS - "F_SND_CLICK" - GENERATE KEYCLICK

  INT 6F 36-- - HP Vectra EX-BIOS - "F_SND_BEEP_ENABLE" - ENABLE BEEPS

  INT 6F 38-- - HP Vectra EX-BIOS - "F_SND_BEEP_DISABLE" - DISABLE BEEPS

  INT 6F 3A-- - HP Vectra EX-BIOS - "F_SND_BEEP" - SOUND BEEP WITH CURRENT VALUES

  INT 6F 3C-- - HP Vectra EX-BIOS - "F_SND_SET_BEEP" - SET BEEP FREQUENCY AND DURATION

  INT 6F 3E-- - HP Vectra EX-BIOS - "F_SND_TONE" - SOUND TONE WITH FREQ AND DURATION

  INT 6F 40-- - HP Vectra EX-BIOS - "F_STR_GET_FREE_INDEX" - FIND FREE STRING INDEX

  INT 6F 42-- - HP Vectra EX-BIOS - "F_STR_DEL_BUCKET" - DEL HEADER FROM BUCKET LIST

  INT 6F 44-- - HP Vectra EX-BIOS - "F_STR_PUT_BUCKET" - ADD HEADER TO BUCKET HDR LIST

  INT 6F 46-- - HP Vectra EX-BIOS - "F_STR_GET_STRING" - FIND STRING IN BUCKET LIST

  INT 6F 48-- - HP Vectra EX-BIOS - "F_STR_GET_INDEX" - GET INDEX FOR STRING

  INT 6F 80-- - 10NET v5.0 - LOGIN

  INT 6F 81-- - 10NET v5.0 - LOGOUT

  INT 6F 8A-- - 10NET v5.0 - CHAT

  INT 6F 8D-- - 10NET v5.0 - "WHO" - ENUMERATE USERS ON NETWORK

  INT 6F 9501 - 10NET v5.0 - GET SHARED DEVICE ENTRY

  INT 6F 9502 - 10NET v5.0 - SET SHARED DEVICE ENTRY

  INT 6F 9503 - 10NET v5.0 - DELETE SHARED DEVICE

  INT 6F 9504 - 10NET v5.0 - ENUMERATE USERS OF SHARED DEVICE

  INT 6F 99-- - 10NET v5.0 - AUDIT

  INT 6F 9C-- - 10NET v5.0 - GET LOGIN LIST

INT 70 - IRQ8 - CMOS REAL-TIME CLOCK

  INT 70 ---- - IRQ8 - CMOS REAL-TIME CLOCK

  INT 70 ---- - VIRUS - "Stupid" - ORIGINAL INT 21h VECTOR

INT 71 - IRQ9 - REDIRECTED TO INT 0A BY BIOS

  INT 71 ---- - IRQ9 - REDIRECTED TO INT 0A BY BIOS

INT 72 - IRQ10 - RESERVED

  INT 72 ---- - IRQ10 - RESERVED

INT 73 - IRQ11 - RESERVED

  INT 73 ---- - IRQ11 - RESERVED

INT 74 - IRQ12 - POINTING DEVICE (PS)

  INT 74 ---- - IRQ12 - POINTING DEVICE (PS)

INT 75 - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)

  INT 75 ---- - IRQ13 - MATH COPROCESSOR EXCEPTION (AT and up)

INT 76 - IRQ14 - HARD DISK CONTROLLER (AT and later)

  INT 76 ---- - IRQ14 - HARD DISK CONTROLLER OPERATION COMPLETE (AT and later)

INT 77 - IRQ15 - RESERVED (AT,PS); POWER CONSERVATION (Compaq)

  INT 77 ---- - IRQ15 - RESERVED (AT,PS)

  INT 77 ---- - IRQ15 - POWER CONSERVATION (Compaq SLT/286)

INT 78 - DOS extenders; multiple purposes

  INT 78 ---- - UofSalford DBOS DOS extender - API

  INT 78 ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ0

  INT 78 ---- - AutoCAD Device Interface - PLOTTER - SEND COMMAND

  INT 78 ---- - ADP-60 IDE controller - ORIGINAL INT 13

  INT 78 ---- - ULTRAMID - API

  INT 78 00-- - TARGA.DEV - CMC International SCSI device driver - SET I/O PORT

  INT 78 --00 - HugeRealMode Server - ENABLE A20

  INT 78 --01 - HugeRealMode Server - DISABLE A20

  INT 78 --02 - HugeRealMode Server - QUERY A20 STATE

  INT 78 --03 - HugeRealMode Server - ENABLE TWO-STAGE INTERRUPT MODEL

  INT 78 --04 - HugeRealMode Server - DISABLE TWO-STAGE INTERRUPT MODEL

  INT 78 --05 - HugeRealMode Server - GET SEGMENT ADDRESS OF SERVER-MANAGEMENT RANGE

  INT 78 --06 - HugeRealMode Server - ALLOCATE MEMORY

  INT 78 --07 - HugeRealMode Server - DEALLOCATE MEMORY

  INT 78 --08 - HugeRealMode Server - MODIFY ALLOCATED MEMORY SIZE

  INT 78 --09 - HugeRealMode Server - LOAD .XMF-FILE

  INT 78 --0A - HugeRealMode Server - SET SEGMENT LIMITS

  INT 78 --0B - HugeRealMode Server - TRANSFER MEMORY FROM DOS TO XMS

  INT 78 --0C - HugeRealMode Server - TRANSFER MEMORY FROM XMS TO DOS

  INT 78 00-- - HugeRealMode Driver - API

  INT 78 01-- - TARGA.DEV - GET I/O PORT

  INT 78 02-- - TARGA.DEV - SET DMA CHANNEL

  INT 78 03-- - TARGA.DEV - GET DMA CHANNEL

  INT 78 04-- - TARGA.DEV - SET SCSI DEVICE NUMBER

  INT 78 05-- - TARGA.DEV - GET SCSI DEVICE NUMBER

  INT 78 06-- - TARGA.DEV - SET/CLEAR EARLY RETURN MODE

  INT 78 08-- - TARGA.DEV - INTERFACE BOARD SELF-TEST

  INT 78 09-- - TARGA.DEV - RESET SCSI BUS

  INT 78 10-- - TARGA.DEV - SEND SCSI COMMAND

  INT 78 11-- - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (PROGRAMMED I/O)

  INT 78 12-- - TARGA.DEV - SEND SCSI COMMAND AND DATA (PROGRAMMED I/O)

  INT 78 13-- - TARGA.DEV - SEND SCSI COMMAND, RECEIVE DATA (DMA)

  INT 78 14-- - TARGA.DEV - SEND SCSI COMMAND AND DATA (DMA)

  INT 78 15-- - TARGA.DEV - FINISH DATA TRANSFER (DMA)

INT 79 - multiple purposes

  INT 79 ---- - AVATAR.SYS - FAST GET KEYSTROKE

  INT 79 ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ1

  INT 79 ---- - ADP-60 IDE adapter - ???

  INT 79 ---- - DBOS DOS Extender

  INT 79 0001 - AutoCAD Device Interface - DIGITIZER - INITIALIZE

  INT 79 0002 - AutoCAD Device Interface - DIGITIZER - TERMINATE

  INT 79 0003 - AutoCAD Device Interface - DIGITIZER - GET DIGITIZER STATUS

INT 7A - Novell NetWare; IBM 3270; multiple purposes

  INT 7A ---- - Topware Network Operating System - ???

  INT 7A ---- - X.PC Packet software interface

  INT 7A ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ2

  INT 7A ---- - PRINDIR - API (moved to INT 7C)

  INT 7A ---- - Novell NetWare - LOW-LEVEL API - Notes

  INT 7A ---- - Novell NetWare - IPX Driver - OPEN SOCKET

  INT 7A ---- - Novell NetWare - IPX Driver - CLOSE SOCKET

  INT 7A ---- - Novell NetWare - IPX Driver - GET LOCAL TARGET

  INT 7A ---- - Novell NetWare - IPX Driver - SEND PACKET

  INT 7A ---- - Novell NetWare - IPX Driver - LISTEN FOR PACKET

  INT 7A ---- - Novell NetWare - IPX Driver - SCHEDULE IPX EVENT

  INT 7A ---- - Novell NetWare - IPX Driver - CANCEL EVENT

  INT 7A ---- - Novell NetWare - IPX Driver - SCHEDULE SPECIAL EVENT

  INT 7A ---- - Novell NetWare - IPX Driver - GET INTERVAL MARKER

  INT 7A ---- - Novell NetWare - IPX Driver - GET INTERNETWORK ADDRESS

  INT 7A ---- - Novell NetWare - IPX Driver - RELINQUISH CONTROL

  INT 7A ---- - Novell NetWare - IPX Driver - DISCONNECT FROM TARGET

  INT 7A ---- - Novell NetWare - IPX Driver - internal - INITIALIZE NETWORK ADDRESS

  INT 7A ---- - Novell NetWare - IPX Driver - internal - IPX GET PACKET SIZE

  INT 7A ---- - Novell NetWare - IPX Driver - internal - TERMINATE SOCKETS

  INT 7A ---- - Novell NetWare - IPX Driver - INTERNAL - SEND PACKET

  INT 7A ---- - Novell NetWare - SPX Driver - INSTALLATION CHECK

  INT 7A ---- - Novell NetWare - SPX Driver - ESTABLISH SPX CONNECTION

  INT 7A ---- - Novell NetWare - SPX Driver - LISTEN FOR SPX CONNECTION

  INT 7A ---- - Novell NetWare - SPX Driver - TERMINATE SPX CONNECTION

  INT 7A ---- - Novell NetWare - SPX Driver - ABORT SPX CONNECTION

  INT 7A ---- - Novell NetWare - SPX Driver - GET SPX CONNECTION STATUS

  INT 7A ---- - Novell NetWare - SPX Driver - SEND SPX PACKET

  INT 7A ---- - Novell NetWare - SPX Driver - LISTEN FOR SPX PACKET

  INT 7A ---- - Novell NetWare - IPX Driver - internal - ADD DIAGNOSTIC ELEMENT

  INT 7A ---- - Novell NetWare - IPX Driver - internal - CANCEL DIAGNOSTIC ELEMENT

  INT 7A ---- - Novell NetWare - IPX Driver - internal - GET DRIVER PACKT SIZE LIMIT

  INT 7A ---- - Novell NetWare - IPX Driver - INTERNAL

  INT 7A ---- - Novell NetWare - NetWare Access Server - GET ???

  INT 7A ---- - Novell NetWare - NetWare Access Server - GET ??? ECB AND SOCKET

  INT 7A ---- - Novell NetWare - NetWare Access Server - GET ??? ECB

  INT 7A ---- - Novell NetWare - IPXODI v2.12+ - GET IPX FLAGS

  INT 7A ---- - Novell NetWare - IPXODI v2.12+ - SEND WITH CHECKSUM

  INT 7A ---- - Novell NetWare - IPXODI v2.12+ - IPX GENERATE CHECKSUM

  INT 7A ---- - Novell NetWare - IPXODI v2.12+ - IPX VERIFY CHECKSUM

  INT 7A ---- - Novell NetWare - IPXODI v2.12+ - OPEN LOOK-AHEAD SOCKET

  INT 7A ---- - Novell NetWare - IPXODI v2.20+ - SET INTERNETWORK ADDRESS

  INT 7A 0001 - AutoCAD Device Interface - DISPLAY - INITIALIZE (INIT1)

  INT 7A 0200 - AutoCAD Device Interface - RENDERING DEVICE - INITIALIZE (RDLINKUP)

  INT 7A 04-- - IBM 3270 Workstation Program API - CREATE A QUEUE

  INT 7A 06-- - IBM 3270 Workstation Program API - DELETE A QUEUE

  INT 7A 07D0 - AutoCAD Device Interface - Compaq VGADI41.EXE - GET ENTRY POINT

  INT 7A 09-- - IBM 3270 Workstation Program API - SESSION SERVICES

  INT 7A 09-- - IBM 3270 Workstation Program API - KEYBOARD SERVICES

  INT 7A 09-- - IBM 3270 Workstation Program API - WINDOW SERVICES

  INT 7A 09-- - IBM 3270 Workstation Program API - PRESENTATION SPACE SERVICES

  INT 7A 09-- - IBM 3270 Workstation Program API - 3270 EMULATION

  INT 7A 09-- - IBM 3270 Workstation Program API - OPERATOR INFORMATION AREA

  INT 7A 09-- - IBM 3270 Workstation Program API - TRANSLATE DATA

  INT 7A 09-- - IBM 3270 Workstation Program API - COPY SERVICE

  INT 7A 09-- - IBM 3270 Workstation Program API - Multi-DOS

  INT 7A 09-- - IBM 3270 Workstation Program API - HOST SERVICES

  INT 7A 13-- - IBM 3270 Workstation Program API - GET DATA FROM A QUEUE

  INT 7A 7A-- - Canon IX-30F Image Scanner SI3.SYS - INTERFACE

  INT 7A 81-- - IBM 3270 Workstation Program API - RESOLVE A GATE NAME

  INT 7A 83-- - IBM 3270 Workstation Program API - GET COMPLETION RESULTS

  INT 7A FDCB - IBM Personal Communications/3270 - INSTALLATION CHECK

  INT 7A FE01 - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION

  INT 7A FE02 - IBM PC3270 EMUL PROG v3 - INTERNAL SEND/RECEIVE FUNCTION

  INT 7A FF01 - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION

  INT 7A FF02 - IBM PC3270 EMUL PROG v3 - INTERNAL API TERMINATION

  INT 7A FF03 - IBM PC3270 EMUL PROG v3 - INTERNAL API INITIALIZATION

  INT 7A FF04 - IBM PC3270 EMUL PROG v3 - INTERNAL ???

INT 7B - multiple purposes

  INT 7B ---- - Btrieve API (single user)

  INT 7B ---- - Eicon Access API (3270/5250 gateways)

  INT 7B ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ3

  INT 7B ---- - AutoCAD Device Interface - PRINTER/PLOTTER - SEND PLOTTING DATA

  INT 7B ---- - MCI Express v2.11+ - DRIVER.EXE - ???

  INT 7B ---- - Novell XQL - XQL PRIMITIVES MANAGER API

  INT 7B 8001 - AutoCAD Device Interface - PRINTER/PLOTTER - BEGIN PLOT

  INT 7B 8002 - AutoCAD Device Interface - PRINTER/PLOTTER - END PLOT

  INT 7B 8003 - AutoCAD Device Interface - PRINTER/PLOTTER - ABORT PLOT

INT 7C - multiple purposes

  INT 7C ---- - IBM REXX88PC command language

  INT 7C ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ4

  INT 7C ---- - PRINDIR v8.02+ - API

  INT 7C ---- - AutoShade v2 - RENDERING HARDCOPY DRIVER

  INT 7C ---- - SK-UPPS/SK-PASSPORT Data Link Interface (DLI) API

  INT 7C 0000 - SK-UPPS Data Link Interface API - GET DRIVER VERSION

  INT 7C 0001 - SK-UPPS Data Link Interface API - DOWN DRIVER

  INT 7C 0002 - SK-UPPS Data Link Interface API - GET DRIVER STATUS

  INT 7C 0003 - SK-UPPS Data Link Interface API - CHANGE DRIVER ADDRESS

  INT 7C 0004 - SK-UPPS Data Link Interface API - REQUEST BUFFER

  INT 7C 0005 - SK-UPPS Data Link Interface API - RELEASE BUFFER

  INT 7C 0006 - SK-UPPS Data Link Interface API - TRANSMIT FRAME

  INT 7C 0007 - SK-UPPS Data Link Interface API - REGISTER PROTOCOL

  INT 7C 0008 - SK-UPPS Data Link Interface API - DISABLE PROTOCOL

  INT 7C 0009 - SK-UPPS Data Link Interface API - REGISTER MULTICAST

  INT 7C 000A - SK-UPPS Data Link Interface API - DISABLE MULTICAST

  INT 7C 000B - SK-UPPS Data Link Interface API - GET PROTOCOL LIST

  INT 7C 000C - SK-UPPS Data Link Interface API - GET PROTOCOL STATUS

  INT 7C 000D - SK-UPPS Data Link Interface API - GET DRIVER STATISTICS

  INT 7C 000E - SK-UPPS Data Link Interface API - DLI 2.5+ - GET DRIVER INFO

  INT 7C 000F - SK-UPPS Data Link Interface API - FEED BACK BUFFER

  INT 7C 0010 - SK-UPPS Data Link Interface API - CLIENT HOOK

  INT 7C 0011 - SK-UPPS Data Link Interface API - CLIENT UNHOOK

  INT 7C 0012 - SK-UPPS Data Link Interface API - SYNC REQUEST BUFFER

  INT 7C 0013 - SK-UPPS Data Link Interface API - TRANSMIT FRAME RELEASE

  INT 7C 0014 - SK-UPPS Data Link Interface API - GET MULTICAST LIST

  INT 7C 0015 - SK-UPPS Data Link Interface API - DLI 2.6+ - GET MEDIA STATISTICS

  INT 7C 0016 - SK-UPPS Data Link Interface API - DLI 2.8+ - DRIVER I/O CONTROL

  INT 7C 0017 - SK-UPPS Data Link Interface API - DLI 2.8+ - INTERRUPT REQUEST

INT 7D - multiple purposes

  INT 7D ---- - [obsoleted proposal] - ALTERNATE MULTIPLEX INTERRUPT

  INT 7D ---- - YTERM 1.4 - CLOCK SUPPORT

  INT 7D ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ5

  INT 7D ---- - HyperPAD v2.2 - API ACCESS

  INT 7D ---- - IBM DOS 6.1 E.EXE - ???

  INT 7D 00-- - SCSILink - RESET SCSI BUS

  INT 7D 01-- - SCSILink - CONNECT TO TARGET

  INT 7D 02-- - SCSILink - SEND COMMAND

  INT 7D 03-- - SCSILink - SET TIMEOUT

  INT 7D 04-- - SCSILink - GET ERROR STRING

  INT 7D 05-- - SCSILink - GET ADDRESS

  INT 7D 06-- - SCSILink - PUT DATA

  INT 7D 07-- - SCSILink - GET DATA

  INT 7D 08-- - SCSILink - TERMINATE SESSION

  INT 7D 09-- - SCSILink - POLL REQUEST

INT 7E - RESERVED FOR DIP, Ltd. ROM LIBRARY; multiple purposes

  INT 7E ---- - RESERVED FOR DIP, Ltd. ROM LIBRARY

  INT 7E ---- - YTERM 1.4 - ???

  INT 7E ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ6

  INT 7E 00-- - MaxSBOS v0.21 - GET ???

  INT 7E 00F6 - SBOS v3.82 - SET ???

  INT 7E 00F7 - SBOS v3.82 - GET ???

  INT 7E 00F9 - SBOS v3.82 - SET ???

  INT 7E 00FB - SBOS v3.82 - SET ???

  INT 7E 00FF - SBOS v3.82 - SET ???

  INT 7E 00FE - SBOS v3.82 - UNINSTALL

  INT 7E 00FF - SBOS v3.82 - SET INTERRUPT FOR ???

  INT 7E 01-- - MaxSBOS v0.21 - ???

  INT 7E 02-- - MaxSBOS v0.21 - ???

  INT 7E 03-- - MaxSBOS v0.21 - NOP

  INT 7E 5857 - XLOAD - INSTALLATION CHECK

  INT 7E 5857 - XLOAD - GET ???

  INT 7E 5857 - XLOAD - GET XLOAD MEMORY SIZE

INT 7F - multiple purposes

  INT 7F ---- - Halo88 - API

  INT 7F ---- - CONVERGENT TECHNOLOGIES ClusterShare CTOS ACCESS VECTOR

  INT 7F ---- - Telebit ACS SERIAL I/O

  INT 7F ---- - Non-dedicated NetWare 2.x File Server - ENTER CONSOLE MODE

  INT 7F ---- - YTERM - ???

  INT 7F ---- - DJGPP GO32.EXE DOS EXTENDER - RELOCATED IRQ7

  INT 7F ---- - Canon IXHND2 Scanner Interface

  INT 7F ---- - SBS WinRun 1.00 - TRANSMITTER ENTRY POINT

  INT 7F ---- - Alloy 386/MultiWare (MW386), Novell-Type Network Executive (NTNX)

  INT 7F ---- - Alloy NetWare Support Kit (ANSK) v2.2+ - INSTALLATION CHECK

  INT 7F 00-- - Alloy NTNX, MW386 - SEMAPHORE LOCK AND WAIT

  INT 7F 00-- - MultiLink Advanced v1.0+ - ENQUEUE SYSTEM RESOURCE

  INT 7F 00-- - G8BPQ v4.07+ - GET NODE/SWITCH VERSION AND DESCRIPTION

  INT 7F 01-- - Alloy NTNX, MW386 - SEMAPHORE LOCK

  INT 7F 01-- - MultiLink Advanced v1.0+ - DEQUEUE SYSTEM RESOURCE

  INT 7F 01-- - TIGA Communications Driver v2.05 - GET ENTRY POINTS

  INT 7F 01-- - G8BPQ v4.00+ - HOST MODE - SET APPLICATION FLAGS AND MASK

  INT 7F 0104 - HLLAPI (IBM 3270 High-Level Language API)/LLAPI (Rabbit Low Level API)

  INT 7F 0105 - IBM 8514/A Adapter Interface (HDILOAD.EXE)

  INT 7F 0105 - IBM XGA Adapter Interface (XGAAIDOS.SYS)

  INT 7F 0106 - HDILOAD Mach32 Adapter Interface - UNINSTALL

  INT 7F 02-- - Alloy NTNX, MW386 - RELEASE SEMAPHORE

  INT 7F 02-- - MultiLink Advanced v1.0+ - RELEASE CPU

  INT 7F 02-- - G8BPQ v4.00+ - HOST MODE - SEND FRAME

  INT 7F 0200 - Btrieve Multi-User - GIVE UP TIME???

  INT 7F 03-- - Alloy ANSK, NTNX, MW386 - GET USER NUMBER

  INT 7F 03-- - G8BPQ v4.00+ - HOST MODE - RECEIVE FRAME

  INT 7F 04-- - Alloy NTNX, MW386 - GET NUMBER OF USERS

  INT 7F 04-- - G8BPQ v4.00+ - HOST MODE - GET STREAM STATUS

  INT 7F 05-- - Alloy NTNX (Host) - LOCK/UNLOCK SYSTEM, SPOOLER CONTROL

  INT 7F 05-- - Alloy NTNX (Slave), MW386 - GET USER PARAMETERS

  INT 7F 05-- - G8BPQ v4.00+ - HOST MODE - ACKNOWLEDGE STREAM STATUS CHANGE

  INT 7F 06-- - Alloy NTNX (Host) - GET SHARED DRIVE INFO

  INT 7F 06-- - Alloy NTNX (Slave) - ALLOCATE FREE CLUSTER ON SHARED DRIVE

  INT 7F 06-- - G8BPQ v4.00+ - HOST MODE - SESSION CONTROL

  INT 7F 07-- - Alloy NTNX, MW386 - GET LIST OF SHARED DRIVES

  INT 7F 07-- - G8BPQ v4.00+ - HOST MODE - GET BUFFER COUNTS FOR STREAM

  INT 7F 08-- - Alloy NTNX (Host) - GET INTERRUPT VECTORS

  INT 7F 08-- - Alloy NTNX - SET MESSAGE DISPLAY TIMEOUT

  INT 7F 08-- - G8BPQ v4.00+ - HOST MODE - PORT CONTROL/INFORMATION

  INT 7F 09-- - MultiLink Advanced v1.0+ - SET TASK PRIORITY

  INT 7F 09-- - G8BPQ - proposed addition - GET NODE/APPLICATION CALLSIGN AND ALIAS

  INT 7F 09-- - Alloy NTNX - ENABLE/DISABLE MUD FILE CHECKING

  INT 7F 09-- - Alloy NTNX - SWITCH HOST TO DEDICATED MODE

  INT 7F 09-- - Alloy NTNX,MW386 - GET ALTERNATE INTERRUPT

  INT 7F 0A-- - Alloy NTNX - GET SYSTEM FLAGS

  INT 7F 0A-- - G8BPQ v4.00+ - HOST MODE - TRANSMIT RAW (KISS) FRAME

  INT 7F 0A-- - MultiLink Advanced v1.0+ - SET KEYBOARD TEST STATUS

  INT 7F 0B-- - Alloy NTNX (Host) - SET/RESET GRAPHICS DOS ON SLAVE

  INT 7F 0B-- - G8BPQ v4.00+ - HOST MODE - RECEIVE TRACE (RAW DATA) FRAME

  INT 7F 0C-- - G8BPQ v4.00+ - HOST MODE - UPDATE SWITCH INFORMATION

  INT 7F 0D00 - G8BPQ v4.07+ - HOST MODE - GET AVAILABLE STREAM

  INT 7F 0D-- - G8BPQ v4.07+ - HOST MODE - ALLOCATE/DEALLOCATE STREAM

  INT 7F 0F-- - G8BPQ v4.00+ - HOST MODE - GET TIME MARKER

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - OPEN CHANNEL

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - CLOSE CHANNEL

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK CHANNEL

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK CHANNEL

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - RELEASE BUFFER

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - CLOSE ALL CHANNELS

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK ALL OPEN CHANNELS

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK ALL LOCKED IDLE CHANNELS

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - LOCK MULTIPLE CHANNELS

  INT 7F 10-- - Alloy NTNX, MW386 - CHANNEL CONTROL - UNLOCK MULTIPLE CHANNELS

  INT 7F 11-- - Alloy NTNX, MW386 - SEND DATAGRAM

  INT 7F 12-- - Alloy NTNX, MW386 - ACKNOWLEDGE DATAGRAM

  INT 7F 1234 - TIGA Communications Driver v2.05 - UNINSTALL

  INT 7F 13-- - Alloy NTNX, MW386 - RESET USER DATAGRAMS

  INT 7F 14-- - Alloy NTNX, MW386 -  SET RECEIVE ISR

  INT 7F 14-- - Alloy NTNX, MW386 - SET ACKNOWLEDGE ISR

  INT 7F 14-- - Alloy NTNX, MW386 - SET CHANNEL BUFFER POINTER

  INT 7F 14-- - Alloy NTNX, MW386 - GET RECEIVE ISR

  INT 7F 14-- - Alloy NTNX, MW386 - GET ACKNOWLEDGE ISR

  INT 7F 14-- - Alloy NTNX (Host), MW386 - GET BUSY POINTER

  INT 7F 15-- - Alloy NTNX, MW386 - GET CHANNEL STATUS

  INT 7F 15-- - Alloy NTNX, MW386 - GET NEXT FULL CHANNEL

  INT 7F 15-- - Alloy NTNX, MW386 - GET MAXIMUM NUMBER OF CHANNELS

  INT 7F 15-- - Alloy NTNX, MW386 - GET MAXIMUM PACKET SIZE

  INT 7F 15-- - Alloy NTNX, MW386 - GET AND CLEAR ACKNOWLEDGE STATUS

  INT 7F 16-- - Alloy NTNX, MW386 - DIRECT MEMORY TRANSFER

  INT 7F 21-- - Alloy NTNX, MW386 - SEND MESSAGE OR COMMAND TO USER(S)

  INT 7F 22-- - Alloy NTNX - GET MESSAGE

  INT 7F 24-- - Alloy NTNX, MW386 - ATTACH OR RELEASE DRIVE FOR LOW-LEVEL WRITE ACCESS

  INT 7F 24-- - Alloy NTNX - ATTACH/RELEASE HOST PROCESSOR

  INT 7F 25-- - Alloy ANSK, NTNX, MW386 - GET NETWORK EXECUTIVE VERSION

  INT 7F 25-- - Alloy ANSK, NTNX, MW386 - GET NETWORK EXECUTIVE TYPE

  INT 7F 2525 - TIGA Communications Driver v2.05 - ???

  INT 7F 26-- - Alloy NTNX, MW386 - GET NTNX FILE MODE

  INT 7F 26-- - Alloy NTNX - SET FILE I/O CHECKING LEVEL

  INT 7F 26-- - Alloy NTNX - CANCEL FLUSH ON WRITE

  INT 7F 30-- - Alloy MW386 - GET PORT INFORMATION

  INT 7F 31-- - Alloy MW386 v1.x only - CHECK PORT ASSIGNMENT

  INT 7F 37-- - Alloy NTNX (Host) - GET SEMAPHORE TABLE

  INT 7F 37-- - Alloy ANSK, NTNX (Slave) - DUMP STRING TO TERMINAL

  INT 7F 38-- - Alloy NTNX (Slave), MW386 - SET NEW TERMINAL DRIVER

  INT 7F 39-- - Alloy MW386 - SET TERMINAL DRIVER FOR ANOTHER USER

  INT 7F 3A-- - Alloy MW386 - GET TERMINAL PARAMETERS

  INT 7F 3B-- - Alloy MW386 - SET TERMINAL PARAMETERS

  INT 7F 3C-- - Alloy MW386 - ENABLE/DISABLE AUTOBAUD DETECT

  INT 7F 3D-- - Alloy MW386 - POST TERMINAL CONFIGURATION CHANGES

  INT 7F 41-- - Alloy NTNX - LOCK FILE FOR USER

  INT 7F 41-- - Alloy MW386 - LOCK SEMAPHORE FOR USER

  INT 7F 4150 - Voyetra - AAPISG - API

  INT 7F 42-- - Alloy NTNX - UNLOCK FILE FOR USER

  INT 7F 42-- - Alloy MW386 - UNLOCK SEMAPHORE FOR USER

  INT 7F 4321 - TIGA Communications Driver v2.05 - INSTALLATION CHECK

  INT 7F 4331 - Voyetra - VAPISG - API

  INT 7F 4E-- - Alloy MW386 v2+ - SET ERROR MODE

  INT 7F 4F-- - Alloy MW386 v2+ - SET FCB MODE

  INT 7F 5555 - TIGA Communications Driver v2.05 - ???

  INT 7F 564D - Voyetra Multimedia Player - VMP.EXE API

  INT 7F 5658 - Voyetra - VAPISG - API

  INT 7F 81-- - Alloy NTNX - ATTACH DEVICE FOR USER

  INT 7F 82-- - Alloy NTNX - RELEASE DEVICE FOR USER

  INT 7F A0-- - Alloy MW386 - GET USER NAME

  INT 7F A1-- - Alloy MW386 - GET MACHINE, USER, AND PROCESS NUMBER

  INT 7F A2-- - Alloy MW386 - GET USER PRIVILEGE LEVEL

  INT 7F A3-- - Alloy MW386 - GET USER LOGIN STATE

  INT 7F A4-- - Alloy MW386 - VERIFY USER PASSWORD

  INT 7F A500 - Alloy MW386 - GET USER STATUS

  INT 7F A501 - Alloy MW386 - SET USER STATUS

  INT 7F ABCD - IBM 8516 Touch Screen Device Driver - GET API ENTRY

  INT 7F B0-- - Alloy NTNX, MW386 - RELEASE ALL SEMAPHORES FOR USER

  INT 7F B1-- - Alloy NTNX, MW386 - RELEASE NORMAL SEMAPHORES FOR USER

  INT 7F B2-- - Alloy NTNX - RELEASE MESSAGES FOR USER

  INT 7F B3-- - Alloy NTNX - RELEASE FILES FOR USER

  INT 7F B4-- - Alloy NTNX - RELEASE DEVICES FOR USER

  INT 7F C3-- - Alloy MW386 - WRITE BYTE TO TERMINAL AUX PORT

  INT 7F C5-- - Alloy MW386 - CHANGE CONSOLE MODE

  INT 7F C6-- - Alloy MW386 - WRITE BYTE TO CONSOLE PORT

  INT 7F C7-- - Alloy MW386 - READ CONSOLE DATA BYTE

  INT 7F C8-- - Alloy MW386 - READ CONSOLE DATA INTO BUFFER

  INT 7F CF-- - Alloy NTNX - REBOOT USER PROCESSOR

  INT 7F D6-- - Alloy MW386 - RESET NETWORK EXECUTIVE

  INT 7F D7-- - Alloy MW386 - POST EVENT

  INT 7F D8-- - Alloy MW386 - FLUSH DISK BUFFERS

  INT 7F DB-- - Alloy MW386 v2+ - GET MW386 INVOCATION DRIVE

  INT 7F E0-- - Alloy MW386 - CREATE DOS TASK

  INT 7F E1-- - Alloy MW386 - GET DOS TASK PID FROM CREATE ID

  INT 7F E2-- - Alloy MW386 - SWITCH TO NEW DOS TASK

  INT 7F E3-- - Alloy MW386 - CHANGE NAME OF DOS TASK

  INT 7F E4-- - Alloy MW386 - GET TASK NAME FROM PROCESS NUMBER

  INT 7F E5-- - Alloy MW386 - GET PROCESS NUMBER FROM TASK NAME

  INT 7F E6-- - Alloy MW386 - GET NUMBER OF AVAILABLE USER TASKS

  INT 7F E7-- - Alloy MW386 - REMOVE DOS TASK

  INT 7F E8-- - Alloy MW386 - DOS TASK DELAY

  INT 7F F0-- - Alloy MW386 - RESTRICT DIRECTORY TO GROUP

  INT 7F F1-- - Alloy MW386 - ASSIGN DIRECTORY TO GROUP

  INT 7F F2-- - Alloy MW386 - READ RESTRICTED DIRECTORY ENTRY

  INT 7F F3-- - Alloy MW386 - READ RESTRICTED DIRECTORY ENTRY FOR GROUP

  INT 7F F8-- - Alloy MW386 - ASSIGN USER TO GROUP

  INT 7F F9-- - Alloy MW386 - REMOVE USER FROM GROUP

  INT 7F FA-- - Alloy MW386 - GET USER GROUP LIST

  INT 7F FB-- - Alloy MW386 - ASSIGN GROUP NAME

  INT 7F FC-- - Alloy MW386 - GET GROUP NAME

INT 80 - reserved for BASIC; multiple purposes

  INT 80 ---- - Q-PRO4 - ???

  INT 80 ---- - reserved for BASIC

  INT 80 ---- - Phar Lap 386|DOS-Extender - RELOCATED PRINT-SCREEN

  INT 80 ---- - BusLogic BT-946C PCI SCSI Adapter - SCRATCHPAD RAM (NOT A VECTOR!)

  INT 80 ---- - SBSIM - "STARTSND" - START SOUND ON SPECIFIED DRIVER

  INT 80 ---- - SBSIM - "PLAYSND" - PLAY MUSIC/VOICE ON SELECTED DRIVER

  INT 80 ---- - SBSIM - "STOPSND" - STOP MUSIC/VOICE ON SELECTED DRIVER

  INT 80 ---- - SBSIM - "PAUSESND" - TEMPORARILY PAUSE PLAYBACK ON SELECTED DRIVER

  INT 80 ---- - SBSIM - "RESUMESND" - RESTART PLAYBACK ON SELECTED DRIVER

  INT 80 ---- - SBSIM - "GETSNDSTAT" - GET DRIVER'S STATUS

  INT 80 ---- - SoundBlaster SBFM driver - GET VERSION

  INT 80 ---- - SBSIM - "QUERYVERSION" - GET VERSION

  INT 80 ---- - SoundBlaster SBFM driver - SET MUSIC STATUS BYTE ADDRESS

  INT 80 ---- - SBSIM - "QUERYDRIVERS" - CHECK DRIVERS INSTALLED

  INT 80 ---- - SoundBlaster SBFM driver - SET INSTRUMENT TABLE

  INT 80 ---- - SBSIM - GETADDRESS" - GET SELECTED DRIVER'S ENTRY POINT

  INT 80 ---- - SoundBlaster SBFM driver - SET SYSTEM CLOCK RATE

  INT 80 ---- - SoundBlaster SBFM driver - SET DRIVER CLOCK RATE

  INT 80 ---- - SoundBlaster SBFM driver - TRANSPOSE MUSIC

  INT 80 ---- - SBSIM - "GETBUFFERINFO" - GET DRIVER'S BUFFER ADDRESS

  INT 80 ---- - SoundBlaster SBFM driver - PLAY MUSIC

  INT 80 ---- - SoundBlaster SBFM driver - STOP MUSIC

  INT 80 ---- - SoundBlaster SBFM driver - RESET DRIVER

  INT 80 ---- - SoundBlaster SBFM driver - PAUSE MUSIC

  INT 80 ---- - SoundBlaster SBFM driver - RESUME MUSIC

  INT 80 ---- - SoundBlaster SBFM driver - SET USER-DEF TRAP FOR SYSTEM-EXCLUSIVE CMDS

  INT 80 ---- - SBSIM - "GETVOLUME" - GET SOURCE'S VOLUME

  INT 80 ---- - SBSIM - "SETVOLUME" - SET SOURCE'S VOLUME

  INT 80 01-- - QPC Software PKTINT.COM - INITIALIZE

  INT 80 02-- - QPC Software PKTINT.COM - GET BUFFER ADDRESSES

  INT 80 03-- - QPC Software PKTINT.COM - GET ENTRY POINT

  INT 80 04-- - QPC Software PKTINT.COM - ENABLE???

  INT 80 05-- - QPC Software PKTINT.COM - GET RECEIVE STATISTICS

  INT 80 06-- - QPC Software PKTINT.COM - REMOVE RECEIVED PACKET

INT 81 - reserved for BASIC

  INT 81 ---- - reserved for BASIC

  INT 81 ---- - IBM TOKEN RING ADAPTER - ???

  INT 81 ---- - BusLogic BT-946C PCI SCSI Adapter - SCRATCHPAD RAM (NOT A VECTOR!)

  INT 81 ---- - AMI WinBIOS - SECOND HARD DRIVE AUTODETECTION

  INT 81 0200 - Gravis UltraSound - MegaEm - PROCESS COMMAND LINE

  INT 81 0202 - Gravis UltraSound - MegaEm - ???

  INT 81 0300 - Gravis UltraSound - MegaEm - LOAD SAMPLE ???

  INT 81 0400 - Gravis UltraSound - MegaEm - ???

  INT 81 2010 - Gravis UltraSound - MEGA_EM v3.0+ - ???

  INT 81 2011 - Gravis UltraSound - MEGA_EM v3.0+ - ???

  INT 81 2012 - Gravis UltraSound - MEGA_EM v3.0+ - ???

  INT 81 2015 - Gravis UltraSound - MEGA_EM v3.0+ - ???

INT 82 - reserved for BASIC

  INT 82 ---- - reserved for BASIC

  INT 82 ---- - IBM TOKEN RING ADAPTER - ???

INT 83 - reserved for BASIC

  INT 83 ---- - reserved for BASIC

  INT 83 00-- - JM Pro Tracker v5.0 - ???

  INT 83 01-- - JM Pro Tracker v5.0 - ???

  INT 83 02-- - JM Pro Tracker v5.0 - ???

  INT 83 03-- - JM Pro Tracker v5.0 - ???

  INT 83 04-- - JM Pro Tracker v5.0 - SET DMA BUFFER???

  INT 83 05-- - JM Pro Tracker v5.0 - SET ??? BUFFER

  INT 83 06-- - JM Pro Tracker v5.0 - SET ??? BUFFER

  INT 83 07-- - JM Pro Tracker v5.0 - SET ??? BUFFER

  INT 83 08-- - JM Pro Tracker v5.0 - START PLAYING???

  INT 83 09-- - JM Pro Tracker v5.0 - PAUSE???

  INT 83 0A-- - JM Pro Tracker v5.0 - RESUME???

  INT 83 0B-- - JM Pro Tracker v5.0 - ???

  INT 83 0C-- - JM Pro Tracker v5.0 - ???

  INT 83 0D-- - JM Pro Tracker v5.0 - ???

  INT 83 0E-- - JM Pro Tracker v5.0 - ???

  INT 83 0F-- - JM Pro Tracker v5.0 - ???

  INT 83 10-- - JM Pro Tracker v5.0 - ???

  INT 83 11-- - JM Pro Tracker v5.0 - ???

  INT 83 12-- - JM Pro Tracker v5.0 - CLEAR ???

  INT 83 13-- - JM Pro Tracker v5.0 - ???

  INT 83 14-- - JM Pro Tracker v5.0 - ???

  INT 83 15-- - JM Pro Tracker v5.0 - GET ???

  INT 83 16-- - JM Pro Tracker v5.0 - ???

  INT 83 17-- - JM Pro Tracker v5.0 - UNHOOK API INTERRUPT

  INT 83 18-- - JM Pro Tracker v5.0 - SET BUFFERS

INT 84 - reserved for BASIC

  INT 84 ---- - reserved for BASIC

INT 85 - reserved for BASIC

  INT 85 ---- - reserved for BASIC

INT 86 - IBM ROM BASIC - used while in interpreter; multiple purposes

  INT 86 ---- - NetBIOS - ORIGINAL INT 18

  INT 86 ---- - IBM ROM BASIC - used while in interpreter

  INT 86 ---- - APL*PLUS/PC - Terminate APL session and return to DOS

INT 87 - IBM ROM BASIC - used while in interpreter

  INT 87 ---- - IBM ROM BASIC - used while in interpreter

  INT 87 ---- - APL*PLUS/PC - ???

  INT 87 ---- - VIRUS - "ZeroHunt" - VIRAL CODE (NOT A VECTOR!)

INT 88 - IBM ROM BASIC - used while in interpreter; multiple purposes

  INT 88 ---- - IBM ROM BASIC - used while in interpreter

  INT 88 --00 - APL*PLUS/PC - CREATE OBJECT OF ARBITRARY RANK OR SHAPE

  INT 88 --01 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE

  INT 88 --02 - APL*PLUS/PC - CREATE INTEGER SCALAR/VECTOR/MATRIX <64K IN SIZE

  INT 88 --08 - APL*PLUS/PC - CREATE FLOATING POINT SCALAR/VECTOR/MATRIX <64K IN SIZE

  INT 88 --F5 - APL*PLUS/PC - FORCE OBJECT INTO REAL WORKSPACE FROM VIRTUAL

  INT 88 --F6 - APL*PLUS/PC - MAKE NAME IMMUNE FROM OUTSWAPPING

  INT 88 --F7 - APL*PLUS/PC - MAKE NAME ELIGIBLE FOR OUTSWAPPING

  INT 88 --F8 - APL*PLUS/PC - REPORT WHETHER NAME IS ELIGIBLE FOR OUTSWAPPING

  INT 88 --F9 - APL*PLUS/PC - DETERMINE NAME STATUS

  INT 88 --FC - APL*PLUS/PC - DETERMINE IF MEMORY AVAIL WITHOUT GARBAGE COLLECTION

  INT 88 --FD - APL*PLUS/PC - PERFORM GARBAGE COLLECTION AND RETURN AVAILABLE MEMORY

  INT 88 --FE - APL*PLUS/PC - CREATE NAME

  INT 88 --FF - APL*PLUS/PC - DETERMINE NAME STATUS

INT 89 - IBM ROM BASIC - used while in interpreter

  INT 89 ---- - IBM ROM BASIC - used while in interpreter

INT 8A - IBM ROM BASIC - used while in interpreter

  INT 8A ---- - IBM ROM BASIC - used while in interpreter

  INT 8A ---- - APL*PLUS/PC - PRINT SCREEN

INT 8B - IBM ROM BASIC - used while in interpreter

  INT 8B ---- - IBM ROM BASIC - used while in interpreter

  INT 8B ---- - APL*PLUS/PC - BEEP

  INT 8B ---- - VIRUS - "ZeroHunt" - INSTALLATION CHECK (NOT A VECTOR!)

INT 8C - IBM ROM BASIC - used while in interpreter

  INT 8C ---- - IBM ROM BASIC - used while in interpreter

  INT 8C ---- - APL*PLUS/PC - CLEAR SCREEN MEMORY

INT 8D - IBM ROM BASIC - used while in interpreter

  INT 8D ---- - IBM ROM BASIC - used while in interpreter

INT 8E - IBM ROM BASIC - used while in interpreter

  INT 8E ---- - IBM ROM BASIC - used while in interpreter

INT 8F - IBM ROM BASIC - used while in interpreter

  INT 8F ---- - IBM ROM BASIC - used while in interpreter

INT 90 - IBM ROM BASIC - used while in interpreter

  INT 90 ---- - IBM ROM BASIC - used while in interpreter

  INT 90 ---- - APL*PLUS/PC - USED BY PORT 10 PRINTER DRIVER

INT 91 - IBM ROM BASIC - used while in interpreter

  INT 91 ---- - IBM ROM BASIC - used while in interpreter

  INT 91 ---- - IBM TOKEN RING ADAPTER - ???

INT 92 - IBM ROM BASIC - used while in interpreter; multiple purposes

  INT 92 ---- - IBM ROM BASIC - used while in interpreter

  INT 92 ---- - Sangoma X.25 INTERFACE PROGRAM

  INT 92 E1-- - Da Vinci eMail Dispatcher INTERFACE

  INT 92 E100 - Da Vinci eMail Dispatcher - "NetInitStart"

  INT 92 E101 - Da Vinci eMail Dispatcher - "NetInitCheck"

  INT 92 E102 - Da Vinci eMail Dispatcher - "NetCheckDriver"

  INT 92 E103 - Da Vinci eMail Dispatcher - "NetTerminate"

  INT 92 E104 - Da Vinci eMail Dispatcher - "NetWhereIs"

  INT 92 E105 - Da Vinci eMail Dispatcher - "NetOpen"

  INT 92 E106 - Da Vinci eMail Dispatcher - "NetRead"

  INT 92 E107 - Da Vinci eMail Dispatcher - "NetGetError"

  INT 92 E108 - Da Vinci eMail Dispatcher - "NetWrite"

  INT 92 E109 - Da Vinci eMail Dispatcher - "NetErrorFix" (UNUSED)

  INT 92 E10A - Da Vinci eMail Dispatcher - "NetClose"

  INT 92 E10B - Da Vinci eMail Dispatcher - "NetCheckQueue"

  INT 92 E10C - Da Vinci eMail Dispatcher - "NetReadQueue"

  INT 92 E10D - Da Vinci eMail Dispatcher - "NetSubmitName"

  INT 92 E10E - Da Vinci eMail Dispatcher - "NetRemoveName"

  INT 92 E10F - Da Vinci eMail Dispatcher - IS ANYONE THERE? QUERY

  INT 92 E110 - Da Vinci eMail Dispatcher - "NetGetAltRoute"

  INT 92 E111 - Da Vinci eMail Dispatcher - "NetDeleteAltRoutes"

  INT 92 E112 - Da Vinci eMail Dispatcher - "NetChangePassword"

  INT 92 E113 - Da Vinci eMail Dispatcher - "NetSetAltRoute"

  INT 92 E175 - Da Vinci eMail Dispatcher - BECOME MICRO TSR

  INT 92 E180 - Da Vinci eMail Dispatcher - INSTALLATION CHECK

INT 93 - IBM ROM BASIC - used while in interpreter

  INT 93 ---- - IBM ROM BASIC - used while in interpreter

  INT 93 ---- - IBM TOKEN RING ADAPTER - ???

INT 94 - IBM ROM BASIC - used while in interpreter; multiple purposes

  INT 94 ---- - IBM ROM BASIC - used while in interpreter

  INT 94 ---- - PCM driver - INITIALIZE SOUND

  INT 94 ---- - PCM driver - INITIALIZE PCM

  INT 94 ---- - PCM driver - INITIALIZE PCM INFO

  INT 94 ---- - PCM driver - INITIALIZE DMA BUFFER

  INT 94 ---- - PCM driver - INITIALIZE USER FUNCTION

  INT 94 ---- - PCM driver - BEGIN AUDIO PLAY

  INT 94 ---- - PCM driver - BEGIN AUDIO RECORD

  INT 94 ---- - PCM driver - PAUSE AUDIO PLAY/RECORD

  INT 94 ---- - PCM driver - RESUME AUDIO PLAY/RECORD

  INT 94 ---- - PCM driver - STOP AUDIO PLAY/RECORD

  INT 94 ---- - PCM driver - UNHOOK INTERRUPTS AND TURN OFF DMA

  INT 94 ---- - PCM driver - FIND VALID DMA BUFFER IN HUGE MEMORY BLOCK

  INT 94 ---- - Media Vision PCM.COM - GET STATUS

  INT 94 ---- - Media Vision PCM.COM - GET INTERNAL DMA BUFFER ADDRESS

  INT 94 ---- - Media Vision PCM.COM - GET INTERNAL DMA BUFFER SIZE AND DIVISIONS

  INT 94 ---- - Media Vision PCM.COM - CHECK BOARD ADDRESS

  INT 94 ---- - Media Vision PCM.COM - GET INTERNAL NOTE BUFFER

  INT 94 ---- - Media Vision PCM.COM - SINGLE-STEP QUEUE

  INT 94 ---- - Media Vision PCM.COM - INITIALIZE

  INT 94 ---- - Media Vision PCM.COM - LOAD SOUND FOR LATER PLAY THROUGH KEYBOARD

  INT 94 ---- - Media Vision PCM.COM - GET INTERNAL SOUND USAGE

  INT 94 ---- - Media Vision PCM.COM - GET DATA FOR SPECIFIED SOUND

  INT 94 ---- - Media Vision PCM.COM - GET/SET INTERNAL DMA BUFFER

  INT 94 ---- - Media Vision PCM.COM - SIMULATE DOUBLE-SHIFT HOTKEY

  INT 94 --01 - Media Vision PCM.COM - CTRL-G INTERCEPT

  INT 94 --02 - Media Vision PCM.COM - DOUBLE-SHIFT-HOTKEY SOUND FEATURE

  INT 94 --04 - Media Vision PCM.COM - RANDOM SOUND FEATURE

  INT 94 --08 - Media Vision PCM.COM - NO ACTIVITY FEATURE

  INT 94 --10 - Media Vision PCM.COM - TIMER CONTROL

  INT 94 ---- - Media Vision PCM.COM - GET INFO

INT 95 - IBM ROM BASIC - used while in interpreter

  INT 95 ---- - IBM ROM BASIC - used while in interpreter

  INT 95 ---- - APL*PLUS/PC - DETERMINE R= SPACE

INT 96 - IBM ROM BASIC - used while in interpreter

  INT 96 ---- - IBM ROM BASIC - used while in interpreter

INT 97 - IBM ROM BASIC - used while in interpreter

  INT 97 ---- - IBM ROM BASIC - used while in interpreter

INT 98 - IBM ROM BASIC - used while in interpreter

  INT 98 ---- - IBM ROM BASIC - used while in interpreter

INT 99 - IBM ROM BASIC - used while in interpreter

  INT 99 ---- - IBM ROM BASIC - used while in interpreter

INT 9A - IBM ROM BASIC - used while in interpreter

  INT 9A ---- - IBM ROM BASIC - used while in interpreter

INT 9B - IBM ROM BASIC - used while in interpreter

  INT 9B ---- - IBM ROM BASIC - used while in interpreter

INT 9C - IBM ROM BASIC - used while in interpreter

  INT 9C ---- - IBM ROM BASIC - used while in interpreter

  INT 9C ---- - VIRUS - "INT13" - ORIGINAL INT 13h VECTOR

INT 9D - IBM ROM BASIC - used while in interpreter

  INT 9D ---- - IBM ROM BASIC - used while in interpreter

  INT 9D ---- - VIRUS - "INT13" - ROM INT 13h ENTRY POINT

INT 9E - IBM ROM BASIC - used while in interpreter

  INT 9E ---- - IBM ROM BASIC - used while in interpreter

  INT 9E ---- - VIRUS - "INT13" - ORIGINAL INT 21h VECTOR

INT 9F - IBM ROM BASIC - used while in interpreter

  INT 9F ---- - IBM ROM BASIC - used while in interpreter

  INT 9F ---- - VIRUS - "INT13" - STORAGE FOR USER INT 13h VECTOR

INT A0 - IBM ROM BASIC - used while in interpreter

  INT A0 ---- - IBM ROM BASIC - used while in interpreter

  INT A0 ---- - APL*PLUS/PC - USED BY APL/GSS*CGI GRAPHICS INTERFACE

INT A1 - IBM ROM BASIC - used while in interpreter

  INT A1 ---- - IBM ROM BASIC - used while in interpreter

INT A2 - IBM ROM BASIC - used while in interpreter

  INT A2 ---- - IBM ROM BASIC - used while in interpreter

INT A3 - IBM ROM BASIC - used while in interpreter

  INT A3 ---- - IBM ROM BASIC - used while in interpreter

INT A4 - IBM ROM BASIC - used while in interpreter

  INT A4 ---- - IBM ROM BASIC - used while in interpreter

  INT A4 ---- - Right Hand Man - API

INT A5 - IBM ROM BASIC - used while in interpreter

  INT A5 ---- - IBM ROM BASIC - used while in interpreter

INT A6 - IBM ROM BASIC - used while in interpreter

  INT A6 ---- - IBM ROM BASIC - used while in interpreter

INT A7 - IBM ROM BASIC - used while in interpreter

  INT A7 ---- - IBM ROM BASIC - used while in interpreter

INT A8 - IBM ROM BASIC - used while in interpreter

  INT A8 ---- - IBM ROM BASIC - used while in interpreter

INT A9 - IBM ROM BASIC - used while in interpreter

  INT A9 ---- - IBM ROM BASIC - used while in interpreter

INT AA - IBM ROM BASIC - used while in interpreter

  INT AA ---- - IBM ROM BASIC - used while in interpreter

INT AB - IBM ROM BASIC - used while in interpreter

  INT AB ---- - IBM ROM BASIC - used while in interpreter

INT AC - IBM ROM BASIC - used while in interpreter

  INT AC ---- - IBM ROM BASIC - used while in interpreter

INT AD - IBM ROM BASIC - used while in interpreter

  INT AD ---- - IBM ROM BASIC - used while in interpreter

INT AE - IBM ROM BASIC - used while in interpreter

  INT AE ---- - IBM ROM BASIC - used while in interpreter

INT AF - IBM ROM BASIC - used while in interpreter

  INT AF ---- - IBM ROM BASIC - used while in interpreter

INT B0 - IBM ROM BASIC - used while in interpreter

  INT B0 ---- - IBM ROM BASIC - used while in interpreter

INT B1 - IBM ROM BASIC - used while in interpreter

  INT B1 ---- - IBM ROM BASIC - used while in interpreter

INT B2 - IBM ROM BASIC - used while in interpreter

  INT B2 ---- - IBM ROM BASIC - used while in interpreter

INT B3 - IBM ROM BASIC - used while in interpreter

  INT B3 ---- - IBM ROM BASIC - used while in interpreter

  INT B3 70-- - ZIPKEY - GET VERSION

  INT B3 71-- - ZIPKEY - CONVERT TWO-LETTER ABBREVIATION TO STATE CODE

  INT B3 72-- - ZIPKEY - CONVERT STATE CODE TO TWO-LETTER ABBREVIATION

  INT B3 73-- - ZIPKEY - CONVERT STATE CODE TO STATE NAME

  INT B3 74-- - ZIPKEY - CONVERT ZIPCODE TO ASCII DIGITS

  INT B3 75-- - ZIPKEY - LOOK UP STATE CODE FOR ZIPCODE

  INT B3 76-- - ZIPKEY - LOOK UP CITY AND STATE FOR ZIPCODE

  INT B3 77-- - ZIPKEY - PLAY BACK EXIT KEY FOR ENTRY WITH GIVEN ZIPCODE

  INT B3 78-- - ZIPKEY - LOOK UP ZIPCODES FOR A GIVEN STATE AND CITY

  INT B3 79-- - ZIPKEY - LOOK UP ZIPCODES FOR A GIVEN CITY

  INT B3 7A-- - ZIPKEY - FETCH AN ENTRY FROM A PREVIOUS LOOKUP

  INT B3 7B-- - ZIPKEY - GET VALUES NEEDED TO SAVE ZIPKEY CONTEXT

  INT B3 7C-- - ZIPKEY - RESTORE ZIPKEY CONTEXT

  INT B3 7D-- - ZIPKEY - REQUEST POP UP

  INT B3 7E-- - ZIPKEY - GET NAME OF PRIMARY CITY FOR A ZIPCODE REGION

  INT B3 7F-- - ZIPKEY - ENABLE/DISABLE HOTKEYS

  INT B3 80-- - ZIPKEY v2.0+ - DETERMINE STATE FOR AREA CODE

INT B4 - IBM ROM BASIC - used while in interpreter

  INT B4 ---- - IBM ROM BASIC - used while in interpreter

  INT B4 ---- - StackMan - REQUEST NEW STACK

INT B5 - IBM ROM BASIC - used while in interpreter

  INT B5 ---- - IBM ROM BASIC - used while in interpreter

  INT B5 ---- - StackMan - RESTORE ORIGINAL STACK

  INT B5 ---- - Netroom NETSWAP4 - ???

INT B6 - IBM ROM BASIC - used while in interpreter

  INT B6 ---- - IBM ROM BASIC - used while in interpreter

  INT B6 ---- - (NOT A VECTOR!) - USED BY TBFENCE

INT B7 - IBM ROM BASIC - used while in interpreter

  INT B7 ---- - IBM ROM BASIC - used while in interpreter

  INT B7 ---- - TBFENCE - ???

INT B8 - IBM ROM BASIC - used while in interpreter

  INT B8 ---- - IBM ROM BASIC - used while in interpreter

INT B9 - IBM ROM BASIC - used while in interpreter

  INT B9 ---- - IBM ROM BASIC - used while in interpreter

INT BA - IBM ROM BASIC - used while in interpreter

  INT BA ---- - IBM ROM BASIC - used while in interpreter

INT BB - IBM ROM BASIC - used while in interpreter

  INT BB ---- - IBM ROM BASIC - used while in interpreter

INT BC - IBM ROM BASIC - used while in interpreter

  INT BC ---- - IBM ROM BASIC - used while in interpreter

INT BD - IBM ROM BASIC - used while in interpreter

  INT BD ---- - IBM ROM BASIC - used while in interpreter

INT BE - IBM ROM BASIC - used while in interpreter

  INT BE ---- - IBM ROM BASIC - used while in interpreter

  INT BE ---- - DESQview/X - ???

INT BF - IBM ROM BASIC - used while in interpreter

  INT BF ---- - IBM ROM BASIC - used while in interpreter

INT C0 - IBM ROM BASIC - used while in interpreter

  INT C0 ---- - IBM ROM BASIC - used while in interpreter

  INT C0 ---- - AMI BIOS - DRIVE 0 DATA

INT C1 - IBM ROM BASIC - used while in interpreter

  INT C1 ---- - IBM ROM BASIC - used while in interpreter

  INT C1 ---- - AMI BIOS - DRIVE 0 DATA

INT C2 - IBM ROM BASIC - used while in interpreter

  INT C2 ---- - IBM ROM BASIC - used while in interpreter

  INT C2 ---- - AMI BIOS - DRIVE 0 DATA

INT C3 - IBM ROM BASIC - used while in interpreter

  INT C3 ---- - IBM ROM BASIC - used while in interpreter

  INT C3 ---- - AMI BIOS - DRIVE 0 DATA

INT C4 - IBM ROM BASIC - used while in interpreter

  INT C4 ---- - IBM ROM BASIC - used while in interpreter

  INT C4 ---- - AMI BIOS - DRIVE 1 DATA

INT C5 - IBM ROM BASIC - used while in interpreter

  INT C5 ---- - IBM ROM BASIC - used while in interpreter

  INT C5 ---- - AMI BIOS - DRIVE 1 DATA

INT C6 - IBM ROM BASIC - used while in interpreter

  INT C6 ---- - IBM ROM BASIC - used while in interpreter

  INT C6 ---- - APL*PLUS/PC - IDENTICAL TO INT 86

  INT C6 ---- - AMI BIOS - DRIVE 1 DATA

INT C7 - IBM ROM BASIC - used while in interpreter

  INT C7 ---- - IBM ROM BASIC - used while in interpreter

  INT C7 ---- - APL*PLUS/PC - ???

  INT C7 ---- - AMI BIOS - DRIVE 1 DATA

INT C8 - IBM ROM BASIC - used while in interpreter

  INT C8 ---- - IBM ROM BASIC - used while in interpreter

  INT C8 ---- - APL*PLUS/PC - IDENTICAL TO INT 88

INT C9 - IBM ROM BASIC - used while in interpreter

  INT C9 ---- - IBM ROM BASIC - used while in interpreter

  INT C9 ---- - APL*PLUS/PC - ???

INT CA - IBM ROM BASIC - used while in interpreter

  INT CA ---- - IBM ROM BASIC - used while in interpreter

  INT CA ---- - APL*PLUS/PC - PRINT SCREEN

INT CB - IBM ROM BASIC - used while in interpreter

  INT CB ---- - IBM ROM BASIC - used while in interpreter

  INT CB ---- - APL*PLUS/PC - BEEP

INT CC - IBM ROM BASIC - used while in interpreter

  INT CC ---- - IBM ROM BASIC - used while in interpreter

  INT CC ---- - APL*PLUS/PC - CLEAR SCREEN MEMORY

INT CD - IBM ROM BASIC - used while in interpreter

  INT CD ---- - IBM ROM BASIC - used while in interpreter

  INT CD ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT CE - IBM ROM BASIC - used while in interpreter

  INT CE ---- - IBM ROM BASIC - used while in interpreter

  INT CE ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT CF - IBM ROM BASIC - used while in interpreter

  INT CF ---- - IBM ROM BASIC - used while in interpreter

  INT CF ---- - APL*PLUS/PC - DEFAULT LOW-RESOLUTION TIMER FOR QUAD MF FUNCTION

INT D0 - IBM ROM BASIC - used while in interpreter

  INT D0 ---- - IBM ROM BASIC - used while in interpreter

  INT D0 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT D0 ---- - [not a vector!] - NJFRERAM SIGNATURE VECTOR

INT D1 - IBM ROM BASIC - used while in interpreter

  INT D1 ---- - IBM ROM BASIC - used while in interpreter

  INT D1 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D2 - IBM ROM BASIC - used while in interpreter

  INT D2 ---- - IBM ROM BASIC - used while in interpreter

  INT D2 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D3 - IBM ROM BASIC - used while in interpreter

  INT D3 ---- - IBM ROM BASIC - used while in interpreter

  INT D3 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT D3 ---- - VIRUS - "Antiexe" - RELOCATED INT 13

INT D4 - IBM ROM BASIC - used while in interpreter

  INT D4 ---- - IBM ROM BASIC - used while in interpreter

  INT D4 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT D4 00-- - PC-MOS/386 v5.01 - OBSOLETE FUNCTIONS

  INT D4 02-- - PC-MOS/386 v3.0+ - GET SYSTEM CONTROL BLOCK POINTER

  INT D4 03-- - PC-MOS/386 v5.01 - GET/SET EXTENDED DIRECTORY INFORMATION

  INT D4 04-- - PC-MOS/386 v3.0+ - GET TASK CONTROL BLOCK

  INT D4 07-- - PC-MOS/386 v3.0+ - WAIT FOR EVENT

  INT D4 10-- - PC-MOS/386 v3.0+ - ENTER/LEAVE NATIVE 386 EXECUTION MODE

  INT D4 11-- - PC-MOS/386 v3.0+ - ALLOCATE NATIVE MODE MEMORY BLOCK

  INT D4 12-- - PC-MOS/386 v3.0+ - FREE NATIVE MODE MEMORY BLOCK

  INT D4 13-- - PC-MOS/386 v5.01 - GET ALIAS FOR SELECTOR (NATIVE MODE ONLY)

  INT D4 16-- - PC-MOS/386 v5.01 - SET/CLEAR IRQ RESERVATION

  INT D4 19-- - PC-MOS/386 v5.01 - GET TASK ID

  INT D4 1A-- - PC-MOS/386 v5.01 - GET/SET TASK PRIORITY

  INT D4 1B-- - PC-MOS/386 v5.01 - GET/SET TIME SLICE

  INT D4 1C-- - PC-MOS/386 v5.01 - GET/SET KEYBOARD MODE

  INT D4 1D-- - PC-MOS/386 v5.01 - GET CURRENT PROGRAM NAME

  INT D4 1E-- - PC-MOS/386 v5.01 - GET CURRENT USERNAME AND SECURITY CLASS

  INT D4 1F-- - PC-MOS/386 v5.01 - GET TASK PARTITION INFORMATION

  INT D4 20-- - PC-MOS/386 v5.01 - GET PORT AND BAUDRATE INFORMATION

  INT D4 21-- - PC-MOS/386 v5.01 - REMOVE A TASK

  INT D4 22-- - PC-MOS/386 v5.01 - ADD A TASK TO THE SYSTEM

  INT D4 23-- - PC-MOS/386 v5.01 - CHANGE TERMINAL DRIVER

  INT D4 24-- - PC-MOS/386 v5.01 - GET OPERATING SYSTEM SERIAL NUMBER

  INT D4 25-- - PC-MOS/386 v5.01 - IDENTIFY LOAD ADDRESS OF DEVICE DRIVER LOCATION

  INT D4 26-- - PC-MOS/386 v5.01 - GET SYSTEM CONTROL BLOCK SEGMENT/SELECTOR

  INT D4 27-- - PC-MOS/386 v5.01 - GET TASK CONTROL BLOCK SEGMENT/SELECTOR

  INT D4 28-- - PC-MOS/386 v5.01 - GET CONTROL BLOCK DATA FROM SCB OR TCB

  INT D4 29-- - PC-MOS/386 v5.01 - WRITE CONTROL BLOCK DATA INTO SCB OR TCB

  INT D4 2A-- - PC-MOS/386 v5.01 - SWAP CONTROL BLOCK DATA OF SCB OR TCB

  INT D4 2C-- - PC-MOS/386 v5.01 - GET/SET SPOOLER PARAMETERS

  INT D4 2D-- - PC-MOS/386 v5.01 - GET MAXIMUM TASK SIZE

INT D5 - IBM ROM BASIC - used while in interpreter

  INT D5 ---- - IBM ROM BASIC - used while in interpreter

  INT D5 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D6 - IBM ROM BASIC - used while in interpreter

  INT D6 ---- - IBM ROM BASIC - used while in interpreter

  INT D6 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D7 - IBM ROM BASIC - used while in interpreter

  INT D7 ---- - IBM ROM BASIC - used while in interpreter

  INT D7 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

INT D8 - IBM ROM BASIC - used while in interpreter

  INT D8 ---- - IBM ROM BASIC - used while in interpreter

  INT D8 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT D8 ---- - Screen Thief v1.00 - RELOCATED IRQ0

INT D9 - IBM ROM BASIC - used while in interpreter

  INT D9 ---- - IBM ROM BASIC - used while in interpreter

  INT D9 ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT D9 ---- - Screen Thief v1.00 - RELOCATED IRQ1

INT DA - IBM ROM BASIC - used while in interpreter

  INT DA ---- - IBM ROM BASIC - used while in interpreter

  INT DA ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT DA ---- - Screen Thief v1.00 - RELOCATED IRQ2

INT DB - IBM ROM BASIC - used while in interpreter

  INT DB ---- - IBM ROM BASIC - used while in interpreter

  INT DB ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT DB ---- - Screen Thief v1.00 - RELOCATED IRQ3

INT DC - IBM ROM BASIC - used while in interpreter

  INT DC ---- - PC/370 v4.1- - API

  INT DC ---- - IBM ROM BASIC - used while in interpreter

  INT DC ---- - STSC APL*PLUS/PC - MAY BE USED IN FUTURE RELEASES

  INT DC ---- - Screen Thief v1.00 - RELOCATED IRQ4

INT DD - IBM ROM BASIC - used while in interpreter

  INT DD ---- - IBM ROM BASIC - used while in interpreter

  INT DD ---- - STSC APL*PLUS/PC v9.0 - PLACE KEYSTROKE EVENTS IN INPUT BUFFER

  INT DD ---- - Screen Thief v1.00 - RELOCATED IRQ5

INT DE - IBM ROM BASIC - used while in interpreter

  INT DE ---- - IBM ROM BASIC - used while in interpreter

  INT DE ---- - APL*PLUS/PC - ???

  INT DE ---- - Screen Thief v1.00 - RELOCATED IRQ6

INT DF - IBM ROM BASIC - used while in interpreter

  INT DF ---- - Victor 9000/Sirius 1 - SuperBIOS

  INT DF ---- - IBM ROM BASIC - used while in interpreter

  INT DF ---- - APL*PLUS/PC - SAME AS INT 10

  INT DF ---- - Screen Thief v1.00 - RELOCATED IRQ7

INT E0 - IBM ROM BASIC - used while in interpreter; multiple purposes

  INT E0 ---- - IBM ROM BASIC - used while in interpreter

  INT E0 ---- - APL*PLUS/PC - RESTIME HIGH-RESOLUTION TIMER FOR QUAD MF FUNCTION

  INT E0 ---- - VIRUS - "Micro-128" - ???

  INT E0 ---- - DeskMate (Tandy) - DESK EXECUTIVE API

  INT E0 ---- - CP/M-86, Concurrent CP/M, DR Multiuser DOS - FUNCTION CALLS

  INT E0 ---- - DR Multiuser DOS - "A_READ" - READ CHARACTER FROM AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_WRITE" - WRITE CHARACTER TO AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_STATIN" - GET INPUT STATUS OF AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_STATOUT" - GET OUTPUT STATUS OF AUX DEVICE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "S_MEMORY" - RESERVE MEMORY IN GLOBAL AREA

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_MAKE" - CREATE MESSAGE QUEUE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_OPEN" - OPEN MESSAGE QUEUE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_READ" - READ MESSAGE QUEUE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_CREAD" - CONDITIONALLY READ MSG QUEUE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_WRITE" - WRITE MESSAGE QUEUE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "Q_CWRITE" - CONDITIONALLY WRITE MSG QUEUE

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "P_DISPATCH" - CALL DISPATCHER

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "P_PRIORITY" - SET PROCESS PRIORITY

  INT E0 ---- - ConcCP/M,DR Multiuser DOS - "C_DETACH" - DETACH FROM DEFAULT CONSOLE

  INT E0 ---- - DR Multiuser DOS - "A_ATTACH" - ATTACH AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_DETACH" - DETACH FROM AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_CATTACH" - CONDITIONALLY ATTACH TO AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_SET" - SET DEFAULT AUX DEVICE NUMBER

  INT E0 ---- - DR Multiuser DOS - "A_GET" - GET DEFAULT AUX DEVICE NUMBER

  INT E0 ---- - DR Multiuser DOS - "A_READBLK" - READ STRING FROM AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_WRITEBLK" - WRITE STRING TO AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "A_CONFIG" - GET/SET AUX DEVICE PARAMETERS

  INT E0 ---- - DR Multiuser DOS - "A_CONTROL" - GET/SET AUX CONTROL PARAMETERS

  INT E0 ---- - DR Multiuser DOS - "A_BREAK" - SEND BREAK TO AUX DEVICE

  INT E0 ---- - DR Multiuser DOS - "P_DELAY" - DELAY EXECUTION

  INT E0 0000 - PCROBOTS v1.41 - "SWAPTASK" - END CURRENT ROBOT'S TURN

  INT E0 0001 - PCROBOTS v1.41 - "MOVEMENT" - START MOVING

  INT E0 0002 - PCROBOTS v1.41 - "SCAN" - SCAN FOR OTHER ROBOTS IN THE GIVEN DIRECTION

  INT E0 0003 - PCROBOTS v1.41 - "SHOOT" - FIRE A SHELL AT ANOTHER ROBOT

  INT E0 0010 - PCROBOTS v1.41 - "GETXY" - GET ROBOT'S CURRENT POSITION

  INT E0 0011 - PCROBOTS v1.41 - "TRANSMIT" - SEND DATA TO ANOTHER ROBOT

  INT E0 0012 - PCROBOTS v1.41 - "RECEIVE" - GET DATA FROM OTHER ROBOTS

  INT E0 0013 - PCROBOTS v1.41 - "DAMAGE" - DETERMINE HOW MUCH DAMAGE SUSTAINED

  INT E0 0014 - PCROBOTS v1.41 - "SPEED" - DETERMINE HOW FAST ROBOT IS MOVING

  INT E0 0015 - PCROBOTS v1.41 - "BATTERY" - DETERMINE HOW MUCH BATTERY POWER LEFT

  INT E0 0016 - PCROBOTS v1.41 - "TICKS" - DETERMINE HOW LONG SINCE GAME STARTED

  INT E0 0017 - PCROBOTS v1.41 - "L_SIN" - GET SCALED SINE OF AN ANGLE

  INT E0 0018 - PCROBOTS v1.41 - "L_COS" - GET SCALED COSINE OF AN ANGLE

  INT E0 0019 - PCROBOTS v1.41 - "L_TAN" - GET SCALED TANGENT OF AN ANGLE

  INT E0 001A - PCROBOTS v1.41 - "L_ATAN" - GET ANGLE GIVEN SCALED TANGENT

  INT E0 001B - PCROBOTS v1.41 - "SQRT" - DETERMINE SQUARE ROOT OF A NUMBER

  INT E0 001C - PCROBOTS v1.41 - "SET_PATTERN" - SPECIFY ROBOT'S DISPLAY IMAGE

  INT E0 001D - PCROBOTS v1.41 - "DEBUG_FLAG" - SET/CLEAR MARKERS NEXT TO ROBOT'S NAME

  INT E0 001E - PCROBOTS v1.41 - "BUY_ARMOUR" - BUY OR SELL ARMOR FOR ROBOT

  INT E0 001F - PCROBOTS v1.41 - "BUY_SHELLS" - BUY ADDITIONAL CANNON SHELLS

  INT E0 0020 - PCROBOTS v1.41 - "SHELLS LEFT" - DETERMINE HOW MANY SHELLS ROBOT HAS

  INT E0 0021 - PCROBOTS v1.41 - "GET LOCAL MAP"

  INT E0 0022 - PCROBOTS v1.41 - "INVISIBILITY" - CONTROL ROBOT'S INVISIBILITY DEVICE

  INT E0 0023 - PCROBOTS v1.41 - "GET_SHELL_STATUS" - FIND OUT WHAT HAPPENED TO SHELL

  INT E0 0024 - PCROBOTS v1.41 - "IS_INVISIBLE" - DETERMINE WHETHER ROBOT IS INVISIBLE

  INT E0 0025 - PCROBOTS v1.41 - "L_ATAN2" - GET ARCTANGENT

  INT E0 0026 - PCROBOTS v1.41 - "GET_ROBOT_ID" - DETERMINE CURRENT ROBOT'S IDENTIFIER

  INT E0 0027 - PCROBOTS v1.41 - "REGISTER_IFF" - REGISTER FRIEND/FOE IDENT STRING

  INT E0 0028 - PCROBOTS v1.41 - "CHECK_IFF" - QUERY FRIEND/FOE IDENTIFICATION STRING

  INT E0 0029 - PCROBOTS v1.41 - "REGISTER_NAME" - SPECIFY ROBOT'S NAME

  INT E0 002A - PCROBOTS v1.41 - "FIND_NAME" - SEARCH FOR ROBOT WITH GIVEN NAME

  INT E0 002B - PCROBOTS v1.41 - "GET_TEAM_ID" - DETERMINE TEAM MEMBERSHIP OF ROBOT

  INT E0 002C - PCROBOTS v1.41 - "GET_ASHELL_STATUS" - FIND OUT WHAT HAPPENED TO SHELL

  INT E0 002D - PCROBOTS v1.41 - "REGISTER_X" - SELECT AUTOMATIC X POSITION UPDATES

  INT E0 002E - PCROBOTS v1.41 - "REGISTER_Y" - SELECT AUTOMATIC Y POSITION UPDATES

  INT E0 0080 - PCROBOTS v1.41 - "CONFIGURE" - CUSTOMIZE ROBOT

INT E1 - IBM ROM BASIC - used while in interpreter

  INT E1 ---- - IBM ROM BASIC - used while in interpreter

  INT E1 ---- - PC Cluster Disk Server Information (NOT A VECTOR!)

  INT E1 ---- - MP/M-86, - ALTERNATE CP/M-86 FUNCTION CALLS

  INT E1 ---- - DeskMate (Tandy) - TASK DATA SEGMENTS (NOT A VECTOR!)

INT E2 - IBM ROM BASIC - used while in interpreter

  INT E2 ---- - IBM ROM BASIC - used while in interpreter

  INT E2 ---- - PC Cluster Program - RELOCATED INT 1C

INT E3 - IBM ROM BASIC - used while in interpreter

  INT E3 ---- - IBM ROM BASIC - used while in interpreter

INT E4 - IBM ROM BASIC - used while in interpreter

  INT E4 0005 - Logitech Modula v2.0 - MonitorEntry

  INT E4 0006 - Logitech Modula v2.0 - MonitorExit

  INT E4 ---- - IBM ROM BASIC - used while in interpreter

INT E5 - IBM ROM BASIC - used while in interpreter

  INT E5 ---- - IBM ROM BASIC - used while in interpreter

INT E6 - IBM ROM BASIC - used while in interpreter

  INT E6 ---- - IBM ROM BASIC - used while in interpreter

  INT E6 00-- - Linux DOSEMU - INSTALLATION CHECK

  INT E6 01-- - Linux DOSEMU - REGISTER DUMP

  INT E6 02-- - Linux DOSEMU - SET I/O PORT PERMISSIONS

  INT E6 05-- - Linux DOSEMU - STARTUP BANNER

  INT E6 12-- - Linux DOSEMU - SET "HOGTHRESHOLD"

  INT E6 22-- - Linux DOSEMU - GET EMS STATUS

  INT E6 30-- - Linux DOSEMU - SET BOOTDISK FLAG

  INT E6 50-- - Linux DOSEMU - EXECUTE UNIX COMMAND

  INT E6 51-- - Linux DOSEMU - EXECUTE DOS COMMAND FROM UNIX

  INT E6 80-- - Linux DOSEMU - GET CURRENT UNIX DIRECTORY

  INT E6 81-- - Linux DOSEMU - CHANGE CURRENT UNIX DIRECTORY

  INT E6 FF-- - Linux DOSEMU - TERMINATE

INT E7 - IBM ROM BASIC - used while in interpreter

  INT E7 ---- - IBM ROM BASIC - used while in interpreter

INT E8 - IBM ROM BASIC - used while in interpreter

  INT E8 ---- - IBM ROM BASIC - used while in interpreter

INT E9 - IBM ROM BASIC - used while in interpreter

  INT E9 ---- - IBM ROM BASIC - used while in interpreter

INT EA - IBM ROM BASIC - used while in interpreter

  INT EA ---- - IBM ROM BASIC - used while in interpreter

INT EB - IBM ROM BASIC - used while in interpreter

  INT EB ---- - IBM ROM BASIC - used while in interpreter

INT EC - IBM ROM BASIC - used while in interpreter

  INT EC ---- - IBM ROM BASIC - used while in interpreter

  INT EC ---- - used by Alloy NTNX

  INT EC ---- - Exact - RUNTIME INTERFACE MULTIPLEXOR

INT ED - IBM ROM BASIC - used while in interpreter

  INT ED ---- - IBM ROM BASIC - used while in interpreter

INT EE - IBM ROM BASIC - used while in interpreter

  INT EE ---- - IBM ROM BASIC - used while in interpreter

INT EF - BASIC - ORIGINAL INT 09 VECTOR

  INT EF ---- - BASIC - ORIGINAL INT 09 VECTOR

  INT EF ---- - GEM - INTERFACE

INT F0 - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR

  INT F0 ---- - BASICA.COM, GWBASIC, compiled BASIC - ORIGINAL INT 08 VECTOR

INT F1 - reserved for user interrupt

  INT F1 ---- - reserved for user interrupt

  INT F1 ---- - SPEECH.COM - CONVERT TEXT STRING TO SPEECH

  INT F1 ---- - Andy C. McGuire SPEECH.COM/SAY.COM

  INT F1 ---- - AQUEDUCT, PIPELINE - GET DATA AREA ADDRESS

  INT F1 ---- - NetWare Remote Boot - INSTALLATION CHECK (NOT A VECTOR!)

  INT F1 ---- - VIRUS - "Violetta" - ???

  INT F1 01-- - Common ISDN API (CAPI) v1.1 - "API-REGISTER" - INITIALIZE CAPI

  INT F1 --01 - Common ISDN API (CAPI) v2.0 - "CAPI_REGISTER" - INITIALIZE CAPI

  INT F1 02-- - Common ISDN API (CAPI) v1.1 - "API-RELEASE" - UNREGISTER FROM CAPI

  INT F1 --02 - Common ISDN API (CAPI) v2.0 - "CAPI_RELEASE" - UNREGISTER FROM CAPI

  INT F1 03-- - Common ISDN API (CAPI) v1.1 - "API-PUT-MESSAGE"

  INT F1 --03 - Common ISDN API (CAPI) v2.0 - "CAPI_PUT_MESSAGE"

  INT F1 04-- - Common ISDN API (CAPI) v1.1 - "API-GET-MESSAGE"

  INT F1 --04 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_MESSAGE"

  INT F1 05-- - Common ISDN API (CAPI) v1.1 - "API-SET-SIGNAL" - SIGNAL HANDLING

  INT F1 --05 - Common ISDN API (CAPI) v2.0 - "CAPI_SET_SIGNAL" - SIGNAL HANDLING

  INT F1 06-- - Common ISDN API (CAPI) v1.1 - "API-DEINSTALL" - UNINSTALL

  INT F1 F0-- - Common ISDN API (CAPI) v1.1 - "API-GET-MANUFACTURER"

  INT F1 --F0 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_MANUFACTURER"

  INT F1 F1-- - Common ISDN API (CAPI) v1.1 - "API-GET-VERSION"

  INT F1 --F1 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_VERSION"

  INT F1 F2-- - Common ISDN API (CAPI) v1.1 - "API-GET-SERIAL-NUMBER"

  INT F1 --F2 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_SERIAL_NUMBER"

  INT F1 --F3 - Common ISDN API (CAPI) v2.0 - "CAPI_GET_PROFILE" - GET CAPABILITIES

  INT F1 FF-- - Common ISDN API (CAPI) v1.1 - "API-MANUFACTURER" - VENDOR-SPECIFIC

  INT F1 --FF - Common ISDN API (CAPI) v2.0 - "CAPI_MANUFACTURER" - VENDOR-SPECIFIC

INT F2 - reserved for user interrupt

  INT F2 ---- - reserved for user interrupt

  INT F2 ---- - Andy C. McGuire SPEECH.COM/SAY.COM

  INT F2 ---- - NetWare Remote Boot - ORIGINAL INT 13

  INT F2 ---- - ICCTSR 1.0 - ImageCapture COLOR Developer's Kit - API

INT F3 - reserved for user interrupt

  INT F3 ---- - reserved for user interrupt

  INT F3 ---- - SoundBlaster - POINTER TO ECHO VALUE

  INT F3 ---- - ICCTSR 1.0 - HANDSHAKE ID VECTOR

  INT F3 ---- - NetWare Remote Boot - BOOT ROM'S INT 13 HANDLER

INT F4 - reserved for user interrupt

  INT F4 ---- - reserved for user interrupt

  INT F4 ---- - DoubleDOS - GIVE UP REST OF CURRENT CLOCK TICK AND ALL OF NEXT TICK

  INT F4 ---- - NetWare Remote Boot - ???

INT F5 - reserved for user interrupt

  INT F5 ---- - reserved for user interrupt

  INT F5 ---- - DoubleDOS - ???

INT F6 - reserved for user interrupt

  INT F6 ---- - reserved for user interrupt

  INT F6 ---- - DoubleDOS - ???

INT F7 - reserved for user interrupt

  INT F7 ---- - reserved for user interrupt

  INT F7 ---- - DoubleDOS - ???

  INT F7 00-- - FSBBS 2.0 - CONFIGURATION RECORD

  INT F7 01-- - FSBBS 2.0 - USER RECORD

  INT F7 02-- - FSBBS 2.0 - GET ACCOUNT NAME

  INT F7 03-- - FSBBS 2.0 - TERMINAL NUMBER

  INT F7 04-- - FSBBS 2.0 - PASSDATA BUFFER

  INT F7 05-- - FSBBS 2.0 - TIMER FUNCTIONS

  INT F7 06-- - FSBBS 2.0 - FUNCTION AVAILABILITY

  INT F7 07-- - FSBBS 2.0 - DUMP FUNCTIONS

INT F8 - reserved for user interrupt

  INT F8 ---- - reserved for user interrupt

  INT F8 ---- - Sanyo MBC-550 - IRQ0 - 100 HZ INTERRUPT

  INT F8 ---- - DoubleDOS - ???

INT F9 - reserved for user interrupt

  INT F9 ---- - reserved for user interrupt

  INT F9 ---- - DoubleDOS - ???

  INT F9 ---- - Sanyo MBC-550 - IRQ1 - ???

INT FA - reserved for user interrupt

  INT FA ---- - reserved for user interrupt

  INT FA ---- - Sanyo MBC-550 - IRQ2 - SERIAL PORT USART INTERRUPT

  INT FA ---- - DoubleDOS - TURN OFF TIMESHARING

INT FB - reserved for user interrupt

  INT FB ---- - reserved for user interrupt

  INT FB ---- - Sanyo MBC-550 - IRQ3 - KEYBOARD USART RECEIVE INTERRUPT

  INT FB ---- - DoubleDOS - TURN ON TIMESHARING

INT FC - reserved for user interrupt

  INT FC ---- - reserved for user interrupt

  INT FC ---- - DoubleDOS - GET CURRENT SCREEN BUFFER ADDRESS

  INT FC ---- - Sanyo MBC-550 - IRQ4 - ???

INT FD - reserved for user interrupt

  INT FD ---- - reserved for user interrupt

  INT FD ---- - DoubleDOS - ???

  INT FD ---- - Sanyo MBC-550 - IRQ5 - ???

  INT FD ---- - TFPCX - INSTALLATION CHECK

  INT FD 01-- - TFPCX - TEST FOR CHARACTER WAITING

  INT FD 02-- - TFPCX - GET CHARACTER

  INT FD 03-- - TFPCX - OUTPUT CHARACTER

  INT FD FE-- - TFPCX - GET VERSION

INT FE - AT/XT286/PS50+ - destroyed by return from protected mode

  INT FE ---- - AT/XT286/PS50+ - destroyed by return from protected mode

  INT FE ---- - DoubleDOS - GIVE UP TIME

  INT FE ---- - Turbo Debugger 8086 v2.5+ - OVERLAY MANAGER

  INT FE ---- - Sanyo MBC-550 - IRQ6 - ???

INT FF - AT/XT286/PS50+ - destroyed by return from protected mode

  INT FF ---- - AT/XT286/PS50+ - destroyed by return from protected mode

  INT FF ---- - Z100 - WARM BOOT

  INT FF ---- - Sanyo MBC-550 - IRQ7 - ???

  INT FF ---- - QEMM-386.SYS v6.0+ - internal

  INT FF ---- - VIRUS - "Violetta" - ???

  INT FF ---- - PC/FORTH - GRAPHICS API - VIDEO STATUS CHANGE

  INT FF ---- - PC/FORTH - GRAPHICS API

Notes

  Admin

  FILELIST

  CONTACT_INFO


Tables

Tab# INT Func Title

0001  03 0912 Values for Soft-ICE breakpoint type:

0002  03 0913 Format of Soft-ICE breakpoint structure:

0003  03 0913 Values for Soft-ICE breakpoint type:

0004  03 0913 Values for Soft-ICE breakpoint mode:

0005  09 ---- Values for keyboard make/break (scan) code:

0006  0C ---- Call the System 36/38 emulator API entry point with:

0007  0C ---- Format of System 36/38 emulator's data area:

0008  10 00-- Bitfields for ATI additional feature flags:

0009  10 00-- Values for video mode:

0010  10 0070 Values for Everex video mode:

0011  10 007F Format of Paradise VGA list entry:

0012  10 01-- Bitfields for cursor start and options:

0013  10 08-- Bitfields for character's display attribute:

0014  10 08-- Values for character color:

0015  10 0F56 Format of record for VUIMAGE Function 04h:

0016  10 1000 Values for attribute register number:

0017  10 1002 Format of palette register list:

0018  10 10F1 Values for type of DAC:

0019  10 11-- Bitfields for block specifier:

0020  10 1130 Format of alternate font table [array]:

0021  10 12-- Bitfields for feature connector bits:

0022  10 12-- Bitfields for switch settings:

0023  10 12-- Values for switch settings on original EGA/VGA:

0024  10 12-- Format of Trident BIOS Info structure:

0025  10 12-- Bitfields for XGA mainframe type character attributes:

0026  10 12-- Bitfields for status flags:

0027  10 12-- Format of ATI VGA Wonder video mode table:

0028  10 12-- Values for Cirrus Logic video controller type:

0029  10 12-- Bitfields for Cirrus Logic user options word:

0030  10 12-- Bitfields for Cirrus Logic options word 1:

0031  10 12-- Bitfields for Cirrus Logic options word 2:

0032  10 12-- Values for Cirrus Logic monitor ID:

0033  10 13-- Bitfields for DOS/V second extended attribute byte:

0034  10 15-- Values for PC Convertible alternate display adapter type:

0035  10 15-- Format of PC Convertible display parameter table:

0036  10 1A00 Values for display combination code:

0037  10 1B-- Format of MCGA+ state information:

0038  10 1B-- Bitfields for miscellaneous flags:

0039  10 1B-- Bitfields for save pointer state flags:

0040  10 1B-- Format of Static Functionality Table:

0041  10 1B-- Bitfields for miscellaneous function support flags:

0042  10 1B-- Bitfields for save pointer function flags:

0043  10 1C-- Bitfields for requested states:

0044  10 1C-- Format of VGA video hardware state:

0045  10 1C-- Format of VGA DAC state:

0046  10 1D-- Format of SpeedSTAR Plus sync table:

0047  10 1F01 Format of XGA DMQS buffer:

0048  10 3000 Format of 3270 PC configuration table:

0049  10 3000 Values for 3270 PC monitor type:

0050  10 3000 Bitfields for 3270 PC function flags 1:

0051  10 3000 Format of Control Program Level table:

0052  10 3800 Format of Tinytalk Personal configuration info:

0053  10 4B-- Values for FRIEZE function status:

0054  10 4B-- Format of FRIEZE parameter table:

0055  10 4E00 Format of XGA information buffer:

0056  10 4E00 Bitfields for XGA environment flags:

0057  10 4E01 Format of XGA subsystem information:

0058  10 4E01 Bitfields for XGA capabilities:

0059  10 4E02 Format of XGA mode information:

0060  10 4E02 Bitfields for XGA mode attributes:

0061  10 4E02 Values for XGA video memory model:

0062  10 4E05 Bitfields for XGA Feature Connector State:

0063  10 4F00 Format of SuperVGA information:

0064  10 4F00 Bitfields for VESA capabilities:

0065  10 4F01 Format of VESA SuperVGA mode information:

0066  10 4F01 Bitfields for VESA SuperVGA mode attributes:

0067  10 4F01 Bitfields for VESA SuperVGA window attributes:

0068  10 4F01 Values for VESA SuperVGA memory model type:

0069  10 4F02 Values for VESA video mode:

0070  10 4F02 Values for S3 OEM video mode:

0071  10 4F04 Bitfields for VESA SuperVGA states to save/restore:

0072  10 4F09 Format of VESA VBE palette entry:

0073  10 4F0A Values for VESA VBE protected-mode function identifiers:

0074  10 4F10 Bitfields for VESA VBE/PM supported power states:

0075  10 4F10 Values for VESA VBE/PM power state:

0076  10 4F13 Format of GeneralDeviceClass structure:

0077  10 4F13 Format of WAVE Info Structure:

0078  10 4F13 Bitfields for Wave feature bits:

0079  10 4F13 Values for Sample data size:

0080  10 4F13 Format of WAVE Audio Services structure:

0081  10 4F13 Values for type of compression:

0082  10 4F13 Format of MIDI Info Structure:

0083  10 4F13 Bitfields for MIDI feature bits:

0084  10 4F13 Format of MIDI Service structure:

0085  10 4F13 Values for MIDI Registered Patch Types:

0086  10 4F13 Format of Volume Info Structure:

0087  10 4F13 Bitfields for Volume feature bits:

0088  10 4F13 Format of Volume Services Structure:

0089  10 5555 Format of ATI Super Switch data area:

0090  10 5F00 Bitfields for Chips&Technologies chip type:

0091  10 5F00 Bitfields for Chips&Technologies miscellaneous information:

0092  10 5F01 Values for Chips&Technologies emulation type:

0093  10 5F03 Bitfields for Chips&Technologies display mode:

2710  10 5F50 Bitfields for display status:

0094  10 5F-- Bitfields for Chips&Technologies state mask:

0095  10 66-- Bitfields for HUNTER 16 control bits:

0096  10 6F01 Values for monitor type code (HP Extended BIOS):

0097  10 6F01 Bitfields for status register information:

0098  10 6F02 Bitfields for HP Vectra extended control register:

0099  10 6F05 Values for Video7/VEGA video mode:

0100  10 70-- Format of HUNTER 16 control block:

0101  10 7000 Values for Everex monitor type:

0102  10 7000 Bitfields for Everex feature bits:

0103  10 7000 Values for board model for Trident-based Everex cards:

0104  10 7000 Values for Everex mode type:

0105  10 7000 Format of Everex mode information record:

0106  10 7000 Bitfields for Everex info bits:

0107  10 71-- Format of HUNTER 16 control block:

0108  10 77-- Values for HUNTER 16 graphics font number:

0109  10 7F00 Format of SOLLEX SuperVGA info structure:

0110  10 7F00 Format of SOLLEX SuperVGA ResInfo:

0111  10 7F00 Format of SOLLEX SuperVGA font info table [array] entry:

0112  10 7F00 Values for SOLLEX SuperVGA clock value index:

0113  10 7F01 Bitfields for SOLLEX SuperVGA adapter request:

0114  10 7F01 Bitfields for SOLLEX SuperVGA display type:

0115  10 7F02 Bitfields for SOLLEX SuperVGA display output setting:

0116  10 7F02 Bitfields for SOLLEX SuperVGA displays attached:

0117  10 7F05 Format of SOLLEX SuperVGA register value table:

0118  10 91-- Values for Alloy MW386 video adapter type:

0119  10 BF03 Values for Compaq video master mode:

0120  10 BF03 Bitfields for Compaq switchable VDU modes support:

0121  10 BF03 Values for Compaq monitor type:

0122  10 BF11 Bitfields for Compaq advanced video functionality:

0123  10 BF12 Bitfields for function mask:

0124  10 CD02 Format of UltraVision palette register list:

0125  10 CD02 Format of UltraVision v2+ current font names table:

0126  10 CD02 Format of UltraVision v1.x current font names table:

0127  10 CD04 Values for UltraVision video mode number:

0128  10 CD07 Values for hardware underline status:

0129  10 F0-- Values for group index:

0130  10 F4-- Format of EGA RIL entries in table of register records:

0131  10 FF-- Values for GO32 video mode number:

0132  11 ---- Bitfields for BIOS equipment list:

0133  11 ---- Values for SDLP command:

0134  11 ---- Bitfields for SDLP SCSI addressing:

0135  11 0225 Values for Blank-It hotkey scan code:

0136  11 FF-- Bitfields for SDLP SCSI addressing:

0137  12 FFFE Format of Back&Forth task info buffer:

0138  12 FFFE Format of Back&Forth Professional BF_SPAWN record:

0139  12 FFFE Format of Back&Forth Professional BF_TASK record:

0140  13 01-- Values for disk operation status:

0141  13 05-- Format of floppy format address field buffer entry (one per sector in track):

0142  13 05-- Format of Future Domain SCSI mode select data:

0143  13 06-- Bitfields for Future Domain SCSI defect list info:

0144  13 06-- Format of Future Domain SCSI defect table A:

0145  13 06-- Format of Future Domain SCSI defect table B:

0146  13 06-- Format of Future Domain SCSI defect table C:

0147  13 06-- Format of Future Domain SCSI defect list entry:

0148  13 08-- Values for diskette drive type:

0149  13 1700 Format of Future Domain SCSI inquiry information block:

0150  13 1700 Values for Future Domain SCSI peripheral device type:

0151  13 1700 Values for Future Domain SCSI peripheral qualifier:

0152  13 1700 Bitfields for Future Domain SCSI version:

0153  13 1700 Bitfields for Future Domain SCSI data format/capabilities:

0154  13 1700 Bitfields for Future Domain SCSI device capabilities:

0155  13 18-- Values for Future Domain SCSI controller family code:

0156  13 1A-- Bitfields for ESDI format modifiers:

0157  13 1A-- Format of defect table entry [array]:

0158  13 1B-- Format of Future Domain SCSI disk information block:

0159  13 1B-- Bitfields for Future Domain SCSI device physical information:

0160  13 1C08 Format of ESDI Command Complete Status Block:

0161  13 1C08 Values for ESDI command error code:

0162  13 1C08 Values for ESDI command status code:

0163  13 1C08 Values for ESDI device error code, group 1:

0164  13 1C08 Bitfields for ESDI device error flags, group 2:

0165  13 1C09 Format of ESDI Device Status Block:

0166  13 1C0A Format of ESDI Drive Configuration Status Block:

0167  13 1C0B Format of ESDI Controller Configuration Status Block:

0168  13 1C0C Format of ESDI POS Information Status Block:

0169  13 1D-- Format of IBMCACHE.SYS status record:

0170  13 1D-- Format of IBMCACHE.SYS error list:

0171  13 20-- Values for Compaq diskette media type:

0172  13 23-- Values for PS/1 hard disk feature number:

0173  13 25-- Format of drive information block:

0174  13 25-- Bitfields for general drive configuration:

0175  13 30-- Format of QUICKCACHE II system info:

0176  13 30-- Format of QUICKCACHE II drive info [16-element array, one element]:

0177  13 41-- Bitfields for IBM/MS INT 13 Extensions API support bitmap:

0178  13 42-- Format of disk address packet:

0179  13 48-- Format of IBM/MS INT 13 Extensions drive parameters:

0180  13 48-- Bitfields for IBM/MS INT 13 Extensions information flags:

0181  13 48-- Format of Phoenix Enhanced Disk Drive Spec translated drive parameter table:

0182  13 48-- Format of Phoenix Enhanced Disk Drive Spec fixed disk param table extension:

0183  13 48-- Bitfields for Phoenix Enhanced Disk Drive Spec drive flags:

0184  13 48-- Bitfields for Phoenix Enhanced Disk Drive Spec drive options:

0185  13 5503 Bitfields for DTQ byte:

0186  13 59-- Format of SyQuest SCSI structure:

0187  13 59-- Values for SCSI opcode:

0188  13 7B00 Format of NOW! information record:

0189  13 80-- Values for FAST! function:

0190  13 80-- Format of FAST! request packet:

0191  13 80-- Values for FAST! v4.04-v5.03 signature string:

0192  13 8001 Format of FAST! request packet:

0193  13 8001 Format of FAST! cache information (v5.00-5.03):

0194  13 8001 Bitfields for FAST! flags1:

0195  13 8006 Format of FAST! request packet:

0196  13 8007 Format of FAST! request packet:

0197  14 00-- Bitfields for serial port parameters:

0198  14 00-- Bitfields for FOSSIL RS-232 status:

0199  14 00-- Bitfields for MBBIOS port parameters:

0200  14 00-- Values for Connection Manager return code:

0201  14 03-- Bitfields for serial line status:

0202  14 03-- Bitfields for modem status:

0203  14 03-- Bitfields for Connection Manager line status:

0204  14 04-- Values for serial port parity:

0205  14 04-- Values for serial port word length:

0206  14 04-- Values for serial port bps rate:

0207  14 04-- Bitfields for Digiboard initializing parameters:

0208  14 04-- Format of Connection Manager protocol command vector:

0209  14 04-- Values for Connection Manager subvector type code:

0210  14 04-- Format of Connection Manager subvector:

0211  14 04-- Format of Connection ID subvector:

0212  14 04-- Format of Destination ID subvector:

0213  14 04-- Format of Asynchronous line parameters subvector:

0214  14 04-- Format of Data transfer parameters subvector:

0215  14 04-- Format of Line speed subvector:

0216  14 04-- Format of Serial coding subvector:

0217  14 04-- Format of Packet size subvector:

0218  14 04-- Format of Timers subvector:

0219  14 04-- Format of Special characters subvector:

0220  14 04-- Format of Target ID:

0221  14 04-- Format of Telephone number subvector:

0222  14 04-- Format of ASCII destination ID subvector:

0223  14 04-- Format of Parity subvector:

0224  14 04-- Bitfields for Connection Manager parity type:

0225  14 04-- Format of Bits per character subvector:

0226  14 04-- Format of Number of stop bits subvector:

0227  14 04-- Format of Packet timer and Intercharacter timer subvectors:

0228  14 04-- Format of Flags subvector:

0229  14 04-- Format of Parameter ranges subvector:

0230  14 04-- Format of Flow control subvector:

0231  14 05-- Bitfields for modem control register:

0232  14 05-- Bitfields for Digiboard protocol:

0233  14 05-- Bitfields for PC-MOS/386 serial port protocol:

0234  14 09-- Bitfields for MBBIOS option byte:

0235  14 0A-- Format of MBBIOS PACCOM buffer:

0236  14 0D-- Values for Digiboard CH_KEY_RDY flag:

0237  14 0F-- Bitfields for FOSSIL requested flow control:

0238  14 10-- Format of Connection Manager pattern/reply buffer:

0239  14 16-- Values for Digiboard CCB command number:

0240  14 1B-- Format of FOSSIL driver info:

0241  14 1E-- Values for X00 FOSSIL parity:

0242  14 1E-- Values for X00 FOSSIL word length:

0243  14 1E-- Values for X00 FOSSIL bps rate:

0244  14 1E-- Format of HUNTER 16 communications parameters:

0245  14 1E-- Bitfields for HUNTER 16 handshake:

0246  14 1F-- Bitfields for X00 FOSSIL modem control register:

0247  14 21-- Values for MultiDOS Plus status:

0248  14 23-- Bitfields for MW386 port mode:

0249  14 24-- Format of Alloy MW386 configuration table:

0250  14 24-- Values for Alloy MW386 baud rate:

0251  14 6F01 Bitfields for HP Vectra Extended BIOS serial port attributes:

0252  14 8000 Values for COMM-DRV error code:

0253  14 8000 Bitfields for state flag :

0254  14 8002 Format of ARTICOM redirector status:

0255  14 8003 Values for ARTICOM error codes:

0256  14 8004 Format of ARTICOM attachment structure:

0257  14 8006 Format of ARTICOM resource information structure:

0258  14 8007 Format of ARTICOM port information structure:

0259  14 8007 Values for ARTICOM baud rate:

0260  14 8008 Format of ARTICOM server name structure:

0261  14 8025 Values ARTICOM trap function is called with:

0262  14 81-- Format of COMM-DRV port control block:

0263  14 8100 Format of VFOSSIL information:

0264  14 8101 Format of VFOSSIL application function table:

0265  14 8101 Format of VFOSSIL video mode data structure:

0266  14 8101 Format of VFOSSIL video configuration data:

0267  14 8101 Format of VFOSSIL cursor type record:

0268  14 8101 Values for VFOSSIL error code:

0269  14 8101 Call VioGetMode with:

0270  14 8101 Call VioSetMode with:

0271  14 8101 Call VioGetConfig with:

0272  14 8101 Call VioWrtTTY with:

0273  14 8101 Call VioGetANSI with:

0274  14 8101 Call VioSetANSI with:

0275  14 8101 Call VioGetCurPos with:

0276  14 8101 Call VioSetCurPos with:

0277  14 8101 Call VioGetCurType with:

0278  14 8101 Call VioSetCurType with:

0279  14 8101 Call VioScrollUp with:

0280  14 8101 Call VioScrollDn with:

0281  14 8101 Call VioReadCellStr with:

0282  14 8101 Call VioReadCharStr with:

0283  14 8101 Call VioWrtCellStr with:

0284  14 8101 Call VioWrtCharStr with:

0285  14 8101 Call VioWrtCharStrAttr with:

0286  14 8101 Call VioWrtNAttr with:

0287  14 8101 Call VioWrtNCell with:

0288  14 8101 Call VioWrtNChar with:

0289  14 A0-- Values for 3com BAPI return code:

0290  14 A1-- Format of Interconnections TES status array entry:

0291  14 AA0B Bitfields for DimVGA hotkey shift state:

2621  14 E0-- Values for TelAPI status:

0292  14 E000 Format of MX5 Extended FOSSIL status block:

2627  14 E4-- Format of TelAPI Telnet command/option argument:

2628  14 E4-- Values for TelAPI Telnet command/option identifier:

2629  14 EA-- Format of TelAPI Telnet connection status information:

2630  14 EB-- Format of TelAPI session status information [array]:

0293  14 FFFC Bitfields for INT 14h flags:

0294  14 FFFF Format of COMM-DRV information area:

0295  15 01-- Format of Amstrad NVRAM:

0296  15 01-- Bitfields for RTC status register A:

0297  15 01-- Bitfields for RTC status register B:

0298  15 01-- Bitfields for RTC status register C:

0299  15 02-- Values for Cassette status:

0300  15 04-- Format of ABIOS System Parameter Table:

0301  15 05-- Format of one entry of ABIOS Initialization Table:

0302  15 05-- Values for ABIOS device ID:

0303  15 1016 Values for DESQview object type:

0304  15 1016 Format of DESQview object:

0305  15 1016 Format of DESQview Register Save Record:

0306  15 1016 Format of DESQview mapping context record:

0307  15 1016 Format of DESQview Internal Window Record (v2.31-2.60):

0308  15 1016 Format of DESQview process record (v2.31):

0309  15 1016 Format of DESQview process record (v2.52-v2.60) (probably also 2.5x):

0310  15 1016 Format of DESQview task or process instance data record (v2.5x???, v2.60):

0311  15 1016 Format of DESQview script buffer (v2.60):

0312  15 1016 Format of one DESQview script record (v2.60):

0313  15 1016 Format of DESQview Common Memory Header (v2.31-2.60):

0314  15 1016 Format of DESQview Free block header:

0315  15 1016 Format of DESQview Used block header:

0316  15 1023 Bitfields for TopView general window position:

0317  15 102C Format of .PIF/.DVP file:

0318  15 102C Bitfields for .PIF/.DVP program flags 1:

0319  15 102C Bitfields for .DVP program flags 3:

0320  15 102C Bitfields for .DVP program flags 4:

0321  15 102C Bitfields for DESQview keyboard conflict level:

0322  15 102C Format of DESQview/X variable length record:

0323  15 102E Format of DESQview system memory block header:

0324  15 11DE Call QEXT.SYS private entry point with:

0325  15 12-- Format of TopView panel file:

0326  15 12-- Format of DESQview pointer message:

0327  15 12-- Bitfields for DESQview pointer status:

0328  15 12-- Format of stream data structure:

0329  15 12-- Values for MODE 00h (set or display values) "WINDOW STREAM" opcodes:

0330  15 12-- Values for TopView logical attributes:

0331  15 12-- Format of TopView field table header:

0332  15 12-- Bitfields for TopView screen behavior bits:

0333  15 12-- Format of TopView field table entry:

0334  15 12-- Bitfields for TopView field type:

0335  15 12-- Values for MODE 01h "QUERY STREAM" opcodes:

0336  15 12-- Values for MODE 10h "MANAGER STREAM" opcodes (valid only for those listed):

0337  15 12-- Values for MODES 14h to 1Fh "USER STREAMS":

0338  15 12-- Values asynchronous notification routine defined by man.stream 8Ah called with:

0339  15 12-- Bitfields for DESQview keyboard object bits:

0340  15 12-- Bitfields for DESQview pointer object bits:

0341  15 12-- Values keyboard filter function is called with when keyboard is in field mode:

0342  15 12-- Bitfields for DESQview mailbox object flags:

0343  15 12-- Bitfields for DESQview keyboard object flags:

0344  15 12-- Values for DESQview error code:

0345  15 13-- Format of MultiDOS Plus v4.0 task control block:

0346  15 15-- Format of MultiDOS Plus 4.0 system block:

0347  15 1E08 Values MultiDOS Plus context-switch handlers are called with:

0348  15 2403 Bitfields for A20 gate support status:

0349  15 41-- Bitfields for external event wait condition type:

0350  15 43-- Bitfields for Convertible system status:

0351  15 44C3 Bitfields for Olivetti Quaderno ???:

0352  15 44C6 Values for Olivetti Quaderno LCD alphanumeric characters:

0353  15 44C6 Bitfields for Olivetti Quaderno LCD colon flags:

0354  15 4600 Bitfields for Compaq SLT/286 modem configuration information:

0355  15 4600 Bitfields for Compaq SLT/286 power conservation status:

0356  15 50-- Values for DOS/V code page:

0357  15 50-- Values for DOS/V error code:

0358  15 5300 Bitfields for APM flags:

0359  15 5300 Values for APM error code:

0360  15 5307 Values for APM device IDs:

0361  15 5307 Values for system state ID:

0362  15 530A Values for APM v1.0+ battery status:

0363  15 530A Bitfields for APM v1.1 battery flag:

0364  15 530A Bitfields for APM v1.1 remaining battery life:

0365  15 530B Values for APM event code:

0366  15 5380 Bitfields for APM SL sustdbymode:

0367  15 5380 Bitfields for APM SL resume condition:

0368  15 5380 Values for APM SL error code:

2673  15 53B0 Values for Intel System Management Bus error codes:

2674  15 53B0 Values for Intel System Management Bus Already Connected sub-error codes:

2675  15 53B0 Values for Intel System Management Bus protocol codes:

0369  15 6002 Bitfields for power settings:

0370  15 6D-- Bitfields for HUNTER 16 events:

0371  15 76-- Bitfields for HUNTER 16 power save control:

0372  15 80-- Values for status:

0373  15 82-- Values for HUNTER 16 sound pitch:

0374  15 87-- Values for extended-memory copy status:

0375  15 87-- Format of global descriptor table:

0376  15 89-- Format of BIOS switch-to-protected-mode Global Descriptor Table:

0377  15 89-- Format of segment descriptor table entry:

0378  15 89-- Bitfields for segment descriptor table access mode field:

0379  15 89-- Bitfields for 386+ segment descriptor table extended access mode field:

0380  15 8C-- Bitfields for HUNTER 16 operations disabling power save:

0381  15 90-- Values for device type:

0382  15 BF02 Format of DOS/16M XBRK structure:

0383  15 C0-- Format of ROM configuration table:

0384  15 C0-- Bitfields for feature byte 1:

0385  15 C0-- Bitfields for feature byte 2:

0386  15 C0-- Bitfields for feature byte 3:

0387  15 C0-- Bitfields for feature byte 4:

0388  15 C0-- Values for model/submodel/revision:

0389  15 C0-- Values for Dell model byte:

0390  15 C0-- Format of Compaq product information:

0391  15 C0-- Format of Hewlett-Packard ROM ID at F000h:00F8h:

0392  15 C0-- Bitfields for Hewlett-Packard product identifier:

0393  15 C0-- Format of Toshiba laptop information:

0394  15 C0-- Values for Toshiba product ID:

0395  15 C200 Values for pointing device function status:

0396  15 C203 Values for pointing device resolution:

0397  15 C206 Bitfields for pointing device status:

0398  15 C207 Bitfields for pointing device status:

0399  15 C7-- Format of memory-map table structure:

0400  15 C8-- Values for status:

0401  15 C9-- Values for CPU type:

0402  15 C9-- Values for stepping level:

0403  15 CA-- Values for CMOS read/write error code:

0404  15 CE-- Values for DMA arbitration status:

0405  15 D100 Values for return code:

0406  15 D101 Format of Device Descriptor Table (DDT):

0407  15 D101 Bitfields for DDT indicators:

0408  15 D4-- Values for return code:

0409  15 D800 Bitfields for EISA AL bit flags:

0410  15 D800 Values for EISA error code:

0411  15 D823 Format of Compaq EISA buffer:

2618  15 DB01 Values for AMI BIOS v1.00.05.AX1 subsystem identifier:

2619  15 DB01 Format of AMI BIOS v1.00.05.AX1 subsystem information:

2620  15 DB03 Call AMI BIOS ??? code with:

0412  15 DE00 Format of program entry in DESQVIEW.DVO:

0413  15 DE0E Values for special DESQview mailbox names:

0414  15 DE22 Bitfields for DESQview process memory flags:

0415  15 DE27 Format of DESQview Instance Item Structure [one element of list]:

0416  15 DE2C Format of DESQview window information:

0417  15 DE2C Values for DESQview task status:

0418  15 DE2C Bitfields for DESQview task status bits:

0419  15 DE2E Values for DESQview/X socket API function number:

0420  15 DE2E Format of DESQview/X socket record:

0421  15 DE2E Values for DESQview/X Network Manager subfunction:

0422  15 DE2E Format of Function 0026h/Subfunction 000Fh data:

0423  15 DE2E Format of Function 0026h/Subfunction 0010h data:

0424  15 DE2E Format of Function 0026h/Subfunction 0011h data:

0425  15 DE2E Format of Function 0026h/Subfunction 0012h data:

0426  15 DE2E Format of Function 0026h/Subfunction 0013h data:

0427  15 DE2E Format of Function 0026h/Subfunction 0016h ("shutdown") data:

0428  15 DE2E Format of Function 0026h/Subfunction 0018h data:

0429  15 DE2E Format of Function 0026h/Subfunction 0019h data:

0430  15 DE2E Format of Function 0026h/Subfunction 001Ah data:

0431  15 DE2E Format of Function 0026h/Subfunction 001Bh data:

0432  15 DE2E Format of Function 0026h/Subfunction 001Dh return data [array]:

0433  15 DE2E Format of Function 0026h/Subfunction 0024h return data:

0434  15 DE2E Format of Function 0026h/Subfunction 0030h data:

0435  15 DE2E Format of Function 0026h/Subfunction 0031h ("sethostpath") data:

0436  15 DE2E Format of Function 0026h/Subfunction 0034h data:

0437  15 DE2E Format of Function 0026h/Subfunction 0037h ("getnettimeout") return data:

0438  15 DE2E Format of Function 0026h/Subfunction 0038h return data:

0439  15 DE2E Format of Function 0026h/Subfunction 0039h ("getuid") return data:

0440  15 DE2E Values for DESQview/X socket error code:

0441  15 DE2E Format of DESQview/X Socket Context Record:

0442  16 02-- Bitfields for keyboard shift flags:

0443  16 05-- Values for pseudo-keystrokes for DESQview:

0444  16 05-- Values for pseudo-keystrokes for HP 100LX/200LX:

0445  16 09-- Bitfields for supported keyboard functions:

0446  16 0A-- Values for keyboard ID:

0447  16 12-- Bitfields for keyboard shift flags 1:

0448  16 12-- Bitfields for keyboard shift flags 2:

0449  16 13-- Bitfields for DOS/V shift status:

0450  16 20-- Bitfields for HUNTER 16 shift status:

0451  16 24-- Values for HUNTER 16 Matrix Code:

0452  16 29-- Values for HUNTER 16 Typematic rate:

0453  16 4502 Bitfields for Shamrock Software EMAIL flags:

0454  16 6F01 Format of HP Vectra EX-BIOS typematic info:

0455  16 6F01 Values for HP Vectra EX-BIOS non-CCP delay time:

0456  16 6F01 Values for HP Vectra EX-BIOS typematic rate:

0457  16 6F01 Values for HP Vectra EX-BIOS CCP delay time:

0458  16 6F04 Format of HP Vectra EX-BIOS keyboard mapping info:

0459  16 6F07 Values for HP Vectra keyboard translation specifier:

0460  16 6F07 Values for HP Vectra scancodes and BIOS keycodes for V_RAW translator:

0461  16 6F08 Values for HP HIL keyboard language code:

0462  16 6F0A Values for HP Vetra CPU speed:

0463  16 73-- Format of FAKEY.COM tone array entries:

0464  16 7C-- Values for pcANYWHERE III baud rate:

0465  16 8765 Format of AT.COM event record:

0466  16 AF4D Format of internal K3 structure:

0467  16 AF4D Bitfields for K3PLUS compiler switch option flags A:

0468  16 AF4D Bitfields for K3 compiler switch option flags B:

0469  16 AF4D Bitfields for K3 internal flags A:

0470  16 AF4D Bitfields for K3 internal flags B:

0471  16 AF50 Bitfields for K3PLUS supported function list:

0472  16 F0-- Values for speed code:

0473  16 F0F0 Format of TurboPower TSR data block:

0474  16 FA02 Bitfields for VSAFE/VWATCH parameter flags:

0475  16 FF80 Bitfields for CPTASK flags:

0476  16 FF97 Format of PC Tools DESKTOP buffer:

0477  16 FF98 Format of PC Tools DESKTOP overlay header:

0478  16 FFA5 Format of PC-Cache internal data:

0479  16 FFB5 Values for PC Tools DESKTOP window specifier:

0480  16 FFB5 Format of PC Tools DESKTOP window parameters:

0481  16 FFC1 Format of PC Tools DESKTOP data structure:

0482  16 FFDD Format of PC Tools PCShell returned pointer list:

0483  16 FFEE Format of PC Tools DESKTOP pulldown menu system description:

0484  16 FFEE Format of PC Tools DESKTOP menu definition:

0485  16 FFEE Format of PC Tools DESKTOP menu contents:

0486  16 FFF5 Format of PC Tools DESKTOP attribute data structure:

0487  16 FFF6 Format of PC Tools DESKTOP editor buffer structure:

0488  16 FFFC Format of PC Tools DESKTOP hotkey table:

0489  17 00-- Bitfields for printer status:

0490  17 0200 Call EPP BIOS entry point with:

0491  17 0200 Values for EPP BIOS function status:

0492  17 2000 Values for PC Paint function status:

0493  17 2400 Values for NET.24 function status:

0494  17 63-- Format of T2PS settings:

0495  17 81-- Values for Alloy status:

0496  17 88-- Values for Alloy NTNX printer number:

0497  17 99-- Bitfields for Alloy printer mode:

0498  17 A7-- Bitfields for Alloy spool flags:

0499  17 C0-- Format of PCSpool control block:

0500  17 CD04 Values INSET linked-mode routine is called with:

0501  19 ---- Format of VDISK header block (at beginning of INT 19 handler's segment):

0502  19 ---- Format of hard disk master boot sector:

0503  19 ---- Format of partition record:

0504  19 ---- Values for operating system indicator:

0505  1A 6108 Values for SNAP.EXE status:

0506  1A 6308 Format of SNAP.EXE Cparms structure:

0507  1A 80-- Values for PCMCIA error codes:

0508  1A 81-- Values PCMCIA callback routine is invoked with:

0509  1A 81-- Bitfields for PCMCIA status change interrupt enable mask:

0510  1A 81-- Bitfields for PCMCIA current socket status:

0511  1A 81-- Bitfields for PCMCIA current card status:

0512  1A 82-- Values PCMCIA callback routine is invoked with:

0513  1A 82-- Bitfields for PCMCIA socket attributes:

0514  1A 82-- Format of PCMCIA Low-Level Socket Services Routines:

0515  1A 82-- Call Write Many routine with:

0516  1A 82-- Call Write One routine with:

0517  1A 82-- Call Read One routine with:

0518  1A 82-- Call Increment Offset routine with:

0519  1A 82-- Call Set Offset routine with:

0520  1A 82-- Call Get Status routine with:

0521  1A 84-- Bitfields for PCMCIA capabilities:

0522  1A 84-- Values for PCMCIA status change interrupt usage:

0523  1A 85-- Bitfields for PCMCIA adapter attributes:

0524  1A 87-- Bitfields for PCMCIA window capabilities:

0525  1A 87-- Bitfields for PCMCIA supported access speeds:

0526  1A 87-- Format of PCMCIA Memory Window Characteristics table:

0527  1A 87-- Format of PCMCIA I/O Window Characteristics table:

0528  1A 87-- Bitfields for PCMCIA window capabilities:

0529  1A 88-- Bitfields for PCMCIA window attributes:

0530  1A 8A-- Bitfields for PCMCIA page attributes:

0531  1A 8C-- Bitfields for PCMCIA socket capabilities:

0532  1A 8C-- Bitfields for PCMCIA socket hardware indicators:

0533  1A 8C-- Format of PCMCIA Socket Characteristics table:

0534  1A 8C-- Bitfields for supported card types:

0535  1A 8C-- Format of PCMCIA Power Management table:

0536  1A 8D-- Bitfields for PCMCIA card type:

0537  1A 8D-- Bitfields for PCMCIA I/O level steering:

0538  1A 91-- Bitfields for PCMCIA attributes:

0539  1A 95-- Bitfields for EDC capabilities:

0540  1A 95-- Bitfields for supported EDC types:

0541  1A 96-- Bitfields for EDC attributes:

0542  1A 9D-- Values for PCMCIA ExCA Card Services subfunction number:

2623  1A A0-- Format of PCMCIA Subfunction 00h Buffer Table Entry structure:

2624  1A A0-- Format of PCMCIA Additional Data Area Description structure [array]:

2625  1A A0-- Format of PCMCIA Subfunction 02h Buffer Table Entry structure:

0543  1A AD-- Values for Disk Spool function code:

0544  1A B001 Format of MRCINFO structure:

0545  1A B001 Bitfields for MRCI capabilities:

0546  1A B001 Call MRCI entry point with:

0547  1A B001 Format of MRCREQUEST structure:

0548  1A B101 Values for PCI BIOS v2.0c status codes:

0549  1A B101 Bitfields for PCI hardware characteristics:

0550  1A B101 Call protected-mode entry point with:

0551  1A B400 Values for Intel Plug-and-Play AUTO-CONFIGURATION error codes:

0552  1A B401 Format of Intel Plug-and-Play Extended System Configuration Data table:

0553  1A B401 Format of Extended System Configuration Data Board Header:

0554  1A B401 Format of Extended System Configuration Data Freeform Board Header:

0555  1A B401 Format of Extended System Configuration Data Freeform PCI Device Data:

0556  1A B401 Format of Extended System Configuration Data Freeform PnP ISA Board ID:

0557  1A B401 Format of Extended System Configuration Data PnP ISA ECD Extension Function:

0558  1A B401 Format of Extended System Configuration Data PCI ECD Extension Function:

0559  1A B401 Bitfields for EISA ID and Slot Information:

0560  1A B401 Bitfields for EISA Function Information:

0561  1A B401 Format of EISA Memory Information:

0562  1A B401 Bitfields for EISA Memory Information Flags:

0563  1A B401 Bitfields for EISA IRQ Information:

0564  1A B401 Bitfields for EISA DMA Information:

0565  1A B401 Format of EISA Port Range Information:

0566  1A B401 Format of EISA Port Initialization Data:

0567  1A B406 Format of Intel Plug-and-Play AUTO-CONFIGURATION ??? header:

0568  1A B406 Format of Intel Plug-and-Play AUTO-CONFIGURATION ??? structure entry [array]:

0569  1A E11D Format of TheGrab signature block:

0570  1A E301 Format of Disk Spool II spool file status record:

0571  1D ---- Format of video parameters:

0572  1E ---- Format of diskette parameter table:

2631  20 ---- Values for VMM (VxD ID 0001h) function number:

2632  20 ---- Values for VPICD (VxD ID 0003h) function number:

2633  20 ---- Values for VDMAD (VxD ID 0004h) function number:

2654  20 ---- Values for VTD (VxD ID 0005h) function number:

2634  20 ---- Values for V86MMGR (VxD ID 0006h) function number:

2635  20 ---- Values for PageSwap (VxD ID 0007h) function number:

2636  20 ---- Values for VDD (VxD ID 000Ah) function number:

2637  20 ---- Values for VSD (VxD ID 000Bh) function number:

2638  20 ---- Values for VMD (VxD ID 000Ch) function number:

2639  20 ---- Values for VKD (VxD ID 000Dh) function number:

2640  20 ---- Values for VCD (VxD ID 000Eh) function number:

2641  20 ---- Values for BlockDev (VxD ID 0010h) function number:

2642  20 ---- Values for EBIOS (VxD ID 0012h) function number:

2643  20 ---- Values for VNETBIOS (VxD ID 0014h) function number:

2647  20 ---- Values for DOSMGR (VxD ID 0015h) function number:

2655  20 ---- Values for SHELL (VxD ID 0017h) function number:

2644  20 ---- Values for VMPoll (VxD ID 0018h) function number:

2645  20 ---- Values for DOSNET (VxD ID 001Ah) function number:

2646  20 ---- Values for Int13 (VxD ID 0020h) function number:

2656  20 ---- Values for PAGEFILE (VxD ID 0021h) function number:

0573  21 0A-- Format of DOS input buffer:

0574  21 0F-- Format of File Control Block:

0575  21 0F-- Format of FCB reserved field for DOS 1.0:

0576  21 0F-- Format of FCB reserved field for DOS 1.10-1.25:

0577  21 0F-- Format of FCB reserved field for DOS 2.x:

0578  21 0F-- Format of FCB reserved field for DOS 3.x:

0579  21 0F-- Format of FCB reserved field for DOS 5.0:

0580  21 11-- Format of DOS directory entry:

0581  21 1B-- Values for media ID byte:

0582  21 1F-- Format of DOS 1.1 and MS-DOS 1.25 drive parameter block:

0583  21 250D Call Phar Lap real-mode callback with:

0584  21 250D Format of Phar Lap selector structure:

0585  21 2510 Format of Phar Lap real-mode call parameter block:

0586  21 2511 Format of Phar Lap real-mode interrupt parameter block:

0587  21 2512 Values for Phar Lap error code:

0588  21 2512 Format of Phar Lap program load parameter block:

0589  21 2520 Format of Phar Lap VM statistics buffer:

0590  21 2526 Format of Phar Lap configuration buffer:

0591  21 2526 Bitfields for flags 1:

0592  21 2526 Bitfields for DPMI capabilities flags:

0593  21 2528 Format of Phar Lap buffer for registers:

0594  21 2529 Format of Phar Lap program load parameter block:

0595  21 252A Values for Phar Lap file error code:

0596  21 252A Values for Phar Lap memory error code:

0597  21 252B Bitfields for Phar Lap page information:

0598  21 252B Format of Phar Lap mapping structure:

0599  21 252E Format of Phar Lap VMM parameter buffer:

0600  21 2535 Format of Phar Lap system register record:

0601  21 25C3 Values for Phar Lap error code:

0602  21 25C3 Format of parameter block:

0603  21 26-- Format of Program Segment Prefix (PSP):

0604  21 26-- Format of environment block:

0605  21 29-- Bitfields for parsing options:

0606  21 2B-- Format of ELRES history structure:

0607  21 2B01 Format of TAME 2.10-2.20 data area:

0608  21 2B01 Bitfields for interrupts already grabbed by TAME:

0609  21 2B01 Values for multitasker type:

0610  21 2B01 Bitfields for type of task switching selected:

0611  21 2B01 Format of TAME 2.30 data area:

0612  21 2B01 Bitfields for TAME action flags:

0613  21 2B01 Format of TAME 2.60 data area:

0614  21 2B44 Call pcANYWHERE API entry point with:

0615  21 2B44 Format of pcANYWHERE initialization request structure:

0616  21 2B44 Format of pcANYWHERE termination request structure:

0617  21 2B44 Bitfields for current connection status:

0618  21 2B44 Values for pcANYWHERE function status:

0619  21 30-- Values for DOS OEM number:

0620  21 32-- Format of DOS Drive Parameter Block:

0621  21 37D4 Bitfields for DIET TSR options:

0622  21 37DC Values DIET external procedure is called with:

0623  21 38-- Format of DOS 2.00-2.10 country info:

0624  21 38-- Format of DOS 2.11+ country info:

0625  21 38-- Values for country code:

0626  21 3C-- Bitfields for file attributes:

0627  21 3D-- Bitfields for access and sharing modes:

0628  21 3D-- Values of DOS file sharing behavior:

0629  21 3F-- Values for status of Turbo Debugger command:

0630  21 3F-- Format of Turbo Debugger status block:

0631  21 3F-- Bitfields for Turbo Debugger configuration bits:

0632  21 3F-- Bitfields for Turbo Debugger supported breakpoint types:

0633  21 3F-- Bitfields for Turbo Debugger supported addressing match modes:

0634  21 3F-- Bitfields for Turbo Debugger supported data matches:

0635  21 3F-- Format of PC/TCP configuration data:

0636  21 3F-- Format of BW-TCP driver info:

0637  21 3F-- Format of BW-TCP server records:

0638  21 3F-- Format of Trusted Access state record:

0639  21 3F-- Format of IFSHLP.SYS entry point record:

0640  21 3F-- Call IFSHLP.SYS entry point with:

0641  21 40-- Format of Turbo Debugger hardware breakpoint commands:

0642  21 40-- Values for Turbo Debugger address/data matching mode:

0643  21 4301 Bitfields for file attributes:

0644  21 4302 Bitfields for DR-DOS file access rights:

0645  21 4311 Bitfields for VINES extended file attributes:

0646  21 4400 Bitfields for device information word:

0647  21 4402 Format of NDIS request block for GetProtocolManagerInfo:

0648  21 4402 Format of NDIS request block for RegisterModule:

0649  21 4402 Format of NDIS request block for BindAndStart:

0650  21 4402 Format of NDIS request block for GetProtocolManagerLinkage:

0651  21 4402 Format of NDIS request block for GetProtocolIniPath:

0652  21 4402 Format of NDIS request block for RegisterProtocolManagerInfo:

0653  21 4402 Format of NDIS request block for InitAndRegister:

0654  21 4402 Format of NDIS request block for UnbindAndStop:

0655  21 4402 Format of NDIS request block for BindStatus:

0656  21 4402 Format of NDIS request block for RegisterStatus:

0657  21 4402 Values for NDIS status code:

0658  21 4402 Format of NDIS common characteristics table:

0659  21 4402 Values for NDIS boundary protocol level:

0660  21 4402 Format of NDIS dispatch table:

0661  21 4402 Format of MAC Service-Specific Characteristics Table:

0662  21 4402 Bitfields for service flags:

0663  21 4402 Format of NetBIOS Service-Specific Characteristics Table:

0664  21 4402 Format of MAC Service-Specific Status Table:

0665  21 4402 Bitfields for MAC status bits:

0666  21 4402 Bitfields for packet filter flags:

0667  21 4402 Format of System 36/38 emulator returned data:

0668  21 4402 Call HIGHUMM.SYS entry point with:

0669  21 4402 Format of SMARTDRV status record:

0670  21 4402 Values for CD-ROM data being requested:

0671  21 4402 Format of CD-ROM control block:

0672  21 4402 Bitfields for CD-ROM device parameters:

0673  21 4402 Format of HOOKROM.SYS hooked vector table entry:

0674  21 4402 Format of ASPI IOCTL result:

0675  21 4402 Values for ASPI request number:

0676  21 4402 Format of SCSI Request Block (64 bytes):

0677  21 4402 Values for ASPI request status:

0678  21 4402 Bitfields for ASPI request flags:

0679  21 4402 Values for host adapter status:

0680  21 4402 Values for target status:

0681  21 4402 Values for device type:

0682  21 4402 Values for disk drive flags:

0683  21 4402 Format of CCB:

0684  21 4402 Values for CCB command code:

0685  21 4402 Format of sense data:

0686  21 4402 Values for sense key:

0687  21 4402 Format of 386MAX v6.01+ state:

0688  21 4402 Bitfields for 386MAX bit flags 1:

0689  21 4402 Bitfields for 386MAX system configuration flags:

0690  21 4402 Bitfields for 386MAX debugging flags 1:

0691  21 4402 Bitfields for 386MAX debugging flags 2:

0692  21 4402 Bitfields for 386MAX debugging flags 3:

0693  21 4402 Bitfields for 386MAX feature flags 1:

0694  21 4402 Bitfields for 386MAX feature flags 2:

0695  21 4402 Bitfields for 386MAX feature flags 3:

0696  21 4402 Bitfields for 386MAX machine type:

0697  21 4402 Format of 386MAX control block:

0698  21 4402 Format of 386MAX high memory info record:

0699  21 4402 Format of 386MAX ROM shadowing record:

0700  21 4402 Values for 386MAX memory type:

0701  21 4402 Call 386MAX API (via OUT DX,AL) with:

0702  21 4402 Format of 386MAX memory speed record:

0703  21 4402 Format of 386MAX memory info [array]:

0704  21 4402 Format of PGS1600.DEV configuration information:

0705  21 4402 Format of WORKGRP.SYS entry point record:

0706  21 4402 Call WORKGRP entry point with:

0707  21 4402 Call WORKGRP function 00h with:

0708  21 4402 Call WORKGRP function 01h with:

0709  21 4402 Call WORKGRP function 02h with:

0710  21 4402 Call WORKGRP function 03h with:

0711  21 4402 Call WORKGRP function 04h with:

0712  21 4402 Call WORKGRP function 05h with:

0713  21 4402 Call WORKGRP function 06h with:

0714  21 4402 Call WORKGRP functions 07h-09h with:

0715  21 4402 Format of 10NET 10BEUI.DOS parameter record:

0716  21 4402 Format of 10NET 10MEMMGR.SYS interface info:

0717  21 4402 Call 10NET 10MEMMGR.SYS entry point with:

0718  21 4402 Format of Compaq AG1024.SYS location record:

0719  21 4402 Format of FTPSOFT.DOS data:

0720  21 4402 Format of PENDEV.SYS entry point record:

0721  21 4402 Call PENDEV.SYS function to retrieve entry point with:

0722  21 4402 Call PENDEV.SYS function to set entry point with:

0723  21 4402 Call PENDEV.SYS function to clear entry point with:

0724  21 4402 Format of TCPDRV.DOS request block:

0725  21 4402 Format of CPRLOW address list:

0726  21 4402 Format of CPRLOW jump array:

0727  21 4402 Format of CTMMSYS.SYS entry point record:

0728  21 4402 Call CTMMSYS.SYS entry point with:

0729  21 4402 Format of CTSB2.SYS entry point record:

0730  21 4402 Call CTSB2.SYS entry point with:

0731  21 4402 Format of Novell DOS 7 EMM386.EXE state record:

0732  21 4402 Format of memory manager API entry point record:

0733  21 4402 Call CEMM v5.10+ entry point with:

0734  21 4402 Format of EMM import structure record:

0735  21 4402 Format of Global EMM Import record:

0736  21 4402 Format of EMS frame status record:

0737  21 4402 Bitfields for EMS frame type:

0738  21 4402 Format of EMS handle info record:

0739  21 4402 Format of XMS handle info record:

0740  21 4402 Format of memory manager version:

0741  21 4402 Format of EMM386.EXE data buffer:

0742  21 4403 Values for SMARTDRV function code:

0743  21 4403 Format of SMARTDRV control block:

0744  21 4403 Format of CR-ROM control block:

0745  21 4403 Format of SCSITAPE control block:

0746  21 4403 Format of buffer on return:

0747  21 4403 Format of Compaq AG1024.SYS request packet:

0748  21 4403 Format of Compaq AG1024.SYS request packet:

0749  21 4404 Format of Stacker buffer:

0750  21 4404 Format of DUBLDISK data record:

0751  21 4404 Format of DUBLDISK signature data table:

0752  21 4404 Format of DoubleSpace DSPACKET structure:

0753  21 4404 Format of DoubleSpace DSPACKET structure:

0754  21 4404 Format of DoubleTools structure:

0755  21 4404 Format of COMBI-disk data packet:

0756  21 4404 Format of SFS data packet:

0757  21 4405 Format of DoubleSpace DSPACKET structure:

0758  21 4405 Values for COMBI-disk command code:

0759  21 4405 Format of COMBI-disk command packet:

0760  21 4405 Bitfields for COMBI-disk options byte:

0761  21 4405 Format of COMBI-disk block info:

0762  21 4405 Values for SFS control function:

0763  21 4405 Format of SFS control data packet:

0764  21 4405 Bitfields for SFS drive number:

0765  21 440C Values for IOCTL category code:

0766  21 440C Values for generic character IOCTL function:

0767  21 440C Format of parameter block for function 00h:

0768  21 440C Format of parameter block for function 45h:

0769  21 440C Format of parameter block for functions 4Ah and 6Ah:

0770  21 440C Format of parameter block for function 4Ch:

0771  21 440C Format of parameter block for function 4Dh:

0772  21 440C Format of parameter block for functions 5Fh and 7Fh:

0773  21 440C Format of parameter block for function 6Bh:

0774  21 440C Format of ASPITAPE.SYS mtop parameter block:

0775  21 440C Format of ASPITAPE.SYS mtget parameter block:

0776  21 440C Bitfields for ASPITAPE.SYS current device state:

0777  21 440C Bitfields for SCSI opcode:

0778  21 440D Values for block device IOCTL category code:

0779  21 440D Values for generic block IOCTL minor code:

0780  21 440D Format of parameter block for functions 40h, 60h:

0781  21 440D Values for device type:

0782  21 440D Format of parameter block for functions 41h, 61h:

0783  21 440D Format of parameter block for function 42h:

0784  21 440D Format of parameter block for function 62h:

0785  21 440D Format of parameter block for functions 46h, 66h:

0786  21 440D Format of parameter block for functions 47h, 67h:

0787  21 440D Format of parameter block for function 48h:

0788  21 440D Format of parameter block for function 52h:

0789  21 440D Format of parameter block for function 68h:

0790  21 440D Format of parameter block for function 73h:

0791  21 440D Format of parameter block for function 7Fh for SystemSoft ATADRV.EXE:

0792  21 440D Format of parameter block for function 7Fh for Phoenix PCMATA.SYS:

0793  21 4451 Values for Digital Research operating system version ID:

0794  21 4452 Values for Digital Research operating system version ID:

0795  21 4456 Bitfields for control flags:

0796  21 4456 Bitfields for state flags:

0797  21 4458 Format of DR-DOS 5.0-6.0 internal variable table:

0798  21 4458 Format of Novell DOS 7 internal variable table:

0799  21 4458 Format of history control structure:

0800  21 4458 Format of kernel entry jump table for DR-DOS 5.0-6.0:

0801  21 4458 Format of HMA Memory Block (DR-DOS 6.0 kernel loaded in HMA):

0802  21 44E0 Format of PC-NFS stack frame:

0803  21 4B-- Format of EXEC parameter block for AL=00h,01h,04h:

0804  21 4B-- Format of EXEC parameter block for AL=03h:

0805  21 4B-- Format of EXEC parameter block for FlashTek X-32:

0806  21 4B-- Values for the executable types understood by various environments:

0807  21 4B-- Format of .EXE file header:

0808  21 4B-- Format of ROM Module Header:

0809  21 4B-- Format of new executable header:

0810  21 4B-- Bitfields for new executable program flags:

0811  21 4B-- Bitfields for new executable application flags:

0812  21 4B-- Bitfields for other new .EXE flags:

0813  21 4B-- Format of Codeview trailer (at end of executable):

0814  21 4B-- Format of new executable segment table record:

0815  21 4B-- Bitfields for segment attributes:

0816  21 4B-- Format of new executable entry table item (list):

0817  21 4B-- Format of new executable relocation data (immediately follows segment image):

0818  21 4B-- Format of new executable resource data:

0819  21 4B-- Format of new executable resource entry:

0820  21 4B-- Format of new executable module reference table [one bundle of entries]:

0821  21 4B-- Format of new executable resident/nonresident name table entry:

0822  21 4B-- Format of Linear Executable (enhanced mode executable) header:

0823  21 4B-- Bitfields for Linear Executable module type:

0824  21 4B-- Format of object table entry:

0825  21 4B-- Bitfields for object flags:

0826  21 4B-- Format of object page map table entry:

0827  21 4B-- Format of resident names table entry:

0828  21 4B-- Format of LE linear executable entry table:

0829  21 4B-- Format of LX linear executable entry table [array]:

0830  21 4B-- Bitfields for linear executable fixup type:

0831  21 4B-- Format of linear executable fixup record:

0832  21 4B-- Format of old Phar Lap .EXP file header:

0833  21 4B-- Format of new Phar Lap .EXP file header:

0834  21 4B-- Format of Phar Lap segment information table entry:

0835  21 4B-- Format of 386|DOS-Extender run-time parameters:

0836  21 4B-- Format of Phar Lap repeat block header:

0837  21 4B-- Format of Borland debugging information header (following load image):

0838  21 4B05 Format of execution state structure:

0839  21 4E-- Format of FindFirst data block:

0840  21 52-- Format of List of Lists:

0841  21 52-- Format of DOS memory control block (see also below):

0842  21 52-- Values for special flag PSP segments:

0843  21 52-- Format of MS-DOS 5+ UMB control block:

0844  21 52-- Format of STARLITE (General Software's Embedded DOS) memory control block:

0845  21 52-- Format of DOS 4.0+ data segment subsegment control blocks:

0846  21 52-- Format of data at start of STACKS code segment (if present):

0847  21 52-- Format of array elements in STACKS data segment:

0848  21 52-- Format of SHARE.EXE hooks (DOS 3.1-6.00):

0849  21 52-- Format of sharing record:

0850  21 52-- Format of SHARE.EXE Record Lock Record:

0851  21 52-- Format of DOS 2.x system file tables:

0852  21 52-- Format of DOS 3.0 system file tables and FCB tables:

0853  21 52-- Format of DOS 3.1-3.3x, DR-DOS 5.0-6.0 system file tables and FCB tables:

0854  21 52-- Format of DOS 4.0-6.0 system file tables and FCB tables:

0855  21 52-- Format of current directory structure (CDS) (array, LASTDRIVE entries):

0856  21 52-- Format of DR-DOS 5.0-6.0 current directory structure entry (array):

0857  21 52-- Format of Windows NT Current Directory Structure (CDS) (array):

0858  21 52-- Format of DOS device driver header:

0859  21 52-- Bitfields for device attributes (character device):

0860  21 52-- Bitfields for device attributes (block device):

0861  21 52-- Format of DOS 2.x disk buffer:

0862  21 52-- Format of DOS 3.x disk buffer:

0863  21 52-- Bitfields for DOS 3.x disk buffer flags:

0864  21 52-- Format of DOS 4.00 (pre UR 25066) disk buffer info:

0865  21 52-- Format of DOS 4.01 (from UR 25066 Corrctive Services Disk on) disk buffer info:

0866  21 52-- Format of DOS 4.x disk buffer hash chain head (array, one entry per chain):

0867  21 52-- Format of DOS 4.0-6.0 disk buffer:

0868  21 52-- Bitfields for DOS 4.0-6.0 disk buffer flags:

0869  21 52-- Format of DOS 5.0-6.0 disk buffer info:

0870  21 52-- Call IFS utility function entry point with:

0871  21 52-- Format of IFS driver list:

0872  21 52-- Format of IFS request block:

0873  21 52-- Format of IFS open file structure:

0874  21 52-- Format of one item in DOS 4.0+ list of special program names:

0875  21 53-- Format of BIOS Parameter Block:

0876  21 5700 Bitfields for file time:

0877  21 5700 Bitfields for file date:

0878  21 5702 Format of EAP (extended attribute properties) list:

0879  21 5702 Format of EAP (extended attribute property) structure:

0880  21 5702 Bitfields for EAP flags:

0881  21 5702 Format of EAV (extended attribute value) list:

0882  21 5702 Format of Extended Attribute Value structures:

0883  21 5702 Format of FAPI path information:

0884  21 58-- Values for DOS memory allocation strategy:

0885  21 59-- Values for DOS extended error code:

0886  21 59-- Format of media ID structure:

0887  21 59-- Values for DOS Error Class:

0888  21 59-- Values for DOS Suggested Action:

0889  21 59-- Values for DOS Error Locus:

0890  21 59-- Format of European MS-DOS 4.0 hard error information packet:

0891  21 5D00 Format of DOS parameter list:

0892  21 5D06 Format of DOS 3.10-3.30 Swappable Data Area:

0893  21 5D06 Format of CLOCK$ transfer record:

0894  21 5D0B Format of DOS 4.x swappable data area list:

0895  21 5D0B Format of DOS 4.0-6.0 swappable data area:

0896  21 5E01 Format of 10Net Configuration Table:

0897  21 5E01 Format of 10Net Table Header:

0898  21 5E01 Bitfields for 10NET services mask:

0899  21 5E01 Bitfields for 10NET chat mask:

0900  21 5E01 Bitfields for 10NET internal system bits:

0901  21 5E01 Bitfields for 10NET System Flags:

0902  21 5E01 Bitfields for Monitor Flags:

0903  21 5E04 Format of 10NET extended workstation printer setup structure:

0904  21 5E04 Bitfields for 10NET notification flags:

0905  21 5E04 Bitfields for 10NET job control mask:

0906  21 5F32 Format of Named Pipes _PIPEINFO structure:

0907  21 5F33 Bitfields for Named Pipes pipe mode:

0908  21 5F35 Values for pipe status:

0909  21 5F37 Format of Named Pipes DosCallNmPipe stack frame:

0910  21 5F3B Format of LAN Manager handle_info_1 structure:

0911  21 5F40 Format of LAN Manager NetMessageBufferSend parameter structure:

0912  21 5F41 Format of LAN Manager service_info_0 structure:

0913  21 5F41 Format of service_info_1 structure:

0914  21 5F41 Format of service_info_2 structure:

0915  21 5F41 Bitfields for LAN Manager status bitmask:

0916  21 5F41 Values for LAN Manager status code:

0917  21 5F42 Format of LAN Manager NetServiceControl parameter structure:

0918  21 5F43 Format of LAN Manager PRIDINFO structure:

2715  21 5F44 Format of LAN Manager wksta_info_0 structure:

2716  21 5F44 Format of LAN Manager wksta_info_1 structure:

2717  21 5F44 Format of LAN Manager wksta_info_10 structure:

0919  21 5F46 Format of LAN Manager use_info_0 structure:

0920  21 5F46 Format of LAN Manager use_info_1 structure:

0921  21 5F49 Format of LAN Manager NetUseGetInfo parameter structure:

0922  21 5F4A Format of LAN Manager NetRemoteCopy parameter structure:

0923  21 5F4A Bitfields for LAN Manager copy control:

0924  21 5F4B Format of LAN Manager NetRemoteMove parameter structure:

0925  21 5F4C Format of LAN Manager server_info_0 structure:

0926  21 5F4C Format of LAN Manager server_info_1 structure:

0927  21 5F4C Bitfields for LAN Manager server type:

0928  21 5F52 Format of LAN Manager DosWriteMailslot parameter structure:

0929  21 5F53 Format of LAN Manager NetServerEnum2 parameter structure:

0930  21 5F53 Bitfields for LAN Manager server type:

0931  21 5F53 Format of LAN Manager server_info_0 structure:

0932  21 5F53 Format of LAN Manager server_info_1 structure:

0933  21 5F87 Format of LANtastic user account structure:

0934  21 5F87 Bitfields for LANtastic privilege bits:

0935  21 5F98 Format of LANtastic message buffer:

0936  21 5F9A Bitfields for unsolicited message processing flags:

0937  21 5FA0 Format of LANtastic queue entry:

0938  21 5FA0 Values for status of LANtastic queue entry:

0939  21 5FA0 Values for type of LANtastic queue entry:

0940  21 5FA0 Bitfields for output control:

0941  21 5FA3 Format of LANtastic printer status:

0942  21 5FA3 Bitfields for LANtastic printer state:

0943  21 5FA4 Format of LANtastic stream information:

0944  21 5FB0 Format of LANtastic active user entry:

0945  21 5FB0 Bitfields for login state:

0946  21 5FB0 Values for last LANtastic command:

0947  21 5FB1 Bitfields for LANtastic access control list:

0948  21 5FC0 Format of LANtastic time block:

0949  21 5FC8 Bitfields for LANtastic option flags:

0950  21 5FCC Bitfields for control bits:

0951  21 6300 Format of double-byte character set lead byte table entry:

0952  21 6300 Format of DBCS table:

0953  21 64-- Values for OS/2 API ordinal:

0954  21 64-- Format of OS/2 Virtual DOS Machine STARTDATA structure:

0955  21 64-- Format of OS/2 Virtual DOS Machine FSQAttachStruc:

0956  21 65-- Format of country information:

0957  21 65-- Format of uppercase table:

0958  21 65-- Format of filename uppercase table:

0959  21 65-- Format of filename terminator table:

0960  21 65-- Format of collating table:

0961  21 65-- Format of DBCS lead byte table:

0962  21 6602 Values for code page:

0963  21 69-- Format of disk info:

0964  21 6C00 Values for extended open function status:

0965  21 6C00 Bitfields for file create attribute:

0966  21 6C00 Bitfields for action:

0967  21 6D-- Format of ROM search structure:

0968  21 6F02 Format of ROM exclusion region list:

0969  21 7070 Format of PCW Weather Card data structure:

2695  21 714E Format of Windows95 long filename FindData record:

0970  21 8A-- Values for termination type:

0971  21 8C-- Values for European MS-DOS 4.0 signal number:

0972  21 8C-- Values for signal action:

0973  21 8C-- Values signal handler is called with:

0974  21 A0-- Bitfields for Attachmate Extra! display status:

0975  21 A0-- Bitfields for host window status:

0976  21 A2-- Bitfields for Attachmate Extra! host window status:

0977  21 A3-- Values for Attachmate Extra! host function code:

0978  21 AF-- Format of Attachmate Extra! translate tables:

0979  21 B301 Values for signature level indicator:

0980  21 B4-- Format of Novell NetWare input buffer:

0981  21 B5-- Values for NetWare task mode byte in version 3.01:

0982  21 B6-- Bitfields for NetWare extended file attributes:

0983  21 B800 Format of NetWare capture flags table:

0984  21 B800 Bitfields for NetWare print flags:

0985  21 BC-- Values for NetWare status:

0986  21 BC-- Bitfields for NetWare flags:

0987  21 C701 Values for NetWare TTS status:

0988  21 CB-- Values for NetWare status:

0989  21 D4-- Values for NetWare status:

0990  21 DA-- Format of NetWare reply buffer:

0991  21 DF01 Values for Software Carousel error code:

0992  21 E0-- Format of NetWare request buffer:

0993  21 E0-- Format of NetWare "Get Printer Status" request buffer:

0994  21 E0-- Format of NetWare "Get Printer Status" reply buffer:

0995  21 E0-- Format of NetWare "Specify Capture File" request buffer:

0996  21 E0-- Format of NetWare reply buffer:

0997  21 E1-- Format of NetWare "Send Broadcast Message" request buffer:

0998  21 E1-- Format of NetWare "Send Broadcast Message" reply buffer:

0999  21 E1-- Format of NetWare "Get Broadcast Message" request buffer:

1000  21 E1-- Format of NetWare "Get Broadcast Message" reply buffer:

1001  21 E1-- Format of NetWare "Enable/Disable Broadcast Messages" request buffer:

1002  21 E1-- Format of NetWare "Enable/Disable Broadcast Messages" reply buffer:

1003  21 E1-- Format of NetWare "Send Personal Message" request buffer:

1004  21 E1-- Format of NetWare "Send Personal Message" reply buffer:

1005  21 E1-- Format of NetWare "Get Personal Message" request buffer:

1006  21 E1-- Format of NetWare "Get Personal Message" reply buffer:

1007  21 E1-- Format of NetWare "Open Message Pipe" request buffer:

1008  21 E1-- Format of NetWare "Open Message Pipe" reply buffer:

1009  21 E1-- Format of NetWare "Close Mesage Pipe" request buffer:

1010  21 E1-- Format of NetWare "Close Message Pipe" reply buffer:

1011  21 E1-- Values for NetWare function status:

1012  21 E1-- Format of NetWare "Check Pipe Status" request buffer:

1013  21 E1-- Format of NetWare "Check Pipe Status" reply buffer:

1014  21 E1-- Format of NetWare "Broadcast to Console" request buffer:

1015  21 E1-- Format of NetWare reply buffer:

1016  21 E2-- Values for NetWare function status:

1017  21 E2-- Format of NetWare "Set Directory Handle" request buffer:

1018  21 E2-- Format of NetWare reply buffer:

1019  21 E2-- Format of NetWare "Get Directory Path" request buffer:

1020  21 E2-- Format of NetWare "Get Directory Path" reply buffer:

1021  21 E2-- Format of NetWare "Scan Directory Information" request buffer:

1022  21 E2-- Format of NetWare "Scan Directory Information" reply buffer:

1023  21 E2-- Bitfields for NetWare date and time:

1024  21 E2-- Format of NetWare "Get Effective Directory Rights" request buffer:

1025  21 E2-- Format of NetWare "Get Effective Directory Rights" reply buffer:

1026  21 E2-- Bitfields for NetWare directory rights:

1027  21 E2-- Format of NetWare "Modify Maximum Rights Mask" request buffer:

1028  21 E2-- Format of NetWare reply buffer:

1029  21 E2-- Format of NetWare "Get Volume Number" request buffer:

1030  21 E2-- Format of NetWare "Get Volume Number" reply buffer:

1031  21 E2-- Format of NetWare "Get Volume Name" request buffer:

1032  21 E2-- Format of NetWare "Get Volume Name" reply buffer:

1033  21 E2-- Format of NetWare "Create Directory" request buffer:

1034  21 E2-- Format of NetWare reply buffer:

1035  21 E2-- Format of NetWare "Delete Directory" request buffer:

1036  21 E2-- Format of NetWare "Scan Directory For Trustees" request buffer:

1037  21 E2-- Format of NetWare "Scan Directory For Trustees" reply buffer:

1038  21 E2-- Format of NetWare "Add Trustee To Directory" request buffer:

1039  21 E2-- Format of NetWare "Delete Trustee From Directory" request buffer:

1040  21 E2-- Format of NetWare reply buffer:

1041  21 E2-- Format of NetWare "Rename Directory" request buffer:

1042  21 E2-- Format of NetWare "Purge Erased Files" request buffer:

1043  21 E2-- Values for NetWare function status:

1044  21 E2-- Format of NetWare "Restore Erased File" request buffer:

1045  21 E2-- Format of NetWare "Restore Erased File" reply buffer:

1046  21 E2-- Format of NetWare "Allocate Permanent Directory Handle" request buffer:

1047  21 E2-- Format of NetWare reply buffer:

1048  21 E2-- Format of NetWare "Allocate Temporary Directory Handle" request buffer:

1049  21 E2-- Format of NetWare request buffer:

1050  21 E2-- Format of NetWare reply buffer:

1051  21 E2-- Format of NetWare request buffer:

1052  21 E2-- Format of NetWare reply buffer:

1053  21 E2-- Format of NetWare request buffer:

1054  21 E2-- Format of NetWare request buffer:

1055  21 E2-- Format of NetWare reply buffer:

1056  21 E2-- Format of NetWare request buffer:

1057  21 E2-- Format of NetWare reply buffer:

1058  21 E2-- Format of NetWare request buffer:

1059  21 E2-- Format of NetWare reply buffer:

1060  21 E2-- Format of NetWare request buffer:

1061  21 E2-- Format of NetWare reply buffer:

1062  21 E3-- Format of NetWare request buffer:

1063  21 E3-- Format of NetWare reply buffer:

1064  21 E3-- Format of NetWare object property:

1065  21 E3-- Values for names of well-known NetWare properties:

1066  21 E3-- Values for NetWare security levels:

1067  21 E3-- Values for NetWare object type:

1068  21 E3-- Format of NetWare request buffer:

1069  21 E3-- Format of NetWare reply buffer:

1070  21 E3-- Format of NetWare request buffer:

1071  21 E3-- Format of NetWare reply buffer:

1072  21 E3-- Format of NetWare request buffer:

1073  21 E3-- Values for NetWare function status:

1074  21 E3-- Format of NetWare request buffer:

1075  21 E3-- Format of NetWare reply buffer:

1076  21 E3-- Values for NetWare function status:

1077  21 E3-- Format of NetWare request buffer:

1078  21 E3-- Format of NetWare reply buffer:

1079  21 E3-- Format of NetWare request buffer:

1080  21 E3-- Format of NetWare reply buffer:

1081  21 E3-- Format of NetWare request buffer:

1082  21 E3-- Format of NetWare reply buffer:

1083  21 E3-- Format of NetWare request buffer:

1084  21 E3-- Format of NetWare reply buffer:

1085  21 E3-- Format of NetWare request buffer:

1086  21 E3-- Format of NetWare reply buffer:

1087  21 E3-- Format of NetWare request buffer:

1088  21 E3-- Format of NetWare reply buffer:

1089  21 E3-- Format of NetWare request buffer:

1090  21 E3-- Format of NetWare reply buffer:

1091  21 E3-- Format of NetWare request buffer:

1092  21 E3-- Format of NetWare reply buffer:

1093  21 E3-- Format of NetWare login time:

1094  21 E3-- Values for NetWare function status:

1095  21 E3-- Format of NetWare request buffer:

1096  21 E3-- Format of NetWare reply buffer:

1097  21 E3-- Format of NetWare request buffer:

1098  21 E3-- Format of NetWare request buffer:

1099  21 E3-- Format of NetWare request buffer:

1100  21 E3-- Format of NetWare reply buffer:

1101  21 E3-- Values for NetWare function status:

1102  21 E3-- Format of NetWare request buffer:

1103  21 E3-- Format of NetWare reply buffer:

1104  21 E3-- Format of NetWare request buffer:

1105  21 E3-- Format of NetWare reply buffer:

1106  21 E3-- Format of NetWare request buffer:

1107  21 E3-- Values for NetWare function status:

1108  21 E3-- Format of NetWare request buffer:

1109  21 E3-- Format of NetWare reply buffer:

1110  21 E3-- Format of NetWare request buffer:

1111  21 E3-- Values for NetWare function status:

1112  21 E3-- Format of NetWare request buffer:

1113  21 E3-- Format of NetWare request buffer:

1114  21 E3-- Format of NetWare reply buffer:

1115  21 E3-- Values for NetWare function status:

1116  21 E3-- Format of NetWare request buffer:

1117  21 E3-- Format of NetWare reply buffer:

1118  21 E3-- Format of NetWare request buffer:

1119  21 E3-- Format of NetWare reply buffer:

1120  21 E3-- Values for NetWare function status:

1121  21 E3-- Format of NetWare request buffer:

1122  21 E3-- Format of NetWare request buffer:

1123  21 E3-- Format of NetWare reply buffer:

1124  21 E3-- Values for NetWare function status:

1125  21 E3-- Format of NetWare request buffer:

1126  21 E3-- Format of NetWare request buffer:

1127  21 E3-- Format of NetWare reply buffer:

1128  21 E3-- Format of NetWare request buffer:

1129  21 E3-- Format of NetWare request buffer:

1130  21 E3-- Format of NetWare request buffer:

1131  21 E3-- Format of NetWare request buffer:

1132  21 E3-- Format of NetWare reply buffer:

1133  21 E3-- Format of NetWare request buffer:

1134  21 E3-- Format of NetWare reply buffer:

1135  21 E3-- Values for NetWare function status:

1136  21 E3-- Format of NetWare request buffer:

1137  21 E3-- Format of NetWare reply buffer:

1138  21 E3-- Format of NetWare request buffer:

1139  21 E3-- Format of NetWare request buffer:

1140  21 E3-- Format of NetWare reply buffer:

1141  21 E3-- Bitfields for NetWare queue status:

1142  21 E3-- Format of NetWare request buffer:

1143  21 E3-- Format of NetWare reply buffer:

1144  21 E3-- Format of NetWare request buffer:

1145  21 E3-- Format of NetWare reply buffer:

1146  21 E3-- Format of NetWare request buffer:

1147  21 E3-- Format of NetWare reply buffer:

1148  21 E3-- Format of NetWare request buffer:

1149  21 E3-- Format of NetWare request buffer:

1150  21 E3-- Format of NetWare reply buffer:

1151  21 E3-- Format of NetWare request buffer:

1152  21 E3-- Format of NetWare reply buffer:

1153  21 E3-- Bitfields for NetWare job control flags:

1154  21 E3-- Format of NetWare request buffer:

1155  21 E3-- Format of NetWare request buffer:

1156  21 E3-- Format of NetWare reply buffer:

1157  21 E3-- Format of NetWare request buffer:

1158  21 E3-- Format of NetWare request buffer:

1159  21 E3-- Format of NetWare request buffer:

1160  21 E3-- Format of NetWare request buffer:

1161  21 E3-- Format of NetWare request buffer:

1162  21 E3-- Format of NetWare reply buffer:

1163  21 E3-- Format of NetWare request buffer:

1164  21 E3-- Format of NetWare request buffer:

1165  21 E3-- Format of NetWare request buffer:

1166  21 E3-- Format of NetWare reply buffer:

1167  21 E3-- Format of NetWare request buffer:

1168  21 E3-- Format of NetWare reply buffer:

1169  21 E3-- Format of NetWare request buffer:

1170  21 E3-- Format of NetWare reply buffer:

2692  21 E3-- Format of NetWare request buffer:

2693  21 E3-- Format of NetWare reply buffer:

1171  21 E3-- Values for NetWare function status:

1172  21 E3-- Format of NetWare request buffer:

1173  21 E3-- Format of NetWare reply buffer:

1174  21 E3-- Format of NetWare request buffer:

1175  21 E3-- Format of NetWare request buffer:

1176  21 E3-- Format of NetWare reply buffer:

1177  21 E3-- Format of NetWare request buffer:

1178  21 E3-- Format of NetWare request buffer:

1179  21 E3-- Format of NetWare request buffer:

1180  21 E3-- Format of NetWare reply buffer:

1181  21 E3-- Values for NetWare function status:

1182  21 E3-- Format of NetWare request buffer:

1183  21 E3-- Format of NetWare request buffer:

1184  21 E3-- Format of NetWare reply buffer:

1185  21 E3-- Format of NetWare request buffer:

1186  21 E3-- Format of NetWare request buffer:

1187  21 E3-- Format of NetWare reply buffer:

1188  21 E3-- Format of NetWare request buffer:

1189  21 E3-- Format of NetWare request buffer:

1190  21 E3-- Format of NetWare reply buffer:

1191  21 E3-- Format of NetWare request buffer:

1192  21 E3-- Format of NetWare request buffer:

1193  21 E3-- Format of NetWare request buffer:

1194  21 E3-- Format of NetWare reply buffer:

1195  21 E3-- Values for NetWare function status:

1196  21 E3-- Format of NetWare request buffer:

1197  21 E3-- Format of NetWare request buffer:

1198  21 E3-- Format of NetWare reply buffer:

1199  21 E3-- Format of NetWare request buffer:

1200  21 E3-- Format of NetWare reply buffer:

1201  21 E3-- Format of NetWare request buffer:

1202  21 E3-- Format of NetWare reply buffer:

1203  21 E3-- Format of NetWare request buffer:

1204  21 E3-- Format of NetWare reply buffer:

1205  21 E3-- Format of NetWare request buffer:

1206  21 E3-- Format of NetWare reply buffer:

1207  21 E3-- Format of NetWare request buffer:

1208  21 E3-- Format of NetWare reply buffer:

1209  21 E3-- Values for channel run state:

1210  21 E3-- Values for channel synchronization state:

1211  21 E3-- Format of NetWare request buffer:

1212  21 E3-- Format of NetWare reply buffer:

1213  21 E3-- Values for lock status of connection:

1214  21 E3-- Format of Lock Status Information:

1215  21 E3-- Format of NetWare request buffer:

1216  21 E3-- Format of NetWare reply buffer:

1217  21 E3-- Format of NetWare File Information Record:

1218  21 E3-- Bitfields for lock flags:

1219  21 E3-- Bitfields for access flags:

1220  21 E3-- Format of NetWare request buffer:

1221  21 E3-- Format of NetWare reply buffer:

1222  21 E3-- Format of NetWare File Usage Information Record:

1223  21 E3-- Values for NetWare function status:

1224  21 E3-- Format of NetWare request buffer:

1225  21 E3-- Format of NetWare reply buffer:

1226  21 E3-- Format of NetWare Physical Record Lock Info:

1227  21 E3-- Bitfields for lock status:

1228  21 E3-- Format of NetWare request buffer:

1229  21 E3-- Format of NetWare reply buffer:

1230  21 E3-- Format of NetWare Physical Record Lock Info:

1231  21 E3-- Format of NetWare request buffer:

1232  21 E3-- Format of NetWare reply buffer:

1233  21 E3-- Format of NetWare Logical Lock Information Record:

1234  21 E3-- Format of NetWare request buffer:

1235  21 E3-- Format of NetWare reply buffer:

1236  21 E3-- Format of NetWare Task Information Record:

1237  21 E3-- Format of NetWare request buffer:

1238  21 E3-- Format of NetWare reply buffer:

1239  21 E3-- Format of NetWare Semaphore Information Record:

1240  21 E3-- Format of NetWare request buffer:

1241  21 E3-- Format of NetWare reply buffer:

1242  21 E3-- Format of NetWare Semaphore Information:

1243  21 E3-- Format of NetWare request buffer:

1244  21 E3-- Format of NetWare reply buffer:

1245  21 E3-- Values for NetWare function status:

1246  21 E3-- Format of NetWare request buffer:

1247  21 E3-- Format of NetWare reply buffer:

1248  21 E3-- Format of NetWare request buffer:

1249  21 E3-- Format of NetWare reply buffer:

1250  21 E3-- Format of NetWare request buffer:

1251  21 E3-- Format of NetWare reply buffer:

1252  21 E3-- Format of NetWare request buffer:

1253  21 E3-- Format of NetWare reply buffer:

1254  21 E3-- Format of NetWare Dynamic Memory Information:

1255  21 E3-- Format of NetWare request buffer:

1256  21 E3-- Format of NetWare reply buffer:

1257  21 E4-- Bitfields for NetWare file attributes:

1258  21 E7-- Format of NetWare date/time buffer:

1259  21 E8-- Bitfields for DoubleDOS keyboard control flags:

1260  21 E9-- Values for DoubleDOS timesharing priority:

1261  21 EB-- Values for NetWare status:

1262  21 EF01 Values in NetWare drive flag table:

1263  21 EF03 Format of NetWare connection ID table [one entry of eight-element array]:

1264  21 EF04 Format of file server name table:

1265  21 F1-- Values for NetWare function status:

1266  21 F2-- Values for NetWare Core Protocol functions:

1267  21 F216 Format of NetWare request buffer:

1268  21 F216 Format of NetWare request buffer:

1269  21 F216 Format of NetWare request buffer:

1270  21 F216 Format of NetWare reply buffer:

1271  21 F216 Format of NetWare request buffer:

1272  21 F216 Bitfields for NetWare trustee rights:

1273  21 F216 Format of NetWare request buffer:

1274  21 F216 Format of NetWare reply buffer:

2733  21 F216 Format of NetWare "Get Extended Volume Information" request buffer:

2734  21 F216 Format of NetWare "Get Extended Volume Information" reply buffer:

1275  21 F217 Format of NetWare request buffer:

1276  21 F217 Format of NetWare reply buffer:

2729  21 F217 Format of NetWare "Change Connection State" requst buffer:

2732  21 F217 Format of NetWare "Set Watchdog Delay Interval" request buffer:

2731  21 F217 Format of NetWare "Get Connection List" request buffer:

2727  21 F217 Format of NetWare "Get Volume Extended Information" request buffer:

2728  21 F217 Format of NetWare "Get Volume Extended Information" reply buffer:

2694  21 F217 Format of NetWare "Add Object to Set" request buffer:

1277  21 F217 Format of NetWare request buffer:

1278  21 F217 Format of NetWare request buffer:

1279  21 F217 Format of NetWare reply buffer:

1280  21 F217 Format of NetWare connection record:

1281  21 F217 Format of NetWare request buffer:

1282  21 F217 Format of NetWare reply buffer:

1283  21 F217 Format of returned record:

1284  21 F217 Format of NetWare request buffer:

1285  21 F217 Format of NetWare reply buffer:

1286  21 F217 Format of NetWare lock record:

1287  21 F217 Format of NetWare request buffer:

1288  21 F217 Format of NetWare reply buffer:

1289  21 F217 Format of NetWare request buffer:

1290  21 F217 Format of NetWare reply buffer:

1291  21 F217 Format of NetWare "Convert Path to Directory Entry" request buffer:

1292  21 F217 Format of NetWare "Convert Path to Directory Entry" reply buffer:

2730  21 F217 Format of NetWare "Clear Connection Number" request buffer:

1293  21 F244 Values for NetWare function status:

1294  21 F244 Format of NetWare request buffer:

1295  21 F257 Format of NetWare request buffer:

1296  21 F257 Bitfields for return information mask:

1297  21 F257 Format of NetWare reply buffer for name space info:

1298  21 F258 Format of NetWare "Get Volume Auditing Statistics" request buffer:

1299  21 F258 Format of NetWare "Get Volume Auditing Statistics" reply buffer:

1300  21 F268 Format of NetWare "Get Tree Name" request buffer:

1301  21 F268 Format of NetWare "Get Tree Name" reply buffer:

1302  21 F268 Format of NetWare "Get Bindery Context" request buffer:

1303  21 F268 Format of NetWare "Get Bindery Context" reply buffer:

1304  21 F268 Format of NetWare "NDS List Partitions" request buffer:

1305  21 F268 Format of NetWare "NDS List Partitions" reply buffer:

1306  21 F268 Format of NetWare "NDS Get Server Name and Address" request buffer:

1307  21 F268 Format of NetWare "NDS Get Server Name and Address" reply buffer:

1308  21 F268 Format of NetWare "NDS Logout" request buffer:

1309  21 F268 Format of NetWare "NDS Logout" reply buffer:

1310  21 F268 Format of NetWare "Get DS Auditing Statistics" request buffer:

1311  21 F268 Format of NetWare "Get DS Auditing Statistics" reply buffer:

1312  21 F272 Format of NetWare "Get File Server UTC Time" request buffer:

1313  21 F272 Format of NetWare "Get File Server UTC Time" reply buffer:

1314  21 F27B Format of NetWare "Get Router Info" request buffer:

1315  21 F27B Format of NetWare "Get Router Info" reply buffer:

1316  21 F27B Format of NetWare "Get Router Info" request buffer:

1317  21 F27B Format of NetWare "Get Router Info" reply buffer:

1318  21 F3-- Format of NetWare request buffer:

1319  21 FF00 Format of TopWare user information:

1320  21 FF00 Format of TopWare drive mapping [array]:

1321  21 FF80 Format of TopWare message:

1322  21 FF8D Values for TopWare screen mode:

1323  21 FF9A Format of TopWare user-defined packet:

1324  21 FFB0 Bitfields for TopWare printer priority status:

1325  21 FFB3 Bitfields for TopWare printer start-of-job formfeed status:

1326  21 FFBF Format of TopWare logon information:

1327  21 FFC0 Bitfields for TopWare printer end-of-job formfeed status:

1328  21 FFC3 Bitfields for TopWare printer sharing status:

1329  21 FFC8 Bitfields for TopWare print header status:

1330  21 FFCC Format of TopWare queued file information buffer [16-item array, one element]:

1331  21 FFCD Format of TopWare server status:

1332  21 FFE3 Values for TopWare error code:

1333  21 FFE3 Values TopWare receive routine is called with:

1334  24 ---- Values critical error handler is called with:

1335  24 ---- Bitfields for critical error type and processing flags:

1336  24 ---- Values for critical error code:

1337  24 ---- Values for critical error handler action code:

1338  25 ---- Values for disk I/O status:

1339  25 ---- Format of disk read packet:

1340  25 CDCD Format of Stacker v2+ driver address buffer:

1341  25 CDCD Format of Stacker v2+ device driver:

1342  25 CDCD Format of Stacker boot record:

1343  26 ---- Format of disk write packet:

1344  2A 80-- Values for DOS critical section number:

1345  2C 0000 Values for Cloaking error code:

1346  2C 0005 Bitfields for extended access mode byte:

1347  2C 0009 Values Cloaking passalong address is called with:

1348  2C 0009 Format of Cloaking caller registers:

1349  2C 000F Values for Cloaking shell event code:

1350  2C 000F Bitfields for boost value:

1351  2C 0012 Bitfields for VM status flags:

1352  2C 0012 Bitfields for shell flags:

1353  2C 0013 Bitfields for message box flags:

1354  2C 0013 Values for response codes:

1355  2C 002D Values Cloaking port-trapping passalong address is called with:

1356  2C 0033 Format of client registration structure:

1357  2D ---- Format of AMIS signature string:

1358  2D ---- Format of AMIS interrupt hook list [array]:

1359  2D ---- Format of AMIS hotkey list:

1360  2D ---- Bitfields for type of AMIS hotkey checking:

1361  2D ---- Bitfields for AMIS shift states:

1362  2D ---- Bitfields for AMIS hotkey flags:

1363  2D ---- Format of interrupt sharing protocol interrupt handler entry point:

1364  2D ---- Values of AMIS signatures known to be in use:

1365  2D --10 Format of dLite parameter block:

1366  2D --10 Bitfields for dLite TSR flags:

1367  2D --10 Bitfields for Burnout Plus status:

1368  2D --10 Bitfields for Burnout Plus features loaded/features enabled:

1369  2D --10 Format of Burnout Plus control structure:

1370  2D --10 Bitfields for extended Burnout Plus status information:

1371  2E ---- Format of DOS commandline:

1372  2F ---- Format of POPUP vector table entry:

1373  2F ---- Format of CiriSOFT author_name_ver table:

1374  2F ---- Bitfields for CiriSOFT characteristics byte:

1375  2F ---- Format of CiriSOFT vector_area table:

1376  2F ---- Format of extra_area table (needed only to improve relocation feature):

1377  2F ---- Format of CiriSOFT external_ctrl table:

1378  2F 0101 Format of PRINT submit packet:

1379  2F 0101 Values for PRINT error code:

1380  2F 0802 Values for device driver command code:

1381  2F 0802 Bitfields for device request status:

1382  2F 0802 Format of device driver request header:

1383  2F 0802 Values for device driver error code:

1384  2F 0802 Call European MS-DOS 4.0 device helper function with:

1385  2F 0802 Format of European MS-DOS 4.0 character queue:

1386  2F 0803 Format of DOS 3.30 drive data table:

1387  2F 0803 Format of COMPAQ DOS 3.31 drive data table:

1388  2F 0803 Format of DOS 4.0-6.0 drive data table:

1389  2F 0803 Bitfields for flags describing drive:

1390  2F 10FE Call DELWATCH private entry point with:

1391  2F 110A Format of parameter block entry [array, but currently limited to single entry]:

1392  2F 1186 Format of LAN Manager DosReadAsynchNmPipe stack frame:

1393  2F 118F Format of LAN Manager DosReadAsynchNmPipe stack frame:

1394  2F 1190 Format of LAN Manager DosReadAsynchNmPipe2 stack frame:

1395  2F 1191 Format of LAN Manager DosReadAsynchNmPipe2 stack frame:

1396  2F 122A Values DOS 3.30+ FASTOPEN entry point is called with:

1397  2F 122A Values PC-DOS 4.01 FASTOPEN is additionally called with:

1398  2F 122A Values MS-DOS 5.0-6.0 FASTOPEN is additionally called with:

1399  2F 122E Format of DOS 4.x error table:

1400  2F 122E Call error retrieval function with:

1401  2F 122E Values for parameter errors:

1402  2F 12FF Call Novell EMM386.EXE entry point with:

1403  2F 1401 Format of DOS 3.30 internal code page structure:

1404  2F 1402 Values for POPUP error code:

1405  2F 14FE Format of DR-DOS COUNTRY.SYS file:

1406  2F 1500 Format of CDBLITZ statistics record:

1407  2F 150F Format of CD-ROM directory entry (direct copy):

1408  2F 150F Format of CD-ROM directory entry (canonicalized):

1409  2F 1603 Format of Windows/386 instance data:

1410  2F 1605 Format of Windows Startup Information Structure:

1411  2F 1605 Format of one Instance Item in array:

1412  2F 1605 Format of Virtual Device Reference Data:

1413  2F 1605 Values Windows virtual mode enable/disable procedure is called with:

1414  2F 1607 Values for VNETBIOS action code:

1415  2F 1607 Bitfields for DOSMGR patch requests:

1416  2F 1607 Format of DOSMGR patch table:

1417  2F 160B Format of TSR-to-Windows communication structure:

1418  2F 160B Format of Norton Utilities 6.0 TSR ID block:

1419  2F 1684 Values for MS Windows VxD ID:

1420  2F 1684 Call VTD.386 entry point with:

1421  2F 1684 Call REBOOT protected-mode entry point with:

1422  2F 1684 Call DOSMGR entry point with:

1423  2F 1684 Call SHELL entry point with:

1424  2F 1684 Format of Shell Execution Block (SEB):

1425  2F 1684 Bitfields for 386 Enhanced Mode PIF flags:

1426  2F 1684 Bitfields for SHELL display options:

1427  2F 1684 Call PAGEFILE entry point with:

1428  2F 1684 Values for MS Windows PAGEFILE pager type:

1429  2F 1684 Call Configuration Manager entry point with:

1430  2F 1684 Format of Configuration Information Structure:

1431  2F 1684 Call VADMAD entry point with:

1432  2F 1684 Call VSWITCHD entry point with:

2648  2F 1684 Call PHARLAPX VxD entry point with:

2649  2F 1684 Values for PHARLAPX function status:

2650  2F 1684 Format of PHARLAPX PasteKey structure:

2651  2F 1684 Format of PHARLAPX VxD-call register structure:

2652  2F 1684 Bitfields for PHARLAPX VxD-call register map:

1433  2F 1684 Call EDOS entry point with:

1434  2F 1684 Call WPS protected-mode entry point with:

1435  2F 1684 Format of WPS.386 VxD characteristics structure:

1436  2F 1684 Call POSTMSG protected-mode entry point with:

1437  2F 1684 Values POSTMSG callback routine is called with:

1438  2F 1684 Call POSTMSG V86-mode entry point with:

1439  2F 1684 Call VbillD entry point with:

1440  2F 1685 Bitfields for VM switching flags:

1441  2F 1687 Call DPMI mode switch entry point with:

1442  2F 168A Values for DPMI vendor-specific API names:

1443  2F 168A Call Windows-support ("MS-DOS") entry point with:

1444  2F 168A Call Phar Lap RUN286 entry point with:

1445  2F 1703 Values for WinOldAp clipboard format:

1446  2F 1703 Format of Windows Clipboard bitmap:

1447  2F 1703 Format of Windows metafile picture:

1448  2F 170A Values for GDI information index:

1449  2F 170A Values for device classification:

1450  2F 170A Bitfields for curve capabilities:

1451  2F 170A Bitfields for line capabilities:

1452  2F 170A Bitfields for polygon capabilities:

1453  2F 170A Bitfields for text capabilities:

1454  2F 170A Values for clipping capabilities:

1455  2F 170A Bitfields for raster capabilities:

1456  2F 1A02 Format of ANSI.SYS parameter block:

1457  2F 1A21 Values for AVATAR.SYS state characters:

1458  2F 1AA6 Bitfields for ANSIPLUS hooked interrupts mask:

1459  2F 2707 Format of TaskMAX parameter block:

1460  2F 2780 Values for Novell DOS 7 EMM386 function status:

1461  2F 39-- Values for Kingswood TSR ID number:

1462  2F 39-- Format of Kingswood TSR modules:

1463  2F 39-- Format of Kingswood TSR interrupt list entry:

1464  2F 3912 Bitfields for Kingswood ANSI flags:

1465  2F 4000 Values for Windows video virtualization:

1466  2F 4309 Format of XMS handle table:

1467  2F 4309 Format of XMS handle descriptor [array]:

1468  2F 4310 Format of XMS driver entry point:

1469  2F 4310 Call the XMS driver "Get XMS version number" function with:

1470  2F 4310 Call the XMS driver "Request High Memory Area" function with:

1471  2F 4310 Call the XMS driver "Release High Memory Area" function with:

1472  2F 4310 Call the XMS driver "Global enable A20, for using the HMA" function with:

1473  2F 4310 Call the XMS driver "Global disable A20" function with:

1474  2F 4310 Call the XMS driver "Local enable A20" function with:

1475  2F 4310 Call the XMS driver "Local disable A20" function with:

1476  2F 4310 Call the XMS driver "Query A20 state" function with:

1477  2F 4310 Call the XMS driver "Query free extended memory" function with:

1478  2F 4310 Call the XMS driver "Allocate extended memory block" function with:

1479  2F 4310 Call the XMS driver "Free extended memory block" function with:

1480  2F 4310 Call the XMS driver "Move extended memory block" function with:

1481  2F 4310 Call the XMS driver "Lock extended memory block" function with:

1482  2F 4310 Call the XMS driver "Unlock extended memory block" function with:

1483  2F 4310 Call the XMS driver "Get handle information" function with:

1484  2F 4310 Call the XMS driver "Reallocate extended memory block" function with:

1485  2F 4310 Call the XMS driver "Request upper memory block" function with:

1486  2F 4310 Call the XMS driver "Release upper memory block" function with:

1487  2F 4310 Call the XMS v3.0+ driver "Reallocate upper memory block" function with:

1488  2F 4310 Call the QEMM v5.11 "???" function with:

1489  2F 4310 Call the QEMM v5.11 "???" function with:

1490  2F 4310 Call the XMS v3.0 driver "Query free extended memory" function with:

1491  2F 4310 Call the XMS v3.0 driver "Allocate any extended memory" function with:

1492  2F 4310 Call the XMS v3.0 driver "Get extended EMB handle information" function with:

1493  2F 4310 Call the XMS v3.0 driver "Reallocate any extended memory block" function with:

1494  2F 4310 Values for XMS error code returned in BL:

1495  2F 4310 Format of EMM structure:

1496  2F 4310 Format of XMS handle info [array]:

1497  2F 4310 Call the Cloaking v1.01 "Client Registration" function with:

1498  2F 4310 Call the Cloaking v1.01 "Verify Cloaking Host" function with:

1499  2F 4310 Call the CLOAKING.EXE "Uninstall Host" function with:

1500  2F 4310 Call the Cloaking "Start Protected-Mode Client" function with:

1501  2F 4310 Values user initialization function is called with:

1502  2F 4310 Call the Netroom RM386 v6.00 "Reallocate upper memory block" function with:

1503  2F 4310 Call the Netroom RM386 v6.00 "re-enable HMA allocation" function with:

1504  2F 4310 Call the Netroom RM386 v6.00 "Create new UMB entry" function with:

1505  2F 4310 Call the Netroom RM386 v6.00 "Get all XMS handles info" function with:

2712  2F 4310 Call XMZ v1.02 "Get HMA Information" function with:

2713  2F 4310 Call XMZ v1.02 "Get EMB Handle Information" function with:

2714  2F 4310 Format of XMZ v1.02 EMB Handle structure:

1506  2F 4330 Call parameters for external A20 handler are:

1507  2F 43E0 Format of DPMS 1.0 server structure:

1508  2F 43E0 Bitfields for DPMS flags:

1509  2F 43E0 Format of beta DPMS registration structure:

1510  2F 43E1 Format of DPMS client interface structure:

1511  2F 43E1 Call DPMS entry point with:

1512  2F 43E1 Values for DPMS error code:

1513  2F 43E1 Format of DPMS callup/down register structure:

1514  2F 43E1 Format of DPMS default register structure:

1515  2F 43E1 Format of DPMS lock DDS:

1516  2F 4A10 Bitfields for SMARTDRV status:

1517  2F 4A10 Values for SMARTDRV status byte:

1518  2F 4A10 Format of SMARTDRV information pointer table:

1519  2F 4A11 Values for DBLSPACE function status:

1520  2F 4A11 Format of DBLSPACE activation record:

1521  2F 4A11 Values for DBLSPACE Mount error code:

1522  2F 4A11 Format of DBLSPACE free space record:

1523  2F 4A12 Format of LZSINFO structure:

1524  2F 4A12 Bitfields for LZSAPI capabilities:

1525  2F 4A12 Call Stacker 3.x-style non-incremental functions with:

1526  2F 4A12 Call Stacker 4-style incremental procedures with:

1527  2F 4A12 Values for Compression algorithm parameters:

1528  2F 4A12 Format of LZSSWAP structure:

1529  2F 4A13 Format of DBLSPACE entry point record:

1530  2F 4B01 Format of task switcher callback info structure:

1531  2F 4B01 Values task switcher notification function is called with:

1532  2F 4B02 Call task switcher entry point with:

1533  2F 4B02 Format of task switcher version structure:

1534  2F 4B02 Format of API info structure:

1535  2F 4B05 Format of task switcher startup info structure:

1536  2F 4B05 Format of one instance data record in array:

1537  2F 4B20 Format of WIN.COM buffer:

1538  2F 4E53 Values for SilverNET module ID:

1539  2F 4E53 Values for SilverNET Peer parameter index (* = read-only):

1540  2F 4E53 Bitfields for spool flags:

1541  2F 4E53 Values for NS Share parameter index (* = read-only):

1542  2F 4E53 Values for Workstation parameter index (* = read-only):

1543  2F 5200 Format of JAMINFO v1.10 structure:

1544  2F 5200 Format of JAMINFO v1.20 structure:

1545  2F 5200 Bitfields for JAMINFO flags:

1546  2F 5200 Format of JAM FRAGMENT structure:

1547  2F 5200 Values for JAM.SYS status (high byte):

1548  2F 5206 Format of disk transfer packet:

1549  2F 5401 Bitfields for power management status:

1550  2F 5401 Values for POWER.EXE function status:

1551  2F 5403 Values for power management setting:

1552  2F 5453 Values for TesSeRact names:

1553  2F 5453 Format of TesSeRact User Parameter Block:

1554  2F 5453 Format of TSR internal data area:

1555  2F 5481 Format of POWER.EXE idle detection statistics:

1556  2F 5481 Format of APM statistics:

1557  2F 5600 Format of Interlnk device driver header:

1558  2F 6282 Format of VSAFE/VWATCH record:

1559  2F 6284 Format of DPROTECT data for v9.0:

1560  2F 6284 Bitfields for DATAMON/DPROTECT options:

1561  2F 6284 Bitfields for DATAMON/DPROTECT CX flags:

1562  2F 7001 Format of License Service SLSREQUEST structure:

1563  2F 7001 Format of License Service SLSCHALLENGE structure:

1564  2F 7002 Format of License Service SLSRELEASE structure:

1565  2F 7003 Format of License Service SLSUPDATE structure:

1566  2F 7004 Format of License Service SLSGETERROR structure:

1567  2F 7005 Format of License Service SLSQUERY structure:

1568  2F 7200 Format of SRDISK device driver header:

1569  2F 7A10 Bitfields for NetWare TBMI status word:

1570  2F 7A18 Bitfields for NetWare TASKID configuration flags:

1571  2F 7A20 Call DOS Requester entry point with:

1572  2F 7A20 Values for VLM status code:

1573  2F 7A20 Values for VLM identifier:

1574  2F 7A20 Format of VLM header:

2719  2F 7A20 Format of VLM Control Block for VLM v1.20 [array]:

1575  2F 7A20 Call VLM Manager (VLM.EXE, ID 0001h) with:

1576  2F 7A20 Call Connection Manager (CONN.VLM, ID 0010h) with:

2725  2F 7A20 Format of VLM connection statistics:

2720  2F 7A20 Format of NetWare VLM Connection Table [array]:

1577  2F 7A20 Values for NetWare Connection Manager CEI (Connection Entry Information):

1578  2F 7A20 Call TRAN.VLM (VLM ID 0020h) with:

1579  2F 7A20 Format of TRAN.VLM request/reply fragment descriptor (array):

1580  2F 7A20 Call IPXNCP.VLM (VLM ID 0021h) with:

1581  2F 7A20 Call NWP.VLM (VLM ID 0030h) with:

1582  2F 7A20 Call NDS.VLM (VLM ID 0032h) with:

2726  2F 7A20 Format of NetWare NDS request/reply buffer descriptor:

1583  2F 7A20 Call REDIR.VLM (VLM ID 0040h) with:

1584  2F 7A20 Format of NetWare SFT build request:

1585  2F 7A20 Call File I/O FIO.VLM (VLM ID 0041h) with:

1586  2F 7A20 Call PRINT.VLM (VLM ID 0042h) with:

2653  2F 7A20 Format of PRINT.VLM standard print control information:

1587  2F 7A20 Call GENERAL.VLM (VLM ID 0043h) with:

1588  2F 7A20 Call NETX.VLM (VLM ID 0050h) with:

1589  2F 7A20 Call SECURITY.VLM (VLM ID 0061h) with:

1590  2F 7A20 Call VLM CallA entry point with:

1591  2F 7A20 Format of Overlay Asynchronous Control Block (OACB):

1592  2F 7A20 Call DOS Requester entry point with:

1593  2F 7A20 Format of DOS Requester data:

1594  2F 7A20 Call offset 08h function with:

1595  2F 7A2F Call IPXODI entry point with:

1596  2F 7A40 Bitfields for returned BX:

1597  2F 7A40 Call NetWare TCP/IP entry point with:

1598  2F 7A40 Format of NetWare TCP/IP parameter block:

1599  2F 7A40 Values for NetWare TCP/IP function code:

1600  2F 7A42 Call NetWare TCPIP.EXE entry point with:

1601  2F 7A42 Format of data buffer:

1602  2F 7AC8 Bitfields for LAN HiJack function(s) to enable/disable:

1603  2F 7AF1 Call Access Server driver "initialize port" function with:

1604  2F 7AF1 Call Access Server driver "get port status" function with:

1605  2F 7AF1 Call Access Server driver "get input from port" function with:

1606  2F 7AF1 Call driver "send output data to port" function with:

1607  2F 7AF1 Call driver "get I/O character counts" function with:

1608  2F 7AF1 Call driver "control XON/XOFF" function with:

1609  2F 7AF1 Call driver "get error counts and statistics" function with:

1610  2F 7AF1 Call driver "general request" function with:

1611  2F 7AF1 Call driver "deadman timer management" function with:

1612  2F 7AF1 Call driver "get buffer sizes" function with:

1613  2F 7AF1 Values for Access Server transmitter status:

1614  2F 7AF1 Values for Access Server receiver status:

1615  2F 7AF1 Bitfields for external status signals:

1616  2F 7AF1 Format of Access Server configuration parameter block:

1617  2F 7AF1 Format of Access Server statistics:

1618  2F 7AF1 Format of Access Server XON/XOFF characters:

1619  2F 7AFF Values Windows support procedure called with:

1620  2F 7F01 Format of CD-ROM redirector command record:

1621  2F 8000 Format of CS_TSR process block:

1622  2F 8001 Values for CS_TSR signature strings:

1623  2F 80FB Values for FaxBIOS function number:

1624  2F 80FB Values for FaxBIOS result code:

1625  2F 80FB Format of FaxBIOS SYS_LOGIN command buffer:

1626  2F 80FB Bitfields for FaxBIOS capabilities:

1627  2F 80FB Bitfields for T.30 capabilities:

1628  2F 80FB Format of FaxBIOS SYS_LOGOUT command buffer:

1629  2F 80FB Format of FaxBIOS SYS_GET_FAXAPP_INFO command buffer:

1630  2F 80FB Format of FaxBIOS STAT_IO_GET command buffer:

1631  2F 80FB Format of FaxBIOS STAT_FAXBIOS_GET command buffer:

1632  2F 80FB Format of FaxBIOS PDIR_OPEN command buffer:

1633  2F 80FB Format of FaxBIOS PDIR_CLOSE command buffer:

1634  2F 80FB Format of FaxBIOS PDIR_READ_PERSON command buffer:

1635  2F 80FB Format of FaxBIOS SCHED_OPEN, SCHED_CANCEL command buffer:

1636  2F 80FB Format of FaxBIOS SCHED_ADD_DEST command buffer:

1637  2F 80FB Format of FaxBIOS SCHED_ADD_FILE command buffer:

1638  2F 80FB Format of FaxBIOS SCHED_SET_PARAMS command buffer:

1639  2F 80FB Format of FaxBIOS SCHED_CLOSE command buffer:

1640  2F 80FB Format of FaxBIOS SLOG_OPEN, SLOG_CLOSE, RLOG_OPEN, RLOG_CLOSE command buffer:

1641  2F 80FB Format of FaxBIOS GRAPH_GET_FILE_TYPE command buffer:

1642  2F 80FB Format of FaxBIOS GRAPH_CREATE_FILE command buffer:

1643  2F 80FB Format of FaxBIOS GRAPH_CLOSE_FILE, GRAPH_END_PAGE command buffer:

1644  2F 80FB Format of FaxBIOS GRAPH_CREATE_PAGE command buffer:

1645  2F 80FB Format of FaxBIOS GRAPH_WRITE_PAGE command buffer:

1646  2F 80FB Format of FaxBIOS GRAPH_OPEN_FILE command buffer:

1647  2F 80FB Format of FaxBIOS GRAPH_GOTO_PAGE command buffer:

1648  2F 80FB Format of FaxBIOS GRAPH_READ_PAGE command buffer:

1649  2F 80FB Format of FaxBIOS IOCTL_ANSWER_FAX command buffer:

1650  2F 80FB Format of FaxBIOS IOCTL_DIAL command buffer:

1651  2F 8200 Values for RESPLAY status:

1652  2F 8210 Values for RESPLAY sound device:

1653  2F AC01 Bitfields for QRIP internal flags:

1654  2F AC06 Values for QRIP special codes:

1655  2F AC1A Values for QRIP protocol identifier:

1656  2F AC1A Values for QRIP file type:

1657  2F AC1B Values for QRIP font size specifier:

1658  2F AD03 Format of DOS 5.0-6.0 DISPLAY.SYS code page information:

1659  2F AD80 Format of KEYB internal data:

2718  2F AD80 Bitfields for MS-DOS v6.22 KEYB flags:

1660  2F AD80 Format of code page table list entries:

1661  2F AD80 Format of KEYB translation data:

1662  2F AE00 Format of COMMAND.COM command line buffer:

1663  2F AE00 Format of command name buffer:

1664  2F AFDE Format of Disk-Emu information data:

1665  2F B706 Bitfields for APPEND state:

1666  2F B804 Values network post routine is called with:

1667  2F B804 Format of text header:

1668  2F B80F Format of DOS LAN Requester return data buffer:

1669  2F B80F Bitfields for configuration flags:

1670  2F C000 Call LSL function "Request MLID Registration" with:

1671  2F C000 Call LSL function "get support entry points" with:

1672  2F C000 Call LSL function "Request MLID API entry point" with:

1673  2F C000 Values for LSL completion code:

1674  2F C000 Format of LSL registration record:

1675  2F C000 Format of LSL information block:

1676  2F C000 Format of entry point record:

1677  2F C000 Call protocol support entry point with:

1678  2F C000 Call general support entry point with:

1679  2F C000 Call MLID control handler with:

1680  2F C000 Call protocol stack control entry point with:

1681  2F C000 Format of AES ECB:

1682  2F C000 Format of LSL Configuration Table:

1683  2F C000 Format of LSL Statistics Table:

1684  2F C000 Format of Protocol Stack Statistics Table:

1685  2F C000 Format of Protocol Stack Configuration Table:

1686  2F C000 Format of MLID Configuration Table:

1687  2F C000 Bitfields for MLID mode flags:

1688  2F C000 Bitfields for bus/multicast flags:

1689  2F C000 Bitfields for MLID sharing flags:

1690  2F C000 Format of MLID Statistics Table:

1691  2F C000 Format of bound stack info structure:

1692  2F C000 Format of stack info structure:

1693  2F C000 Format of General Service Control Block:

1694  2F C000 Format of Lookahead structure:

1695  2F C000 Format of ODI ECB:

1696  2F C000 Values event service routine is called with:

1697  2F C000 Call NESL function GetNESLConfigPointer with:

1698  2F C000 Call NESL function RegisterEventProducer with:

1699  2F C000 Call NESL function DeRegisterEventProducer with:

1700  2F C000 Call NESL function EventNotification with:

1701  2F C000 Call NESL function RegisterEventConsumer with:

1702  2F C000 Call NESL function DeRegisterEventConsumer with:

1703  2F C000 Values for NESL Error code:

1704  2F C000 Format of NESL Configuration Table:

1705  2F C000 Format of NESL Producer Event Control Block (PECB):

1706  2F C000 Format of NESL Consumer Event Control Block (CECB):

1707  2F C000 Values NESL Consumer Notification Procedure is called with:

1708  2F C000 Format of NESL Event Parameter Block (EPB):

1709  2F C000 Values for NESL Event Class Names:

1710  2F C000 Values for NESL Event Names:

1711  2F C000 Format of NETWARN Configuration structure:

1712  2F C000 Bitfields for NETWARN options:

1713  2F C000 Format of PrintCache configuration table:

1714  2F C000 Format of PrintCache data table:

1715  2F C000 Values for Frank Kintrup TSR program ID:

1716  2F C001 Format of DIMWIT TSR configuration data:

1717  2F C058 Values for Explosiv function status:

1718  2F C300 Values for SpaceManager program identifier:

1719  2F CB01 Values for CAS error code:

1720  2F CB0E Format of CAS external data block:

1721  2F CB10 Values for CAS event type:

1722  2F CB10 Format of CAS status area:

1723  2F CB10 Values for CAS event status:

1724  2F CB10 Format of CAS file transfer record:

1725  2F CB12 Format of status buffer for Intel Connection CoProcessor:

1726  2F CB12 Bitfields for Connection CoProcessor baud rate:

1727  2F CB12 Format of status buffer for Intel SatisFAXtion board:

1728  2F CB12 Bitfields for Connection CoProcessor connection status flags:

1729  2F CB12 Bitfields for communications status:

1730  2F CB12 Bitfields for Connection CoProcessor hardware status:

1731  2F CB12 Bitfields for Connection CoProcessor switch states:

1732  2F CB12 Bitfields for communications flags:

1733  2F CB12 Bitfields for SatisFAXtion connection status flags:

1734  2F CB12 Bitfields for SatisFAXtion board state:

1735  2F CB13 Bitfields for Intel Connection CoProcessor failure codes:

1736  2F CB13 Bitfields for Intel SatisFAXtion failure codes:

1737  2F CB15 Format of CAS file submission data area:

1738  2F CC-- Values for PC-Kwik program identifier:

1739  2F CD04 Values for IPI function status:

1740  2F CD04 Format of structure:

1741  2F CD07 Format of SWELL.EXE info buffer:

1742  2F CD08 Format of IPI screen image structure:

1743  2F CD09 Format of IPI load screen structure:

1744  2F CD0A Format of IPI palette structure:

1745  2F D100 Format of MDEBUG identification table:

1746  2F D102 Values for MDEBUG error number:

1747  2F D102 Format of MDEBUG data structure:

1748  2F D110 Format of the MDEBUG driver identification table:

1749  2F D201 Call VIDRAM entry point with:

1750  2F D201 Values for VIDRAM state:

1751  2F D201 Values for VIDRAM extra RAM status:

1752  2F D201 Bitfields for VIDRAM feature flags:

1753  2F D201 Format of VIDRAM partial map context (EMS 3.2):

1754  2F D201 Format of VIDRAM partial map context (EMS 4.0):

1755  2F D44D Format of 4DOS v4.0 data area:

1756  2F D44D Format of 4DOS EXEC record:

1757  2F D600 Format of HEART.COM buffer:

1758  2F D800 Call CLIENT API entry point with:

1759  2F D880 Call SERVER API entry point with:

1760  2F D8C0 Call NLCACHE/NWCACHE API entry point with:

1761  2F DB00 Format of ZFAX Configuration Table:

1762  2F DB00 Values for ZFAX printer type:

1763  2F DB00 Values for Ring Answer Type:

1764  2F DB00 Values for DTMF action:

1765  2F DB11 Values for ZFAX status:

1766  2F DD-- Format of CappaCom TSR info list:

1767  2F DD-- Format of xDISK data buffer:

1768  2F DE01 Call DVeop entry point with:

1769  2F DE01 Format of DVSIXDI v1.00 information for one process:

1770  2F DE01 Format of DVSIXDI v1.10-v2.00 information for one process:

1771  2F DE01 Bitfields for DVSIXDI process flags:

1772  2F DE04 Format of XMS XDI structure:

1773  2F DF00 Values for HyperWare product code:

1774  2F DF01 Bitfields for HyperDisk caching flags:

1775  2F E101 Bitfields for Phantom2 function mask:

1776  2F E301 Format of returned data structure for ANARKEY v2.0:

1777  2F E301 Format of returned data structure for ANARKEY v3+:

1778  2F ED00 Values for Phar Lap DOS extender ID:

1779  2F EE01 Values for XVIEW function status:

1780  2F EE02 Values for XVIEW anchor page number:

1781  2F EE03 Format of XVIEW data packet:

1782  2F EE-- Values for WEB module ID:

1783  2F EE-- Call server module entry point with:

1784  2F EE-- Call client module entry point with:

1785  2F EE-- Call mail module entry point with:

1786  2F EE-- Call spooler entry point with:

1787  2F EE-- Call kernel entry point with:

1788  2F EE-- Format of client debug data structure:

1789  2F EE-- Format of WIN_INSTANCE_DATA structure:

1790  2F EE-- Format of WEB AES Event Control Block:

1791  2F EE-- Values for kernel dialog flags:

1792  2F EEF0 Values for WEB Notification Function ID:

1793  2F F201 Format of WINX server buffer:

1794  2F F401 Format of FINDIRQ hooked interrupt table:

1795  2F FB42 Format of DPMILOAD memory block info:

1796  2F FB42 Bitfields for DPMILOAD memory block flags:

1797  2F FB42 Values for DPMILOAD function status:

1798  2F FB42 Format of DPMILOAD data:

1799  2F FB42 Format of name list entry [array]:

1800  2F FB42 Format of 6-byte objects:

1801  2F FB42 Format of memory control record:

1802  2F FBA1 Format of TKERNEL response buffer:

1803  2F FBA1 Call TKERNEL entry point with:

1804  2F FBA1 Format of TKERNEL response buffer:

1805  2F FBFB Format of SoundBlaster entry point data structure:

1806  2F FBFB Call SoundBlaster speech driver entry point with:

1807  2F FE00 Values for Norton Utilities TSR identifier:

1808  2F FE00 Format of DISKMON.INI file:

1809  2F FE00 Format of FILESAVE.INI / EP.INI / SMARTCAN.INI file:

1810  31 0000 Values for DPMI 1.0 error code:

1811  31 000E Format of DPMI descriptor buffer entry (one per descriptor to get):

1812  31 000F Format of DPMI descriptor buffer entry (one per descriptor to set):

1813  31 0203 Format of stack frame for 16-bit programs: (offset from SS:SP)

1814  31 0203 Format of stack frame for 32-bit programs: (offset from SS:ESP)

1815  31 0300 Format of DPMI real mode call structure:

1816  31 0303 Values DPMI real-mode callback procedure is called with:

1817  31 0305 Call DPMI state-save procedures with:

1818  31 0306 Values to JUMP at mode-switch procedures with:

1819  31 0400 Bitfields for DPMI host flags:

1820  31 0401 Format of DPMI host description:

1821  31 0401 Bitfields for DPMI capabilities:

1822  31 0500 Format of DPMI memory information:

1823  31 0506 Bitfields for DPMI page attribute word:

1824  31 050B Format of DPMI memory information:

1825  31 0C00 Format of DPMI resident service provider structure:

1826  31 0D00 Format of DPMI shared memory allocation request structure:

1827  31 0E00 Bitfields for DPMI coprocessor status:

1828  31 0E01 Bitfields for DPMI coprocessor flags:

2670  31 FF00 Bitfields for CauseWay system flags:

2669  31 FF24 Format of CauseWay executable:

2671  31 FF24 Bitfields for CauseWay executable control flags:

2672  31 FF24 Format of CauseWay segment definition [array]:

1829  33 0003 Bitfields for mouse button status:

1830  33 0005 Values for mouse button number:

1831  33 0009 Format of mouse mask bitmap:

1832  33 000C Bitfields for mouse call mask:

1833  33 000C Values interrupt routine is called with:

1834  33 0010 Format of Genius Mouse update region list:

1835  33 0018 Bitfields for mouse call mask:

1836  33 0018 Values user handler is called with:

1837  33 001C Values for mouse interrupt rate:

1838  33 0022 Values for mouse driver language:

1839  33 0025 Bitfields for general mouse driver information:

1840  33 002A Values for mouse type:

1841  33 002B Format of acceleration profile data:

1842  33 0030 Bitfields for BallPoint mouse button status:

1843  33 0033 Format of mouse settings data buffer:

1844  33 0035 Values for pointer style:

1845  33 0043 Format of Mouse Systems configuration buffer:

1846  33 006D Format of Microsoft version number:

1847  33 0070 Format of Mouse Systems POPUP.COM data structure:

1848  33 0070 Format of Mouse Systems POPUP.COM info structure:

1849  33 246C Format of Logitech Mouse parameter table:

1850  33 256C Values for Logitech mouse emulation type:

1851  33 3003 Format of Primary/Secondary Bitmap [SMD_BITMAP_STRUCT]:

1852  33 3003 Format of Sacrifice Character Map [SMD_SMAP_STRUCT]:

1853  33 3003 Format of Program Information [SMD_INFO_STRUCT]:

1854  3E ---- Values for Borland floating-point shortcut subcode:

1855  41 ---- Format of fixed disk parameters:

1856  41 ---- Bitfields for XT fixed disk control byte:

1857  41 ---- Bitfields for AT fixed disk control byte:

1858  41 ---- Format of BBC Master control block:

1859  44 00-- Values for BBC Master filing system:

1860  45 ---- Format of BBC Master control block:

1861  45 ---- Bitfields for BBC Master file attributes:

1862  47 8000 Values for SQL Base function number:

1863  48 ---- Values for valid UILIB function number:

1864  48 1A70 Values for UILIB call type:

1865  49 ---- Format of PCjr scan-code translation table:

1866  49 0001 Values for MAGic status:

1867  4A ---- Format of BBC Master control block for function FAh:

1868  4A ---- Bitfields for 65C12 memory access control:

1869  4B 8102 Values for VDS product number:

1870  4B 8102 Values for VDS error code:

1871  4B 8102 Bitfields for VDS flags:

1872  4B 8103 Bitfields for VDS flags:

1873  4B 8103 Format of DMA descriptor structure (DDS):

1874  4B 8103 Format of Extended DMA descriptor structure (EDDS):

1875  4B 8103 Format of Extended DMA descriptor structure (EDDS) with page table entries:

1876  4B 8105 Bitfields for VDS flags:

1877  4B 8106 Bitfields for VDS flags:

1878  4D 09-- Format of TI Professional PC Device Interface Table:

1879  4F 8100 Values for CAM function code:

1880  4F 8100 Format of CAM Control Block:

1881  4F 8100 Bitfields for CAM flags:

1882  4F 8100 Bitfields for CAM address flags:

1883  4F 8100 Values for CAM status:

1884  4F 8100 Bitfields for CAM target-mode flags:

1885  4F 8100 Bitfields for SCSI capabilities:

1886  4F 8100 Bitfields for CAM asynchronous event capabilities:

1887  4F 8100 Values completion callback function is called with:

1888  4F 8100 Values asynchronous callback function is called with:

1889  50 0006 Values for type of input to Vanderaart Text Windows:

1890  50 000D Bitfields for input type:

1891  5B ---- Format of Starlan Network Control Block:

1892  5B ---- Format of ISOLAN Transfer Control Block:

1893  5C ---- Values for NetBIOS status:

1894  5C ---- Format of NetBIOS Network Control Block:

1895  5C ---- Values for NetBIOS command code field in NCB:

1896  5C ---- Format of NetBIOS structure "astatus":

1897  5C ---- Format of NetBIOS structure "name":

1898  5C ---- Format of NetBIOS structure "sstatus":

1899  5C ---- Format of NetBIOS structure "session":

1900  5C ---- Values for ATALK.SYS command code:

1901  5C ---- Format of AppleTalk control block:

1902  5C ---- Format of Name Binding Protocol Name-to-Address binding entries for NBP_LOOKUP:

1903  5C ---- Format of BDS entries:

1904  5C ---- Format of IBM 802.2 CCB:

1905  5F 02-- Format of HP 95LX graphics info record:

1906  5F 0D-- Format of HP 95LX image buffer:

1907  5F 0E-- Bitfields for replacement rule:

1908  60 ---- Format of TI Professional System ROM data area:

1909  60 ---- Bitfields for TI Professional System Configuration Word:

1910  60 ---- Call Buffit private entry point with:

1911  60 ---- Format of PC-IPC parameter block:

1912  60 ---- Values for PC-IPC command code:

1913  60 ---- Bitfields for returned status:

1914  60 ---- Values for PC-IPC error code:

1915  60 ---- Format of Excelan request packet:

1916  60 ---- Values for Excelan error code:

1917  60 ---- Format of ??? record:

1918  60 ---- Call INTRSPY v1.0 entry point with:

1919  60 ---- Values for HP 95LX event type:

1920  60 ---- Format of HP 95LX event record:

1921  60 ---- Format of HP 95LX time change structure:

1922  60 ---- Format of HP 95LX bridge record:

1923  60 ---- Values for HP 95LX function code:

1924  60 ---- Format of HP 95LX menu data:

1925  60 ---- Format of HP 95LX file menu structure:

1926  60 ---- Format of HP 95LX file list workspace entry:

1927  60 ---- Values for HP 95LX System Manager status:

1928  60 ---- Format of HP 95LX edit record:

1929  60 ---- Format of HP 95LX multi-line edit record:

1930  60 ---- Format of HP 95LX file state record:

1931  60 ---- Bitfields for HP 95LX file state flags:

1932  60 ---- Format of HP 95LX pattern match control block:

1933  60 ---- Values returned by HP 95LX System Manager:

1934  60 ---- Values for HP 95LX error code:

1935  60 ---- Format of HP 95LX alarm record:

1936  60 ---- Bitfields for HP 95LX timestamp format:

1937  60 ---- Format of HP 95LX system settings:

1938  60 ---- Values for HP 95LX punctuation format:

1939  60 ---- Values for HP 95LX current date format:

1940  60 ---- Values for HP 95LX current time format:

1941  60 ---- Values for HP 95LX keyboard layout:

1942  60 ---- Values for HP 95LX date parsing rule:

1943  60 ---- Values for HP 95LX time parsing rule:

1944  60 ---- Values for HP 95LX error code:

1945  60 ---- Bitfields for HP 95LX reset options:

1946  60 ---- Format of HP 95LX communications settings:

1947  60 00-- Format of MDEBUG identification table:

1948  60 01FF Values for Packet Driver error code:

1949  60 01FF Values for Packet Driver network interface classes/types:

1950  60 02-- Bitfields for MDEBUG error reasons:

1951  60 02-- Values packet driver receiver is called with when a packet is received:

1952  60 03-- Values for MDEBUG return code:

1953  60 0A-- Format of packet driver parameter table:

1954  60 0B-- Values packet driver completion function is called with:

1955  60 0C-- Format of packet driver IOCB:

1956  60 0C-- Values completion function is called with:

1957  60 11-- Values for 3com semaphore status:

1958  60 14-- Values for packet driver receive mode:

1959  60 18-- Format of packet driver statistics:

1960  61 ---- Format of TCPOpen request packet:

1961  61 ---- Call TCPOpen Function FFFFh: installation verification

1962  61 ---- Values for PC/TCP error code:

1963  61 ---- Values for subcodes of PC/TCP error 0Ah "NET_ERR_HOST_UNREACHABLE":

1964  61 ---- Values for subcodes of PC/TCP error 1Ch "NET_ERR_ICMPMESG":

1965  61 00-- Format of network debugging information:

1966  61 00-- Format of the BANV code segment (revision 5.53):

1967  61 0001 Format of internal communications control block:

1968  61 0001 Values for VINES status:

1969  61 0001 Format of VINES control block to open socket:

1970  61 0001 Format of VINES argument block for opening socket:

1971  61 0001 Format of Banyan VINES IPC port:

1972  61 0001 Format of VINES control block for subfunction 0002h:

1973  61 0001 Format of VINES argument block for subfunction 0002h:

1974  61 0001 Bitfields for message request flags:

1975  61 0001 Format of buffer descriptor:

1976  61 0001 Format of VINES socket address for unreliable datagrams:

1977  61 0001 Format of VINES control block for subfunction 0003h:

1978  61 0001 Format of VINES argument block for subfunction 0003h:

1979  61 0001 Format of buffer descriptor:

1980  61 0001 Format of VINES control block to close socket:

1981  61 0001 Format of VINES argument block for closing socket:

1982  61 0001 Values for VINES function status:

1983  61 0001 Format of VINES control block for subfunction 0005h:

1984  61 0001 Format of VINES argument block for subfunction 0005h:

1985  61 0001 Format of VINES control block for subfunction 0006h:

1986  61 0001 Format of VINES control block for subfunction 000Bh:

1987  61 0001 Format of VINES argument block for subfunction 000Bh:

1988  61 0001 Values FAR user function is invoked with:

1989  61 0002 Values for VINES 3270 interface function number:

1990  61 0002 Values for VINES 3270 status:

1991  61 0002 Format of argument block for BH=03h,04h:

1992  61 0002 Format of argument block for BH=05h:

1993  61 0002 Format of argument block for BH=07h:

1994  61 0002 Format of argument block for BH=08h:

1995  61 0002 Values for 3270 keystroke:

1996  61 0002 Format of argument block for BH=0Ah:

1997  61 0002 Format of argument block for BH=0Fh:

1998  61 0002 Bitfields for Banyan 3270 device status:

1999  61 0002 Format of argument block for BH=12h:

2000  61 0002 Format of argument block for BH=13h:

2001  61 0002 Format of argument block for BH=14h:

2002  61 0002 Format of argument block for BH=16h:

2003  61 0002 Format of argument block for BH=17h:

2004  61 0002 Format of argument block for BH=18h:

2005  61 0002 Format of argument block for BH=19h:

2006  61 0002 Format of argument block for BH=1Ch,1Dh:

2007  61 0002 Format of device block, argument block for BH=15h:

2008  61 0002 Format of information block:

2009  61 0002 Format of Banyan VINES 3270 status line:

2010  61 0002 Values for Banyan VINES 3270 keyboard status:

2011  61 0002 Format of Banyan VINES 3270 profile block:

2012  61 0003 Values for VINES function status:

2013  61 0003 Format of VINES argument block:

2014  61 0003 Format of user buffer ptr info area:

2015  61 0003 Format of VINES terminal status area:

2016  61 0003 Values for VINES primary error code:

2017  61 0003 Format of VINES argument block for Function 0003h subfunction 01h:

2018  61 0003 Format of type-specific info:

2019  61 0003 Format of VINES argument block for Function 0003h subfunction 02h:

2020  61 0003 Format of VINES argument block for Function 0003h subfunction 03h:

2021  61 0003 Format of VINES argument block for ending active session:

2022  61 0003 Format of VINES argument block for setting session parameters:

2023  61 0003 Values for parameter number:

2024  61 0003 Format of VINES argument block for getting session parameters:

2025  61 0003 Format of VINES argument block for setting tab settings:

2026  61 0003 Format of VINES argument block for getting tab settings:

2027  61 0003 Format of VINES argument block for Function 0003h subfunction 09h:

2028  61 0003 Format of VINES argument block:

2029  61 0003 Format of VINES argument block:

2030  61 0003 Format of VINES argument block:

2031  61 0003 Format of VINES argument block:

2032  61 0003 Format of VINES argument block:

2033  61 0003 Format of VINES argument block:

2034  61 0003 Format of VINES information area:

2035  61 0003 Format of VINES argument block:

2036  61 0003 Format of VINES argument block:

2037  61 0003 Format of VINES info area:

2038  61 0003 Format of VINES argument block:

2039  61 0003 Format of VINES connection information:

2040  61 0003 Format of VINES argument block:

2041  61 0003 Format of VINES argument block:

2042  61 0003 Format of VINES argument block:

2043  61 0004 Values for Banyan VINES file service control status code:

2044  61 0004 Format of Banyan VINES file service request block:

2045  61 0004 Format of VINES Function 0004h/Subfunction 0001h request block:

2046  61 0004 Format of VINES Function 0004h/Subfunction 0002h request block:

2047  61 0004 Format of VINES Function 0004h/Subfunction 0003h request block:

2048  61 0004 Format of VINES Function 0004h/Subfunction 0004h request block:

2049  61 0004 Format of VINES Function 0004h/Subfunction 0005h request block:

2050  61 0004 Format of VINES Function 0004h/Subfunction 0006h request block:

2051  61 0004 Format of VINES Function 0004h/Subfunction 0007h request block:

2052  61 0004 Values for VINES pointer ID:

2053  61 0004 Format of VINES drive handle table:

2054  61 0004 Format of VINES drive connection table:

2055  61 0004 Format of VINES request block for getting server serial number:

2056  61 0004 Format of VINES Function 0004h/Subfunction 0009h request block:

2057  61 0004 Format of VINES Function 0004h/Subfunction 000Bh request block:

2058  61 0004 Format of VINES Function 0004h/Subfunction 000Ch request block:

2059  61 0004 Format of VINES Function 0004h/Subfunction 000Eh request block:

2060  61 0004 Format of ARL control block:

2061  61 0004 Values for VINES Get/Set Access Rights List status:

2062  61 0004 Format of VINES Function 0004h/Subfunction 000Fh request block:

2063  61 0004 Format of VINES Function 0004h/Subfunction 0010h request block:

2696  61 0004 Format of request block:

2697  61 0004 Values for variable indices:

2698  61 0004 Format of request block:

2699  61 0004 Format of request block:

2700  61 0004 Format of request block:

2701  61 0004 Format of request block:

2702  61 0004 Format of request block:

2064  61 0005 Format of VINES request block for printer control:

2065  61 0005 Format of Optima 1024 window parameters:

2066  61 0006 Format of Optima 1024 zoom window description:

2067  61 0006 Values for request IDs:

2068  61 0007 Values for VINES function status:

2069  61 0007 Format of VINES port record block:

2070  61 0007 Format of port control block:

2071  61 0007 Format of VINES port record block:

2072  61 0007 Format of VINES NiceName block:

2073  61 0007 Format of VINES enumerate block:

2074  61 0007 Format of category criteria block:

2075  61 0007 Values for common VINES service categories:

2076  61 0007 Format of port control block:

2077  61 0008 Bitfields for VINES message display flags:

2078  61 0008 Format of VINES request block for 25-th line messages:

2079  61 0008 Format of message storage area:

2709  61 000F Format of request block:

2703  61 000F Format of request block:

2704  61 000F Format of parameter block:

2705  61 000F Format of request block:

2706  61 000F Format of parameter block:

2707  61 000F Format of request block:

2708  61 000F Format of request block:

2080  61 01-- Values for VINES service ID:

2081  61 05-- Format of PCCONFIG area (VINES 4.00):

2082  61 05-- Format of PCCONFIG area (VINES 4.10+):

2083  61 05-- Format of auxiliary configuration area:

2084  61 06-- Format of PC/TCP interface statistics:

2085  61 0C-- Format of PC/TCP kernel TCP statistics:

2086  61 0C-- Format of PC/TCP kernel IP statistics:

2087  61 0C-- Format of PC/TCP kernel UDP statistics:

2088  61 0C-- Format of PC/TCP kernel ICMP statistics:

2089  61 13-- Values for PC/TCP protocol:

2090  61 13-- Format of structure "addr":

2091  61 1A-- Bitfields for PC/TCP send options:

2092  61 1B-- Bitfields for PC/TCP receive options:

2093  61 1F-- Values for PC/TCP event type:

2094  61 1F-- Values PC/TCP user event handler is called with:

2095  61 20-- Values for PC/TCP option to get or set:

2096  61 2A-- Format of PC/TCP configuration information:

2097  62 0000 Values for FGDRIVER status:

2667  62 0000 Values for FGDRIVER functions (by driver version):

2098  62 001F Format of FGDRIVER masking map:

2678  62 002E Values for FGDRIVER FLIC processing status:

2676  62 002E Format of FGDRIVER FLICHEAD variable pointer record:

2677  62 0030 Format of FGDRIVER FLICOPEN variable pointer record:

2688  62 0031 Bitfields for FGDRIVER FLI/FLC control flags:

2679  62 0032 Format of FGDRIVER FLICSIZE variable pointer record:

2680  62 003B Format of FGDRIVER GETBANKS variable pointer record:

2681  62 003E Format of FGDRIVER GETCLIP variable pointer record:

2099  62 0042 Format of FGDRIVER GETENTRY variable pointer record:

2100  62 0042 Values for FGDRIVER page type:

2101  62 0046 Format of FGDRIVER GETKEY variable pointer record:

2102  62 004E Format of FGDRIVER GETRGB variable pointer record:

2682  62 004F Format of FGDRIVER GETVIEW variable pointer record:

2103  62 0062 Format of FGDRIVER INTJOY variable pointer record:

2104  62 0063 Format of FGDRIVER INTKEY variable pointer record:

2105  62 0074 Format of FGDRIVER MOUSEBUT variable pointer record:

2106  62 007A Format of FGDRIVER MOUSEPOS variable pointer record:

2683  62 0083 Format of FGDRIVER PACK variable pointer record:

2107  62 008A Format of FGDRIVER PCXHEAD variable pointer record:

2684  62 008C Format of FGDRIVER PCXPAL variable pointer record:

2685  62 008D Format of FGDRIVER PCXRANGE variable pointer record:

2108  62 0092 Format of FGDRIVER POLYFILL variable pointer record:

2109  62 0093 Format of FGDRIVER POLYGON variable pointer record:

2110  62 0094 Format of FGDRIVER POLYFILL/POLYLINE vertex array element:

2622  62 00A3 Format of FGDRIVER SCALE variable pointer record:

2111  62 00B0 Values for FGDRIVER video mode:

2686  62 00B5 Format of FGDRIVER SETVIEW variable record:

2687  62 00B7 Format of FGDRIVER SHEAR variable pointer record:

2112  62 00B9 Bitfields for FGDRIVER flags:

2113  62 00BD Format of FGDRIVER sounds array element:

2114  62 00C1 Values for FGDRIVER SVGA method:

2115  62 00C2 Bitfields for FGDRIVER chipset information:

2116  62 00C3 Format of FGDRIVER variable pointer record:

2117  62 00CA Format of FGDRIVER copy record:

2689  62 00CB Format of FGDRIVER UNPACK variable pointer record:

2690  62 00CF Format of FGDRIVER VBCOPY variable record:

2691  62 00D7 Format of FGDRIVER VBTCCOPY variable record:

2118  62 00DC Format of FGDRIVER tone array element:

2119  62 00E0 Format of FGDRIVER variable pointers:

2120  62 08-- Format of BW-TCP ??? buffer:

2121  63 ---- Format of DESQview/X socket interrupt handler entry:

2122  65 ---- Format of AdLib signature block:

2123  66 ---- Bitfields for TI Professional drive type information:

2124  66 05-- Format of BitFax command block:

2125  66 0688 Format of IBMSND driver SNDSTRUC:

2126  66 068C Bitfields for IBMSND driver capabilities:

2127  67 ---- Bitfields for TI Professional PC System Configuration doubleword:

2128  67 00-- Values for PC-NET semaphore function status:

2129  67 1F-- Format of 386MAX MEMLIMIT request packet:

2130  67 1F-- Values for 386MAX MEMLIMIT return code:

2131  67 3F-- Values for calling QEMM "QPI_GetStatus" function:

2132  67 3F-- Values for calling QEMM "QPI_SetStatus" function:

2133  67 3F-- Values for calling QEMM QPI function 02h:

2134  67 3F-- Values for calling QEMM "QPI_GetVersion" function:

2135  67 3F-- Values for calling QEMM QPI function 04h:

2136  67 3F-- Values for calling QEMM QPI function 05h:

2137  67 3F-- Values for calling QEMM QPI function 06h:

2138  67 3F-- Values for calling QEMM QPI function 07h:

2139  67 3F-- Values for calling QEMM QPI function 08h:

2140  67 3F-- Values for calling QEMM QPI function 09h:

2141  67 3F-- Values for calling QEMM QPI function 0Ah:

2142  67 3F-- Values for calling QEMM QPI function 0Bh:

2143  67 3F-- Values for calling QEMM QPI function 0Ch:

2144  67 3F-- Values for calling QEMM QPI function 0Dh:

2145  67 3F-- Values for calling QEMM QPI function 0Eh:

2146  67 3F-- Values for calling QEMM QPI function 0Fh:

2147  67 3F-- Values for calling QEMM QPI function 1000h:

2148  67 3F-- Values for calling QEMM QPI function 1001h:

2149  67 3F-- Values for calling QEMM QPI function 1002h:

2150  67 3F-- Values for calling QEMM QPI function 1003h:

2151  67 3F-- Values for calling QEMM QPI function 1004h:

2152  67 3F-- Values for calling QEMM QPI function 1005h:

2153  67 3F-- Values for calling QEMM QPI function 1006h:

2154  67 3F-- Values for calling QEMM QPI function 1007h:

2155  67 3F-- Values for calling QEMM QPI function 1008h:

2156  67 3F-- Values for calling QEMM QPI function 1009h:

2157  67 3F-- Values for calling QEMM QPI function 100Ah:

2158  67 3F-- Values for calling QEMM QPI function 11h:

2159  67 3F-- Values for calling QEMM QPI function 12h:

2160  67 3F-- Values for calling QEMM QPI function 1300h:

2161  67 3F-- Values for calling QEMM QPI function 1301h:

2162  67 3F-- Values for calling QEMM QPI function 1302h:

2163  67 3F-- Values for calling QEMM QPI function 1303h:

2164  67 3F-- Values for calling QEMM QPI function 1304h:

2165  67 3F-- Values for calling QEMM QPI function 1305h:

2166  67 3F-- Values for calling QEMM QPI function 1306h:

2167  67 3F-- Values for calling QEMM QPI function 1307h:

2168  67 3F-- Values for calling QEMM QPI function 1308h:

2169  67 3F-- Values for calling QEMM QPI function 1309h:

2170  67 3F-- Values for calling QEMM QPI function 130Ah:

2171  67 3F-- Values for calling QEMM QPI function 130Bh:

2172  67 3F-- Values for calling QEMM QPI function 130Ch:

2173  67 3F-- Values for calling QEMM QPI function 130Dh:

2174  67 3F-- Values for calling QEMM QPI function 130Eh:

2175  67 3F-- Values for calling QEMM QPI function 130Fh:

2176  67 3F-- Values for calling QEMM QPI function 1310h:

2177  67 3F-- Values for calling QEMM QPI function 1311h:

2178  67 3F-- Values for calling QEMM QPI function 1312h:

2179  67 3F-- Values for calling QEMM QPI function 1400h:

2180  67 3F-- Values for calling QEMM QPI function 1401h:

2181  67 3F-- Values for calling QEMM QPI function 1402h:

2182  67 3F-- Values for calling QEMM QPI function 1403h:

2183  67 3F-- Values for calling QEMM QPI function 1404h:

2184  67 3F-- Values for calling QEMM QPI function 1405h:

2185  67 3F-- Values for calling QEMM QPI function 1406h:

2186  67 3F-- Values for calling QEMM QPI function 1407h:

2187  67 3F-- Values for calling QEMM QPI function 1408h:

2188  67 3F-- Values for calling QEMM QPI function 1409h:

2189  67 3F-- Values for calling QEMM QPI function 140Ah:

2190  67 3F-- Values for calling QEMM QPI function 140Bh:

2191  67 3F-- Values for calling QEMM QPI function 15h:

2192  67 3F-- Values for calling QEMM v5.00+ QPI function 1600h:

2193  67 3F-- Values for calling QEMM v5.00+ QPI function 1601h:

2194  67 3F-- Values for calling QEMM v5.00+ QPI function 17h:

2195  67 3F-- Values for calling QEMM v5.11+ QPI function 18h:

2196  67 3F-- Values for calling QEMM v5.11+ QPI function 19h:

2197  67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIORead" function:

2198  67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIOWrite" function:

2199  67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIOReadIndexed" function:

2200  67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIOWriteIndexed" function:

2201  67 3F-- Values for calling QEMM v7.03+ "QPI_UntrappedIO" function:

2202  67 3F-- Values for calling QEMM v7.03+ function 1A05h

2203  67 3F-- Values for calling QEMM v7.03+ "QPI_GetIOCallback" function:

2204  67 3F-- Values for calling QEMM v7.03+ "QPI_SetIOCallback" function:

2711  67 3F-- Values QEMM v7.03+ I/O callback function is called with:

2205  67 3F-- Values for calling QEMM v7.03+ "QPI_GetPortTrap" function:

2206  67 3F-- Values for calling QEMM v7.03+ "QPI_SetPortTrap" function:

2207  67 3F-- Values for calling QEMM v7.03+ "QPI_ClearPortTrap" function:

2208  67 3F-- Values for calling QEMM v5.11+ QPI function 1B00h:

2209  67 3F-- Values for calling QEMM v5.11+ QPI function 1B01h:

2210  67 3F-- Values for calling QEMM v5.11+ QPI function 1B02h:

2211  67 3F-- Values for calling QEMM v5.11+ QPI function 1B03h:

2212  67 3F-- Values for calling QEMM v5.11+ QPI function 1B04h:

2213  67 3F-- Values for calling QEMM v5.11+ QPI function 1B05h:

2214  67 3F-- Values for calling QEMM v5.11+ QPI function 1B06h:

2215  67 3F-- Values for calling QEMM v5.11+ QPI function 1B07h:

2216  67 3F-- Values for calling QEMM v5.11+ QPI function 1Bxxh:

2217  67 3F-- Values for calling QEMM v5.11+ QPI function 1C00h:

2218  67 3F-- Values for calling QEMM v5.11+ QPI function 1C01h:

2219  67 3F-- Values for calling QEMM v5.11+ QPI function 1C02h:

2220  67 3F-- Values for calling QEMM v5.11+ QPI function 1C03h:

2221  67 3F-- Values for calling QEMM v7.03+ "QPI_SimulateHWInt" function:

2222  67 3F-- Values for calling QEMM v6.0x only QPI function 1D00h:

2223  67 3F-- Values for calling QEMM v6.0x only QPI function 1D01h:

2224  67 3F-- Values for calling QEMM v6.00+ QPI function 1Dxxh:

2225  67 3F-- Values for calling QEMM v6.00+ "QEMM_GET_INFO"/"QPI_GetInfo" function:

2226  67 3F-- Values for calling QEMM v6.00+ "QPI_GetStealthCount" function:

2227  67 3F-- Values for calling QEMM v6.00+ "QPI_GetStealthList" function:

2228  67 3F-- Values for unimplemented Stealth information functions:

2229  67 3F-- Values for calling QEMM v6.00+ "QEMM_GET_PTE"/"QPI_GetPTE" function:

2230  67 3F-- Values for calling QEMM v6.00+ "QEMM_SET_PTE"/"QPI_SetPTE" function:

2231  67 3F-- Values for calling QEMM v6.00+ QPI function 1Fxxh:

2232  67 3F-- Values for calling QEMM v6.00+ "QEMM_GET_VHI_INFO"/"QPI_GetVHIInfo" function:

2233  67 3F-- Values for calling QEMM v6.00+ "QEMM_SET_VHI_INFO"/"QPI_SetVHIInfo" function:

2234  67 3F-- Values for calling QEMM v6.00+ QPI function 20xxh:

2235  67 3F-- Values for calling QEMM v6.00+ "QEMM_COPY_STEALTH_ROMS"/"QPI_CopyStealthRoms":

2236  67 3F-- Values for calling QEMM v6.00+ QPI function 21xxh:

2237  67 3F-- Values for calling QEMM v6.03+ QPI function 2200h:

2238  67 3F-- Values for calling QEMM v6.03+ QPI function 2201h:

2239  67 3F-- Values for calling QEMM v6.04+ QPI function 2300h:

2240  67 3F-- Values for calling QEMM v6.04+ QPI function 2301h:

2241  67 3F-- Values for calling QEMM v6.04+ QPI function 2302h:

2242  67 3F-- Values for calling QEMM v6.04+ QPI function 23FFh:

2243  67 3F-- Values for calling QEMM v6.04+ QPI function 23xxh:

2244  67 3F-- Values for calling QEMM v7.01+ QPI function 24h:

2245  67 3F-- Values for calling QEMM unimplemented QPI functions:

2246  67 3F-- Format of QEMM protection level configuration:

2247  67 3F-- Format of protection level Region List:

2248  67 3F-- Format of EMM Import structure:

2249  67 3F-- Bitfields for memory configuration flags:

2250  67 3F-- Format of QEMM 6.0 memory statistics:

2251  67 3F-- Format of Stealth ROM info [array]:

2252  67 3F-- Format of QEMM EGA/VGA DAC register virtualization buffer:

2253  67 40-- Values for EMS function status:

2254  67 50-- Format of EMS mapping array entry:

2255  67 51-- Values for EMS function status:

2256  67 54-- Format of EMS handle directory entry:

2257  67 57-- Values for EMS function status:

2258  67 57-- Format of EMS copy data:

2259  67 58-- Format of EMS mappable physical address entry:

2260  67 59-- Format of EMS hardware configuration array:

2261  67 5B-- Values for EMS function status:

2262  67 5BE2 Format of RM386 V86-mode table:

2263  67 5BF1 Values for MICEMM/RM386 memory type:

2264  67 5BF4 Bitfields for RM386 global flags 1:

2265  67 5BF4 Bitfields for RM386 global flags 2:

2266  67 5BF4 Bitfields for RM386 global flags 3:

2267  67 5BF4 Bitfields for RM386 global flags 4:

2268  67 5C-- Values for EMS function status:

2269  67 DE01 Call QEMM v6.03 protected mode entry point additionally with:

2270  67 DE0C Format of system register values for switch to protected mode:

2271  67 FFA5 Call EMM386.EXE API entry point with:

2272  68 01-- Format of APPC/PC "DISPLAY" control block:

2273  68 01-- Values for APPC/PC return code:

2274  68 01-- Format of APPC/PC "Attach Physical Unit" control block:

2275  68 01-- Format of APPC/PC "Attach Logical Unit" control block:

2276  68 01-- Format of APPC/PC partner logical unit record:

2277  68 01-- Format of mode record:

2278  68 01-- Format of ACCESS_LU_LU_PW verb:

2279  68 01-- Format of CREATE_TP verb:

2280  68 01-- Values for APPC/PC sense code:

2281  68 01-- Format of SYSLOG verb:

2282  68 01-- Format of APPC/PC "Detach Logical Unit" control block:

2283  68 01-- Format of APPC/PC "Detach Physical Unit" control block:

2284  68 01-- Format of APPC/PC "Activate DLC" control block:

2285  68 02-- Format of APPC/PC "Allocate" control block:

2286  68 02-- Values for APPC/PC primary return code:

2287  68 02-- Values for APPC/PC error code:

2288  68 02-- Format of APPC/PC "Confirm" control block:

2289  68 02-- Format of APPC/PC "Confirmed" control block:

2290  68 02-- Format of APPC/PC "Deallocate" control block:

2291  68 02-- Format of APPC/PC "Flush" control block:

2292  68 02-- Format of APPC/PC "Get_Attributes" control block:

2293  68 02-- Format of APPC/PC "Get_Type" control block:

2294  68 02-- Format of APPC/PC "Post_on_Receipt" control block:

2295  68 02-- Format of APPC/PC "Prepare_to_Receive" control block:

2296  68 02-- Format of APPC/PC "Receive_and_Wait" control block:

2297  68 02-- Values for type of information received:

2298  68 02-- Format of APPC/PC "Receive_Immediate" control block:

2299  68 02-- Format of APPC/PC "Request_to_Send" control block:

2300  68 02-- Format of APPC/PC "Send_Data" control block:

2301  68 02-- Format of APPC/PC "Send_Error" control block:

2302  68 02-- Format of APPC/PC "Test" control block:

2303  68 02-- Format of APPC/PC "Wait" control block:

2304  68 03-- Format of APPC/PC "TP Started" control block:

2305  68 03-- Format of APPC/PC "Get ALLOCATE" control block:

2306  68 03-- Format of APPC/PC "Change Logical Unit" control block:

2307  68 04-- Format of APPC/PC control block:

2308  68 05-- Format of APPC/PC "Transfer Message Data" control block:

2309  68 05-- Bitfields for APPC/PC message transfer flags:

2310  68 06-- Format of APPC/PC "Change Number of Sessions" control block:

2311  68 06-- Values for secondary return code (see also AH=01h/SF=1B00h):

2312  68 FB-- Format of APPC/PC "CONVERT" control block:

2313  68 FE-- Bitfields for trace destinations:

2314  68 FE-- Format of APPC/PC Trace Statistics Record:

2315  69 0103 Bitfields for DECnet DOS CTERM status flags:

2316  69 0103 Values for reason code:

2317  69 0A-- Values for DECnet DOS Data Link Layer function:

2318  69 0A-- Values for DECnet DOS Data Link Layer status:

2319  69 0A-- Format of Datalink Communication Block:

2320  6A ---- Format of DECnet DOS signature area:

2321  6A 0001 Values for Super-TCP function status:

2322  6A 0001 Format of record1:

2323  6A 0001 Format of record2:

2324  6A 0001 Format of record3:

2325  6A 0001 Format of record4:

2326  6A 0001 Format of record5:

2327  6A 0001 Format of record6:

2328  6A 0001 Format of record7:

2329  6A 0001 Format of record8:

2330  6A 0003 Format of Super-TCP data area:

2331  6A 03-- Bitfields for DECnet DOS LAT status flags:

2332  6A D0-- Format of LAT Session Control Block:

2333  6A D000 Values for DECnet DOS LAT function status:

2334  6B ---- Format of DECnet DOS signature area:

2335  6B 15-- Format of virtual circuit configuration:

2336  6B 21-- Format of NCSI service name structure:

2337  6C ---- Format of DECnet DOS signature area:

2338  6D ---- Format of DECnet DOS signature area:

2339  6E ---- Format of DECnet DOS signature area:

2340  6F ---- Bitfields for PCOX status word:

2341  6F 00-- Format of 10NET login record:

2342  6F 00-- Values for 10NET status:

2343  6F 00-- Values for HP Vectra EX-BIOS driver ID:

2344  6F 00-- Values for HP Vectra EX-BIOS ISR data type:

2345  6F 00-- Bitfields for HP Vectra EX-BIOS keyboard state:

2346  6F 00-- Values for HP Vectra EX-BIOS status:

2347  6F 00-- Format of HP EX-BIOS driver header data:

2348  6F 00-- Bitfields for HP EX-BIOS driver header attributes:

2349  6F 00-- Bitfields for HP EX-BIOS driver class:

2350  6F 00-- Format of HP EX-BIOS global data area:

2351  6F 00-- Format of HP EX-BIOS Driver Describe Record:

2352  6F 00-- Bitfields for HP logical device status flags:

2353  6F 00-- Values for HP-HIL device ID:

2354  6F 02-- Values for 10NET station type:

2355  6F 02-- Format of 10NET node status record:

2356  6F 02-- Bitfields for 10NET user service flags:

2357  6F 0204 Bitfields for HP Vectra V_HPHIL driver state:

2358  6F 03-- Format of 10NET configuration table:

2359  6F 03-- Bitfields for CT_PSFLG:

2360  6F 04-- Format of 10NET send record:

2361  6F 0402 Format of HP Vectra EX-BIOS driver link table:

2362  6F 0408 Bitfields for HP Vectra V_HPHIL device address indicator:

2363  6F 05-- Format of 10NET receive buffer:

2364  6F 08-- Format of HP Vectra HP-HIL physical device status table:

2365  6F 09-- Format of 10NET submit record:

2366  6F 0A-- Format of 10NET chat control parameters:

2367  6F 0A-- Format of 10NET chat message:

2368  6F 0A-- Format of HP Vectra F_PUT_BLOCK/F_GET_BLOCK command block:

2369  6F 0B-- Values for 10NET status:

2370  6F 0D-- Format of station record:

2371  6F 0D-- Bitfields for station flags:

2372  6F 0E-- Values for 10NET spooler operation code:

2373  6F 0E-- Format of 10NET Spool/Print record:

2374  6F 0E-- Bitfields for notification flags:

2375  6F 0E-- Format of 10NET $SCNTL record:

2376  6F 1501 Format of 10NET shared device table entry:

2377  6F 42-- Format of HP Vectra EX-BIOS bucket header:

2378  6F 80-- Format of 10NET login record:

2379  6F 8A-- Format of 10NET chat parameters:

2380  6F 8A-- Format of 10NET chat message:

2381  6F 8D-- Bitfields for 10NET service mask:

2382  6F 8D-- Format of 10NET Who data structure:

2383  6F 8D-- Bitfields for 10NET chat mask:

2384  6F 8D-- Bitfields for 10NET internal system bits:

2385  6F 9501 Format of 10NET shared device structure:

2386  6F 9501 Bitfields for notification flags:

2387  6F 9501 Bitfields for 10NET job control mask:

2388  78 00-- Values for TARGA.DEV error code:

2721  78 --00 Values for HugeRealMode Server error code:

2723  78 --09 Format of .XMF program file header::

2724  78 --09 Format of .XMF-file code header::

2722  78 --0A Bitfields for HugeRealMode Server segment limits:

2389  78 10-- Format of SCSI Command:

2390  78 11-- Format of TARGA.DEV SCSI Command:

2391  78 12-- Format of TARGA.DEV SCSI Command:

2392  78 13-- Format of TARGA.DEV SCSI Command:

2393  78 14-- Format of TARGA.DEV SCSI Command:

2394  7A ---- Values for IPX socket number:

2395  7A ---- Format of IPX Event Control Block:

2396  7A ---- Format of AES-ECB:

2397  7A ---- Values for ECB in use flag:

2398  7A ---- Values for ECB completion code:

2399  7A ---- Values Event Service Routine is called with:

2400  7A ---- Format of IPX header:

2401  7A ---- Values for IPX packet type:

2402  7A ---- Format of Service Advertising Protocol Service Query Packet:

2403  7A ---- Format of Service Advertising Protocol Server Identification Packet:

2404  7A ---- Format of SAP server entry:

2405  7A ---- Format of IPX Routing Information packet:

2406  7A ---- Format of RIP network entry:

2407  7A ---- Values for IPX return code:

2408  7A ---- Format of IPX internetwork address:

2409  7A ---- Format of IPX internetwork address:

2410  7A ---- Values for SPX function status:

2411  7A ---- Format of SPX header:

2412  7A ---- Bitfields for SPX connection control:

2413  7A ---- Format of SPX status buffer:

2414  7A ---- Format of IPX diagnostic element:

2415  7A ---- Call IPXODI entry point with:

2416  7A ---- Call IPX Look-Ahead handler with:

2417  7A 0001 Call packet-mode entry point with:

2418  7A 0001 Format of request packet:

2419  7A 09-- Values for service:

2420  7A 09-- Values for 3270 Workstation Program keyboard service:

2421  7A 09-- Values for 3270 Workstation Program window service:

2422  7A 09-- Values for 3270 Workstation Program host service:

2423  7A 81-- Values for 3270 Workstation Program gate name:

2424  7A FDCB Format of Personal Communications/3270 signature block:

2425  7B ---- Format of Btrieve parameter record:

2426  7B ---- Values for function code:

2427  7B ---- Values for Btrieve status code:

2428  7B ---- Values for Novell XQL function number:

2429  7B ---- Format of XQL parameter block:

2430  7C 0000 Values for SK-UPPS Data Link Interface OEM signature (defined by SK):

2431  7C 0001 Values for SK-UPPS completion code:

2432  7C 0004 Format of SK-UPPS Memory Buffer (Mbuf):

2433  7C 0006 Values SK-UPPS Transmit Upcall is called with:

2434  7C 0007 Format of SK-UPPS Protocol Control Block (PCB):

2435  7C 0007 Bitfields for SK-UPPS protocol mode:

2436  7C 0007 Values SK-UPPS Receive Upcall is called with:

2437  7C 0007 Bitfields for SK-UPPS receive status:

2438  7C 0007 Values SK-UPPS Event Upcall is called with:

2439  7C 0007 Values for SK-UPPS Event Upcall event code:

2440  7C 0007 Bitfields for EV_NETWORK_STATUS in register DX:

2441  7C 000C Format of SK-UPPS Protocol Status Block (PSB):

2442  7C 000D Format of SK-UPPS Statistics Data Block (SDB):

2443  7C 000E Format of SK-UPPS Driver Information Block (DIB):

2444  7C 0015 Format of SK-UPPS media-specific statistics for Ethernet:

2445  7C 0015 Format of SK-UPPS media-specific statistics for FDDI:

2446  7C 0015 Format of SK-UPPS media-specific statistics for Token-Ring:

2447  7D ---- Format of HyperPAD data area:

2448  7D 02-- Format of SCSILink parameter block:

2449  7D 02-- Format of SCSILink command block:

2450  7D 03-- Values for SCSILink timeout selector:

2451  7F ---- Values for Halo88 API function:

2452  7F ---- Format of Telebit ACS parameter block:

2453  7F ---- Values for Telebit ACS command:

2454  7F ---- Values for Telebit ACS return code:

2668  7F ---- Format of the WinRun control block (WCB):

2455  7F 00-- Values for Alloy function status:

2456  7F 0104 Format of HLLAPI parameter control block:

2457  7F 0104 Values for HLLAPI function number:

2458  7F 0104 Values for LLAPI function number:

2459  7F 0104 Values for HLLAPI Function 09h Session Parameters:

2460  7F 0104 Values for Windows HLLAPI return code:

2461  7F 0105 Values for HDILOAD function number: (do FAR call via entry_points+4*function)

2462  7F 0105 Format of ABLOCKCGA parameter block:

2463  7F 0105 Bitfields for one character in ABLOCKCGA character block:

2464  7F 0105 Format of ABLOCKMFI parameter block:

2465  7F 0105 Bitfields for one character in ABLOCKMFI character block:

2466  7F 0105 Format of ACURSOR parameter block:

2467  7F 0105 Format of AERASE parameter block:

2468  7F 0105 Format of ASCROLL parameter block:

2469  7F 0105 Format of ASCUR parameter block:

2470  7F 0105 Format of ASFONT parameter block:

2471  7F 0105 Format of 8514/A character set definition block:

2472  7F 0105 Format of AXLATE parameter block:

2473  7F 0105 Format of HBAR parameter block:

2474  7F 0105 Format of HBBC parameter block:

2475  7F 0105 Format of HBBCHN parameter block:

2476  7F 0105 Format of HBBR parameter block:

2477  7F 0105 Format of HBBW parameter block:

2478  7F 0105 Format of HCBBW parameter block:

2479  7F 0105 Format of HCCHST parameter block:

2480  7F 0105 Format of HCHST parameter block:

2481  7F 0105 Format of HCLINE parameter block:

2482  7F 0105 Format of HCLOSE parameter block:

2483  7F 0105 Format of HCMRK parameter block:

2484  7F 0105 Format of HCRLINE parameter block:

2485  7F 0105 Format of HEAR parameter block:

2486  7F 0105 Format of HEGS parameter block:

2487  7F 0105 Format of HESC parameter block:

2488  7F 0105 Format of HINIT parameter block:

2489  7F 0105 Format of HINT parameter block:

2490  7F 0105 Format of HLDPAL parameter block:

2491  7F 0105 Format of HLINE parameter block:

2492  7F 0105 Format of HMRK parameter block:

2493  7F 0105 Format of HOPEN parameter block:

2494  7F 0105 Values for 8514/A display mode:

2495  7F 0105 Format of HQCOORD parameter block:

2496  7F 0105 Format of HQCP parameter block:

2497  7F 0105 Format of HQDFPAL parameter block:

2498  7F 0105 Format of HQDPS parameter block:

2499  7F 0105 Format of HQMODE parameter block:

2500  7F 0105 Format of HQMODES parameter block:

2501  7F 0105 Format of HRECT parameter block:

2502  7F 0105 Format of HRLINE parameter block:

2503  7F 0105 Format of HRLPC parameter block:

2504  7F 0105 Format of HRPAL parameter block:

2505  7F 0105 Format of HSBCOL parameter block:

2506  7F 0105 Format of HSBP parameter block:

2507  7F 0105 Format of HSCELL parameter block:

2508  7F 0105 Format of HSCMP parameter block:

2509  7F 0105 Format of HSCOL parameter block:

2510  7F 0105 Format of HSCOORD parameter block:

2511  7F 0105 Format of HSCP parameter block:

2512  7F 0105 Format of HSCS parameter block:

2513  7F 0105 Format of HSGQ parameter block:

2514  7F 0105 Format of HSHS parameter block:

2515  7F 0105 Bitfields for 8514/A quality settings:

2516  7F 0105 Format of HSLPC parameter block:

2517  7F 0105 Format of HSLT parameter block:

2518  7F 0105 Values for 8514/A line type:

2519  7F 0105 Format of HSLW parameter block:

2520  7F 0105 Format of HSMODE parameter block:

2521  7F 0105 Format of HSMRK paramter block:

2522  7F 0105 Format of HSMX parameter block:

2523  7F 0105 Values for 8514/A mix:

2524  7F 0105 Format of HSPAL parameter block:

2525  7F 0105 Format of HSPATT parameter block:

2526  7F 0105 Format of HSPATTO parameter block:

2527  7F 0105 Format of HSYNC parameter block:

2528  7F 0105 Format of HXLATE parameter block:

2529  7F 05-- Format of Alloy user information record:

2530  7F 06-- Format of Alloy drive info record:

2531  7F 07-- Format of Alloy shared drive list:

2532  7F 08-- Bitfields for G8BPQ session type:

2533  7F 0A-- Format of Alloy system flags:

2534  7F 0B-- Format of G8BPQ received data:

2535  7F 10-- Values for Alloy function status:

2536  7F 11-- Values for Alloy function status:

2537  7F 11-- Format of Alloy request block:

2538  7F 12-- Values for Alloy function status:

2539  7F 14-- Values Alloy receive service routine is called with:

2540  7F 14-- Values Alloy acknowledge service routine is called with:

2541  7F 14-- Format of Alloy busy structure:

2542  7F 15-- Format of Alloy channel status structure:

2543  7F 15-- Format of Alloy full-channel structure:

2544  7F 15-- Format of Alloy status structure:

2545  7F 16-- Format of Alloy transfer structure:

2546  7F 21-- Format of Alloy control packet:

2547  7F 24-- Values for Alloy function status:

2548  7F 25-- Values for Alloy network executive type:

2549  7F 26-- Bitfields for Alloy file mode bits:

2550  7F 41-- Values for Alloy function status:

2551  7F ABCD Values for 8516 Touch Screen function number:

2552  7F ABCD Format of 8516 Touch Screen Function 00h parameter block:

2553  7F ABCD Format of 8516 Touch Screen Function 00h results buffer:

2554  7F D6-- Format of Alloy MW386 reset packet:

2555  80 ---- Values for SBSIM error code:

2556  80 ---- Bitfields for SBSIM loaded drivers:

2557  80 ---- Values for SBSIM sound source:

2558  81 0200 Values for MegaEm status:

2559  83 00-- Values for JM Pro Tracker error code:

2560  83 18-- Format of JM Pro Tracker buffer-pointer structure:

2561  88 --00 Format of APL*PLUS/PC shape model:

2562  92 E1-- Values for Da Vinci eMail function status:

2563  92 E100 Format of Da Vinci eMail "NetInitStart" parameter block:

2564  92 E104 Format of Da Vinci eMail "NetWhereIs" parameter block:

2565  92 E105 Format of Da Vinci eMail "NetOpen" parameter block:

2566  92 E108 Format of Da Vinci eMail "NetWrite" parameter block:

2567  92 E108 Format of Da Vinci eMail command buffer:

2568  92 E108 Format of Da Vinci eMail message header buffer:

2569  92 E108 Bitfields for Da Vinci eMail mail types:

2570  92 E109 Format of Da Vinci eMail "NetErrorFix" parameter block:

2571  92 E10A Format of Da Vinci eMail "NetClose" parameter block:

2572  92 E10B Format of Da Vinci eMail "NetCheckQueue" parameter block:

2573  92 E10C Format of Da Vinci eMail "NetReadQueue" parameter block:

2574  92 E10D Format of Da Vinci eMail "NetSubmitName" parameter block:

2575  92 E10E Format of Da Vinci eMail "NetRemoveName" parameter block:

2576  92 E110 Format of Da Vinci eMail "NetGetAltRoute" parameter block:

2577  92 E111 Format of Da Vinci eMail "NetDeleteAltRoutes" parameter block:

2578  92 E112 Format of Da Vinci eMail "NetChangePassword" parameter block:

2579  92 E113 Format of Da Vinci eMail "NetSetAltRoute" parameter block:

2580  94 ---- Format of PCM driver function 0002h parameters:

2581  94 ---- Format of PCM driver function 0003h parameters:

2582  94 ---- Format of PCM driver function 0004h parameters:

2583  94 ---- Format of PCM driver functio 000Bh parameters:

2584  94 ---- Bitfields for PCM.COM status:

2585  94 ---- Format of PCM.COM DMA info structure:

2586  94 --10 Bitfields for PCM.COM timer options:

2587  D4 02-- Format of PC-MOS/386 System Control Block:

2588  D4 03-- Format of PC-MOS/386 directory information:

2589  D4 04-- Format of PC-MOS/386 Task Control Block:

2590  D4 04-- Bitfields for PC-MOS/386 remote printer flags:

2591  D4 04-- Values for PC-MOS/386 remote printer redirection:

2592  D4 04-- Format of PC-MOS/386 Task File Block:

2593  D4 04-- Bitfields for PC-MOS/386 IOCTL flags:

2594  D4 04-- Format of PC-MOS/386 Global File Block:

2595  D4 04-- Format of PC-MOS/386 Current Directory Block:

2596  D4 04-- Format of PC-MOS/386 Block Device Block:

2597  D4 04-- Format of PC-MOS/386 Record Lock Block:

2598  D4 07-- Bitfields for PC-MOS/386 events to monitor:

2599  D4 1D-- Format of PC-MOS/386 program name buffer:

2600  D4 22-- Values for PC-MOS/386 error code:

2601  D4 22-- Format of PC-MOS/386 addtask data structure:

2602  E0 ---- Values for CP/M-86,DR Multiuser DOS function number:

2603  E0 ---- Values for DOS Plus v2.1 XIOS functions:

2604  E0 ---- Values for DR Multiuser DOS Error Return Code:

2605  E0 ---- Format of DR Multiuser DOS queue descriptor:

2606  E0 ---- Format of DR Multiuser DOS queue parameter block:

2607  E0 ---- Format of DR Multiuser DOS character control block (CHCB):

2608  E0 ---- Format of DR Multiuser DOS AUX device parameter block:

2609  E0 ---- Values for DR Multiuser DOS AUX parity:

2610  E0 ---- Values for DR Multiuser DOS AUX baud rate:

2611  E0 ---- Format of DR Multiuser DOS AUX device control block:

2612  E0 0021 Values for PCROBOTS map squares:

2613  E0 0080 Bitfields for PCROBOTS basic configuration:

2614  E0 0080 Bitfields for PCROBOTS advanced configuration:

2615  F1 --01 Format of CAPI v2.0 interrupt handler entry point:

2657  F1 02-- Values for CAPI v1.1 error code:

2660  F1 --02 Values for CAPI v2.0 error code:

2658  F1 03-- Format of CAPI message:

2659  F1 03-- Values for CAPI v1.1 message command/subcommand:

2661  F1 --03 Values for CAPI v2.0 message command/subcommand:

2662  F1 --F3 Format of CAPI v2.0 capabilities:

2663  F1 --F3 Bitfields for CAPI v2.0 global options:

2664  F1 --F3 Bitfields for CAPI v2.0 B1 protocol support:

2665  F1 --F3 Bitfields for CAPI v2.0 B2 protocol support:

2666  F1 --F3 Bitfields for CAPI v2.0 B3 protocol support:

2616  F2 ---- Values for ImageCapture function:

2617  FF ---- Values for QEMM internal functions:


03 0912 Values for Soft-ICE breakpoint type:

Copy to Main

Table 0001

Values for Soft-ICE breakpoint type:

 00h	BPM (breakpoint register types)

 01h	I/O

 02h	INTerrupt

 03h	BPX (INT 03h-style breakpoint)

 04h	reserved

 05h	range

INT 03 0912


03 0913 Format of Soft-ICE breakpoint structure:

Copy to Main

Table 0002

Format of Soft-ICE breakpoint structure:

Offset	Size	Description

 00h	BYTE	breakpoint type (see #0003)

 01h	DWORD	breakpoint address 1

(lower range limit for memory BPs,

interrupt number for interrupt BPs,

address of BP for execution BPs,

I/O address (only word)	for I/O BPs)

 05h	DWORD	breakpoint address 2

(upper range limit for memory BPs,

optional value to check for for interrupt BPs,

overlay number (0 = root) for execution BPs)

 09h	DWORD	breakpoint address 3

 0Dh	BYTE	breakpoint mode 1 (see #0004)

(for interrupt BPs = register to check

    00h	 no value checking

    01h	 check AL

    02h	 check AH

    03h	 check AX)

 0Eh	BYTE	breakpoint mode 2 (see #0004)

 0Fh	BYTE	breakpoint size (00h byte, 01h word, 03h dword)

 10h	BYTE	breakpoint pass count before program stop

 11h	BYTE	breakpoint state

Note:	all unused fields should contain zeros

INT 03 0913


03 0913 Values for Soft-ICE breakpoint type:

Copy to Main

Table 0003

Values for Soft-ICE breakpoint type:

 00h	memory location

 01h	memory range

 03h	I/O

 04h	interrupt

 05h	execution break

INT 03 0913


03 0913 Values for Soft-ICE breakpoint mode:

Copy to Main

Table 0004

Values for Soft-ICE breakpoint mode:

 01h	read

 02h	write

 04h	execution

INT 03 0913


09 ---- Values for keyboard make/break (scan) code:

Copy to Main

Table 0005

Values for keyboard make/break (scan) code:

 01h	Esc	 31h	N

 02h	1 !	 32h	M

 03h	2 @	 33h	, <	 63h	F16

 04h	3 #	 34h	. >	 64h	F17

 05h	4 $	 35h	/ ?	 65h	F18

 06h	5 %	 36h	Right Shift	 66h	F19

 07h	6 ^	 37h	Grey*	 67h	F20

 08h	7 &	 38h	Alt	 68h	F21

 09h	8 *	 39h	SpaceBar	 69h	F22

 0Ah	9 (	 3Ah	CapsLock	 6Ah	F23

 0Bh	0 )	 3Bh	F1	 6Bh	F24

 0Ch	- _	 3Ch	F2	 6Ch	--

 0Dh	= +	 3Dh	F3	 6Dh	EraseEOF

 0Eh	Backspace	 3Eh	F4

 0Fh	Tab	 3Fh	F5	 6Fh	Copy/Play

 10h	Q	 40h	F6

 11h	W	 41h	F7

 12h	E	 42h	F8	 72h	CrSel

 13h	R	 43h	F9

 14h	T	 44h	F10	 74h	ExSel

 15h	Y	 45h	NumLock	 75h	--

 16h	U	 46h	ScrollLock	 76h	Clear

 17h	I	 47h	Home

 18h	O	 48h	UpArrow

 19h	P	 49h	PgUp

 1Ah	[ {	 4Ah	Grey-

 1Bh	] }	 4Bh	LeftArrow

 1Ch	Enter	 4Ch	Keypad 5

 1Dh	Ctrl	 4Dh	RightArrow

 1Eh	A	 4Eh	Grey+

 1Fh	S	 4Fh	End

 20h	D	 50h	DownArrow

 21h	F	 51h	PgDn

 22h	G	 52h	Ins

 23h	H	 53h	Del

 24h	J	 54h	SysReq	---non-key codes---

 25h	K	 00h	kbd buffer full

 26h	L	 56h	left \| (102-key)

 27h	; :	 57h	F11	 AAh	self-test complete

 28h	' "	 58h	F12	 E0h	prefix code

 29h	` ~	 E1h	prefix code

 2Ah	Left Shift	 5Ah	PA1	 EEh	ECHO

 2Bh	\ |	 5Bh	F13 (LWin)	 F0h	prefix code (key break)

 2Ch	Z	 5Ch	F14 (RWin)	 FAh	ACK

 2Dh	X	 5Dh	F15 (Menu)	 FCh	diag failure (MF-kbd)

 2Eh	C	 FDh	diag failure (AT-kbd)

 2Fh	V	 FEh	RESEND

 30h	B	 FFh	kbd error/buffer full

Notes:	scan codes 56h-E1h are only available on the extended (101/102-key)

  keyboard and Host Connected (122-key) keyboard; scan codes 5Bh-5Dh

  are only available on the 122-key keyboard and the Microsoft Natural

  Keyboard; scan codes 5Eh-76h are only available on the 122-key

  keyboard

in the default configuration, break codes are the make scan codes with

  the high bit set; make codes 60h,61h,70h, etc. are not available

  because the corresponding break codes conflict with prefix codes

  (code 2Ah is available because the self-test result code AAh is only

  sent on keyboard initialization).  An alternate keyboard

  configuration can be enabled on AT and later systems with enhanced

  keyboards, in which break codes are the same as make codes, but

  prefixed with an F0h scan code

prefix code E0h indicates that the following make/break code is for a

  "gray" duplicate to a key which existed on the original PC keyboard;

  prefix code E1h indicates that the following make code has no

  corresponding break code (currently only the Pause key generates no

  break code)

the Microsoft Natural Keyboard sends make codes 5Bh, 5Ch, and 5Dh

  (all with an E0h prefix) for the Left Windows, Right Windows, and

  Menu keys on the bottom row

the SysReq key is often labeled SysRq

SeeAlso: #0460

INT 09 ----


0C ---- Call the System 36/38 emulator API entry point with:

Copy to Main

Table 0006

Call the System 36/38 emulator API entry point with:

AH = function

    03h update screen

    05h select next session

AL = session number (00h-03h)

Return: AL = session type code

    00h not active

    01h display session

    02h printer session

    FEh invalid session number

DS = requested session's data segment (0 if not active)

    (see #0007)

Return: ???

INT 0C ----


0C ---- Format of System 36/38 emulator's data area:

Copy to Main

Table 0007

Format of System 36/38 emulator's data area:

Offset	Size	Description

13Eh	BYTE	bit flags for status line indicators turned on since this byte

last zerod

13Fh	BYTE	bit flags for status line indicators turned off since this

byte last set to FFh

140h	WORD	offset of EBCDIC to ASCII translation

146h	WORD	offset of EBCDIC screen buffer

148h	WORD	offset of EC (engineering change) level signature

150h	BYTE	"KEYI"

151h	BYTE	5250 key scan code to be sent to remote

15Bh	BYTE	"SYSAV"

15Dh	BYTE	5250 cursor column

15Eh	BYTE	5250 cursor row

167h	BYTE	"DVCTAD"

178h	BYTE	"FLAGS"

184h	BYTE	"SESSNOAD"

193h	BYTE	"STNAD"

198h	BYTE	"NSDS"

Note:	offsets are from the interrupt handler's segment

INT 0C ----


10 00-- Bitfields for ATI additional feature flags:

Copy to Main

Table 0008

Bitfields for ATI additional feature flags:

Bit(s)	Description

 0	70 Hz non-interlaced display

 1	Korean (double-byte) characters

 2	45 MHz memory clock rather than 40 MHz

 3	zero wait states

 4	paged ROMs

 6	no 8514/A monitor support

 7	HiColor DAC

INT 10 00--


10 00-- Values for video mode:

Copy to Main

Table 0009

Values for video mode:

     text/ text pixel	pixel	colors disply scrn  system

     grph resol	 box  resolution       pages  addr

 00h = T  40x25	 8x8   320x200	16gray	  8   B800 CGA,PCjr,Tandy

     = T  40x25	 8x14  320x350	16gray	  8   B800 EGA

     = T  40x25	 8x16  320x400	 16	  8   B800 MCGA

     = T  40x25	 9x16  360x400	 16	  8   B800 VGA

 01h = T  40x25	 8x8   320x200	 16	  8   B800 CGA,PCjr,Tandy

     = T  40x25	 8x14  320x350	 16	  8   B800 EGA

     = T  40x25	 8x16  320x400	 16	  8   B800 MCGA

     = T  40x25	 9x16  360x400	 16	  8   B800 VGA

 02h = T  80x25	 8x8   640x200	16gray	  4   B800 CGA,PCjr,Tandy

     = T  80x25	 8x14  640x350	16gray	  8   B800 EGA

     = T  80x25	 8x16  640x400	 16	  8   B800 MCGA

     = T  80x25	 9x16  720x400	 16	  8   B800 VGA

 03h = T  80x25	 8x8   640x200	 16	  4   B800 CGA,PCjr,Tandy

     = T  80x25	 8x14  640x350	 16/64	  8   B800 EGA

     = T  80x25	 8x16  640x400	 16	  8   B800 MCGA

     = T  80x25	 9x16  720x400	 16	  8   B800 VGA

 04h = G  40x25	 8x8   320x200	  4	  .   B800 CGA,PCjr,EGA,MCGA,VGA

 05h = G  40x25	 8x8   320x200	 4gray	  .   B800 CGA,PCjr,EGA

     = G  40x25	 8x8   320x200	  4	  .   B800 MCGA,VGA

 06h = G  80x25	 8x8   640x200	  2	  .   B800 CGA,PCjr,EGA,MCGA,VGA

     = G  80x25	  .	  .	mono	  .   B000 HERCULES.COM on HGC [14]

 07h = T  80x25	 9x14  720x350	mono	 var  B000 MDA,Hercules,EGA

     = T  80x25	 9x16  720x400	mono	  .   B000 VGA

 08h = T 132x25	 8x8  1056x200	 16	  .   B800 ATI EGA/VGA Wonder [2]

     = T 132x25	 8x8  1056x200	mono	  .   B000 ATI EGA/VGA Wonder [2]

     = G  20x25	 8x8   160x200	 16	  .	.  PCjr, Tandy 1000

     = G  90x43	 8x8   720x348	mono	  .   B000 Hercules + MSHERC.COM

     = G  90x45	 8x8   720x360	mono	  .   B000 Hercules + HERKULES [11]

     = G  90x29  8x12  720x348	mono	  .     .  Hercules + HERCBIOS [15]

 09h = G  40x25	 8x8   320x200	 16	  .	.  PCjr, Tandy 1000

     = G  90x43  8x8   720x348	mono	  .     .  Hercules + HERCBIOS [15]

 0Ah = G  80x25	 8x8   640x200	  4	  .	.  PCjr, Tandy 1000

 0Bh =	 reserved	   (EGA BIOS internal use)

     = G  80x25	 8x8   640x200	 16	  .	.  Tandy 1000 SL/TL [13]

 0Ch =	 reserved	   (EGA BIOS internal use)

 0Dh = G  40x25	 8x8   320x200	 16	  8   A000 EGA,VGA

 0Eh = G  80x25	 8x8   640x200	 16	  4   A000 EGA,VGA

 0Fh = G  80x25	 8x14  640x350	mono	  2   A000 EGA,VGA

 10h = G  80x25	 8x14  640x350	  4	  2   A000 64k EGA

     = G    .	  .    640x350	 16	  .   A000 256k EGA,VGA

 11h = G  80x30	 8x16  640x480	mono	  .   A000 VGA,MCGA,ATI EGA,ATI VIP

 12h = G  80x30	 8x16  640x480	 16/256K  .   A000 VGA,ATI VIP

     = G  80x30	 8x16  640x480	 16/64	  .   A000 ATI EGA Wonder

     = G    .	  .    640x480	 16	  .	.  UltraVision+256K EGA

 13h = G  40x25	 8x8   320x200	256/256K  .   A000 VGA,MCGA,ATI VIP

 14h = T 132x25	 Nx16	  .	 16	  .	.  XGA, IBM Enhanced VGA [3]

     = T 132x25	 8x16 1056x400	 16/256K  .	.  Cirrus CL-GD5420/5422/5426

     = G  80x25	 8x8   640x200	  .	  .	.  Lava Chrome II EGA

     = G    .	  .    640x400	 16	  .	.  Tecmar VGA/AD

 15h = G  80x25	 8x14  640x350	  .	  .	.  Lava Chrome II EGA

 16h = G  80x25	 8x14  640x350	  .	  .	.  Lava Chrome II EGA

     = G    .	  .    800x600	 16	  .	.  Tecmar VGA/AD

 17h = T 132x25	  .	  .	  .	  .	.  Tecmar VGA/AD

     = T  80x43	 8x8   640x348	 16	  4   B800 Tseng ET4000 BIOS [10]

     = G  80x34	 8x14  640x480	  .	  .	.  Lava Chrome II EGA

 18h = T  80x30	 9x16  720x480	 16	  1   A000 Realtek RTVGA [12]

     = T 132x25	  .	  .	mono	  .   B000 Cirrus 5320 chipset

     = T 132x44	 8x8  1056x352	mono	  .   B000 Tseng Labs EVA

     = T 132x44	 9x8  1188x352	 4gray	  2   B000 Tseng ET3000 chipset

     = T 132x44	 8x8  1056x352	 16/256	  2   B000 Tseng ET4000 chipset

     = G  80x34	 8x14  640x480	  .	  .	.  Lava Chrome II EGA

     = G	      1024x768	 16	  .	.  Tecmar VGA/AD

 19h = T  80x43	 9x11  720x473	 16	  1   A000 Realtek RTVGA [12]

     = T 132x25	 8x14 1056x350	mono	  .   B000 Tseng Labs EVA

     = T 132x25	 9x14 1188x350	 4gray	  4   B000 Tseng ET3000 chipset

     = T 132x25	 8x14 1056x350	 16/256	  4   B000 Tseng ET4000 chipset

     = T 132x34	  .	  .	mono	  .   B000 Cirrus 5320 chipset

 1Ah = T  80x60	 9x8   720x480	 16	  1   A000 Realtek RTVGA [12]

     = T 132x28	 8x13 1056x364	mono	  .   B000 Tseng Labs EVA

     = T 132x28	 9x13 1188x364	 4gray	  4   B000 Tseng ET3000 chipset

     = T 132x28	 8x13 1056x364	 16/256	  4   B000 Tseng ET4000 chipset

     = T 132x44	  .	  .	mono	  .   B000 Cirrus 5320 chipset

     = G    .	  .    640x350	256	  .	.  Tecmar VGA/AD

 1Bh = T 132x25	 9x14 1188x350	 16	  1   A000 Realtek RTVGA [12]

     = G    .	  .    640x400	256	  .	.  Tecmar VGA/AD

 1Ch = T 132x25	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = T 132x30	 9x16 1188x480	 16	  1   A000 Realtek RTVGA [12]

     = G    .	  .    640x480	256	  .	.  Tecmar VGA/AD

 1Dh = T 132x43	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = T 132x43	 9x11 1188x473	 16	  1   A000 Realtek RTVGA [12]

     = G    .	  .    800x600	256	  .	.  Tecmar VGA/AD

 1Eh = T 132x44	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = T 132x60	 9x8  1188x480	 16	  1   A000 Realtek RTVGA [12]

 1Fh = G 100x75	 8x8   800x600	 16	  1   A000 Realtek RTVGA

 20h = T 132x25	  .	  .	 16	  .	.  Avance Logic AL2101

     = G  40x16	  .    240x128	mono	  .   B000 HP 95LX/100LX/200LX

     = G 120x45	 8x16  960x720	 16	  1   A000 Realtek RTVGA

 21h = T  80x25	  .	  .	mono	  .   B000 HP 200LX

     = T 132x30	  .	  .	 16	  .	.  Avance Logic AL2101

     = T 132x44	 9x9  1188x396	 16/256K  .   B800 WD90C

     = T 132x44	 9x9  1188x396	 16	  .   B800 Diamond Speedstar 24X

     = T 132x60	  .	  .	 16	  2   B800 Tseng ET4000 chipset [10]

     = G  80x43	 8x8   720x348	mono	  .   B000 DESQview 2.x+Hercules [4]

     = G 128x48	 8x16 1024x768	 16	  1   A000 Realtek RTVGA [12]

 22h = T 132x43	  .	  .	  .	  .	.  Allstar Peacock (VGA)

     = T 132x43	  .	  .	 16	  .	.  Avance Logic AL2101

     = T 132x44	 8x8  1056x352	  .	  .   B800 Tseng Labs EVA

     = T 132x44	 9x8  1188x352	 16/256K  2   B800 Tseng ET3000 chipset

     = T 132x44	 8x8  1056x352	 16/256K  2   B800 Tseng ET4000 chipset

     = T 132x44	 8x8  1056x352	  .	  .	.  Ahead Systems EGA2001

     = T 132x44	 8x8  1056x352	 16	  2   B800 Ahead B

     = T 132x44	 8x9  1056x398	 16	  .	.  STB Lightspeed ET4000/W32P

     = T 132x44	  .	  .	 16	  .	.  Orchid Prodesigner VGA

     = G  80x43	 8x8   720x348	mono	  .   B800 DESQview 2.x+Hercules [4]

     = G  96x64	 8x16  768x1024	 16	  1   A000 Realtek RTVGA

 23h = T 132x25	 6x14  792x350	  .	  .   B800 Tseng Labs EVA

     = T 132x25	 9x14 1188x350	 16/256K  4   B800 Tseng ET3000 chipset

     = T 132x25	 8x14 1056x350	 16/256	  4   B800 Tseng ET4000 chipset

     = T 132x25	 8x14 1056x350	  .	  .	.  Ahead Systems EGA2001

     = T 132x25	 8x14 1056x350	 16	  4   B800 Ahead B

     = T 132x25	 8x8  1056x200	 16	  .   B800 ATI EGA Wonder,ATI VIP

     = T 132x25	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = T 132x28	  .	  .	  .	  .	.  Allstar Peacock (VGA)

     = T 132x28	  .	  .	 16	  .	.  Orchid Prodesigner VGA

     = T 132x60	  .	  .	 16	  .	.  Avance Logic AL2101

     = G 128x48	 8x16 1024x768	  4	  1   A000 Realtek RTVGA

 24h = T  80x30	  .	  .	 16	  .	.  Avance Logic AL2101

     = T 132x25	  .	  .	  .	  .	.  Allstar Peacock (VGA)

     = T 132x25	  .	  .	 16	  .	.  Orchid Prodesigner VGA

     = T 132x28	 6x13  792x364	  .	  .   B800 Tseng Labs EVA

     = T 132x28	 9x13 1188x364	 16/256K  4   B800 Tseng ET3000 chipset

     = T 132x28	 8x12 1056x336	 16	  1   B800 Ahead B

     = T 132x28	 8x13 1056x364	 16/256K  4   B800 Tseng ET4000 chipset

     = T 132x28	 8x14 1056x392	 16	  .	.  STB Lightspeed ET4000/W32P

     = T 132x28	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = G  64x32	 8x16  512x512	256	  1   A000 Realtek RTVGA

 25h = T  80x43	  .	  .	 16	  .	.  Avance Logic AL2101

     = G  80x60	 8x8   640x480	  .	  .   A000 Tseng Labs EVA

     = G  80x60	 8x8   640x480	 16/256K  1   A000 Tseng ET3000/4000 chipset

     = G    .	  .    640x480	 16	  .	.  VEGA VGA

     = G  80x60	 8x8   640x480	 16	  .   A000 Orchid Prodesigner VGA

     = G  80x60	 8x8   640x480	 16	  1   A000 Ahead B (same as 26h)

     = G    .	  .    640x480	 16	  .	.  NEC GB-1

     = G    .	  .    640x480	 16	  .	.  Cirrus 5320 chipset

     = G    .	  .    640x400	256	  .	.  Realtek RTVGA

 26h = T  80x60	 8x8   640x480	  .	  .	.  Tseng Labs EVA

     = T  80x60	 8x8   640x480	 16/256K  3   B800 Tseng ET3000/4000 chipset

     = T  80x60	  .	  .	  .	  .	.  Allstar Peacock (VGA)

     = T  80x60	  .	  .	 16	  .	.  Orchid ProDesigner VGA

     = T  80x60	  .	  .	 16	  .	.  Avance Logic AL2101

     = G  80x60	 8x8   640x480	  .	  .	.  Ahead Systems EGA2001

     = G  80x60	 8x8   640x480	 16	  1   A000 Ahead B (same as 25h)

     = G    .	  .    640x480	256	  .	.  Realtek RTVGA

 27h = T 132x25	 8x8  1056x200	mono	  .   B000 ATI EGA Wonder,ATI VIP

     = G    .	  .    720x512	 16	  .	.  VEGA VGA

     = G    .	  .    720x512	 16	  .	.  Genoa

     = G 100x75	 8x8   800x600	256	  1   A000 Realtek RTVGA [12]

     = G    .	  .    960x720	 16	  .	.  Avance Logic AL2101

 28h = T ???x???  .	  .	  .	  .	.  VEGA VGA

     = G    .	  .    512x512	256	  .	.  Avance Logic AL2101

     = G    .	  .   1024x768	256	  .	.  Realtek RTVGA (1meg)

 29h = G    .	  .    640x400	256	  .	.  Avance Logic AL2101

     = G    .	  .    800x600	 16	  .	.  VEGA VGA

     = G 100x37	 8x16  800x600	 16	  .   A000 Orchid

     = G    .	  .    800x600	 16	  .   A000 STB,Genoa,Sigma

     = G    .	  .    800x600	 16	  .	.  Allstar Peacock (VGA)

     = G 100x37	 8x16  800x600	 16/256K  1   A000 Tseng ET3000/4000 chipset

     = G    .	  .    800x600	???	  .	.  EIZO MDB10

     = G    .	  .    800x600	 16	  .	.  Cirrus 5320 chipset

     = G   NA	  .    800x600	 16	  .	.  Compaq QVision 1024/1280

     = G    .	  .   1024x1024 256	  .	.  Realtek RTVGA BIOS v3.C10

 2Ah = T 100x40	  .	  .	  .	  .	.  Allstar Peacock (VGA)

     = T 100x40	 8x16  800x640	 16	  .	.  Orchid Prodesigner VGA

     = T 100x40	 8x15  800x600	 16/256K  4   B800 Tseng ET3000/4000 chipset

     = T 100x40	 8x15  800x600	 16	  .	.  STB Lightspeed ET4000/W32P

     = G    .	  .    640x480	256	  .	.  Avance Logic AL2101

     = G    .	  .   1280x1024	 16	  .	.  Realtek RTVGA

 2Bh = G    .	  .    800x600	 16	  .	.  Avance Logic AL2101

 2Ch = G    .	  .    800x600	256	  .	.  Avance Logic AL2101

 2Dh = G    .	  .    640x350	256	  .	.  VEGA VGA

     = G    .	  .    640x350	256/256K  .   A000 Orchid, Genoa, STB

     = G  80x25	 8x14  640x350	256/256K  1   A000 Tseng ET3000/4000 chipset

     = G    .	  .    640x350	256	  .	.  Cirrus 5320 chipset

     = G  80x25	 8x14  640x350	256	  .	.  STB Lightspeed ET4000/W32P

     = G    .	  .    768x1024	 16	  .	.  Avance Logic AL2101

 2Eh = G    .	  .    640x480	256	  .	.  VEGA VGA

     = G  80x30	 8x16  640x480 256/256K	  .   A000 Orchid

     = G    .	  .    640x480 256/256K	  .   A000 STB,Genoa,Sigma

     = G  80x30	 8x16  640x480 256/256K	  1   A000 Tseng ET3000/4000 chipset

     = G    .	  .    640x480 256/256K	  .	.  Compaq QVision 1024/1280

     = G    .	  .    768x1024 256	  .	.  Avance Logic AL2101

 2Fh = T 160x50	 8x8  1280x400	 16	  4   B800 Ahead B (Wizard/3270)

     = G    .	  .    720x512	256	  .	.  VEGA VGA

     = G    .	  .    720x512	256	  .	.  Genoa

     = G  80x25	 8x16  640x400 256/256K	  1   A000 Tseng ET4000 chipset

     = G    .	  .   1024x768	  4	  .	.  Avance Logic AL2101

 30h = G    .	  .    800x600	256	  .	.  VEGA VGA

     = G 100x37	 8x16  800x600 256/256K	  .   A000 Orchid

     = G    .	  .    800x600 256/256K	  .   A000 STB,Genoa,Sigma

     = G    .	  .    720x350	  2	  .	.  3270 PC

     = G    .	  .    800x600	256	  .	.  Cardinal

     = G    .	  .	  .	  .	  .   B800 AT&T 6300

     = G 100x37	 8x16  800x600 256/256K	  1   A000 Tseng ET3000/4000 chipset

     = G    .	  .   1024x768	 16	  .	.  Avance Logic AL2101

 31h = G    .	  .   1024x768	256	  .	.  Avance Logic AL2101

 32h = T  80x34	 8x10	  .	 16	  4   B800 Ahead B (Wizard/3270)

     = G    .	  .    640x480	256	  .	.  Compaq QVision 1024/1280

 33h = T 132x44	 8x8	  .	 16	  .   B800 ATI EGA Wonder,ATI VIP

     = T  80x34	 8x8	  .	 16	  4   B800 Ahead B (Wizard/3270)

 34h = T  80x66	 8x8	  .	 16	  4   B800 Ahead B (Wizard/3270)

     = G    .	  .    800x600	256	  .	.  Compaq QVision 1024/1280

 36h = G    .	  .    960x720	 16	  .	.  VEGA VGA, STB

     = G    .	  .    960x720	 16	  .   A000 Tseng ET3000 only

     = G    .	  .   1280x1024	 16	  .	.  Avance Logic AL2101

 37h = T 132x44	 8x8	  .	mono	  .   B800 ATI EGA Wonder,ATI VIP

     = G    .	  .   1024x768	 16	  .	.  VEGA VGA

     = G 128x48	 8x16 1024x768	 16	  .   A000 Orchid

     = G    .	  .   1024x768	 16	  .   A000 STB,Genoa,Sigma

     = G    .	  .   1024x768	 16	  .	.  Definicon

     = G 128x48	 8x16 1024x768	 16	  1   A000 Tseng ET3000/4000 chipset

     = G    .	  .   1024x768	 16	  .	.  Compaq QVision 1024/1280

     = G    .	  .   1280x1024 256	  .	.  Avance Logic AL2101

 38h = G    .	  .   1024x768	256	  .	.  STB VGA/EM-16 Plus (1MB)

     = G 128x48	 8x16 1024x768	256/256K  1   A000 Tseng ET4000 chipset

     = G    .	  .   1024x768	256	  .	.  Orchid ProDesigner II

     = G    .	  .   1024x768	256	  .	.  Compaq QVision 1024/1280

 39h = G    .	  .   1280x1024	 16	  .	.  Compaq QVision 1280

 3Ah = G    .	  .   1280x1024	256	  .	.  Compaq QVision 1280

 3Bh = G    .	  .    512x480	256	  .	.  Compaq QVision 1024/1280

 3Ch = G    .	  .    640x400	 64K	  .	.  Compaq QVision 1024/1280

 3Dh = G    .	  .   1280x1024	 16	  .	.  Definicon

     = G 128x64	 8x16 1280x1024	 16	  1   A000 Tseng ET4000 v3.00 [1,7]

 3Eh = G    .	  .   1280x961	 16	  .	.  Definicon

     = G    .	  .    640x480	 64K	  .	.  Compaq QVision 1024/1280

 3Fh = G    .	  .   1280x1024 256	  .	.  Hercules ??? (ET4000W32)

     = G    .	  .    800x600	 64K	  .	.  Compaq QVision 1024/1280

 40h = T  80x43	  .	  .	  .	  .	.  VEGA VGA, Tecmar VGA/AD

     = T  80x43	  .	  .	  .	  .	.  Video7 V-RAM VGA

     = T  80x43	  .	  .	  .	  .	.  Tatung VGA

     = T 100x30	  .	  .	 16	  .	.  MORSE VGA

     = T 100x30	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = T  80x25	  .    720x350	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    320x200	 64K	  .	.  Avance Logic AL2101

     = G  80x25	 8x16  640x400	  2	  1   B800 AT&T 6300, AT&T VDC600

     = G  80x25	 8x16  640x400	  2	  1   B800 Olivetti Quaderno

     = G  80x25	 8x16  640x400	  2	  1   B800 Compaq Portable

     = G    .	  .   1024x768	 64K	  .	.  Compaq QVision 1280

 41h = T 132x25	  .	  .	  .	  .	.  VEGA VGA

     = T 132x25	  .	  .	  .	  .	.  Tatung VGA

     = T 132x25	  .	  .	  .	  .	.  Video7 V-RAM VGA

     = T 100x50	  .	  .	 16	  .	.  MORSE VGA

     = T 100x50	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = T  80x34	 9x14  720x476	 16/256K  .   B800 WD90C

     = T  80x34	 9x14	  .	 16	  .   B800 Diamond Speedstar 24X

     = G    .	  .    512x512	 64K	  .	.  Avance Logic AL2101

     = G    .	  .    640x200	 16	  1	.  AT&T 6300

     = G  80x25	  .    720x348	mono	  .   B000 Genoa SuperEGA BIOS 3.0+

 42h = T 132x43	  .	  .	  .	  .	.  VEGA VGA

     = T 132x43	  .	  .	  .	  .	.  Tatung VGA

     = T 132x43	  .	  .	  .	  .	.  Video7 V-RAM VGA

     = T  80x34	 9x10	  .	  4	  4   B800 Ahead B (Wizard/3270)

     = T 100x60	  .	  .	 16	  .	.  MORSE VGA

     = T 100x60	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = G  80x25	 8x16  640x400	 16	  .	.  AT&T 6300, AT&T VDC600

     = G    .	  .    640x400	 64K	  .	.  Avance Logic AL2101

     = G  80x25	  .    720x348	mono	  .   B800 Genoa SuperEGA BIOS 3.0+

 43h = T  80x60	  .	  .	  .	  .	.  VEGA VGA

     = T  80x60	  .	  .	  .	  .	.  Tatung VGA

     = T  80x60	  .	  .	  .	  .	.  Video7 V-RAM VGA

     = T  80x45	 9x8	  .	  4	  4   B800 Ahead B (Wizard/3270)

     = T 100x75	  .	  .	 16	  .	.  MORSE VGA

     = T  80x29	  .    720x348	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  . 640x200 of 640x400 viewport	   AT&T 6300 (unsupported)

     = G    .	  .    640x480	 64K	  .	.  Avance Logic AL2101

 44h =	disable VDC and DEB output	.  AT&T 6300

     = T 100x60	  .	  .	  .	  .	.  VEGA VGA

     = T 100x60	  .	  .	  .	  .	.  Tatung VGA

     = T 100x60	  .	  .	  .	  .	.  Video7 V-RAM VGA

     = T  80x32	  .    720x352	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    800x600	 64K	  .	.  Avance Logic AL2101

 45h = T 132x28	  .	  .	  .	  .	.  Tatung VGA

     = T 132x28	  .	  .	  .	  .	.  Video7 V-RAM VGA

     = T  80x44	  .    720x352	mono	  .	.  Genoa SuperEGA BIOS 3.0+

 46h = T 132x25	 8x14	  .	mono	  .	.  Genoa 6400

     = T 132x25	 9x14	  .	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = G 100x40	 8x15  800x600	  2	  .	.  AT&T VDC600

 47h = T 132x29	 8x12	  .	mono	  .	.  Genoa 6400

     = T 132x29	 9x12	  .	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = T 132x28	 9x16 1188x448	 16/256K  .   B800 WD90C

     = T 132x28	 9x16	  .	 16	  .   B800 Diamond Speedstar 24X

     = G 100x37	 8x16  800x600	 16	  .	.  AT&T VDC600

 48h = T 132x32	 8x12	  .	mono	  .	.  Genoa 6400

     = T 132x32	 9x11	  .	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = G  80x50	 8x8   640x400	  2	  .   B800 AT&T 6300, AT&T VDC600

     = G  80x50	 8x8   640x400	  2	  .   B800 Olivetti Quaderno

 49h = T 132x44	 8x8	  .	mono	  .	.  Genoa 6400

     = T 132x44	 9x8	  .	mono	  .	.  Genoa SuperEGA BIOS 3.0+

     = G  80x30	 8x16  640x480	  .	  .	.  Lava Chrome II EGA

 4Dh = T 120x25	  .	  .	  .	  .	.  VEGA VGA

     = G    .	  .    512x480	 16M	  .	.  Compaq QVision 1024/1280

 4Eh = T 120x43	  .	  .	  .	  .	.  VEGA VGA

     = T  80x60	 8x8	  .	 16/256K  .   B800 Oak OTI-067/OTI-077 [8]

     = G    .	  .    640x400	 16M	  .	.  Compaq QVision 1024/1280

 4Fh = T 132x25	  .	  .	  .	  .	.  VEGA VGA

     = T 132x60	  .	  .	  .	  .	.  some Oak Tech VGA [8]

     = G    .	  .    640x480	 16M	  .	.  Compaq QVision 1280

 50h = T  80x30	 8x16	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = T  80x34	  .	  .	  .	  .	.  Lava Chrome II EGA

     = T  80x43	  .	  .	mono	  .	.  VEGA VGA

     = T 132x25	 9x14	  .	mono	  .	.  Ahead Systems EGA2001

     = T 132x25	 9x14	  .	  4	  4   B800 Ahead B

     = T 132x25	 8x14	  .	 16	  8   B800 OAK Technologies VGA-16

     = T 132x25	 8x14	  .	 16/256K  .   B800 Oak OTI-037/067/077 [8]

     = T 132x25	 8x14 1056x350	 16	  8   B800 UM587 chipset

     = T 132x30	  .	  .	 16	  .	.  MORSE VGA

     = T 132x30	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = G  80x30	 8x16  640x480	 16	  .	.  Paradise EGA-480

     = G  80x30	 8x16  640x480	 16	  .	.  NEL Electronics BIOS

     = G    .	  .    640x480	mono???	  .	.  Taxan 565 EGA

     = G  40x25	 8x8   320x200	  .	  .	.  Genoa SuperEGA BIOS 3.0+

 51h = T  80x30	 8x16	  .	  .	  .	.  Paradise EGA-480

     = T  80x30	 9x16	  .	  .	  .	.  NEL Electronics BIOS

     = T  80x30	  .	  .	  .	  .	.  Lava Chrome II EGA

     = T  80x43	 8x11	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = T 132x25	  .	  .	mono	  .	.  VEGA VGA

     = T 132x28	 9x12	  .	  4	  4   B800 Ahead B

     = T 132x43	 8x8	  .	 16	  5   B800 OAK Technologies VGA-16

     = T 132x43	 8x8	  .	 16/256K  .   B800 Oak OTI-037/067/077

     = T 132x43	 8x8  1056x344	 16	  5   B800 UM587 chipset

     = T 132x50	  .	  .	 16	  .	.  MORSE VGA

     = T 132x50	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = G  80x34	 8x14  640x480	 16	  .	.  ATI EGA Wonder

     = G  80x25	 8x8   640x200	  .	  .	.  Genoa SuperEGA BIOS 3.0+

 52h = T  80x60	  .	  .	  .	  .	.  Lava Chrome II EGA

     = T  80x60	 8x8	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = T 132x43	  .	  .	mono	  .	.  VEGA VGA

     = T 132x44	 9x8	  .	mono	  .	.  Ahead Systems EGA2001

     = T 132x44	 9x8	  .	  4	  2   B800 Ahead B

     = T 132x60	  .	  .	 16	  .	.  MORSE VGA

     = T 132x60	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = G  80x25	 8x19  640x480	 16	  1   A000 AX VGA (Kanji&superimpose)

     = G  94x29	 8x14  752x410	 16	  .	.  ATI EGA Wonder

     = G 100x75	 8x8   800x600	 16	  1   A000 OAK Technologies VGA-16

     = G 100x75	 8x8   800x600	 16	  .   A000 Oak OTI-037 chipset [8]

     = G 100x37	 8x16  800x600	 16	  .   A000 Oak OTI-067/077 chips [8]

     = G 100x75	 8x8   800x600	 16	  .   A000 UM587 chipset

     = G 128x30	 8x16 1024x480	 16	  .	.  NEL Electronics BIOS

 53h = T  80x25	 8x16	  .	  .	  .	.  NEL Electronics BIOS

     = T  80x60	  .	  .	 16	  .	.  MORSE VGA

     = T  80x60	  .	  .	  .	  .	.  Cirrus 510/520 chipset

     = T 132x25	 8x14	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = T 132x43	  .	  .	  .	  .	.  Lava Chrome II EGA

     = G  80x25	 8x19  640x480	 16	  1   A000 AX VGA (Kanji, no superimp.)

     = G    .	  .    640x480	256	  .	.  Oak VGA

     = G  80x30	 8x16  640x480	256	  .   A000 Oak OTI-067/OTI-077 [8]

     = G 100x40	 8x14  800x560	 16	  .	.  ATI EGA Wonder,ATI VIP

     = G    .	  .	  .	  .	  .	.  AX PC

 54h = T 132x25	  .	  .	  .	  .	.  Lava Chrome II EGA

     = T 132x30	 8x16	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = T 132x43	 8x8	  .	  .	  .	.  Paradise EGA-480

     = T 132x43	 8x8	  .	  .	  .	.  NEL Electronics BIOS

     = T 132x43	 7x9	  .	 16/256K  .   B800 Paradise VGA

     = T 132x43	 8x9	  .	 16/256K  .   B800 Paradise VGA on multisync

     = T 132x43	  .	  .	  .	  .	.  Taxan 565 EGA

     = T 132x43	  .	  .	  .	  .	.  AST VGA Plus

     = T 132x43	  .	  .	  .	  .	.  Hewlett-Packard D1180A

     = T 132x43	 7x9	  .	 16	  .	.  AT&T VDC600

     = T 132x43	 9x9  1188x387	 16/256K  .   B800 WD90C

     = T 132x43	 9x9  1188x387	 16/256K  .   B800 Diamond Speedstar 24X

     = T 132x43	 9x9  1188x387	 16/256K  .   B800 Diamond Stealth 24

     = T 132x43	 8x8  1056x350	 16/256K  .	.  Cirrus CL-GD5420/5422/5426

     = T 132x50	 8x8	  .	 16	  .   A000 NCR 77C22 [9]

     = G 100x42	 8x14  800x600	 16	  .   A000 ATI EGA Wonder, VGA Wonder

     = G 100x42	 8x14  800x600	 16	  .   A000 ATI Ultra 8514A, ATI XL

     = G    .	  .    800x600	256	  .   A000 Oak VGA

     = G 100x37	 8x16  800x600	256	  .   A000 Oak OTI-067/077 chips [8]

 55h = T  80x66	 8x8	  .	 16/256K  .   A000 ATI VIP

     = T 132x25	 8x14	  .	  .	  .	.  Paradise EGA-480

     = T 132x25	 8x14	  .	  .	  .	.  NEL Electronics BIOS

     = T 132x25	 7x16	  .	 16/256K  .   B800 Paradise VGA

     = T 132x25	 8x16	  .	 16/256K  .   B800 Paradise VGA on multisync

     = T 132x25	  .	  .	  .	  .	.  Taxan 565 EGA

     = T 132x25	  .	  .	  .	  .	.  AST VGA Plus

     = T 132x25	  .	  .	  .	  .	.  Hewlett-Packard D1180A

     = T 132x25	 7x16	  .	 16	  .	.  AT&T VDC600

     = T 132x25	 8x16	  .	 16	  .   A000 NCR 77C22 [9]

     = T 132x25	 9x16 1188x400	 16/256K  .   B800 WD90C

     = T 132x25	 9x16 1188x400	 16/256K  .   B800 Diamond Speedstar 24X

     = T 132x25	 9x16 1188x400	 16/256K  .   B800 Diamond Stealth 24

     = T 132x25	 8x14 1056x350	 16/256K  .	.  Cirrus CL-GD5420/5422/5426

     = T 132x43	 8x11	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = G  94x29	 8x14  752x410	  .	  .	.  Lava Chrome II EGA

     = G 128x48	 8x16 1024x768	 16/256K  .   A000 ATI VGA Wonder v4+  [5]

     = G    .	  .   1024x768	 16/256K  .	.  ATI VGA Wonder Plus

     = G    .	  .   1024x768	 16/256K  .	.  ATI Ultra 8514A,ATI XL

     = G 128x48	 8x16 1024x768	  4	  .   A000 Oak OTI-067/077 chips [8]

 56h = T 132x43	 8x8	  .	  3???	  2   B000 NSI Smart EGA+

     = T 132x43	 7x9	  .	  4	  .   B000 Paradise VGA

     = T 132x43	 8x9	  .	  4	  .   B000 Paradise VGA on multisync

     = T 132x43	  .	  .	mono	  .	.  Taxan 565 EGA

     = T 132x43	 7x9	  .	  2	  .	.  AT&T VDC600

     = T 132x43	 9x8	  .	  .	  .	.  NEL Electronics BIOS

     = T 132x50	 8x8	  .	  4	  .   A000 NCR 77C22 [9]

     = T 132x60	 8x8	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = G    .	  .   1024x768	 16	  .   A000 Oak VGA

     = G 128x48	 8x16 1024x768	 16	  .   A000 Oak OTI-067/077 chips [8]

 57h = T 132x25	 8x14	  .	  3???	  4   B000 NSI Smart EGA+

     = T 132x25	 7x16	  .	  4	  .   B000 Paradise VGA

     = T 132x25	 8x16	  .	  4	  .   B000 Paradise VGA on multisync

     = T 132x25	 9x14	  .	  .	  .	.  NEL Electronics BIOS

     = T 132x25	  .	  .	mono	  .	.  Taxan 565 EGA

     = T 132x25	 7x16	  .	  2	  .	.  AT&T VDC600

     = T 132x25	 9x14	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = T 132x25	 8x16	  .	  4	  .   A000 NCR 77C22 [9]

     = G  96x48	 8x16  768x1024	 16	  .   A000 Oak OTI-067/077 chips [8]

 58h = T  80x33	 8x14	  .	 16	  .   B800 ATI EGA Wonder,ATI VIP

     = T  80x32	 9x16	  .	 16	  .	.  Genoa 6400

     = T  80x43	 8x8	  .	  .	  .	.  NEL Electronics BIOS

     = T 132x30	 9x16	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = G 100x75	 8x8   800x600	 16/256K  .   A000 Paradise VGA

     = G 100x75	 8x8   800x600	 16	  .	.  AT&T VDC600

     = G 100x75	 8x8   800x600	 16	  .   A000 NCR 77C22 [9]

     = G 100x75	 8x8   800x600	 16	  .	.  Diamond Speedstar 24X

     = G 100x75	 8x8   800x600	 16/256K  .   A000 Paradise VGA, WD90C

     = G    .	  .    800x600	 16	  .	.  AST VGA Plus, Compaq VGA

     = G    .	  .    800x600	 16	  .	.  Dell VGA

     = G    .	  .    800x600	 16	  .	.  Hewlett-Packard D1180A

     = G    .	  .    800x600	???	  .	.  ELT VGA PLUS 16

     = G 100x37	 8x16  800x600	 16/256K  .   A000 Cirrus CL-GD5420/5422/5426

     = G 160x64	 8x16 1280x1024	 16	  .   A000 Oak OTI-077 chipset [8]

 59h = T  80x43	 9x8	  .	  .	  .	.  NEL Electronics BIOS

     = T  80x66	 8x8	  .	 16/256K  .   A000 ATI VIP

     = T 132x43	 9x11	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = G 100x75	 8x8   800x600	  2	  .   A000 Paradise VGA

     = G 100x75	 8x8   800x600	  2	  .	.  AT&T VDC600

     = G    .	  .    800x600	  2	  .	.  AST VGA Plus, Compaq VGA

     = G    .	  .    800x600	  2	  .	.  Dell VGA

     = G    .	  .    800x600	  2	  .	.  Hewlett-Packard D1180A

     = G 100x75	 8x8   800x600	  2	  .   A000 NCR 77C22 [9]

     = G 128x48	 8x16 1024x768	256	  .   A000 Oak OTI-077 chipset [8]

 5Ah = T  80x60	 8x8	  .	  .	  .	.  NEL Electronics BIOS

     = T 132x60	 9x8	  .	 16/256K  .   B800 Trident TVGA 8800/8900

     = G 128x48	 8x16 1024x768	  2	  .   A000 NCR 77C22 [9]

 5Bh = T  80x30	 8x16	  .	  .	  .   B800 ATI VGA Wonder (undoc)

     = G    .	  .    640x350	256	  .	.  Genoa 6400

     = G  80x25	 8x16  640x400	 32K	  .   A000 Oak OTI-067/077 chips [8]

     = G    .	  .    800x600	 16	  .	.  Maxxon, SEFCO TVGA, Imtec

     = G 100x75	 8x8   800x600	 16/256K  .   A000 Trident TVGA 8800, 8900

     = G    .	  .    800x600	???	  .	.  Vobis MVGA

     = G 100x37	 8x16  800x600	  .	  .	.  NEL Electronics BIOS

     = G 128x48	 8x16 1024x768	 16	  .   A000 NCR 77C22 [1,9]

 5Ch = T 100x37	 8x16	  .	  .	  .	.  NEL Electronics BIOS

     = G    .	  .    640x400	256	  .	.  Logix, ATI Prism Elite

     = G    .	  .    640x400	256	  .	.  Maxxon, SEFCO TVGA, Imtec

     = G  80x25	 8x16  640x400	256/256K  .   A000 Zymos Poach, Hi Res 512

     = G  80x25	 8x16  640x400	256/256K  .   A000 Trident TVGA 8800/8900

     = G  80x30	 8x16  640x480	256	  .	.  Genoa 6400

     = G  80x30	 8x16  640x480	 32K	  .   A000 Oak OTI-077 chipset [8]

     = G 100x75	 8x8   800x600	256	  .   A000 NCR 77C22 [9]

     = G 100x75	 8x8   800x600	256/256K  .   A000 WD90C

     = G 100x75	 8x8   800x600	256/256K  .   A000 Diamond Speedstar 24X

     = G 100x37	 8x16  800x600	256/256K  .   A000 Cirrus CL-GD5420/5422/5426

 5Dh = T 100x75	 8x8	  .	  .	  .	.  NEL Electronics BIOS

     = G  80x25	 8x14  640x350	 64K	  .	.  STB Lightspeed ET4000/W32P

     = G    .	  .    640x480	256	  .	.  Logix, ATI Prism Elite

     = G    .	  .    640x480	256	  .	.  Maxxon, SEFCO TVGA, Imtec

     = G  80x30	 8x16  640x480	256/256K  .   A000 Zymos Poach, Hi Res 512

     = G  80x30	 8x16  640x480	256/256K  .   A000 Trident TVGA 8800 (512K)

     = G 128x48	 8x16 1024x768	 16	  .   A000 NCR 77C22 [9]

     = G 128x48	 8x16 1024x768	 16/256K  .   A000 WD90C

     = G 128x48	 8x16 1024x768	 16	  .	.  Diamond Speedstar 24X

     = G 128x48	 8x16 1024x768	 16/256K  .   A000 Cirrus CL-GD5420/5422/5426

 5Eh = G    .	  .    640x400	256	  .	.  Paradise VGA,VEGA VGA

     = G    .	  .    640x400	256	  .	.  AST VGA Plus, NCR 77C22

     = G    .	  .    640x400	256	  .	.  Compaq VGA, Dell VGA

     = G  80x25	 8x16  640x400	256	  .	.  AT&T VDC600

     = G  80x25	 8x16  640x400	256	  .   A000 NCR 77C22 [9]

     = G  80x25	 8x16  640x400	256/256K  .   A000 WD90C

     = G  80x25	 8x16  640x400	256/256K  .   A000 Diamond Speedstar 24X

     = G    .	  .    800x600	 16	  .	.  Logix, ATI Prism Elite

     = G 100x37	 8x16  800x600	 16	  .	.  NEL Electronics BIOS

     = G 100x75	 8x8   800x600	256	  .	.  Genoa 6400

     = G 100x75	 8x8   800x600	256/256K  .   A000 Zymos Poach, Trident 8900

     = G 100x75	 8x8   800x600	256/256K  .   A000 Hi Res 512

 5Fh = G  80x25	 8x16  640x400	 64K	  .	.  STB Lightspeed ET4000/W32P

     = G    .	  .    640x480	256	  .	.  Paradise VGA

     = G    .	  .    640x480	256	  .	.  AST VGA Plus, NCR 77C22

     = G    .	  .    640x480	256	  .	.  Compaq VGA, Dell VGA

     = G    .	  .    640x480	256	  .	.  Hewlett-Packard D1180A

     = G  80x30	 8x16  640x480	256	  .	.  AT&T VDC600 (512K)

     = G  80x30	 8x16  640x480	256	  .   A000 NCR 77C22 [9]

     = G  80x30	 8x16  640x480	256/256K  .   A000 WD90C

     = G  80x30	 8x16  640x480	256/256K  .   A000 Diamond Speedstar 24X

     = G  80x30	 8x16  640x480	256/256K  .   A000 Cirrus CL-GD5420/5422/5426

     = G    .	  .   1024x768	 16	  .	.  Logix, ATI Prism Elite

     = G    .	  .   1024x768	 16	  .	.  Maxxon, Imtec

     = G 128x48	 8x16 1024x768	 16	  .	.  Genoa 6400

     = G 128x48	 8x16 1024x768	 16/256K  .   A000 Zymos Poach, Hi Res 512

     = G 128x48	 8x16 1024x768	 16/256K  .   A000 Trident TVGA 88/8900 512K

 60h = T 132x25	 8x14	  .	 16/64	  8   B800 Quadram Ultra VGA

     = T 132x25	 8x14	  .	 16	  .	.  Genoa 6400

     = T 132x25	 8x14	  .	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = T 132x25	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = T 132x25	  .	  .	 16	  .	.  Chips&Technologies chipset

     = G  80x???  .    ???x400	  .	  .	.  Corona/Cordata BIOS 4.10+

     = G  80x25	 8x16  640x400	256	  1   A000 Ahead A, Ahead B

     = G    .	  .    752x410	  .	  .	.  VEGA VGA

     = G    .	  .    752x410	 16	  .	.  Tatung VGA

     = G    .	  .    752x410	 16	  .	.  Video7 V-RAM VGA

     = G 128x48	 8x16 1024x768	  4/256K  .   A000 Trident TVGA 8900

     = G 128x48	 8x16 1024x768	256/256K  .   A000 WD90C

     = G 128x48	 8x16 1024x768	256/256K  .   A000 Diamond Speedstar 24X

     = G 128x48	 8x16 1024x768	256/256K  .   A000 Cirrus CL-GD5420/5422/5426

 61h = T 132x29	 8x12	  .	 16/64	  8   B800 Quadram Ultra VGA

     = T 132x29	 8x8	  .	 16	  .	.  Genoa 6400

     = T 132x29	 8x8	  .	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = T 132x50	  .	  .	  .	  .	.  Cirrus 5320 chipset

     = T 132x50	  .	  .	 16	  .	.  Chips&Technologies chipset

     = G    .	  .    ???x400	  .	  .	.  Corona/Cordata BIOS 4.10+

     = G  80x25	 8x16  640x400	256	  .   A000 ATI VGA Wonder,VGA Wonder+

     = G  80x25	 8x16  640x400	256	  .   A000 ATI Ultra 8514A,ATI XL

     = G  80x30	 8x16  640x480	256	  1   A000 Ahead A, Ahead B (512K)

     = G    .	  .    720x540	  .	  .	.  VEGA VGA

     = G    .	  .    720x540	 16	  .	.  Tatung VGA

     = G    .	  .    720x540	 16	  .	.  Video7 V-RAM VGA

     = G  96x64	 8x16  768x1024	 16/256K  .   A000 Trident TVGA 88/8900 512K

     = G 128x48	 8x16 1024x768	256	  .   A000 NCR 77C22 [1,9]

 62h = T 132x32	 8x11	  .	 16/64	  6   B800 Quadram Ultra VGA

     = T 132x32	 8x12	  .	 16	  .	.  Genoa 6400

     = T 132x32	 8x11	  .	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    640x450	 16	  .	.  Cirrus 510/520 chipset

     = G  80x30	 8x16  640x480	256	  .   A000 ATI VGA Wonder,VGA Wonder+

     = G  80x30	 8x16  640x480	256	  .   A000 ATI Ultra 8514A,ATI XL

     = G  80x30	 8x16  640x480	32K	  .   A000 WD90C

     = G  80x30	 8x16  640x480	32K	  .   A000 Diamond Speedstar 24X

     = G    .	  .    800x600	  .	  .	.  VEGA VGA

     = G    .	  .    800x600	 16	  .	.  Tatung VGA

     = G    .	  .    800x600	 16	  .	.  Video7 V-RAM VGA

     = G 100x75	 8x8   800x600	256	  1   A000 Ahead A, Ahead B (512K)

     = G 128x48	 8x16 1024x768	256/256K  .   A000 Trident TVGA 8900, Zymos

     = G 128x48	 8x16 1024x768	256	  .   A000 NCR 77C22 [9]

 63h = T 132x44	 8x8	  .	 16/64	  5   B800 Quadram Ultra VGA

     = T 132x44	 8x8	  .	 16	  .	.  Genoa 6400

     = T 132x44	 8x8	  .	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    720x540	 16	  .	.  MORSE VGA

     = G    .	  .    720x540	 16	  .	.  Cirrus 510/520 chipset

     = G 100x42	 8x14  800x600	256	  .   A000 ATI VGA Wonder,VGA Wonder+

     = G 100x42	 8x14  800x600	256	  .   A000 ATI Ultra 8514A,ATI XL

     = G    .	  .    800x600	32K	  .   A000 WD90C

     = G    .	  .    800x600	32K	  .   A000 Diamond Speedstar 24X

     = G 128x48	 7x16 1024x768	256	  1   A000 Ahead B (1MB)

     = G    .	  .   1024x768	  2	  .	.  Video7 V-RAM VGA

 64h = T 132x60	 8x8	  .	 16	  .	.  Genoa 6400

     = G    .	  .    640x480	64K	  .   A000 Cirrus CL-GD 5422/5426

     = G    .	  .    800x600	 16	  .	.  MORSE VGA

     = G    .	  .    800x600	 16	  .	.  Cirrus 510/520 chipset

     = G    .	  .    800x600	???	  .	.  SAMPO-Mira VGA

     = G    .	  .   1024x768	  4	  .	.  Video7 V-RAM VGA

     = G 128x48	 8x16 1024x768	256	  .   A000 ATI VGA Wonder Plus,ATI XL

     = G 160x64	 8x16 1280x1024	 16/256K  .   A000 WD90C [1]

     = G 160x64	 8x16 1280x1024	 16/256K  .   A000 Diamond Speedstar 24X [1]

 65h = G    .	  .    800x600	64K	  .   A000 Cirrus CL-GD 5422/5426

     = G    .	  .   1024x768	 16	  .	.  Video7 V-RAM VGA

     = G 128x48	 8x16 1024x768	 16	  .   A000 ATI VGA Wonder

 66h = T  80x50	 8x8   640x400	 16/256K  .   B800 WD90C

     = T  80x50	 8x8	  .	 16	  .   B800 Diamond Speedstar 24X

     = G    .	  .    640x400	256	  .	.  Tatung VGA

     = G    .	  .    640x400	256	  .	.  Video7 V-RAM VGA

     = G    .	  .    640x480	32K	  .   A000 Cirrus CL-GD 5422/5426

 67h = T  80x43	 8x8   640x344	 16/256K  .   B800 WD90C

     = T  80x43	 8x8	  .	 16	  .   B800 Diamond Speedstar 24X

     = G    .	  .    640x480	256	  .	.  Video7 V-RAM VGA

     = G    .	  .    800x600	32K	  .   A000 Cirrus CL-GD 5422/5426

     = G 128x48	 8x16 1024x768	  4	  .   A000 ATI VGA Wonder

     = G 160x64	 8x16 1280x1024	 16	  .   A000 NCR 77C22 [1,9]

 69h = T 132x50	 8x8  1056x400	 16/256K  .   B800 WD90C

     = T 132x50	 8x8	  .	 16	  .   B800 Diamond Speedstar 24X

     = G    .	  .    720x540	256	  .	.  Video7 V-RAM VGA

 6Ah = G    .	  .    800x600	 16	  .   A000 VESA standard interface

     = G 100x75	 8x8   800x600	 16	  .	.  Genoa 6400

     = G 100x75	 8x8   800x600	 16	  .	.  Diamond Speedstar 24X

     = G    .	  .    800x600	 16	  .   A000 Ahead A

     = G 100x75	 8x8   800x600	 16	  1   A000 Ahead B (VESA) (see 71h)

     = G    .	  .    800x600	 16	  .	.  Zymos Poach, Hi Res 512

     = G    .	  .    800x600	 16	  .	.  Epson LT-386SX in CRT Mode

     = G    .	  .    800x600	 16	  .	.  Compuadd 316SL in CRT Mode

     = G 100x37	 8x16  800x600	 16/256K  .   A000 Cirrus CL-GD5420/5422/5426

     = G 100x42	 8x14  800x600	  .	  .   A000 ATI VGA Wonder (undoc)

     = G    .	  .    800x600	 16	  .	.  Chips&Technologies chipset

     = G 160x64	 8x16 1280x1024 256	  .   A000 NCR 77C22 [1,9]

 6Bh = T 100x37	 8x16	  .	 16	  .	.  Genoa 6400

     = T 100x37	 8x16	  .	  .	  .	.  NEL Electronics BIOS

 6Ch = G  80x30	 8x16  640x480	 16M	  .   A000 Trident 8900CL/BIOS C04

     = G 100x75	 8x8   800x600	256	  .	.  Genoa 6400

     = G 160x60	 8x16 1280x960	 16/256K  .   A000 WD90C [1]

     = G 160x60	 8x16 1280x960	 16/256K  .   A000 Diamond Speedstar 24X [1]

     = G 160x64	 8x16 1280x1024	 16/256K  .   A000 Cirrus CL-GD 5422/5426 [1]

 6Dh = G  80x25	 8x14  640x350	 64K	  .	.  STB Lightspeed ET4000/W32P

     = G 160x64	 8x16 1280x1024 256/256K  .   A000 Cirrus CL-GD 5422/5426 [1]

 6Eh = G  40x25	 8x8   320x200	 64K	  .   A000 Cirrus CL-GD 5422/5426

 6Fh = G  40x25	 8x8   320x200	 16M	  .   A000 Cirrus CL-GD 5422/5426

 70h =	extended mode set (see AX=0070h)	.  Everex Micro Enhancer EGA

     = T  40x25	 8x8	  .	 16	  8   B800 Quadram (CGA double scan)

     = T  40x25	 8x8   (CGA dblscan)	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    360x480	256	  .	.  Cirrus 510/520/5320 chips

     = G  90x28	 8x14  720x392	 16	  1   A000 Ahead B

     = G    .	  .    800x600	 16	  .	.  C&T chipset, Cardinal

     = G    .	  .   1024x480	256	  .	.  Trident 8900C BIOS C3.0

 71h = T  80x25	 8x8	  .	 16	  8   B800 Quadram (CGA double scan)

     = T  80x25	 8x8   (CGA dblscan)	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    528x400	256	  .	.  Cirrus 510/520 chipset

     = G  80x30	 8x16  640x480	 16M	  .   A000 Cirrus CL-GD 5422/5426

     = G 100x35	 8x16  800x600	 16/64	  .   A000 NSI Smart EGA+

     = G 100x75	 8x8   800x600	 16	  1   A000 Ahead B (same as 6Ah)

     = G    .	  .    960x720	 16	  .	.  C&T chipset, Cardinal

     = G    .	  .   1024x480	256	  .	.  Trident 8900C BIOS C3.0

 72h = T  80x60	 8x8	  .	 16	  .   B800 Quadram Ultra VGA

     = T  80x60	 8x8	  .	 16	  .   B800 Genoa 6400

     = T  80x60	 8x8	  .	 16	  .   B800 Genoa SuperEGA BIOS 3.0+

     = G    .	  .    528x480	256	  .	.  Cirrus 510/520 chipset

     = G  80x25	 8x19  640x480	 16	  1   A000 DOS/V w/ any VGA

     = G    .	  .    640x480	32K	  .   A000 ATI

     = G    .	  .    640x480	16M	  .   A000 WD90C

     = G    .	  .    640x480	16M	  .   A000 Diamond Speedstar 24X

     = G    .	  .   1024x768	 16	  .	.  C&T chipset, Cardinal

 73h = G  80x60	 8x8   640x480	 16	  .   A000 Quadram Ultra VGA

     = G  80x60	 8x8   640x480	 16	  .	.  Genoa 6400

     = G  80x60	 8x8   640x480	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = T  80x25	 8x19  640x475	 16	  1   none DOS/V, emulated in VGA graph

 74h = T  80x66	 8x8	  .	 16	  .   B800 Quadram Ultra VGA

     = T  80x66	 8x8	  .	 16	  .   B800 Genoa 6400

     = T  80x66	 8x8	  .	 16	  .   B800 Genoa SuperEGA BIOS 3.0+

     = G    .	  .    640x400	  2	  .   B800 Toshiba 3100 AT&T mode

     = G  80x30	 8x16  640x480	 32K	  .   A000 Trident 8900C/BIOS C03

     = G 128x48	 8x16 1024x768	 16	  1   A000 Ahead A, Ahead B (512K)

     = G    .	  .   1024x768	 64K	  .   A000 Cirrus CL-GD 5422/5426 [1]

 75h = G  80x30	 8x16  640x480	 64K	  .   A000 Trident 8900C/BIOS C03

     = G  80x66	  .    640x528	 16???	  .   A000 Quadram Ultra VGA

     = G  80x66	  .    640x528	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = G 128x48	 8x16 1024x768	  4	  1   A000 Ahead B

 76h = T  94x29	 8x14	  .	 16	  .   B800 Quadram Ultra VGA

     = T  94x29	 8x14	  .	  .	  .	.  Genoa SuperEGA BIOS 3.0+

     = G 100x75	 8x8   800x600	 32K	  .   A000 Trident 8900C/BIOS C03

     = G 128x48	 8x16 1024x768	  2	  1   A000 Ahead B

 77h = G  94x29	  .    752x410	 16???	  .   A000 Quadram Ultra VGA

     = G  94x29	  .    752x410	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = G 100x75	 8x8   800x600	 64K	  .   A000 Trident 8900C/BIOS C03

 78h = T 100x37	 8x16	  .	 16	  .	.  Genoa 6400

     = T 100x75	 8x8	  .	 16	  .   B800 Quadram Ultra VGA

     = T 100x75	 8x8	  .	  .	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    640x400	256	  .	.  STB VGA/EM-16 Plus

     = G    .	  .    640x400	256	  .	.  Cardinal, C&T chipset

     = G    .	  .    640x400	256	  .	.  Cirrus 5320 chipset

 79h = G    .	  .    640x480	256	  .	.  Cardinal, C&T chipset

     = G 100x75	  .    800x600	 16???	  .   A000 Quadram Ultra VGA

     = G 100x75	 8x8   800x600	 16	  .	.  Genoa SuperEGA BIOS 3.0+

     = G 100x75	 8x8   800x600	 16	  .	.  Genoa 6400

 7Ah = T 114x60	 8x8	  .	 16	  .   B800 Quadram Ultra VGA

     = T 114x60	 8x8	  .	  .	  .	.  Genoa SuperEGA BIOS 3.0+

     = G    .	  .    720x540	256	  .	.  C&T chipset, Cardinal

 7Bh = G    .	  .    800x600	256	  .	.  C&T chipset, Cardinal

     = G 114x60	  .    912x480	 16???	  .   A000 Quadram Ultra VGA

     = G    .	  .    912x480	 16	  .	.  Genoa SuperEGA BIOS 3.0+

 7Ch = G    .	  .    512x512	 16	  .	.  Genoa

     = G    .	  .    800x600	256	  .	.  C&T 82C453 chipset

 7Dh = G  64x32	 8x16  512x512	256	  .	.  Genoa

 7Eh =	special mode set (see AX=007Eh)	.  Paradise VGA, AT&T VDC600

     = G  80x25	 8x16  640x400	256	  .	.  Genoa 6400

     = G    .	  .   1024x768	256	  .	.  C&T 82C453 chipset

     = G  90x43	  .	  .	mono	  .   B000 HERCULES.COM on HGC [14]

 7Fh =	special function set (see AX=007Fh)	.  Paradise VGA, AT&T VDC600

     = G 128x48	 8x16 1024x768	  4	  .	.  Genoa 6400

     = G  90x29	  .	  .	mono	  .   B000 HERCULES.COM on HGC [14]

 82h = T  80x25	  .	  .	B&W	  .	.  AT&T VDC overlay mode [6]

 83h = T  80x25	  .	  .	  .	  .	.  AT&T VDC overlay mode [6]

 86h = G    .	  .    640x200	B&W	  .	.  AT&T VDC overlay mode [6]

 88h = G  90x43	 8x8   720x348	mono	  .   B000 Hercules + MSHERC.COM

 C0h = G    .	  .    640x400	2/prog palette	.  AT&T VDC overlay mode [6]

     = G    .	  .    640x400	2/prog palette	.  Olivetti Quaderno overlay

 C4h =	disable output	  .	  .	  .	.  AT&T VDC overlay mode [6]

 C8h = G  80x50	 8x8   640x400	  2	  .   B800 Olivetti Quaderno overlay

 D0h = G    .	  .    640x400	  2	  .   B800 DEC VAXmate AT&T mode

Notes:

[1] interlaced only

[2] for ATI EGA Wonder, mode 08h is only valid if SMS.COM is loaded resident.

      SMS maps mode 08h to mode 27h if the byte at location 0040:0063 is 0B4h,

      otherwise to mode 23h, thus selecting the appropriate (monochrome or

      color) 132x25 character mode.

    for ATI VGA Wonder, mode 08h is the same, and only valid if VCONFIG loaded

      resident

[3] early XGA boards support 132-column text but do not have this BIOS mode

[4] DESQview intercepts calls to change into these two modes (21h is page 0,

      22h is page 1) even if there is no Hercules graphics board installed

[5] ATI BIOS v4-1.00 has a text-scrolling bug in this mode

[6] for AT&T VDC overlay modes, BL contains the DEB mode, which may be 06h,

      40h, or 44h

[7] BIOS text support is broken in this undocumented mode; scrolling moves only

      about 1/3 of the screen (and does even that portion incorrectly), while

      screen clears only clear about 3/4.

[8] The Oak OTI-037/067/077 modes are present in the Oak VGA BIOS, which OEMs

      may choose to use only partially or not at all; thus, not all Oak boards

      support all "Oak" modes listed here

[9] this card uses the full 128K A000h-BFFFh range for the video buffer,

      precluding the use of a monochrome adapter in the same system

[10] mode 17h supported by Tseng ET4000 BIOS 8.01X dated 09/14/90, but not

      v8.01X dated 02/28/92; mode 21h supported by 02/28/92 version but not

      09/14/90 version

[11] HERKULES simulates a 90x45 text mode in Hercules graphics mode; the

      installation check for HERKULES.COM is the signature "Herkules" two bytes

      beyond the INT 10 handler

[12] The Realtek RTVGA BIOS v3.C10 crashes when attempting to switch into modes

      21h or 27h; this version of the BIOS also sets the BIOS data area

      incorrectly for extended text modes, resulting in scrolling after only

      24 lines (the VMODE.EXE	utility does set the data area correctly)

[13] The Tandy 1000SL/TL BIOS does not actually support this mode

[14] HERCULES.COM is a graphics-mode BIOS extension for Hercules-compatible

      graphics cards by Soft Warehouse, Inc.  Its installation check is to

      test whether the word preceding the INT 10 handler is 4137h.

[15] The Hercules-graphics video modes for HERCBIOS (shareware by Dave

      Tutelman) may be changed by a command-line switch; the 90x43

      character-cell mode's number is always one higher than the 90x29 mode

      (whose default is mode 08h)

Index:	video modes

Index:	installation check;HERKULES|installation check;HERCULES.COM

INT 10 00--


10 0070 Values for Everex video mode:

Copy to Main

Table 0010

Values for Everex video mode:

     text/ text pixel	pixel	colors disply scrn monitor    adapter

     grph resol	 box  resolution       pages  addr

 00h = G    .	  .    640x480	 16	  .	.  multisync  EGA,VGA

 01h = G    .	  .    752x410	 16	  .	.  multisync  EGA,VGA

 02h = G    .	  .    800x600	 16	  .	.  multisync  EGA,VGA

 03h = T  80x34	  .	  .	  .	  .	.  multisync  EGA,VGA

 04h = T  80x60	  .	  .	  .	  .	.  multisync  EGA,VGA

 05h = T  94x29	  .	  .	  .	  .	.  multisync  EGA only

 06h = T  94x51	  .	  .	  .	  .	.  multisync  EGA only

 07h = T 100x43	 8x14	  .	 16	  .	.  .	      VGA only

 08h = T 100x75	 8x8	  .	 16	  .	.  .	      VGA only

 09h = T  80x44	  .	  .	  .	  .	.  EGA	      EGA only

 0Ah = T 132x25	  .	  .	  .	  .	.  EGA	      EGA,VGA

 0Bh = T 132x44	  .	  .	  .	  .	.  EGA	      EGA,VGA

 0Ch = T 132x25	  .	  .	  .	  .	.  CGA	      EGA only

 0Dh = T  80x44	  .	  .	  .	  .	.  mono	      EGA only

 0Eh = T 132x25	  .	  .	  .	  .	.  mono

 0Fh = T 132x44	  .	  .	  .	  .	.  mono

 10h =	reserved

 11h = G    .	  .   1280x350	  4	  .	.  .	      EGA only

 12h = G    .	  .   1280x600	  4	  .	.  .	      EGA only

 13h = G    .	  .    640x350	256	  .	.  .	      EGA,EV673

 14h = G    .	  .    640x400	256	  .	.  .

 15h = G    .	  .    512x480	256	  .	.  .

 16h = T  80x30	 8x16	  .	256	  .	.  .	      VGA only

 18h = T 100x27	 8x16	  .	 16	  .	.  .	      VGA only

 20h = G    .	  .   1024x768	 16	  .	.  .	      Everex 629,678

    .	  .	  .	  .	  .	.  .	      Everex EV-673

 21h = T 160x64	 8x16 1280x1024	 16	  .	.  .	      1MB VGA only

 30h = G    .	  .    640x480	256	  .	.  .	      Everex 629,678

    .	  .	  .	  .	  .	.  .	      Everex EV-673

 31h = G    .	  .    800x600	256	  .	.  .	      Everex 629,678

    .	  .	  .	  .	  .	.  .	      Everex EV-673

 32h = G 128x48	 8x16 1024x768	256	  .	.  .	      1MB VGA only

 40h = T 132x30	 8x16	  .	 16	  .	.  .	      VGA only

 50h = T 132x32	 8x16	  .	mono	  .	.  .	      VGA only

 62h = G  40x25	 8x8   320x200	32K	  .	.  .	      Vwpt TC (EV629)

 70h = G  64x30	 8x16  512x480	32K	  .	.  .	      Viewpoint TC

 71h = G  80x30	 8x16  640x480	32K	  .	.  .	      Viewpoint TC

 76h = G  64x30	 8x16  512x480	16M	  .	.  .	      Viewpoint TC

 77h = G  80x30	 8x16  640x480	16M	  .	.  .	      Viewpoint TC

Index:	video modes;Everex

INT 10 0070


10 007F Format of Paradise VGA list entry:

Copy to Main

Table 0011

Format of Paradise VGA list entry:

Offset	Size	Description

 00h	BYTE	??? or 00h if end of list

 01h	BYTE	???

 02h	WORD	???

 04h	WORD	???

 06h	WORD	???

INT 10 007F


10 01-- Bitfields for cursor start and options:

Copy to Main

Table 0012

Bitfields for cursor start and options:

Bit(s)	Description

 7	should be zero

 6,5	cursor blink

(00=normal, 01=invisible, 10=erratic, 11=slow)

(00=normal, other=invisible on EGA/VGA)

 4-0	topmost scan line containing cursor

INT 10 01--


10 08-- Bitfields for character's display attribute:

Copy to Main

Table 0013

Bitfields for character's display attribute:

Bit(s)	Description

 7	foreground blink or (alternate) background bright (see also AX=1003h)

 6-4	background color (see #0014)

 3	foreground bright or (alternate) alternate character set (see AX=1103h)

 2-0	foreground color (see #0014)

SeeAlso: #0025

INT 10 08--


10 08-- Values for character color:

Copy to Main

Table 0014

Values for character color:

Normal	Bright

 000b	black	dark gray

 001b	blue	light blue

 010b	green	light green

 011b	cyan	light cyan

 100b	red	light red

 101b	magenta	light magenta

 110b	brown	yellow

 111b	light gray	white

INT 10 08--


10 0F56 Format of record for VUIMAGE Function 04h:

Copy to Main

Table 0015

Format of record for VUIMAGE Function 04h:

Offset	Size	Description

 00h	WORD	row number

 02h	WORD	starting column???

 04h	WORD	ending column???

???

INT 10 0F56


10 1000 Values for attribute register number:

Copy to Main

Table 0016

Values for attribute register number:

 10h	attribute mode control register (should let BIOS control this)

 11h	overscan color register (see also AX=1001h)

 12h	color plane enable register (bits 3-0 enable corresponding

  text attribute bit)

 13h	horizontal PEL panning register

 14h	color select register

INT 10 1000


10 1002 Format of palette register list:

Copy to Main

Table 0017

Format of palette register list:

Offset	Size	Description

 00h 16 BYTEs	colors for palette registers 00h through 0Fh

 10h	BYTE	border color

INT 10 1002


10 10F1 Values for type of DAC:

Copy to Main

Table 0018

Values for type of DAC:

 00h normal VGA DAC

 01h Sierra SC1148x HiColor DAC

 ---Diamond SpeedStar 24---

 02h new Sierra SS24 DAC (24-bit)

 ---generic Tseng BIOS v8+ ---

 02h Sierra Mark2 (15-bit) or Mark3 (15/16-bit) DAC

 03h ATT20c490/1/2 (15/16/24-bit)

 04h AcuMos ADAC1 (15/16/24-bit)

 05h unknown 15/16/24-bit DAC

 06h Cirrus Internal 15/16/24-bit (CL-GD54xx series adapters)

 07h Diamond SS2410 (15/24-bit)

 08h unknown 15/16/24-bit DAC

 09h unknown 15/16/24-bit DAC

 else other HiColor DAC

INT 10 10F1


10 11-- Bitfields for block specifier:

Copy to Main

Table 0019

Bitfields for block specifier:

Bit(s)	Description

---EGA/MCGA---

 0,1	block selected by characters with attribute bit 3 clear

 2,3	block selected by characters with attribute bit 3 set

---VGA---

 0,1,4	block selected by characters with attribute bit 3 clear

 2,3,5	block selected by characters with attribute bit 3 set

INT 10 11--


10 1130 Format of alternate font table [array]:

Copy to Main

Table 0020

Format of alternate font table [array]:

Offset	Size	Description

 00h	BYTE	character to be replaced (00h = end of table)

 01h  N BYTEs	graphics data for character, one byte per scan line

INT 10 1130


10 12-- Bitfields for feature connector bits:

Copy to Main

Table 0021

Bitfields for feature connector bits:

Bit(s)	Description

 0	FEAT 1 line, state 2

 1	FEAT 0 line, state 2

 2	FEAT 1 line, state 1

 3	FEAT 0 line, state 1

 4-7	unused (0)

INT 10 12--


10 12-- Bitfields for switch settings:

Copy to Main

Table 0022

Bitfields for switch settings:

Bit(s)	Description

 0	switch 1 OFF

 1	switch 2 OFF

 2	switch 3 OFF

 3	switch 4 OFF

 4-7	unused

INT 10 12--


10 12-- Values for switch settings on original EGA/VGA:

Copy to Main

Table 0023

Values for switch settings on original EGA/VGA:

 00h	primary MDA/HGC,	secondary EGA+ 40x25

 01h-03h	primary MDA/HGC,	secondary EGA+ 80x25

 04h	primary CGA 40x25,	secondary EGA+ 80x25 mono

 05h	primary CGA 80x25,	secondary EGA+ 80x25 mono

 06h	primary EGA+ 40x25,	secondary MDA/HGC (optional)

 07h-09h	primary EGA+ 80x25,	secondary MDA/HGC (optional)

 0Ah	primary EGA+ 80x25 mono,secondary CGA 40x25 (optional)

 0Bh	primary EGA+ 80x25 mono,secondary CGA 80x25 (optional)

INT 10 12--


10 12-- Format of Trident BIOS Info structure:

Copy to Main

Table 0024

Format of Trident BIOS Info structure:

Offset	Size	 Description

 00h	BYTE	 ??? (0000h)

 01h	BYTE	 OEM Code (00h for original Trident)

 02h	WORD	 ID??? (1073h for 8800BR, 1074 for 8800CS)

 04h  8 BYTEs	 BIOS date ('mm/dd/yy')

 0Ch	WORD	 ???

 0Eh  8 BYTEs	 BIOS Version (' C3-128 ', ' C3-129 ')

INT 10 12--


10 12-- Bitfields for XGA mainframe type character attributes:

Copy to Main

Table 0025

Bitfields for XGA mainframe type character attributes:

Bit(s)	Description

 7	blink double rate (75% ON time) or use color 8 as background

(see AX=1003h)

 6	reverse video

 5	underlined

 4	left-most and right-most dots of underline area inverted

 3	foreground intensity/character font select

 2-0	foreground color

SeeAlso: #0013,#0033

INT 10 12--


10 12-- Bitfields for status flags:

Copy to Main

Table 0026

Bitfields for status flags:

Bit(s)	Description

 3	set if enhanced features enabled

 7-5	monitor type

000 PS/2 mono

001 PS/2 color

010 multi-sync

011 Taxan 650 25kHz

100 RGB

101 mono

110 EGA

111 Compaq internal

INT 10 12--


10 12-- Format of ATI VGA Wonder video mode table:

Copy to Main

Table 0027

Format of ATI VGA Wonder video mode table:

Offset	Size	Description

 00h	BYTE	number of columns

 01h	BYTE	maximum row (number of rows - 1)

 02h	BYTE	scan lines per row

 03h	WORD	video buffer size in bytes

 05h  4 BYTEs	values for Sequencer registers 1-4

 09h	BYTE	value for Miscellaneous Output register

 0Ah 25 BYTEs	values for CRTC registers 00h-18h

00h horizontal total size (chars)

01h horizontal displayed (chars)

02h horizontal sync position (chars)

03h horizontal sync width (chars)

04h vertical total size (char rows)

05h vertical total adjust (scan lines)

06h vertical displayed (char rows)

07h vertical sync position (char rows)

08h interlace mode

09h max scan line in row

0Ah cursor start scan line

0Bh cursor end scan line

0Ch screen memory start (high)

0Dh screen memory start (low)

0Eh cursor address (high)

0Fh cursor address (low)

10h light pen (high)

11h light pen (low)

 23h 20 BYTEs	default palette (values for Attribute Controller regs 00h-13h)

 37h  9 BYTEs	values for Graphics Controller registers 00h-08h

INT 10 12--


10 12-- Values for Cirrus Logic video controller type:

Copy to Main

Table 0028

Values for Cirrus Logic video controller type:

 0000h	no extended alternate select support

 0002h	510/520

 0003h	610/620

 0004h	5320

 0005h	6410

 0006h	5410

 0007h	6420

 0008h	6412

 0010h	5401

 0011h	5402

 0012h	5420

 0013h	5422

 0014h	5424

 0015h	5426

 0016h	5420r1

 0017h	5402r1

 0018h	5428

 0020h	6205/15/25

 0030h	5432

 0031h	5434

INT 10 12--


10 12-- Bitfields for Cirrus Logic user options word:

Copy to Main

Table 0029

Bitfields for Cirrus Logic user options word:

Bit(s)	Description

 1,0	centering

00 vertical centered, 01 from bottom, 10 from top, 11 reserved

 3,2	720-dot fix-up options

00 OR every 8th and 9th pixel

01 display MGA mode from left

10 display MGA mode from right

11 skip every 9th pixel

 4	???

 7-5	video mode (001 CGA, 010 MGA, 011 EGA, 100 VGA)

 8	external monitor enabled instead of LCD panel

 9	vertical expand mode enabled

 10	8-bit mode instead of 16-bit mode

 11	normal video rather than reverse video (for LCD)

 12	attribute automap rather than attribute emulation

 13	bold mode disabled (default)

 14	fast bandwidth

 15	???

INT 10 12--


10 12-- Bitfields for Cirrus Logic options word 1:

Copy to Main

Table 0030

Bitfields for Cirrus Logic options word 1:

Bit(s)	Description

 0,1	reserved

 2-4	monitor type

 5-6	maximum vertical resolution

 7-9	reserved

 10	force 8-bit operation

 11-13	reserved

 14	vertical refresh frequency at 640x480

 15	reserved

INT 10 12--


10 12-- Bitfields for Cirrus Logic options word 2:

Copy to Main

Table 0031

Bitfields for Cirrus Logic options word 2:

Bit(s)	Description

 0-3	reserved

 4-5	vertical refresh frequency at 1280x1024

 6-10	reserved

 11-12	vertical refresh frequency at 800x600

 13-15	vertical refresh frequency at 1024x768

INT 10 12--


10 12-- Values for Cirrus Logic monitor ID:

Copy to Main

Table 0032

Values for Cirrus Logic monitor ID:

 00h-08h reserved

 09h	IBM 8604/8507 or equivalent

 0Ah	IBM 8514 or equivalent

 0Bh	IBM 8515 or equivalent

 0Dh	IBM 8503 or equivalent

 0Eh	IBM 8512/8513 or equivalent

 0Fh	no monitor

INT 10 12--


10 13-- Bitfields for DOS/V second extended attribute byte:

Copy to Main

Table 0033

Bitfields for DOS/V second extended attribute byte:

Bit(s)	Description

 7	underline using foreground color

 6	reverse foreground/background specified in standard attribute byte

 5-4	unused

 3	vertical white grid line in cell

 2	horizontal white grid line in cell

 1-0	unused

SeeAlso: #0013,#0025

INT 10 13--


10 15-- Values for PC Convertible alternate display adapter type:

Copy to Main

Table 0034

Values for PC Convertible alternate display adapter type:

 0000h	none

 5140h	LCD

 5153h	CGA

 5151h	mono

INT 10 15--


10 15-- Format of PC Convertible display parameter table:

Copy to Main

Table 0035

Format of PC Convertible display parameter table:

Offset	Size	Description

 00h	WORD	monitor model number

 02h	WORD	vertical pixels per meter

 04h	WORD	horizontal pixels per meter

 06h	WORD	total vertical pixels

 08h	WORD	total horizontal pixels

 0Ah	WORD	horizontal pixel separation in micrometers

(width, center-to-center)

 0Ch	WORD	vertical pixel separation in micrometers

(height, center-to-center)

INT 10 15--


10 1A00 Values for display combination code:

Copy to Main

Table 0036

Values for display combination code:

 00h	no display

 01h	monochrome adapter w/ monochrome display

 02h	CGA w/ color display

 03h	reserved

 04h	EGA w/ color display

 05h	EGA w/ monochrome display

 06h	PGA w/ color display

 07h	VGA w/ monochrome analog display

 08h	VGA w/ color analog display

 09h	reserved

 0Ah	MCGA w/ digital color display

 0Bh	MCGA w/ monochrome analog display

 0Ch	MCGA w/ color analog display

 FFh	unknown display type

INT 10 1A00


10 1B-- Format of MCGA+ state information:

Copy to Main

Table 0037

Format of MCGA+ state information:

Offset	Size	Description

 00h	DWORD	address of static funtionality table (see #0040)

 04h	BYTE	video mode in effect

 05h	WORD	number of columns

 07h	WORD	length of regen buffer in bytes

 09h	WORD	starting address of regen buffer

 0Bh	WORD	cursor position for page 0

 0Dh	WORD	cursor position for page 1

 0Fh	WORD	cursor position for page 2

 11h	WORD	cursor position for page 3

 13h	WORD	cursor position for page 4

 15h	WORD	cursor position for page 5

 17h	WORD	cursor position for page 6

 19h	WORD	cursor position for page 7

 1Bh	WORD	cursor "type" (start/stop scan lines)

 1Dh	BYTE	active display page

 1Eh	WORD	CRTC port address

 20h	BYTE	current setting of register (3?8)

 21h	BYTE	current setting of register (3?9)

 22h	BYTE	number of rows - 1

 23h	WORD	bytes/character

 25h	BYTE	display combination code of active display

 26h	BYTE	DCC of alternate display

 27h	WORD	number of colors supported in current mode (0000h = mono)

 29h	BYTE	number of pages supported in current mode

 2Ah	BYTE	number of scan lines active

(0,1,2,3) = (200,350,400,480)

Tseng ET3000: (4,5,6 = 512,600,768)

 2Bh	BYTE	primary character block

 2Ch	BYTE	secondary character block

 2Dh	BYTE	miscellaneous flags (see #0038)

 2Eh  3 BYTEs	reserved (00h)

 31h	BYTE	video memory available

00h = 64K, 01h = 128K, 02h = 192K, 03h = 256K

 32h	BYTE	save pointer state flags (see #0039)

 33h 13 BYTEs	reserved (00h)

INT 10 1B--


10 1B-- Bitfields for miscellaneous flags:

Copy to Main

Table 0038

Bitfields for miscellaneous flags:

Bit(s)	Description

 0	all modes on all displays on

 1	gray summing on

 2	monochrome display attached

 3	default palette loading disabled

 4	cursor emulation enabled

 5	0 = intensity; 1 = blinking

 6	PS/2 P70 plasma display (without 9-dot wide font) active

 7	unused (0)

INT 10 1B--


10 1B-- Bitfields for save pointer state flags:

Copy to Main

Table 0039

Bitfields for save pointer state flags:

Bit(s)	Description

 0	512 character set active

 1	dynamic save area present

 2	alpha font override active

 3	graphics font override active

 4	palette override active

 5	DCC override active

 6-7	unused (0)

INT 10 1B--


10 1B-- Format of Static Functionality Table:

Copy to Main

Table 0040

Format of Static Functionality Table:

Offset	Size	Description

 00h	BYTE	modes supported 1

bit 0 to bit 7 = 1 modes 0,1,2,3,4,5,6,7 supported

 01h	BYTE	modes supported 2

bit 0 to bit 7 = 1 modes 8,9,0Ah,0Bh,0Ch,0Dh,0Eh,0Fh supported

 02h	BYTE	modes supported 3

bit 0 to bit 3 = 1 modes 10h,11h,12h,13h supported

bit 4 to bit 7 unused (0)

 03h	BYTE	(IBM) reserved

(Tseng ET3000/4000) modes supported 4

bit 0 to bit 7 = modes 18h-1Fh supported

 04h	BYTE	(IBM) reserved

(Tseng ET3000/4000) modes supported 5

bit 0 to bit 7 = modes 20h-27h supported

 05h	BYTE	(IBM) reserved

(Tseng ET3000/4000) modes supported 6

bit 0 to bit 7 = modes 28h-2Fh supported

 06h	BYTE	(IBM) reserved

(Tseng ET3000/4000) modes supported 7

bit 0 to bit 7 = modes 30h-37h supported

 07h	BYTE	scan lines supported

bit 0 to bit 2 = 1 if scan lines 200,350,400 supported

bits 3-7 = unused (0)

 08h	BYTE	total number of character blocks available in text modes

 09h	BYTE	maximum number of active character blocks in text modes

 0Ah	WORD	miscellaneous function support flags (see #0041)

 0Ch	WORD	reserved

 0Eh	BYTE	save pointer function flags (see #0042)

 0Fh	BYTE	reserved

INT 10 1B--


10 1B-- Bitfields for miscellaneous function support flags:

Copy to Main

Table 0041

Bitfields for miscellaneous function support flags:

Bit(s)	Description

 0	all modes on all displays function supported

 1	gray summing function supported

 2	character font loading function supported

 3	default palette loading enable/disable supported

 4	cursor emulation function supported

 5	EGA palette present

 6	color palette present

 7	color-register paging function supported

 8	light pen supported (see AH=04h)

 9	save/restore state function 1Ch supported

 10	intensity/blinking function supported (see AX=1003h)

 11	Display Combination Code supported (see #0036)

 12-15	unused (0)

INT 10 1B--


10 1B-- Bitfields for save pointer function flags:

Copy to Main

Table 0042

Bitfields for save pointer function flags:

Bit(s)	Description

 0	512 character set supported

 1	dynamic save area supported

 2	alpha font override supported

 3	graphics font override supported

 4	palette override supported

 5	DCC extension supported

 6-7	unused (0)

INT 10 1B--


10 1C-- Bitfields for requested states:

Copy to Main

Table 0043

Bitfields for requested states:

Bit(s)	Description

 0	video hardware (see #0044)

 1	BIOS data areas

 2	color registers and DAC state (see #0045)

 3-15	unused (0)

INT 10 1C--


10 1C-- Format of VGA video hardware state:

Copy to Main

Table 0044

Format of VGA video hardware state:

Offset	Size	Description

 00h	BYTE	sequencer index register

 01h	BYTE	CRTC index register

 02h	BYTE	graphics controller index register

 03h	BYTE	attribute controller index register

 04h	BYTE	feature controller register

 05h  4 BYTEs	sequencer registers

 09h	BYTE	sequencer register 0

 0Ah 25 BYTEs	CRTC registers 0-8

 23h 16 BYTEs	palette registers 00h-0Fh

 33h  4 BYTEs	attribute registers 10h-13h

 37h  9 BYTEs	graphics controller registers 0-8

 40h	BYTE	CRTC base address (low)

 41h	BYTE	CRTC base address (high)

 42h	BYTE	plane 0 latch

 43h	BYTE	plane 1 latch

 44h	BYTE	plane 2 latch

 45h	BYTE	plane 3 latch

INT 10 1C--


10 1C-- Format of VGA DAC state:

Copy to Main

Table 0045

Format of VGA DAC state:

Offset	Size	Description

 00h	BYTE	read/write mode DAC

 01h	BYTE	pixel address

 02h	BYTE	pixel mask

 03h 768 BYTEs	color data (256 triples)

303h	BYTE	color select register

INT 10 1C--


10 1D-- Format of SpeedSTAR Plus sync table:

Copy to Main

Table 0046

Format of SpeedSTAR Plus sync table:

Offset	Size	Description

 00h  9 BYTEs	ID contains string 'ey5CENTER'

 09h  5 BYTEs	sync parameters for 640x480 modes 11h,12h,25h,26h,2Eh

 0Bh  5 BYTEs	sync parameters for 800x600 modes 29h,30h,2Ah

 13h  5 BYTEs	sync parameters for 1024x768 modes 37h,38h

INT 10 1D--


10 1F01 Format of XGA DMQS buffer:

Copy to Main

Table 0047

Format of XGA DMQS buffer:

Offset	Size	Description

 00h	WORD	offset (in bytes) to DMQS data for next XGA instance

 02h	BYTE	slot number

 03h	BYTE	XGA implementation function level identifier

 04h	BYTE	XGA implementation resolution level identifier

 05h	WORD	vendor identifier - identifies card vendor

 07h	WORD	vendor defined field

 09h	WORD	XGA adapter I/O register base address

 0Bh	WORD	XGA coprocessor register base address

(paragraph--multiply by 10h to get physical address)

 0Dh	WORD	1 Megabyte system video memory aperture

0000h if not allocated

(Multiply by 100000h to get physical address)

 0Fh	WORD	4 Megabyte system video memory aperture

0000h if not allocated

(multiply by 100000h to get physical address)

 11h	WORD	video memory base address

(multiply by 100000h to get physical address)

 13h	WORD	composite ID of the attached display

 15h	BYTE	amount of video memory available, in multiples of 256K bytes

 16h	DWORD	alternate XGA coprocessor register base address.  0 = none.

 1Ah	var	DMQS Data for further XGA Instances (as above)

Note:	"Instances" refers to the capability of having up to 8 XGA

  adapters in one computer.

INT 10 1F01


10 3000 Format of 3270 PC configuration table:

Copy to Main

Table 0048

Format of 3270 PC configuration table:

Offset	Size	Description

 00h	BYTE	aspect ratio X

 01h	BYTE	aspect ratio Y

 02h	BYTE	monitor type (see #0049)

 03h	BYTE	reserved

 04h	BYTE	adapter ID

00h = 5151/5272 adapter

04h = 5151/5272 with XGA adapter

30h = 3295 or 3270PC G/GX adapter

 05h	BYTE	reserved

 06h	BYTE	function flags 1 (see #0050)

 07h	BYTE	function flags 2

bit 6: GPI graphics supported

 08h	WORD	segment address of Control Program Level table (see #0051)

 0Ah 10 BYTEs	reserved

INT 10 3000


10 3000 Values for 3270 PC monitor type:

Copy to Main

Table 0049

Values for 3270 PC monitor type:

 00h	5151 (mono) or 5272 (color)

 01h	3295

 02h	5151 or 5272 with XGA (???) graphics adapter

 03h	5279 with 3270PC G adapter

 04h	5379 model C01 with 3270PC GX adapter

 05h	5379 model M01 with 3270PC GX adapter

 07h	non-3270PC with 3270 Workstation Program

 FFh	3270PC Control Program not loaded

INT 10 3000


10 3000 Bitfields for 3270 PC function flags 1:

Copy to Main

Table 0050

Bitfields for 3270 PC function flags 1:

Bit(s)	Description

 7	mono text, 1 page

 6	color text, 1 page

 5	color text, 4 pages

 4	CGA color graphics

 3	720x350 two-color graphics

 2	360x350 four-color graphics

 1	720x350 eight-color graphics

INT 10 3000


10 3000 Format of Control Program Level table:

Copy to Main

Table 0051

Format of Control Program Level table:

Offset	Size	Description

 00h	WORD	program version

02xxh = 3270PC Control Program v2.xx

03xxh = 3270PC Control Program v3.xx

04xxh = 3270 Workstation Program v1.xx

 02h	BYTE	Control Program ID (00h)

 03h 27 BYTEs	Control Program Descriptor ("IBM 3270 PC CONTROL PROGRAM")

INT 10 3000


10 3800 Format of Tinytalk Personal configuration info:

Copy to Main

Table 0052

Format of Tinytalk Personal configuration info:

Offset	Size	Description

 00h  8 BYTEs	signature "TTCONFIG"

 08h	WORD	size of configuration data, not counting signature, this WORD,

  or the following byte

 0Ah	BYTE	???

 0Bh	???	configuration data

INT 10 3800


10 4B-- Values for FRIEZE function status:

Copy to Main

Table 0053

Values for FRIEZE function status:

 00h	successful

 01h	user aborted printout with ESC

 02h	reserved

 03h	file read error

 04h	file write error or printer error

 05h	file not found

 06h	invalid header (not an image or wrong screen mode) or can't create file

 07h	file close error

 08h	disk error

 09h	(v7.0+) printer error

 0Ah	invalid function

 0Bh	(v7.0+) can't create file

 0Ch	(v7.0+) wrong video mode

INT 10 4B--


10 4B-- Format of FRIEZE parameter table:

Copy to Main

Table 0054

Format of FRIEZE parameter table:

Offset	Size	Description

 00h	WORD	top margin (1/100 inch)

 02h	WORD	left margin (1/100 inch)

 04h	WORD	horizontal size (1/100 inch)

 06h	WORD	vertical size (1/100 inch)

 08h	WORD	quality/draft mode

00h draft mode

01h quality mode

02h use horizontal/vertical resolution for output resolution

 0Ah	WORD	printer horizontal resolution (dots per inch)

 0Ch	WORD	printer vertical resolution (dots per inch)

 0Eh	WORD	reserved (FFFFh)

Note:	any field which should remain unchanged may be filled with FFFFh

INT 10 4B--


10 4E00 Format of XGA information buffer:

Copy to Main

Table 0055

Format of XGA information buffer:

Offset	Size	Description

 00h  4 BYTEs	signature ("VESA")

 04h	WORD	VESA version number

 06h	DWORD	pointer to ASCIZ OEM string

 0Ah	DWORD	environment flags (see #0056)

 0Eh	WORD	number of XGA adapters installed (other VESA XGA functions

  require a handle indicating which adapter to use)

 10h 240 BYTEs	reserved

INT 10 4E00


10 4E00 Bitfields for XGA environment flags:

Copy to Main

Table 0056

Bitfields for XGA environment flags:

Bit(s)	Description

 0-1	system bus (00 = MCA, 01 = ISA, 10 = EISA)

 2	bus mastering available

 3-31	reserved

INT 10 4E00


10 4E01 Format of XGA subsystem information:

Copy to Main

Table 0057

Format of XGA subsystem information:

Offset	Size	Description

 00h	DWORD	pointer to null-terminated board OEM string

 04h	DWORD	capabilities (see #0058)

 08h	DWORD	pointer to 8KB XGA ROM (or NULL)

 0Ch	DWORD	pointer to the XGA memory mapped registers

 10h	WORD	base address of XGA I/O registers (21x0h)

 12h	DWORD	pointer to start of physical video memory

(A000h:0000h or B000h:0000h)

 16h	DWORD	physical address of 4MB aperture (or NULL if none)

 1Ah	DWORD	physical address of 1MB aperture (or NULL if none)

 1Eh	DWORD	physical address of 64KB aperture (or NULL if not enabled)

 22h	DWORD	physical address of OEM aperture (or NULL if none)

 26h	WORD	size of OEM aperture in 64KByte units

 28h	DWORD	pointer to list of video modes

The list is a series of WORDs terminated by FFFFh

 2Ch	WORD	number of 64KB blocks on the board

 2Eh	DWORD	XGA manufacturer ID

byte 0 POS data index 1

byte 1 is index 2

byte 2 is 21xAh index 75h

 32h 206 BYTEs	reserved

INT 10 4E01


10 4E01 Bitfields for XGA capabilities:

Copy to Main

Table 0058

Bitfields for XGA capabilities:

Bit(s)	Description

 0-1	board bus architecture: 0=MCA, 1=ISA, 3=EISA

 2-3	reserved

 4-6	DMA Channel assigned for acquiring bus mastership (only for ISA bus)

 7	DMA Channel Status (ISA only). enabled if set

 8-31	reserved

INT 10 4E01


10 4E02 Format of XGA mode information:

Copy to Main

Table 0059

Format of XGA mode information:

Offset	Size	Description

 00h	WORD	attributes of the mode (see #0060)

 02h	WORD	bytes per logical scanline

 04h	WORD	horizontal resolution in pixels

 06h	WORD	vertical resolution in scanlines

 08h	BYTE	character Width in pixels

 09h	BYTE	character Height in pixels

 0Ah	BYTE	number of planes

 0Bh	BYTE	bits per pixels

 0Ch	BYTE	memory model (see #0061)

 0Dh	BYTE	number of Image Pages

 0Eh	BYTE	number of Red bits

 0Fh	BYTE	bit position of Red bit field

 10h	BYTE	number of Green bits

 11h	BYTE	bit position of Green bit field

 12h	BYTE	number of Blue bits

 13h	BYTE	bit position of Blue bit field

 14h	BYTE	number of Reserved bits

 15h	BYTE	bit position of Reserved bit field

 16h 235 BYTEs	reserved

INT 10 4E02


10 4E02 Bitfields for XGA mode attributes:

Copy to Main

Table 0060

Bitfields for XGA mode attributes:

Bit(s)	Description

 0	set if mode is supported

 1	reserved

 2	output is supported by the BIOS

 3	reserved

 4	if set this is a graphics mode (VGA registers inactive, XGA active),

  if clear this is a text mode (VGA registers active, XGA inactive)

INT 10 4E02


10 4E02 Values for XGA video memory model:

Copy to Main

Table 0061

Values for XGA video memory model:

 00h	Text Mode

 01h	CGA graphics

 02h	Hercules graphics

 03h	4-planar graphics

 04h	Packed Pixel

 05h	Non-chain 4, 256 color

 06h	Direct Color

 07h	YUV-24

INT 10 4E02


10 4E05 Bitfields for XGA Feature Connector State:

Copy to Main

Table 0062

Bitfields for XGA Feature Connector State:

Bit(s)	Description

 0	Feature Connector is enabled

 1	Feature Connector is in Output Mode rather than Input Mode

 2-15	reserved (0)

INT 10 4E05


10 4F00 Format of SuperVGA information:

Copy to Main

Table 0063

Format of SuperVGA information:

Offset	Size	Description

 00h  4 BYTEs	(ret) signature ("VESA")

(call) VESA 2.0 request signature ("VBE2"), required to receive

  version 2.0 info

 04h	WORD	VESA version number (one-digit minor version)

 06h	DWORD	pointer to OEM name

"761295520" for ATI

 0Ah	DWORD	capabilities flags (see #0064)

 0Eh	DWORD	pointer to list of supported VESA and OEM video modes

(list of words terminated with FFFFh)

 12h	WORD	total amount of video memory in 64K blocks

---VBE v1.x ---

 14h 236 BYTEs	reserved

---VBE v2.0 ---

 14h	WORD	OEM software version

 16h	DWORD	pointer to vendor name

 1Ah	DWORD	pointer to product name

 1Eh	DWORD	pointer to product revision string

 22h 222 BYTEs	reserved

100h 256 BYTEs	OEM scratchpad

Notes:	the list of supported video modes is stored in the reserved portion of

  the SuperVGA information record by some implementations, and it may

  thus be necessary to either copy the mode list or use a different

  buffer for all subsequent VESA calls

the 1.1 VESA document specifies 242 reserved bytes at the end, so the

  buffer should be 262 bytes to ensure that it is not overrun; for

  v2.0, the buffer should be 512 bytes

the S3 specific video modes will most likely follow the FFFFH

  terminator at the end of the standard modes.	A search must then

  be made to find them, FFFFH will also terminate this second list

INT 10 4F00


10 4F00 Bitfields for VESA capabilities:

Copy to Main

Table 0064

Bitfields for VESA capabilities:

Bit(s)	Description

 0	DAC can be switched into 8-bit mode

 1	non-VGA controller

 2	programmed DAC with blank bit

 3-31	reserved

INT 10 4F00


10 4F01 Format of VESA SuperVGA mode information:

Copy to Main

Table 0065

Format of VESA SuperVGA mode information:

Offset	Size	Description

 00h	WORD	mode attributes (see #0066)

 02h	BYTE	window attributes, window A (see #0067)

 03h	BYTE	window attributes, window B (see #0067)

 04h	WORD	window granularity in KB

 06h	WORD	window size in KB

 08h	WORD	start segment of window A

 0Ah	WORD	start segment of window B

 0Ch	DWORD	-> FAR window positioning function (equivalent to AX=4F05h)

 10h	WORD	bytes per scan line

---remainder is optional for VESA modes in v1.0/1.1, needed for OEM modes---

 12h	WORD	width in pixels (graphics) or characters (text)

 14h	WORD	height in pixels (graphics) or characters (text)

 16h	BYTE	width of character cell in pixels

 17h	BYTE	height of character cell in pixels

 18h	BYTE	number of memory planes

 19h	BYTE	number of bits per pixel

 1Ah	BYTE	number of banks

 1Bh	BYTE	memory model type (see #0068)

 1Ch	BYTE	size of bank in KB

 1Dh	BYTE	number of image pages

 1Eh	BYTE	reserved (0)

---VBE v1.2+---

 1Fh	BYTE	red mask size

 20h	BYTE	red field position

 21h	BYTE	green mask size

 22h	BYTE	green field size

 23h	BYTE	blue mask size

 24h	BYTE	blue field size

 25h	BYTE	reserved mask size

 26h	BYTE	reserved mask position

 27h	BYTE	direct color mode info

bit 0: color ramp is programmable

bit 1: bytes in reserved field may be used by application

---VBE v2.0 ---

 28h	DWORD	physical address of linear video buffer

 2Ch	DWORD	pointer to start of offscreen memory

 30h	WORD	KB of offscreen memory

 32h 206 BYTEs	reserved (0)

INT 10 4F01


10 4F01 Bitfields for VESA SuperVGA mode attributes:

Copy to Main

Table 0066

Bitfields for VESA SuperVGA mode attributes:

Bit(s)	Description

 0	mode supported

 1	optional information available

 2	BIOS output supported

 3	set if color, clear if monochrome

 4	set if graphics mode, clear if text mode

---VBE v2.0 ---

 5	mode is not VGA-compatible

 6	bank-switched mode not supported

 7	linear framebuffer mode supported

INT 10 4F01


10 4F01 Bitfields for VESA SuperVGA window attributes:

Copy to Main

Table 0067

Bitfields for VESA SuperVGA window attributes:

Bit(s)	Description

 0	exists

 1	readable

 2	writable

 3-7	reserved

INT 10 4F01


10 4F01 Values for VESA SuperVGA memory model type:

Copy to Main

Table 0068

Values for VESA SuperVGA memory model type:

 00h	text

 01h	CGA graphics

 02h	HGC graphics

 03h	16-color (EGA) graphics

 04h	packed pixel graphics

 05h	"sequ 256" (non-chain 4) graphics

 06h	direct color (HiColor, 24-bit color)

 07h	YUV (luminance-chrominance, also called YIQ)

 08h-0Fh reserved for VESA

 10h-FFh OEM memory models

INT 10 4F01


10 4F02 Values for VESA video mode:

Copy to Main

Table 0069

Values for VESA video mode:

 00h-FFh OEM video modes (see #0009 at AH=00h)

 100h	640x400x256

 101h	640x480x256

 102h	800x600x16

 103h	800x600x256

 104h	1024x768x16

 105h	1024x768x256

 106h	1280x1024x16

 107h	1280x1024x256

 108h	80x60 text

 109h	132x25 text

 10Ah	132x43 text

 10Bh	132x50 text

 10Ch	132x60 text

---VBE v1.2---

 10Dh	320x200x32K

 10Eh	320x200x64K

 10Fh	320x200x16M

 110h	640x480x32K

 111h	640x480x64K

 112h	640x480x16M

 113h	800x600x32K

 114h	800x600x64K

 115h	800x600x16M

 116h	1024x768x32K

 117h	1024x768x64K

 118h	1024x768x16M

 119h	1280x1024x32K

 11Ah	1280x1024x64K

 11Bh	1280x1024x16M

---VBE 2.0---

81FFh	special full-memory access mode

Note:	the special mode 81FFh preserves the contents of the video memory and

  gives access to all of the memory; VESA recommends that the special

  mode be a packed-pixel mode

SeeAlso: #0009,#0070

Index:	video modes;VESA

INT 10 4F02


10 4F02 Values for S3 OEM video mode:

Copy to Main

Table 0070

Values for S3 OEM video mode:

 201h	640x480x256

 202h	800x600x16

 203h	800x600x256

 204h	1024x768x16

 205h	1024x768x256

 206h	1280x960x16

 207h	1152x864x256 (Diamond Stealth 64)

 208h	1280x1024x16

 20Ah	1152x864x64K (Diamond Stealth 64)

 211h	640x480x64K (Diamond Stealth 24)

 212h	640x480x16M (Diamond Stealth 24)

 301h	640x480x32K

Note:	these modes are only available on video cards using S3's VESA driver

SeeAlso: #0069

Index:	video modes;S3

INT 10 4F02


10 4F04 Bitfields for VESA SuperVGA states to save/restore:

Copy to Main

Table 0071

Bitfields for VESA SuperVGA states to save/restore:

Bit(s)	Description

 0	video hardware state

 1	video BIOS data state

 2	video DAC state

 3	SuperVGA state

INT 10 4F04


10 4F09 Format of VESA VBE palette entry:

Copy to Main

Table 0072

Format of VESA VBE palette entry:

Offset	Size	Description

 00h	BYTE	red

 01h	BYTE	green

 02h	BYTE	blue

 03h	BYTE	alpha or alignment byte

INT 10 4F09


10 4F0A Values for VESA VBE protected-mode function identifiers:

Copy to Main

Table 0073

Values for VESA VBE protected-mode function identifiers:

 0001h	set bank (see AX=4F05h)

 0002h	set display start (see AX=4F07h)

 0003h	set palette (see AX=4F09h)

INT 10 4F0A


10 4F10 Bitfields for VESA VBE/PM supported power states:

Copy to Main

Table 0074

Bitfields for VESA VBE/PM supported power states:

Bit(s)	Description

 0	standby

 1	suspend

 2	off

 3	reduced on

INT 10 4F10


10 4F10 Values for VESA VBE/PM power state:

Copy to Main

Table 0075

Values for VESA VBE/PM power state:

 00h	On

 01h	standby

 02h	suspend

 04h	Off

 08h	reduced On (for flat screens)

INT 10 4F10


10 4F13 Format of GeneralDeviceClass structure:

Copy to Main

Table 0076

Format of GeneralDeviceClass structure:

Offset	Size	Description

 00h	4 BYTEs	name of the structure ("GENI")

 04h	DWORD	structure length

 08h	WORD	type of device (1=Wave, 2=MIDI)

 0Ah	WORD	version of VESA driver support (0100h for 1.00)

 10h	var	for CX=handle for Wave device:

    Wave Info structure (see #0077)

    some bytes ???

for CX=handle for MIDI device:

    MIDI Info Structure (see #0082)

    first 8 bytes of MIDI Service Structure ???

SeeAlso: #0086,#0088

INT 10 4F13


10 4F13 Format of WAVE Info Structure:

Copy to Main

Table 0077

Format of WAVE Info Structure:

Offset	Size	Description

 00h	4 BYTEs	name of the structure ("WAVI")

 04h	DWORD	structure length [0000007Eh]

 08h	DWORD	driver software version [00000003h]

 0Ch 32 BYTEs	vendor name, etc. (ASCIZ string)

 2Ch 32 BYTEs	vendor product name

 4Ch 32 BYTEs	vendor chip/hardware description

 6Ch	BYTE	installed board number

 6Dh	3 BYTEs	unused data

 70h	DWORD	feature bits (see #0078)

 74h	WORD	user determined preference field

 76h	WORD	memory required for driver use [0200h]

 78h	WORD	number of timer tick callbacks per second [0000h]

 7Ah	WORD	channels: 1 = mono, 2 = stereo

stereo is assumed to be interleaved data

 7Ch	WORD	bitfield of max sample sizes (see #0079)

SeeAlso: #0082

INT 10 4F13


10 4F13 Bitfields for Wave feature bits:

Copy to Main

Table 0078

Bitfields for Wave feature bits:

Bit(s)	Description

 0	8000hz Mono Playback

 1	8000hz Mono Record

 2	8000hz Stereo Record

 3	8000hz Stereo Playback

 4	8000hz Full Duplex Play/Record

 5	11025hz Mono Playback

 6	11025hz Mono Record

 7	11025hz Stereo Record

 8	11025hz Stereo Playback

 9	11025hz Full Duplex Play/Record

 10	22050hz Mono Playback

 11	22050hz Mono Record

 12	22050hz Stereo Record

 13	22050hz Stereo Playback

 14	22050hz Full Duplex Play/Record

 15	44100hz Mono Playback

 16	44100hz Mono Record

 17	44100hz Stereo Record

 18	44100hz Stereo Playback

 19	44100hz Full Duplex Play/Record

 20-26	reserved (0)

 27	driver must pre-handle the data

 28	Variable Sample mono   playback

 29	Variable Sample stereo playback

 30	Variable Sample mono   record

 31	Variable Sample stereo record

INT 10 4F13


10 4F13 Values for Sample data size:

Copy to Main

Table 0079

Values for Sample data size:

 01h	8bit play

 02h	16bit play

 10h	8bit record

 20h	16bit record

INT 10 4F13


10 4F13 Format of WAVE Audio Services structure:

Copy to Main

Table 0080

Format of WAVE Audio Services structure:

Offset	Size	Description

 00h	4 BYTEs	name of the structure

 04h	DWORD	structure length

 08h 16 BYTEs	for future expansion

---entry points (details???)---

 18h	DWORD	DeviceCheck

11h compression (see also #0081)

12h driver state

13h get current pos

14h sample rate

15h set preference

16h get DMA,IRQ

17h get IO address

18h get mem address

19h get mem free

1Ah full duplex

1Bh get block size

1Ch get PCM format

1Dh enable PCM format

80h-.. vendors can add DevChks above 0x80

 1Ch	DWORD	PCMInfo

 20h	DWORD	PlayBlock

 24h	DWORD	PlayCont

 28h	DWORD	RecordBlock

 2Ch	DWORD	RecordCont

 30h	DWORD	PauseIO

 34h	DWORD	ResumeIO

 38h	DWORD	StopIO

 3Ch	DWORD	WavePrepare

 40h	DWORD	WaveRegister

 44h	DWORD	GetLastError

01h unsupported feature/function

02h bad sample rate

03h bad block length

04h bad block address

05h app. missed an IRQ

06h don't understand the PCM size/format

80h-.. vendors specific errors

 48h	DWORD	TimerTick

 4Ch	DWORD	ApplPSyncCB: CallBack: play filled in by the app

 50h	DWORD	ApplRSyncCB: CallBack: rec filled in by the app

SeeAlso: #0084,#0088

INT 10 4F13


10 4F13 Values for type of compression:

Copy to Main

Table 0081

Values for type of compression:

 01h	IMA play

 02h	ALAW play

 03h	ULAW play

 11h	IMA record

 12h	ALAW record

 13h	ULAW record

INT 10 4F13


10 4F13 Format of MIDI Info Structure:

Copy to Main

Table 0082

Format of MIDI Info Structure:

Offset	Size	Description

 00h	4 BYTEs	name of the structure ("MIDI")

 04h	DWORD	structure length

 08h	DWORD	driver software version [00000003h]

 0Ch 32 BYTEs	vendor name, etc. (ASCIZ string)

 2Ch 32 BYTEs	vendor product name

 4Ch 32 BYTEs	vendor chip/hardware description

 6Ch	BYTE	installed board number

 6Dh	3 BYTEs	unused data

 70h 14 BYTEs	the patch library file name [OPL2.BNK 00..]

 7Eh	DWORD	feature bits (see #0083)

 80h	WORD	user determined preference field

 82h	WORD	memory required for driver use

 84h	WORD	# of timer tick callbacks per second

 86h	WORD	max # of tones (voices, partials)

SeeAlso: #0076,#0084,#0086

INT 10 4F13


10 4F13 Bitfields for MIDI feature bits:

Copy to Main

Table 0083

Bitfields for MIDI feature bits:

Bit(s)	Description

 0-3	reserved for GM extensions

 4	Transmitter/Receiver only

 5	Patches preloaded

 6	MIDI receive has time stamp

 8	MIDI interrupt driven input supported

 9	MIDI polled input supported

 10	MIDI remote patches supported

INT 10 4F13


10 4F13 Format of MIDI Service structure:

Copy to Main

Table 0084

Format of MIDI Service structure:

Offset	Size	Description

 00h	4 BYTEs	name of the structure ("MIDS")

 04h	DWORD	structure length

 08h 16 WORDs	patches loaded table bit field

 28h 16 BYTEs	for future expansion

---entry points (details???)---

 38h	DWORD	device check

11h return available tones

12h return TRUE/FALSE if patch is understood

13h set preference

14h allow/disallow voice stealing

15h get FIFO sizes

16h get DMA,IRQ

17h get IO address

18h get mem address

19h get mem free

80h-.. vendors can add DevChks above 0x80

 3Ch	DWORD	global reset

 40h	DWORD	MIDI msg

 44h	DWORD	poll MIDI

 48h	DWORD	preload patch

 4Ch	DWORD	unload patch

 50h	DWORD	timer tick

 54h	DWORD	get last error

01h unsupported feature/function

02h unknown patch type (see #0085)

03h all tones are used

04h messages are out of sync

05h an incoming patch was incomplete

06h an incoming patch couldn't be stored

07h had to drop an incoming byte

08h driver is failing a patch download

80h-.. vendors specific errors

 58h	DWORD	Patch Block free callback

 5Ch	DWORD	MIDI byte avail. callback

SeeAlso: #0080,#0088

INT 10 4F13


10 4F13 Values for MIDI Registered Patch Types:

Copy to Main

Table 0085

Values for MIDI Registered Patch Types:

 10h	OPL2

 11h	OPL3

INT 10 4F13


10 4F13 Format of Volume Info Structure:

Copy to Main

Table 0086

Format of Volume Info Structure:

Offset	Size	Description

 00h  4	BYTEs	name of the structure ("VOLI")

 04h	DWORD	structure length (00000092h)

 08h	DWORD	driver software version [00000001h]

 0Ch 32 BYTEs	vendor name, etc. (ASCIZ string)

 2Ch 32 BYTEs	vendor product name

 4Ch 32 BYTEs	vendor chip/hardware description

 6Ch	BYTE	installed board number (0 for 1st/only board)

 6Dh  3	BYTEs	unused data (0)

 70h 24 BYTEs	text name of the mixer channel

 88h	DWORD	features bits (see #0087)

 8Ch	WORD	minimum volume setting

 8Eh	WORD	maximum volume setting

 90h	WORD	attenuation/gain crossover

SeeAlso: #0076,#0088

INT 10 4F13


10 4F13 Bitfields for Volume feature bits:

Copy to Main

Table 0087

Bitfields for Volume feature bits:

Bit(s)	Description

 0	Stereo Volume control available

 2	Low Pass Filter is available

 3	High Pass Filter is available

 4	Parametric Tone Control is available

 5	selectable output paths

 8	Azimuth Field positioning supported

 9	Phi Field positioning supported

 10-30	unused???

 31	Master Volume device

INT 10 4F13


10 4F13 Format of Volume Services Structure:

Copy to Main

Table 0088

Format of Volume Services Structure:

Offset	Size	Description

 00h	4 BYTEs	name of the structure ("VOLS")

 04h	DWORD	structure length (00000038h)

 08h 16 BYTEs	16 bytes for future expansion (0)

---entry points (details???)---

 18h	DWORD	device check

0011h filter range

0012h filter setting

0013h filter current

0014h tone range

0015h tone setting

0016h tone current

0017h path

0018h get IO address

0080h-.. vendors can add DevChks above 0x80

 1Ch	DWORD	set vol to an absolute setting

01h User master volume setting

02h application master volume setting

 20h	DWORD	set 3D volume

 24h	DWORD	tone control

 28h	DWORD	filter control

 2Ch	DWORD	output path

 30h	DWORD	reset channel

 34h	DWORD	get last error

01h unsupported feature/function

02h out of range parameter value

80h+ vendor-specific errors

SeeAlso: #0080,#0084

INT 10 4F13


10 5555 Format of ATI Super Switch data area:

Copy to Main

Table 0089

Format of ATI Super Switch data area:

Offset	Size	Description

 00h	DWORD	original INT 09 vector

 04h	DWORD	original INT 10 vector

 08h	DWORD	original INT 1C vector

 0Ch	WORD	screen saver state, 0=off, 1=on

 0Eh	WORD	blanking interval in clock ticks

INT 10 5555


10 5F00 Bitfields for Chips&Technologies chip type:

Copy to Main

Table 0090

Bitfields for Chips&Technologies chip type:

Bit(s)	Description

 7-4	chip type

0000: 82c451

0001: 82c452

0010: 82c455

0011: 82c453

0101: 82c456

0110: 82c457

0111: F65520

1000: F65530

1100: F65535/F65545 ???

1101: F65540

 3-0	revision number

INT 10 5F00


10 5F00 Bitfields for Chips&Technologies miscellaneous information:

Copy to Main

Table 0091

Bitfields for Chips&Technologies miscellaneous information:

Bit(s)	Description

 0	DAC size (0=6-bit, 1=8-bit)

 1	system type (0=PC/AT, 1=PS/2)

 2	extended text modes supported by BIOS

 3	reserved

 4	extended graphics modes supported by BIOS

 5	reserved

 6	BIOS supports graphics cursor

 7	BIOS supports anti-aliased font

 8	BIOS supports pre-programmed emulation

 9	BIOS supports auto emulation

 10	BIOS supports variable mode set at cold boot

 11	BIOS supports variable mode set on warm boot

 12	BIOS supports emulation mode set at cold boot

 13	BIOS supports emulation mode set on warm boot

 14-15	reserved

INT 10 5F00


10 5F01 Values for Chips&Technologies emulation type:

Copy to Main

Table 0092

Values for Chips&Technologies emulation type:

 00h,01h reserved

 02h	CGA

 03h	MDA

 04h	Hercules

 05h	EGA

 06h	VGA

INT 10 5F01


10 5F03 Bitfields for Chips&Technologies display mode:

Copy to Main

Table 0093

Bitfields for Chips&Technologies display mode:

Bit(s)	Description

 1-0	scanlines (00 = 200, 01 = 350, 10 = 400)

 7	persistence (0 reset on next boot, 1 until changed)

INT 10 5F03


10 5F50 Bitfields for display status:

Copy to Main

Table 2710

Bitfields for display status:

Bit(s)	Description

 7-4	always 0 ???

 3	1: both displays active (bit 1 also set)

 2	1: normal (monochrome display only), 0: inverse or color

 1	1: internal display active, 0: external only

 0	always set ???

INT 10 5F50


10 5F-- Bitfields for Chips&Technologies state mask:

Copy to Main

Table 0094

Bitfields for Chips&Technologies state mask:

Bit(s)	Description

 0	video hardware

 1	BIOS data state

 2	DAC state

 15	type (0 all state info, 1 SuperVGA state only)

INT 10 5F--


10 66-- Bitfields for HUNTER 16 control bits:

Copy to Main

Table 0095

Bitfields for HUNTER 16 control bits:

Bit(s)	Description

 0-1	01: no split, 10: allow split

 2	allow scrolling the upper part

 3	allow scrolling the lower part

INT 10 66--


10 6F01 Values for monitor type code (HP Extended BIOS):

Copy to Main

Table 0096

Values for monitor type code (HP Extended BIOS):

 00h	non-HP card with ROM and possibly its own INT 10h driver

 41h	MultiMode video display adapter

 42h-44h reserved

 45h	industry standard monochrome display adapter

 46h	industry standard color display adapter

 51h	reserved

INT 10 6F01


10 6F01 Bitfields for status register information:

Copy to Main

Table 0097

Bitfields for status register information:

Bit(s)	Description

 0	display enable

0 = display enabled

1 = vertical or horizontal retrace in progress

 1	light pen flip flop set

 2	light pen switch activated

 3	vertical sync

 4	monitor resolution

0 = high resolution (>200 lines)

1 = low resolution (<=200 lines)

 5	display type (0 = color, 1 = monochrome)

 6,7	diagnostic bits

Note:	bits 0-3 are the same as the EGA/VGA status register bits 0-3

INT 10 6F01


10 6F02 Bitfields for HP Vectra extended control register:

Copy to Main

Table 0098

Bitfields for HP Vectra extended control register:

Bit(s)	Description

 0	screen resolution (0 = 200 lines, 1 = 400 lines)

 1	underline enable (if set, 'blue' of fg color = underline)

 2	font (0 = Standard-8, 1 = HP-Roman-8)

 3	memory disabled for CPU access

 4	allow access to full 32K memory instead of wrapping at 16K

 5	select second 16K page instead of first

 6,7	unused

INT 10 6F02


10 6F05 Values for Video7/VEGA video mode:

Copy to Main

Table 0099

Values for Video7/VEGA video mode:

     text/ text pixel	pixel	colors disply scrn  system

     grph resol	 box  resolution       pages  addr

 00h-13h = standard IBM modes (see #0009 at AH=00h)

 08h = T  80x27	  .	  .	mono	  .	.  HP MultiMode Video

 09h = T  80x27	  .	  .	  .	  .	.  HP MultiMode Video

 0Ah = T  40x27	  .	  .	mono	  .	.  HP MultiMode Video

 0Bh = T  40x27	  .	  .	  .	  .	.  HP MultiMode Video

 0Ch = reserved	   HP MultiMode Video

 0Dh = G    .	  .    640x400	  .	  .	.  HP MultiMode Video

 0Eh = G    .	  .    320x400	  .	  .	.  HP MultiMode Video

 0Fh = G    .	  .    320x400	  .	  .	.  HP MultiMode Video

 40h = T  80x43	 8x8	  .	  .	  .	.  Video7/VEGA VGA

 41h = T 132x25	 8x14	  .	  .	  .	.  Video7/VEGA VGA

 42h = T 132x43	 8x8	  .	  .	  .	.  Video7/VEGA VGA

 43h = T  80x60	 8x8	  .	  .	  .	.  Video7/VEGA VGA

 44h = T 100x60	 8x8	  .	  .	  .	.  Video7/VEGA VGA

 45h = T 132x28	 8x8	  .	  .	  .	.  Video7/VEGA VGA

 60h = G    .	  .    752x410	 16	  .	.  Video7 VGA, VEGA VGA

 61h = G    .	  .    720x540	 16	  .	.  Video7 VGA, VEGA VGA

     = G    .	  .    720x540	 16	  .	.  Northgate, Headland 1024i

 62h = G    .	  .    800x600	 16	  .	.  Video7 VGA, VEGA Ext EGA

     = G    .	  .    800x600	 16	  .	.  Headland 1024i

 63h = G    .	  .   1024x768	  2	  .	.  Video7 VGA

 64h = G    .	  .   1024x768	  4	  .	.  Video7 VGA

 65h = G    .	  .   1024x768	 16	  .	.  Video7 VGA, VEGA Ext EGA

     = G    .	  .   1024x768	 16	  .	.  Headland 1024i

 66h = G    .	  .    640x400	256	  .	.  Video7 VGA, VEGA Ext VGA

     = G    .	  .    640x400	256	  .	.  Northgate, Headland 1024i

 67h = G    .	  .    640x480	256	  .	.  Video7 VGA, VEGA Ext VGA

     = G    .	  .    640x480	256	  .	.  Headland 1024i

 68h = G    .	  .    720x540	256	  .	.  Video7 VGA, VEGA Ext VGA

     = G    .	  .    720x540	256	  .	.  Headland 1024i

 69h = G    .	  .    800x600	256	  .	.  Video7 VGA, VEGA Ext VGA

     = G    .	  .    800x600	256	  .	.  Headland 1024i

 70h = G    .	  .    752x410	 16gray	  .	.  Video7 VGA, VEGA VGA

 71h = G    .	  .    720x540	 16gray	  .	.  Video7 VGA, VEGA VGA

 72h = G    .	  .    800x600	 16gray	  .	.  Video7 VGA

 73h = G    .	  .   1024x768	  2gray	  .	.  Video7 VGA

 74h = G    .	  .   1024x768	  4gray	  .	.  Video7 VGA

 75h = G    .	  .   1024x768	 16gray	  .	.  Video7 VGA

 76h = G    .	  .    640x400	256gray	  .	.  Video7 VGA

 77h = G    .	  .    640x480	256gray	  .	.  Video7 VGA

 78h = G    .	  .    720x540	256gray	  .	.  Video7 VGA

 79h = G    .	  .    800x600	256gray	  .	.  (future)

SeeAlso: AH=00h,AX=0070h,AX=007Eh,AX=6F04h

Index:	video modes;Video 7|video modes;VEGA|video modes;Headland

INT 10 6F05


10 70-- Format of HUNTER 16 control block:

Copy to Main

Table 0100

Format of HUNTER 16 control block:

Offset	Size	Description

 00h	WORD	center X co-ordinate

 02h	BYTE	center Y co-ordinate

 03h	WORD	radius in pixels

 05h	BYTE	color (00h white, 01h black, FFh invert)

 06h	BYTE	aspect ratio x:x (1-127)

 07h	BYTE	aspect ratio y:y (1-127)

INT 10 70--


10 7000 Values for Everex monitor type:

Copy to Main

Table 0101

Values for Everex monitor type:

 00h	mono

 01h	CGA

 02h	EGA

 03h	digital multifrequency

 04h	IBM PS/2

 05h	IBM 8514

 06h	SuperVGA

 07h	analog multifrequency

 08h	super multifrequency

INT 10 7000


10 7000 Bitfields for Everex feature bits:

Copy to Main

Table 0102

Bitfields for Everex feature bits:

Bit(s)	Description

 7-6	memory size

00 = 256K

01 = 512K

10 = 1024K

11 = 2048K

 5	special oscillator present

 4	VGA protect enabled

 0	6845 emulation

INT 10 7000


10 7000 Values for board model for Trident-based Everex cards:

Copy to Main

Table 0103

Values for board model for Trident-based Everex cards:

 0236h	Ultragraphics II

 0620h	Vision VGA

 0673h	EVGA

 0678h	Viewpoint

INT 10 7000


10 7000 Values for Everex mode type:

Copy to Main

Table 0104

Values for Everex mode type:

 00h	all modes

 01h	monochrome text modes

 02h	color text modes

 03h	four-color CGA graphics modes

 04h	two-color CGA graphics modes

 05h	16-color graphics modes

 06h	256-color graphics modes

INT 10 7000


10 7000 Format of Everex mode information record:

Copy to Main

Table 0105

Format of Everex mode information record:

Offset	Size	Description

 00h	BYTE	mode number (bit 7 set if extended mode)

 01h	BYTE	mode type (see #0104)

 02h	BYTE	info bits (see #0106)

 03h	BYTE	font height

 04h	BYTE	text columns on screen

 05h	BYTE	text rows on screen

 06h	WORD	number of scan lines

 08h	BYTE	color information

bits 7-4 reserved

     3-0 bits per pixel

INT 10 7000


10 7000 Bitfields for Everex info bits:

Copy to Main

Table 0106

Bitfields for Everex info bits:

Bit(s)	Description

 7,6	reserved

 5	monochrome mode

 4	interlaced display

 3	requires special oscillator

 2,1	memory required (00 = 256K, 01 = 512K, 10 = 1024K, 11 = 2048K)

 0	reserved

INT 10 7000


10 71-- Format of HUNTER 16 control block:

Copy to Main

Table 0107

Format of HUNTER 16 control block:

Offset	Size	Description

 00h	WORD	left edge X co-ordinate

 02h	BYTE	lower edge Y co-ordinate

 03h	WORD	right edge X co-ordinate

 05h	BYTE	upper edge Y co-ordinate

 06h	BYTE	color (00h white, 01h black, FFh invert)

 07h	BYTE	type (00h line, 01h box)

 08h	BYTE	if non-zero (and type is BOX) fill with color

INT 10 71--


10 77-- Values for HUNTER 16 graphics font number:

Copy to Main

Table 0108

Values for HUNTER 16 graphics font number:

 00h	 7x7  in a  8x8	 cell

 01h	 5x7  in a  6x8	 cell

 02h	 7x9  in a  8x10 cell

 03h	14x9  in a 16x10 cell

 04h	 7x18 in a  8x20 cell

 05h	14x18 in a 16x20 cell

 06h	 3x5  in a  4x6	 cell

Note:	size is X * Y

INT 10 77--


10 7F00 Format of SOLLEX SuperVGA info structure:

Copy to Main

Table 0109

Format of SOLLEX SuperVGA info structure:

Offset	Size	Description

 00h	DWORD	pointer to VESA function dispatch table

 04h	DWORD	pointer to SOLLEX function dispatch table

 08h	DWORD	pointer to VESA SuperVGA info (see #0063 at AX=4F00h)

 0Ch	DWORD	pointer to mode info structure table, consisting of

  alternating ResInfo (see #0110) and VESA mode information

  (see #0065 at AX=4F01h) blocks, terminated with an FFFFh word

 10h	DWORD	pointer to font info structure table (see #0111)

 14h	WORD	high resolution crystal frequency in Hz (0000h = not present)

 16h	DWORD	pointer to ASCIZ ID string

 1Ah	DWORD	pointer to timeout reset table

array of bytes, each a multiple of the minimum time increment

 1Eh	WORD	minimum time increment in timer ticks

 20h	BYTE	inverse options supported

bit 0: inverse supported

bits 1-7: reserved

 21h	BYTE	normal color value

 22h	BYTE	inverse color value

 23h	WORD	port to be accessed for normal/inverse settings

 25h	WORD	type of interface chip (currently undefined)

 27h	WORD	program operational mode

bits 1-0: 00 no preference

  01 terse (minimum detail in program messages)

  10 verbose

  11 use menus if supported, verbose mode otherwise

bits 7-2: reserved

 29h	WORD	SOLLEX specification version

 2Bh	WORD	version of VESA/SOLLEX implementation

 2Dh	DWORD	offset to relocatable portion of SOLLEX extensions (for CONFIG)

 2Eh	DWORD	offset to unused section of the extensions ROM

 31h 16 BYTEs	reserved

Note:	all DWORD pointers initially require segment fixups; if the segment

  is 0000h, it should be changed to the returned ES, otherwise it

  may be assumed to be correct

INT 10 7F00


10 7F00 Format of SOLLEX SuperVGA ResInfo:

Copy to Main

Table 0110

Format of SOLLEX SuperVGA ResInfo:

Offset	Size	Description

 00h	WORD	16-bit mode number

 02h	WORD	adapter type (00h VGA, 01h EGA, 02h CGA, 03h MDA)

 04h	WORD	display info (see #0114)

 06h	DWORD	pointer to video parameter table

 0Ah	BYTE	replacement entry in master Video Parameter

 0Bh	BYTE	mode requested for mode set by BIOS

 0Ch	DWORD	pointer to LoadReg table

 10h	BYTE	index into table of clock values (see #0112)

INT 10 7F00


10 7F00 Format of SOLLEX SuperVGA font info table [array] entry:

Copy to Main

Table 0111

Format of SOLLEX SuperVGA font info table [array] entry:

Offset	Size	Description

 00h	BYTE	required font height

 01h	BYTE	parameter to load text mode font

 02h	BYTE	parameter to load graphics mode font

INT 10 7F00


10 7F00 Values for SOLLEX SuperVGA clock value index:

Copy to Main

Table 0112

Values for SOLLEX SuperVGA clock value index:

 00h	25 MHz

 01h	28 MHz

 02h	PCLK

 03h	31.5 MHz (VESA 640x480)

 04h	reserved

 05h	16 MHz (EGA)

 06h	PCLK

 07h	24 MHz (EGA)

 08h	25 MHz

 09h	28 MHz

 0Ah	36 MHz

 0Bh	45 MHz (for 1024x768)

 0Ch	80 MHz

 0Dh	40 MHz

 0Eh	65 MHz

 0Fh	 1 MHz (for powerdown)

INT 10 7F00


10 7F01 Bitfields for SOLLEX SuperVGA adapter request:

Copy to Main

Table 0113

Bitfields for SOLLEX SuperVGA adapter request:

Bit(s)	Description

 1-0	adapter type (00 VGA, 01 EGA, 10 CGA, 11 MDA)

 2	reserved

 4-3	change displays (00 none, 01 analog 10 digital 11 panel)

 6-5	desired monitor sense (01 color, 10 mono, 11=8514)

 7	lock override

 8	alternate adapter mode

 15-9	reserved

INT 10 7F01


10 7F01 Bitfields for SOLLEX SuperVGA display type:

Copy to Main

Table 0114

Bitfields for SOLLEX SuperVGA display type:

Bit(s)	Description

 15-9	reserved

 8	alternate display active

 7	Enhanced Color Display monitor active

 6	multi-frequency digital monitor active

 5	PS/2-type monitor active

 4	plasma/electroluminescent panel active

 3	LCD panel active

 2	multi-frequency analog monitor active

 1-0	monitor sense (00 none, 01 color, 10 mono, 11=8514)

INT 10 7F01


10 7F02 Bitfields for SOLLEX SuperVGA display output setting:

Copy to Main

Table 0115

Bitfields for SOLLEX SuperVGA display output setting:

Bit(s)	Description

 0	CRTC control in 2,1 valid

 1	enable digital output

 2	enable analog output

 3	panel control in 5,4 valid

 4	enable LCD output

 5	enable plasma/EL output

 6	inverse control in 7 valid

 7	0=normal, 1=inverse

 15-8	reserved

INT 10 7F02


10 7F02 Bitfields for SOLLEX SuperVGA displays attached:

Copy to Main

Table 0116

Bitfields for SOLLEX SuperVGA displays attached:

Bit(s)	Description

 0	PS/2 display on analog output

 1	multi-frequency monitor on analog output

 2	LCD panel attached

 3	plasma/electroluminescent panel attached

 4	multi-frequency monitor on digital output

 5	Enhanced Color Display attached to digital outpt

 6	alternate display

 15-7	reserved

INT 10 7F02


10 7F05 Format of SOLLEX SuperVGA register value table:

Copy to Main

Table 0117

Format of SOLLEX SuperVGA register value table:

Offset	Size	Description

 00h	WORD	base I/O register (FFFFh = end of list)

 02h 2N BYTEs	pairs of values to be written to the base I/O register as an

  index value and the following register as a data byte

 2N+2	WORD	FFFFh (end of data list)

... (repeats until FFFFh base address)

INT 10 7F05


10 91-- Values for Alloy MW386 video adapter type:

Copy to Main

Table 0118

Values for Alloy MW386 video adapter type:

 00h	monochrome

 01h	Hercules monochrome graphics

 02h	CGA

 03h	EGA

 04h	VGA

 80h	monochrome text terminal

 81h	Hercules graphics terminal

 82h	color graphics terminal

INT 10 91--


10 BF03 Values for Compaq video master mode:

Copy to Main

Table 0119

Values for Compaq video master mode:

 00h	switchable VDU not present

 04h	CGA

 05h	EGA

 07h	MDA

 08h	switchable LCD controller present

 09h	plasma VGA

 0Ah	TFT (active-matrix) VGA

INT 10 BF03


10 BF03 Bitfields for Compaq switchable VDU modes support:

Copy to Main

Table 0120

Bitfields for Compaq switchable VDU modes support:

Bit(s)	Description

 0	CGA supported

 1,2	reserved (1)

 3	MDA supported

 4	BitBLT engine available

 5	132-column support availble

 6	640x480x256 mode available

 7	8-bit DAC mode available

INT 10 BF03


10 BF03 Values for Compaq monitor type:

Copy to Main

Table 0121

Values for Compaq monitor type:

 00h	none

 01h	dual-mode monitor

 02h	5153 RGB monitor (RGBI 16-color)

 03h	Compaq Color monitor

 04h	640x400 flat panel (Plasma CGA)

 05h	VGC monochrome

 06h	VGC color

 07h	8-level mono LCD VGA (internal)

1024x768 mono VGA (external)

 08h	16-level mono plasma VGA (internal)

1024x768 color VGA (external)

 09h	4-level mono LCD CGA

 0Ah	16-level mono LCD VGA

 0Bh	active-matrix color VGA

 0Ch	active-matrix mono VGA

 0Dh	STN color VGA

INT 10 BF03


10 BF11 Bitfields for Compaq advanced video functionality:

Copy to Main

Table 0122

Bitfields for Compaq advanced video functionality:

Bit(s)	Description

 31	future graphics extensions (reserved, set to 0)

 30-16	reserved

 15-12	available video memory in 256K blocks, less one (0000 = 256K, etc.)

 11-8	reserved

 7	QVision modes supported

 6	Advanced VGA modes supported

 5	Accelerated VGA modes supported

 4	standard VGA modes supported

 3-2	reserved

 1	132-column modes supported

 0	reserved

INT 10 BF11


10 BF12 Bitfields for function mask:

Copy to Main

Table 0123

Bitfields for function mask:

Bit(s)	Description

 7	command mode

if set, bits 1 and 0 make the monitor active when set

if clear, bits 1 and 0 toggle the monitor's state when set

 6-2	reserved

 1	internal monitor

 0	external monitor

INT 10 BF12


10 CD02 Format of UltraVision palette register list:

Copy to Main

Table 0124

Format of UltraVision palette register list:

Offset	Size	Description

 00h 16 BYTEs	colors for palette registers 00h through 0Fh

 10h	BYTE	border color

INT 10 CD02


10 CD02 Format of UltraVision v2+ current font names table:

Copy to Main

Table 0125

Format of UltraVision v2+ current font names table:

Offset	Size	standard EGA	HiRes EGA	VGA

 00h  8 BYTEs	N/A	F19 font	F20 font

 08h  8 BYTEs	F14 font	F14 font	F14 font

 10h  8 BYTEs	N/A	F11 font	F10 font

 18h  8 BYTEs	F8 font	F8 font	F8 font

INT 10 CD02


10 CD02 Format of UltraVision v1.x current font names table:

Copy to Main

Table 0126

Format of UltraVision v1.x current font names table:

Offset	Size	HiRes EGA

 00h  8 BYTEs	F19/F14 font

 08h  8 BYTEs	F11/F8 font

INT 10 CD02


10 CD04 Values for UltraVision video mode number:

Copy to Main

Table 0127

Values for UltraVision video mode number:

 11h	80x25

 12h	80x43, 80x50

 13h	80x34, 80x36

 14h	80x60, 80x63

 19h	94x25

 1Ah	94x43, 94x50

 1Bh	94x36

 1Ch	94x63

 21h	108x25

 22h	108x43, 108x50

 23h	107x34, 108x36

 24h	108x60, 108x63

 31h	120x25

 32h	120x43, 120x50

 33h	132x25

 34h	132x44, 132x50

 39h	120x36

 3Ah	120x63

 3Bh	132x36

 3Ch	132x60

Index:	video modes;UltraVision

INT 10 CD04


10 CD07 Values for hardware underline status:

Copy to Main

Table 0128

Values for hardware underline status:

 00h	off (color systems only)

 01h	underline below characters

 02h	strike through characters

INT 10 CD07


10 F0-- Values for group index:

Copy to Main

Table 0129

Values for group index:

 Pointer/data chips

 00h	CRT Controller (25 reg) 3B4h mono modes, 3D4h color modes

 08h	Sequencer (5 registers) 3C4h

 10h	Graphics Controller (9 registers) 3CEh

 18h	Attribute Controller (20 registers) 3C0h

 Single registers

 20h	Miscellaneous Output register 3C2h

 28h	Feature Control register (3BAh mono modes, 3DAh color modes)

 30h	Graphics 1 Position register 3CCh

 38h	Graphics 2 Position register 3CAh

INT 10 F0--


10 F4-- Format of EGA RIL entries in table of register records:

Copy to Main

Table 0130

Format of EGA RIL entries in table of register records:

Offset	Size	Description

 00h	WORD	group index

Pointer/data chips

   00h CRTC (3B4h mono modes, 3D4h color modes)

   08h Sequencer 3C4h

   10h Graphics Controller 3CEh

   18h Attribute Controller 3C0h

Single registers

   20h Miscellaneous Output register 3C2h

   28h Feature Control register (3BAh mono modes, 3DAh color)

   30h Graphics 1 Position register 3CCh

   38h Graphics 2 Position register 3CAh

 02h	BYTE	register number (0 for single registers)

 03h	BYTE	register value

INT 10 F4--


10 FF-- Values for GO32 video mode number:

Copy to Main

Table 0131

Values for GO32 video mode number:

 00h	80x25 text

 01h	default text

 02h	CXxDX text

 03h	biggest text

 04h	320x200 graphics

 05h	default graphics

 06h	CXxDX graphics

 07h	biggest non-interlaced graphics

 08h	biggest graphics

Index:	video modes;GO32

INT 10 FF--


11 ---- Bitfields for BIOS equipment list:

Copy to Main

Table 0132

Bitfields for BIOS equipment list:

Bit(s)	Description

 0	floppy disk(s) installed (see 6-7)

 1	80x87 coprocessor installed

 3-2	number of 16K banks of RAM on motherboard (PC only)

number of 64K banks of RAM on motherboard (XT only)

 2	pointing device installed (PS)

 3	unused (PS)

 5-4	initial video mode

00 EGA, VGA, or PGA

01 40x25 color

10 80x25 color

11 80x25 monochrome

 7-6	number of floppies installed less 1 (if 0 set)

 8	DMA support installed (PCjr, Tandy 1400LT)

DMA support *not* installed (Tandy 1000's)

 11-9	number of serial ports installed

 12	game port installed

 13	serial printer attached (PCjr)

internal modem installed (PC/Convertible)

 15-14	number of parallel ports installed

---Compaq, Dell, and many other 386/486 machines--

 23	page tables set so that Weitek coprocessor addressable in real mode

 24	Weitek math coprocessor present

---Compaq Systempro---

 25	internal DMA parallel port available

 26	IRQ for internal DMA parallel port (if bit 25 set)

0 = IRQ5

1 = IRQ7

 28-27	parallel port DMA channel

00 DMA channel 0

01 DMA channel 0 ???

10 reserved

11 DMA channel 3

SeeAlso: INT 12

INT 11 ----


11 ---- Values for SDLP command:

Copy to Main

Table 0133

Values for SDLP command:

 00h	SDLP initialization

 01h	SDLP System Identify

 02h	simple read sectors

 03h	simple write sectors

 04h	simple verify sectors/seek to sector

 05h	get device size/type

 06h	ready unit

 07h	format unit

 08h	diagnostics

 09h	rewind

 0Ah	erase

 0Bh	write filemarks

 0Ch	space

 0Dh	prevent/allow media removal

 0Eh	load/unload media

 0Fh	reserved - returns good status

 10h	set block size

 11h	write setmark

 12h	set error level

 13h	get address of Request Sense Buffer

 14h	get SDLP error via Request Sense

 F0h	Vendor Unique Function (WD7000-FASST2 only)

 FDh	reset current SCSI HAC

 FEh	get/set current SCSI HAC

 FFh	execute SCSI command

INT 11 ----


11 ---- Bitfields for SDLP SCSI addressing:

Copy to Main

Table 0134

Bitfields for SDLP SCSI addressing:

Bit(s)	Description

 7-6	Host Adapter

 5-3	SCSI Target ID

 2-0	SCSI Target LUN (logical unit number)

INT 11 ----


11 0225 Values for Blank-It hotkey scan code:

Copy to Main

Table 0135

Values for Blank-It hotkey scan code:

 00h	No hot key

 1Dh	Left CTRL

 2Ah	Left Shift

 36h	Right Shift

 57h	F11

 58h	F12

INT 11 0225


11 FF-- Bitfields for SDLP SCSI addressing:

Copy to Main

Table 0136

Bitfields for SDLP SCSI addressing:

Bit(s)	Description

 2-0	SCSI Target LUN (logical unit number)

 5-3	SCSI Target ID

 7	write flag, set for write operations, clear otherwise

INT 11 FF--


12 FFFE Format of Back&Forth task info buffer:

Copy to Main

Table 0137

Format of Back&Forth task info buffer:

Offset	Size	Description

 00h 21 BYTEs	ASCIZ task name

 15h	BYTE	hotkey shift state (as for INT 16/AH=02h)

 16h	WORD	hotkey scan code

 18h	WORD	program ID

Index:	hotkeys;Back&Forth

SeeAlso: #0138,#0139

INT 12 FFFE


12 FFFE Format of Back&Forth Professional BF_SPAWN record:

Copy to Main

Table 0138

Format of Back&Forth Professional BF_SPAWN record:

Offset	Size	Description

 00h 21 BYTEs	task description

 15h	BYTE	flag: disable hotkeys

 16h	WORD	environment size in bytes

 18h	BYTE	hotkey shift flags

 19h	WORD	hotkey scancode

 1Bh	WORD	maximum number of EMS pages

 1Dh	WORD	required memory in KBytes

 1Fh  3 BYTEs	DESQview-style two-letter program ID

 22h 13 BYTEs	base name of program to be run (no path or extension)

 2Fh 66 BYTEs	directory from which to start program

 71h 66 BYTEs	initial current directory for program

SeeAlso: #0137,#0139

INT 12 FFFE


12 FFFE Format of Back&Forth Professional BF_TASK record:

Copy to Main

Table 0139

Format of Back&Forth Professional BF_TASK record:

Offset	Size	Description

 00h	DWORD	Unix-style task start time (seconds since 1/1/1970)

 04h 21 BYTEs	task description

 19h	DWORD	elapsed time in task (seconds)

 1Dh	WORD	task ID

 1Fh	BYTE	task hotkey keyboard flags

 20h	WORD	task hotkey scan code

 22h	DWORD	time task was suspended/exited

 26h	WORD	task handle

SeeAlso: #0137,#0138

INT 12 FFFE


13 01-- Values for disk operation status:

Copy to Main

Table 0140

Values for disk operation status:

 00h	successful completion

 01h	invalid function in AH or invalid parameter

 02h	address mark not found

 03h	disk write-protected

 04h	sector not found/read error

 05h	reset failed (hard disk)

 05h	data did not verify correctly (TI Professional PC)

 06h	disk changed (floppy)

 07h	drive parameter activity failed (hard disk)

 08h	DMA overrun

 09h	data boundary error (attempted DMA across 64K boundary or >80h sectors)

 0Ah	bad sector detected (hard disk)

 0Bh	bad track detected (hard disk)

 0Ch	unsupported track or invalid media

 0Dh	invalid number of sectors on format (PS/2 hard disk)

 0Eh	control data address mark detected (hard disk)

 0Fh	DMA arbitration level out of range (hard disk)

 10h	uncorrectable CRC or ECC error on read

 11h	data ECC corrected (hard disk)

 20h	controller failure

 31h	no media in drive (IBM/MS INT 13 extensions)

 32h	incorrect drive type stored in CMOS (Compaq)

 40h	seek failed

 80h	timeout (not ready)

 AAh	drive not ready (hard disk)

 B0h	volume not locked in drive (INT 13 extensions)

 B1h	volume locked in drive (INT 13 extensions)

 B2h	volume not removable (INT 13 extensions)

 B3h	volume in use (INT 13 extensions)

 B4h	lock count exceeded (INT 13 extensions)

 B5h	valid eject request failed (INT 13 extensions)

 BBh	undefined error (hard disk)

 CCh	write fault (hard disk)

 E0h	status register error (hard disk)

 FFh	sense operation failed (hard disk)

INT 13 01--


13 05-- Format of floppy format address field buffer entry (one per sector in track):

Copy to Main

Table 0141

Format of floppy format address field buffer entry (one per sector in track):

Offset	Size	Description

 00h	BYTE	track number

 01h	BYTE	head number (0-based)

 02h	BYTE	sector number

 03h	BYTE	sector size (00h=128 bytes, 01h=256 bytes, 02h=512, 03h=1024)

INT 13 05--


13 05-- Format of Future Domain SCSI mode select data:

Copy to Main

Table 0142

Format of Future Domain SCSI mode select data:

Offset	Size	Description

 00h	BYTE	number of bytes of remaining data (12 + vendor unique length)

 01h	BYTE	reserved (0)

 02h	BYTE	medium type (0 for hard disk)

 03h	BYTE	reserved (0)

 04h	BYTE	block descriptor length (8)

 05h	BYTE	density code (0 for hard disk)

 06h  3 BYTEs	(big-endian) number of blocks (000000h for entire disk)

 09h	BYTE	reserved (0)

 0Ah  3 BYTEs	(big-endian) block length (512 standard, or 256)

 0Dh	???	vendor-specific parameter bytes (optional)

INT 13 05--


13 06-- Bitfields for Future Domain SCSI defect list info:

Copy to Main

Table 0143

Bitfields for Future Domain SCSI defect list info:

Bit(s)	Description

 7-5	drive LUN

 4	defect list is available

 3	defect list is complete (erase drive's defect list)

 2-0	defect table format

(000=use defect table A, 100=use defect table B,

 101=use defect table C)

INT 13 06--


13 06-- Format of Future Domain SCSI defect table A:

Copy to Main

Table 0144

Format of Future Domain SCSI defect table A:

Offset	Size	Description

 00h	WORD	number of bytes remaining in table

 02h	BYTE	reserved (0)

 03h	BYTE	reserved (0)

 04h	WORD	(big-endian) defect list length (4*number of defects)

 06h  4 DWORDs	(big-endian) defect block addresses

INT 13 06--


13 06-- Format of Future Domain SCSI defect table B:

Copy to Main

Table 0145

Format of Future Domain SCSI defect table B:

Offset	Size	Description

 00h	WORD	number of bytes remaining in table

 02h	BYTE	reserved (0)

 03h	BYTE	reserved (0)

 04h	WORD	(big-endian) defect list length (8*number of defects)

 06h 8N BYTEs	defect list [array] (see #0147)

INT 13 06--


13 06-- Format of Future Domain SCSI defect table C:

Copy to Main

Table 0146

Format of Future Domain SCSI defect table C:

Offset	Size	Description

 00h	WORD	number of bytes remaining in table

 02h	BYTE	reserved (0)

 03h	BYTE	reserved (0)

 04h	WORD	(big-endian) defect list length (8*number of defects)

 06h 8N BYTEs	defect list [array] (see #0147)

INT 13 06--


13 06-- Format of Future Domain SCSI defect list entry:

Copy to Main

Table 0147

Format of Future Domain SCSI defect list entry:

Offset	Size	Description

 00h  3 BYTEs	(big-endian) cylinder number of defect

 03h	BYTE	head number of defect

 04h	DWORD	(big-endian) defect bytes from index

INT 13 06--


13 08-- Values for diskette drive type:

Copy to Main

Table 0148

Values for diskette drive type:

 01h	360K

 02h	1.2M

 03h	720K

 04h	1.44M

 05h	??? (reportedly an obscure drive type shipped on some IBM machines)

2.88M on some machines (at least AMI 486 BIOS)

 06h	2.88M

INT 13 08--


13 1700 Format of Future Domain SCSI inquiry information block:

Copy to Main

Table 0149

Format of Future Domain SCSI inquiry information block:

Offset	Size	Description

 00h	BYTE	device type

bits 0-4: peripheral device type (see #0150)

bits 5-7: peripheral qualifier (see #0151)

 01h	BYTE	device type modifier

bits 0-6: device type modifier

bit 7: removable medium

 02h	BYTE	SCSI version (see #0152)

 03h	BYTE	data format/capabilities (see #0153)

 04h	BYTE	additional data length (total remaining bytes)

 05h  2 BYTEs	reserved

 07h	BYTE	device capabilities (see #0154)

 08h  8 BYTEs	vendor identification (space-padded ASCII)

 10h  8 BYTEs	product identification (space-padded ASCII)

 20h  4 BYTEs	product revision level (space-padded ASCII)

 24h 20 BYTEs	vendor specific

 38h 40 BYTEs	reserved

 60h	var	vendor specific parameters

INT 13 1700


13 1700 Values for Future Domain SCSI peripheral device type:

Copy to Main

Table 0150

Values for Future Domain SCSI peripheral device type:

 00h	direct-access device (e.g., magnetic disk)

 01h	sequential-access device (e.g., magnetic tape)

 02h	printer device

 03h	processor device

 04h	write-once device (e.g., some optical disks)

 05h	CD-ROM device

 06h	scanner device

 07h	optical memory device (e.g., some optical disks)

 08h	medium changer device (e.g., jukeboxes)

 09h	communications device

 0Ah	(defined by ASC IT8)

 0Bh	(defined by ASC IT8)

 0Ch-1Eh reserved

 1Fh	unknown or no device type

INT 13 1700


13 1700 Values for Future Domain SCSI peripheral qualifier:

Copy to Main

Table 0151

Values for Future Domain SCSI peripheral qualifier:

 000b	device is currently connected to this logical unit and available

 001b	target is capable of supporting the specified peripheral, but the

  physical device is not currently connected to this logical unit

 010b	reserved

 011b	target can't support a physical device on this logical unit

 1xxb	vendor specific

INT 13 1700


13 1700 Bitfields for Future Domain SCSI version:

Copy to Main

Table 0152

Bitfields for Future Domain SCSI version:

Bit(s)	Description

 0-2	ANSI-approved version

000 device might or might not comply to ANSI standard

001 device complies to ANSI SCSI-1

010 device complies to ANSI SCSI-2

other reserved

 3-5	ECMA version

 6-7	ISO version

INT 13 1700


13 1700 Bitfields for Future Domain SCSI data format/capabilities:

Copy to Main

Table 0153

Bitfields for Future Domain SCSI data format/capabilities:

Bit(s)	Description

 0-2	response data format

000 information block is as specified in SCSI-1

001 information block is as specified in CCS

010 information block is as specified in SCSI-2

other reserved

 4-5	reserved

 6	terminate I/O process supported

 7	asynchronous event notification supported

INT 13 1700


13 1700 Bitfields for Future Domain SCSI device capabilities:

Copy to Main

Table 0154

Bitfields for Future Domain SCSI device capabilities:

Bit(s)	Description

 0	device responds to RESET with a hard RESET

 1	tagged command queuing supported

 2	reserved

 3	linked commands supported

 4	synchronous data transfer supported

 5	16-transfers supported

 6	32-transfers supported

 7	relative addressing supported

INT 13 1700


13 18-- Values for Future Domain SCSI controller family code:

Copy to Main

Table 0155

Values for Future Domain SCSI controller family code:

 0200h	TMC-1680/? (ROM 3.0)

 0203h	TMC-1650/1660/1670/1680 (ROM 2.0)

 040Ah	TMC-820/830/840/850/860/870/875/880/885 (ROM <= 6.0A)

 050Dh	TMC-840/841/880/881 (ROM 5.2D)

 0700h	TMC-830/850/860/875/885 (ROM 7.0)

INT 13 18--


13 1A-- Bitfields for ESDI format modifiers:

Copy to Main

Table 0156

Bitfields for ESDI format modifiers:

Bit(s)	Description

 4	generate periodic interrupt

 3	perform surface analysis

 2	update secondary defect map

 1	ignore secondary defect map

 0	ignore primary defect map

INT 13 1A--


13 1A-- Format of defect table entry [array]:

Copy to Main

Table 0157

Format of defect table entry [array]:

Offset	Size	Description

 00h  3 BYTEs	relative sector address (little-endian)

 03h	BYTE	flags and defect count

bit 7: last logical sector on track

bit 6: first logical sector on track

bit 5: last logical sector on cylinder

bit 4: logical sectors are pushed onto next track

bits 3-0: number of defects pushed from previous cylinder

INT 13 1A--


13 1B-- Format of Future Domain SCSI disk information block:

Copy to Main

Table 0158

Format of Future Domain SCSI disk information block:

Offset	Size	Description

 00h	BYTE	drive physical information (see #0159)

 01h	WORD	translated number of cylinders

 03h	BYTE	translated number of heads

 04h	BYTE	translated number of sectors per track (17, 34, or 63)

 05h	BYTE	drive address

bits 0-2: logical unit number

bits 3-5: device number

 06h	BYTE	01h at initialization

 07h	BYTE	sense code byte 00h, or extended sense code byte 0Ch

 08h	BYTE	00h

 09h	BYTE	00h or extended sense code byte 02h (sense key)

 0Ah	BYTE	00h

 0Bh 10 BYTEs	copy of Command Descriptor Block (CDB)

 15h	DWORD	translated number of sectors on device

INT 13 1B--


13 1B-- Bitfields for Future Domain SCSI device physical information:

Copy to Main

Table 0159

Bitfields for Future Domain SCSI device physical information:

Bit(s)	Description

 0	???

 1	device uses parity

 2	256 bytes per sector instead of 512

 3	don't have capacity yet???

 4	disk is removable

 5	logical unit number is not present

INT 13 1B--


13 1C08 Format of ESDI Command Complete Status Block:

Copy to Main

Table 0160

Format of ESDI Command Complete Status Block:

Offset	Size	Description

 00h	BYTE	07h

 01h	BYTE	size of block in words (07h)

 02h	BYTE	command error code (see #0161)

 03h	BYTE	command status code (see #0162)

 04h	BYTE	device error code, group 1 (see #0163)

 05h	BYTE	device error flags, group 2 (see #0164)

 06h	WORD	number of unprocessed sectors due to abnormal termination

 08h	DWORD	last Relative Sector Address processed by command

 0Ch	WORD	number of sectors corrected by ECC codes

INT 13 1C08


13 1C08 Values for ESDI command error code:

Copy to Main

Table 0161

Values for ESDI command error code:

 00h	successful

 01h	parameter invalid

 02h	unknown function

 03h	unsupported command

 04h	command cancelled

 05h	unknown function

 06h	controller diagnostics failed

 07h	formatting failed

 08h	format error in primary map

 09h	format error in secondary map

 0Ah	diagnostic failure during formatting

 0Bh	warning: secondary map too large during formatting

 0Ch	warning: non-zero defect

 0Dh	system checksum error during formatting

 0Eh	warning: incompatible device

 0Fh	warning: push table overflowed

 10h	warning: more than 15 sectors pushed to next cylinder

 11h	internal hardware error

 12h	warning: errors found while verifying sectors

 13h	invalid device

 FFh	device error

INT 13 1C08


13 1C08 Values for ESDI command status code:

Copy to Main

Table 0162

Values for ESDI command status code:

 01h	successful

 03h	successful after ECC

 05h	successful after retries

 06h	format partially completed

 07h	successful after ECC and retries

 08h	command completed with warning (see #0161)

 09h	abort complete

 0Ah	reset complete

 0Bh	data transfer ready (no status block)

 0Ch	command completed with failure (see #0163,#0164)

 0Dh	DMA error

 0Eh	command block error (see #0161)

 0Fh	bad attention code

INT 13 1C08


13 1C08 Values for ESDI device error code, group 1:

Copy to Main

Table 0163

Values for ESDI device error code, group 1:

 00h	successful

 01h	seek fault detected by device

 02h	interface fault

 03h	sector ID not found

 04h	disk not formatted

 05h	unrecoverable ECC error

 06h	ECC error in sector ID

 07h	invalid relative sector address

 08h	timeout

 09h	sector defective

 0Ah	disk changed (removable media)

 0Bh	selection error

 0Ch	write protected (removable media)

 0Dh	write fault

 0Eh	read fault

 0Fh	no index or sector pulse

 10h	device not ready

 11h	seek error detected by adapter

 12h	bad format

 13h	volume overflow

 14h	data address mark not found

 15h	sector ID not found

 16h	missing device configuration data

 17h	first/last relative sector flags missing

 18h	track empty

 81h	timeout while waiting for stop

 82h	timeout while waiting for end of data transfer

 84h	stopped awaiting data transfer during formatting

 85h	timeout while waiting for head switch

 86h	timeout while awaiting DMA completion

INT 13 1C08


13 1C08 Bitfields for ESDI device error flags, group 2:

Copy to Main

Table 0164

Bitfields for ESDI device error flags, group 2:

Bit(s)	Description

 7-5	unused

 4	ready

 3	selected

 2	write fault

 1	on track 0

 0	seek/command complete

INT 13 1C08


13 1C09 Format of ESDI Device Status Block:

Copy to Main

Table 0165

Format of ESDI Device Status Block:

Offset	Size	Description

 00h	BYTE	08h

 01h	BYTE	number of words in block (09h)

 02h	BYTE	error flags

 03h	BYTE	unused

 04h	BYTE	command error code (see #0161)

 05h	BYTE	command status code (see #0162)

 06h	WORD	ESDI standard status

 08h  5 WORDs	ESDI vendor-specific status codes

INT 13 1C09


13 1C0A Format of ESDI Drive Configuration Status Block:

Copy to Main

Table 0166

Format of ESDI Drive Configuration Status Block:

Offset	Size	Description

 00h	BYTE	09h

 01h	BYTE	number of words in block (06h)

 02h	BYTE	flags

 03h	BYTE	number of spare sectors per cylinder

 04h	DWORD	total number of usable sectors

 08h	WORD	total number of cylinders

 0Ah	BYTE	tracks per cylinder

 0Bh	BYTE	sectors per track

INT 13 1C0A


13 1C0B Format of ESDI Controller Configuration Status Block:

Copy to Main

Table 0167

Format of ESDI Controller Configuration Status Block:

Offset	Size	Description

 00h	BYTE	E9h

 01h	BYTE	number of words in block (06h)

 02h	WORD	unused (0000h)

 04h	DWORD	controller microcode revision level

 08h  2 WORDs	unused (0000h)

INT 13 1C0B


13 1C0C Format of ESDI POS Information Status Block:

Copy to Main

Table 0168

Format of ESDI POS Information Status Block:

Offset	Size	Description

 00h	BYTE	EAh

 01h	BYTE	number of words in block (05h)

 02h	WORD	magic value FFDDh

 04h	BYTE	POS register 3

 05h	BYTE	POS register 2

 06h	BYTE	POS register 5 (unused, FFh)

 07h	BYTE	POS register 4 (unused, FFh)

 08h	BYTE	POS register 7 (unused, FFh)

 09h	BYTE	POS register 6 (unused, FFh)

INT 13 1C0C


13 1D-- Format of IBMCACHE.SYS status record:

Copy to Main

Table 0169

Format of IBMCACHE.SYS status record:

Offset	Size	Description

 00h	DWORD	total number of read requests

 04h	DWORD	total number of hits

 08h	DWORD	number of physical disk reads

 0Ch	DWORD	total number of sectors requested by physical disk reads

 10h  6 BYTEs	???

 16h	DWORD	pointer to start of error list (see #0170)

 1Ah	DWORD	pointer to end of error list

 1Eh	WORD	???

 20h	BYTE	using extended memory if nonzero

 21h	BYTE	???

 22h  4 BYTEs	ASCII version number

 26h	WORD	cache size in KB

 28h	WORD	sectors per page

INT 13 1D--


13 1D-- Format of IBMCACHE.SYS error list:

Copy to Main

Table 0170

Format of IBMCACHE.SYS error list:

Offset	Size	Description

 00h	DWORD	relative block address of bad page

 04h	BYTE	drive

 05h	BYTE	sector bit-map

 06h	WORD	next error

INT 13 1D--


13 20-- Values for Compaq diskette media type:

Copy to Main

Table 0171

Values for Compaq diskette media type:

 03h	720K

 04h	1.44M

 06h	2.88M

 0Ch	360K

 0Dh	1.2M

 0Eh	???

 0Fh	??? (1024-byte sectors)

INT 13 20--


13 23-- Values for PS/1 hard disk feature number:

Copy to Main

Table 0172

Values for PS/1 hard disk feature number:

 01h	select 8-bit data transfers instead of 16-bit

 02h	enable write cache

 22h	Write Same, user-specified area

 33h	disable retries

 44h	set number of ECC bytes for read long/write long (see AH=0Ah,AH=0Bh)

 54h	set cache segments

 55h	disable lookahead

 66h	disable reverting to power-on defaults

 77h	disable error correctioni

 81h	select 16-bit data transfers (default)

 82h	disable write cache

 88h	enable error correction (default)

 99h	enable retries (default)

 AAh	enable lookahead

 BBh	set ECC length for read long/write long to four bytes

 CCh	enable reverting to power-on defaults

 DDh	Write Same, entire disk

INT 13 23--


13 25-- Format of drive information block:

Copy to Main

Table 0173

Format of drive information block:

Offset	Size	Description

 00h	WORD	general drive configuration (see #0174)

 02h	WORD	number of cylinders

 04h	WORD	reserved

 06h	WORD	number of heads

 08h	WORD	number of unformatted bytes per track

 0Ah	WORD	number of unformatted bytes per sector

 0Ch	WORD	number of sectors per track

 0Eh  6 BYTEs	vendor unique

 14h 20 BYTEs	serial number in ASCII, 0000h=not specified)

 28h	WORD	buffer type

 2Ah	WORD	buffer size in 512 byte increments (0000h=not specified)

 2Ch	WORD	number of ECC bytes passed on Read/Write Long cmds

0000h = not specified

 2Eh  8 BYTEs	firmware revision in ASCII, 0000h=not specified

 36h 40 BYTEs	model number in ASCII, 0000h=not specified

 5Eh	WORD	bits 15-8  Vendor Unique

bits 7-0  00h = Read/Write Multiple commands not implemented

  xxh = Maximum number of sectors that can be

  transferred per interrupt on Read and Write

  Multiple commands

 60h	WORD	0000h = cannot perform doubleword I/O

0001h = can perform doubleword I/O

 62h	WORD	capabilities

bit 15-9  0=reserved

bit 8  1=DMA Supported

bit 7-0	 Vendor Unique

 64h	WORD	reserved

 66h	WORD	bits 15-8 PIO data transfer cycle timing mode

bits 7-0  Vendor Unique

 68h	WORD	bits 15-8 DMA data transfer cycle timing mode

bits 7-0  Vendor Unique

 6Ah	WORD	bits 15-1 reserved

bit 0	1=the fields reported in tranlation mode are valid

0=the fields reported in translation mode may be valid

 6Ch	WORD	number of current cylinders

 6Eh	WORD	number of current heads

 70h	WORD	number of current sectors per track

 72h	DWORD	current capacity in sectors

 76h	WORD	reserved

 78h 136 BYTEs	not defined by ATA spec 2.6

100h 64 BYTEs	vendor unique

140h 96 BYTEs	reserved

Note:	the above description is as in the ATA (AT Attachment) Specification.

INT 13 25--


13 25-- Bitfields for general drive configuration:

Copy to Main

Table 0174

Bitfields for general drive configuration:

Bit(s)	Description

 15	0   reserved for non-magnetic drives

 14	format speed tolerance gap required

 13	track offset option available

 12	data strobe offset option available

 11	rotational speed tolerance is > 0.5%

 10	disk transfer rate > 10 Mbs

 9	disk transfer rate > 5Mbs but <= 10Mbs

 8	disk transfer rate <= 5Mbs

 7	removable cartridge drive

 6	fixed drive

 5	spindle motor control option implemented

 4	head switch time > 15 usec

 3	not MFM encoded

 2	soft sectored

 1	hard sectored

 0	reserved (0)

INT 13 25--


13 30-- Format of QUICKCACHE II system info:

Copy to Main

Table 0175

Format of QUICKCACHE II system info:

Offset	Size	Description

 00h	BYTE	flag: cache enabled

 01h	BYTE	flag: buffered writes enabled

 02h	BYTE	flag: buffered reads enabled

 03h	BYTE	flag: sounds enabled

 04h	BYTE	flag: autodismount enabled

 05h	BYTE	???

 06h	BYTE	flag: ???

 07h	BYTE	flag: ???

 08h	BYTE	flag: "em_assigned"

 09h	BYTE	flag: emulated EMS

 0Ah	BYTE	single sector bonus

 0Bh	BYTE	"sticky_max"

 0Ch	BYTE	write sector bonus

 0Dh	BYTE	bonus threshold

 0Eh	WORD	flush interval

 10h	WORD	flush count

 12h	WORD	reserve pool size

 14h	WORD	remaining space in reserve pool

 16h	WORD	required free memory

 18h	WORD	total cache sectors

 1Ah	WORD	dirty cache sectors

 1Ch	BYTE	trace buffer size

 1Dh	BYTE	reserved (padding)

INT 13 30--


13 30-- Format of QUICKCACHE II drive info [16-element array, one element]:

Copy to Main

Table 0176

Format of QUICKCACHE II drive info [16-element array, one element]:

Offset	Size	Description

 00h	BYTE	DOS drive number

 01h	BYTE	BIOS drive number

 02h	BYTE	maximum sector number

 03h	BYTE	maximum head number

 04h	BYTE	read buffer size

 05h	BYTE	write buffer size

 06h	BYTE	last status

 07h	BYTE	flag: enabled

 08h	BYTE	flag: buffered write enabled

 09h	BYTE	flag: buffered read enabled

 0Ah	BYTE	flag: in use (drive info is valid)

 0Bh	BYTE	flag: cylinder flush

 0Ch	BYTE	reserved (padding)

 0Dh	BYTE	sectors per track

 0Eh	WORD	sector size

 10h	WORD	sectors assigned

 12h	WORD	dirty sectors

 14h	WORD	reserved sectors

 16h	WORD	number of read errors

 18h	WORD	number of write errors

 1Ah	DWORD	"rio_count"

 1Eh	DWORD	number of cache misses

 22h	DWORD	"wio_count"

 26h	DWORD	"dio_count"

INT 13 30--


13 41-- Bitfields for IBM/MS INT 13 Extensions API support bitmap:

Copy to Main

Table 0177

Bitfields for IBM/MS INT 13 Extensions API support bitmap:

Bit(s)	Description

 0	extended disk access functions (AH=42h-44h,47h,48h) supported

 1	removable drive controller functions (AH=45h,46h,48h,49h,INT 15/AH=52h)

  supported

 2	extended drive parameter table is valid (see #0179,#0182)

 3-15	reserved (0)

INT 13 41--


13 42-- Format of disk address packet:

Copy to Main

Table 0178

Format of disk address packet:

Offset	Size	Description

 00h	BYTE	10h (size of packet)

 01h	BYTE	reserved (0)

 02h	WORD	number of blocks to transfer

 04h	DWORD	-> transfer buffer

 08h	QWORD	starting absolute block number

INT 13 42--


13 48-- Format of IBM/MS INT 13 Extensions drive parameters:

Copy to Main

Table 0179

Format of IBM/MS INT 13 Extensions drive parameters:

Offset	Size	Description

 00h	WORD	(call) size of buffer (001Ah for v1.x, 001Eh for v2.0)

(ret) size of returned data

 02h	WORD	information flags (see #0180)

 04h	DWORD	number of cylinders on drive

 08h	DWORD	number of heads on drive

 0Ch	DWORD	number of sectors per track

 10h	QWORD	total number of sectors on drive

 18h	WORD	bytes per sector

---v2.0---

 1Ah	DWORD	-> configuration parameters (see #0182)

FFFFh:FFFFh if not available

SeeAlso: #0181,#1855

INT 13 48--


13 48-- Bitfields for IBM/MS INT 13 Extensions information flags:

Copy to Main

Table 0180

Bitfields for IBM/MS INT 13 Extensions information flags:

Bit(s)	Description

 0	DMA boundary errors handled transparently

 1	cylinder/head/sectors-per-track information is valid

 2	removable drive

 3	write with verify supported

 4	drive has change-line support (required if drive >= 80h is removable)

 5	drive can be locked (required if drive >= 80h is removable)

 6	CHS information set to maximum supported values, not current media

INT 13 48--


13 48-- Format of Phoenix Enhanced Disk Drive Spec translated drive parameter table:

Copy to Main

Table 0181

Format of Phoenix Enhanced Disk Drive Spec translated drive parameter table:

Offset	Size	Description

 00h	WORD	number of cylinders

 02h	BYTE	number of heads

 03h	BYTE	A0h (signature indicating translated table)

 04h	BYTE	number of physical sectors per track

 05h	WORD	starting write precompensation cylinder number

 07h	BYTE	reserved

 08h	BYTE	control byte (see #1857 at INT 41)

 09h	WORD	number of physical cylinders

 0Bh	BYTE	number of physical heads

 0Ch	WORD	cylinder number of landing zone

 0Eh	BYTE	number of logical sectors per track

 0Fh	BYTE	checksum

Program: the Phoenix Enhanced Disk Drive Specification is an addition to the

  IBM/MS INT 13 extensions

SeeAlso: #0182,#1855

INT 13 48--


13 48-- Format of Phoenix Enhanced Disk Drive Spec fixed disk param table extension:

Copy to Main

Table 0182

Format of Phoenix Enhanced Disk Drive Spec fixed disk param table extension:

Offset	Size	Description

 00h	WORD	physical I/O port base address

 02h	WORD	disk-drive control port address

 04h	BYTE	drive flags (see #0183)

 05h	BYTE	proprietary information

bits 7-4 reserved (0)

bits 3-0: Phoenix proprietary (used by BIOS)

 06h	BYTE	IRQ (bits 3-0; bits 7-4 reserved and must be 0)

 07h	BYTE	sector count for multi-sector transfers

 08h	BYTE	DMA control

bits 7-4: DMA type

bits 3-0: DMA channel

 09h	BYTE	programmed I/O control

bits 7-4: reserved (0)

bits 3-0: PIO type (1,2, or 3)

 0Ah	WORD	drive options (see #0184)

 0Ch  2 BYTEs	reserved (0)

 0Eh	BYTE	extension revision level (high nybble=major, low nybble=minor)

(currently 10h)

 0Fh	BYTE	2's complement checksum of bytes 00h-0Eh

SeeAlso: #0181

INT 13 48--


13 48-- Bitfields for Phoenix Enhanced Disk Drive Spec drive flags:

Copy to Main

Table 0183

Bitfields for Phoenix Enhanced Disk Drive Spec drive flags:

Bit(s)	Description

 7	reserved (1)

 6	LBA enabled

 5	reserved (1)

 4	drive is slave

 3-0	reserved (0)

SeeAlso: #0182,#0184

INT 13 48--


13 48-- Bitfields for Phoenix Enhanced Disk Drive Spec drive options:

Copy to Main

Table 0184

Bitfields for Phoenix Enhanced Disk Drive Spec drive options:

Bit(s)	Description

 0	fast PIO enabled

 1	fast DMA access enabled

 2	block PIO (multi-sector transfers) enabled

 3	CHS translation enabled

 4	LBA translation enabled

 5	removable media

 6	CD-ROM

 7	32-bit transfer mode

 15-8	reserved

SeeAlso: #0182,#0183

INT 13 48--


13 5503 Bitfields for DTQ byte:

Copy to Main

Table 0185

Bitfields for DTQ byte:

Bit(s)	Description

 7	reserved

 6	SCSI drive attached

 5	reserved

 4	selected drive is ST225N/NP (Paired)

 3	selected drive is ST225N

 2	Host Adapter checks parity on the selected drive

 1	selected drive has been installed

 0	Seagate installation software present

INT 13 5503


13 59-- Format of SyQuest SCSI structure:

Copy to Main

Table 0186

Format of SyQuest SCSI structure:

Offset	Size	Description

 00h	WORD	opcode (see #0187)

 02h	BYTE	target's SCSI ID

 03h	BYTE	target's logical unit number

 04h	BYTE	data direction (00h no data xfer, 01h data in, FFh data out)

 05h	BYTE	host status

00h successful

01h selection time out

02h data over-run or under-run

 06h	BYTE	target status at command completion

00h successful

02h check status

08h busy

 07h	BYTE	command data block length

 08h	DWORD	request data length

 0Ch	DWORD	result data length (actual length of data transferred)

 10h	DWORD	-> CDB

 14h	DWORD	-> data buffer

Note:	The handler does not perform a 'Request Sense' command if there was an error

INT 13 59--


13 59-- Values for SCSI opcode:

Copy to Main

Table 0187

Values for SCSI opcode:

 00h	verify interface

clears carry flag and returns if function is available

 01h	returns the ID of the INT 13h Handler in a NULL terminated string of

length less than 40 byte including the terminator.

The string is stored in the buffer pointed by p_buf.

 02h	device mapping info. The caller provides a one byte buffer.

The handler stores the Int 13h Device ID (80h or above) in the buffer.

It stores 0 if that target does not exists.

 03h	execute SCSI command

 04h	device reset

 05h	SCSI bus reset

INT 13 59--


13 7B00 Format of NOW! information record:

Copy to Main

Table 0188

Format of NOW! information record:

Offset	Size	Description

 00h 80 BYTEs	name of directory from which NOW! was started

 50h 424 BYTEs	???

 81h  ? BYTEs	array of bytes for ???

 F7h 250 BYTEs	array of 25 entries, one per drive???

Offset	Size	Description

 00h  2 BYTEs	???

 02h	WORD	???

 04h	WORD	???

 06h  4 BYTEs	???

1F1h  7 BYTEs	???

INT 13 7B00


13 80-- Values for FAST! function:

Copy to Main

Table 0189

Values for FAST! function:

 01h	get cache information (see separate entry)

 04h	disable cache

 05h	enable cache and reset statistics

 06h	installation check (see separate entry)

 07h	unhook interrupts (see separate entry)

 09h	flush cache

 0Ah	(v4.02+) enable staged writes

 0Bh	(v4.02+) disable staged writes

 0Ch	(v4.02+) enable beep on flush

 0Dh	(v4.02+) disable beep on flush

 0Eh	???

 0Fh	???

 10h	(v4.12+) enable hotkeys

 11h	(v4.12+) disable hotkeys

 12h	(v4.13+) set idle delay

 13h	(v4.13+) set flush dirty percentage

 14h	(v5.00+) enable mouse checks

 15h	(v5.00+) disable mouse checks

 16h	(v5.00d+) reduce cache size to minimum

 17h	(v5.00d+) increase cache size to maximum

INT 13 80--


13 80-- Format of FAST! request packet:

Copy to Main

Table 0190

Format of FAST! request packet:

Offset	Size	Description

 00h	DWORD	pointer to 19-byte signature string (see #0191)

 04h	DWORD	pointer to buffer for data (if needed by function)

INT 13 80--


13 80-- Values for FAST! v4.04-v5.03 signature string:

Copy to Main

Table 0191

Values for FAST! v4.04-v5.03 signature string:

 13h 07h 06h 08h 11h 18h 0Fh 0Eh 02h 18h 13h 08h 0Bh 08h 01h 00h 04h 08h 15h

INT 13 80--


13 8001 Format of FAST! request packet:

Copy to Main

Table 0192

Format of FAST! request packet:

Offset	Size	Description

 00h	DWORD	-> 19-byte signature string (see #0191)

 04h	DWORD	-> buffer for cache information (see #0193)

INT 13 8001


13 8001 Format of FAST! cache information (v5.00-5.03):

Copy to Main

Table 0193

Format of FAST! cache information (v5.00-5.03):

Offset	Size	Description

 00h	WORD	binary version number of FAST! (v5.00 = 01F4h)

 02h	BYTE	revision letter (61h = X.XXa, 62h = X.XXb, etc.)

 03h	BYTE	FAST! variant

(01h = FASTE, 02h = FASTX BIOS, 04h = FASTC, 20h = FASTX XMS)

 04h	DWORD	total number of read requests

 08h	DWORD	number of physical disk reads

 0Ch	DWORD	grabbed hash buckets

 10h	DWORD	"st_386mem"

 14h	DWORD	total number of writes (only counted when staging enabled)

 18h	DWORD	number of physical disk writes (only when staging enabled)

 1Ch	DWORD	number of write errors while flushing cache

 20h	WORD	flags1 (see #0194)

 22h	WORD	flags

bit 0: ???

bit 1: staged writes enabled

 24h	WORD	???

 26h	WORD	maximum cache size in KB

 28h	WORD	minimum cache size in KB

 2Ah	WORD	segment of first cache buffer (FASTC)

segment of EMS page frame (FASTE)

XMS handle (FASTX XMS)

 2Ch	WORD	number of hash buckets containing no entries

 2Eh	WORD	number of hash buckets containing one entry

 30h	WORD	number of hash buckets containing two entries

 32h	WORD	number of hash buckets containing three entries

 34h	WORD	number of hash buckets containing four entries

 36h	WORD	number of hash buckets containing five entries

 38h	WORD	maximum contiguous sectors

 3Ah	WORD	hash factor

 3Ch	WORD	number of paragraphs of memory used below 1M

 3Eh	WORD	entries per hash bucket

 40h	WORD	idle delay in seconds

 42h  2 BYTEs	???

 44h	WORD	staged write threshold percentage

 46h  2 BYTEs	???

 48h	WORD	number of dirty sectors

 4Ah	WORD	number of staged write buffers

 4Ch	WORD	current cache size in KB

 4Eh	WORD	beep frequency in Hz

 50h	WORD	???

 52h	WORD	???

INT 13 8001


13 8001 Bitfields for FAST! flags1:

Copy to Main

Table 0194

Bitfields for FAST! flags1:

Bit(s)	Description

 0	beep on flush

 3	hotkeys enabled

 4	mouse idle check enabled

 8	caching enabled

 13	???

INT 13 8001


13 8006 Format of FAST! request packet:

Copy to Main

Table 0195

Format of FAST! request packet:

Offset	Size	Description

 00h	DWORD	-> 19-byte signature string (see #0191)

INT 13 8006


13 8007 Format of FAST! request packet:

Copy to Main

Table 0196

Format of FAST! request packet:

Offset	Size	Description

 00h	DWORD	-> 19-byte signature string (see #0191)

INT 13 8007


14 00-- Bitfields for serial port parameters:

Copy to Main

Table 0197

Bitfields for serial port parameters:

Bit(s)	Description

 7-5	data rate (110,150,300,600,1200,2400,4800,9600 bps)

 4-3	parity (00 or 10 = none, 01 = odd, 11 = even)

 2	stop bits (set = 2, clear = 1)

 1-0	data bits (00 = 5, 01 = 6, 10 = 7, 11 = 8)

SeeAlso: #0199,#0204,#0205,#0206

INT 14 00--


14 00-- Bitfields for FOSSIL RS-232 status:

Copy to Main

Table 0198

Bitfields for FOSSIL RS-232 status:

Bit(s)	Description

 0	RDA - input data is available in buffer

 1	OVRN - data has been lost

 5	THRE - room is available in output buffer

 6	TSRE - output buffer empty

INT 14 00--


14 00-- Bitfields for MBBIOS port parameters:

Copy to Main

Table 0199

Bitfields for MBBIOS port parameters:

Bit(s)	Description

 7-5	data rate

(normally 110,150,300,600,1200,2400,4800,9600 bps;

9600,14400,19200,28800,38400,57600,115200,330400 bps

if the high-speed option is set)

 4-3	parity (00 or 10 = none, 01 = odd, 11 = even)

 2	stop bits (set = 2, clear = 1)

 1-0	data bits (00 = 5, 01 = 6, 10 = 7, 11 = 8)

SeeAlso: #0197

INT 14 00--


14 00-- Values for Connection Manager return code:

Copy to Main

Table 0200

Values for Connection Manager return code:

 00h	successful

 01h	no such connection

 02h	invalid connection ID

 03h	invalid subvector found

 04h	communication error (check BH)

 06h	insufficient resources, retry later

 FFh	no data available

INT 14 00--


14 03-- Bitfields for serial line status:

Copy to Main

Table 0201

Bitfields for serial line status:

Bit(s)	Description

 7	timeout

 6	transmit shift register empty

 5	transmit holding register empty

 4	break detected

 3	framing error

 2	parity error

 1	overrun error

 0	receive data ready

Note:	for COMM-DRV, if bit 7 is set, an error occurred, and may be retrieved

  through a separate call (see AX=8000h"COMM-DRV")

INT 14 03--


14 03-- Bitfields for modem status:

Copy to Main

Table 0202

Bitfields for modem status:

Bit(s)	Description

 7	carrier detect

 6	ring indicator

 5	data set ready

 4	clear to send

 3	delta carrier detect

 2	trailing edge of ring indicator

 1	delta data set ready

 0	delta clear to send

INT 14 03--


14 03-- Bitfields for Connection Manager line status:

Copy to Main

Table 0203

Bitfields for Connection Manager line status:

Bit(s)	Description

 7	CTS changed

 6	current CTS state

 5	timeout

 4	break

 3	framing error

 2	parity error

 1	overrun

 0	current carrier state (0 active, 1 no carrier)

INT 14 03--


14 04-- Values for serial port parity:

Copy to Main

Table 0204

Values for serial port parity:

 00h	no parity

 01h	odd parity

 02h	even parity

 03h	stick parity odd

 04h	stick parity even

SeeAlso: #0197,#0205,#0206,#0207

INT 14 04--


14 04-- Values for serial port word length:

Copy to Main

Table 0205

Values for serial port word length:

 00h	5 bits

 01h	6 bits

 02h	7 bits

 03h	8 bits

SeeAlso: #0197,#0204,#0206,#0242

INT 14 04--


14 04-- Values for serial port bps rate:

Copy to Main

Table 0206

Values for serial port bps rate:

 00h	110 (19200 if ComShare installed)

 01h	150 (38400 if ComShare installed)

 02h	300

 03h	600 (14400 if ComShare installed)

 04h	1200

 05h	2400

 06h	4800 (28800 if ComShare installed)

 07h	9600

 08h	19200

---ComShare---

 09h	38400

 0Ah	57600

 0Bh	115200

SeeAlso: #0197,#0204,

#0206,#0243,#0250,AH=36h,#0259,#0464,#1616

INT 14 04--


14 04-- Bitfields for Digiboard initializing parameters:

Copy to Main

Table 0207

Bitfields for Digiboard initializing parameters:

Bit(s)	Description

 7-5	unused

 4-3	parity (00 none, 01 odd, 11 even)

 2	stop bits (0 = one, 1 = two)

 1-0	data bits (00 = five, 01 = six, 10 = seven, 11 = eight)

SeeAlso: #0204,#0205

INT 14 04--


14 04-- Format of Connection Manager protocol command vector:

Copy to Main

Table 0208

Format of Connection Manager protocol command vector:

Offset	Size	Description

 00h	WORD	(big-endian) total length of command (including this word)

 02h	WORD	(big-endian) command code

EF01h Connection Request

EF06h Modify Connection Parameters

 04h  N BYTEs	list of subvectors (see #0210)

allowable subvector types are 01h-04h,17h,18h for command code

  EF01h; 03h,04h for command code EF06h (see #0209)

INT 14 04--


14 04-- Values for Connection Manager subvector type code:

Copy to Main

Table 0209

Values for Connection Manager subvector type code:

 01h	Connection ID

 02h	Destination ID

 03h	Asynchronous line parameters

 04h	Data transfer parameters

 09h	Line speed

 0Ah	Serial coding

 0Bh	Packet size

 0Ch	Timers

 0Dh	Special characters

 0Eh	Target ID

 0Fh	Telephone number

 10h	ASCII destination ID

 11h	Parity

 12h	Bits per character

 13h	Number of stop bits

 14h	Packet timer

 15h	Intercharacter timer

 17h	Flags

 18h	Parameter ranges

 19h	Flow control

INT 14 04--


14 04-- Format of Connection Manager subvector:

Copy to Main

Table 0210

Format of Connection Manager subvector:

Offset	Size	Description

 00h	BYTE	length of subvector

 01h	BYTE	type code (see #0209)

 02h N-2 BYTEs	data, which may include subvectors

SeeAlso: #0211,#0212,#0213,#0214,#0215,

#0216,#0217,#0218,#0219,#0220,#0221

SeeAlso: #0222,#0223,

#0225,#0226,#0227,#0228,#0229,#0230

INT 14 04--


14 04-- Format of Connection ID subvector:

Copy to Main

Table 0211

Format of Connection ID subvector:

Offset	Size	Description

 00h	BYTE	03h (length)

 01h	BYTE	01h (subvector "Connection ID")

 02h	BYTE	connection ID

INT 14 04--


14 04-- Format of Destination ID subvector:

Copy to Main

Table 0212

Format of Destination ID subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	02h (subvector "Destination ID")

 02h  N BYTEs	subvector(s) of type 0Eh, 0Fh, or 10h

INT 14 04--


14 04-- Format of Asynchronous line parameters subvector:

Copy to Main

Table 0213

Format of Asynchronous line parameters subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	03h (subvector "Asynchronous line parameters")

 02h  N BYTEs	subvector(s) of type 09h, 0Ah, or 19h

INT 14 04--


14 04-- Format of Data transfer parameters subvector:

Copy to Main

Table 0214

Format of Data transfer parameters subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	04h (subvector "Data transfer parameters")

 02h  N BYTEs	subvector(s) of type 0Bh, 0Ch, or 0Dh

INT 14 04--


14 04-- Format of Line speed subvector:

Copy to Main

Table 0215

Format of Line speed subvector:

Offset	Size	Description

 00h	BYTE	04h (length)

 01h	BYTE	09h (subvector "Line speed")

 02h	WORD	bit map, highest set bit selects speed

bit 0: 2400

bits 1-7: 1800, 1200, 600, 300, 115200, 150, 110 bps

bits 8-15: 57600, 38400, 19200, 14400, 9600, 7200, 4800, 3600

INT 14 04--


14 04-- Format of Serial coding subvector:

Copy to Main

Table 0216

Format of Serial coding subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	0Ah (subvector "Serial coding")

 02h  N BYTEs	subvector(s) of type 11h, 12h, or 13h

INT 14 04--


14 04-- Format of Packet size subvector:

Copy to Main

Table 0217

Format of Packet size subvector:

Offset	Size	Description

 00h	BYTE	04h (length)

 01h	BYTE	0Bh (subvector "Packet size")

 02h	WORD	(big-endian) packet size, 1 to 1024

INT 14 04--


14 04-- Format of Timers subvector:

Copy to Main

Table 0218

Format of Timers subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	0Ch (subvector "Timers")

 02h  8 BYTEs	subvector of type 14h or 15h

INT 14 04--


14 04-- Format of Special characters subvector:

Copy to Main

Table 0219

Format of Special characters subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	0Dh (subvector "Special characters")

 02h  N BYTEs	list of ASCII characters to be used as EOM or EOB

INT 14 04--


14 04-- Format of Target ID:

Copy to Main

Table 0220

Format of Target ID:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	0Eh (subvector "Target ID")

 02h  N BYTEs	target ID, 1-16 bytes

INT 14 04--


14 04-- Format of Telephone number subvector:

Copy to Main

Table 0221

Format of Telephone number subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	0Fh (subvector "Telephone number")

 02h  N BYTEs	telephone number

INT 14 04--


14 04-- Format of ASCII destination ID subvector:

Copy to Main

Table 0222

Format of ASCII destination ID subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	10h (subvector "ASCII destination ID")

 02h  N BYTEs	destination ID

INT 14 04--


14 04-- Format of Parity subvector:

Copy to Main

Table 0223

Format of Parity subvector:

Offset	Size	Description

 00h	BYTE	03h (length)

 01h	BYTE	11h (subvector "Parity")

 02h	BYTE	parity type (see #0224)

INT 14 04--


14 04-- Bitfields for Connection Manager parity type:

Copy to Main

Table 0224

Bitfields for Connection Manager parity type:

Bit(s)	Description

 7	odd

 6	even

 5	mark

 4	space

 3	none

INT 14 04--


14 04-- Format of Bits per character subvector:

Copy to Main

Table 0225

Format of Bits per character subvector:

Offset	Size	Description

 00h	BYTE	03h (length)

 01h	BYTE	12h (subvector "Bits per character")

 02h	BYTE	bits per character

bit 7: seven

bit 6: eight

INT 14 04--


14 04-- Format of Number of stop bits subvector:

Copy to Main

Table 0226

Format of Number of stop bits subvector:

Offset	Size	Description

 00h	BYTE	03h (length)

 01h	BYTE	13h (subvector "Number of stop bits")

 02h	BYTE	stop bits

bit 7: one

bit 6: 1.5

bit 5: two

INT 14 04--


14 04-- Format of Packet timer and Intercharacter timer subvectors:

Copy to Main

Table 0227

Format of Packet timer and Intercharacter timer subvectors:

Offset	Size	Description

 00h	BYTE	04h (length)

 01h	BYTE	subvector type

14h Packet timer

15h Intercharacter timer

 02h	WORD	(big-endian) unit of value representing 20ms

INT 14 04--


14 04-- Format of Flags subvector:

Copy to Main

Table 0228

Format of Flags subvector:

Offset	Size	Description

 00h	BYTE	03h (length)

 01h	BYTE	17h (subvector "Flags")

 02h	BYTE	flags

bit 7: queueing requested

INT 14 04--


14 04-- Format of Parameter ranges subvector:

Copy to Main

Table 0229

Format of Parameter ranges subvector:

Offset	Size	Description

 00h	BYTE	length

 01h	BYTE	18h (subvector "Parameter ranges")

 02h  N BYTEs	subvector(s) of type 09h, 11h, 12h, or 13h

INT 14 04--


14 04-- Format of Flow control subvector:

Copy to Main

Table 0230

Format of Flow control subvector:

Offset	Size	Description

 00h	BYTE	length (02h-04h)

 01h	BYTE	19h (subvector "Flow control")

 02h	BYTE	XOFF character

 03h	BYTE	XON character

Note:	if length is 02h, flow control is disabled; if length is 03h, any

  character will be accepted as XON after an XOFF

INT 14 04--


14 05-- Bitfields for modem control register:

Copy to Main

Table 0231

Bitfields for modem control register:

Bit(s)	Description

 0	data terminal ready

 1	request to send

 2	OUT1

 3	OUT2

 4	LOOP

 5-7	reserved

INT 14 05--


14 05-- Bitfields for Digiboard protocol:

Copy to Main

Table 0232

Bitfields for Digiboard protocol:

Bit(s)	Description

 7-4	unused

 3	RTS/CTS

 2	DSR

 1,0	XON/XOFF

INT 14 05--


14 05-- Bitfields for PC-MOS/386 serial port protocol:

Copy to Main

Table 0233

Bitfields for PC-MOS/386 serial port protocol:

Bit(s)	Description

 7	set to enable/disable CD monitoring, clear to set protocol

---bit 7 set---

 4	CD monitoring enabled

 5	automatic restart enabled

---bit 7 clear---

 0	receive XON/XOFF

 1	transmit XON/XOFF

 2	DTR/DSR

 3	RTS/CTS

INT 14 05--


14 09-- Bitfields for MBBIOS option byte:

Copy to Main

Table 0234

Bitfields for MBBIOS option byte:

Bit(s)	Description

 0	transmit buffering enabled

 2	hardware handshaking enabled

 5	high-speed option enabled (see AH=00h"MBBIOS",#0199)

 other	reserved

INT 14 09--


14 0A-- Format of MBBIOS PACCOM buffer:

Copy to Main

Table 0235

Format of MBBIOS PACCOM buffer:

Offset	Size	Description

 00h 504 BYTEs	data area

1F8h	WORD	length of data in data area

1FAh	BYTE	flags/status

bit 7: don't discard buffer after transmitting data

bit 6: buffer has been transmitted

1FBh	BYTE	reserved (0) for additional flags/status

1FCh	WORD	user data

1FEh	WORD	MBBIOS-internal pointer to next buffer

INT 14 0A--


14 0D-- Values for Digiboard CH_KEY_RDY flag:

Copy to Main

Table 0236

Values for Digiboard CH_KEY_RDY flag:

 00h	receive buffer empty

 FFh	characters available

INT 14 0D--


14 0F-- Bitfields for FOSSIL requested flow control:

Copy to Main

Table 0237

Bitfields for FOSSIL requested flow control:

Bit(s)	Description

 0	XON/XOFF on transmit (watch for XOFF while sending)

 1	CTS/RTS (CTS on transmit/RTS on receive)

 2	reserved

 3	XON/XOFF on receive (send XOFF when buffer near full)

 4-7	all 1

INT 14 0F--


14 10-- Format of Connection Manager pattern/reply buffer:

Copy to Main

Table 0238

Format of Connection Manager pattern/reply buffer:

Offset	Size	Description

 00h	WORD	length of pattern (30h or 32h)

 02h 16 BYTEs	server pattern or name

 12h 16 BYTEs	group pattern or name

 22h 16 BYTEs	line pattern or name

 23h	BYTE	(optional) ???

 24h	BYTE	(optional, returned) current line status

00h available

01h out of service

02h currently allocated to a connection

Note:	pattern may include '?' wildcard to match any character

INT 14 10--


14 16-- Values for Digiboard CCB command number:

Copy to Main

Table 0239

Values for Digiboard CCB command number:

 40h	Set Receive Mid Water Mark

 41h	Set Receive High Water Mark

 42h	Flush Receive Buffer

 43h	Flush Transmit Buffer

 44h	Transmit Pause

 45h	Transmit Resume

 46h	Set Interrupt to Host Mask

 47h	Set Baud, Data, Stop and Parity

 48h	Send Break

 49h	Set Modem Lines

 4Ah	Set Break Count

 4Bh	Set Handshake

 4Ch	Set Xon/Xoff Characters

 4Dh	Set Transmit Mid Water Mark

 4Eh	IRQ Polling Timer to Host

 4Fh	Buffer Set All

 50h	Port On

 51h	Port Off

 52h	Receive Pause

 53h	Special Character Interrupt

 54h	RS-422 Enable

INT 14 16--


14 1B-- Format of FOSSIL driver info:

Copy to Main

Table 0240

Format of FOSSIL driver info:

Offset	Size	Description

 00h	WORD	size of structure in bytes

 02h	BYTE	FOSSIL spec driver conforms to

 03h	BYTE	revision level of this specific driver

 04h	DWORD	pointer to ASCIZ identification string

 08h	WORD	size of the input buffer

 0Ah	WORD	number of bytes left in buffer

 0Ch	WORD	size of the output buffer

 0Eh	WORD	number of bytes left in buffer

 10h	BYTE	width of screen

 11h	BYTE	length of screen

 12h	BYTE	actual baud rate, computer to modem

INT 14 1B--


14 1E-- Values for X00 FOSSIL parity:

Copy to Main

Table 0241

Values for X00 FOSSIL parity:

 00h	no parity

 01h	odd parity

 02h	even parity

 03h	stick parity odd

 04h	stick parity even

SeeAlso: #0204,#0242,#0243

INT 14 1E--


14 1E-- Values for X00 FOSSIL word length:

Copy to Main

Table 0242

Values for X00 FOSSIL word length:

 00h	5 bits

 01h	6 bits

 02h	7 bits

 03h	8 bits

SeeAlso: #0205,#0241,#0243

INT 14 1E--


14 1E-- Values for X00 FOSSIL bps rate:

Copy to Main

Table 0243

Values for X00 FOSSIL bps rate:

 00h	110

 01h	150

 02h	300

 03h	600

 04h	1200

 05h	2400

 06h	4800

 07h	9600

 08h	19200

SeeAlso: #0206,#0241,#0242

INT 14 1E--


14 1E-- Format of HUNTER 16 communications parameters:

Copy to Main

Table 0244

Format of HUNTER 16 communications parameters:

Offset	Size	Description

 00h	BYTE	communications type (00h IBM, nonzero Husky)

 01h	BYTE	port number (00h COM1, 01h COM2)

 02h	BYTE	baud rate (00h 110 bps, 01h 150, 02h 300, 03h 600, 04h 1200,

  05h 2400, 06h 4800, 07h 9600, 08h 19200, 09h 38400)

 03h	BYTE	data bits (01h seven, 02h eight)

 04h	BYTE	parity (00h none, 01h odd, 02h even)

 05h	BYTE	stop bits (00h one, 01h two)

 06h	BYTE	handshake (see #0245)

 07h	BYTE	handshake protocol (00h none, 01h Xon/Xoff, 02h HWK3780)

 08h	BYTE	Nulls after CR (0-20)

 09h	BYTE	LF (00h off, 01h on)

 0Ah	BYTE	Serig. 0..7Fh: Ignore this character

       80h: Serig off

 0Bh	BYTE	echo (00h off, 01h on)

 0Ch	BYTE	transmit timeout in seconds (1-60) or 00h to disable

 0Dh	BYTE	receive timeout in seconds (1-60) or 00h to disable

 0Eh  5 BYTEs	reserved

INT 14 1E--


14 1E-- Bitfields for HUNTER 16 handshake:

Copy to Main

Table 0245

Bitfields for HUNTER 16 handshake:

Bit(s)	Description

 0-1	0: RTS off, 1: RTS hold, 2: RTS true

 2	DTR enabled

 4	CTS enabled

 5	DSR enabled

 6	DCD enabled

INT 14 1E--


14 1F-- Bitfields for X00 FOSSIL modem control register:

Copy to Main

Table 0246

Bitfields for X00 FOSSIL modem control register:

Bit(s)	Description

 0	data terminal ready

 1	request to send

 2	OUT1

 3	OUT2 (interrupts) enabled

 4	LOOP

 5-7	reserved

INT 14 1F--


14 21-- Values for MultiDOS Plus status:

Copy to Main

Table 0247

Values for MultiDOS Plus status:

 00h	successful

 39h	no DSR or CTS

 3Ch	no DSR

 3Bh	no CTS

 41h	no such port

 42h	monitor mode not active

 97h	timed out

INT 14 21--


14 23-- Bitfields for MW386 port mode:

Copy to Main

Table 0248

Bitfields for MW386 port mode:

Bit(s)	Description

 0	port is shared (spooler only)

 1	port is spooled instead of direct (spooler only)

 2	port is assigned as logical COM device, not in spooler

 3	port is free

INT 14 23--


14 24-- Format of Alloy MW386 configuration table:

Copy to Main

Table 0249

Format of Alloy MW386 configuration table:

Offset	Size	Description

 00h	BYTE	baud rate (see #0250)

 01h	BYTE	data bits (00h=5, 01h=6, 02h=7, 03h=8)

 02h	BYTE	parity (00h none, 01h odd, 02h even)

 03h	BYTE	stop bits (00h=1, 01h=2)

 04h	BYTE	receive flow control

00h none, 01h XON/XOFF, 02h DTR/DSR, 03h XPC, 04h RTS/CTS

 05h	BYTE	transmit flow control (as for receive)

INT 14 24--


14 24-- Values for Alloy MW386 baud rate:

Copy to Main

Table 0250

Values for Alloy MW386 baud rate:

 00h	38400

 01h	19200

 02h	9600

 03h	7200

 04h	4800

 05h	3600

 06h	2400

 07h	2000

 08h	1200

 09h	600

 0Ah	300

 0Bh	150

 0Ch	134.5

SeeAlso: #0206

INT 14 24--


14 6F01 Bitfields for HP Vectra Extended BIOS serial port attributes:

Copy to Main

Table 0251

Bitfields for HP Vectra Extended BIOS serial port attributes:

Bit(s)	Description

 8-5	data rate (110, 150, 300, 600, 1200, 2400, 4800, 9600, 19200)

 4-3	parity

00 none

01 odd

10 none

11 even

 2	stop bits (0 = one, 1 = two)

 1-0	bits per character

10 seven-bit characters

11 eight-bit characters

0x undefined

INT 14 6F01


14 8000 Values for COMM-DRV error code:

Copy to Main

Table 0252

Values for COMM-DRV error code:

 00h	no error

 01h	buffer not set or attempted to change buffer for active port

 02h	port not active

 03h	transmit buffer full

 04h	receive buffer full

 05h	syntax error

 06h	invalid buffer size

 07h	invalid port

 08h	handler changed

 09h	invalid baud rate

 0Ah	invalid parity setting

 0Bh	invalid data length

 0Ch	invalid number of stop bits

 0Dh	invalid protocol number

 0Eh	IRQ changed

 0Fh	port changged

 10h	invalid threshold setting

 11h	invalid IRQ number

 12h	interrupts not enabled

 13h	invalid break syntax

 14h	fatal error

 15h	CTS error

 16h	invalid RS232 I/O port address

 17h	environment variable not set

 18h	error on IOCTL call

 19h	error during atexit cleanup

 1Ah	error mapping for direct calls

 1Bh	error opening device

 1Ch	unable to allocate memory

 1Dh	error on external micro card

 1Eh	card changed error

 1Fh	card type error

 20h	not supported

 21h	parent port error

 22h	card command buffer full

 23h	no subdevice for this port

 24h	unknown error

 25h	external card busy

 26h	no more timers available

 27h	INT 14 vector changed

 28h	INT 08 vector changed

 29h	DPMI error

 2Ah	TSR buffer too small (or nonexistent)

 2Bh	out of asynchronous resources

 2Ch	out of timer resources

 2Dh	out of "other" timer resources

 2Eh	file I/O error

 2Fh	hardware memory > 64K

INT 14 8000


14 8000 Bitfields for state flag :

Copy to Main

Table 0253

Bitfields for state flag :

Bit(s)	Description

 0	port is active

 1	output throttled (XOFF received, or DSR or CTS reset)

 2	input throttled (XOFF sent, or DTR or RTS reset)

INT 14 8000


14 8002 Format of ARTICOM redirector status:

Copy to Main

Table 0254

Format of ARTICOM redirector status:

Offset	Size	Description

 00h	WORD	redirector major and minor version numbers

 02h	WORD	redirectable ports found

 04h	WORD	redirectable ports + local ports found

 06h	WORD	redirector internal buffer size

 08h	WORD	maximum servers maintained

 0Ah	WORD	number of adapters found

INT 14 8002


14 8003 Values for ARTICOM error codes:

Copy to Main

Table 0255

Values for ARTICOM error codes:

 00h	"No error"

 01h	"An invalid port number was specified"

 02h	"Port is already redirected"

 03h	"Too many ports redirected"

 04h	"Cannot locate the server"

 05h	"Server is busy"

 06h	"Access denied"

 07h	"Resource in use"

 08h	"Resource in use - request queued"

 09h	"No such resource"

 0Ah	"Invalid username/password pair"

 0Bh	"Noncompatible version number"

 0Ch	"Can't remove from memory"

 0Dh	"Bad NETBIOS adapter number"

 0Eh	"No more entries in list"

 0Fh	"Resource is not available at this time"

 10h	"Invalid value to INT 14 call"

INT 14 8003


14 8004 Format of ARTICOM attachment structure:

Copy to Main

Table 0256

Format of ARTICOM attachment structure:

Offset	Size	Description

 00h 16 BYTEs	server to look for attach

 10h 16 BYTEs	attach to resource name

 20h 16 BYTEs	username for attach

 30h 16 BYTEs	password for username or resource

 40h	BYTE	attach type

00h normal

01h queue if resource is in use (not yet supported in v1.00)

INT 14 8004


14 8006 Format of ARTICOM resource information structure:

Copy to Main

Table 0257

Format of ARTICOM resource information structure:

Offset	Size	Description

 00h	BYTE	00h = free, else used

 01h 16 BYTEs	resource name

 11h 16 BYTEs	username of resource user

 21h	WORD	amount of time used

 23h	WORD	amount of time remaining

 53h 48 BYTEs	description of resource

 93h 64 BYTEs	initialization string for modem

 B3h 32 BYTEs	dial string for modem

 D3h 32 BYTEs	hang-up string for modem

INT 14 8006


14 8007 Format of ARTICOM port information structure:

Copy to Main

Table 0258

Format of ARTICOM port information structure:

Offset	Size	Description

 00h 16 BYTEs	server name resource is on

 10h	BYTE	adapter number server is on

 11h 16 BYTEs	resource name

 21h	WORD	remote port index, use to get additional information

 23h	WORD	buffer size

 25h	WORD	baud rate (see #0259)

 26h	BYTE	modem status register

 27h	BYTE	modem control register

 28h	BYTE	line status register

 29h	BYTE	line control register

 2Ah	BYTE	flow control in use: 0 - NONE, 1 - XON/XOFF, 2 - RTS/CTS

 2Bh	WORD	send timeout in ticks

 2Dh	WORD	receive timeout in ticks

 2Fh	WORD	time used on remote port

 31h	WORD	time left before timeout

 33h	BYTE	if server changes allowed?

 34h	WORD	FFFFh (-1) if connection ok, else old port index

INT 14 8007


14 8007 Values for ARTICOM baud rate:

Copy to Main

Table 0259

Values for ARTICOM baud rate:

 00h	110

 01h	150

 02h	300

 03h	600

 04h	1200

 05h	2400

 06h	4800

 07h	9600

 08h	19200

 09h	38400

 0Ah	57600

 0Bh	115200

 0Ch	134.5

 0Dh	1800

 0Eh	2000

 0Fh	3600

 10h	7200

SeeAlso: #0206

INT 14 8007


14 8008 Format of ARTICOM server name structure:

Copy to Main

Table 0260

Format of ARTICOM server name structure:

Offset	 Size	  Description

  00h 16 BYTEs	  (call) ASCIZ server name

  10h	 BYTE	  (ret) the adapter server is found

INT 14 8008


14 8025 Values ARTICOM trap function is called with:

Copy to Main

Table 0261

Values ARTICOM trap function is called with:

AH = operation

    80h reading character

    81h writing character

AL = character

Return: AX must be preserved

far JUMP to old trap function (see AX=8035h)

INT 14 8025


14 81-- Format of COMM-DRV port control block:

Copy to Main

Table 0262

Format of COMM-DRV port control block:

Offset	Type	Description

 00h	WORD	port IO address

 02h	WORD	port IRQ

 04h	WORD	baud rate

 06h	WORD	parity

 08h	WORD	data bits

 0Ah	WORD	stop bits

 0Ch	WORD	break status (0000h off)

 0Eh	WORD	flow control protocol

 10h	BYTE	input block

 11h	BYTE	output block

 12h	WORD	low threshold

 14h	WORD	high threshold

 16h	WORD	segment of buffer

 18h	WORD	offset of buffer

 1Ah	WORD	input buffer length

 1Ch	WORD	output buffer length

 1Eh	BYTE	auxiliary address

 1Fh	BYTE	spare

 20h  4 WORDs	spares

INT 14 81--


14 8100 Format of VFOSSIL information:

Copy to Main

Table 0263

Format of VFOSSIL information:

Offset	Size	Description

 00h	WORD	size of information in bytes, including this field

 02h	WORD	VFOSSIL major version

 04h	WORD	VFOSSIL revision level

 06h	WORD	highest VFOSSIL application function supported

INT 14 8100


14 8101 Format of VFOSSIL application function table:

Copy to Main

Table 0264

Format of VFOSSIL application function table:

Offset	Size	Description

 00h	DWORD	-> function to query current video mode (VioGetMode)(see #0269)

 04h	DWORD	-> function to set video mode (VioSetMode) (see #0270)

 08h	DWORD	-> function to query hardware config (VioGetConfig) (see #0271)

 0Ch	DWORD	-> function to write data in TTY mode (VioWrtTTY) (see #0272)

 10h	DWORD	-> function to get current ANSI state (VioGetANSI) (see #0273)

 14h	DWORD	-> function to set new ANSI state (VioSetANSI) (see #0274)

 18h	DWORD	-> function to get curr cursor position (VioGetCurPos)

  (see #0275)

 1Ch	DWORD	-> function to set cursor position (VioSetCurPos) (see #0276)

 20h	DWORD	-> function to get cursor shape (VioGetCurType) (see #0277)

 24h	DWORD	-> function to set cursor shape (VioSetCurType) (see #0278)

 28h	DWORD	-> function to scroll screen up (VioScrollUp) (see #0279)

 2Ch	DWORD	-> function to scroll screen down (VioScrollDn) (see #0280)

 30h	DWORD	-> function to read cell string from screen (VioReadCellStr)

  (see #0281)

 34h	DWORD	-> function to read char string from screen (VioReadCharStr)

  (see #0282)

 38h	DWORD	-> function to write a cell string (VioWrtCellStr)

  (see #0283)

 3Ch	DWORD	-> function to write char string, leaving attr (VioWrtCharStr)

  (see #0284)

 40h	DWORD	-> function to write char string,const attr (VioWrtCharStrAttr)

  (see #0285)

 44h	DWORD	-> function to replicate an attribute (VioWrtNAttr)

  (see #0286)

 48h	DWORD	-> function to replicate a cell (VioWrtNCell)

  (see #0287)

 4Ch	DWORD	-> function to replicate a character (VioWrtNChar)

  (see #0288)

INT 14 8101


14 8101 Format of VFOSSIL video mode data structure:

Copy to Main

Table 0265

Format of VFOSSIL video mode data structure:

Offset	Size	Description

 00h	WORD	length of structure including this field

 02h	BYTE	mode characteristics

bit 0: clear if MDA, set otherwise

bit 1: graphics mode

bit 2: color disabled (black-and-white)

 03h	BYTE	number of colors supported (1=2 colors, 4=16 colors, etc)

 04h	WORD	number of text columns

 06h	WORD	number of text rows

 08h	WORD	reserved

 0Ah	WORD	reserved

 0Ch	DWORD	reserved

INT 14 8101


14 8101 Format of VFOSSIL video configuration data:

Copy to Main

Table 0266

Format of VFOSSIL video configuration data:

Offset	Size	Description

 00h	WORD	structure length including this field

 02h	WORD	adapter type

00h monochrome/printer

01h CGA

02h EGA

03h VGA

07h 8514/A

 04h	WORD	display type

00h monochrome

01h color

02h enhanced color

09h 8514

 06h	DWORD	adapter memory size

INT 14 8101


14 8101 Format of VFOSSIL cursor type record:

Copy to Main

Table 0267

Format of VFOSSIL cursor type record:

Offset	Size	Description

 00h	WORD	cursor start line

 02h	WORD	cursor end line

 04h	WORD	cursor width (always 01h)

 06h	WORD	cursor attribute (FFFFh = hidden)

INT 14 8101


14 8101 Values for VFOSSIL error code:

Copy to Main

Table 0268

Values for VFOSSIL error code:

 0000h	successful

 0074h	internal VIO failure

 0163h	unsupported mode

 0166h	invalid row value

 0167h	invalid column value

 017Eh	buffer too small

 01A5h	invalid VIO parameter

 01B4h	invalid VIO handle

INT 14 8101


14 8101 Call VioGetMode with:

Copy to Main

Table 0269

Call VioGetMode with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to video mode data structure (see #0265)

Return: AX = error code (00h, 74h, 17Eh, 1B4h) (see #0268)

SeeAlso: #0270

INT 14 8101


14 8101 Call VioSetMode with:

Copy to Main

Table 0270

Call VioSetMode with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to video mode data structure (see #0265)

Return: AX = error code (00h, 74h, 163h, 17Eh, 1A5h, 1B4h) (see #0268)

SeeAlso: #0269

INT 14 8101


14 8101 Call VioGetConfig with:

Copy to Main

Table 0271

Call VioGetConfig with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to video configuration data buffer (see #0266)

Return: AX = error code (00h, 74h, 17Eh, 1B4h) (see #0268)

INT 14 8101


14 8101 Call VioWrtTTY with:

Copy to Main

Table 0272

Call VioWrtTTY with:

STACK:	WORD	VIO handle (must be 00h)

WORD	length of string

DWORD	pointer to character string to be written to screen

Return: AX = error code (00h, 74h, 1B4h) (see #0268)

Notes:	write wraps at end of line and terminates if it reaches end of screen

in ANSI mode, ANSI control sequences are interpreted, and this func is

  not required to be reentrant; in non-ANSI mode, the function is

  reentrant and may be called from within an MS-DOS function call

INT 14 8101


14 8101 Call VioGetANSI with:

Copy to Main

Table 0273

Call VioGetANSI with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to WORD which will be set to 00h if ANSI is off

or 01h if ANSI is on

Return: AX = error code (00h, 74h, 1B4h) (see #0268)

SeeAlso: #0274

INT 14 8101


14 8101 Call VioSetANSI with:

Copy to Main

Table 0274

Call VioSetANSI with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to WORD indicating new state of ANSI

00h off, 01h on

Return: AX = error code (00h, 74h, 1A4h, 1B4h) (see #0268)

SeeAlso: #0273

INT 14 8101


14 8101 Call VioGetCurPos with:

Copy to Main

Table 0275

Call VioGetCurPos with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to WORD to hold current cursor column (0-based)

DWORD	pointer to WORD to hold current cursor row (0-based)

Return: AX = error code (00h, 74h, 1B4h) (see #0268)

SeeAlso: #0276

INT 14 8101


14 8101 Call VioSetCurPos with:

Copy to Main

Table 0276

Call VioSetCurPos with:

STACK:	WORD	VIO handle (must be 00h)

WORD	cursor column

WORD	cursor row

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	if either coordinate is invalid, the cursor is not moved

SeeAlso: #0275

INT 14 8101


14 8101 Call VioGetCurType with:

Copy to Main

Table 0277

Call VioGetCurType with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to cursor type record (see #0267)

Return: AX = error code (00h, 74h, 1B4h) (see #0268)

SeeAlso: #0278

INT 14 8101


14 8101 Call VioSetCurType with:

Copy to Main

Table 0278

Call VioSetCurType with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to cursor type record (see #0267)

Return: AX = error code (00h, 74h, 1A4h, 1B4h) (see #0268)

SeeAlso: #0279

INT 14 8101


14 8101 Call VioScrollUp with:

Copy to Main

Table 0279

Call VioScrollUp with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to char/attr cell for filling emptied rows

WORD	number or rows to scroll (FFFFh = clear area)

WORD	right column of scroll area

WORD	bottom row of scroll area

WORD	left column of scroll area

WORD	top row of scroll area

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

SeeAlso: #0280,INT 10/AH=06h

INT 14 8101


14 8101 Call VioScrollDn with:

Copy to Main

Table 0280

Call VioScrollDn with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to char/attr cell for filling emptied rows

WORD	number or rows to scroll (FFFFh = clear area)

WORD	right column of scroll area

WORD	bottom row of scroll area

WORD	left column of scroll area

WORD	top row of scroll area

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

SeeAlso: #0279,INT 10/AH=07h

INT 14 8101


14 8101 Call VioReadCellStr with:

Copy to Main

Table 0281

Call VioReadCellStr with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start reading

WORD	row at which to start reading

DWORD	pointer to WORD containing length of buffer in bytes

on return, WORD contains number of bytes actually read

DWORD	pointer to buffer for cell string

Return: AX = error code (00h, 74h, 166h ,167h, 1B4h) (see #0268)

INT 14 8101


14 8101 Call VioReadCharStr with:

Copy to Main

Table 0282

Call VioReadCharStr with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start reading

WORD	row at which to start reading

DWORD	pointer to WORD containing length of buffer in bytes

on return, WORD contains number of bytes actually read

DWORD	pointer to buffer for character string

Return: AX = error code (00h, 74h, 166h ,167h, 1B4h) (see #0268)

INT 14 8101


14 8101 Call VioWrtCellStr with:

Copy to Main

Table 0283

Call VioWrtCellStr with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start writing

WORD	row at which to start writing

WORD	length of cell string in bytes

DWORD	pointer to cell string to write

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	write wraps at end of line and terminates if it reaches end of screen

INT 14 8101


14 8101 Call VioWrtCharStr with:

Copy to Main

Table 0284

Call VioWrtCharStr with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start writing

WORD	row at which to start writing

WORD	length of character string

DWORD	pointer to character string to write

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	write wraps at end of line and terminates if it reaches end of screen

INT 14 8101


14 8101 Call VioWrtCharStrAttr with:

Copy to Main

Table 0285

Call VioWrtCharStrAttr with:

STACK:	WORD	VIO handle (must be 00h)

DWORD	pointer to attribute to be applied to each character

WORD	column at which to start writing

WORD	row at which to start writing

WORD	length of character string

DWORD	pointer to character string to write

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	write wraps at end of line and terminates if it reaches end of screen

INT 14 8101


14 8101 Call VioWrtNAttr with:

Copy to Main

Table 0286

Call VioWrtNAttr with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start writing

WORD	row at which to start writing

WORD	number of times to write attribute

DWORD	pointer to display attribute to replicate

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	write wraps at end of line and terminates if it reaches end of screen

INT 14 8101


14 8101 Call VioWrtNCell with:

Copy to Main

Table 0287

Call VioWrtNCell with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start writing

WORD	row at which to start writing

WORD	number of times to write cell

DWORD	pointer to cell to replicate

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	write wraps at end of line and terminates if it reaches end of screen

INT 14 8101


14 8101 Call VioWrtNChar with:

Copy to Main

Table 0288

Call VioWrtNChar with:

STACK:	WORD	VIO handle (must be 00h)

WORD	column at which to start writing

WORD	row at which to start writing

WORD	number of times to write character

DWORD	pointer to character to replicate

Return: AX = error code (00h, 74h, 166h, 167h, 1B4h) (see #0268)

Note:	write wraps at end of line and terminates if it reaches end of screen

INT 14 8101


14 A0-- Values for 3com BAPI return code:

Copy to Main

Table 0289

Values for 3com BAPI return code:

 00h	successful

 01h	no characters written

 02h	no characters read

 03h	no such session

 04h	clearinghouse name not found

 05h	no response from host

 06h	no more sessions available

 07h	session aborted

 08h	invalid clearinghouse name

 09h	not supported

 0Ah	internal (general) network error

 0Bh	out of memory

 0Ch	invalid IP address

INT 14 A0--


14 A1-- Format of Interconnections TES status array entry:

Copy to Main

Table 0290

Format of Interconnections TES status array entry:

Offset	Size	Description

 00h	BYTE	status

 01h	WORD	offset of name

INT 14 A1--


14 AA0B Bitfields for DimVGA hotkey shift state:

Copy to Main

Table 0291

Bitfields for DimVGA hotkey shift state:

Bit(s)	Description

 7-4	unused

 3	Alt key pressed

 2	Ctrl key pressed

 1	Left shift key pressed

 0	Right shift key pressed

INT 14 AA0B


14 E0-- Values for TelAPI status:

Copy to Main

Table 2621

Values for TelAPI status:

 0000h-7FFFh	successful (session number)

 FED3h	(-301)	no session allocated, or out of TelAPI data space

 FF37h	(-201)	all sessions in use

 FFBDh	(-67)	unknown hostname

 FFC0h	(-64)	host not functioning

 FFC3h	(-61)	connection attempt refused

 FFC4h	(-60)	connection attempt timed out

 FFC8h	(-56)	socket already connected

 FFCDh	(-51)	network is unreachable

 FFDDh	(-35)	operation would block

INT 14 E0--


14 E000 Format of MX5 Extended FOSSIL status block:

Copy to Main

Table 0292

Format of MX5 Extended FOSSIL status block:

Offset	Size	Description

 00h	BYTE	flag: active (00h no, 01h yes)

 01h	BYTE	MNP level (2,4,5)

 02h	BYTE	series ID from remote MNP

 03h	DWORD	total packets transmitted

 07h	DWORD	duplicate packets transmitted

 0Bh	DWORD	maximum speed

 0Fh	DWORD	total packets received

 13h	DWORD	duplicate packets received

 17h	DWORD	maximum speed

INT 14 E000


14 E4-- Format of TelAPI Telnet command/option argument:

Copy to Main

Table 2627

Format of TelAPI Telnet command/option argument:

Offset	Size	Description

 00h  5 WORD	numeric arguments

 0Ah	DWORD	-> ASCIZ string

SeeAlso: #2628

INT 14 E4--


14 E4-- Values for TelAPI Telnet command/option identifier:

Copy to Main

Table 2628

Values for TelAPI Telnet command/option identifier:

 01h	ASCII	args: none

 02h	BINARY	args: none

 03h	LOCALECHO	args: none	client echos data

 04h	REMOTEECHO	args: none	server echos data

 05h	SGA	args: none	Suppress Go-Ahead signal

 07h	CHARMODE	args: none	no line-buffering

 08h	LINEMODE	args: -> erase-line ch	perform line-buffering

 09h	RECVEOL	args: EOL type

 0Ah	SENDEOL	args: EOL type

 0Bh	EOR	args: none	enable end-of-record sequence

 0Dh	BREAK	args: -> break char

 0Eh	VERBOSE	args: verbosity	display Telnet negotiations?

 0Fh	AYT	args: -> AYT escape ch

 10h	AO	args: -> AO escape char

 11h	IP	args: -> IP escape char

 12h	EC	args: -> escape char

 13h	EL	args: -> escape char

 14h	STATUS	args: type; returns data in structure

 18h	TERMTYPE	args: -> terminal type

 19h	ATTACHPORT	args: port number ; returns session number

 1Bh	TRANSMIT_EOR	args: EOR enabled	append EOR to every telwrite?

SeeAlso: #2627

INT 14 E4--


14 EA-- Format of TelAPI Telnet connection status information:

Copy to Main

Table 2629

Format of TelAPI Telnet connection status information:

Offset	Size	Description

 00h  4 BYTEs	remote host IP address

 04h 20 BYTEs	reserved

 18h	WORD	local port number

 1Ah	BYTE	connection mode (00h = ASCII, 01h = Binary)

 1Bh	BYTE	echo flag (00h local, 01h remote)

 1Ch	BYTE	SGA flag (00h will, 01h won't)

 1Dh	BYTE	EOR negotation flag (00h do negotiate, 01h don't)

 1Eh	BYTE	buffering (00h line mode, 01h character mode)

 1Fh	BYTE	reserved

 20h	BYTE	verbose flag (00h no, 01h verbose mode)

 21h	BYTE	received EOL (00h no xlat, 01h CR, 02h LF, 03h CRLF)

 22h	BYTE	sent EOL (00h no translation, 01h CR, 02h LF)

 23h	BYTE	break character

 24h	BYTE	IP escape character

 25h	BYTE	AO escape character

 26h	BYTE	AYT escape character

 27h	BYTE	EC escape character

 28h	BYTE	EL escape character

 29h 41 BYTEs	ASCIZ Telnet-negotiated terminal type

 52h  9 BYTEs	session ID

SeeAlso: #2630

INT 14 EA--


14 EB-- Format of TelAPI session status information [array]:

Copy to Main

Table 2630

Format of TelAPI session status information [array]:

Offset	Size	Description

 00h	BYTE	session state (00h available, 01h connected)

 01h  9 BYTEs	session ID if connected

 0Ah	WORD	attached COM port if connected, FFFFh if not

SeeAlso: #2629

INT 14 EB--


14 FFFC Bitfields for INT 14h flags:

Copy to Main

Table 0293

Bitfields for INT 14h flags:

Bit(s)	Description

 0	port active for INT 14h

 1	interface behaving like a FOSSIL driver

INT 14 FFFC


14 FFFF Format of COMM-DRV information area:

Copy to Main

Table 0294

Format of COMM-DRV information area:

Offset	Size	Description

 00h  8 BYTEs	signature "COMM-DRV"

 08h  2 BYTEs	00h,00h

 0Ah	DWORD	-> direct address mapping table

 0Eh	DWORD	previous INT 14 vector

INT 14 FFFF


15 01-- Format of Amstrad NVRAM:

Copy to Main

Table 0295

Format of Amstrad NVRAM:

Offset	Size	Description

 00h	BYTE	time of day: seconds

 01h	BYTE	alarm time: seconds

 02h	BYTE	time of day: minutes

 03h	BYTE	alarm time: minutes

 04h	BYTE	time of day: hours

 05h	BYTE	alarm time: hours

 06h	BYTE	day of week, 1 = Sunday

 07h	BYTE	day of month

 08h	BYTE	month

 09h	BYTE	year mod 100

 0Ah	BYTE	RTC status register A (see #0296)

 0Bh	BYTE	RTC status register B (see #0297)

 0Ch	BYTE	RTC status register C (read-only) (see #0298)

 0Dh	BYTE	RTC status register D

bit 7: battery good

 0Eh  6 BYTEs	time and date machine last used

 14h	BYTE	user RAM checksum

 15h	WORD	Enter key scancode/ASCII code

 17h	WORD	Forward delete key scancode/ASCII code

 19h	WORD	Joystick fire button 1 scancode/ASCII code

 1Bh	WORD	Joystick fire button 2 scancode/ASCII code

 1Dh	WORD	mouse button 1 scancode/ASCII code

 1Fh	WORD	mouse button 2 scancode/ASCII code

 21h	BYTE	mouse X scaling factor

 22h	BYTE	mouse Y scaling factor

 23h	BYTE	initial VDU mode and drive count

 24h	BYTE	initial VDU character attribute

 25h	BYTE	size of RAM disk in 2K blocks

 26h	BYTE	initial system UART setup byte

 27h	BYTE	initial external UART setup byte

 28h 24 BYTEs	available for user application

Note:	bytes 00h-0Dh are the same on the IBM AT as they are used/updated by

  the clock chip

INT 15 01--


15 01-- Bitfields for RTC status register A:

Copy to Main

Table 0296

Bitfields for RTC status register A:

Bit(s)	Description

 7	set if date/time being updated

 6-4	time base speed, default 010 = 32768 Hz

 3-0	interrupt rate selection, default 0110 = 1024 Hz

INT 15 01--


15 01-- Bitfields for RTC status register B:

Copy to Main

Table 0297

Bitfields for RTC status register B:

Bit(s)	Description

 7	clear if normal update, set if abort update

 6	periodic interrupt enable

 5	alarm interrupt enable

 4	update end interrupt enable

 3	square wave enable

 2	date mode (clear = BCD, set = binary)

 1	24-hour format

 0	daylight saving time enable

INT 15 01--


15 01-- Bitfields for RTC status register C:

Copy to Main

Table 0298

Bitfields for RTC status register C:

Bit(s)	Description

 7	IRQF flag

 6	PF flag

 5	AF flag

 4	UF flag

INT 15 01--


15 02-- Values for Cassette status:

Copy to Main

Table 0299

Values for Cassette status:

 00h	successful

 01h	CRC error

 02h	bad tape signals

 04h	no data

 80h	invalid command

 86h	no cassette present

INT 15 02--


15 04-- Format of ABIOS System Parameter Table:

Copy to Main

Table 0300

Format of ABIOS System Parameter Table:

Offset	Size	Description

 00h	DWORD	FAR address of ABIOS Common Start Routine

 04h	DWORD	FAR address of ABIOS Interrupt Routine

 08h	DWORD	FAR address of ABIOS Time-out Routine

 0Ch	WORD	number of bytes of stack required by this ABIOS implementation

 0Eh 16 BYTEs	reserved

 1Eh	WORD	number of entries in initialization table

INT 15 04--


15 05-- Format of one entry of ABIOS Initialization Table:

Copy to Main

Table 0301

Format of one entry of ABIOS Initialization Table:

Offset	Size	Description

 00h	WORD	device ID (see #0302)

 02h	WORD	number of Logical IDs

 04h	WORD	Device Block length (zero for ABIOS patch or extension)

 06h	DWORD	-> init routine for Device Block and Function Transfer Table

 0Ah	WORD	request block length

 0Ch	WORD	Function Transfer Table length (zero for a patch)

 0Eh	WORD	Data Pointers length (in Common Data Area)

 10h	BYTE	secondary device ID (hardware level this ABIOS ver supports)

 11h	BYTE	revision (device driver revision level this ABIOS supports)

 12h  6 BYTEs	reserved

INT 15 05--


15 05-- Values for ABIOS device ID:

Copy to Main

Table 0302

Values for ABIOS device ID:

 00h	ABIOS internal calls

 01h	floppy disk

 02h	hard disk

 03h	video

 04h	keyboard

 05h	parallel port

 06h	serial port

 07h	system timer

 08h	real-time clock

 09h	system services

 0Ah	NMI

 0Bh	mouse

 0Eh	CMOS RAM

 0Fh	DMA

 10h	Programmable Option Select (POS)

 16h	keyboard password

INT 15 05--


15 1016 Values for DESQview object type:

Copy to Main

Table 0303

Values for DESQview object type:

 00h	window/task

 01h	mailbox

 02h	keyboard

 03h	timer

 04h	pointer

 05h	panel

 06h	objectq

INT 15 1016


15 1016 Format of DESQview object:

Copy to Main

Table 0304

Format of DESQview object:

Offset	Size	Description

 00h	WORD	offset in common memory of previous object of same type

 02h	WORD	offset in common memory of next object of same type

 04h	WORD	signature FEDCh (DV 2.42-)

signature FEDCh or object number (DV 2.50+)

 06h	WORD	object type (see #0303)

 08h	DWORD	object handle to return to caller

 0Ch	DWORD	canonicalized object address (segment = common memory)

 10h	WORD	offset in common memory of owning task

(0000h for unowned OBJECTQs)

 12h	WORD	mapping context

offset in common memory of mapping context record (see #0306)

remainder varies by object type and DESQview version

---v2.42 keyboard object---

 14h	WORD	flag bits (see also AH=12h/BH=0Ah"OBJECT")

bit 15: keyboard opened

 16h  4 BYTEs	???

 1Ah	WORD	priority in OBJECTQ???

 1Ch	...

 25h	WORD	offset in common memory of ??? task

 27h  4 BYTEs	???

---v2.42 objectq object---

 14h	WORD	flag bits (see also AH=12h/BH=0Ah"OBJECT")

bit 15: OBJECTQ opened

 16h  2 BYTEs	???

 18h	WORD	offset in common memory of ??? task

 1Ah  6 BYTEs	???

---v2.42 mailbox object---

 14h	WORD	flag bits (see also AH=12h/BH=0Ah"OBJECT")

bit 15: mailbox opened

 1Ah	WORD	priority in OBJECTQ???

 1Ch  6 BYTEs	???

 22h	WORD	offset in common memory of mailbox name (counted string)

0000h if no name

     <= 5 BYTEs ???

---v2.22-2.42,2.52,2.60 window/task object---

 14h	BYTE	00h window, 01h task

 15h	BYTE	internal (not Switch menu) window number???

 16h	BYTE	internal (not Switch menu) window number???

 17h	WORD	segment of internal window record (see #0307)

 19h  2 BYTEs	???

 1Bh	BYTE	cursor row

 1Ch	BYTE	cursor column

 1Dh	BYTE	visible window origin, row

 1Eh	BYTE	visible window origin, column

 1Fh	BYTE	window height (logical)

 20h	BYTE	window width (logical)

 21h	BYTE	window position, row

 22h	BYTE	window position, column

 23h	BYTE	window height (visible)

 24h	BYTE	window width (visible)

 25h	BYTE	row of top of frame (or window if unframed)

 26h	BYTE	column of left of frame (or window if unframed)

 27h	BYTE	window height (physical, including frame)

 28h	BYTE	window width (physical, including frame)

 29h	BYTE	unzoomed visible origin, row (00h before first zoom)

 2Ah	BYTE	unzoomed visible origin, column (00h before first zoom)

 2Bh	BYTE	unzoomed window position, row (00h before first zoom)

 2Ch	BYTE	unzoomed window position, column (00h before first zoom)

 2Dh	BYTE	unzoomed window height (00h before first zoom)

 2Eh	BYTE	unzoomed window width (00h before first zoom)

unzoomed parameters above are updated when window is zoomed

  to full screen

 2Fh	BYTE	??? initially logical window height

 30h	BYTE	??? initially logical window width

 31h  2 BYTEs	???

 33h	BYTE	minimum height of window

 34h	BYTE	minimum width of window

 35h	BYTE	maximum height of window

 36h	BYTE	maximum width of window

 37h  3 BYTEs	???

 3Ah  8 BYTEs	window frame characters: ul,ur,ll,lr,t,b,l,r

 42h 24 BYTEs	attributes???

 5Ah  8 BYTEs	window frame characters: ul,ur,ll,lr,t,b,l,r

 62h  3 BYTEs	???

 65h	BYTE	??? bitflags

 66h	BYTE	bit 0: window is zoomed

 67h	BYTE	???

 68h	WORD	offset in common memory of window name or 0000h if untitled

 6Ah	WORD	length of window name

 6Ch  2 BYTEs	???

 6Eh	WORD	offset of logical cursor in window (in character cells)

 70h	DWORD	pointer to field table for window

 74h	BYTE	???

 75h  2 BYTEs	???

 77h	BYTE	number of last-visited field

 78h	DWORD	pointer to field table entry for last-visited field

 7Ch  3 BYTEs	???

 7Fh	BYTE	select field marker character

 80h	BYTE	??? bit flags

bit 0: allow ECh window stream opcode to change reverse logattr

bit 1: alternate field processing mode selected

 81h	BYTE	???

 82h	DWORD	notification function (manager stream opcode 8Ah)

no notification if segment = 0000h

 86h	DWORD	notification argument (manager stream opcode 8Bh)

 8Ah	WORD	offset in common memory of ??? window object or 0000h

 8Ch	WORD	offset in common memory of ??? window object or 0000h

 8Eh	WORD	offset in common memory of ??? window object or 0000h

 90h	BYTE	??? bitflags

 91h	BYTE	???

 ---task object only

 92h	BYTE	bit flags (bits 0-4)

 93h	BYTE	character for ??? (default 20h)

 94h	BYTE	??? flag

 95h	WORD	offset in common memory of ???

 97h  2 BYTEs	???

 99h	WORD	???

 9Bh	BYTE	??? bit flags

bit 3: ???

bit 6: perform protected-attribute processing on select fields

 9Ch	BYTE	???

 9Dh	WORD	offset in common memory of current register save record

  (see #0305).	No register save record in use if < 01C0h

 9Fh	WORD	offset in common memory of task's keyboard object

 A1h	WORD	offset in common memory of task's OBJECTQ object

 A3h	WORD	offset in common memory of task's mailbox object

 A5h	WORD	semaphore: FFFFh if on user stack, else on task's private stack

 A7h	DWORD	user's SS:SP

 ABh	WORD	task's private SP (SS read from offset 0Ah)

 ADh  6 BYTEs	???

 B3h	BYTE	??? bit flags

bit 0: run in foreground only

 B4h	BYTE	???

 B5h	BYTE	??? bitflags

 B6h	BYTE	task status (see #0417 at AX=DE2Ch)

 B7h  9 BYTEs	???

 C0h	WORD	head pointer for keyboard buffer (wraps back to 00h after 80h)

 C2h	WORD	tail pointer for keyboard buffer (wraps back to 00h after 80h)

 C4h  2 BYTEs	??? (0000h)

 C6h	WORD	segment of keyboard buffer for task

 C8h	WORD	offset in common memory of ??? keyboard object

 CAh	BYTE	???

---v2.22-2.42

 CBh	WORD	offset in common memory of ??? object

 CEh	BYTE	??? flag

 CFh	WORD	offset in common memory of default notify window for task

  or 0000h if none

 D1h  4 BYTEs	???

 D5h	BYTE	window number on Switch Window menu

 D6h  5 BYTEs	???

 DBh	WORD	offset in common memory of ??? object

 DDh  2 BYTEs	???

 DFh	WORD	API level for task

 E1h	WORD	offset in common memory of object task is waiting on if task

  status is 'waiting', else 0000h

 E7h	WORD	segment of ???

 E9h 4	BYTEs	???

 EDh	WORD	EMS handle of virtualization buffer, 0000h if no virtualization

 F1h 12 BYTEs	???

 FBh	WORD	???

 FDh	BYTE	???

 FFh 12 BYTEs	???

10Bh	DWORD	pointer to process record (see #0308,#0309)

10Dh 10 BYTEs	???

119h	DWORD	SS:SP for ???

11Dh  4 BYTEs	???

121h	DWORD	pointer to ???

125h 25 BYTEs	???

13Eh	DWORD	pointer to ??? in system memory

---v2.22

142h  3 BYTEs	???

145h	task's default keyboard object

---v2.42

142h	DWORD	pointer to first task instance data record in system memory

148h	DWORD	pointer to last task instance data record in system memory

(see #0310)

14Ah	BYTE	???

14Dh 42 BYTEs	task's default keyboard object

177h 32 BYTEs	task's ObjectQ object

197h 41 BYTEs	task's default mailbox object

1C0h 24 BYTEs	first register save record

450h	--	default top of private stack

---v2.52 (probably all DV/X)

Same as v2.60 below except there is an extra 29 bytes inserted somewhere

  before offset 9Fh, but not yet known exactly where.  Also, for the WAIT_ON

  field (v2.60 offset E3h), some X apps (probably waiting on a socket) have

  0000h even when waiting.

---v2.60

 CBh	WORD	??? (added in 2.50 - rest is same as 2.42)

 CDh	WORD	offset in common memory of ??? object

 D0h	BYTE	??? flag

 D1h	WORD	offset in common memory of default notify window for task

  or 0000h if none

 D3h  4 BYTEs	???

 D7h	BYTE	window number on Switch Window menu

 D8h  5 BYTEs	???

 DDh	WORD	offset in common memory of ??? object

 DFh  2 BYTEs	???

 E1h	WORD	API level for task

 E3h	WORD	If status at B6h=waiting, offset in common memory of object

  that task is waiting on, else 0000h. (Task with CPU also

  has 0000h here)

 E9h	WORD	segment of ???

 EBh 4	BYTEs	???

 EFh	WORD	EMS handle of virtualization buffer, 0 if no virtualization

 F3h 12 BYTEs	???

 FDh	WORD	???

 FFh	BYTE	???

101h  8 BYTEs	???

109h	DWORD	pointer to process record in system memory

10Dh 14 BYTEs  ???

11Bh	DWORD	SS:SP for ???

11Fh  4 BYTEs	???

123h	DWORD	pointer to ???

127h 25 BYTEs	???

140h	DWORD	pointer to ??? in system memory

144h	DWORD	pointer to first task instance data record in system memory

148h	DWORD	pointer to last task instance data record in system memory

(from INT 15/AX=DE27h) (see #0310)

14Ch	BYTE	???

14Eh 42 BYTEs	task's default keyboard object

179h 32 BYTEs	task's ObjectQ object

199h 41 BYTEs	task's default mailbox object

1C2h 24 BYTEs	first register save record

452h	--	default top of private stack

INT 15 1016


15 1016 Format of DESQview Register Save Record:

Copy to Main

Table 0305

Format of DESQview Register Save Record:

Offset	Size	Description

 00h	WORD	AX

 02h	WORD	BX

 04h	WORD	CX

 06h	WORD	DX

 08h	WORD	DI

 0Ah	WORD	SI

 0Eh	WORD	DS

 10h	WORD	ES

 12h	DWORD	return address

 16h	WORD	original flags

INT 15 1016


15 1016 Format of DESQview mapping context record:

Copy to Main

Table 0306

Format of DESQview mapping context record:

Offset	Size	Description

 00h	WORD	lowest segment in process's memory

(often start of system memory chain)

 02h	WORD	size of process's memory in paragraphs

 04h	BYTE	flag: 00h if process swapped out, 01h otherwise

 05h	BYTE	flag: 00h if allocated in conventional memory, 01h if EMS

 06h  2 BYTEs	???

 08h	WORD	EMS handle if in EMS, else 0

 0Ah  2 BYTEs	??? (nonzero if system memory resides in shared mem???)

 0Ch	WORD	segment of system memory block that contains process record,

  referenced from segment of start of system memory chain

 0Eh	BYTE	???

 0Fh	WORD	size of system memory block that contains process record

  and DOS memory in paragraphs

 11h	BYTE	bit flags

Bit 0: Swapped out???

Bit 1: ???

Bit 2: Swapped out???

 12h	BYTE	???

 13h	BYTE	reference count

 ---v2.31

 14h 10 BYTEs	???

 1Eh	WORD	segment of process record

 20h  2 BYTEs	???

 22h	WORD	segment of ???	(in first free system memory block???)

 24h	WORD	segment of end of system memory chain

 26h	WORD	segment of start of system memory chain

 28h  8 BYTEs	???

 2Ah	DWORD	pointer to ??? (process record???)

 2Dh 10 BYTEs	???

 37h	BYTE	lowest interrupt vector to save on context switch

 38h	BYTE	highest interrupt vector to save on context switch

 39h	WORD	offset in common memory of main task with this context

 3Ah 12 BYTEs	???

 46h	BYTE	internal mapping context number

 47h 12 BYTEs	???

 ---v2.5x-2.60

 14h  6 BYTEs	???

 1Ah	WORD	segment of process record

 1Ch  2 BYTEs	???

 1Eh	WORD	segment of first free system memory block

 20h	WORD	segment of start of system memory chain

 22h	WORD	segment of end of system memory chain

 24h 8	BYTEs	???

 2Ch	DWORD	pointer to ??? (1 segment into process record???)

 30h 3	BYTEs	???

 33h	WORD	Offset in common memory of main task with this context

 35h 7	BYTEs	???

 3Ch	BYTE	internal mapping context number

 3Dh 14 BYTEs	???

 4Bh	WORD	first DOS memory segment (first MCB segment+1)

 4Dh	BYTE	??? (flag???)

 ---v2.53 (2.5x???)

 4Eh 12 BYTEs	???

 ---v2.60

 4Eh	WORD	segment of script buffer (see #0311)

 50h  6 BYTEs	???

INT 15 1016


15 1016 Format of DESQview Internal Window Record (v2.31-2.60):

Copy to Main

Table 0307

Format of DESQview Internal Window Record (v2.31-2.60):

Offset	Size	Description

 00h	BYTE	internal window number???

 01h	BYTE	display page???

 02h	BYTE	video mode

 03h  3 BYTEs	???

 06h	BYTE	logical window height

 07h	BYTE	logical window width

 08h	DWORD	pointer to text video buffer

 0Ch 116 BYTEs	???

INT 15 1016


15 1016 Format of DESQview process record (v2.31):

Copy to Main

Table 0308

Format of DESQview process record (v2.31):

Offset	Size	Description

-470h 13 BYTEs	filename of ??? Script

-463h 1117 BYTEs ??? (script buffer???)

 -6h  6 BYTEs	???

 00h	WORD	segment of parent PSP in process

 02h  5 BYTEs	???

 07h	WORD	segment of current PSP in process

 09h	WORD	segment of first MCB in process

 0Bh 13 BYTEs	???

 18h 1024 BYTEs process's interrupt vector table

418h 376 BYTEs	???

590h	first MCB in process

INT 15 1016


15 1016 Format of DESQview process record (v2.52-v2.60) (probably also 2.5x):

Copy to Main

Table 0309

Format of DESQview process record (v2.52-v2.60) (probably also 2.5x):

Offset	Size	Description

 00h 28 BYTEs	EXE header of last EXE, ??? if last program run was COM

 1Ch ??? BYTEs	overwritten with ASCIZ filename of last program run (EXE/COM)

11Ch	WORD	segment of parent PSP in process

11Eh  4 BYTEs	???

122h	WORD	segment of current PSP

124h	WORD	segment of current PSP

126h	WORD	segment of first MCB in process

128h  4 BYTEs	???

12Ch	DWORD	pointer to first process instance data record in system memory

130h	DWORD	pointer to last process instance data record in system memory

(from INT 15/AX=DE27h) (see #0310)

134h  8 BYTEs	???

13Ch	WORD	size of current environment

13Eh	WORD	segment of current environment

140h	WORD	segment of current PSP

142h	DWORD	entry point of current program

146h 10 BYTEs	???

---v2.52 (v2.5x???)

150h	BYTE	???

151h	WORD	segment of parent PSP in process

153h	WORD	???

155h	WORD	???

157h	WORD	???

159h  4 BYTEs	???

15Dh	WORD	segment of current environment

15Fh	WORD	segment of current PSP

161h	WORD	segment of ???

162h	WORD	???

164h  3 BYTEs	???

168h 1024 BYTEs process's interrupt vector table

568h 120 BYTEs	???

5E0h	first MCB in process

---v2.60

150h	WORD	segment of parent PSP in process

152h	WORD	???

154h	WORD	???

156h	WORD	???

158h  4 BYTEs	???

15Ch	WORD	segment of current environment

15Eh	WORD	segment of current PSP

160h	WORD	segment of ???

162h	WORD	???

164h 1024 BYTEs process's interrupt vector table

564h 108 BYTEs	???

5D0h	first MCB in process

INT 15 1016


15 1016 Format of DESQview task or process instance data record (v2.5x???, v2.60):

Copy to Main

Table 0310

Format of DESQview task or process instance data record (v2.5x???, v2.60):

Offset	Size	Description

 00h	DWORD	pointer to next record of same type or 00000000

 04h	DWORD	pointer to previous record of same type or 00000000

 08h	DWORD	pointer to source area of memory during restore state

 0Ch	WORD	number of bytes to save/restore

 0Eh	DWORD	pointer to destination area of memory during restore state

 12h	WORD	??? (0)

 14h  N BYTEs	source memory buffer during restore state

INT 15 1016


15 1016 Format of DESQview script buffer (v2.60):

Copy to Main

Table 0311

Format of DESQview script buffer (v2.60):

Offset	Size	Description

 00h 13 BYTEs	ASCIZ Script filename

 0Dh 80 BYTEs	???

 5Eh  N BYTEs	script records (see #0312)

INT 15 1016


15 1016 Format of one DESQview script record (v2.60):

Copy to Main

Table 0312

Format of one DESQview script record (v2.60):

Offset	Size	Description

 00h	BYTE	signature 12h

 01h 18 BYTEs	blank-padded script name

 13h	BYTE	ASCII code of key attached to script or 0 if non-ASCII key

 14h	BYTE	scan code of key attached to script if non-ASCII, else 0

 15h	BYTE	???

 16h	WORD	size of script in bytes

 18h  N	BYTEs	script (ASCII code of each keystroke; if 0, next byte is

  scan code of non-ASCII key)

INT 15 1016


15 1016 Format of DESQview Common Memory Header (v2.31-2.60):

Copy to Main

Table 0313

Format of DESQview Common Memory Header (v2.31-2.60):

Offset	Size	Description

 00h	WORD	offset of lowest used block

 02h	WORD	bytes of commom memory, including header

 04h	WORD	offset of first free block

 06h  N BYTEs	size depends of DV version, ??? (DVP buffer???)

Note:	the above is located at the beginning of the commom memory segment

SeeAlso: #0314,#0315,#0323

INT 15 1016


15 1016 Format of DESQview Free block header:

Copy to Main

Table 0314

Format of DESQview Free block header:

Offset	Size	Description

 00h	WORD	size of block in bytes including header

 02h	WORD	offset of next free block

 04h  N BYTEs	free block

SeeAlso: #0313,#0315

INT 15 1016


15 1016 Format of DESQview Used block header:

Copy to Main

Table 0315

Format of DESQview Used block header:

Offset	Size	Description

 00h	WORD	size of block in bytes including header

 02h  N BYTEs	used block

SeeAlso: #0313,#0314

INT 15 1016


15 1023 Bitfields for TopView general window position:

Copy to Main

Table 0316

Bitfields for TopView general window position:

Bit(s)	Description

 0,1	horizontal position

00 = current, 01 = center, 10 = left, 11 = right

 2,3	vertical position

00 = current, 01 = center, 10 = top, 11 = bottom

 4	don't redraw screen if set

 5-7	not used

INT 15 1023


15 102C Format of .PIF/.DVP file:

Copy to Main

Table 0317

Format of .PIF/.DVP file:

Offset	Size	Description

 00h	BYTE	reserved (0)

 01h	BYTE	checksum of bytes 02h through 170h

 02h 30 BYTEs	blank-padded program title

 20h	WORD	maximum memory to allocate to partition in KB

 22h	WORD	minimum memory required in KB

 24h 64 BYTEs	ASCIZ program pathname

 64h	BYTE	default drive letter ('A',...)

 65h 64 BYTEs	ASCIZ default directory name

 A5h 64 BYTEs	ASCIZ program parameters

 E5h	BYTE	initial screen mode (0-7) (see also offset 189h)

 E6h	BYTE	number of text pages used

 E7h	BYTE	number of first interrupt to save

 E8h	BYTE	number of last interrupt to save

 E9h	BYTE	rows in virtual screen buffer

 EAh	BYTE	columns in virtual screen buffer

 EBh	BYTE	initial window position, row

 ECh	BYTE	initial window position, column

 EDh	WORD	system memory in KB

 EFh 64 BYTEs	ASCIZ shared program name

12Fh 64 BYTEs	ASCIZ shared program data file

16Fh	BYTE	program flags 1 (see #0318)

170h	BYTE	flags2

bit 6: uses command-line parameters in field at A5h

bit 5: swaps interrupt vectors

---information unique to .DVP files---

171h  2 BYTEs	keys to use on open menu

173h	WORD	size of script buffer in bytes

175h	WORD	automatically give up CPU after this many tests for keyboard

  input in one clock tick (default 0 = never)

177h	BYTE	nonzero = "uses own colors"

178h	BYTE	nonzero if application swappable

179h  3 BYTEs	reserved (0) according to Quarterdeck documentation

in actual .DVP files, frequently 01h

17Ch	BYTE	nonzero to automatically close on exit (see also #0320)

17Dh	BYTE	nonzero if copy-protect floppy is required

---information unique to DESQview 2.0+---

17Eh	BYTE	.DVP version number

00h DESQview v1.2+

01h DESQview v2.0+

02h DESQview v2.2+

17Fh	BYTE	reserved (0)

180h	BYTE	initial number of rows in physical window

181h	BYTE	initial number of columns in physical window

182h	WORD	maximum expanded memory to allow, in KB

184h	BYTE	DVP program flags 3 (see #0319)

185h	BYTE	keyboard conflict level (0-4 for DV<2.26, 00h-0Fh for DV2.26+)

(see #0321)

186h	BYTE	number of graphics pages used

187h	WORD	extra system memory size

189h	BYTE	initial screen mode (FFh = default) (overrides offset E5h)

---information unique to DESQview 2.2+---

18Ah	BYTE	serial port usage

FFh uses all serial ports

00h no serial ports

01h only COM1

02h only COM2

18Bh	BYTE	DVP program flags 4 (see #0320)

18Ch	BYTE	protection level for 386 machines

18Dh 19 BYTEs	reserved (0) for regular DESQview

---information unique to DESQview/X 1.0---

18Dh	BYTE	X flags

bits 3-7: unused (0)

bit 2: don't display wait message when opening window

bit 1: don't display DOS window

bit 0: (XNEWPROC) use DOS client layer (DOS-to-X)

       (NEWPROC) inherit DOS client layer usage

18Eh	BYTE	X keyboard behavior (0-3)

18Fh	BYTE	font scaling

00h fixed fonts

01h scalable fonts

190h 10 BYTEs	reserved (0)

19Ah	WORD	length of data follownig XDVP signature

19Ch  4 BYTEs	signature "XDVP"

1A0h  N BYTEs	list of variable length records (see #0322)

INT 15 102C


15 102C Bitfields for .PIF/.DVP program flags 1:

Copy to Main

Table 0318

Bitfields for .PIF/.DVP program flags 1:

Bit(s)	Description

 7	writes text directly to screen

 6	runs in foreground only (see also offset 184h)

 5	uses math coprocessor

 4	accesses system keyboard buffer directly

 3-1	reserved (0)

 0	swappable

SeeAlso: #0317,#0319,#0320

INT 15 102C


15 102C Bitfields for .DVP program flags 3:

Copy to Main

Table 0319

Bitfields for .DVP program flags 3:

Bit(s)	Description

 7	automatically assign window position

 5	maximum memory value has been specified

 4	disallow "Close" command

 3	foreground-only when doing graphics

set by DV 2.3+ when "Runs in Background" = "D" (undoc)

 2	don't virtualize (see also #0320)

 1	foreground-only during DOS calls

set by DV 2.3+ when "Runs in Background" = "D" (undoc)

SeeAlso: #0317,#0318,#0320

INT 15 102C


15 102C Bitfields for .DVP program flags 4:

Copy to Main

Table 0320

Bitfields for .DVP program flags 4:

Bit(s)	Description

 7	automatically close application on exit if .COM or .EXE	specified

(see also #0317 offset 17Ch)

 6	swappable if not using serial ports

 5	start program with window hidden (v2.26+)

 4	start program in background (v2.26+)

 3	virtualize text (see also #0319)

 2	virtualize graphics (see also #0319)

 1	share CPU when foreground

 0	share EGA when foreground and zoomed

SeeAlso: #0317,#0318,#0319

INT 15 102C


15 102C Bitfields for DESQview keyboard conflict level:

Copy to Main

Table 0321

Bitfields for DESQview keyboard conflict level:

Bit(s)	Description

 3	save/restore entire INT 09 handler state every taskswtch

 2	take special precautions for programs which read the BIOS keyboard

  buffer directly from memory

 1	never indicate keystroke available during scripts/xfers

 0	only indicate keystroke available every sixth poll

SeeAlso: #0317

INT 15 102C


15 102C Format of DESQview/X variable length record:

Copy to Main

Table 0322

Format of DESQview/X variable length record:

Offset	Size	Description

 00h	WORD	length of following record, 0000h if end of record list

 02h	BYTE	record type

01h script filename, up to 64 characters

02h command-line parameters (allows >64 characters on cmdline)

03h environment inheritance

04h environment string

05h starting window position

---types 01h,02h,04h---

 03h  N BYTEs	ASCII data

---type 03h---

 03h	BYTE	inheritance

00h do not inherit

01h inherit environment

---type 05h---

 03h  N BYTEs	ASCII copy of fields as typed into DVPMAN, separated by commas:

starting row, starting column, starting height, starting width

Note:	if there are multiple occurrences of record types 01h, 02h, or 03h,

  only the last instance of each type is used; multiple occurrences of

  type 04h are concatenated

SeeAlso: #0317

INT 15 102C


15 102E Format of DESQview system memory block header:

Copy to Main

Table 0323

Format of DESQview system memory block header:

Offset	Size	Description

 00h	WORD	segment of next header or 0000h

 02h	WORD	segment of previous header or 0000h

 04h	WORD	size of block in paragraphs, including header

 06h	BYTE	availability flag (00h in use, 01h free)

Note:	this header is located one paragraph before the memory block proper

SeeAlso: #0313

INT 15 102E


15 11DE Call QEXT.SYS private entry point with:

Copy to Main

Table 0324

Call QEXT.SYS private entry point with:

AH = 00h ???

AH = nonzero ???

INT 15 11DE


15 12-- Format of TopView panel file:

Copy to Main

Table 0325

Format of TopView panel file:

Offset	Size	Description

 00h  2 BYTEs	C0h C3h

 02h	BYTE	number of panels in file

 03h	for each panel in file:

    8 BYTEs  blank-padded panel name

      DWORD  panel offset in file

      WORD   panel length

data for panels (each consists of one or more window/query/manager

  streams); first byte of each panel must be 1Bh, fifth byte must be

  E5h

INT 15 12--


15 12-- Format of DESQview pointer message:

Copy to Main

Table 0326

Format of DESQview pointer message:

Offset	Size	Description

 00h	WORD	row

 02h	WORD	column

 04h	BYTE	status (see #0327)

 05h	BYTE	field number or zero (APILEVEL >= 2.00 only)

INT 15 12--


15 12-- Bitfields for DESQview pointer status:

Copy to Main

Table 0327

Bitfields for DESQview pointer status:

Bit(s)	Description

 7-2	number of clicks-1 if multiple-click mode active

 7	set when press/release mode active and button pressed

 6	set when press/release mode active and button released

 1-0	button pressed (00=none,01=button1,10=button2)

INT 15 12--


15 12-- Format of stream data structure:

Copy to Main

Table 0328

Format of stream data structure:

Offset	Size	Description

 00h	BYTE	1Bh magic value identifying start of stream

 01h	BYTE	stream type (00h, 01h, 10h, 14h-1Fh legal)

(see #0329,#0335,#0336,#0337)

 02h	WORD	length of remainder of stream in bytes

var-length fields follow, each an OPCODE followed by

     zero or more args

INT 15 12--


15 12-- Values for MODE 00h (set or display values) "WINDOW STREAM" opcodes:

Copy to Main

Table 0329

Values for MODE 00h (set or display values) "WINDOW STREAM" opcodes:

Opcodes:args

 00h  display 20h blanks with the default attribute

 01h-1Fh display OPCODE blanks with the default attribute

 20h  display char with default attribute 20h times

BYTE char to repeat

 21h-3Fh display char with default attribute OPCODE-20h times

BYTE char to repeat

 40h  display 20h blanks with specified attribute

BYTE attribute of blanks

 41h-5Fh display OPCODE-40h blanks with specified attribute

BYTE attribute of blanks

 60h  display next 20h characters

20h BYTEs characters to display

 61h-7Fh display next OPCODE-60h characters

N BYTEs characters to display

 80h-87h display N blanks with default attribute

BYTE low 8 bits of 11-bit count (high 3 in low 3 bits of OPCODE)

  [000h means 800h]

 88h-8Fh display N copies of the character

BYTE low 8 bits of 11-bit count (high 3 in low 3 bits of OPCODE)

  [000h means 800h]

BYTE character to repeat

 90h-97h display N blanks with specified attribute

BYTE low 8 bits of 11-bit length (high 3 in low 3 bits of OPCODE)

  [000h means 800h]

BYTE attribute

 98h-9Fh display string at logical cursor pos

BYTE low 8 bits of 11-bit length (high 3 in low 3 bits of OPCODE)

  [000h means 800h]

N BYTEs string to display

 A0h  set logical cursor row

BYTE row number (0 is top)

 A1h  set logical cursor column

BYTE column number (0 is leftmost)

 A2h  set top edge of scrolling region

BYTE row

 A3h  set left edge of scrolling region

BYTE column

 A4h  set row of physical window position

BYTE line

 A5h  set column of physical window position

BYTE column

 A6h  set height of physical window

BYTE number of rows

 A7h  set width of physical window

BYTE number of columns

 A8h  set viewport row

BYTE row

 A9h  set viewport column

BYTE column

 AAh  set virtual screen height [contents of window unpredictable after]

BYTE rows

 ABh  set virtual screen width [contents of window unpredictable after]

BYTE columns

 ACh-AEh unused

 AFh  set compatible/preferred video modes

BYTE compatibility/preference mask

bit 7	compatible with monochrome

bit 6	compatible with color text, EGA/VGA graphics

bit 5	compatible with medium-resolution CGA graphics

bit 4	compatible with high-resolution CGA graphics

bit 3	prefer monochrome

bit 2	prefer color text, EGA/VGA graphics

bit 1	prefer medium-resolution CGA graphics

bit 0	prefer high-resolution CGA graphics

 B0h  move logical cursor down

BYTE number of rows (signed, negative values move up)

[if rows=0 and hardware cursor owner, update hardware cursor]

 B1h  move logical cursor right

BYTE number of columns (signed, negative values move left)

[if cols=0 and hardware cursor owner, update hardware cursor]

 B2h  shift top edge of scrolling region

BYTE number of rows (signed)

 B3h  shift left edge of scrolling region

BYTE number of columns (signed)

 B4h  shift physical window down

BYTE number of lines (signed)

 B5h  shift physical window right

BYTE number of columns (signed)

 B6h  expand physical window vertically

BYTE number of lines (signed)

 B7h  expand physical window horizontally

BYTE number of columns (signed)

 B8h  adjust viewport row

BYTE number of rows (signed)

 B9h  adjust viewport column

BYTE number of columns (signed)

 BAh  adjust virtual screen height [contents of window unpredict after]

BYTE number of rows to increase (signed)

 BBh  adjust virtual screen width [contents of window unpredictbl after]

BYTE number of columns to increase (signed)

 BCh-BFh reserved (currently unused)

 C0h  set logical cursor position

BYTE row number (0 is top border)

BYTE column number (0 is left border)

 C1h  set top left corner of scrolling region

BYTE row

BYTE column

 C2h  set physical window pos

BYTE upper left row (no top border if 0)

BYTE upper left column (no left border if 0)

 C3h  set current window size

BYTE number of rows

BYTE number of columns

 C4h  set upper left corner of viewport (portion of virtual screen displayed

  in window)

BYTE row

BYTE column

 C5h  set size of virtual screen [contents unpredictable afterwards]

BYTE number of rows

BYTE number of columns

 C6h  unused

 C7h  unused

 C8h  set logical cursor relative to current position

BYTE number of rows to move down (signed)

BYTE number of columns to move right (signed)

[if rows=cols=0 and hardware cursor owner, update hardw cursor]

 C9h  shift top left corner of scrolling region

BYTE number of rows (signed)

BYTE number of columns (signed)

 CAh  set window pos relative to current position

BYTE number of rows to shift down (signed)

BYTE number of columns to shift right (signed)

 CBh  set window size relative to current size

BYTE number of rows to expand (signed)

BYTE number of cols to expand (signed)

 CCh  shift viewport relative to current position

BYTE rows to shift (signed)

BYTE cols to shift (signed)

 CDh  resize virtual screen

BYTE number of rows to expand (signed)

BYTE number of columns to expand (signed)

 CEh  scroll text when using E8h-EBh/F8h-FBh opcodes (default)

 CFh  scroll attributes when using  E8h-EBh/F8h-FBh opcodes

 D0h  allow window frame to extend beyond screen

 D1h  always display a complete frame, even if window extends beyond edge of

  screen

 D2h  allow DV to change logical colors on video mode switch (default)

 D3h  application changes logical attributes

 D4h  window is visible [must redraw to actually make visible]

 D5h  window is hidden [must redraw to actually remove]

 D6h  window has frame (default)

 D7h  window unframed [must redraw to actually remove frame]

 D8h  READ/READN will read characters from window (default)

 D9h  READ/READN will read attributes from window

 DAh  use logical attributes, which may be remapped (see #0330)

 DBh  use physical attributes for characters

 DCh  enable special actions for control characters (default)

 DDh  disable special control char handling, all chars displayable by BIOS TTY

  call

 DEh  write both character and attribute (default)

 DFh  write character only, leave attribute untouched

 E0h  repeat following commands through E1h opcode

BYTE number of times to repeat (00h means 256 times)

 E1h  end of commands to repeat, start repeating them

 E2h  set current output color

BYTE color

 E3h  clear virtual screen from scroll origin to end using current color

 E4h  redraw window

 E5h  select menu style

BYTE style (normally 18h)

bits 5,4 = 01 use two-letter menu entries for remainder of

  this stream

 E5h  (panel file only)

BYTE modifier

bits 7,6 = 11 panel stream creates new window

 = 10 panel defines new field table for existing window

 = 01 panel stream uses existing window & field table

bit 5 = 1 stream contains a field table (create kyboard object)

bit 4 = 1 stream defines input fields (create keyboard object)

bit 3 = 1 stream defines select fields but not input fields

bit 2 = 1 stream defines exclusive input window (DV 2.2)

bit 1 reserved

bit 0 reserved

 E6h  create new window and perform rest of manipulations in new window

BYTE number of rows

BYTE number of columns

Return: DWORD object handle of new window returned on stack at end

Note:	the window is created with a physical size of 0x0 at the

  same position as the window to which this stream was sent

 E7h  no operation

 E8h  scroll area up (top left corner defined by opcode C1h)

BYTE height

BYTE width

 E9h  scroll area down (top left corner defined by opcode C1h)

BYTE height

BYTE width

 EAh  scroll area left (top left corner defined by opcode C1h)

BYTE height

BYTE width

 EBh  scroll area right (top left corner defined by opcode C1h)

BYTE height

BYTE width

 ECh  set logical attributes for window contents

BYTE video modes command applies to

bit 7	monochrome

bit 6	color text, EGA/VGA graphics

bit 5	medium-resolution CGA graphics

bit 4	high-resolution CGA graphics

BYTE which attributes to set

bit 7	if set, copy single following byte to indicated attribs

bits 4-6  number of first attribute to change - 1

bits 0-3  number of consecutive attributes to change

N BYTEs new attributes

 EDh  set logical attributes for window frame

BYTE video modes command applies to (see opcode ECh)

BYTE which attributes to set

bit 7	if set, copy single following byte to indicated attrs

bits 4-6  number of first attribute to change - 1

bits 0-3  number of consecutive attributes to change

N BYTEs new attributes

  attributes

       1 = top left corner

       2 = top right corner

       3 = bottom left corner

       4 = bottom right corner

       5 = top edge

       6 = bottom edge

       7 = left edge

       8 = right edge

 EEh  set characters for window frame

BYTE video modes command applies to (see opcode ECh)

BYTE which characters to set

bit 7	if set, copy single following byte to indicated chars

bits 4-6  number of first character to change - 1

bits 0-3  number of consecutive characters to change

N BYTEs new chars (same relative position as attributes above)

 EFh  set window name

BYTE length of name (should be in range 0 to logical screen width)

N BYTEs name

 F0h  clear input field to blanks

BYTE field number

 F1h  fill input field with character

BYTE field number

BYTE char

 F2h  set color of input field

BYTE field number (1-N)

BYTE attribute

 F3h  set initial contents of input field

BYTE field number (1-N)

N BYTEs enough chars to exactly fill field as defined by op FFh

 F4h  position cursor to start of specific input field

BYTE field number (1-N)

 F5h  change field table entry

BYTE field number

7-8 BYTEs field table entry (see opcode FFh below)

 F6h  set field type

BYTE field number

BYTE type

00h inactive

40h output field

80h input field

C0h deselected field

C2h selected field

 F7h  "broadcast write"	write data to fields with program output bit set in

  the field table entry, in field number order

N BYTEs (total length of all program output fields)

 F8h  scroll field up a line

BYTE field number

 F9h  scroll field down a line

BYTE field number

 FAh  scroll field left

BYTE field number

 FBh  scroll field right

BYTE field number

 FCh  set field table header

6 BYTEs	field table header (see #0331)

 FDh  reset modified bit for all fields

 FEh  reset selected and modified bits for all fields

 FFh  set up input fields

6 BYTEs	table header (see #0331)

7/8N BYTEs the field table entries, one for each field (see #0333)

Note:	DESQview uses and updates the actual copy of the information

  which is contained in the stream.  Thus this info must remain

  intact until after the data entry is complete.

INT 15 12--


15 12-- Values for TopView logical attributes:

Copy to Main

Table 0330

Values for TopView logical attributes:

 01h	normal text

 02h	highlighted normal text

 03h	help text

 04h	highlighted help text

 05h	error message

 06h	highlighted error message

 07h	emphasized text

 08h	marked text

 9-16	reverse video versions of 1-8

INT 15 12--


15 12-- Format of TopView field table header:

Copy to Main

Table 0331

Format of TopView field table header:

Offset	Size	Description

 00h	BYTE	number of fields (must be <= existing number of fields)

 01h	BYTE	screen behavior bits (see #0332)

 02h	BYTE	current input field (updated by DESQview)

 03h	BYTE	current select field (updated by DESQview)

 04h	BYTE	attribute for select fields when they are pointed at

 05h	BYTE	attribute for select fields which have been selected

INT 15 12--


15 12-- Bitfields for TopView screen behavior bits:

Copy to Main

Table 0332

Bitfields for TopView screen behavior bits:

Bit(s)	Description

 7	reserved

 6	menu items may be selected via keyboard

 5	left mouse button in "status" mode (press anywhere in window

  immediately returns control to application)

 4	right mouse button in "status" mode

 3	select fields return contents or blanks rather than 'Y' or 'N'

 2	modified bits reset on return to application

 1-0	type of data returned

00 no data returned on read of keyboard

01 data returned as array of characters containing all fields packed

      together, with no field numbers

10 data returned as numbered variable-length records for all fields

11 data returned as numbered variable-length records for the fields

      which were modified

INT 15 12--


15 12-- Format of TopView field table entry:

Copy to Main

Table 0333

Format of TopView field table entry:

Offset	Size	Description

 00h	BYTE	start row	  \

 01h	BYTE	start column  \ if menu selection and start is to

 02h	BYTE	end row	   / right or below end, select from kbd only

 03h	BYTE	end column   /

 04h	BYTE	field type (see #0334)

 05h	BYTE	modifier

if type is fill-in, then bit flags to determine behavior

  bit 7	 automatically enter CR when field full

  bit 6	 move to next field when current field is full

  bit 5	 enter text from right end (for numbers)

  bit 4	 force input to uppercase

  bit 3	 clear old contents on first keystroke

  bit 2	 input returned when cursor moves out of

  modified field ("validate", API level 2.02+)

  bit 1	 reserved

  bit 0	 reserved

if select field, first key to press to activate

  00h if have to point-&-click or is an extended-ASCII

      keystroke (only if two-key menus enabled)

 06h	BYTE	(select field only) normal color of field

 07h	BYTE	second key for select field.  This byte is present iff

  two-letter menu entries selected with opcode E5h, and in that

  case is present regardless of field type

INT 15 12--


15 12-- Bitfields for TopView field type:

Copy to Main

Table 0334

Bitfields for TopView field type:

Bit(s)	Description

 7,6	field class

00 inactive (non-entry) field

01 echos keystrokes input to make menu selection

10 fill-in field

11 select field

 5	field can be filled by broadcast write (F7h opcode)

 4	reserved

 3	reserved

 2	reserved

 1	set if field selected

 0	set if field modified

INT 15 12--


15 12-- Values for MODE 01h "QUERY STREAM" opcodes:

Copy to Main

Table 0335

Values for MODE 01h "QUERY STREAM" opcodes:

(valid only for those opcodes listed here)

 A0h return logical cursor row in next byte

 A1h return logical cursor column in next byte

 A2h return top row of scrolling region in next byte

 A3h return left column of scrolling region in next byte

 A4h return row of physical window origin in next byte

 A5h return column of physical window origin in next byte

 A6h return height of physcial window in next byte

 A7h return width of physical window in next byte

 A8h return row of viewport origin in next byte

 A9h return column of viewport origin in next byte

 AAh return height of virtual screen in next byte

 ABh return width of virtual screen in next byte

 AFh return current video mode in next byte

 C0h return current logical cursor position in next two bytes

 C1h return top left corner of scrolling region in next two bytes

 C2h return current window position in next two bytes

 C3h return current window size in next two bytes

 C4h return current viewport origin in next two bytes

 C5h return current virtual screen size in next two bytes

 D0h \ overwritten with D0h if frames may fall off screen edge

 D1h /	       D1h if frames always displayed entirely

 D2h \ overwritten with D2h if DESQview controls color palette

 D3h /	       D3h if application changes color palette

 D4h \ overwritten with D4h if window visible

 D5h /	       D5h if window hidden

 D6h \ overwritten with D6h if window has frame

 D7h /	       D7h if window unframed

 D8h \ overwritten with D8h if reading characters from window

 D9h /	       D9h if reading attributes from window

 DAh \ overwritten with DAh if using logical attributes

 DBh /	       DBh if using physical attributes

 DCh \ overwritten with DCh if TTY control char interpretation on

 DDh /	       DDh if TTY control char interpretation off

 DEh \ overwritten with DEh if writing both characters and attributes

 DFh /	       DFh if leaving attributes untouched

 E2h return current color in next byte

 ECh get logical attributes for window contents

BYTE execute call if currently in specified video mode

bit 7	monochrome

bit 6	color text, EGA/VGA graphics

bit 5	medium-resolution CGA graphics

bit 4	high-resolution CGA graphics

BYTE which attributes to get

bit 7	unused???

bits 4-6 first attribute to get - 1

bits 0-3 number of consecutive attributes

N BYTEs buffer to hold attributes

 EDh get logical attributes for window frame

BYTE execute call if currently in video mode (see opcode ECh)

BYTE which attributes to get

bit 7	unused???

bits 4-6 first attribute to get - 1

bits 0-3 number of consecutive attributes

N BYTEs buffer to hold attributes

 EEh get characters for window frame

BYTE execute call if currently in video mode (see opcode ECh)

BYTE which attributes to get

bit 7	unused???

bits 4-6 first char to get - 1

bits 0-3 number of consecutive chars

N BYTEs buffer to hold chars

 EFh return first N characters of current window name

BYTE	max length of returned name

N BYTEs buffer to hold window name

 F3h return contents of specified field

BYTE field number

N BYTEs buffer to hold field contents (size equal to field size)

 F5h get field table entry

BYTE field number

7-8 BYTEs buffer to hold field table entry (see #0333)

Notes:	DV < 2.26 always returns 7 bytes

DV 2.26+ w/ APILEVEL < 2.26 returns 8 bytes iff field table

  is using 8-byte entries and eighth byte after	F5h is E7h

  (NOP); otherwise, 7 bytes are returned

DV 2.26+ w/ APILEVEL > 2.26 returns 7 or 8 bytes depending

  on the field table entry size

 F6h get type of a field

BYTE field number

BYTE type

 FCh get field table header

6 BYTEs buffer to store field table header (see #0331)

INT 15 12--


15 12-- Values for MODE 10h "MANAGER STREAM" opcodes (valid only for those listed):

Copy to Main

Table 0336

Values for MODE 10h "MANAGER STREAM" opcodes (valid only for those listed):

 00h allow window to be moved horizontally

 01h allow window to be moved vertically

 02h allow window to change width

 03h allow window to change height

 04h allow window to be scrolled horizontally

 05h allow window to be scrolled vertically

 06h allow "Close Window" menu selection for application

 07h allow "Hide Window" menu selection for application

 08h allow application to be suspended ("Rearrange/Freeze")

 0Eh allow "Scissors" menu

 10h allow DESQview main menu to be popped up

 11h allow "Switch Windows" menu

 12h allow "Open Window" menu

 13h allow "Quit" menu selection

 20h-33h opposite of 00h-13h, disallow specified action

 40h notify if horizontal position of window changes

 41h notify if vertical position of window changes

 42h notify if width of window changes

 43h notify if height of window changes

 44h notify if window scrolled horizontally

 45h notify if window scrolled vertically

 46h notify if window is closed--program has to clean up and exit itself

 47h notify if window is hidden

 48h notify if "?" on main menu selected

 49h notify if pointer message sent to window

 4Ah notify if window is placed in foreground

 4Bh notify if window is placed in background

 4Ch notify if video mode changes

 4Dh notify if "Scissors" menu "Cut" option selected

 4Eh notify if "Scissors" menu "Copy" option selected

 4Fh notify if "Scissors" menu "Paste" option selected

 50h notify if DESQview main menu about to pop up

 51h notify if DESQview main menu popped down

 60h-71h	 opposite of 40h-51h: don't notify on specified event

 84h attach window to parent task's window (both move together)

 85h detach window from parent task's window (may move independently)

 86h disable background operation for application

 87h enable running in background

 88h set minimum size of physical window

BYTE rows

BYTE columns

 89h set maximum size of physical window

BYTE rows

BYTE cols

 8Ah set primary asynchronous notification routine (see #0338)

DWORD address of routine, 0000h:0000h means none (see also below)

 8Bh set async notification parameter

DWORD 32-bit value passed to 8Ah async routine in DS:SI

 ACh (DV2.2+) perform regular select field attribute processing

 ADh (DV2.2+) protect attributes in selected field from being lost

 AEh make window default notify window for owning app (API level 2.00+)

 AFh set selected field marker character

BYTE character to display at left edge of selected fields

 BCh set standard field processing mode

 BDh set alternate field processing mode (enables cursor pad for menus)

 BEh disables changing reverse logical attributes with ECh opcode

 BFh enables changing reverse logical attributes with ECh opcode

 C0h make current window topmost in system

 C1h force current process into foreground

 C2h make current window topmost in process

 C3h position mouse pointer relative to origin of current field

BYTE rows below upper left corner of field

BYTE columns to right of upper left corner of field

 C4h position mouse pointer relative to origin of given field

BYTE field number

BYTE rows below upper left corner of field

BYTE columns to right of upper left corner of field

 C5h orphan current window (also hides it)

Note: must be last in stream; all subsequent commands ignored

 C6h show all windows for this process

 C7h hide all windows for this process

 C8h suspend process and hide all its windows

 C9h force current process into background

 CAh make current window bottom-most in process

 CBh cancel current window manager operation, remove DV menu, give control

  to topmost application

 CCh orphan window and give it to the system for use as paste data

 CEh reorder windows

DWORD pointer to null-terminated list of words; each word is segment

  of object handle for a window

 FFh no operation

INT 15 12--


15 12-- Values for MODES 14h to 1Fh "USER STREAMS":

Copy to Main

Table 0337

Values for MODES 14h to 1Fh "USER STREAMS":

normally NOPs, but may be defined by SETESC message to invoke FAR

routines, one for each mode number

  on entry to handler,

DS:SI -> first byte of actual stream (not header)

CX = number of bytes in stream

ES:DI = window's handle

INT 15 12--


15 12-- Values asynchronous notification routine defined by man.stream 8Ah called with:

Copy to Main

Table 0338

Values asynchronous notification routine defined by man.stream 8Ah called with:

ES:DI = handle of window

DS:SI is 32-bit value set by 8Bh manager stream opcode

   mailbox contains message indicating event

      Opcode

       40h  horizontal movement

   DWORD object handle of window

   BYTE	 new row

   BYTE	 new col

       41h  vertical movement

   DWORD object handle of window

   BYTE	 new row

   BYTE	 new col

       42h  horizontal size change

   DWORD object handle of window

   BYTE	 new rows

   BYTE	 new cols

       43h  vertical size change

   DWORD object handle of window

   BYTE	 new rows

   BYTE	 new cols

       44h  scrolled horizontally

   DWORD object handle of window

   BYTE	 mouse row within window

   BYTE	 mouse column within window

   BYTE	 field mouse is on, 0 if none

   BYTE	 amount moved: >0 right, <0 left, 0 done

       45h  scrolled vertically

   DWORD object hande of window

   BYTE	 mouse row within window

   BYTE	 mouse column within window

   BYTE	 field mouse is on, 0 if none

   BYTE	 amount moved: >0 down, <0 up, 0 done

       46h  window close request

   DWORD object handle of window

   BYTE	 mouse pointer row

   BYTE	 mouse pointer column

   BYTE	 field mouse is on, 0 if none

       47h  application's windows hidden

       48h  Help for Program selected

   DWORD object handle of window

   BYTE	 mouse pointer row

   BYTE	 mouse pointer column

   BYTE	 field mouse is on, 0 if none

       49h  pointer message sent to window

   DWORD pointer handle which received message

       4Ah  switched to window from another ("raise")

       4Bh  switched away from the window ("lower")

       4Ch  video mode changed

   BYTE new BIOS video mode

       4Dh  Scissors/cUt selected

   DWORD object handle of window

   BYTE	 row of upper left corner

   BYTE	 column of upper left corner

   BYTE	 field number ul corner is in, 0=none

   DWORD handle of orphaned window created with

 copy of data from specified region

   BYTE	 height of region

   BYTE	 width of region

       4Eh  Scissors/Copy selected

   DWORD object handle of window

   BYTE	 row of upper left corner

   BYTE	 column of upper left corner

   BYTE	 field number ul corner is in, 0=none

   DWORD handle of orphaned window created with

 copy of data from specified region

   BYTE	 height of region

   BYTE	 width of region

       4Fh  Scissors/Paste selected

   DWORD object handle of window

   BYTE	 row of upper left corner

   BYTE	 column of upper left corner

   BYTE	 field number ul corner is in, 0=none

   DWORD handle of orphaned window with data

   BYTE	 height of region

   BYTE	 width of region

Note: orphaned data window should be adopted or freed

when done

       50h  main menu about to pop up

       51h  main menu popped down

Return: all registers unchanged

INT 15 12--


15 12-- Bitfields for DESQview keyboard object bits:

Copy to Main

Table 0339

Bitfields for DESQview keyboard object bits:

Bit(s)	Description

 15	reserved, can't be set

 14	unused

 13	reserved, can't be set

 12-6	unused

 5	(DV 2.2+) exclusive input

 4	filter all keys (used with handler established by SETESC)

if 0, only keys that would normally be displayed are filtered

 3	program continues executing while input in progress

 2	insert mode active for field mode

 1	hardware cursor displayed when task is hardware cursor owner

must be set if keyboard in field mode and field table includes input

  fields

 0	keyboard is in field mode rather than keystroke mode

INT 15 12--


15 12-- Bitfields for DESQview pointer object bits:

Copy to Main

Table 0340

Bitfields for DESQview pointer object bits:

Bit(s)	Description

 15	reserved, can't be set

 14-8	unused

 7	mouse pointer is hidden while in window

 6	get messages even if window not topmost

 5	get messages even if window not foreground

 4	multiple clicks separated by less than 1/3 second are counted and

  returned in a single message

 3	pointer position is relative to screen origin, not window origin

 2	send message on button release as well as button press

 1	(DV 2.23+) send message with row=FFFFh and col=FFFFh whenever the

  pointer leaves the window

 0	send message only on button activity, not movement

DV-specific, and INT 15/AX=DE0Fh must have been called first

INT 15 12--


15 12-- Values keyboard filter function is called with when keyboard is in field mode:

Copy to Main

Table 0341

Values keyboard filter function is called with when keyboard is in field mode:

AL = character

AH = 00h or extended ASCII code if AL = 00h

BL = field number

CH = cursor column

CL = cursor row

DL = field type modifier (sixth item in field table entry)

DH = seventh item in field table entry

ES:SI = window's handle

DS:DI -> field table entry for field containing the cursor

Return:	AH = action to take

    00h use keystroke

    01h ignore keystroke

    FFh beep and ignore keystroke

Note: the filter function is not allowed to make INT 15, DOS, or BIOS calls

INT 15 12--


15 12-- Bitfields for DESQview mailbox object flags:

Copy to Main

Table 0342

Bitfields for DESQview mailbox object flags:

Bit(s)	Description

 0	all mail messages in common memory

 1	allow write even if closed

 2	don't erase messages when mailbox closed

 4	(DV/X) append messages with like status and sender (stream-oriented

  mail)

 5	(DV/X) store mail in expanded memory (pool grows as needed)

 6	(DV/X) make mailbox into non-owned mailbox

INT 15 12--


15 12-- Bitfields for DESQview keyboard object flags:

Copy to Main

Table 0343

Bitfields for DESQview keyboard object flags:

Bit(s)	Description

 5	exclusive input when keyboard in use for input

INT 15 12--


15 12-- Values for DESQview error code:

Copy to Main

Table 0344

Values for DESQview error code:

 00h	no error

 01h	invalid values

 02h	alias invalid

 03h	handle valid but wrong type

 04h	invalid handle

INT 15 12--


15 13-- Format of MultiDOS Plus v4.0 task control block:

Copy to Main

Table 0345

Format of MultiDOS Plus v4.0 task control block:

Offset	Size	Description

 00h	DWORD	pointer to next TCB

 04h  8 BYTEs	ASCIZ task name

 0Ch  2 BYTEs	???

 0Eh	WORD	task PSP segment

 10h	WORD	abort/suspend flags

 12h	WORD	current screen segment (see AH=0Bh,AH=0Ch)

 14h	WORD	priority level (0000h-FFFEh)

 16h	WORD	time slice counter

 18h  2 BYTEs	???

 1Ah	WORD	suspend timer value

 1Ch	WORD	stack segment

 1Eh	WORD	stack pointer

 20h	WORD	display type

 22h	WORD	display memory

 24h  2 BYTEs	???

 26h	WORD	termination count

 28h	WORD	equipment flag for BIO10 driver

 2Ah	BYTE	background CRT mode

 2Bh	WORD	screen width in columns

 2Dh	WORD	screen size in bytes

 2Fh	WORD	segment of physical screen memory

 31h 16 BYTEs	eight cursor positions

 41h	WORD	current cursor shape

 43h	BYTE	active display page

 44h	WORD	CRT controller I/O port base

 46h  2 BYTEs	???

 48h	WORD	foreground task flag

 4Ah  6 BYTEs	???

 50h	WORD	saved video segment (see AH=0Bh,AH=0Ch)

 52h	DWORD	old INT 22

 56h	DWORD	old INT 23

 5Ah	DWORD	old INT 24

 5Eh	WORD	top of memory for task

 60h  4 BYTEs	???

 64h	WORD	DTA segment (see INT 21/AH=1Ah)

 66h	WORD	DTA offset

 68h  4 BYTEs	???

 6Ch	BYTE	current ANSI.SYS attribute

 6Dh	BYTE	current ANSI.SYS column

 6Eh	BYTE	current ANSI.SYS row

 6Fh	BYTE	current ANSI.SYS display state

 70h	BYTE	maximum ANSI.SYS columns

 71h	BYTE	current ANSI.SYS page

 72h	WORD	saved ANSI.SYS cursor position

 74h	BYTE	ANSI.SYS parameter buffer index

 75h	BYTE	current ANSI.SYS screen mode

 76h	BYTE	ANSI.SYS wrap flag

 77h  6 BYTEs	ANSI.SYS parameter buffer

 7Dh	BYTE	ANSI.SYS keyboard DSR state

 7Eh  7 BYTEs	ANSI.SYS keyboard DSR buffer

 85h  3 BYTEs	???

 88h 16 BYTEs	request header for DOS driver calls

 98h 14 BYTEs	???

 A6h	WORD	segment of EMS map if EMS task

 A8h	WORD	flag: task makes EMS calls

 AAh	WORD	EMS handle for task

 ACh	WORD	keyboard shift state

 AEh 12 BYTEs	???

 BAh	WORD	TCB of parent if child task

 BCh	WORD	termination code

 BEh	WORD	COM port number

 C0h  4 BYTEs	???

 C4h	WORD	current IRQ number

 C6h  2 BYTEs	???

 C8h	WORD	miscellaneous flag word

 CAh  2 BYTEs	???

 CCh	DWORD	old INT 10

 D0h	WORD	EMS alternate map set number

 D2h 414 BYTEs	DOS current disk and directory context (optional)

INT 15 13--


15 15-- Format of MultiDOS Plus 4.0 system block:

Copy to Main

Table 0346

Format of MultiDOS Plus 4.0 system block:

Offset	Size	Description

 00h	WORD	segment of system control block

 02h	WORD	redirection flag set by /NOREDIRECT

 04h	WORD	no-INT 10 flag set by /NO10

 06h	DWORD	old INT 10

 0Ah	DWORD	new INT 10

 0Eh	DWORD	pointer to WORD with current TCB offset (see #0345)

 12h	DWORD	pointer to WORD with idle task TCB offset

 16h	DWORD	pointer to WORD with foreground TCB offset (see #0345)

 1Ah	DWORD	pointer to WORD with MultiDOS TCB offset (see #0345)

 1Eh	WORD	Task Control Block size

 20h	WORD	number of TCBs

 22h	WORD	flag: EMS present

 24h	WORD	EMS page frame base segment

 26h	WORD	16K pages in EMS page frame

 28h	WORD	base segment for conventional memory tasks

 2Ah	WORD	conventional memory size in paragraphs

 2Ch	DWORD	pointer to list of queue pointers

INT 15 15--


15 1E08 Values MultiDOS Plus context-switch handlers are called with:

Copy to Main

Table 0347

Values MultiDOS Plus context-switch handlers are called with:

ES:BX -> task's TCB

Return: all registers preserved

INT 15 1E08


15 2403 Bitfields for A20 gate support status:

Copy to Main

Table 0348

Bitfields for A20 gate support status:

Bit(s)	Description

 0	supported on keyboard controller

 1	supported with bit 1 of I/O port 92h

 15	additional data is available (location not yet defined)

INT 15 2403


15 41-- Bitfields for external event wait condition type:

Copy to Main

Table 0349

Bitfields for external event wait condition type:

Bit(s)	Description

 0-2	condition to wait for

0 any external event

1 compare and return if equal

2 compare and return if not equal

3 test and return if not zero

4 test and return if zero

 3	reserved

 4	1=port address, 0=user byte

 5-7	reserved

INT 15 41--


15 43-- Bitfields for Convertible system status:

Copy to Main

Table 0350

Bitfields for Convertible system status:

Bit(s)	Description

 7	power low

 6	external power in use

 5	standby power lost

 4	power activated by alarm

 3	internal modem powered on

 2	RS232/parallel adapter powered on

 1	reserved

 0	LCD detached

INT 15 43--


15 44C3 Bitfields for Olivetti Quaderno ???:

Copy to Main

Table 0351

Bitfields for Olivetti Quaderno ???:

Bit(s)	Description

 5-7	5-7 read from I/O port 351h

 2-4	zero

 1-0	"tres complique"

INT 15 44C3


15 44C6 Values for Olivetti Quaderno LCD alphanumeric characters:

Copy to Main

Table 0352

Values for Olivetti Quaderno LCD alphanumeric characters:

 00h-0Fh hex digit

 2Bh	"+"

 2Dh	"-"

 30h-39h "0" to "9"

 41h-5Ah "A" to "Z"

 61h-6Ah "a" to "z"

 else	blank

INT 15 44C6


15 44C6 Bitfields for Olivetti Quaderno LCD colon flags:

Copy to Main

Table 0353

Bitfields for Olivetti Quaderno LCD colon flags:

Bit(s)	Description

 0	left colon on

 1	right colon on

 2-7	unused

INT 15 44C6


15 4600 Bitfields for Compaq SLT/286 modem configuration information:

Copy to Main

Table 0354

Bitfields for Compaq SLT/286 modem configuration information:

Bit(s)	Description

 0	powerup state (0 off, 1 on)

 1	modem installed

 2	IRQ line assignment (0 IRQ 4, 1 IRQ 3)

 3	COM port assignment (0 = COM 2, 1 = COM 1)

 4	modem state (0 not assigned, 1 assigned)

 5	modem is on

INT 15 4600


15 4600 Bitfields for Compaq SLT/286 power conservation status:

Copy to Main

Table 0355

Bitfields for Compaq SLT/286 power conservation status:

Bit(s)	Description

 0	power source (0 internal, 1 external)

 1-2	low battery state

00 no low battery condition

01 low battery 1

10 reserved

11 low battery 2

 3-4	power conservation mode

00 automatic, 01 on, 10 off, 11 reserved

INT 15 4600


15 50-- Values for DOS/V code page:

Copy to Main

Table 0356

Values for DOS/V code page:

 0	default

 437	US English

 932	Japanese

 934	Korea

 936	China

 938	Taiwan

INT 15 50--


15 50-- Values for DOS/V error code:

Copy to Main

Table 0357

Values for DOS/V error code:

 01h	invalid font type in BH

 02h	BL not zero

 03h	invalid font size

 04h	invalid code page

 80h	unsupported function (PC)

 86h	unsupported function (XT)

INT 15 50--


15 5300 Bitfields for APM flags:

Copy to Main

Table 0358

Bitfields for APM flags:

Bit(s)	Description

 0	16-bit protected mode interface supported

 1	32-bit protected mode interface supported

 2	CPU idle call reduces processor speed

 3	BIOS power management disabled

 4	BIOS power management disengaged (APM v1.1)

 5-7	reserved

INT 15 5300


15 5300 Values for APM error code:

Copy to Main

Table 0359

Values for APM error code:

 01h	power management functionality disabled

 02h	interface connection already in effect

 03h	interface not connected

 04h	real-mode interface not connected

 05h	16-bit protected-mode interface already connected

 06h	16-bit protected-mode interface not supported

 07h	32-bit protected-mode interface already connected

 08h	32-bit protected-mode interface not supported

 09h	unrecognized device ID

 0Ah	invalid parameter value in CX

 0Bh-1Fh reserved for other interface and general errors

 20h-3Fh reserved for CPU errors

 40h-5Fh reserved for device errors

 60h	can't enter requested state

 61h-7Fh reserved for other system errors

 80h	no power management events pending

 81h-85h reserved for other power management event errors

 86h	APM not present

 87h-9Fh reserved for other power management event errors

INT 15 5300


15 5307 Values for APM device IDs:

Copy to Main

Table 0360

Values for APM device IDs:

 0000h	system BIOS

 0001h	all devices for which the system BIOS manages power

 01xxh	display (01FFh for all attached display devices)

 02xxh	secondary storage (02FFh for all attached secondary storage devices)

 03xxh	parallel ports (03FFh for all attached parallel ports)

 04xxh	serial ports (04FFh for all attached serial ports)

---APM v1.1---

 05xxh	network adapters (05FFh for all attached network adapters)

 06xxh	PCMCIA sockets (06FFh for all)

 0700h-DFFFh reserved

 Exxxh	OEM-defined power device IDs

 F000h-FFFFh reserved

INT 15 5307


15 5307 Values for system state ID:

Copy to Main

Table 0361

Values for system state ID:

 0000h	ready (not supported for device ID 0001h)

 0001h	stand-by

 0002h	suspend

 0003h	off (not supported for device ID 0001h)

---APM v1.1---

 0004h	last request processing notification (only for device ID 0001h)

 0005h	last request rejected (only for device ID 0001h)

 0006h-001Fh reserved system states

 0020h-003Fh OEM-defined system states

 0040h-007Fh OEM-defined device states

 0080h-FFFFh reserved device states

INT 15 5307


15 530A Values for APM v1.0+ battery status:

Copy to Main

Table 0362

Values for APM v1.0+ battery status:

 00h	high

 01h	low

 02h	critical

 03h	charging

 FFh	unknown

 other	reserved

INT 15 530A


15 530A Bitfields for APM v1.1 battery flag:

Copy to Main

Table 0363

Bitfields for APM v1.1 battery flag:

Bit(s)	Description

 0	high

 1	low

 2	critical

 3	charging

 4-6	reserved

 7	no system battery

Note:	all bits set (FFh) if unknown

INT 15 530A


15 530A Bitfields for APM v1.1 remaining battery life:

Copy to Main

Table 0364

Bitfields for APM v1.1 remaining battery life:

Bit(s)	Description

 15	time units: 0=seconds, 1=minutes

 14-0	battery life in minutes or seconds

Note:	all bits set (FFFFh) if unknown

INT 15 530A


15 530B Values for APM event code:

Copy to Main

Table 0365

Values for APM event code:

 0001h	system stand-by request

 0002h	system suspend request

 0003h	normal resume system notification

 0004h	critical resume system notification

 0005h	battery low notification

---APM v1.1---

 0006h	power status change notification

 0007h	update time notification

 0008h	critical system suspend notification

 0009h	user system standby request notification

 000Ah	user system suspend request notification

 000Bh	system standby resume notification

 000Ch-00FFh reserved system events

 01xxh	reserved device events

 02xxh	OEM-defined APM events

 0300h-FFFFh reserved

INT 15 530B


15 5380 Bitfields for APM SL sustdbymode:

Copy to Main

Table 0366

Bitfields for APM SL sustdbymode:

Bit(s)	Description

 2	???

 1	Auto Power Off Timer Enable (APWR_TMR_EN)

 0	???

INT 15 5380


15 5380 Bitfields for APM SL resume condition:

Copy to Main

Table 0367

Bitfields for APM SL resume condition:

Bit(s)	Description

 7-2	reserved (0)

 1	alarm enabled (resume on CMOS alarm)

 0	ring enabled

INT 15 5380


15 5380 Values for APM SL error code:

Copy to Main

Table 0368

Values for APM SL error code:

 02h	no alarm set

 03h	no battery

INT 15 5380


15 53B0 Values for Intel System Management Bus error codes:

Copy to Main

Table 2673

Values for Intel System Management Bus error codes:

 00h	SMBus OK

 01h	SMBus connect failed

 02h	SMBus already connected (see also #2674)

 03h	SMBus disconnect failed

 04h	SMBus not connected

 05h	SMBus INT 15 interface disabled

 06h	SMBus device address request out of range

 07h	SMBus unknown failure

 08h	SMBus message list empty

 09h	SMBus message list overflow

 0Ah	SMBus invalid signature

 10h	SMBus device address not acknowledged

 11h	SMBus device error detected

 12h	SMBus device command access denied

 13h	SMBus unknown error

 14h	SMBus transaction pending

 15h	SMBus no transaction pending

 16h	SMBus request does not match pending transaction

 17h	SMBus device access denied

 18h	SMBus timeout

 19h	SMBus protocol not supported

 1Ah	SMBus busy

 1Bh	SMBus SMI detected

 80h	SMBus OK (previously unreported SMI occurred)

 86h	SMBus not supported

INT 15 53B0


15 53B0 Values for Intel System Management Bus Already Connected sub-error codes:

Copy to Main

Table 2674

Values for Intel System Management Bus Already Connected sub-error codes:

 01h	real mode connect already established

 02h	16-bit PMode connect already established

 03h	32-bit PMode connect already established

SeeAlso: #2673

INT 15 53B0


15 53B0 Values for Intel System Management Bus protocol codes:

Copy to Main

Table 2675

Values for Intel System Management Bus protocol codes:

 00h	Quick Command

 01h	Send Byte

 02h	Receive Byte

 03h	Write Byte

 04h	Read Byte

 05h	Write Word

 06h	Read Word

 07h	Block Write

 08h	Block Read

 09h	Process Call

 0Ah-FFh reserved

INT 15 53B0


15 6002 Bitfields for power settings:

Copy to Main

Table 0369

Bitfields for power settings:

Bit(s)	Description

 0-1	unused ???

 2	card battery status low (OK if bit clear)

 3	battery charging off (disabled if bits 3-5 clear)

 4	battery charging slow

 5	battery charging fast

 6	power adaptor active

 7	battery type NiCad (alkaline if bit clear)

INT 15 6002


15 6D-- Bitfields for HUNTER 16 events:

Copy to Main

Table 0370

Bitfields for HUNTER 16 events:

Bit(s)	Description

 6	RI received

 5	RTC Alarm

 4	data received on COM2

 3	data received on COM1

 2	error on COM2

 1	error on COM1

 0	PWR button pressed

INT 15 6D--


15 76-- Bitfields for HUNTER 16 power save control:

Copy to Main

Table 0371

Bitfields for HUNTER 16 power save control:

Bit(s)	Description

 0	power save enabled

 1	inhibit power save when waiting for COM1 data

 2	inhibit power save when waiting for COM2 data

 3	inhibit power save when waiting for data from barcode wand

 4	inhibit power up on timer tick

INT 15 76--


15 80-- Values for status:

Copy to Main

Table 0372

Values for status:

 80h	invalid command (PC,PCjr)

 86h	function not supported (XT)

INT 15 80--


15 82-- Values for HUNTER 16 sound pitch:

Copy to Main

Table 0373

Values for HUNTER 16 sound pitch:

BX(dec)	 Note	Frequency	BX(dec)	 Note	Frequency

  425	G	1568.000	 1515	A	 440.000

  451	F#	1479.503	 1605	G#	 415.307

  477	F	1396.900	 1701	G	 392.000

  506	E	1318.500	 1802	F#	 369.998

  536	D#	1244.523	 1909	F	 349.230

  568	D	1174.700	 2022	E	 329.630

  601	C#	1108.749	 2143	D#	 311.127

  637	C	1046.500	 2270	D	 293.660

  675	B	 958.770	 2405	C#	 277.183

  715	A#	 932.329	 2548	MID C	 261.630

  758	A	 880.000	 2700	B	 246.940

  803	G#	 830.609	 2860	A#	 233.081

  850	G	 783.990	 3030	A	 220.000

  901	F#	 739.990	 3210	G#	 207.654

  954	F	 698.460	 3401	G	 196.000

 1011	E	 659.260	 3604	F#	 184.996

 1071	D#	 622.257	 3818	F	 174.610

 1135	D	 587.330	 4045	E	 164.810

 1203	C#	 554.365	 4286	D#	 155.560

 1274	C	 523.250	 4540	D	 146.830

 1350	B	 493.880	 4668	C#	 142.827

 1430	A#	 466.162	 4803	C	 138.810

INT 15 82--


15 87-- Values for extended-memory copy status:

Copy to Main

Table 0374

Values for extended-memory copy status:

 00h	source copied into destination

 01h	parity error

 02h	interrupt error

 03h	address line 20 gating failed

 80h	invalid command (PC,PCjr)

 86h	unsupported function (XT,PS30)

INT 15 87--


15 87-- Format of global descriptor table:

Copy to Main

Table 0375

Format of global descriptor table:

Offset	Size	Description

 00h 16 BYTEs	zeros (used by BIOS)

 10h	WORD	source segment length in bytes (2*CX-1 or greater)

 12h  3 BYTEs	24-bit linear source address, low byte first

 15h	BYTE	source segment access rights (93h)

 16h	WORD	zero

 18h	WORD	destination segment length in bytes (2*CX-1 or greater)

 1Ah  3 BYTEs	24-bit linear destination address, low byte first

 1Dh	BYTE	destination segment access rights (93h)

 1Eh 18 BYTEs	zeros (used by BIOS)

INT 15 87--


15 89-- Format of BIOS switch-to-protected-mode Global Descriptor Table:

Copy to Main

Table 0376

Format of BIOS switch-to-protected-mode Global Descriptor Table:

Offset	Size	Description

 00h  8 BYTEs	null descriptor (initialize to zeros)

 08h  8 BYTEs	GDT descriptor (see #0377)

 10h  8 BYTEs	IDT descriptor

 18h  8 BYTEs	DS descriptor

 20h  8 BYTEs	ES

 28h  8 BYTEs	SS

 30h  8 BYTEs	CS

 38h  8 BYTEs	uninitialized, used to build descriptor for BIOS CS

INT 15 89--


15 89-- Format of segment descriptor table entry:

Copy to Main

Table 0377

Format of segment descriptor table entry:

Offset	Size	Description

 00h	WORD	segment limit, low word

 02h  3 BYTEs	segment base address, low 24 bits

 05h	BYTE	access mode (see #0378)

 06h	BYTE	386+ extended access mode (see #0379)

 07h	BYTE	386+ segment base address, high 8 bits

SeeAlso: #0376,INT 2C/AX=0002h,INT 31/AX=0009h

INT 15 89--


15 89-- Bitfields for segment descriptor table access mode field:

Copy to Main

Table 0378

Bitfields for segment descriptor table access mode field:

Bit(s)	Description

 3-0	segment type

 4	descriptor type (1 = application, 0 = system)

 6-5	descriptor privilege level

 7	segment is present in RAM

SeeAlso: #0377,#0379

INT 15 89--


15 89-- Bitfields for 386+ segment descriptor table extended access mode field:

Copy to Main

Table 0379

Bitfields for 386+ segment descriptor table extended access mode field:

Bit(s)	Description

 3-0	high 4 bits of segment limit

 4	available

 5	reserved (0)

 6	default operation size (1 = 32 bits, 0 = 16 bits)

 7	granularity (1 = 4K, 0 = byte)

SeeAlso: #0377,#0378,#1346

INT 15 89--


15 8C-- Bitfields for HUNTER 16 operations disabling power save:

Copy to Main

Table 0380

Bitfields for HUNTER 16 operations disabling power save:

Bit(s)	Description

 0	INT 10h prevents power save

 1	INT 13h prevents power save

 2	INT 14h prevents power save

 3	INT 15h prevents power save

 4	INT 1Ah prevents power save

 5	INT 21h prevents power save

 6	direct write to video RAM prevents power save

 7	access to 8250 UART prevents power save

 8	access to 8253 (Sound) prevents power save

INT 15 8C--


15 90-- Values for device type:

Copy to Main

Table 0381

Values for device type:

 00h	disk

 01h	diskette

 02h	keyboard

 03h	PS/2 pointing device

 21h	waiting for keyboard input (Phoenix BIOS)

 80h	network

 FBh	digital sound (Tandy)

 FCh	disk reset (PS)

 FDh	diskette motor start

 FEh	printer

INT 15 90--


15 BF02 Format of DOS/16M XBRK structure:

Copy to Main

Table 0382

Format of DOS/16M XBRK structure:

Offset	Size	Description

 00h	DWORD	linear address of first available byte

 04h	DWORD	linear address of last available byte + 1 ???

 08h	DWORD	real-mode address of XBRK structure???

 0Ch	DWORD	???

 10h  2 BYTEs	???

 12h	WORD	segment of ???

 14h  8 BYTEs	???

 1Ch 512 BYTEs	protected-mode IDT

21Ch  N BYTEs	protected-mode GDT

INT 15 BF02


15 C0-- Format of ROM configuration table:

Copy to Main

Table 0383

Format of ROM configuration table:

Offset	Size	Description

 00h	WORD	number of bytes following

 02h	BYTE	model (see #0388)

 03h	BYTE	submodel (see #0388)

 04h	BYTE	BIOS revision: 0 for first release, 1 for 2nd, etc.

 05h	BYTE	feature byte 1 (see #0384)

 06h	BYTE	feature byte 2 (see #0385)

 07h	BYTE	feature byte 3 (see #0386)

 08h	BYTE	feature byte 4 (see #0387)

 09h	BYTE	feature byte 5:

reserved (0) (IBM)

??? (08h) (Phoenix 386 v1.10)

---AWARD BIOS---

 0Ah  N BYTEs	AWARD copyright notice

---Phoenix BIOS---

 0Ah	BYTE	??? (00h)

 0Bh	BYTE	major version

 0Ch	BYTE	minor version (BCD)

 0Dh  4 BYTEs	ASCIZ string "PTL" (Phoenix Technologies Ltd)

---Quadram Quad386---

 0Ah 17 BYTEs	ASCII signature string "Quadram Quad386XT"

INT 15 C0--


15 C0-- Bitfields for feature byte 1:

Copy to Main

Table 0384

Bitfields for feature byte 1:

Bit(s)	Description

 7	DMA channel 3 used by hard disk BIOS

 6	2nd 8259 installed

 5	Real-Time Clock installed

 4	INT 15/AH=4Fh called upon INT 09h

 3	wait for external event (INT 15/AH=41h) supported

 2	extended BIOS area allocated (usually at top of RAM)

 1	bus is Micro Channel instead of ISA

 0	system has dual bus (Micro Channel + ISA)

SeeAlso: #0383,#0385

INT 15 C0--


15 C0-- Bitfields for feature byte 2:

Copy to Main

Table 0385

Bitfields for feature byte 2:

Bit(s)	Description

 7	reserved

 6	INT 16/AH=09h (keyboard functionality) supported (see #0445)

 5	INT 15/AH=C6h (get POS data) supported

 4	INT 15/AH=C7h (return memory map info) supported

 3	INT 15/AH=C8h (en/disable CPU functions) supported

 2	non-8042 keyboard controller

 1	data streaming supported

 0	reserved

SeeAlso: #0383,#0386,AH=C6h,AH=C7h,AH=C8h,INT 16/AH=09h

INT 15 C0--


15 C0-- Bitfields for feature byte 3:

Copy to Main

Table 0386

Bitfields for feature byte 3:

Bit(s)	Description

 7-5	reserved

 4	??? (set on 1992 PS/1's, N51SX, CL57SX, 35SX?, 40SX?)

 3	SCSI subsystem supported on system board

 2	information panel installed

 1	IML (Initial Machine Load) system

 0	SCSI supported in IML

SeeAlso: #0383,#0385,#0386

INT 15 C0--


15 C0-- Bitfields for feature byte 4:

Copy to Main

Table 0387

Bitfields for feature byte 4:

Bit(s)	Description

 7	??? (set on N51SX, CL57SX)

 6-4	reserved

 3	??? (set on some 1992 PS/1's, 35SX, 40SX)

 2-1	reserved

 0	??? (set on N51SX, CL57SX, 57SX)

SeeAlso: #0383,#0386

INT 15 C0--


15 C0-- Values for model/submodel/revision:

Copy to Main

Table 0388

Values for model/submodel/revision:

Model  Submdl  Rev	BIOS date	System

 FFh	*	*	04/24/81	PC (original)

 FFh	*	*	10/19/81	PC (some bugfixes)

 FFh	*	*	10/27/82	PC (HD, 640K, EGA support)

 FFh	00h	rev	  ???	Tandy 1000SL

 FFh	01h	rev	  ???	Tandy 1000TL

 FFh	46h	***	  ???	Olivetti M15

 FEh	*	*	08/16/82	PC XT

 FEh	*	*	11/08/82	PC XT and Portable

 FEh	*	*	../..x..	Toshiba laptops up to ~1987

("x"=product ID) (see #0394)

 FEh	43h	***	  ???	Olivetti M240

 FEh	A6h	???	  ???	Quadram Quad386

 FDh	*	*	06/01/83	PCjr

 FCh	*	*	01/10/84	AT models 068,099 6 MHz 20MB

 FCh	00h	00h	  ???	PC3270/AT

 FCh	00h	01h	06/10/85	AT model  239	  6 MHz 30MB

 FCh	00h	> 01h	  ???	7531/2 Industrial AT

 FCh	01h	00h	11/15/85	AT models 319,339 8 MHz, Enh Keyb, 3.5"

 FCh	01h	00h	09/17/87	Tandy 3000

 FCh	01h	00h	../..x..	Toshiba laptops since ~1988

("x"=product ID) (see #0394)

 FCh	01h	00h	03/08/93	Compaq DESKPRO/i

 FCh	01h	00h	 various	Compaq DESKPRO, SystemPro, ProSignia

 FCh	01h	00h	07/20/93	Zenith Z-Lite 425L

 FCh	01h	00h	04/09/90	AMI BIOS

 FCh	01h	20h	06/10/92	AST

 FCh	01h	30h	  ???	Tandy 3000NL

 FCh	01h	???	  ???	Compaq 286/386

 FCh	02h	00h	04/21/86	PC XT-286

 FCh	02h	00h	 various	Compaq LTE Lite

 FCh	02h	00h	08/05/93	Compaq Contura 486/486c/486cx

 FCh	02h	00h	08/11/88	SoftWindows 1.0.1 (Power Macintosh)

 FCh	04h	00h	02/13/87     ** PS/2 Model 50 (10 MHz/1 ws 286)

 FCh	04h	01h	05/09/87	PS/2 Model 50 (10 Mhz 286, LW-type 32)

 FCh	04h	02h	  ???	PS/2 Model 50

 FCh	04h	02h	01/28/88	PS/2 Model 50Z (10 Mhz 286, LW-type 33)

 FCh	04h	03h	04/18/88	PS/2 Model 50Z (10 MHz/0 ws 286)

 FCh	04h	04h	  ???	PS/2 Model 50Z

 FCh	05h	00h	02/13/87     ** PS/2 Model 60 (10 MHz 286)

 FCh	06h	00h	  ???	IBM 7552-140 "Gearbox"

 FCh	06h	01h	  ???	IBM 7552-540 "Gearbox"

 FCh	08h	***	  ???	Epson, unknown model

 FCh	08h	00h	  ???	PS/2 Model 25/286

 FCh	09h	00h	  ???	PS/2 Model 25 (10 MHz 286)

 FCh	09h	00h	08/25/88	PS/2 Model 30 286 (10 Mhz, LW-type 37)

 FCh	09h	02h	06/28/89	PS/2 Model 30-286

 FCh	09h	02h	06/28/89	PS/2 Model 25 286 (10 Mhz, LW-type 37)

 FCh	0Bh	00h	12/01/89	PS/1 (LW-Type 44)

 FCh	0Bh	00h	02/16/90	PS/1 Model 2011 (10 MHz 286)

 FCh	20h	00h	02/18/93	Compaq ProLinea

 FCh	30h	***	  ???	Epson, unknown model

 FCh	31h	***	  ???	Epson, unknown model

 FCh	33h	***	  ???	Epson, unknown model

 FCh	42h	***	  ???	Olivetti M280

 FCh	45h	***	  ???	Olivetti M380 (XP 1, XP3, XP 5)

 FCh	48h	***	  ???	Olivetti M290

 FCh	4Fh	***	  ???	Olivetti M250

 FCh	50h	***	  ???	Olivetti M380 (XP 7)

 FCh	51h	***	  ???	Olivetti PCS286

 FCh	52h	***	  ???	Olivetti M300

 FCh	81h	00h	01/15/88	Phoenix 386 BIOS v1.10 10a

 FCh	81h	01h	  ???	"OEM machine"

 FCh	82h	01h	  ???	"OEM machine"

 FCh	94h	00h	  ???	Zenith 386

 FBh	00h	01h	01/10/86	PC XT-089, Enh Keyb, 3.5" support

 FBh	00h	01h	05/13/94	HP 200LX 2MB BIOS 1.01 A D german

 FBh	00h	02h	05/09/86	PC XT

 FBh	00h	04h	08/19/93	HP 100LX 1MB BIOS 1.04 A

 FBh	4Ch	***	  ???	Olivetti M200

 FAh	00h	00h	09/02/86	PS/2 Model 30 (8 MHz 8086)

 FAh	00h	01h	12/12/86	PS/2 Model 30

 FAh	00h	02h	02/05/87	PS/2 Model 30

 FAh	01h	00h	06/26/87	PS/2 Model 25/25L (8 MHz 8086)

 FAh	30h	00h	  ???	IBM Restaurant Terminal

 FAh	4Eh	***	  ???	Olivetti M111

 FAh	FEh	00h	  ???	IBM PCradio 9075

 F9h	00h	00h	09/13/85	PC Convertible

 F9h	FFh	00h	  ???	PC Convertible

 F8h	00h	00h	03/30/87     ** PS/2 Model 80 (16MHz 386)

 F8h	00h	00h	  ???	PS/2 Model 75 486 (33Mhz 486)

 F8h	01h	00h	10/07/87	PS/2 Model 80 (20MHz 386)

 F8h	02h	00h	  ???	PS/2 Model 55-5571

 F8h	04h	00h	01/29/88	PS/2 Model 70 (20 Mhz 386DX,LW-type 33)

 F8h	04h	02h	04/11/88	PS/2 Model 70 20MHz, type 2 system brd

 F8h	04h	03h	03/17/89	PS/2 Model 70 20MHz, type 2 system brd

 F8h	05h	00h	  ???	IBM PC 7568

 F8h	06h	00h	  ???	PS/2 Model 55-5571

 F8h	07h	00h	  ???	IBM PC 7561/2

 F8h	07h	01h	  ???	PS/2 Model 55-5551

 F8h	07h	02h	  ???	IBM PC 7561/2

 F8h	07h	03h	  ???	PS/2 Model 55-5551

 F8h	09h	00h	01/29/88	PS/2 Model 70 16MHz 386DX, type 1 sysbd

 F8h	09h	02h	04/11/88	PS/2 Model 70 some models

 F8h	09h	03h	03/17/89	PS/2 Model 70 some models

 F8h	09h	04h	12/15/89	PS/2 Model 70 (16 Mhz 386, LW-type 33)

 F8h	0Bh	00h	01/18/89	PS/2 Model P70 (8573-121) typ 2 sys brd

 F8h	0Bh	02h	12/16/89	PS/2 Model P70 ??

 F8h	0Ch	00h	11/02/88	PS/2 Model 55SX (16 MHz 386SX)

 F8h	0Dh	00h	  ???	PS/2 Model 70 25MHz, type 3 system brd

 F8h	0Dh	00h	06/08/88	PS/2 Model 70 386 25MHz, type 3 sys brd

 F8h	0Dh	01h	02/20/89	PS/2 Model 70 386 25MHz, type 3 sys brd

 F8h	0Dh	???	12/01/89	PS/2 Model 70 486 25Mhz, type 3 sys brd

 F8h	0Eh	00h	  ???	PS/1 486SX

 F8h	0Fh	00h	  ???	PS/1 486DX

 F8h	10h	00h	  ???	PS/2 Model 55-5551

 F8h	11h	00h	10/01/90	PS/2 Model 90 XP (25 MHz 486)

 F8h	12h	00h	  ???	PS/2 Model 95 XP

 F8h	13h	00h	10/01/90	PS/2 Model 90 XP (33 MHz 486)

 F8h	14h	00h	10/01/90	PS/2 Model 90-AK9 (25 MHz 486), 95 XP

 F8h	15h	00h	  ???	PS/2 Model 90 XP

 F8h	16h	00h	10/01/90	PS/2 Model 90-AKD / 95XP486 (33MHz 486)

 F8h	17h	00h	  ???	PS/2 Model 90 XP

 F8h	19h	05h	  ???	PS/2 Model 35/35LS or 40 (20 MHz 386SX)

 F8h	19h	05h	03/15/91	PS/2 Model 35 SX / 40 SX (LW-type 37)

 F8h	19h	06h	04/04/91	PS/2 Model 35 SX / 40 SX (LW-type 37)

 F8h	1Ah	00h	  ???	PS/2 Model 95 XP

 F8h	1Bh	00h	09/29/89	PS/2 Model 70 486 (25 Mhz 386DX)

 F8h	1Bh	00h	10/02/89	PS/2 Model 70-486 (25 MHz 486)

 F8h	1Ch	00h	02/08/90	PS/2 Model 65-121 / 65 SX (16MHz 386SX)

 F8h	1Eh	00h	02/08/90	PS/2 Model 55LS (16 MHz 386SX)

 F8h	23h	00h	  ???	PS/2 Model L40 SX

 F8h	23h	01h	  ???	PS/2 Model L40 SX (20 MHz 386SX)

 F8h	23h	02h	02/27/91	PS/2 Model L40 SX (20Mhz386SX,LW-typ37)

 F8h	25h	00h	  ???	PS/2 Model 57 SLC

 F8h	25h	06h	  ???	PS/2 Model M57 (20 MHz 386SLC)

 F8h	26h	00h	  ???	PS/2 Model 57 SX

 F8h	26h	01h	  ???	PS/2 Model 57 (20 MHz 386SX)

 F8h	26h	02h	07/03/91	PS/2 Model 57 SX (20Mhz 386SX, SCSI)

 F8h	28h	00h	  ???	PS/2 Model 95 XP

 F8h	29h	00h	  ???	PS/2 Model 90 XP

 F8h	2Ah	00h	  ???	PS/2 Model 95 XP (50 MHz 486)

 F8h	2Bh	00h	  ???	PS/2 Model 90 / 90XP486 (50 MHz 486)

 F8h	2Ch	00h	  ???	PS/2 Model 95 XP

 F8h	2Ch	01h	  ???	PS/2 Model 95 (20 MHz 486SX)

 F8h	2Dh	00h	  ???	PS/2 Model 90 XP (20 MHz 486SX)

 F8h	2Eh	00h	  ???	PS/2 Model 95 XP

 F8h	2Eh	00h	  ???	PS/2 Model 95 XP486 (20 Mhz 486SX)

 F8h	2Eh	01h	  ???	PS/2 Model 95 (20 MHz 486SX + 487SX)

 F8h	2Fh	00h	  ???	PS/2 Model 90 XP (20 MHz 486SX + 487SX)

 F8h	30h	00h	  ???	PS/1 Model 2121 (16 MHz 386SX)

 F8h	33h	00h	  ???	PS/2 Model 30-386

 F8h	34h	00h	  ???	PS/2 Model 25-386

 F8h	36h	00h	  ???	PS/2 Model 95 XP

 F8h	37h	00h	  ???	PS/2 Model 90 XP

 F8h	38h	00h	  ???	PS/2 Model 57

 F8h	39h	00h	  ???	PS/2 Model 95 XP

 F8h	3Fh	00h	  ???	PS/2 Model 90 XP

 F8h	40h	00h	  ???	PS/2 Model 95 XP

 F8h	41h	00h	  ???	PS/2 Model 77

 F8h	45h	00h	  ???	PS/2 Model 90 XP (Pentium)

 F8h	46h	00h	  ???	PS/2 Model 95 XP (Pentium)

 F8h	47h	00h	  ???	PS/2 Model 90/95 E (Pentium)

 F8h	48h	00h	  ???	PS/2 Model 85

 F8h	49h	00h	  ???	PS/ValuePoint 325T

 F8h	4Ah	00h	  ???	PS/ValuePoint 425SX

 F8h	4Bh	00h	  ???	PS/ValuePoint 433DX

 F8h	4Eh	00h	  ???	PS/2 Model 295

 F8h	50h	00h	  ???	PS/2 Model P70 (8573) (16 MHz 386)

 F8h	50h	01h	12/16/89	PS/2 Model P70 (8570-031)

 F8h	52h	00h	  ???	PS/2 Model P75 (33 MHz 486)

 F8h	56h	00h	  ???	PS/2 Model CL57 SX

 F8h	57h	00h	  ???	PS/2 Model 90 XP

 F8h	58h	00h	  ???	PS/2 Model 95 XP

 F8h	59h	00h	  ???	PS/2 Model 90 XP

 F8h	5Ah	00h	  ???	PS/2 Model 95 XP

 F8h	5Bh	00h	  ???	PS/2 Model 90 XP

 F8h	5Ch	00h	  ???	PS/2 Model 95 XP

 F8h	5Dh	00h	  ???	PS/2 Model N51 SLC

 F8h	5Eh	00h	  ???	IBM ThinkPad 700

 F8h	61h	***	  ???	Olivetti P500

 F8h	62h	***	  ???	Olivetti P800

 F8h	80h	00h	  ???	PS/2 Model 80 (25 MHz 386)

 F8h	80h	01h	11/21/89	PS/2 Model 80-A21 (25 Mhz 386)

 F8h	81h	00h	  ???	PS/2 Model 55-5502

 F8h	87h	00h	  ???	PS/2 Model N33SX

 F8h	88h	00h	  ???	PS/2 Model 55-5530T

 F8h	97h	00h	  ???	PS/2 Model 55 Note N23SX

 F8h	99h	00h	  ???	PS/2 Model N51 SX

 F8h	F2h	30h	  ???	Reply Model 32

 F8h	F6h	30h	  ???	Memorex Telex

 F8h	FDh	00h	  ???	IBM Processor Complex (with VPD)

 F8h	???	???	  ???	PS/2 Model 90 (25 MHz 486SX)

 F8h	???	???	  ???	PS/2 Model 95 (25 MHz 486SX)

 F8h	???	???	  ???	PS/2 Model 90 (25 MHz 486SX + 487SX)

 F8h	???	???	  ???	PS/2 Model 95 (25 MHz 486SX + 487SX)

 E4h	???	???	  ???	Triumph Adler PC/XT

 E1h	???	???	  ???	??? (checked for by DOS4GW.EXE)

 E1h	00h	00h	  ???	PS/2 Model 55-5530 Laptop

 D9h	???	???	  ???	Peacock XT

 9Ah	*	*	  ???	Compaq XT/Compaq Plus

 30h	???	???	  ???	Sperry PC

 2Dh	*	*	  ???	Compaq PC/Compaq Deskpro

 ???	56h	???	  ???	Olivetti, unknown model

 ???	74h	???	  ???	Olivetti, unknown model

Notes:	BIOS dates may vary without changes to the revision code, especially

  for non-IBM machines

    * This BIOS call is not implemented in these early versions.

      Read Model byte at F000h:FFFEh and BIOS date at F000h:FFF5h.

   ** These BIOS versions require the DASDDRVR.SYS patches.

  *** These Olivetti and Epson machines store the submodel in the byte at

F000h:FFFDh.

SeeAlso: #0383,#0389

INT 15 C0--


15 C0-- Values for Dell model byte:

Copy to Main

Table 0389

Values for Dell model byte:

 02h	Dell 200

 03h	Dell 300

 05h	Dell 220

 06h	Dell 310

 07h	Dell 325

 09h	Dell 310A

 0Ah	Dell 316

 0Bh	Dell 220E

 0Ch	Dell 210

 0Dh	Dell 316SX

 0Eh	Dell 316LT

 0Fh	Dell 320LX

 11h	Dell 425E

SeeAlso: #0383,#0388

INT 15 C0--


15 C0-- Format of Compaq product information:

Copy to Main

Table 0390

Format of Compaq product information:

Address	Size	Description

 F000h:FFE4h	BYTE	product family code (first byte)

 F000h:FFE4h	BYTE	Point release number

 F000h:FFE4h	BYTE	ROM version code

 F000h:FFE4h	BYTE	product family code (second byte)

 F000h:FFE8h	WORD	BIOS type code

SeeAlso: #0391,#0393

INT 15 C0--


15 C0-- Format of Hewlett-Packard ROM ID at F000h:00F8h:

Copy to Main

Table 0391

Format of Hewlett-Packard ROM ID at F000h:00F8h:

Offset	Size	Description

 00h  2 BYTEs	signature "HP" (48h 50h)

 02h  2 BYTEs	00h 00h

 04h	BYTE	secondary code revision

 05h	BYTE	primary code revision

 06h	BYTE	date code, year-1960 (BCD)

 07h	BYTE	date code, week of year (BCD)

SeeAlso: #0390,#0392

INT 15 C0--


15 C0-- Bitfields for Hewlett-Packard product identifier:

Copy to Main

Table 0392

Bitfields for Hewlett-Packard product identifier:

Bit(s)	Description

 4-0	machine code

0 original Vectra

1 ES/12

2 RS/20

3 Portable/CS

4 ES

5 CS

6 RS/16

other reserved

 7-5	CPU type

0 = 80286

1 = 8088

2 = 8086

3 = 80386

other reserved

SeeAlso: #0391

INT 15 C0--


15 C0-- Format of Toshiba laptop information:

Copy to Main

Table 0393

Format of Toshiba laptop information:

Offset	Size	Description

 00h  8 BYTEs	ASCII product number (e.g. "T2200SX ")

 08h  8 BYTEs	ASCII version number (e.g. "V1.20   ")

 10h  8 BYTEs	ASCII signature string "TOSHIBA "

 18h  8 BYTEs	always zero???

 20h	DWORD	-> built-in BIOS setup program entry point or 0000h:0000h

Note:	this record is located at F000h:E000h

SeeAlso: #0390,#0391

INT 15 C0--


15 C0-- Values for Toshiba product ID:

Copy to Main

Table 0394

Values for Toshiba product ID:

model prodID   version	  date	product number	  /hdd

 FEh	29h	../..)..   Toshiba T1000LE

 FEh	2Ah	../..*..   Toshiba T1000XE

 FEh	2Bh	../..+..   Toshiba T1000SE

 FEh	2Ch	../..,..   Toshiba T1000      -

 FEh	2Dh	../..-..   Toshiba T1200F     -

 FEh	2Dh	V4.00	12/26-87   Toshiba T1200H    /20

 FEh	2Eh	../.....   Toshiba T1100+

 FCh	22h	../.."..   Toshiba T8500

 FCh	26h	01/15&88   Toshiba T5200     /100

 FCh	27h	../..'..   Toshiba T5100

 FCh	28h	../..(..   Toshiba T2000

 FCh	2Ah	12/26*89   Toshiba T1200XE

 FCh	2Bh	../..+..   Toshiba T1600

 FCh	2Ch	../..,..   Toshiba T3100e

 FCh	2Dh	../..-..   Toshiba T3200

 FCh	2Fh	../../..   Toshiba T3100

 FCh	34h	../..4..   Toshiba T100X

 FCh	38h	../..8..   Toshiba T2000SXe

 FCh	39h	V1.20	09/16991   Toshiba T2200SX   /60

 FCh	39h	V1.40	10/01992   Toshiba T2200SX   /120 (upgraded)

 FCh	3Ch	V1.50	01/28<91   Toshiba T2000SX   /40

 FCh	3Dh	../..=..   Toshiba T3200SXC

 FCh	3Eh	../..>..   Toshiba T3100SX

 FCh	3Fh	../..?..   Toshiba T3200SX

 FCh	40h	../..@..   Toshiba T4500C

 FCh	41h	04/05A92   Toshiba T4500     ("T4500SXC" ?)

 FCh	45h	V3.20	04/14E92   Toshiba T4400SX   ("C" or "SXC" on cover)

 FCh	45h	01/13E93   Toshiba T4400SXC

 FCh	46h *	../..F..   Toshiba T6400

 FCh	46h *	../..F..   Toshiba T6400C

 FCh	5Fh	../.._..   Toshiba T3300SL

 FCh	69h	../..i..   Toshiba T1900C

 FCh	6Ah	../..j..   Toshiba T1900

 FCh	6Dh	../..m..   Toshiba T1850C

 FCh	6Eh	V1.00	08/19n92   Toshiba T1850

 FCh	6Eh	12/25n92   Toshiba T1850

 FCh	6Fh	07/17o92   Toshiba T1800

 FCh	7Eh	V1.30	06/17~93   Toshiba T4600C

 FCh	7Fh	../..x..   Toshiba T4600

 FCh	8Ah	../..x..   Toshiba T6600C

 FCh	91h	../..x..   Toshiba T2400CS

 FCh	91h	V1.20	07/15x94   Toshiba T2400CT

 FCh	92h	../..x..   Toshiba T3600CT

 FCh	96h *	../..x..   Toshiba T200

 FCh	96h *	../..x..   Toshiba T200CS

 FCh	97h	../..x..   Toshiba T4800CT

 FCh	98h *	V1.10	12/22x93   Toshiba T1910     /120 /320

 FCh	98h *	../..x..   Toshiba T1910CS

 FCh	99h	../..x..   Toshiba T4700CS

 FCh	9Bh	V2.30	01/31x94   Toshiba T4700CT

 FCh	9Bh	V2.50	03/22x94   Toshiba T4700CT   /320

 FCh	9Ch	V1.30	01/11x94   Toshiba T1950CT   /320

 FCh	9Dh *	../..x..   Toshiba T1950

 FCh	9Dh *	../..x..   Toshiba T1950CS

 FCh	9Eh *	V1.20	12/25x93   Toshiba T3400     /120

 FCh	9Eh *	V1.30	03/22x94   Toshiba T3400     /250

 FCh	9Eh *	../..x..   Toshiba T3400CT

 FCh	BAh	V1.30	02/16x95   Toshiba T2150CDS/CDT

 FCh	BBh	V1.30	01/25x95   Toshiba T2100/CS/CT

 FCh	BCh ???	../..x..   Toshiba T2450CT

 FCh	BEh	../..x..   Toshiba T4850CT

 FCh	???	../.. ..   Toshiba T1900S

 FCh	???	../.. ..   Toshiba T1900CT

 FCh	???	../.. ..   Toshiba T4900CT

Note:	BIOS version numbers and dates may vary, esp. due to harddisk and

  flash BIOS upgrades

the 8-bit ASCII graphics character in the "date" column above

  has been substituted by "x" because it depends on code page

[*] These models have monochrome and color versions which can be

  distinguished with INT 42/AX=7503h; as that call is no longer

  supported on the T21xx series, use the product number at F000h:E000h

  instead (see #0393)

SeeAlso: #0388

INT 15 C0--


15 C200 Values for pointing device function status:

Copy to Main

Table 0395

Values for pointing device function status:

 00h	successful

 01h	invalid function

 02h	invalid input

 03h	interface error

 04h	need to resend

 05h	no device handler installed

INT 15 C200


15 C203 Values for pointing device resolution:

Copy to Main

Table 0396

Values for pointing device resolution:

 00h	one count per mm

 01h	two counts per mm

 02h	four counts per mm

 03h	eight counts per mm

INT 15 C203


15 C206 Bitfields for pointing device status:

Copy to Main

Table 0397

Bitfields for pointing device status:

Bit(s)	Description

 0	right button pressed

 1	reserved

 2	left button pressed

 3	reserved

 4	0 if 1:1 scaling, 1 if 2:1 scaling

 5	device enabled

 6	0 if stream mode, 1 if remote mode

 7	reserved

INT 15 C206


15 C207 Bitfields for pointing device status:

Copy to Main

Table 0398

Bitfields for pointing device status:

Bit(s)	Description

 15-8	reserved (0)

 7	Y data overflowed

 6	X data overflowed

 5	Y data is negative

 4	X data is negative

 3	reserved (1)

 2	reserved (0)

 1	right button pressed

 0	left button pressed

INT 15 C207


15 C7-- Format of memory-map table structure:

Copy to Main

Table 0399

Format of memory-map table structure:

Offset	Size	Description

 00h	WORD	length of table (excluding this word)

 02h	DWORD	local memory between 1M and 16M, in 1K blocks

 06h	DWORD	local memory between 16M and 4G, in 1K blocks

 0Ah	DWORD	system memory between 1M and 16M, in 1K blocks

 0Eh	DWORD	system memory between 16M and 4G, in 1K blocks

 12h	DWORD	cacheable memory between 1M and 16M, in 1K blocks

 16h	DWORD	cacheable memory between 16M and 4G, in 1K blocks

 1Ah	DWORD	1K blocks before start of non-system memory between 1M and 16M

 1Eh	DWORD	1K blocks before start of non-system memory between 16M and 4G

 22h  2 DWORDs	reserved

INT 15 C7--


15 C8-- Values for status:

Copy to Main

Table 0400

Values for status:

 00h	operation successful

 01h	function choice (in AL) is invalid

 02h	NVRAM data is invalid

 03h	cache test error

 04h	(90 and 95 only) cannot perform operation requested due to state of

  other cache (see note above)

 05h	no L2 cache is present

 09h	CPU in protected mode

INT 15 C8--


15 C9-- Values for CPU type:

Copy to Main

Table 0401

Values for CPU type:

 03h	80386DX or clone

 04h	80486

 05h	Pentium

 23h	80386SX or clone

 33h	Intel i376

 43h	80386SL or clone

 A3h	IBM 386SLC

 A4h	IBM 486SLC

INT 15 C9--


15 C9-- Values for stepping level:

Copy to Main

Table 0402

Values for stepping level:

---i376 (type code 33h)---

 05h	A0

 08h	B

---80386/80386DX (type code 03h)---

 03h	Intel B1 to B10, Am386DX/DXL step A

 05h	Intel D0

 08h	Intel D1/D2/E1, Am386DX/DXL step B

---80386SL (type code 43h)---

 05h	A

 1xh	B

---80386SX (type code 23h)---

 04h	Intel A0

 05h	Intel B, Am386SX/SXL step A1

 08h	Intel C/D1, Am386SX/SXL step B

 09h	Intel 386CX/386EX/386SXstatic step A

---80486DX (type code 04h)---

 00h	Intel A0/A1

 01h	Intel B2 to B6

 02h	Intel C0

 03h	Intel C1

 04h	Intel D0

 10h	Intel cA2/cA3, Cx486SLC step A

 11h	Intel cB0/cB1

---486DX2 (type code 04h)---

 02h	Am486DX2 (unknown stepping)

 32h	Intel DX2/Overdrive steps A0 to A2

 33h	Intel DX2/Overdrive step B1

---486SX (type code 04h)---

 20h	Intel A0

 22h	Intel B0

 27h	Intel cA0

 28h	Intel cB0

---486SL (type code 04h)---

 40h	Intel A

---IntelSX2 (type code 04h)---

 5xh	Intel A

---IntelDX4 (type code 04h)---

 8xh	Intel A

---487SX (type code 04h)---

 20h	Intel A0

 21h	Intel B0

---Pentium (type code 05h)---

 0xh	Intel P5 steps Ax (1993)

 1xh	Intel P5 steps Bx (1994)

 2xh	Intel P54C step A

---RapidCAD (type code 03h)---

 40h	A

INT 15 C9--


15 CA-- Values for CMOS read/write error code:

Copy to Main

Table 0403

Values for CMOS read/write error code:

 01h	CMOS lost power or has invalid checksum

 03h	specified location out of range (too high)

 04h	specified location out of range (too low)

 80h	unsupported function (PC)

 86h	unsupported function (XT)

INT 15 CA--


15 CE-- Values for DMA arbitration status:

Copy to Main

Table 0404

Values for DMA arbitration status:

 00h	success

 01h	arbitration level not available

 02h	channel not available

 03h	invalid arbitration level passed

INT 15 CE--


15 D100 Values for return code:

Copy to Main

Table 0405

Values for return code:

 00h	success

 01h	requested DDT entry not found

 02h	DDT data not valid

 86h	function not supported

INT 15 D100


15 D101 Format of Device Descriptor Table (DDT):

Copy to Main

Table 0406

Format of Device Descriptor Table (DDT):

Offset	Size	Description

 00h	BYTE	bits 7-4: reserved (set to 0)

bits 3-0: slot of device (0 = system board)

 01h	BYTE	bits 7-4: second interrupt for this device (0 = none)

bits 3-0: first interrupt for this device (0 = none)

 02h	BYTE	bits 7-4: second arbitration level for this device

bits 3-0: first arbitration level for this device

 03h	WORD	DDT indicators (see #0407)

 05h	BYTE	reserved (0)

 06h	WORD	device ID (0 = none)

 08h	WORD	starting address of first  I/O block (0 = none)

 0Ah	WORD	starting address of second I/O block (0 = none)

 OCh	WORD	starting address of third  I/O block (0 = none)

 OEh	DWORD	start of first non-system memory block (0 = none)

 12h	WORD	size of first non-system memory block (in kilobytes)

 14h	DWORD	start of second non-system memory block (0 = none)

 18h	WORD	size of second non-system memory block (in kilobytes)

 1Ah	BYTE	implementation identifier of the device

 1Bh	BYTE	implementation revision level of the device

Note:	I/O block addresses and non-system memory addresses are listed in

  ascending order in each DDT entry.

INT 15 D101


15 D101 Bitfields for DDT indicators:

Copy to Main

Table 0407

Bitfields for DDT indicators:

Bit(s)	Description

 15	reserved (0)

 14	second arbitration level exists

 13	first arbitration level exists

 12	serial interface is RS-422

 11	not address limited

 10	DMA channel used

 9	second arbitration level can be shared

 8	first arbitration level can be shared

 7-0	reserved (0)

INT 15 D101


15 D4-- Values for return code:

Copy to Main

Table 0408

Values for return code:

 00h	success

 01h	specified logical drive number is invalid

 80h	function not supported (on PCjr and PC)

 86h	function not supported

INT 15 D4--


15 D800 Bitfields for EISA AL bit flags:

Copy to Main

Table 0409

Bitfields for EISA AL bit flags:

Bit(s)	Description

 7	set if duplicate IDs

 6	set if product ID readable

 4,5	slot type (00=expansion, 01=embedded, 10=virtual device)

 0-3	duplicate ID number if bit 7 set

INT 15 D800


15 D800 Values for EISA error code:

Copy to Main

Table 0410

Values for EISA error code:

 80h	invalid slot number

 81h	invalid function number

 82h	EISA CMOS corrupt

 83h	empty slot

 84h	error clearing CMOS

 85h	EISA CMOS is full

 86h	invalid BIOS-FW function call

 87h	invalid system configuration

 88h	config utility version not supported

INT 15 D800


15 D823 Format of Compaq EISA buffer:

Copy to Main

Table 0411

Format of Compaq EISA buffer:

Offset	Size	Description

 00h	BYTE	???

 01h	WORD	???

 03h	BYTE	???

 04h	WORD	???

 06h	WORD	???

???

INT 15 D823


15 DB01 Values for AMI BIOS v1.00.05.AX1 subsystem identifier:

Copy to Main

Table 2618

Values for AMI BIOS v1.00.05.AX1 subsystem identifier:

 00h	recovery code

 01h	system BIOS

 02h	PCI configuration data

 03h	logo data area

 04h	system BIOS/Language (one system)

configuration utility (another system)

SeeAlso: #2619

INT 15 DB01


15 DB01 Format of AMI BIOS v1.00.05.AX1 subsystem information:

Copy to Main

Table 2619

Format of AMI BIOS v1.00.05.AX1 subsystem information:

Offset	Size	Description

 00h	BYTE	subsystem identifier (see #2618)

 01h	WORD	subsystem size in bytes

 03h	WORD	???

 05h	BYTE	flag??? (zero/nonzero)

 06h	BYTE	???

 07h	BYTE	???

 08h 24 BYTEs	subsystem name

 20h	BYTE	subsystem identifier???

 21h	BYTE	flag??? (00h or FFh)

 22h	BYTE	??? (01h,03h seen)

 23h  5 BYTEs	??? (apparently always 00h)

 28h 16 BYTEs	version string???

INT 15 DB01


15 DB03 Call AMI BIOS ??? code with:

Copy to Main

Table 2620

Call AMI BIOS ??? code with:

AL = function

    00h

    01h

    02h perform cold reboot

DS:SI -> ???

ES:DI -> ???

Return: AH = status

    00h successful

    01h invalid function

    02h ???

    03h ???

    04h ???

Note:	DS:SI and ES:DI are ignored for function 02h

INT 15 DB03


15 DE00 Format of program entry in DESQVIEW.DVO:

Copy to Main

Table 0412

Format of program entry in DESQVIEW.DVO:

Offset	Size	Description

 00h	BYTE	length of name (FFh if end of file)

 01h  N BYTEs	name

      2 BYTEs	keys to invoke program (second = 00h if only one key used)

BYTE	program type

00h normal program

04h divider

80h Delete a Program

81h Change a Program

WORD	??? apparently always 0000h

INT 15 DE00


15 DE0E Values for special DESQview mailbox names:

Copy to Main

Table 0413

Values for special DESQview mailbox names:

 "COM1" ... "COM4"	RBcomm using COM1 ... COM4

 "DESQview/X Help Engine"

 "DESQview/X Network Server"  Network Manager

 "DESQview X Server0"	X-Windows server

 "DESQview X Server7"	X-Windows printing service

 "INBOX"	DESQview/X LPD requests

 "OUTBOX"	DESQview/X LPD responses

 "WAITBOX"	semaphore to synchronize DESQview/X LPD communications

 "_DVNM_"	DV/X v1.10 network manager

INT 15 DE0E


15 DE22 Bitfields for DESQview process memory flags:

Copy to Main

Table 0414

Bitfields for DESQview process memory flags:

Bit(s)	Description

 0	system memory resides in shared memory

 1	process's memory is swapped out

 2	process's system memory is swapped out

INT 15 DE22


15 DE27 Format of DESQview Instance Item Structure [one element of list]:

Copy to Main

Table 0415

Format of DESQview Instance Item Structure [one element of list]:

Offset	Size	Description

 00h	WORD	length of data area DESQview should save and restore on context

  switches (0000h = end of list)

 02h	DWORD	pointer to area to be saved/restored

INT 15 DE27


15 DE2C Format of DESQview window information:

Copy to Main

Table 0416

Format of DESQview window information:

Offset	Size	Description

 00h	BYTE	task flag: 00h window, 01h task

 01h	BYTE	process number if owner task

00h if non-owner task

 02h	WORD	segment of owner's handle, 0000h if orphaned

 04h	WORD	mapping context (see #0306 at AX=1016h)

 06h	BYTE	task status (see #0417)

 07h	BYTE	unused

 08h	WORD	status bits (see #0418)

 0Ah	BYTE	01h if foreground-only window

INT 15 DE2C


15 DE2C Values for DESQview task status:

Copy to Main

Table 0417

Values for DESQview task status:

 00h	"Waiting" waiting for input

 01h	"Idle" keyboard poll limit reached

 03h	same as 01h

 04h	"Pausing" INT 15/AX=1000h pause called

 04h	DV/X direct: user did something to allow task switch

 05h	"ModeChg" video mode about to be changed

 06h	"ModeNtf" notify that video mode changed

 07h	"MoniCh" requested change to other monitor

 08h	"StartPgm" control relinquished to start new process

 09h	"MgrCan" made window manager CANCEL command

 0Ah	"Slicing" time slice expired

 0Bh	"Exit DOS" notify on DOS calls

 0Ch	"Enter DOS" process is re-entering DOS

 0Dh	"Terminate" INT 21/AH=4Ch or task freed

 0Eh	"BrkNxt" Control-Break pressed

 0Fh	"MgrCol" keyboard focus taken away

 10h	"PgmInt" interrupted by API call from another task

 11h	"BldOpen" call to INT 15/AX=DE01h

INT 15 DE2C


15 DE2C Bitfields for DESQview task status bits:

Copy to Main

Table 0418

Bitfields for DESQview task status bits:

Bit(s)	Description

 6	task is freeing another task

 5	process is being created

 4	user suspended process

 3	process suspended itself

 2	process is resized direct window (suspended)

 1	process swapped out

 0	DESQview process

INT 15 DE2C


15 DE2E Values for DESQview/X socket API function number:

Copy to Main

Table 0419

Values for DESQview/X socket API function number:

 0000h	initialize socket???

 0001h	"gethostname"

 0002h	"ioctl" check for input

 0003h	"sleep" delay for specified period

 0004h	"htons" convert word to network (big-endian) byte order

 0005h	"select"

 0006h	"bsd_close"/"so_close" close socket

 0007h	NOP

 0008h	"connect" initiate connection on socket

 0009h	"recv"/"recvfrom" read from socket

 000Ah	"socket"

 000Bh	???

 000Ch	"gethostbyname"

 000Dh	"send"/"sendto" write to socket

 000Eh	??? (does something to all connections for process)

 000Fh	"getpid" get process identifier

 0010h	"gettimeofday"

 0011h	"bind" assign name to socket

 0012h	"listen" listen for connections on socket

 0013h	"accept" accept connection on socket

 0014h	connect to X server

 0015h	"gethostbyaddr" get host information for an address

 0016h	"getprotobyname"

 0017h	"getprotobynumber"

 0018h	"getservbyname"

 0019h	"getservbyport"

 001Ah	"getsockname" determine name bound to socket

 001Bh	"getpeername" get name of connected peer

 001Ch	"getsockopt"/"setsockopt"

 001Dh	"so_exit"	 close all sockets for calling process

 001Eh	"issock" determine whether file handle references socket

 001Fh	"so_attach" reattach previously detached socket

 0020h	"so_detach" temporarily detach socket

 0021h	"dvpath" get DESQview directory (see also AX=DE24h)

 0022h	"NewProc" start new application (see also AX=102Ch)

 0023h	"so_linkup"

 0024h	"CanonicalPath" canonicalize filename (see also INT 21/AH=60h)

 0025h	indirect INT 15h call

 0026h	Network Manager interface

 0027h	"so_unlink"    close connection from "so_linkup"

 0028h	"raisepriority"

 0029h	"lowerpriority"

 002Ah	"so_private" ???

 FFFFh	"NetExit" (appears to be a NOP)

INT 15 DE2E


15 DE2E Format of DESQview/X socket record:

Copy to Main

Table 0420

Format of DESQview/X socket record:

Offset	Size	Description

 00h	WORD	signature F0ADh

 02h	WORD	function number (see #0419)

 04h	WORD	returned error code (see #0440)

 06h	WORD	maximum message size??? (usually 0400h)

 08h	WORD	PSP segment to use or 0000h if socket not valid

 0Ah	WORD	scratch space (JFT size)

 0Ch	DWORD	scratch space (JFT address)

 10h	DWORD	mailbox handle (initialized by function 0000h)

 14h	DWORD	timer object handle (initialized by function 0000h)

---function 0000h---

 18h	WORD	(ret) ???

---function 0001h---

 18h	WORD	(ret) status???

 1Ah 128 BYTEs	(ret) ASCIZ hostname (empty string if not on network)

 9Ah	WORD	maximum length of hostname to return

---function 0002h---

 18h	WORD	(ret) status

 1Ah	WORD	socket's file handle

 1Ch	WORD	IOCTL function

05h "FIONREAD" determine available input

06h "FIONBIO" set blocking state of socket

 1Eh	WORD	(return, subfn 05h) number of bytes available for reading

(call, subfn 06h) 0000h blocking, nonzero nonblocking

---function 0003h---

 18h  2 BYTEs	unused

 1Ah	WORD	delay time in seconds

---function 0004h---

 18h	WORD	(ret) result in network (big-endian) byte order

 1Ah	WORD	value to convert to network byte order

---function 0005h---

 18h	WORD	(ret) number of handles meeting the specified conditions???

 1Ah	WORD	number of file handles in each bitset

 1Ch	DWORD	bitset of socket handles to check for readability

 20h	DWORD	bitset of socket handles to check for writability

 24h	DWORD	bitset of socket handles to check for errors

 28h	WORD	timeout in ??? or 0000h to block until some socket ready

 2Ah	DWORD	???

 2Eh	DWORD	???

---function 0006h---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

---function 0008h---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	0001h if socket name specified, 0000h if not

 1Eh	WORD	length of socket name

 20h  N BYTEs	name of socket to which to connect

---function 0009h---

 18h	WORD	(ret) number of bytes actually read, 0000h if connection

closed, or FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	number of bytes to read

 1Eh	WORD	flags

 20h	WORD	0000h if no source address desired

0001h if source address is to be stored (datagram sockets)

 22h	WORD	length of source address

 24h 110 BYTEs	source address

 92h 1K BYTEs	buffer for data to be read

---function 000Ah---

 18h	WORD	(ret) socket's file handle or FFFFh on error

 1Ah	WORD	address family (0001h,0002h)

 1Ch	WORD	socket type

 1Eh	WORD	protocol

---function 000Bh---

 18h	WORD	(ret) 0001h if ??? or FFFFh on error

 1Ah	WORD	socket's file handle

 1Eh	WORD	(call) ???

---function 000Ch---

 18h 128 BYTEs	ASCIZ hostname (special case if empty string or "unix")

 98h	???	(ret) packed 'hostent' structure

 A2h	???	(ret) ???

---function 000Dh---

 18h	WORD	(ret) number of bytes actually written or FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	number of bytes to write

 1Eh	WORD	number of bytes to follow in subsequent writes???

 20h	WORD	flags

 22h	WORD	0000h if no destination specified, 0001h if destination present

 24h	WORD	0001h if broadcast message???, 0000h if not

(ignored if no destination specified)

 26h	WORD	length of destination address

 28h 110 BYTEs	destination address

 96h 1K BYTEs	buffer containing data to be written

---function 000Eh---

 no additional fields

---function 000Fh---

 18h	DWORD	(ret) DESQview task handle of calling process

---function 0010h---

 18h	DWORD	(ret) current time

 1Ch	DWORD	(ret) ???

---function 0011h---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	length of name

 1Eh  N BYTEs	buffer for socket name

---function 0012h---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	maximum backlog of pending connections allowed on socket

---function 0013h---

 18h	WORD	(ret) file handle for new connection or FFFFh on error

 1Ah	WORD	listen()ing socket's file handle

 1Ch	WORD	(call) length of buffer for connecting entity's address

(ret) actual length of address

 1Eh  N BYTEs	buffer for connecting entity's address (110 bytes???)

---function 0014h---

 18h	WORD	(ret) socket's file handle or FFFFh on error

 1Ah  4 BYTEs	(ret) ???

 1Eh	WORD	(ret) ???

 20h	WORD	(ret) ???

 22h 256 BYTEs	ASCIZ X display name

122h	???

---function 0015h---

 18h	WORD	(call) type of address??? (test for 0001h seen)

 1Ah	WORD	(call) length of buffer for host address

 1Ch 110 BYTEs	buffer containing ASCIZ host address

 8Ah	WORD	(ret) offset of official host name

 8Ch	WORD	(ret) offset of alias list???

 8Eh	WORD	(ret) address type???

 90h	WORD	(ret) length of an address in bytes???

 92h	WORD	(ret) offset of address???

 9Ah  N BYTEs	(ret) buffer for hostname, alias list, and host address

---function 0016h---

 18h	???	buffer for ASCIZ protocol name

 98h	???

---function 0017h---

 18h	WORD	(call) protocol number

 1Ah	WORD	(ret) ??? or 0001h

---function 0018h---

 18h 128 BYTEs	buffer containing ASCIZ ???

 98h 128 BYTEs	buffer containing ASCIZ ???

118h	WORD	(ret) ???

---function 0019h---

 18h	WORD	port number

 1Ah 128 BYTEs	(call) ASCIZ host name

(ret) packed servent strctures???

 9Ah	WORD	(ret) ???

---function 001Ah---

 18h	WORD	(ret) 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	(call) length of buffer for socket name

(ret) actual length of socket name

 1Eh  N BYTEs	buffer for socket name

---function 001Bh---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	WORD	(call) size of buffer for name

(ret) actual size of name

 1Eh  N BYTEs	buffer for peer's name

---function 001Ch---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	direction: 0000h to get, 0001h to set

 1Ch	WORD	socket's file handle

 1Eh	WORD	option level

 20h	WORD	option name

 22h	WORD	(call) length of buffer for option value

(ret) actual length of option value

 24h  N BYTEs	buffer for option value

---function 001Dh---

 no additional fields

---function 001Eh---

 18h	WORD	(ret) status: 0000h ??? or 0001h ???

 1Ah	WORD	file handle which may or may not be a socket

---function 001Fh---

 18h	WORD	(ret) file handle or FFFFh on error

 1Ah	DWORD	(call) pointer to Socket Context Record (see #0441) of a

previously detached socket

---function 0020h---

 18h	WORD	(ret) status: 0000h if successful or FFFFh on error

 1Ah	WORD	socket's file handle

 1Ch	DWORD	(ret) pointer to Socket Context Record (see #0441) for

the file handle

---function 0021h---

 18h 64 BYTEs	buffer for DESQview startup directory (see AX=DE25h)

---function 0022h---

 18h	DWORD	(ret) task handle of new application

 1Ch	WORD	size of .DVP data

 1Eh 129 BYTEs	ASCIZ ???

 9Fh  N BYTEs	.DVP data (see #0317 at AX=102Ch)

---function 0023h---

 18h	WORD	(ret) ??? or FFFFh on error

 1Ah	WORD	socket's file handle???

---function 0024h---

 18h	WORD	(ret) DOS error code (see #0885 at INT 21/AH=59h)

0000h if successful

 1Ah 129 BYTEs	ASCIZ filename/pathname

11Bh 129 BYTEs	ASCIZ canonicalized filename/pathname (see INT 21/AH=60h)

---function 0025h---

 18h	WORD	value of AX

 1Ah	WORD	value of BX

 1Ch	WORD	(call) value of CX for call if AH value other than 12h

(call) number of stack parameters if AH value is 12h

(ret) returned CX for calls other than INT 15/AH=12h

 1Eh	WORD	value of DX

 20h	WORD	value of DI

 22h	WORD	value of SI

 24h	WORD	value of DS

 26h	WORD	value of ES

 28h	WORD	(ret) value of FLAGS after call

 2Ah  N DWORDs	(call) stack parameters for INT 15/AH=12h call

(ret) stack results from INT 15/AH=12h call

---function 0026h---

 18h	WORD	(call) Network Manager subfunction (see #0421)

(ret) status??? (0000h on error)

 1Ah	WORD	(call) size of parameter data

(ret) size of returned data

 1Ch  N BYTEs	(call) parameter data required by call (see #0422,#0423,#0439)

(ret) result data (see #0432,#0433,#0438)

---function 0027h---

 18h	WORD	(ret) status: 0000h if successful, FFFFh on error

 1Ah	WORD	socket's file handle

---functions 0028h,0029h---

 18h	WORD	(call) file handle for which to set priority low/high

FFFFh to change calling task's priority

---function 002Ah---

 no additional fields

INT 15 DE2E


15 DE2E Values for DESQview/X Network Manager subfunction:

Copy to Main

Table 0421

Values for DESQview/X Network Manager subfunction:

 0004h	"so_exit"???

 0005h	"gethostbyname"

 0006h	"gethostname"

 0009h	"socket"

 000Dh	"gethostbyaddr"

 000Fh	"getprotobyname"

 0010h	get protocol name for protocol number

 0011h	"getservbyname"

 0012h	"getservbyport" (see #0425)

 0013h	"getsockname"??? (see #0426)

 0016h	"shutdown" (see #0427)

 0017h	kill Network Manager

 0018h	"getpeername"??? (see #0428)

 0019h	??? (called by socket function 0000h) (see #0429)

 001Ah	??? (see #0430)

 001Bh	"so_linkup" (see #0431)

 001Dh	"getnetstatus" get network services (see #0432)

 001Fh	"getpwuid"

 0020h	"getpwnam"

 0021h	"getpwvar"

 0022h	"crypt"

 0023h	"so_unlink"

 0024h	"getlogin" (see #0433)

 0028h	"sethostent"

 0029h	"gethostent"

 002Ah	"soaddhost"

 002Bh	"soupdatehost"

 002Ch	"sodeletehost"

 002Dh	"setservent"

 002Eh	"getservent"

 002Fh	"setpwent"

 0030h	"getpwent" (see #0434)

 0031h	"sethostpath" (see #0435)

 0032h	"endservent"

 0033h	"endhostent"

 0034h	"getnettype" get IP network number (see #0436)

 0035h	??? (pops up Network Manager window)

 0037h	"getnettimeout" (see #0437)

 0038h	get machine name and IP address (see #0438)

 0039h	"getuid" (see #0439)

---DV/X v2.0+ ---

 0041h	"deletepwnam"

 0045h	"renamepw"

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 000Fh data:

Copy to Main

Table 0422

Format of Function 0026h/Subfunction 000Fh data:

Offset	Size	Description

 00h  8 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0010h data:

Copy to Main

Table 0423

Format of Function 0026h/Subfunction 0010h data:

Offset	Size	Description

 00h  2 BYTEs	(ret) ???

 02h	WORD	(ret) protocol number

 04h	WORD	(call) protocol number for which to get name

 06h	WORD	(ret) ???

 08h	var	(ret) ASCIZ protocol name

 N	var	(ret) ASCIZ protocol name

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0011h data:

Copy to Main

Table 0424

Format of Function 0026h/Subfunction 0011h data:

Offset	Size	Description

 00h  8 BYTEs	???

 08h	var	(ret) ASCIZ protocol name

var	(ret) ASCIZ ??? name

var	(ret) ASCIZ ??? name

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0012h data:

Copy to Main

Table 0425

Format of Function 0026h/Subfunction 0012h data:

Offset	Size	Description

 00h  8 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0013h data:

Copy to Main

Table 0426

Format of Function 0026h/Subfunction 0013h data:

Offset	Size	Description

 00h 116 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0016h ("shutdown") data:

Copy to Main

Table 0427

Format of Function 0026h/Subfunction 0016h ("shutdown") data:

Offset	Size	Description

 00h	WORD	(ret) shutdown status (0000h successful, FFFFh error)

 02h  4 BYTEs	(ret) ???

 04h	WORD	(call) socket handle

 06*h	WORD	(call) what (0 = receives, 1 = sends, 2 = both)

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0018h data:

Copy to Main

Table 0428

Format of Function 0026h/Subfunction 0018h data:

Offset	Size	Description

 00h 116 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0019h data:

Copy to Main

Table 0429

Format of Function 0026h/Subfunction 0019h data:

Offset	Size	Description

 00h  4 BYTEs	(ret) ???

 04h	DWORD	(ret) task handle of ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 001Ah data:

Copy to Main

Table 0430

Format of Function 0026h/Subfunction 001Ah data:

Offset	Size	Description

 00h 38 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 001Bh data:

Copy to Main

Table 0431

Format of Function 0026h/Subfunction 001Bh data:

Offset	Size	Description

 00h 10 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 001Dh return data [array]:

Copy to Main

Table 0432

Format of Function 0026h/Subfunction 001Dh return data [array]:

Offset	Size	Description

 00h	WORD	??? or FFFFh if end of array

 02h  7 BYTEs	???

 09h 27 BYTEs	ASCIZ name of service

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0024h return data:

Copy to Main

Table 0433

Format of Function 0026h/Subfunction 0024h return data:

Offset	Size	Description

 00h	var	ASCIZ username

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0030h data:

Copy to Main

Table 0434

Format of Function 0026h/Subfunction 0030h data:

Offset	Size	Description

 00h	WORD	(call) UID or 0000h for current user

(ret) ???

 02h	WORD	(ret) UID

 04h  6 BYTEs	(ret) ???

 0Ah	var	(ret) ASCIZ username

var	(ret) ASCIZ encrypted password

var	(ret) ASCIZ initial ("home") directory

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0031h ("sethostpath") data:

Copy to Main

Table 0435

Format of Function 0026h/Subfunction 0031h ("sethostpath") data:

Offset	Size	Description

 00h   4 BYTEs	???

 04h 144 BYTEs	ASCIZ ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0034h data:

Copy to Main

Table 0436

Format of Function 0026h/Subfunction 0034h data:

Offset	Size	Description

 00h  1-3 BYTEs IP network number of caller's machine (low byte first)

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0037h ("getnettimeout") return data:

Copy to Main

Table 0437

Format of Function 0026h/Subfunction 0037h ("getnettimeout") return data:

Offset	Size	Description

 00h	WORD	(ret) timeout

 02h  2 BYTEs	(ret) ???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0038h return data:

Copy to Main

Table 0438

Format of Function 0026h/Subfunction 0038h return data:

Offset	Size	Description

 00h	BYTE	???

 01h  4 BYTEs	IP address

 05h	var	ASCIZ machine name

???

INT 15 DE2E


15 DE2E Format of Function 0026h/Subfunction 0039h ("getuid") return data:

Copy to Main

Table 0439

Format of Function 0026h/Subfunction 0039h ("getuid") return data:

Offset	Size	Description

 00h	WORD	user ID

 02h  2 BYTEs	???

SeeAlso: #0435,#0438

INT 15 DE2E


15 DE2E Values for DESQview/X socket error code:

Copy to Main

Table 0440

Values for DESQview/X socket error code:

 0000h	successful

 0009h	"BADF" bad file handle

 000Ch	"ENOMEM" out of memory

 000Eh	"EFAULT" bad address

 0016h	"EINVAL" invalid argument

 0018h	"EMFILE" too many open files

 0020h	"EPIPE" ??? broken pipe

 0023h	"EWOULDBLOCK" operation cannot be completed at this time

 0024h	"EINPROGRESS" operation now in progress

 0026h	"ENOTSOCK" socket invalid

 0028h	"EMSGSIZE" message too long to send atomically

 002Ch	"ESOCKTNOSUPPORT" socket type not supported

 002Fh	"EAFNOSUPPORT" address family not supp. by protocol fam.

 0031h	"EDOM" argument too large

 0038h	"EISCONN" socket is already connected

 0039h	"ENOTCONN" socket is not connected

INT 15 DE2E


15 DE2E Format of DESQview/X Socket Context Record:

Copy to Main

Table 0441

Format of DESQview/X Socket Context Record:

Offset	Size	Description

 00h	DWORD	pointer to next Socket Context Record, 0000h:0000h if last

 04h	WORD	SFT index for socket, 00FFh if not connected, FFFFh if detached

 06h	WORD	PSP segment of owner or 0000h

 08h	WORD	mapping context of owning window (see #0306 at AX=1016h)

 0Ah  2 BYTEs	???

 0Ch	WORD	address family

 0Eh	WORD	socket type

 10h	WORD	protocol

 12h	WORD	socket state

0001h created

0002h bound

0003h listening???

0005h connected

 14h	DWORD	timer object handle

 18h	DWORD	object handle (mailbox???)

 1Ch	DWORD	object handle of parent of above object or 0000h:0000h

 20h	DWORD	pointer to ??? or 0000h

 24h  6 BYTEs	???

 2Ah	WORD	file handle for socket or FFFFh

 2Ch  2 BYTEs	???

 2Eh	WORD	nonzero if socket nonblocking

---network connections only---

 30h  2 BYTEs	???

 32h	WORD	???

 34h  4 BYTEs	(big-endian) IP address of remote

 38h  6 BYTEs	???

INT 15 DE2E


16 02-- Bitfields for keyboard shift flags:

Copy to Main

Table 0442

Bitfields for keyboard shift flags:

Bit(s)	Description

 7	Insert active

 6	CapsLock active

 5	NumLock active

 4	ScrollLock active

 3	Alt key pressed (either Alt on 101/102-key keyboards)

 2	Ctrl key pressed (either Ctrl on 101/102-key keyboards)

 1	left shift key pressed

 0	right shift key pressed

SeeAlso: #0447,#2345

INT 16 02--


16 05-- Values for pseudo-keystrokes for DESQview:

Copy to Main

Table 0443

Values for pseudo-keystrokes for DESQview:

 38FBh or FB00h	switch to next window (only if main menu already popped up)

 38FCh or FC00h	pop up DESQview main menu

 38FEh or FE00h	close the current window

 38FFh or FF00h	pop up DESQview learn menu

INT 16 05--


16 05-- Values for pseudo-keystrokes for HP 100LX/200LX:

Copy to Main

Table 0444

Values for pseudo-keystrokes for HP 100LX/200LX:

 EE00h	pop up topcard display and set other system manager applications

  into sleep mode

INT 16 05--


16 09-- Bitfields for supported keyboard functions:

Copy to Main

Table 0445

Bitfields for supported keyboard functions:

Bit(s)	Description

 7	reserved

 6	INT 16/AH=20h-22h supported (122-key keyboard support)

 5	INT 16/AH=10h-12h supported (enhanced keyboard support)

 4	INT 16/AH=0Ah supported

 3	INT 16/AX=0306h supported

 2	INT 16/AX=0305h supported

 1	INT 16/AX=0304h supported

 0	INT 16/AX=0300h supported

SeeAlso: #0385

INT 16 09--


16 0A-- Values for keyboard ID:

Copy to Main

Table 0446

Values for keyboard ID:

 0000h	no keyboard attached

 41ABh	Japanese "G" keyboard (translate mode)

MF2 Keyboard (usually in translate mode)

 54ABh	Japanese "P" keyboard (translate mode)

 83ABh	Japanese "G" keyboard (pass-through mode)

MF2 Keyboard (pass-through mode)

 84ABh	Japanese "P" keyboard (pass-through mode)

 90ABh	old Japanese "G" keyboard

 91ABh	old Japanese "P" keyboard

 92ABh	old Japanese "A" keyboard

INT 16 0A--


16 12-- Bitfields for keyboard shift flags 1:

Copy to Main

Table 0447

Bitfields for keyboard shift flags 1:

Bit(s)	Description

 7	Insert active

 6	CapsLock active

 5	NumLock active

 4	ScrollLock active

 3	Alt key pressed (either Alt on 101/102-key keyboards)

 2	Ctrl key pressed (either Ctrl on 101/102-key keyboards)

 1	left shift key pressed

 0	right shift key pressed

SeeAlso: #0442,#0448

INT 16 12--


16 12-- Bitfields for keyboard shift flags 2:

Copy to Main

Table 0448

Bitfields for keyboard shift flags 2:

Bit(s)	Description

 7	SysReq key pressed (SysReq is often labeled SysRq)

 6	CapsLock pressed

 5	NumLock pressed

 4	ScrollLock pressed

 3	right Alt key pressed

 2	right Ctrl key pressed

 1	left Alt key pressed

 0	left Ctrl key pressed

SeeAlso: #0447

INT 16 12--


16 13-- Bitfields for DOS/V shift status:

Copy to Main

Table 0449

Bitfields for DOS/V shift status:

Bit(s)	Description

 0	full-size rather than half-size

 2-1	character input mode

00 alphanumeric, 01 Katakana, 10 Hiragana, 11 unused

 5-3	internal status

 6	Romaji enabled

 7	Katakana to Kanji conversion enabled

 15-8	internal status

INT 16 13--


16 20-- Bitfields for HUNTER 16 shift status:

Copy to Main

Table 0450

Bitfields for HUNTER 16 shift status:

Bit(s)	Description

 4	Scroll Lock on

 5	Num Lock on

 6	Caps Lock on

INT 16 20--


16 24-- Values for HUNTER 16 Matrix Code:

Copy to Main

Table 0451

Values for HUNTER 16 Matrix Code:

 Code  Key	Code	Key	Code	Key

 00h   Esc key	1Eh	Space	3Bh	L

 01h   1	21h	0	3Ch	,

 02h   Q	22h	-	3Eh	Right shift

 03h   Tab	23h	'	42h	8

 04h   Num Lock	24h	Keypad 4	43h	7

 05h   \	25h	Enter	44h	U

 08h   LShift	26h	Keypad 7	45h	I

 09h   Ctrl	27h	.	46h	J

 0Ah   "Paw" key	28h	Keypad 1	47h	K

 0Bh   2	29h	Keypad 0	48h	M

 0Ch   W	2Ch	=	49h	N

 0Dh   A	2Dh	Backspace	4Ah	/

 0Eh   S	2Eh	Keypad 8	4Dh	6

 0Fh   Z	2Fh	Keypad 9	4Eh	5

 11h   Alt	30h	Keypad 5	4Fh	T

 16h   4	31h	Keypad 6	50h	Y

 17h   3	32h	Keypad 2	51h	G

 18h   E	33h	Keypad 3	52h	H

 19h   R	34h	Keypad .	53h	B

 1Ah   D	37h	9	54h	V

 1Bh   F	38h	O	55h	#

 1Ch   X	39h	P	58h	Pwr

 1Dh   C	3Ah	;	59h	Shift Pwr

INT 16 24--


16 29-- Values for HUNTER 16 Typematic rate:

Copy to Main

Table 0452

Values for HUNTER 16 Typematic rate:

 00h	30.0	 08h	15.0	 10h	7.5	 18h	3.7

 01h	26.7	 09h	13.3	 11h	6.7	 19h	3.3

 02h	24.0	 0Ah	12.0	 12h	6.0	 1Ah	3.0

 03h	21.8	 0Bh	10.9	 13h	5.5	 1Bh	2.7

 04h	20.0	 0Ch	10.0	 14h	5.0	 1Ch	2.5

 05h	18.5	 0Dh	 9.2	 15h	4.6	 1Dh	2.3

 06h	17.1	 0Eh	 8.6	 16h	4.3	 1Eh	2.1

 07h	16.0	 0Fh	 8.0	 17h	4.0	 1Fh	2.0

SeeAlso: AH=2Ah

INT 16 29--


16 4502 Bitfields for Shamrock Software EMAIL flags:

Copy to Main

Table 0453

Bitfields for Shamrock Software EMAIL flags:

Bit(s)	Description

 0	ISO code

 1	pause

 2	linefeed

 3	ANSI sequences

INT 16 4502


16 6F01 Format of HP Vectra EX-BIOS typematic info:

Copy to Main

Table 0454

Format of HP Vectra EX-BIOS typematic info:

Offset	Size	Description

 00h	BYTE	delay before repeat for all non-Cursor Control Pad keys

(see #0455)

 01h	BYTE	typematic rate for all non-Cursor Control Pad keys (see #0456)

 02h	BYTE	delay before repeat for Cursor Control Pad keys	(see #0457)

 03h	BYTE	typematic rate for Cursor Control Pad keys (see #0456)

INT 16 6F01


16 6F01 Values for HP Vectra EX-BIOS non-CCP delay time:

Copy to Main

Table 0455

Values for HP Vectra EX-BIOS non-CCP delay time:

 00h	17 ms

 01h	150 ms

 02h	283 ms

 03h	417 ms

 04h	550 ms

 05h	683 ms

 06h	817 ms

 07h	950 ms

 08h	1083 ms

 09h	1217 ms

 0Ah	1350 ms

 0Bh	1483 ms

 0Ch	1617 ms

 0Dh	1750 ms

 0Eh	1883 ms

 0Fh	2017 ms

Note:	the above values assume that the key repeat rate has been set to 60 Hz;

  double the times if set to 30 Hz

SeeAlso: #0454,#0456,#0457

INT 16 6F01


16 6F01 Values for HP Vectra EX-BIOS typematic rate:

Copy to Main

Table 0456

Values for HP Vectra EX-BIOS typematic rate:

 00h	60 / sec

 01h	30 / sec

 02h	20

 03h	15

 04h	12

 05h	10

 06h	8.57

 07h	7.5

 08h	6.66

 09h	6 / sec

 0Ah	5.45

 0Bh	5

 0Ch	4.62

 0Dh	4.28

 0Eh	4 / sec

 0Fh	typematic disabled

Note:	the above values assume that the key repeat rate has been set to 60 Hz;

  halve the rates if set to 30 Hz

SeeAlso: #0455,#0457

INT 16 6F01


16 6F01 Values for HP Vectra EX-BIOS CCP delay time:

Copy to Main

Table 0457

Values for HP Vectra EX-BIOS CCP delay time:

 00h	17 ms

 01h	83 ms

 02h	150 ms

 03h	217 ms

 04h	283 ms

 05h	350 ms

 06h	417 ms

 07h	483 ms

 08h	550 ms

 09h	617 ms

 0Ah	683 ms

 0Bh	750 ms

 0Ch	817 ms

 0Dh	883 ms

 0Eh	950 ms

 0Fh	1017 ms

Note:	the above values assume that the key repeat rate has been set to 60 Hz;

  double the times if set to 30 Hz

SeeAlso: #0455,#0456

INT 16 6F01


16 6F04 Format of HP Vectra EX-BIOS keyboard mapping info:

Copy to Main

Table 0458

Format of HP Vectra EX-BIOS keyboard mapping info:

Offset	Size	Description

 00h  3 WORDs	entry for V_QWERTY driver (IP, CS, DS)

 06h  3 WORDs	entry for V_SOFTKEY driver (IP, CS, DS)

 0Ch  3 WORDs	entry for V_FUNCTION driver

 12h  3 WORDs	entry for V_NUMPAD driver

 18h  3 WORDs	entry for V_CCP driver

INT 16 6F04


16 6F07 Values for HP Vectra keyboard translation specifier:

Copy to Main

Table 0459

Values for HP Vectra keyboard translation specifier:

 00h	map V_CCP to V_CCPCUR, forcing the cursor pad to return cursor keys

 01h	map V_CCP to V_CCPNUM, forcing the cursor pad to always return numbers

 02h	map V_CCP to V_OFF, disabling the cursor pad

 03h	map V_CCP to V_CCPGID, converting cursor pad keys to GID data

 04h	map V_CCP to V_RAW, passing cursor pad data untranslated to INT 09

 05h	map V_SOFTKEY to V_SKEY2KFEY, translating into standard function keys

 06h	map V_SOFTKEY to V_RAW, passing Softkey scancodes direct to INT 09

 07h	map V_SOFTKEY to V_OFF, disabling HP Softkeys

SeeAlso: #0460

INT 16 6F07


16 6F07 Values for HP Vectra scancodes and BIOS keycodes for V_RAW translator:

Copy to Main

Table 0460

Values for HP Vectra scancodes and BIOS keycodes for V_RAW translator:

      INT 09	 INT 16 keycode

    Key	     scan code	Default	 Shifted   Ctrl	     Alt

 * (NumPd)	37h	2Ah	 (Prt Sc)  00/72h    00/37H

 Sysreq	54h	  --	 --	   --	     --

 CCP-Up	60h	00/D9h	 00/BFh	   00/A5h    00/8BH

 CCP-Left	61h	00/DAh	 00/C0h	   00/A6h    00/8CH

 CCP-Down	62h	00/DBh	 00/C1h	   00/A7h    00/8DH

 CCP-Right	63h	00/DCh	 00/C2h	   00/A8h    00/8EH

 CCP-Home	64h	00/DDh	 00/C3h	   00/A9h    00/8FH

 CCP-PgUp	65h	00/DEh	 00/C4h	   00/AAh    00/90H

 CCP-End	66h	00/DFh	 00/C5h	   00/ABh    00/91H

 CCP-PgDn	67h	00/E0h	 00/C6h	   00/ACh    00/92H

 CCP-Ins	68h	00/E1h	 00/C7h	   00/ADh    00/93H

 CCP-Del	69h	00/E2h	 00/C8h	   00/AEh    00/94H

 CCP-CNTR	6Ah	00/E3h	 00/C9h	   00/AFh    00/95H

 F1	70h	00/E9h	 00/CFh	   00/B5h    00/9BH

 F2	71h	00/EAh	 00/D0h	   00/B6h    00/9CH

 F3	72h	00/EBh	 00/D1h	   00/B7h    00/9DH

 F4	73h	00/ECh	 00/D2h	   00/B8h    00/9EH

 F5	74h	00/EDh	 00/D3h	   00/B9h    00/9FH

 F6	75h	00/EEh	 00/D4h	   00/BAh    00/A0H

 F7	76h	00/EFh	 00/D5h	   00/BBh    00/A1H

 F8	77h	00/F0h	 00/D6h	   00/BCh    00/A2H

SeeAlso: #0005,#0459

INT 16 6F07


16 6F08 Values for HP HIL keyboard language code:

Copy to Main

Table 0461

Values for HP HIL keyboard language code:

 00h	reserved

 01h	Arabic-French

 02h	Kanji

 03h	Swiss-French

 04h	Portugese

 05h	Arabic

 06h	Hebrew

 07h	Canadian-English

 08h	Turkish

 09h	Greek

 0Ah	Thai

 0Bh	Italian

 0Ch	Hangul (Korean)

 0Dh	Dutch

 0Eh	Swedish

 0Fh	German

 10h	Chinese (PRC)

 11h	Chinese (Taiwan)

 12h	Swiss (French ii)

 13h	Spanish

 14h	Swiss (German ii)

 15h	Belgian (Flemish)

 16h	Finish

 17h	United Kingdom

 18h	French-Canadian

 19h	French-German

 1Ah	Norwegian

 1Bh	French

 1Ch	Danish

 1Dh	Katakana

 1Eh	Latin American Spanish

 1Fh	United States-American

 20h-FEh reserved

 FFh	non-HP keyboard (IBM AT keyboard and IBM Enhanced keyboard)

INT 16 6F08


16 6F0A Values for HP Vetra CPU speed:

Copy to Main

Table 0462

Values for HP Vetra CPU speed:

Vectra	Low	    Medium	High

ES	8 MHz	     -	 8 MHz

ES/12	8 MHz	     -	12 MHz

QS/16, RS/16	8 MHz	     -	16 MHz

QS/16S	8 MHz	     -	16 MHz

QS/20, RS/20	8 MHz	     -	20 MHz

RS/20C	5 MHz	    10 MHz	20 MHz

RS/25C	5 MHz	    12.5 MHz	25 MHz

INT 16 6F0A


16 73-- Format of FAKEY.COM tone array entries:

Copy to Main

Table 0463

Format of FAKEY.COM tone array entries:

Offset	Size	Description

 00h	WORD	divisor for timer channel 2

 02h	WORD	duration in clock ticks

INT 16 73--


16 7C-- Values for pcANYWHERE III baud rate:

Copy to Main

Table 0464

Values for pcANYWHERE III baud rate:

 00h	50 baud

 01h	75 baud

 02h	110 baud

 03h	134.5 baud

 04h	150 baud

 05h	300 baud

 06h	600 baud

 07h	1200 baud

 08h	1800 baud

 09h	2000 baud

 0Ah	2400 baud

 0Bh	4800 baud

 0Ch	7200 baud

 0Dh	9600 baud

 0Eh	19200 baud

SeeAlso: #0206

INT 16 7C--


16 8765 Format of AT.COM event record:

Copy to Main

Table 0465

Format of AT.COM event record:

Offset	Size	Description

 00h	BYTE	in-use flag (00h free, 01h in use, FFh end of array)

 01h	BYTE	day of date on which to trigger

 02h	BYTE	month of date on which to trigger

 03h	BYTE	trigger time, minute

 04h	BYTE	trigger time, hour

 05h	WORD	offset of command to be executed

INT 16 8765


16 AF4D Format of internal K3 structure:

Copy to Main

Table 0466

Format of internal K3 structure:

Offset	Size	Description

 00h  3 BYTEs	signature "K3$"

 03h	BYTE	length of structure, including this byte and signature

 04h	WORD	compiler switch option flags A (see #0467)

 06h	WORD	compiler switch option flags B (see #0468)

 08h	BYTE	internal flags A (see #0469)

 09h	BYTE	internal flags B (see #0470)

 0Ah	WORD	DOS version recorded at startup

 0Ch	WORD	"ActTypeSpeed"

 0Eh	WORD	last Keyboard-ID sent

41ABh translated, 83ABh native (pass-through)

 10h	WORD	offset of K3TAB Special

 12h	WORD	offset of K3TAB German

 14h	WORD	offset of K3TAB Alt

 16h	WORD	offset of K3TAB AltGr

 18h	WORD	offset of K3TAB Ctrl

 1Ah	WORD	offset of K3TAB NPad

 1Ch	WORD	offset of K3TAB CtrlNPad

 1Eh	WORD	offset of K3TAB AltNPad

 20h	WORD	offset of K3TAB ApoTbl or 0000h

 22h	WORD	offset of K3TAB UmlautTbl or 0000h

 24h	WORD	offset of K3TAB UmlautTblExp or 0000h

 26h	WORD	length of video mode table

 28h	WORD	offset of VidMdTbl or 0000h

 2Ah	BYTE	'$' end marker

INT 16 AF4D


16 AF4D Bitfields for K3PLUS compiler switch option flags A:

Copy to Main

Table 0467

Bitfields for K3PLUS compiler switch option flags A:

Bit(s)	Description

 15	GuINT16Fct2 (general use of INT 16 function 2)

 14	Int15df (INT 15 has to be predefined)

 13	GuAltNP (general use of Alt Numpad)

 12	SupAT (ATs+ supported)

 11	GuINT16Fct3 (general use of INT 16 function 3)

 10	GuINT16Ret (general use of INT16 bad function return)

 9-8	Layout (0-2, 3 reserved; 0=PC, 1=AT, 2=MF)

 7	ForceMF (force MF decode without read-ID)

 6	KXlate (translate keys for special keyboard)

 5	UmlautX (umlaut translation capability included)

 4	ApoX (translate apostrophe)

 3	DoINT16 (INT 16 handler included)

 2	UseCC (CopyCursor included)

 1-0	UseEB

0=no extended keystroke buffer, 1=reserve mem, 2=use PSP, 3=reserved

INT 16 AF4D


16 AF4D Bitfields for K3 compiler switch option flags B:

Copy to Main

Table 0468

Bitfields for K3 compiler switch option flags B:

Bit(s)	Description

 15-11	reserved (0)

 10	CtrlSeq (Ctrl macro capability included)

 9-8	SupINT16fct55FE

 6	DoInstallCheck (check for double installation)

 5	SupINT16fct5PcJr (INT 16/AH=05h"PCjr" supported)

 4	SendOut (sound and message output supported)

 3	SupInt16fct5500 (INT 16/AX=5500h supported)

 2	GuINT15Fct4F (calls to INT 15/AH=4Fh supported)

 1-0	UseBufferStart (0=use standard area, 1=set standard area,

2=use internal indexes, 3=reserved)

INT 16 AF4D


16 AF4D Bitfields for K3 internal flags A:

Copy to Main

Table 0469

Bitfields for K3 internal flags A:

Bit(s)	Description

 7	DoingUmlautExp

 6	CallINT15fct4F

 5	Beep1 (requires SendOut set in option flags B)

 4	ATflag (set for AT, 386, PS/2 Models 50-80)

 3	XTflag (set for PC, PC/XT, Micromint PC, Pencock PC, PS/2 Model 30)

 2	KeyClick

 1	UmlautExp

 0	UmlautTrans

INT 16 AF4D


16 AF4D Bitfields for K3 internal flags B:

Copy to Main

Table 0470

Bitfields for K3 internal flags B:

Bit(s)	Description

 7-5	reserved

 4	TranslateE0 enabled

 3	Boot enabled

 2	PrintScreen enabled

 1	Break enabled

 0	ApoPendingBeep

INT 16 AF4D


16 AF50 Bitfields for K3PLUS supported function list:

Copy to Main

Table 0471

Bitfields for K3PLUS supported function list:

Bit(s)	Description

 0	function 4Dh supported

 1	function 50h supported

 2-3	reserved (0)

 4	function 20h supported

 5	function 25h supported

 6	function 51h supported

 7	reserved (0)

 8	function 80h supported

 9	function 81h supported

 10	function 82h supported

 11-15	reserved (0)

INT 16 AF50


16 F0-- Values for speed code:

Copy to Main

Table 0472

Values for speed code:

 00h	equivalent to 6 MHz 80286 (COMMON)

 01h	equivalent to 8 MHz 80286 (FAST)

 02h	full 16 MHz (HIGH)

 03h	toggles between 8 MHz-equivalent and speed set by system board switch

  (AUTO or HIGH)

 08h	full 16 MHz except 8 MHz-equivalent during floppy disk access

 09h	specify speed directly

INT 16 F0--


16 F0F0 Format of TurboPower TSR data block:

Copy to Main

Table 0473

Format of TurboPower TSR data block:

Offset	Size	Description

 00h	DWORD	pointer to program tag (counted ASCII string)

 04h	WORD	interface version number (0400h)

 06h	DWORD	pointer to command entry point

 0Ah	DWORD	pointer to previous data block (0000h:0000h if none)

 0Eh	DWORD	pointer to next data block (0000h:0000h if none)

---swappable TSRs only---

 12h	DWORD	pointer to swapping data

 16h	DWORD	pointer to user data

more???

INT 16 F0F0


16 FA02 Bitfields for VSAFE/VWATCH parameter flags:

Copy to Main

Table 0474

Bitfields for VSAFE/VWATCH parameter flags:

Bit(s)	Description

 7	Protect executable files

 6	Protect FD boot sector

 5	Protect HD boot sector

 4	Boot sector viruses

 3	Check executable files

 2	General write protect

 1	Resident

 0	HD Low level format

INT 16 FA02


16 FF80 Bitfields for CPTASK flags:

Copy to Main

Table 0475

Bitfields for CPTASK flags:

Bit(s)	Description

 10	???

 13	???

 14	???

 15	???

INT 16 FF80


16 FF97 Format of PC Tools DESKTOP buffer:

Copy to Main

Table 0476

Format of PC Tools DESKTOP buffer:

Offset	Size	Description

 00h 48 BYTEs	???

 30h 128 BYTEs	???

INT 16 FF97


16 FF98 Format of PC Tools DESKTOP overlay header:

Copy to Main

Table 0477

Format of PC Tools DESKTOP overlay header:

Offset	Size	Description

 00h 12 BYTEs	NUL-padded ASCII overlay filename

 0Ch	DWORD	offset within DESK.OVL file of actual overlay

INT 16 FF98


16 FFA5 Format of PC-Cache internal data:

Copy to Main

Table 0478

Format of PC-Cache internal data:

Offset	Size	Description

-1Ch 20 BYTEs	cached drive list, one byte per drive A: to T:

each byte is either blank (20h) or drive letter (41h-54h)

 -8	BYTE	???

 -7	WORD	number of physical transfers (scaled down to 0000h-7FFFh)

 -5	WORD	number of saved transfers (scaled down to 0000h-7FFFh)

 -3   3 BYTEs	???

INT 16 FFA5


16 FFB5 Values for PC Tools DESKTOP window specifier:

Copy to Main

Table 0479

Values for PC Tools DESKTOP window specifier:

 000Fh	comm/FAX

 0014h	hotkey selection

 0015h	ASCII table

 0016h	system colors menu

INT 16 FFB5


16 FFB5 Format of PC Tools DESKTOP window parameters:

Copy to Main

Table 0480

Format of PC Tools DESKTOP window parameters:

Offset	Size	Description

 00h	BYTE	rows in window, not counting frame

 01h	BYTE	columns in window, not counting frame

 02h	BYTE	row number of top of window

 03h	BYTE	2*column number of left of window

 04h	BYTE	character attribute for ???

 05h	BYTE	character attribute for background/border

 06h	BYTE	character attribute for ???

 07h	DWORD	pointer to ??? on screen

 0Bh  4 BYTEs	???

 0Fh	BYTE	nonzero if window may be resized

Note:	if running in monochrome mode, character attributes at offsets 04h to

  06h are stored unchanged, but attributes other than 07h, 0Fh, or 70h

  are changed to 07h on reading

INT 16 FFB5


16 FFC1 Format of PC Tools DESKTOP data structure:

Copy to Main

Table 0481

Format of PC Tools DESKTOP data structure:

Offset	Size	Description

 00h	WORD	???

 02h	WORD	???

 04h	WORD	???

 06h	WORD	???

 08h	WORD	???

 0Ah	BYTE	???

 0Bh	BYTE	??? (zero/nonzero)

---v7.1---

 0Ch	WORD	???

 0Eh	BYTE	???

 0Fh	WORD	???

 11h	WORD	???

???

INT 16 FFC1


16 FFDD Format of PC Tools PCShell returned pointer list:

Copy to Main

Table 0482

Format of PC Tools PCShell returned pointer list:

Offset	Size	Description

 00h	WORD	offset of WORD containing ???

 02h	WORD	offset of name of program to execute

 04h	WORD	offset of 80-byte buffer for ???

 06h	WORD	offset of buffer for ??? (length in WORD preceding buffer)

 08h	WORD	offset of buffer for ??? (length in WORD preceding buffer)

INT 16 FFDD


16 FFEE Format of PC Tools DESKTOP pulldown menu system description:

Copy to Main

Table 0483

Format of PC Tools DESKTOP pulldown menu system description:

Offset	Size	Description

 00h	WORD	offset of menu bar contents (counted string)

 02h	WORD	number of items on menu bar

 04h 10 BYTEs	scan codes for hotkeying to each of up to ten menu items

 0Eh 10 BYTEs	which character to highlight in each menu item (01h=first)

 18h	WORD	offset of first menu definition (see #0484)

 1Ah	WORD	offset of second menu definition

...

INT 16 FFEE


16 FFEE Format of PC Tools DESKTOP menu definition:

Copy to Main

Table 0484

Format of PC Tools DESKTOP menu definition:

Offset	Size	Description

 00h	WORD	offset of menu contents (see #0485)

 02h	WORD	number of entries in menu

 04h	for each entry:

Offset	Size	Description

 00h	BYTE	scancode of Alt-key to invoke entry

 01h	BYTE	character to highlight (01h=first, etc)

 02h	WORD	offset of FAR routine to handle selection

INT 16 FFEE


16 FFEE Format of PC Tools DESKTOP menu contents:

Copy to Main

Table 0485

Format of PC Tools DESKTOP menu contents:

Offset	Size	Description

 00h	BYTE	number of lines in menu

 01h	BYTE	width of menu

 02h  N BYTEs	counted strings, one for each line in menu

INT 16 FFEE


16 FFF5 Format of PC Tools DESKTOP attribute data structure:

Copy to Main

Table 0486

Format of PC Tools DESKTOP attribute data structure:

Offset	Size	Description

 -1	BYTE	attribute for desktop background

 00h	BYTE	attribute for normal characters on desktop menu

 01h	BYTE	attribute for highlighted characters on desktop menu

 02h  5 BYTEs	???

 07h	BYTE	attribute for dialog boxes

 08h 15 BYTEs	???

 17h	BYTE	attribute for message boxes

INT 16 FFF5


16 FFF6 Format of PC Tools DESKTOP editor buffer structure:

Copy to Main

Table 0487

Format of PC Tools DESKTOP editor buffer structure:

Offset	Size	Description

 00h	WORD	offset of current cursor position in buffer segment

 02h  2 BYTEs	???

 04h	WORD	offset of beginning of file data in buffer segment

 06h 10 BYTEs	???

 10h  N BYTEs	ASCIZ name of file being edited

INT 16 FFF6


16 FFFC Format of PC Tools DESKTOP hotkey table:

Copy to Main

Table 0488

Format of PC Tools DESKTOP hotkey table:

Offset	Size	Description

 00h  2 BYTEs	scancode/shift state for desktop hotkey

 02h  2 BYTEs	scancode/shift state for clipboard paste key

 04h  2 BYTEs	scancode/shift state for clipboard copy key

 06h  2 BYTEs	scancode/shift state for screen autodial key

INT 16 FFFC


17 00-- Bitfields for printer status:

Copy to Main

Table 0489

Bitfields for printer status:

Bit(s)	Description

 7	not busy

 6	acknowledge

 5	out of paper

 4	selected

 3	I/O error

 2-1	unused

 0	timeout

INT 17 00--


17 0200 Call EPP BIOS entry point with:

Copy to Main

Table 0490

Call EPP BIOS entry point with:

DL = port number

AH = function

    00h get ???

Return: AH = 00h if successful

    BH = ??? (10h)

    BL = ??? (00h)

    ES:DI -> driver copyright string???

    CX = I/O port base address for parallel port

    AL = IRQ number used by port

    01h set port mode???

AL = ???

    bit 0: ???

    bit 1: ???

    bit 2: ???

    bits 3-7 reserved (0)

Return: AH = 00h if successful

CF clear if successful

AL = ??? (destroyed?)

    02h get port mode???

Return: AL = ??? (01h,02h,04h,FFh)

AH = 00h

CF clear

    03h interrupt control

AL = subfunction

    00h enable parallel port interrupts

    01h disable parallel port interrupts

Return: AH = status (00h,05h,06h) (see also #0491)

    04h set ???

Return: AH = 00h if successful

AL destroyed

    05h ???

Return: AL destroyed

    06h get ???

Return: AL = ??? (read from port 037Bh after setting bit 5 of

  port 037Ah)

    07h get ???

Return: AL = ??? (read from port 037Ch after clearing bit 5 of

  port 037Ah)

    08h output block of data

ES:SI -> block of data to be sent to parallel port

CX = number of bytes to output

Return: AH = status (see #0491)

Note:	clears bit 5 of port 037Ah, then does OUTSB to 037Ch

    09h read byte of data

Return: AH = status (see #0491)

AL = byte read from parallel port

Note:	sets bit 5 of port 037Ah, then does IN from 037Ch

    0Ah read block of data

ES:DI -> buffer for received data

CX = number of bytes to read from paralle port

Return: AH = status (see #0491)

ES:DI buffer filled if successful

Note:	sets bit 5 of port 037Ah, then does INSB from 037Ch

    0Bh read ???

AL = ???

Return: AH = status (see #0491)

AL = byte read if successful

Note:	clears bit 5 of port 037Ah, does OUT to 037Bh, then

  sets bit 5 of 037Ah and does IN from 037Ch

    0Ch send ???

AL = ??? (byte to send to port 037Bh)

DH = ??? (byte to send to port 037Ch)

Return: AH = status (see #0491)

Note:	clears bit 5 of port 037Ah, does OUT to 037Bh, then

  sets bit 5 of 037Ah and does OUT to 037Ch

    0Dh read block ???

AL = ??? (byte to send to port 037Bh)

ES:DI -> buffer for received data

CX = number of bytes to read

Return: AH = status (see #0491)

Note:	clears bit 5 of port 037Ah, does OUT to 037Bh, then

  sets bit 5 of 037Ah and does INSB from 037Ch

    0Eh write block ???

AL = ??? (byte to send to port 037Bh)

ES:DI -> data to be sent

CX = number of bytes to write

Return: AH = status (see #0491)

Note:	clears bit 5 of port 037Ah, does OUT to 037Bh, then

  sets bit 5 of 037Ah and does OUTSB to 037Ch

    0Fh NOP???

Return: AH = status (00h,03h,05h) (see #0491)

Notes:	this function does nothing beyond checking whether

  the desired port is supported and in the proper mode

must call function 01h with AL=04h first to get a

  successful return code

    10h NOP???

Return: AH = status (00h,03h,05h) (see #0491)

Notes:	this function does nothing beyond checking whether

  the desired port is supported and in the proper mode

must call function 01h with AL=04h first to get a

  successful return code

    11h ???

AL = subfunction

    00h ???

    01h ???

ES:DI -> ???

Return: AH = status (00h,03h,05h,06h) (see #0491)

    12h ???

AL = subfunction

    00h get ???

    01h increment ???

    02h decrement ???

Return: AH = status (00h,05h,06h,07h) (see #0491)

AL = current state of ??? (00h,01h)

Note:	unlike all other functions, this one does not use DL

Return: AH = status (see #0491)

CF clear if successful

CF set on error

Notes:	functions 03h-12h all require that function 01h have been called

  with AL=04h first

the above description is derived from Compaq's EPPBIOS.SYS, supplied

  in SOFTPAQ number 0937

INT 17 0200


17 0200 Values for EPP BIOS function status:

Copy to Main

Table 0491

Values for EPP BIOS function status:

 00h	successful

 02h	invalid parameter???

 03h	unsupported parallel port

 05h	unsupported in current mode

 06h	invalid subfunction

 07h	already ???

 FFh	invalid/unsupported function

INT 17 0200


17 2000 Values for PC Paint function status:

Copy to Main

Table 0492

Values for PC Paint function status:

 0000h	successful

 0001h	invalid printer???

 0002h	???

 0003h	invalid subfunction

 0005h	driver disabled, must call function 00h first

 0009h	unknown printer error

 000Bh	printer not selected

 000Ch	printer out of paper

 000Eh	error while writing to serial printer

 000Fh	???

 0010h	invalid function number

 0011h	value out of range

INT 17 2000


17 2400 Values for NET.24 function status:

Copy to Main

Table 0493

Values for NET.24 function status:

 00h	successful

 01h	timeout

 02h	header error

 03h	data error

 04h	busy

 05h	invalid parameters

INT 17 2400


17 63-- Format of T2PS settings:

Copy to Main

Table 0494

Format of T2PS settings:

Offset	Size	Description

 00h	WORD	LPT port number (0=LPT1, etc.)

 02h	WORD	page heigh in points

 04h	WORD	page width in points

 06h	WORD	top margin in points

 08h	WORD	bottom margin in points

 0Ah	WORD	left margin in points

 0Ch	WORD	right margin in points

 0Eh	WORD	font size in points

 10h	WORD	tab size

 12h	WORD	timeout in clock ticks

INT 17 63--


17 81-- Values for Alloy status:

Copy to Main

Table 0495

Values for Alloy status:

 00h	success

 01h-7Fh warning

 80h	general failure

 81h	host overloaded (NTNX only)

 82h	module busy (NTNX only)

 83h	host busy (NTNX only)

 84h	re-entry flag set

 85h	invalid request

 86h	invalid printer

 87h	invalid process ID

 89h	access denied

 8Ah	option not available for given port type

 8Bh	option not available for given task type

 91h	printer busy

 C2h	file not found

 C3h	path not found

 C4h	file access failure

INT 17 81--


17 88-- Values for Alloy NTNX printer number:

Copy to Main

Table 0496

Values for Alloy NTNX printer number:

 00h	host LPT1

 01h	host LPT2

 02h	host LPT3

 03h	host LPT4

 04h	host COM1

 05h	host COM2

 06h	user's logical COM2

 07h	user's terminal AUX port

 08h	user's logical COM1 (MW386 only)

INT 17 88--


17 99-- Bitfields for Alloy printer mode:

Copy to Main

Table 0497

Bitfields for Alloy printer mode:

 0	get mode if 1, set mode if 0

 1	private ("attached")

 2	direct instead of spooled

 3-7	reserved (0)

INT 17 99--


17 A7-- Bitfields for Alloy spool flags:

Copy to Main

Table 0498

Bitfields for Alloy spool flags:

Bit(s)	Description

 0	banner page enabled (see AH=A6h)

 1	form feed enabled (see AH=A4h)

 2-6	reserved (0)

 7	set flags if 1, get flags if 0

INT 17 A7--


17 C0-- Format of PCSpool control block:

Copy to Main

Table 0499

Format of PCSpool control block:

Offset	Size	Description

 00h	WORD	printer number

 02h	WORD	address of printer status port

 04h	WORD	number of first record in queue

 06h	WORD	number of last record in queue

 08h	DWORD	characters already printed

 0Ch	DWORD	number of characters remaining

 10h	DWORD	pointer to dequeue buffer

 14h	DWORD	previous count of characters printed

 18h	DWORD	number of clock ticks taken to print them

 1Ch	WORD	offset of next character to output

 1Eh	WORD	offset of next character to print

 20h	WORD	pointer to spooling queue record

 22h	BYTE	current spooling status

 23h	BYTE	current printer status:

00h OK

01h not ready

02h paused with message

03h paused

04h initializing

FEh non-existent port

FFh not spooled

 24h	BYTE	current control record type

 25h	WORD	observed printer speed

 27h	WORD	characters to print per service

 29h	BYTE	01h if disk write needed

 2Ah	BYTE	01h if queued data should be flushed

 2Bh	BYTE	01h to update cps status

INT 17 C0--


17 CD04 Values INSET linked-mode routine is called with:

Copy to Main

Table 0500

Values INSET linked-mode routine is called with:

AL = function

    00h send character to printer

BL = character to send

    01h send string to printer

CX = number of bytes to send

DS:DX -> buffer containing data

    02h move print head to horizontal starting position of image

Return:	AX = status

    0000h success

    0001h failure

INT 17 CD04


19 ---- Format of VDISK header block (at beginning of INT 19 handler's segment):

Copy to Main

Table 0501

Format of VDISK header block (at beginning of INT 19 handler's segment):

Offset	Size	Description

 00h 18 BYTEs	n/a (for VDISK.SYS, the device driver header)

 12h 11 BYTEs	signature string "VDISK	 Vn.m" for VDISK.SYS version n.m

 1Dh 15 BYTEs	n/a

 2Ch  3 BYTEs	linear address of first byte of available extended memory

INT 19 ----


19 ---- Format of hard disk master boot sector:

Copy to Main

Table 0502

Format of hard disk master boot sector:

Offset	Size	Description

 00h 446 BYTEs	Master bootstrap loader code

1BEh 16 BYTEs	partition record for partition 1 (see #0503)

1CEh 16 BYTEs	partition record for partition 2

1DEh 16 BYTEs	partition record for partition 3

1EEh 16 BYTEs	partition record for partition 4

1FEh	WORD	signature, AA55h indicates valid boot block

INT 19 ----


19 ---- Format of partition record:

Copy to Main

Table 0503

Format of partition record:

Offset	Size	Description

 00h	BYTE	boot indicator (80h = active partition)

 01h	BYTE	partition start head

 02h	BYTE	partition start sector (bits 0-5)

 03h	BYTE	partition start track (bits 8,9 in bits 6,7 of sector)

 04h	BYTE	operating system indicator (see #0504)

 05h	BYTE	partition end head

 06h	BYTE	partition end sector (bits 0-5)

 07h	BYTE	partition end track (bits 8,9 in bits 6,7 of sector)

 08h	DWORD	sectors preceding partition

 0Ch	DWORD	length of partition in sectors

SeeAlso: #0502

INT 19 ----


19 ---- Values for operating system indicator:

Copy to Main

Table 0504

Values for operating system indicator:

 00h	empty

 01h	DOS 12-bit FAT

 02h	XENIX root file system

 03h	XENIX /usr file system (obsolete)

 04h	DOS 16-bit FAT (up to 32M)

 05h	DOS 3.3+ extended partition

 06h	DOS 3.31+ Large File System (16-bit FAT, over 32M)

 07h	QNX

 07h	OS/2 HPFS

 07h	Windows NT NTFS

 07h	Advanced Unix

 08h	AIX bootable partition, SplitDrive

 09h	AIX data partition

 09h	Coherent filesystem

 0Ah	OS/2 Boot Manager

 0Ah	OPUS

 0Ah	Coherent swap partition

 10h	OPUS

 11h	OS/2 Boot Manager hidden 12-bit FAT partition

 12h	Compaq Diagnostics partition

 14h	(resulted from using Novell DOS 7.0 FDISK to delete Linux Native part)

 14h	OS/2 Boot Manager hidden sub-32M 16-bit FAT partition

 16h	OS/2 Boot Manager hidden over-32M 16-bit FAT partition

 17h	OS/2 Boot Manager hidden HPFS partition

 18h	AST special Windows swap file

 24h	NEC MS-DOS 3.x

 3Ch	PowerQuest PartitionMagic recovery partition

 40h	VENIX 80286

 42h	SFS (Secure File System) by Peter Gutmann

 50h	Disk Manager, read-only partition

 51h	Disk Manager, read/write partition

 51h	Novell???

 52h	CP/M

 52h	Microport System V/386

 56h	GoldenBow VFeature

 61h	SpeedStor

 63h	Unix SysV/386, 386/ix

 63h	Mach, MtXinu BSD 4.3 on Mach

 63h	GNU HURD

 64h	Novell NetWare

 65h	Novell NetWare (3.11)

 70h	DiskSecure Multi-Boot

 75h	PC/IX

 80h	Minix v1.1 - 1.4a

 81h	Minix v1.4b+

 81h	Linux

 81h	Mitac Advanced Disk Manager

 82h	Linux Swap partition

 83h	Linux native file system (ext2fs/xiafs)

 84h	OS/2-renumbered type 04h partition (related to hiding DOS C: drive)

 93h	Amoeba file system

 94h	Amoeba bad block table

 A5h	FreeBSD

 B7h	BSDI file system (secondarily swap)

 B8h	BSDI swap partition (secondarily file system)

 C1h	DR-DOS 6.0 LOGIN.EXE-secured 12-bit FAT partition

 C4h	DR-DOS 6.0 LOGIN.EXE-secured 16-bit FAT partition

 C6h	DR-DOS 6.0 LOGIN.EXE-secured Huge partition

 C7h	Cyrnix Boot

 DBh	CP/M, Concurrent CP/M, Concurrent DOS

 DBh	CTOS (Convergent Technologies OS)

 E1h	SpeedStor 12-bit FAT extended partition

 E4h	SpeedStor 16-bit FAT extended partition

 F2h	DOS 3.3+ secondary

 F4h	SpeedStor

 FEh	LANstep

 FFh	Xenix bad block table

SeeAlso: #0503

INT 19 ----


1A 6108 Values for SNAP.EXE status:

Copy to Main

Table 0505

Values for SNAP.EXE status:

 0000h	successful

 F830h	"SNAP_ABORTED"

 FC04h	"SNAP_SERVERDIED"

 FC05h	"SNAP_RESEND"

 FC06h	"SNAP_SELECTFAILED"

 FC07h	"SNAP_WRONGVERSION"

 FC08h	"SNAP_INVALIDACK"

 FC09h	"SNAP_TIMEOUT"

 FC0Ah	"SNAP_SERVERREJECT"

 FC0Bh	"SNAP_NOREPLYDUE"

 FC0Ch	"SNAP_NOAUTHENTICATE"/"SNAP_GUARDIAN_ERROR"

 FC0Dh	"SNAP_NOINIT"

 FC0Eh	"SNAP_SOCKETERROR"

 FC0Fh	"SNAP_BUFFERLIMIT"

 FC10h	"SNAP_INVALIDCID"

 FC11h	"SNAP_INVALIDOP"

 FC12h	"SNAP_XMITFAIL"

 FC13h	"SNAP_NOMORERETRIES"

 FC14h	"SNAP_BADPARMS"

 FC15h	"SNAP_NOMEMORY"

 FC16h	"SNAP_NOMORECONVS"

 FFFFh	failed (invalid function/parameter)

INT 1A 6108


1A 6308 Format of SNAP.EXE Cparms structure:

Copy to Main

Table 0506

Format of SNAP.EXE Cparms structure:

Offset	Size	Description

 00h	WORD	retry delay in seconds

 02h	WORD	timeout delay in seconds

 04h	WORD	maximum buffer size

 06h	WORD	encryption level

INT 1A 6308


1A 80-- Values for PCMCIA error codes:

Copy to Main

Table 0507

Values for PCMCIA error codes:

 01h	"BAD_ADAPTER" nonexistent adapter

 02h	"BAD_ATTRIBUTE" invalid attribute specified

 03h	"BAD_BASE" invalid system memory base address

 04h	"BAD_EDC" invalid EDC generator specified

 05h	"BAD_INDICATOR" invalid indicator specified

 06h	"BAD_IRQ" invalid IRQ channel specified

 07h	"BAD_OFFSET" invalid PCMCIA card offset specified

 08h	"BAD_PAGE" invalid page specified

 09h	"BAD_READ" unable to complete request

 0Ah	"BAD_SIZE" invalid window size specified

 0Bh	"BAD_SOCKET" nonexistent socket specified

 0Ch	"BAD_TECHNOLOGY" unsupported Card Technology for writes

 0Dh	"BAD_TYPE" unavailable window type specified

 0Eh	"BAD_VCC" invalid Vcc power level index specified

 0Fh	"BAD_VPP" invalid Vpp1 or Vpp2 power level index specified

 10h	"BAD_WAIT" invalid number of wait states specified

 11h	"BAD_WINDOW" nonexistent window specified

 12h	"BAD_WRITE" unable to complete request

 13h	"NO_ADAPTERS" no adapters installed, but Socket Services is present

 14h	"NO_CARD" no card in socket

 15h	function not supported

 16h	invalid mode

 17h	invalid speed

 18h	busy

INT 1A 80--


1A 81-- Values PCMCIA callback routine is invoked with:

Copy to Main

Table 0508

Values PCMCIA callback routine is invoked with:

AL = adapter number

BH = status change interrupt enable mask (see #0509)

BL = socket number

DH = current socket status (see #0510)

DL = current card status (see #0511)

Return: all registers preserved

Notes:	the callback may be invoked during a hardware interrupt, and may not

  call on Socket Services

the callback will be invoked once for each socket with a status change

INT 1A 81--


1A 81-- Bitfields for PCMCIA status change interrupt enable mask:

Copy to Main

Table 0509

Bitfields for PCMCIA status change interrupt enable mask:

Bit(s)	Description

 7	card detect change

 6	ready change

 5	battery warning change

 4	battery dead change

 3	insertion request

 2	ejection request

 1-0	reserved (0)

INT 1A 81--


1A 81-- Bitfields for PCMCIA current socket status:

Copy to Main

Table 0510

Bitfields for PCMCIA current socket status:

Bit(s)	Description

 7	card changed

 6	reserved (0)

 5	card insertion complete

 4	card ejection complete

 3	card insertion request pending

 2	card ejection request pending

 1	card locked

 0	reserved (0)

INT 1A 81--


1A 81-- Bitfields for PCMCIA current card status:

Copy to Main

Table 0511

Bitfields for PCMCIA current card status:

Bit(s)	Description

 7	card detect

 6	ready

 5	battery voltage detect 2 (battery warning)

 4	battery voltage detect 1 (battery dead)

 3-1	reserved (0)

 0	write protected

INT 1A 81--


1A 82-- Values PCMCIA callback routine is invoked with:

Copy to Main

Table 0512

Values PCMCIA callback routine is invoked with:

ES:AX -> Low-Level Socket Services Routines (see #0514)

BH = socket attributes (see #0513)

CX = number of bytes or words to write

DS:SI -> data buffer to be written

DX:DI -> 26-bit linear card address

BP = card technology type

Return: CF clear if successful

CF set on error

    AH = error code (07h,0Ch,12h,14h) (see #0507)

INT 1A 82--


1A 82-- Bitfields for PCMCIA socket attributes:

Copy to Main

Table 0513

Bitfields for PCMCIA socket attributes:

Bit(s)	Description

 7-4	reserved (0)

 3	packed buffer

 2	even bytes only (only valid if 1 set)

 1	data width (clear = byte, set = word)

 0	memory type (clear = common, set = attribute)

INT 1A 82--


1A 82-- Format of PCMCIA Low-Level Socket Services Routines:

Copy to Main

Table 0514

Format of PCMCIA Low-Level Socket Services Routines:

Offset	Size	Description

 00h	WORD	offset of Write Many routine (see #0515)

 02h	WORD	offset of Write One routine (see #0516)

 04h	WORD	offset of Read One routine (see #0517)

 06h	WORD	offset of Increment Offset routine (see #0518)

 08h	WORD	offset of Set Offset routine (see #0519)

 0Ah	WORD	offset of Get Status routine (see #0520)

INT 1A 82--


1A 82-- Call Write Many routine with:

Copy to Main

Table 0515

Call Write Many routine with:

BH = socket attributes (see #0513)

CX = number of bytes or words to write

DS:SI -> data to be written

Return: CF clear if successful

CF set on error

INT 1A 82--


1A 82-- Call Write One routine with:

Copy to Main

Table 0516

Call Write One routine with:

AL/AX = data to be written

BH = socket attributes (see #0513)

Return: CF clear if successful

CF set on error

INT 1A 82--


1A 82-- Call Read One routine with:

Copy to Main

Table 0517

Call Read One routine with:

BH = socket attributes (see #0513)

Return: CF clear if successful

    AL/AX = data read

CF set on error

INT 1A 82--


1A 82-- Call Increment Offset routine with:

Copy to Main

Table 0518

Call Increment Offset routine with:

BH = socket attributes (see #0513)

Return: CF clear if successful

CF set on error

INT 1A 82--


1A 82-- Call Set Offset routine with:

Copy to Main

Table 0519

Call Set Offset routine with:

DX:DI = new offset address

Return: CF clear if successful

CF set on error

INT 1A 82--


1A 82-- Call Get Status routine with:

Copy to Main

Table 0520

Call Get Status routine with:

nothing

Return: AL = current card status (see #0511)

INT 1A 82--


1A 84-- Bitfields for PCMCIA capabilities:

Copy to Main

Table 0521

Bitfields for PCMCIA capabilities:

Bit(s)	Description

 7-6	reserved (0)

 5	status change interrupt is hardware shareable

 4	status change interrupt is software shareable

 3	status change interrupt

 2	data bus width is per-socket rather than per-window

 1	power management is per-adapter rather than per-socket

 0	indicators are per-adapter rather than per-socket

INT 1A 84--


1A 84-- Values for PCMCIA status change interrupt usage:

Copy to Main

Table 0522

Values for PCMCIA status change interrupt usage:

 00h-0Fh IRQ level

 10h	NMI

 11h	I/O check

 12h	bus error

 13h	vendor specific

 14h-FFh reserved

INT 1A 84--


1A 85-- Bitfields for PCMCIA adapter attributes:

Copy to Main

Table 0523

Bitfields for PCMCIA adapter attributes:

Bit(s)	Description

 7-5	reserved (0)

 4	hardware share status change

 3	software share status change

 2	enable status change interrupts

 1	adapter preserves state information during reduced power consumption

 0	attempting to reduce power consumption

INT 1A 85--


1A 87-- Bitfields for PCMCIA window capabilities:

Copy to Main

Table 0524

Bitfields for PCMCIA window capabilities:

Bit(s)	Description

 7-5	reserved (0)

 4	separate enable for EISA comon space

 3	EISA I/O mappable

 2	I/O space

 1	attribute memory

 0	common memory

INT 1A 87--


1A 87-- Bitfields for PCMCIA supported access speeds:

Copy to Main

Table 0525

Bitfields for PCMCIA supported access speeds:

Bit(s)	Description

 7	reserved (0)

 6	600 ns

 5	300 ns

 4	250 ns

 3	200 ns

 2	150 ns

 1	100 ns

 0	WAIT line monitoring

INT 1A 87--


1A 87-- Format of PCMCIA Memory Window Characteristics table:

Copy to Main

Table 0526

Format of PCMCIA Memory Window Characteristics table:

Offset	Size	Description

 00h	WORD	window capabilities (see #0528)

 02h	WORD	minimum base address in 4K pages

 04h	WORD	maximum base address in 4K pages

 06h	WORD	minimum window size in 4K pages

 08h	WORD	maximum window size in 4K pages

 0Ah	WORD	window size granularity (4K units)

 0Ch	WORD	required base address alignment (4K units)

 0Eh	WORD	required card offset alignment (4K units)

INT 1A 87--


1A 87-- Format of PCMCIA I/O Window Characteristics table:

Copy to Main

Table 0527

Format of PCMCIA I/O Window Characteristics table:

Offset	Size	Description

 00h	WORD	window capabilities (see #0528)

 02h	WORD	minimum base address in bytes

 04h	WORD	maximum base address in bytes

 06h	WORD	minimum window size in bytes

 08h	WORD	maximum window size in bytes

 0Ah	WORD	window size granularity (bytes)

INT 1A 87--


1A 87-- Bitfields for PCMCIA window capabilities:

Copy to Main

Table 0528

Bitfields for PCMCIA window capabilities:

Bit(s)	Description

 0	programmable base address

 1	programmable window size

 2	window disable/enable supported

 3	8-data bus

 4	16-data bus

 5	base address alignment on size boundary required

 6	power-of-two size granularity

---memory windows---

 7	card offset must be aligned on size boundary

 8	paging hardware available

 9	paging hardware shared

 10	page disable/enable supported

 11-15	reserved (0)

---I/O windows---

 7-15	reserved (0)

INT 1A 87--


1A 88-- Bitfields for PCMCIA window attributes:

Copy to Main

Table 0529

Bitfields for PCMCIA window attributes:

Bit(s)	Description

 0	memory-mapped rather than I/O-mapped

 1	attribute memory rather than common (memory-mapped)

EISA mapped (I/O)

 2	enabled

 3	16-data path

 4	subdivided into pages (memory-mapped only)

 5	non-specific access slot enable (EISA-mapped only)

 6-7	reserved (0)

INT 1A 88--


1A 8A-- Bitfields for PCMCIA page attributes:

Copy to Main

Table 0530

Bitfields for PCMCIA page attributes:

Bit(s)	Description

 0	page enabled

 15-1	reserved (0)

INT 1A 8A--


1A 8C-- Bitfields for PCMCIA socket capabilities:

Copy to Main

Table 0531

Bitfields for PCMCIA socket capabilities:

Bit(s)	Description

 0	card change

 1	card lock

 2	insert card (motor control)

 3	eject card (motor control)

 4-7	reserved (0)

INT 1A 8C--


1A 8C-- Bitfields for PCMCIA socket hardware indicators:

Copy to Main

Table 0532

Bitfields for PCMCIA socket hardware indicators:

Bit(s)	Description

 0	busy status

 1	write-protected

 2	battery status

 3	card lock status

 4	XIP status (eXecute-In-Place)

 5-7	reserved (0)

INT 1A 8C--


1A 8C-- Format of PCMCIA Socket Characteristics table:

Copy to Main

Table 0533

Format of PCMCIA Socket Characteristics table:

Offset	Size	Description

 00h	WORD	supported card types (see #0534)

 02h	WORD	steerable IRQ levels (bit 0 = IRQ0 to bit 15 = IRQ15)

 04h	WORD	additional steerable IRQ levels

bit 0: NMI

bit 1: I/O check

bit 2: bus error

bit 3: vendor-unique

bits 4-7 reserved (0)

INT 1A 8C--


1A 8C-- Bitfields for supported card types:

Copy to Main

Table 0534

Bitfields for supported card types:

Bit(s)	Description

 0	memory card

 1	I/O card

 2-7	reserved (0)

INT 1A 8C--


1A 8C-- Format of PCMCIA Power Management table:

Copy to Main

Table 0535

Format of PCMCIA Power Management table:

Offset	Size	Description

 00h	WORD	number of entries in table (0 if power management not avail)

 02h 2N BYTEs	power levels

byte 0: voltage in 0.1V units

byte 1: power supply

bit 7: Vcc

bit 6: Vpp1

bit 5: Vpp2

INT 1A 8C--


1A 8D-- Bitfields for PCMCIA card type:

Copy to Main

Table 0536

Bitfields for PCMCIA card type:

Bit(s)	Description

 0	memory

 1	I/O

 2-15	reserved (0)

INT 1A 8D--


1A 8D-- Bitfields for PCMCIA I/O level steering:

Copy to Main

Table 0537

Bitfields for PCMCIA I/O level steering:

Bit(s)	Description

 15	interrupt steering enabled

 14-5	reserved (0)

 4-0	IRQ level (0-15=IRQ,16=NMI,17=I/O check,18=bus error,19=vendor)

INT 1A 8D--


1A 91-- Bitfields for PCMCIA attributes:

Copy to Main

Table 0538

Bitfields for PCMCIA attributes:

Bit(s)	Description

 2	even bytes only

 1	word rather than byte

 0	attribute memory instead of common memory

INT 1A 91--


1A 95-- Bitfields for EDC capabilities:

Copy to Main

Table 0539

Bitfields for EDC capabilities:

Bit(s)	Description

 0	unidirectional only generation

 1	bidirectional only generation

 2	register-based (I/O-mapped) support

 3	memory-mapped support

 4	pausable

 5-7	reserved (0)

INT 1A 95--


1A 95-- Bitfields for supported EDC types:

Copy to Main

Table 0540

Bitfields for supported EDC types:

Bit(s)	Description

 0	8-checksum

 1	16-CRC-SDLC

 2-7	reserved (0)

INT 1A 95--


1A 96-- Bitfields for EDC attributes:

Copy to Main

Table 0541

Bitfields for EDC attributes:

Bit(s)	Description

 0	unidirectional only

 1	(if 0 set) clear=read, set=write

 2-7	reserved (0)

INT 1A 96--


1A 9D-- Values for PCMCIA ExCA Card Services subfunction number:

Copy to Main

Table 0542

Values for PCMCIA ExCA Card Services subfunction number:

 00h	Client Services: Get Number of Sockets

 01h	Advanced Client Utilities: Initialize

 02h	Client Services: Register Client

 03h	Client Services: Deregister Client

 04h	Advanced Client Utilities: Enumerate Clients

 05h	Client Services: Register SCB

 06h	Client Services: Deregister SCB

 07h	Advanced Client Utilities: Register MTD

 08h	Advanced Client Utilities: Deregister MTD

 09h	Advanced Client Utilities: Enumerate MTD

 0Ah	Client Services: Get Status

 0Bh	Client Services: Reset Card

 0Ch	Client Utilities: Get First Tuple

 0Dh	Client Utilities: Get Next Tuple

 0Eh	Client Utilities: Determine First Region

 0Fh	Client Utilities: Determine Next Region

 10h	Client Utilities: Get First Region

 11h	Client Utilities: Get Next Region

 12h	Client Utilities: Get First Partition

 13h	Client Utilities: Get Next Partition

 14h	Bulk Memory Services: Open Region

 15h	Bulk Memory Services: Read Memory

 16h	Bulk Memory Services: Write Memory

 17h	Bulk Memory Services: Copy Memory

 18h	Bulk Memory Services: Erase Memory

 19h	Resource Management: Request I/O

 1Ah	Resource Management: Release I/O

 1Bh	Resource Management: Request Memory

 1Ch	Client Services: Modify Window

 1Dh	Resource Management: Release Memory

 1Eh	Client Services: Map Mem Page

 1Fh	Advanced Client Utilities: Return SS Entry

 20h	Advanced Client Utilities: Map Log to Phy

 21h	Advanced Client Utilities: Map Log Phy to Log

 22h	Resource Management: Request IRQ

 23h	Resource Management: Release IRQ

 24h	Bulk Memory Services: Close Region

INT 1A 9D--


1A A0-- Format of PCMCIA Subfunction 00h Buffer Table Entry structure:

Copy to Main

Table 2623

Format of PCMCIA Subfunction 00h Buffer Table Entry structure:

Offset	Size	Description

 00h	DWORD	32-bit linear base address of the code segment

 04h	DWORD	segment limit of the code segment

 08h	DWORD	entry point offset

 0Ch	DWORD	32-bit linear base address of the data segment

(ignored in 00:32 flat mode)

 10h	DWORD	segment limit of the data segment

 14h	DWORD	data area offset.  Only used in 32-bit protected mode.

SeeAlso: #2624,#2625

INT 1A A0--


1A A0-- Format of PCMCIA Additional Data Area Description structure [array]:

Copy to Main

Table 2624

Format of PCMCIA Additional Data Area Description structure [array]:

Offset	Size	Description

 00h	DWORD	32-bit linear base address of the additional data segment

(ignored in 00:32 flat mode)

 04h	DWORD	segment limit of the code segment

 08h	DWORD	data area offset (only used in 32-bit protected mode)

SeeAlso: #2623,#2625

INT 1A A0--


1A A0-- Format of PCMCIA Subfunction 02h Buffer Table Entry structure:

Copy to Main

Table 2625

Format of PCMCIA Subfunction 02h Buffer Table Entry structure:

Offset	Size	Description

 00h	DWORD	32-bit offset(ignored in 16:16 protected mode)

 04h	DWORD	selector (only used in 00:32 flat mode)

 08h	DWORD	reserved

SeeAlso: #2623,#2624

INT 1A A0--


1A AD-- Values for Disk Spool function code:

Copy to Main

Table 0543

Values for Disk Spool function code:

 02h	enable spooler only

 03h	enable the despooler

 04h	disable the despooler

 08h	inhibit popup menu

 09h	enable popup menu

 0Ah	???

 0Bh	disable the spooler

 0Ch	start despooler after last successfully printed document???

 0Dh	start despooler at the exact point where it last left off???

 0Eh	pop up the menu

 0Fh	???

 11h	???

 14h	???

 15h	???

 16h	???

 17h	???

 18h	???

 19h	???

 20h	clear file pointed to by the despooler???

 21h	???

 22h	???

 23h	???

 30h	???

INT 1A AD--


1A B001 Format of MRCINFO structure:

Copy to Main

Table 0544

Format of MRCINFO structure:

Offset	Size	Description

 00h  4 BYTEs	vendor signature

"MSFT" Microsoft

 04h	WORD	server version (high=major)

 06h	WORD	MRCI specification version

 08h	DWORD	address of server entry point (see #0546)

 0Ch	WORD	bit flags: server capabilities (see #0545)

 0Eh	WORD	bit flags: hardware assisted capabilities (see #0545)

 10h	WORD	maximum block size supported by server (at least 8192 bytes)

INT 1A B001


1A B001 Bitfields for MRCI capabilities:

Copy to Main

Table 0545

Bitfields for MRCI capabilities:

Bit(s)	Description

 0	standard compress

 1	standard decompress

 2	update compress

 3	MaxCompress (not present in initial public release)

 4	reserved

 5	incremental decompress

 6	MRCI 2.0 standard compress

 7	MRCI 2.0 standard decompress

 8-14	reserved

 15	this structure is in ROM and can't be modified

(server capabilities only)

INT 1A B001


1A B001 Call MRCI entry point with:

Copy to Main

Table 0546

Call MRCI entry point with:

DS:SI -> MRCREQUEST structure (see #0547)

CX = type of client (0000h application, 0001h file system)

AX = operation

    0001h perform standard compression

    0002h perform standard decompression

    0004h perform update compression

    0008h perform MaxCompress

    0020h perform incremental decompression

    0040h perform MRCI 2.0 standard compression

    0080h perform MRCI 2.0 standard decompression

AX = FFFFh clear flags

    BX = bitmask of flags to clear (set bits in BX are flags to clear)

Return: AX = status

    0000h successful

    0001h invalid function

    0002h server busy, try again

    0003h destination buffer too small

    0004h incompressible data

    0005h bad compressed data format

BP destroyed (MS-DOS 6.2)

Note:	MRCI driver may chain to a previous driver

INT 1A B001


1A B001 Format of MRCREQUEST structure:

Copy to Main

Table 0547

Format of MRCREQUEST structure:

Offset	Size	Description

 00h	DWORD	pointer to source buffer

 04h	WORD	size of source buffer (0000h = 64K)

 06h	WORD	(UpdateCompress only)

(call) offset in source buffer of beginning of changed data

(ret) offset in destination buffer of beginning of changed

  compressed data

 08h	DWORD	pointer to destination buffer

must contain original compressed data for UpdateCompress

 0Ch	WORD	size of destination buffer (0000h = 64K)

any compression: size of buffer for compressed data

standard decompression: number of bytes to be decompressed

incremental decompression: number of byte to decompress now

(ret) actual size of resulting data

 0Eh	WORD	client compressed data storage allocation size

 10h	DWORD	incremental decompression state data

set to 00000000h before first incremental decompression call

Notes:	the source and destination buffers may not overlap

the source and destination buffer sizes should normally be the same

application should not update the contents of the MRCREQUEST structure

  between incremental decompression calls

INT 1A B001


1A B101 Values for PCI BIOS v2.0c status codes:

Copy to Main

Table 0548

Values for PCI BIOS v2.0c status codes:

 00h	successful

 81h	unsupported function

 83h	bad vendor ID

 86h	device not found

 87h	bad PCI register number

INT 1A B101


1A B101 Bitfields for PCI hardware characteristics:

Copy to Main

Table 0549

Bitfields for PCI hardware characteristics:

Bit(s)	Description

 0	configuration space access mechanism 1 supported

 1	configuration space access mechanism 2 supported

 2-3	reserved

 4	Special Cycle generation mechanism 1 supported

 5	Special Cycle generation mechanism 2 supported

 6-7	reserved

INT 1A B101


1A B101 Call protected-mode entry point with:

Copy to Main

Table 0550

Call protected-mode entry point with:

registers as for real/V86-mode INT call

CS = ring 0 descriptor with access to full address space

Return: as for real/V86-mode call

INT 1A B101


1A B400 Values for Intel Plug-and-Play AUTO-CONFIGURATION error codes:

Copy to Main

Table 0551

Values for Intel Plug-and-Play AUTO-CONFIGURATION error codes:

 0000h	successful

 0051h	???

 0055h	unable to read/write configuration table from/to nonvolatile storage

 0056h	not a valid configuration table or wrong table version

 0059h	buffer too small

 FFFFh	???

INT 1A B400


1A B401 Format of Intel Plug-and-Play Extended System Configuration Data table:

Copy to Main

Table 0552

Format of Intel Plug-and-Play Extended System Configuration Data table:

Offset	Size	Description

 00h	WORD	total length of this table

 02h  4 BYTEs	signature "ACFG"

 06h	BYTE	minor version number

 07h	BYTE	major version number (currently 02h)

 08h	BYTE	number of boards listed in the configuration data

 09h  3 BYTEs	reserved (00h)

 0Ch	var	board data

WORD	checksum

Notes:	this table contains information about the standard devices in the

  system, such as serial ports, parallel ports, etc.  For each device,

  it includes at least the I/O port address (03F8h,02F8h,0378h,etc).

the sum of all words in the table, including the checksum field (with

  implied zero padding if the length is odd), must equal 0000h

SeeAlso: #0553

INT 1A B401


1A B401 Format of Extended System Configuration Data Board Header:

Copy to Main

Table 0553

Format of Extended System Configuration Data Board Header:

Offset	Size	Description

 00h	WORD	length of this header in bytes

 02h	BYTE	slot number

00h motherboard

01h-0Fh ISA/EISA

10h-40h	PCI

 03h	BYTE	reserved (00h)

SeeAlso: #0552,#0554

INT 1A B401


1A B401 Format of Extended System Configuration Data Freeform Board Header:

Copy to Main

Table 0554

Format of Extended System Configuration Data Freeform Board Header:

Offset	Size	Description

 00h  4 BYTEs	signature "ACFG"

 04h	BYTE	minor version number

 05h	BYTE	major version number (currently 02h)

 06h	BYTE	board type

01h ISA

02h EISA

04h PCI

08h PCMCIA

10h PnPISA

20h MCA

 07h	BYTE	reserved (00h)

 08h	WORD	disabled functions (bit N set = function N disabled)

 0Ah	WORD	configuration error functions

 0Ch	WORD	reconfigurable functions (bit N set = function N reconfig'able)

 0Eh  2 BYTEs	reserved (00h)

SeeAlso: #0557,#0558

INT 1A B401


1A B401 Format of Extended System Configuration Data Freeform PCI Device Data:

Copy to Main

Table 0555

Format of Extended System Configuration Data Freeform PCI Device Data:

Offset	Size	Description

 00h	BYTE	PCI bus number

 01h	BYTE	PCI device and function number

 02h	WORD	PCI device identifier

 04h	WORD	PCI vendor ID

1002h = ATI

 06h  2 BYTEs	reserved (00h)

SeeAlso: #0555,#0558

INT 1A B401


1A B401 Format of Extended System Configuration Data Freeform PnP ISA Board ID:

Copy to Main

Table 0556

Format of Extended System Configuration Data Freeform PnP ISA Board ID:

Offset	Size	Description

 00h	DWORD	vendor ID (EISA device identifier)

 04h	DWORD	serial number

SeeAlso: #0556,#0557

INT 1A B401


1A B401 Format of Extended System Configuration Data PnP ISA ECD Extension Function:

Copy to Main

Table 0557

Format of Extended System Configuration Data PnP ISA ECD Extension Function:

Offset	Size	Description

 00h	WORD	001Eh (length of this structure)

 02h	BYTE	01h (selection size)

 03h	BYTE	00h (selection data)

 04h	BYTE	C0h (function information byte) (see #0560)

 05h	BYTE	18h (size of following free-format data)

 06h 16 BYTEs	freeform board header (see #0554)

 16h  8 BYTEs	Plug-and-Play board ID (see #0556)

Note:	ECD = Extended Configuration Data; this structure must be the last

  "function" for a particular ISA Plug-and-Play board

SeeAlso: #0558

INT 1A B401


1A B401 Format of Extended System Configuration Data PCI ECD Extension Function:

Copy to Main

Table 0558

Format of Extended System Configuration Data PCI ECD Extension Function:

Offset	Size	Description

 00h	WORD	length of this structure (at least 001Eh, up to 0056h)

 02h	BYTE	01h (selection size)

 03h	BYTE	00h (selection data)

 04h	BYTE	C0h (function information byte) (see #0560)

 05h	BYTE	size of following free-format data (at least 18h, max 50h)

 06h 16 BYTEs	freeform board header (see #0554)

 16h 8N BYTEs	PCI board ID (see #0555) for one to eight boards

Notes:	ECD = Extended Configuration Data; this structure must be the last

  "function" for a particular PCI board

AMI BIOS v1.00.05.AX1 sets the length field to 001Ch for entries with

  a single board ID, apparently treating the field as the length of

  the remainder of the structure instead of the full structure's length

SeeAlso: #0557

INT 1A B401


1A B401 Bitfields for EISA ID and Slot Information:

Copy to Main

Table 0559

Bitfields for EISA ID and Slot Information:

Bit(s)	Description

 3-0	selector among duplicate configuration file names (0000 if no dups)

 5-4	slot type

00 expansion slot

01 embedded

10 virtual slot

11 reserved

 6	ID is readable

 7	duplicate IDs present

 8	board can be disabled

 9	IOCHKERR supported

 10	board or entries locked

 13-11	reserved

 14	board does not have or need configuration file

 15	configuration not complete

SeeAlso: #0560

INT 1A B401


1A B401 Bitfields for EISA Function Information:

Copy to Main

Table 0560

Bitfields for EISA Function Information:

Bit(s)	Description

 0	subtype data

 1	memory information (see #0561)

 2	IRQ information (see #0563)

 3	DMA information (see #0564)

 4	port range information (see #0565)

 5	port initialization data (see #0566)

 6	free form data

 7	function disabled

SeeAlso: #0557,#0558,#0559

INT 1A B401


1A B401 Format of EISA Memory Information:

Copy to Main

Table 0561

Format of EISA Memory Information:

Offset	Size	Description

 00h	WORD	memory information flags (see #0562)

 02h  3 BYTEs	high 24 bits of memory start address (LSB first)

 05h	WORD	memory size in K (0000h = 65536K)

SeeAlso: #0560

INT 1A B401


1A B401 Bitfields for EISA Memory Information Flags:

Copy to Main

Table 0562

Bitfields for EISA Memory Information Flags:

Bit(s)	Description

 0	writable (RAM rather than ROM)

 1	cached

 2	write-back cache rather than write-through

 4-3	memory type

00 system

01 expantion

10 virtual

11 other

 5	shared

 6	reserved (0)

 7	more entries follow

 9-8	memory width

00 byte

01 word

10 dword

11 reserved

 11-10	decoded address lines

00 = 20

01 = 24

10 = 32

11 reserved

 15-12	reserved (0)

SeeAlso: #0561

INT 1A B401


1A B401 Bitfields for EISA IRQ Information:

Copy to Main

Table 0563

Bitfields for EISA IRQ Information:

Bit(s)	Description

 3-0	IRQ number

 4	reserved (0)

 5	IRQ triggering (0 = edge, 1 = level)

 6	IRQ is shareable

 7	more entries follow

 15-8	reserved (0)

SeeAlso: #0560

INT 1A B401


1A B401 Bitfields for EISA DMA Information:

Copy to Main

Table 0564

Bitfields for EISA DMA Information:

Bit(s)	Description

 2-0	DMA channel number

 5-3	reserved (0)

 6	shareable

 7	more entries follow

 9-8	reserved

 11-10	DMA transfer size

00 byte

01 word

10 dword

11 word, but count in bytes

 13-12	DMA timing

00 ISA-compatible

01 EISA type "A"

10 EISA type "B"

11 EISA type "C"/"F" (burst)

 15-14	reserved (0)

SeeAlso: #0560

INT 1A B401


1A B401 Format of EISA Port Range Information:

Copy to Main

Table 0565

Format of EISA Port Range Information:

Offset	Size	Description

 00h	BYTE	port description

bits 4-0: number of sequential ports

bit 5 reserved (0)

bit 6: shareable

bit 7: more entries follow

 01h	WORD	I/O port address

SeeAlso: #0560,#0566

INT 1A B401


1A B401 Format of EISA Port Initialization Data:

Copy to Main

Table 0566

Format of EISA Port Initialization Data:

Offset	Size	Description

 00h	BYTE	flags

bits 1-0: port size

00 byte

01 word

10 dword

11 reserved

bit 2: masked write

bits 6-3 reserved (0)

bit 7: more entries follow

 01h	???

SeeAlso: #0560,#0565

INT 1A B401


1A B406 Format of Intel Plug-and-Play AUTO-CONFIGURATION ??? header:

Copy to Main

Table 0567

Format of Intel Plug-and-Play AUTO-CONFIGURATION ??? header:

Offset	Size	Description

 00h	WORD	length of structure buffer

 02h	DWORD	-> structure array buffer (see #0568)

INT 1A B406


1A B406 Format of Intel Plug-and-Play AUTO-CONFIGURATION ??? structure entry [array]:

Copy to Main

Table 0568

Format of Intel Plug-and-Play AUTO-CONFIGURATION ??? structure entry [array]:

Offset	Size	Description

 00h	BYTE	???

 01h	BYTE	???

 02h	BYTE	???

 03h	WORD	???

 05h	BYTE	???

 06h	WORD	???

 08h	BYTE	???

 09h	WORD	???

 0Bh	BYTE	???

 0Ch	WORD	???

 0Eh	WORD	???

SeeAlso: #0567

INT 1A B406


1A E11D Format of TheGrab signature block:

Copy to Main

Table 0569

Format of TheGrab signature block:

Offset	Size	Description

 00h	BYTE	08h

 01h  8 BYTEs	ASCIZ "THEGRAB"

 09h  6 BYTEs	??? (zeros)

INT 1A E11D


1A E301 Format of Disk Spool II spool file status record:

Copy to Main

Table 0570

Format of Disk Spool II spool file status record:

Offset	Size	Description

 00h	BYTE	hour of creation or last update

 01h	BYTE	minute of creation or last update

 02h	BYTE	year-1980 of creation or last update

 03h	BYTE	month of creation or last update

 04h	BYTE	day of creation or last update

 05h	BYTE	total number of copies to print

 06h	BYTE	number of copies already printed

 07h	BYTE	printer port (01h COM1, 02h COM2, 05h LPT1, 06h LPT2)

 08h	BYTE	save status (00h delete after printing, 01h save)

 09h	BYTE	file status

01h done printing, but being saved

02h on hold

03h queued for printing

04h being spooled

05h being despooled (i.e. printed)

 0Ah 16 BYTEs	ASCIZ description

 1Ah  2 WORDs	file size in bytes (high,low)

 1Eh  2 WORDs	bytes left to print (high,low)

INT 1A E301


1D ---- Format of video parameters:

Copy to Main

Table 0571

Format of video parameters:

Offset	Size	Description

 00h 16 BYTEs	6845 register values for modes 00h and 01h

 10h 16 BYTEs	6845 register values for modes 02h and 03h

 20h 16 BYTEs	6845 register values for modes 04h and 05h

 30h 16 BYTEs	6845 register values for modes 06h and 07h

 40h	WORD	bytes in video buffer for modes 00h and 01h (0800h)

 42h	WORD	bytes in video buffer for modes 02h and 03h (1000h)

 44h	WORD	bytes in video buffer for modes 04h and 05h (4000h)

 46h	WORD	bytes in video buffer for mode 06h (4000h)

 48h  8 BYTEs	columns on screen for each of modes 00h through 07h

 50h  8 BYTEs	CRT controller mode bytes for each of modes 00h through 07h

Note:	QEMM v7.5 Stealth appears to copy only the first 40h bytes of this

  table into always-accessible memory

INT 1D ----


1E ---- Format of diskette parameter table:

Copy to Main

Table 0572

Format of diskette parameter table:

Offset	Size	Description

 00h	BYTE	first specify byte

bits 7-4: step rate

bits 3-0: head unload time (0Fh = 240 ms)

 01h	BYTE	second specify byte

bits 7-1: head load time (01h = 4 ms)

bit    0: non-DMA mode (always 0)

 02h	BYTE	delay until motor turned off (in clock ticks)

 03h	BYTE	bytes per sector (00h = 128, 01h = 256, 02h = 512, 03h = 1024)

 04h	BYTE	sectors per track

 05h	BYTE	length of gap between sectors (2Ah for 5.25", 1Bh for 3.5")

 06h	BYTE	data length (ignored if bytes-per-sector field nonzero)

 07h	BYTE	gap length when formatting (50h for 5.25", 6Ch for 3.5")

 08h	BYTE	format filler byte (default F6h)

 09h	BYTE	head settle time in milliseconds

 0Ah	BYTE	motor start time in 1/8 seconds

SeeAlso: #1878 at INT 4D/AH=09h

INT 1E ----


20 ---- Values for VMM (VxD ID 0001h) function number:

Copy to Main

Table 2631

Values for VMM (VxD ID 0001h) function number:

 00h	get version

 01h	get current VM handle

 02h	test current VM handle

 03h	get system VM handle

 04h	test system VM handle

 05h	validate VM handle

 06h	get VMM reenter count

 07h	begin reentrant execution

 08h	end reentrant execution

 09h	install V86 breakpoint

 0Ah	remove V86 breakpoint

 0Bh	allocate V86 callback

 0Ch	allocation PM callback

 0Dh	call when VM returns

 0Eh	schedule global event

 0Fh	schedule VM event

 10h	call global event

 11h	call VM event

 12h	cancel global event

 13h	cancel VM event

 14h	call priority VM event

 15h	cancel priority VM event

 16h	get NMI handler address

 17h	set NMI handler address

 18h	hook NMI event

 19h	call when VM interrupts enabled

 1Ah	enable VM interrupts

 1Bh	disable VM interrupts

 1Ch	map flat

 1Dh	map linear to VM address

 1Eh	adjust execution priority

 1Fh	begin critical section

 20h	end critical section

 21h	end critical section and suspend

 22h	claim critical section

 23h	release critical section

 24h	call when not critical

 25h	create semaphore

 26h	destroy semaphore

 27h	wait on semaphore

 28h	signal semaphore

 29h	get critical section status

 2Ah	call when task switched

 2Bh	suspend VM

 2Ch	resume VM

 2Dh	no-fail resume VM

 2Eh	nuke VM

 2Fh	crash current VM

 30h	get execution focus

 31h	set execution focus

 32h	get time slice priority

 33h	set time slice priority

 34h	get time slice granularity

 35h	set time slice granularity

 36h	get time slice information

 37h	adjust execution time

 38h	release time slice

 39h	wake up VM

 3Ah	call when idle

 3Bh	get next VM handle

 3Ch	set global timeout

 3Dh	set VM timeout

 3Eh	cancel timeout

 3Fh	get system time

 40h	get VM execution time

 41h	hook V86 interrupt chain

 42h	get V86 interrupt vector

 43h	set V86 interrupt vector

 44h	get PM interrupt vector

 45h	set PM interrupt vector

 46h	simulate interrupt

 47h	simulate IRET

 48h	simulate far call

 49h	simulate far jump

 4Ah	simulate far RET

 4Bh	simulate far RET N

 4Ch	build interrupt stack frame

 4Dh	simulate push

 4Eh	simulate pop

 4Fh	_HeapAllocate

 50h	_HeapReAllocate

 51h	_HeapFree

 52h	_HeapGetSize

 53h	_PageAllocate

 54h	_PageReAllocate

 55h	_PageFree

 56h	_PageLock

 57h	_PageUnLock

 58h	_PageGetSizeAddr

 59h	_PageGetAllocInfo

 5Ah	_GetFreePageCount

 5Bh	_GetSysPageCount

 5Ch	_GetVMPgCount

 5Dh	_MapIntoV86

 5Eh	_PhysIntoV86

 5Fh	_TestGlobalV86Mem

 60h	_ModifyPageBits

 61h	copy page table

 62h	map linear into V86

 63h	linear page lock

 64h	linear page unlock

 65h	_SetResetV86Pageabl

 66h	_GetV86PageableArray

 67h	_PageCheckLinRange

 68h	page out dirty pages

 69h	discard pages

 6Ah	_GetNulPageHandle

 6Bh	get first V86 page

 6Ch	map physical address to linear address

 6Dh	_GetAppFlatDSAlias

 6Eh	_SelectorMapFlat

 6Fh	_GetDemandPageInfo

 70h	_GetSetPageOutCount

 71h	hook V86 page

 72h	assign device V86 pages

 73h	deassign device V86 pages

 74h	get array of V86 pages for device

 75h	_SetNULPageAddr

 76h	allocate GDT selector

 77h	free GDT selector

 78h	allocate LDT selector

 79h	free LDT selector

 7Ah	_BuildDescriptorDWORDs

 7Bh	get descriptor

 7Ch	set descriptor

 7Dh	toggle HMA

 7Eh	get fault hook addresses

 7Fh	hook V86 fault

 80h	hook PM fault

 81h	hook VMM fault

 82h	begin nested V86 execution

 83h	begin nested execution

 84h	execute interrupt

 85h	resume execution

 86h	end nested execution

 87h	allocate PM application callback area

 88h	get current PM application callback area

 89h	set V86 execution mode

 8Ah	set PM execution mode

 8Bh	begin using locked PM stack

 8Ch	end using locked PM stack

 8Dh	save client state

 8Eh	restore client state

 8Fh	execute VxD interrupt

 90h	hook device service

 91h	hook device V86 API

 92h	hook device PM API

 93h	system control

 94h	simulate I/O

 95h	install multiple I/O handlers

 96h	install I/O handler

 97h	enable global trapping

 98h	enable local trapping

 99h	disable global trapping

 9Ah	disable local trapping

 9Bh	create list

 9Ch	destroy list

 9Dh	allocate list

 9Eh	attach list

 9Fh	attach list tail

 A0h	insert into list

 A1h	remove from list

 A2h	deallocate list

 A3h	get first item in list

 A4h	get next item in list

 A5h	remove first item in list

 A6h	add instance item

 A7h	allocate device callback area

 A8h	allocate global V86 data area

 A9h	allocate temporary V86 data area

 AAh	free temporary V86 data area

 ABh	get decimal integer from profile

 ACh	convert decimal string to integer

 ADh	get fixed-point number from profile

 AEh	convert fixed-point string

 AFh	get hex integer from profile

 B0h	convert hex string to integer

 B1h	get boolean value from profile

 B2h	convert boolean string

 B3h	get string from profile

 B4h	get next string from profile

 B5h	get environment string

 B6h	get exec path

 B7h	get configuration directory

 B8h	open file

 B9h	get PSP segment

 BAh	get DOS vectors

 BBh	get machine information

 BCh	get/set HMA information

 BDh	set system exit code

 BEh	fatal error handler

 BFh	fatal memory error

 C0h	update system clock

 C1h	test if debugger installed

 C2h	output debugger string

 C3h	output debugger character

 C4h	input debugger character

 C5h	debugger convert hex to binary

 C6h	debugger convert hex to decimal

 C7h	debugger test if valid handle

 C8h	validate client pointer

 C9h	test reentry

 CAh	queue debugger string

 CBh	log procedure call

 CCh	debugger test current VM

 CDh	get PM interrupt type

 CEh	set PM interrupt type

 CFh	get last updated system time

 D0h	get last updated VM execution time

 D1h	test if double-byte character-set lead byte

 D2h	_AddFreePhysPage

 D3h	_PageResetHandlePAddr

 D4h	_SetLastV86Page

 D5h	_GetLastV86Page

 D6h	_MapFreePhysReg

 D7h	_UnmapFreePhysReg

 D8h	_XchgFreePhysReg

 D9h	_SetFreePhysRegCalBk

 DAh	get next arena (MCB)

 DBh	get name of ugly TSR

 DCh	get debug options

 DDh	set physical HMA alias

 DEh	_GetGlblRng0V86IntBase

 DFh	add global V86 data area

 E0h	get/set detailed VM error

 E1h	Is_Debug_Chr

 E2h	clear monochrome screen

 E3h	output character to mono screen

 E4h	output string to mono screen

 E5h	set current position on mono screen

 E6h	get current position on mono screen

 E7h	get character from mono screen

 E8h	locate byte in ROM

 E9h	hook invalid page fault

 EAh	unhook invalid page fault

 EBh	set delete on exit file

SeeAlso: #2632

INT 20 ----


20 ---- Values for VPICD (VxD ID 0003h) function number:

Copy to Main

Table 2632

Values for VPICD (VxD ID 0003h) function number:

 00h	get version

 01h	virtualize IRQ

 02h	set interrupt request

 03h	clear interrupt request

 04h	physical EOI

 05h	get complete status

 06h	get status

 07h	test physical request

 08h	physically mask

 09h	physically unmask

 0Ah	set automatic masking

 0Bh	get IRQ complete status

 0Ch	convert handle to IRQ

 0Dh	convert IRQ to interrupt

 0Eh	convert interrupt to IRQ

 0Fh	call on hardware interrupt

 10h	force default owner

 11h	force default behavior

SeeAlso: #2631,#2633

INT 20 ----


20 ---- Values for VDMAD (VxD ID 0004h) function number:

Copy to Main

Table 2633

Values for VDMAD (VxD ID 0004h) function number:

 00h	get version

 01h	virtualize channel

 02h	get region information

 03h	set region information

 04h	get virtual state

 05h	set virtual state

 06h	set physical state

 07h	mask channel

 08h	unmask channel

 09h	lock DMA region

 0Ah	unlock DMA region

 0Bh	scatter lock

 0Ch	scatter unlock

 0Dh	reserve buffer space

 0Eh	request buffer

 0Fh	release buffer

 10h	copy to buffer

 11h	copy from buffer

 12h	default handler

 13h	disable translation

 14h	enable translation

 15h	get EISA address mode

 16h	set EISA address mode

 17h	unlock DMA region (ND)

SeeAlso: #2632,#1420,#1431 at INT 2F/AX=1684h/BX=0444h

INT 20 ----


20 ---- Values for VTD (VxD ID 0005h) function number:

Copy to Main

Table 2654

Values for VTD (VxD ID 0005h) function number:

 0000h	get version

 0001h	update system clock

 0002h	get interrupt period

 0003h	begin minimum interrupt period

 0004h	end minimum interrupt period

 0005h	disable trapping

 0006h	enable trapping

 0007h	get real time

SeeAlso: #1420 at INT 2F/AX=1684h/BX=0005h

INT 20 ----


20 ---- Values for V86MMGR (VxD ID 0006h) function number:

Copy to Main

Table 2634

Values for V86MMGR (VxD ID 0006h) function number:

 00h	get version

 01h	allocate V86 pages

 02h	set EMS and XMS limits

 03h	get EMS and XMS limits

 04h	set mapping information

 05h	get mapping information

 06h	Xlat API

 07h	load client pointer

 08h	allocate buffer

 09h	free buffer

 0Ah	get Xlat buffer state

 0Bh	set Xlat buffer state

 0Ch	get VM flat selector

 0Dh	map pages

 0Eh	free page map region

 0Fh	_LocalGlobalReg

 10h	get page status

 11h	set local A20

 12h	reset base pages

 13h	set available mapped pages

SeeAlso: #1420,#2635

INT 20 ----


20 ---- Values for PageSwap (VxD ID 0007h) function number:

Copy to Main

Table 2635

Values for PageSwap (VxD ID 0007h) function number:

 00h	get version

 01h	test create

 02h	create swap file

 03h	destroy swap file

 04h	in

 05h	out

 06h	test if I/O valid

SeeAlso: #2634,#2636,#1421

INT 20 ----


20 ---- Values for VDD (VxD ID 000Ah) function number:

Copy to Main

Table 2636

Values for VDD (VxD ID 000Ah) function number:

 00h	get version

 01h	PIF state

 02h	get GrabRtn

 03h	hide cursor

 04h	set VM type

 05h	get ModTime

 06h	set HCurTrk

 07h	message clear screen

 08h	message foreground color

 09h	message background color

 0Ah	message output text

 0Bh	message set cursor position

 0Ch	query access

SeeAlso: #2635,#2637,#1421

INT 20 ----


20 ---- Values for VSD (VxD ID 000Bh) function number:

Copy to Main

Table 2637

Values for VSD (VxD ID 000Bh) function number:

 00h	get version

 01h	bell

SeeAlso: #2636,#2638

INT 20 ----


20 ---- Values for VMD (VxD ID 000Ch) function number:

Copy to Main

Table 2638

Values for VMD (VxD ID 000Ch) function number:

 00h	get version

 01h	set mouse type

 02h	get mouse owner

SeeAlso: #2637,#2639

INT 20 ----


20 ---- Values for VKD (VxD ID 000Dh) function number:

Copy to Main

Table 2639

Values for VKD (VxD ID 000Dh) function number:

 00h	get version

 01h	define hotkey

 02h	remove hotkey

 03h	locally enable hotkey

 04h	locally disable hotkey

 05h	reflect hotkey

 06h	cancel hotkey state

 07h	force keys

 08h	get keyboard owner

 09h	define paste mode

 0Ah	start pasting

 0Bh	cancel paste

 0Ch	get message key

 0Dh	peek message key

 0Eh	flush message key queue

SeeAlso: #2638,#2640

INT 20 ----


20 ---- Values for VCD (VxD ID 000Eh) function number:

Copy to Main

Table 2640

Values for VCD (VxD ID 000Eh) function number:

 00h	get version

 01h	set port global

 02h	get focus

 03h	virtualize port

SeeAlso: #2639,#2641

INT 20 ----


20 ---- Values for BlockDev (VxD ID 0010h) function number:

Copy to Main

Table 2641

Values for BlockDev (VxD ID 0010h) function number:

 00h	get version

 01h	register device

 02h	find INT 13 drive

 03h	get device list

 04h	send command

 05h	command complete

 06h	synchronous command

SeeAlso: #2640,#2642

INT 20 ----


20 ---- Values for EBIOS (VxD ID 0012h) function number:

Copy to Main

Table 2642

Values for EBIOS (VxD ID 0012h) function number:

 00h	get version

 01h	get unused memory

SeeAlso: #2641,#2643

INT 20 ----


20 ---- Values for VNETBIOS (VxD ID 0014h) function number:

Copy to Main

Table 2643

Values for VNETBIOS (VxD ID 0014h) function number:

 00h	get version

SeeAlso: #2642,#2647

INT 20 ----


20 ---- Values for DOSMGR (VxD ID 0015h) function number:

Copy to Main

Table 2647

Values for DOSMGR (VxD ID 0015h) function number:

 00h	get version

 01h	set exec VM data

 02h	coyp VM drive state

 03h	execute VM

 04h	get InDOS pointer

 05h	add device

 06h	remove device

 07h	instance device

 08h	get DOS critical status

 09h	enable InDOS polling

 0Ah	backfill allowed

 0Bh	"LocalGlobalReg"

SeeAlso: #2643,#1422 at INT 2F/AX=1684h/BX=0015h

INT 20 ----


20 ---- Values for SHELL (VxD ID 0017h) function number:

Copy to Main

Table 2655

Values for SHELL (VxD ID 0017h) function number:

 00h	get version

 01h	resolve contention

 02h	event

 03h	SYSMODAL message

 04h	message

 05h	get VM information

SeeAlso: #2647,#2644,#1423 at INT 2F/AX=1684h/BX=0017h

INT 20 ----


20 ---- Values for VMPoll (VxD ID 0018h) function number:

Copy to Main

Table 2644

Values for VMPoll (VxD ID 0018h) function number:

 00h	get version

 01h	enable/disable

 02h	reset detection

SeeAlso: #2654,#1423 at INT 2F/AX=1684h/BX=0017h

INT 20 ----


20 ---- Values for DOSNET (VxD ID 001Ah) function number:

Copy to Main

Table 2645

Values for DOSNET (VxD ID 001Ah) function number:

 00h	get version

 01h	send FILESYSCHANGE

 02h	do PSP adjust

SeeAlso: #2644,#2646

INT 20 ----


20 ---- Values for Int13 (VxD ID 0020h) function number:

Copy to Main

Table 2646

Values for Int13 (VxD ID 0020h) function number:

 00h	get version

 01h	device registered

 02h	translate VM interrupt

 03h	hooking BIOS interrupt

 04h	unhooking BIOS interrupt

SeeAlso: #2645,#2656

INT 20 ----


20 ---- Values for PAGEFILE (VxD ID 0021h) function number:

Copy to Main

Table 2656

Values for PAGEFILE (VxD ID 0021h) function number:

 00h	get version

 01h	init file

 02h	clean up

 03h	grow file

 04h	read or write

 05h	cancel

 06h	test I/O valid

SeeAlso: #2646,#1427 at INT 2F/AX=1684h/BX=0021h

INT 20 ----


21 0A-- Format of DOS input buffer:

Copy to Main

Table 0573

Format of DOS input buffer:

Offset	Size	Description

 00h	BYTE	maximum characters buffer can hold

 01h	BYTE	(call) number of chars from last input which may be recalled

(ret) number of characters actually read, excluding CR

 02h  N BYTEs	actual characters read, including the final carriage return

INT 21 0A--


21 0F-- Format of File Control Block:

Copy to Main

Table 0574

Format of File Control Block:

Offset	Size	Description

 -7	BYTE	extended FCB if FFh

 -6   5 BYTEs	reserved

 -1	BYTE	file attribute if extended FCB

 00h	BYTE	drive number (0 = default, 1 = A, etc)

 01h  8 BYTEs	blank-padded file name

 09h  3 BYTEs	blank-padded file extension

 0Ch	WORD	current block number

 0Eh	WORD	logical record size

 10h	DWORD	file size

 14h	WORD	date of last write (see #0877 at AX=5700h)

 16h	WORD	time of last write (see #0876 at AX=5700h) (DOS 1.1+)

 18h  8 BYTEs	reserved (see #0575,#0576,#0577,#0578,#0579)

 20h	BYTE	record within current block

 21h	DWORD	random access record number (if record size is > 64 bytes, high

  byte is omitted)

Note:	to use an extended FCB, you must specify the address of the FFh flag at

  offset -7, rather than the address of the drive number field

INT 21 0F--


21 0F-- Format of FCB reserved field for DOS 1.0:

Copy to Main

Table 0575

Format of FCB reserved field for DOS 1.0:

Offset	Size	Description

 16h	WORD	location in directory (if high byte = FFh, low byte is device

  ID)

 18h	WORD	number of first cluster in file

 1Ah	WORD	current absolute cluster number on disk

 1Ch	WORD	current relative cluster number within file

(0 = first cluster of file, 1 = second cluster, etc.)

 1Eh	BYTE	dirty flag (00h = not dirty)

 1Fh	BYTE	unused

INT 21 0F--


21 0F-- Format of FCB reserved field for DOS 1.10-1.25:

Copy to Main

Table 0576

Format of FCB reserved field for DOS 1.10-1.25:

Offset	Size	Description

 18h	BYTE	bit 7: set if logical device

bit 6: not dirty

bits 5-0: disk number or logical device ID

 19h	WORD	starting cluster number on disk

 1Bh	WORD	current absolute cluster number on disk

 1Dh	WORD	current relative cluster number within file

 1Fh	BYTE	unused

INT 21 0F--


21 0F-- Format of FCB reserved field for DOS 2.x:

Copy to Main

Table 0577

Format of FCB reserved field for DOS 2.x:

Offset	Size	Description

 18h	BYTE	bit 7: set if logical device

bit 6: set if open???

bits 5-0: ???

 19h	WORD	starting cluster number on disk

 1Bh	WORD	???

 1Dh	BYTE	???

 1Eh	BYTE	???

 1Fh	BYTE	???

INT 21 0F--


21 0F-- Format of FCB reserved field for DOS 3.x:

Copy to Main

Table 0578

Format of FCB reserved field for DOS 3.x:

Offset	Size	Description

 18h	BYTE	number of system file table entry for file

 19h	BYTE	attributes

bits 7,6: 00 = SHARE.EXE not loaded, disk file

  01 = SHARE.EXE not loaded, character device

  10 = SHARE.EXE loaded, remote file

  11 = SHARE.EXE loaded, local file or device

bits 5-0: low six bits of device attribute word

---SHARE.EXE loaded, local file---

 1Ah	WORD	starting cluster of file on disk

 1Ch	WORD	(DOS 3.x) offset within SHARE of sharing record

  (see #0849 at AH=52h)

 1Eh	BYTE	file attribute

 1Fh	BYTE	???

---SHARE.EXE loaded, remote file---

 1Ah	WORD	number of sector containing directory entry

 1Ch	WORD	relative cluster within file of last cluster accessed

 1Eh	BYTE	absolute cluster number of last cluster accessed

 1Fh	BYTE	???

---SHARE.EXE not loaded---

 1Ah	BYTE	(low byte of device attribute word AND 0Ch) OR open mode

 1Bh	WORD	starting cluster of file

 1Dh	WORD	number of sector containing directory entry

 1Fh	BYTE	number of directory entry within sector

Note:	if FCB opened on character device, DWORD at 1Ah is set to the address

  of the device driver header, then the BYTE at 1Ah is overwritten.

INT 21 0F--


21 0F-- Format of FCB reserved field for DOS 5.0:

Copy to Main

Table 0579

Format of FCB reserved field for DOS 5.0:

Offset	Size	Description

 18h	BYTE	number of system file table entry for file

 19h	BYTE	attributes

bits 7,6: 00 = SHARE.EXE not loaded, disk file

  01 = SHARE.EXE not loaded, character device

  10 = SHARE.EXE loaded, remote file

  11 = SHARE.EXE loaded, local file or device

bits 5-0: low six bits of device attribute word

---SHARE.EXE loaded, local file---

 1Ah	WORD	starting cluster of file on disk

 1Ch	WORD	unique sequence number of sharing record

 1Eh	BYTE	file attributes

 1Fh	BYTE	unused???

---SHARE.EXE loaded, remote file---

 1Ah	WORD	network handle

 1Ch	DWORD	network ID

---SHARE not loaded, local device---

 1Ah	DWORD	pointer to device driver header

 1Eh  2 BYTEs	unused???

---SHARE not loaded, local file---

 1Ah	BYTE	extra info

bit 7: read-only attribute from SFT

bit 6: archive attribute from SFT

bits 5-0: high bits of sector number

 1Bh	WORD	starting cluster of file

 1Dh	WORD	low word of sector number containing directory entry

 1Fh	BYTE	number of directory entry within sector

INT 21 0F--


21 11-- Format of DOS directory entry:

Copy to Main

Table 0580

Format of DOS directory entry:

Offset	Size	Description

 00h  8 BYTEs	blank-padded filename

 08h  3 BYTEs	blank-padded file extension

 0Bh	BYTE	attributes

 0Ch 10 BYTEs	reserved

used by DR-DOS to store file password

 16h	WORD	time of creation or last update (see #0876 at AX=5700h)

 18h	WORD	date of creation or last update (see #0877 at AX=5700h)

 1Ah	WORD	starting cluster number

 1Ch	DWORD	file size

INT 21 11--


21 1B-- Values for media ID byte:

Copy to Main

Table 0581

Values for media ID byte:

 FFh	floppy, double-sided, 8 sectors per track (320K)

 FEh	floppy, single-sided, 8 sectors per track (160K)

 FDh	floppy, double-sided, 9 sectors per track (360K)

 FCh	floppy, single-sided, 9 sectors per track (180K)

 FAh	HP 200LX D: ROM disk, 16 sectors per track (995K)

HP 200LX E: (Stacker host drive ???)

 F9h	floppy, double-sided, 15 sectors per track (1.2M)

floppy, double-sided, 9 sectors per track (720K,3.5")

 F8h	hard disk

 F0h	other media

(e.g. floppy, double-sized, 18 sectors per track -- 1.44M,3.5")

INT 21 1B--


21 1F-- Format of DOS 1.1 and MS-DOS 1.25 drive parameter block:

Copy to Main

Table 0582

Format of DOS 1.1 and MS-DOS 1.25 drive parameter block:

Offset	Size	Description

 00h	BYTE	sequential device ID

 01h	BYTE	logical drive number (0=A:)

 02h	WORD	bytes per sector

 04h	BYTE	highest sector number within a cluster

 05h	BYTE	shift count to convert clusters into sectors

 06h	WORD	starting sector number of first FAT

 08h	BYTE	number of copies of FAT

 09h	WORD	number of directory entries

 0Bh	WORD	number of first data sector

 0Dh	WORD	highest cluster number (number of data clusters + 1)

 0Fh	BYTE	sectors per FAT

 10h	WORD	starting sector of directory

 12h	WORD	address of allocation table

Note:	the DOS 1.0 table is the same except that the first and last fields

  are missing; see INT 21/AH=32h for the DOS 2+ version

INT 21 1F--


21 250D Call Phar Lap real-mode callback with:

Copy to Main

Table 0583

Call Phar Lap real-mode callback with:

STACK:	DWORD	offset to protected-mode code

WORD	placeholder for protected-mode CS

DWORD	pointer to selector structure (see #0584)

or 0000h:0000h for defaults

var	parameters for protected-mode procedure

Return: via FAR return

INT 21 250D


21 250D Format of Phar Lap selector structure:

Copy to Main

Table 0584

Format of Phar Lap selector structure:

Offset	Size	Description

 00h	WORD	protected-mode GS selector

 02h	WORD	protected-mode FS selector

 04h	WORD	protected-mode ES selector

 06h	WORD	protected-mode DS selector

INT 21 250D


21 2510 Format of Phar Lap real-mode call parameter block:

Copy to Main

Table 0585

Format of Phar Lap real-mode call parameter block:

Offset	Size	Description

 00h	WORD	real-mode DS value

 02h	WORD	real-mode ES value

 04h	WORD	real-mode FS value

 06h	WORD	real-mode GS value

 08h	DWORD	real-mode EAX value

 0Ch	DWORD	real-mode EBX value

 10h	DWORD	real-mode ECX value

 14h	DWORD	real-mode EDX value

INT 21 2510


21 2511 Format of Phar Lap real-mode interrupt parameter block:

Copy to Main

Table 0586

Format of Phar Lap real-mode interrupt parameter block:

Offset	Size	Description

 00h	WORD	interrupt number

 02h	WORD	real-mode DS value

 04h	WORD	real-mode ES value

 06h	WORD	real-mode FS value

 08h	WORD	real-mode GS value

 0Ah	DWORD	real-mode EAX value

 0Eh	DWORD	real-mode EDX value

Note: all other real-mode values set from protected-mode registers

INT 21 2511


21 2512 Values for Phar Lap error code:

Copy to Main

Table 0587

Values for Phar Lap error code:

 02h	file not found or path invalid

 05h	access denied

 08h	insufficient memory

 0Ah	environment invalid

 0Bh	invalid file format

 80h	LDT too small

INT 21 2512


21 2512 Format of Phar Lap program load parameter block:

Copy to Main

Table 0588

Format of Phar Lap program load parameter block:

Offset	Size	Description

Input:

 00h	DWORD	32-bit offset of environment string

 04h	WORD	segment of environment string

 06h	DWORD	32-bit offset of command-tail string

 0Ah	WORD	segment of command-tail string

 0Ch	DWORD	32-bit offset of LDT buffer (size in ECX)

 10h	WORD	segment of LDT buffer

Output:

 12h	WORD	real-mode paragraph address of PSP (see also AH=26h)

 14h	WORD	real/protected mode flag

0000h  real mode

0001h  protected mode

 16h	DWORD	initial EIP value

 1Ah	WORD	initial CS value

 1Ch	DWORD	initial ESP value

 20h	WORD	initial SS value

 22h	WORD	initial DS value

 24h	WORD	initial ES value

 26h	WORD	initial FS value

 28h	WORD	initial GS value

INT 21 2512


21 2520 Format of Phar Lap VM statistics buffer:

Copy to Main

Table 0589

Format of Phar Lap VM statistics buffer:

Offset	Size	Description

 00h	DWORD	VM status

0001h VM subsystem is present

0000h VM not present

 04h	DWORD	"nconvpg" number of conventional memory pages available

 08h	DWORD	"nbimpg" number of Compaq built-in memory pages available

 0Ch	DWORD	"nextpg" total number of extended memory pages

 10h	DWORD	"extlim" extender memory pages limit

 14h	DWORD	"aphyspg" number of physical memory pages allocated to appl

 18h	DWORD	"alockpg" number of locked pages owned by application

 1Ch	DWORD	"sysphyspg" number physical memory pages allocated to system

 20h	DWORD	"nfreepg" number of free physical pages; approx if EMS VCPI

 24h	DWORD	linear address of beginning of application address space

 28h	DWORD	linear address of end of application address space

 2Ch	DWORD	number of seconds since last time VM stats were reset

 30h	DWORD	number of page faults since last time

 34h	DWORD	number of pages written to swap file since last time

 38h	DWORD	number of reclaimed pages (page faults on swapped pages)

 3Ch	DWORD	number of virtual pages allocated to the application

 40h	DWORD	size in pages of swap file

 44h	DWORD	number of system pages allocated with EMS calls

 48h	DWORD	minimum number of conventional memory pages

 4Ch	DWORD	maximum size in pages to which swap file can be increased

 50h	DWORD	"vmflags"

bit 0 = 1 if page fault in progress

---v4.0+ ---

 54h	DWORD	number of physical pages guaranteed to be free

 58h	DWORD	number of free physical pages currently available

 5Ch	DWORD	size in pages of largest free block of memory (including disk

  swap space)

 60h	DWORD	reserved

INT 21 2520


21 2526 Format of Phar Lap configuration buffer:

Copy to Main

Table 0590

Format of Phar Lap configuration buffer:

Offset	Size	Description

 00h	DWORD	flags 1 (see #0591)

 04h	DWORD	flags 2 (unused through v5.0)

 08h	DWORD	flags 3 (unused through v5.0)

 0Ch	DWORD	386|DOS-Extender major version

 10h	DWORD	386|DOS-Extender minor version

 14h	DWORD	first letter of text after minor version number in version str

 18h	DWORD	beta flag (00h normal release, 01h beta release)

 1Ch	DWORD	processor (3 = 386, 4 = 486)

 20h	DWORD	coprocessor (4 = none, 6 = 287, 7 = 387/486)

 24h	DWORD	Weitek coprocessor flag (0 = none, 1 = present)

 28h	DWORD	machine type (0 = IBM PC compatible, 1 = NEC 9800 series)

 2Ch	DWORD	machine class

IBM: bus type (0=ISA, 1=MCA, 2=XT, 3=EISA)

NEC: 0=normal mode, 1=high-res mode

 30h	DWORD	VCPI flag (0 = none, 1 = present)

 34h	DWORD	-WEITEK/-1167 switch (0 = AUTO, 1 = ON, 2 = OFF)

 38h	DWORD	-MINREAL setting

 3Ch	DWORD	-MAXREAL setting

 40h	DWORD	-MINIBUF setting

 44h	DWORD	-MAXIBUF setting

 48h	DWORD	size in bytes of DOS call data buffer

 4Ch	DWORD	number of interrupt stacks (-NISTACK)

 50h	DWORD	interrupt stack size (-ISTKSIZE)

 54h	DWORD	-REALBREAK setting

 58h	DWORD	-CALLBUFS

 5Ch	DWORD	-HWIVEC

 60h	DWORD	-PRIVEC

 64h	DWORD	-INTMAP

 68h	DWORD	-PRIMAP

 6Ch	DWORD	VCPI: master 8259 interrupt vector base (IRQ0 mapping)

 70h	DWORD	VCPI: slave 8259 interrupt vector base (IRQ8 mapping)

 74h	DWORD	BIOS print screen interrupt vector (0 if NEC)

 78h	DWORD	-EXTLOW setting

 7Ch	DWORD	-EXTHIGH setting

 80h	DWORD	lowest physical extended-memory address allocatable

 84h	DWORD	highest physical extended-memory address allocatable + 1

 88h	DWORD	special memory's physical base address (00000000h if none)

 8Ch	DWORD	special memory size in bytes (00000000h if none)

 90h	DWORD	-MAXVCPIMEM setting

 94h	DWORD	-VSCAN

 98h	DWORD	-SWAPCHK (0 = OFF, 1 = ON, 2 = FORCE, 3 = MAX)

 9Ch	DWORD	-CODESIZE setting

 A0h	DWORD	minimum swap file size (-MINSWFSIZE)

 A4h	DWORD	maximum swap fiel size (-MAXSWFSIZE)

 A8h	DWORD	page replacement policy (0 = LFU, 1 = NUR)

 ACh	DWORD	number of GDT entries (-NGDTENT)

 B0h	DWORD	number of LDT entries (-NLDTENT)

 B4h	DWORD	program's privilege level (0-3)

---386|DOS-Extender v3.0+ ---

 B8h	DWORD	-LOCKSTACK setting

 BCh	DWORD	-MAXEXTMEM

 C0h	DWORD	-MAXXMSMEM

 C4h	DWORD	-MAXPGMMEM

 C8h	DWORD	-DATATHRESHOLD

 CCh	DWORD	virtual memory manager flag (0 = not present, 1 = present)

 D0h	DWORD	Cyrix coprocessor flag (0 = no Cyrix EMC387, 1 = present)

 D4h	DWORD	-CYRIX setting (0 = AUTO, 1 = ON, 2 = OFF)

 D8h	DWORD	DPMI flag (0 = not present, 1 = present)

 DCh	DWORD	DPMI major version

 E0h	DWORD	DPMI minor version

 E4h	DWORD	DPMI capabilities flags (see #0592)

 E8h	DWORD	VCPI major version

 ECh	DWORD	VCPI minor version

 F0h	WORD	VCPI: IRQ0-7 physical base interrupt vector

 F2h	WORD	VCPI: IRQ8-15 physical base interrupt vector

 F4h	DWORD	XMS flag (0 = none, 1 = present)

 F8h	DWORD	XMS major version

 FCh	DWORD	XMS minor version

100h	WORD	application's CS selector

102h	WORD	application's DS selector

104h	WORD	application's PSP selector

106h	WORD	application's environment selector

108h	WORD	selector mapping entire first megabyte

10Ah	WORD	selector mapping text video memory

10Ch	WORD	selector mapping video memory (text for IBM, graphics for NEC)

10Eh	WORD	selector mapping Weitek address space, 0000h if not present

110h	WORD	selector mapping Cyrix EMC387 address space, 0000h if none

112h	WORD	reserved (0)

114h	DWORD	real-mode FAR entry point to call to switch to protected mode

  with no saved context

118h	DWORD	size of LDT in bytes

---386|DOS-Extender v5.0+ ---

11Ch	DWORD	Windows flag (0 = not present, 1 = Windows present)

120h	DWORD	Windows major version

124h	DWORD	Windows minor version

128h	DWORD	Windows mode (0 = real/standard, 1 = enhanced)

12Ch	DWORD	OS/2 flag (0 = not present, 1 = OS/2 present)

130h	DWORD	OS/2 major version

134h	DWORD	OS/2 minor version

138h 50 DWORDs	reserved (0)

INT 21 2526


21 2526 Bitfields for flags 1:

Copy to Main

Table 0591

Bitfields for flags 1:

Bit(s)	Description

 0	-NOPAGE specified

 1	-A20 specified

 2	-VDISK specified

 3	-XT specified

 4	-AT specified

 5	-MCA specified

 6	-EISA specified

 7	-NORMRES specified (NEC only)

 8	-HIGHRES specified (NEC only)

 9	set if -SWFGROW1ST, clear if -NOSWFGROW1ST

 10	-NOVM specified

 11	-SAVEREGS specified

 12	unused (clear)

 13	-NOVCPI specified

 14	-NOMUL specified

 15	-NOBMCHK specified

 16	-NOSPCLMEM or -NOBIM

 17	-NOPGEXP specified

 18	-SWAPDEFDISK specified

---v3.0+ ---

 19	-SAVEINTS specified

 20	-NOLOAD specified

 21	-PAGELOG specified

 22	-OPENDENY specified

 23	-ERRATA17 specified

---v4.1+ ---

 24	-NESTDPMI specified

 25	-NONESTDPMI specified

 26	-NODPMI specified

 27	-NOPCDWEITEK specified

---v4.2+ ---

 28	-WININT21 specified

INT 21 2526


21 2526 Bitfields for DPMI capabilities flags:

Copy to Main

Table 0592

Bitfields for DPMI capabilities flags:

Bit(s)	Description

 0	paging supported

 1	physical device mapping

 2	conventional memory mapping

 3	exceptions restartable

INT 21 2526


21 2528 Format of Phar Lap buffer for registers:

Copy to Main

Table 0593

Format of Phar Lap buffer for registers:

Offset	Size	Description

 00h  8 BYTEs	unused

 08h  4	DWORDs	EAX,EBX,ECX,EDX

 18h  4 DWORDs	ESI,EDI,EBP,ESP

 28h  6 WORDs	CS,DS,SS,ES,FS,GS

 34h	DWORD	EIP

 38h	DWORD	EFLAGS

INT 21 2528


21 2529 Format of Phar Lap program load parameter block:

Copy to Main

Table 0594

Format of Phar Lap program load parameter block:

Offset	Size	Description

 00h	DWORD	initial EIP

 04h	WORD	initial CS

 06h	DWORD	initial ESP

 0Ah	WORD	initial SS

 0Ch  4 WORDs	initial DS, ES, FS, GS

 14h	DWORD	minimum size in bytes of program segment

 18h	DWORD	bytes of additional memory allocated

 1Ch	DWORD	flags

bit 0: child linked with -UNPRIVILEGED

---v6.0+ ---

bit 1: child is PE file instead of .EXP

bit 2: loaded file is a DLL

bits 3-31 reserved

---v6.0+ ---

 20h	DWORD	module handles (PE files only)

 24h  7 DWORDs	reserved (0)

INT 21 2529


21 252A Values for Phar Lap file error code:

Copy to Main

Table 0595

Values for Phar Lap file error code:

 01h	DOS open error

 02h	DOS seek error

 03h	DOS read error

 04h	not an .EXP or .REX file

 05h	invalid file format

 06h	-OFFSET is not a multiple of 64K

 07h	-NOPAGE incompatible with -REALBREAK/-OFFSET

 08h	DOS error loading .EXE file

INT 21 252A


21 252A Values for Phar Lap memory error code:

Copy to Main

Table 0596

Values for Phar Lap memory error code:

 01h	out of physical memory

 02h	out of swap space

 04h	unable to change extended memory allocation

 05h	-MAXPGMMEM exceeded

 06h	insufficient low memory to REALBREAK value

 07h	insufficient low memory for PSP and environment

INT 21 252A


21 252B Bitfields for Phar Lap page information:

Copy to Main

Table 0597

Bitfields for Phar Lap page information:

Bit(s)	Description

 7	mapped to read/write data file

 6	mapped to read-only data file

 5	swapped to disk

 4	locked

 3-0	page type

0 unmapped

1 allocated

2 physical device page

INT 21 252B


21 252B Format of Phar Lap mapping structure:

Copy to Main

Table 0598

Format of Phar Lap mapping structure:

Offset	Size	Description

 00h	DWORD	starting file offset to be mapped

 04h	DWORD	DOS file access and sharing modes (see #0628 at INT 21/AH=3Dh)

INT 21 252B


21 252E Format of Phar Lap VMM parameter buffer:

Copy to Main

Table 0599

Format of Phar Lap VMM parameter buffer:

Offset	Size	Description

 00h	DWORD	flags

bit 0: page fault logging enabled

---v5.0+ ---

bit 1: swap extender to disk during DOS EXEC call

bit 2: don't zero allocated memory

 04h	DWORD	scan period for page aging, in milliseconds

 08h	DWORD	maximum size (in bytes) to check on each page scan

 0Ch 52 BYTEs	unused

INT 21 252E


21 2535 Format of Phar Lap system register record:

Copy to Main

Table 0600

Format of Phar Lap system register record:

Offset	Size	Description

 00h	DWORD	CR0

 04h  4 DWORDs	DR0,DR1,DR2,DR3

 14h  2 DWORDs	reserved

 1Ch  2 DWORDs	DR6,DR7

 24h  3 DWORDs	reserved

INT 21 2535


21 25C3 Values for Phar Lap error code:

Copy to Main

Table 0601

Values for Phar Lap error code:

 01h	function code in AL is invalid ???

 02h	file not found or path invalid

 05h	access denied

 08h	insufficient memory to load program

 0Ah	environment invalid

 0Bh	invalid file format

INT 21 25C3


21 25C3 Format of parameter block:

Copy to Main

Table 0602

Format of parameter block:

Offset	Size	Description

 00h	DWORD	32-bit offset of environment string

 04h	WORD	segment selector of environment string

 06h	DWORD	32-bit offset of command-tail string

 0Ah	WORD	segment selector of command-tail string

INT 21 25C3


21 26-- Format of Program Segment Prefix (PSP):

Copy to Main

Table 0603

Format of Program Segment Prefix (PSP):

Offset	Size	Description

 00h  2 BYTEs	INT 20 instruction for CP/M CALL 0 program termination

the CDh 20h here is often used as a signature for a valid PSP

 02h	WORD	segment of first byte beyond memory allocated to program

 04h	BYTE	(DOS) unused filler

(OS/2) count of fake DOS version returns

 05h	BYTE	CP/M CALL 5 service request (FAR CALL to absolute 000C0h)

BUG: (DOS 2+ DEBUG) PSPs created by DEBUG point at 000BEh

 06h	WORD	CP/M compatibility--size of first segment for .COM files

 08h  2 BYTEs	remainder of FAR JMP at 05h

 0Ah	DWORD	stored INT 22 termination address

 0Eh	DWORD	stored INT 23 control-Break handler address

 12h	DWORD	DOS 1.1+ stored INT 24 critical error handler address

 16h	WORD	segment of parent PSP

 18h 20 BYTEs	DOS 2+ Job File Table, one byte per file handle, FFh = closed

 2Ch	WORD	DOS 2+ segment of environment for process (see #0604)

 2Eh	DWORD	DOS 2+ process's SS:SP on entry to last INT 21 call

 32h	WORD	DOS 3+ number of entries in JFT (default 20)

 34h	DWORD	DOS 3+ pointer to JFT (default PSP:0018h)

 38h	DWORD	DOS 3+ pointer to previous PSP (default FFFFFFFFh in 3.x)

used by SHARE in DOS 3.3

 3Ch	BYTE	DOS 4+ (DBCS) interim console flag (see AX=6301h)

 3Dh	BYTE	(APPEND) TrueName flag (see INT 2F/AX=B711h)

 3Eh	BYTE	(Novell NetWare) flag: next byte initialized if CEh

(OS/2) capabilities flag

 3Fh	BYTE	(Novell NetWare) Novell task number if previous byte is CEh

 40h  2 BYTEs	DOS 5+ version to return on INT 21/AH=30h

 42h	WORD	(MSWindows3) selector of next PSP (PDB) in linked list

Windows keeps a linked list of Windows programs only

 44h	WORD	(MSWindows3) "PDB_Partition"

 46h	WORD	(MSWindows3) "PDB_NextPDB"

 48h	BYTE	(MSWindows3) bit 0 set if non-Windows application (WINOLDAP)

 49h	BYTE	unused by DOS versions <= 6.00

 4Ch	WORD	(MSWindows3) "PDB_EntryStack"

 4Eh  2 BYTEs	unused by DOS versions <= 6.00

 50h  3 BYTEs	DOS 2+ service request (INT 21/RETF instructions)

 53h  2 BYTEs	unused in DOS versions <= 6.00

 55h  7 BYTEs	unused in DOS versions <= 6.00; can be used to make first FCB

  into an extended FCB

 5Ch 16 BYTEs	first default FCB, filled in from first commandline argument

overwrites second FCB if opened

 6Ch 16 BYTEs	second default FCB, filled in from second commandline argument

  overwrites beginning of commandline if opened

 7Ch  4 BYTEs	unused

 80h 128 BYTEs	commandline / default DTA

command tail is BYTE for length of tail, N BYTEs for the tail,

  followed by a BYTE containing 0Dh

Notes:	in DOS v3+, the limit on simultaneously open files may be increased by

  allocating memory for a new open file table, filling it with FFh,

  copying the first 20 bytes from the default table, and adjusting the

  pointer and count at 34h and 32h.  However, DOS will only copy the

  first 20 file handles into a child PSP (including the one created on

  EXEC).

network redirectors based on the original MS-Net implementation use

  values of 80h-FEh in the open file table to indicate remote files;

  Novell NetWare also uses values from FEh down to 80h or one more than

  FILES= (whichever is greater) to indicate remote files

MS-DOS 5.00 incorrectly fills the FCB fields when loading a program

  high; the first FCB is empty and the second contains the first

  parameter

some DOS extenders place protected-mode values in various PSP fields

  such as the "parent" field, which can confuse PSP walkers.  Always

  check either for the CDh 20h signature or that the suspected PSP is

  at the beginning of a memory block which owns itself (the preceding

  paragraph should be a valid MCB with "owner" the same as the

  suspected PSP).

Novell NetWare updates the fields at offsets 3Eh and 3Fh without

  checking that a legal PSP segment is current; see AH=50h for further

  discussion

INT 21 26--


21 26-- Format of environment block:

Copy to Main

Table 0604

Format of environment block:

Offset	Size	Description

 00h  N BYTEs	first environment variable, ASCIZ string of form "var=value"

      N BYTEs	second environment variable, ASCIZ string

...

      N BYTEs	last environment variable, ASCIZ string of form "var=value"

BYTE	00h

---DOS 3.0+ ---

WORD	number of strings following environment (normally 1)

      N BYTEs	ASCIZ full pathname of program owning this environment

other strings may follow

INT 21 26--


21 29-- Bitfields for parsing options:

Copy to Main

Table 0605

Bitfields for parsing options:

Bit(s)	Description

 0	skip leading separators

 1	use existing drive number in FCB if no drive is specified, instead of

  setting field to zero

 2	use existing filename in FCB if no base name is specified, instead of

  filling field with blanks

 3	use existing extension in FCB if no extension is specified, instead of

  filling field with blanks

 4-7	reserved (0)

INT 21 29--


21 2B-- Format of ELRES history structure:

Copy to Main

Table 0606

Format of ELRES history structure:

Offset	Size	Description

 00h	WORD	number of return codes which can be stored by following buffer

 02h	WORD	current position in buffer (treated as a ring)

 04h  N BYTEs	ELRES buffer

INT 21 2B--


21 2B01 Format of TAME 2.10-2.20 data area:

Copy to Main

Table 0607

Format of TAME 2.10-2.20 data area:

Offset	Size	Description

 00h	BYTE	data structure minor version number (01h in TAME 2.20)

 01h	BYTE	data structure major version number (07h in TAME 2.20)

 02h	DWORD	number of task switches

 06h	DWORD	number of keyboard polls

 0Ah	DWORD	number of time polls

 0Eh	DWORD	number of times DESQview told program runs only in foreground

 12h	DWORD	original INT 10h

 16h	DWORD	original INT 14h

 1Ah	DWORD	original INT 15h

 1Eh	DWORD	original INT 16h

 22h	DWORD	original INT 17h

 26h	DWORD	original INT 21h

 2Ah	DWORD	original INT 28h

 2Eh	WORD	offset of TAME INT 10h handler

 30h	WORD	offset of TAME INT 14h handler

 32h	WORD	offset of TAME INT 15h handler

 34h	WORD	offset of TAME INT 16h handler

 36h	WORD	offset of TAME INT 17h handler

 38h	WORD	offset of TAME INT 21h handler

 3Ah	WORD	offset of TAME INT 28h handler

 3Ch	WORD	X in /max:X,Y or /freq:X,Y

 3Eh	WORD	Y in /max:X,Y or /freq:X,Y

 40h	WORD	number of polls remaining before next task switch

 42h	WORD	/KEYIDLE value

 44h	BYTE	interrupts already grabbed by TAME (see #0608)

 45h	BYTE	flags for interrupts which may be acted on (same bits as above)

 46h	BYTE	TAME enabled (01h) or disabled (00h)

 47h	BYTE	/TIMEPOLL (01h) or /NOTIMEPOLL (00h)

 48h	BYTE	/NOTIMER (01h) or /TIMER (00h)

 49h	BYTE	window or task number for this task

 4Ah	BYTE	multitasker type (see #0609)

 4Bh	BYTE	type of task switching selected

bit 0: DESQview???

bit 1: DoubleDOS???

bit 2: TopView???

bit 3: KeySwitch

bit 4: HLT instruction

 4Ch	BYTE	???

 4Dh	BYTE	flags

bit 1: /FREQ instead of /MAX

 4Eh	BYTE	/FG: value

 4Fh	BYTE	task switches left until next FGONLY DESQview API call

 50h	BYTE	???

INT 21 2B01


21 2B01 Bitfields for interrupts already grabbed by TAME:

Copy to Main

Table 0608

Bitfields for interrupts already grabbed by TAME:

Bit(s)	Description

 0	INT 10h

 1	INT 14h

 2	INT 15h

 3	INT 16h

 4	INT 17h

 5	INT 21h

 6	INT 28h

INT 21 2B01


21 2B01 Values for multitasker type:

Copy to Main

Table 0609

Values for multitasker type:

 01h	DESQview

 02h	DoubleDOS

 03h	TopView

 04h	OmniView

 05h	VM/386

INT 21 2B01


21 2B01 Bitfields for type of task switching selected:

Copy to Main

Table 0610

Bitfields for type of task switching selected:

Bit(s)	Description

 0	DESQview

 1	DoubleDOS

 2	TopView

 3	OmniView

 4	KeySwitch

 5	HLT instruction

INT 21 2B01


21 2B01 Format of TAME 2.30 data area:

Copy to Main

Table 0611

Format of TAME 2.30 data area:

Offset	Size	Description

 00h	BYTE	data structure minor version number (02h in TAME 2.30)

 01h	BYTE	data structure major version number (0Ah in TAME 2.30)

 02h	DWORD	number of task switches

 06h	DWORD	number of keyboard polls

 0Ah	DWORD	number of time polls

 0Eh	DWORD	number of times DESQview told program runs only in foreground

 12h	DWORD	time of last /CLEAR or TAME-RES load

 16h	DWORD	time yielded

 1Ah	DWORD	time spent polling

 1Eh	DWORD	time spent waiting on key input with INT 16/AH=01h,11h

 22h	DWORD	original INT 10h

 26h	DWORD	original INT 14h

 2Ah	DWORD	original INT 15h

 2Eh	DWORD	original INT 16h

 32h	DWORD	original INT 17h

 36h	DWORD	original INT 21h

 3Ah	DWORD	original INT 28h

 3Eh	WORD	offset of TAME INT 10h handler

 40h	WORD	offset of TAME INT 14h handler

 42h	WORD	offset of TAME INT 15h handler

 44h	WORD	offset of TAME INT 16h handler

 46h	WORD	offset of TAME INT 17h handler

 48h	WORD	offset of TAME INT 21h handler

 4Ah	WORD	offset of TAME INT 28h handler

 4Ch	WORD	X in /max:X,Y or /freq:X,Y

 4Eh	WORD	Y in /max:X,Y or /freq:X,Y

 50h	WORD	number of polls remaining before next task switch

 52h	WORD	/KEYIDLE value

 54h	WORD	/FG: value

 56h	WORD	task switches left until next FGONLY DESQview API call

 58h	WORD	multitasker version

 5Ah	WORD	virtual screen segment

 5Ch	BYTE	interrupts already grabbed by TAME (see #0608)

 5Dh	BYTE	flags for interrupts which may be acted on (same bits as above)

 5Eh	BYTE	window or task number for this task

 5Fh	BYTE	multitasker type (see #0609)

 60h	BYTE	type of task switching selected (bit flags) (see #0610)

 61h	BYTE	watch_DOS

 62h	BYTE	action flags (see #0612)

 63h	BYTE	old status

 64h	WORD	signature DA34h

INT 21 2B01


21 2B01 Bitfields for TAME action flags:

Copy to Main

Table 0612

Bitfields for TAME action flags:

Bit(s)	Description

 0	TAME enabled

 1	/FREQ instead of /MAX (X and Y count fields are per tick)

 2	/TIMEPOLL

 3	/KEYPOLL

 4	inhibit timer

 5	enable status monitoring

SeeAlso: #0611,#0613

INT 21 2B01


21 2B01 Format of TAME 2.60 data area:

Copy to Main

Table 0613

Format of TAME 2.60 data area:

Offset	Size	Description

 00h	BYTE	data structure minor version number (02h in TAME 2.60)

 01h	BYTE	data structure major version number (0Bh in TAME 2.60)

 02h	DWORD	number of task switches

 06h	DWORD	number of keyboard polls

 0Ah	DWORD	number of time polls

 0Eh	DWORD	number of times DESQview told program runs only in foreground

 12h	DWORD	time of last /CLEAR or TAME-RES load

 16h	DWORD	time yielded

 1Ah	DWORD	time spent polling

 1Eh	DWORD	time spent waiting on key input with INT 16/AH=01h,11h

 22h  4 BYTEs	???

 26h	DWORD	original INT 10h

 2Ah	DWORD	original INT 14h

 2Eh	DWORD	original INT 15h

 32h	DWORD	original INT 16h

 36h	DWORD	original INT 17h

 3Ah	DWORD	original INT 21h

 3Eh	DWORD	original INT 28h

 42h	WORD	offset of TAME INT 10h handler

 44h	WORD	offset of TAME INT 14h handler

 46h	WORD	offset of TAME INT 15h handler

 48h	WORD	offset of TAME INT 16h handler

 4Ah	WORD	offset of TAME INT 17h handler

 4Ch	WORD	offset of TAME INT 21h handler

 4Eh	WORD	offset of TAME INT 28h handler

 50h	WORD	X in /max:X,Y or /freq:X,Y

 52h	WORD	Y in /max:X,Y or /freq:X,Y

 54h	WORD	number of polls remaining before next task switch

 56h	WORD	/KEYIDLE value

 58h  4 BYTEs	???

 5Ch	WORD	X in /boost:X,Y

 5Eh	WORD	Y in /boost:X,Y

 60h	WORD	/FG: value

 62h	WORD	task switches remaining until next FGONLY DESQview API call

 64h	WORD	multitasker version ???

 66h	WORD	virtual screen segment

 68h	BYTE	interrupts already grabbed by TAME (see #0608)

 69h	BYTE	flags for interrupts which may be acted on (same bits as above)

 6Ah	BYTE	window or task number for this task

 6Bh	BYTE	multitasker type (see #0609)

 6Ch	BYTE	type of task switching selected (bit flags) (see #0610)

 6Dh	BYTE	watch_DOS

 6Eh	BYTE	action flags (see #0612)

 6Fh	BYTE	old status

 70h	WORD	signature DA34h

INT 21 2B01


21 2B44 Call pcANYWHERE API entry point with:

Copy to Main

Table 0614

Call pcANYWHERE API entry point with:

AX = 0000h get pcANYWHERE IV version

    DS:SI -> BYTE buffer for host type code

    Return: AH = version number

    AL = revision number

    DS:DI buffer byte filled with

00h full-featured host

01h limited-feature LAN host

other API may not be supported

AX = 0001h initialize operation

    DS:SI -> initialization request structure (see #0615)

    Return: AX = function status (see #0618)

AX = 0002h get status

    Return: AH = current operating mode (see init req structure below)

    AL = current connection status (see #0617)

AX = 0003h suspend remote screen updates

    Return: AX = function status (see #0618)

AX = 0004h resume screen updates

    Return: AX = function status (see #0618)

AX = 0005h end current remote access session

    DS:SI -> termination request structure (see #0616)

    Return: AX = function status (see #0618)

AX = 0006h remove pcANYWHERE IV from memory

    Return: AX = status (see #0618)

AX = 8000h read data from communications channel

    DS:BX -> buffer

    CX = buffer size

    Return: AX >= number of characters read/available

    AX < 0 on error

AX = 8001h write data to communications channel

    DS:BX -> buffer

    CX = buffer size

    Return: AX >= number of characters written

    AX < 0 on error

AX = 8002h get connection status

    Return: AX = status

> 0000h if connection active

= 0000h if connection lost

< 0000h on error

INT 21 2B44


21 2B44 Format of pcANYWHERE initialization request structure:

Copy to Main

Table 0615

Format of pcANYWHERE initialization request structure:

Offset	Size	Description

 00h	BYTE	operating mode

00h wait for a call

01h hot key activates

02h incoming call activates

03h initiate a call

 01h  3 BYTEs	user ID to append to config file names

 04h	WORD	DS-relative pointer to path for config files

 06h	WORD	DS-relative pointer to path for program files

INT 21 2B44


21 2B44 Format of pcANYWHERE termination request structure:

Copy to Main

Table 0616

Format of pcANYWHERE termination request structure:

Offset	Size	Description

 00h	BYTE	operating mode after termination

00h wait for a call

01h hot key activates

02h incoming call activates

80h use current mode

FFh remove from memory

INT 21 2B44


21 2B44 Bitfields for current connection status:

Copy to Main

Table 0617

Bitfields for current connection status:

Bit(s)	Description

 0	a physical connection is active

 1	remove screen updating is active

 2	connection checking is active

 3	hot key detection is active

 4	background file transfer is active

INT 21 2B44


21 2B44 Values for pcANYWHERE function status:

Copy to Main

Table 0618

Values for pcANYWHERE function status:

 0000h	function completed successfully

 FFD1h	unable to release interrupt vectors

 FFD2h	unable to release allocated memory

 FFF2h	unable to establish a connection when operating mode is

  "Initiate a call"

 FFF3h	modem configuration is invalid (corrupt config)

 FFF4h	modem initialization failed (no modem response)

 FFF5h	the communications device could not be initialized

 FFF6h	the host operator aborted the function

 FFF7h	the communications driver type specified in the configuration file is

  different than the one loaded when pcANYWHERE IV was started

 FFF9h	the configuration file is invalid

 FFFAh	the configuration file could not be found

 FFFBh	no session is active

 FFFCh	a remote access session is active

 FFFDh	the specified operating mode is invalid

INT 21 2B44


21 30-- Values for DOS OEM number:

Copy to Main

Table 0619

Values for DOS OEM number:

 00h	IBM

 01h	Compaq

 02h	MS Packaged Product

 04h	AT&T

 05h	ZDS (Zenith Electronics)

 06h	Hewlett-Packard

 07h	ZDS (Groupe Bull)

 0Dh	Packard-Bell

 16h	DEC

 23h	Olivetti

 28h	Texas Instruments

 29h	Toshiba

 33h	Novell (Windows/386 device IDs only)

 34h	MS Multimedia Systems (Windows/386 device IDs only)

 35h	MS Multimedia Systems (Windows/386 device IDs only)

 4Dh	Hewlett-Packard

 5Eh	RxDOS

 66h	PhysTechSoft (PTS-DOS)

 99h	General Software's Embedded DOS

 EEh	DR-DOS

 EFh	Novell DOS

 FFh	Microsoft, Phoenix

INT 21 30--


21 32-- Format of DOS Drive Parameter Block:

Copy to Main

Table 0620

Format of DOS Drive Parameter Block:

Offset	Size	Description

 00h	BYTE	drive number (00h = A:, 01h = B:, etc)

 01h	BYTE	unit number within device driver

 02h	WORD	bytes per sector

 04h	BYTE	highest sector number within a cluster

 05h	BYTE	shift count to convert clusters into sectors

 06h	WORD	number of reserved sectors at beginning of drive

 08h	BYTE	number of FATs

 09h	WORD	number of root directory entries

 0Bh	WORD	number of first sector containing user data

 0Dh	WORD	highest cluster number (number of data clusters + 1)

16-bit FAT if greater than 0FF6h, else 12-bit FAT

 0Fh	BYTE	number of sectors per FAT

 10h	WORD	sector number of first directory sector

 12h	DWORD	address of device driver header

 16h	BYTE	media ID byte (see #0581)

 17h	BYTE	00h if disk accessed, FFh if not

 18h	DWORD	pointer to next DPB

---DOS 2.x---

 1Ch	WORD	cluster containing start of current directory, 0000h=root,

FFFFh = unknown

 1Eh 64 BYTEs	ASCIZ pathname of current directory for drive

---DOS 3.x---

 1Ch	WORD	cluster at which to start search for free space when writing

 1Eh	WORD	number of free clusters on drive, FFFFh = unknown

---DOS 4.0-6.0---

 0Fh	WORD	number of sectors per FAT

 11h	WORD	sector number of first directory sector

 13h	DWORD	address of device driver header

 17h	BYTE	media ID byte (see #0581)

 18h	BYTE	00h if disk accessed, FFh if not

 19h	DWORD	pointer to next DPB

 1Dh	WORD	cluster at which to start search for free space when writing,

usually the last cluster allocated

 1Fh	WORD	number of free clusters on drive, FFFFh = unknown

SeeAlso: #0875

INT 21 32--


21 37D4 Bitfields for DIET TSR options:

Copy to Main

Table 0621

Bitfields for DIET TSR options:

Bit(s)	Description

 0	automated compression of DIETed file

 1	automated compression of newly-created file

 2	suppress DIET message

 3	display original file size

 4-15	reserved (0)

INT 21 37D4


21 37DC Values DIET external procedure is called with:

Copy to Main

Table 0622

Values DIET external procedure is called with:

STACK:	WORD	class

FFFDh creation failed for unknown reasons

FFFEh creation failed due to lack of space

FFFFh file creation error

else file handle of DIETed file to be decompressed

DWORD	-> compressed filename

DWORD	-> decompressed or temporary filename

Return: SI,DI,BP,DS,ES must be preserved by external procedure

INT 21 37DC


21 38-- Format of DOS 2.00-2.10 country info:

Copy to Main

Table 0623

Format of DOS 2.00-2.10 country info:

Offset	Size	Description

 00h	WORD	date format  0 = USA	mm dd yy

     1 = Europe dd mm yy

     2 = Japan	yy mm dd

 02h	BYTE	currency symbol

 03h	BYTE	00h

 04h	BYTE	thousands separator char

 05h	BYTE	00h

 06h	BYTE	decimal separator char

 07h	BYTE	00h

 08h 24 BYTEs	reserved

INT 21 38--


21 38-- Format of DOS 2.11+ country info:

Copy to Main

Table 0624

Format of DOS 2.11+ country info:

Offset	Size	Description

 00h	WORD	date format (see #0623)

 02h  5 BYTEs	ASCIZ currency symbol string

 07h  2 BYTEs	ASCIZ thousands separator

 09h  2 BYTEs	ASCIZ decimal separator

 0Bh  2 BYTEs	ASCIZ date separator

 0Dh  2 BYTEs	ASCIZ time separator

 0Fh	BYTE	currency format

bit 2 = set if currency symbol replaces decimal point

bit 1 = number of spaces between value and currency symbol

bit 0 = 0 if currency symbol precedes value

1 if currency symbol follows value

 10h	BYTE	number of digits after decimal in currency

 11h	BYTE	time format

bit 0 = 0 if 12-hour clock

1 if 24-hour clock

 12h	DWORD	address of case map routine

(FAR CALL, AL = character to map to upper case [>= 80h])

 16h  2 BYTEs	ASCIZ data-list separator

 18h 10 BYTEs	reserved

INT 21 38--


21 38-- Values for country code:

Copy to Main

Table 0625

Values for country code:

 001h	United States

 002h	Canadian-French

 003h	Latin America

 01Fh	Netherlands

 020h	Belgium

 021h	France

 022h	Spain

 024h	Hungary (not supported by DR-DOS 5.0)

 026h	Yugoslavia (not supported by DR-DOS 5.0)

 027h	Italy

 029h	Switzerland

 02Ah	Czechoslovakia/Tjekia (not supported by DR-DOS 5.0)

 02Bh	Austria (DR-DOS 5.0)

 02Ch	United Kingdom

 02Dh	Denmark

 02Eh	Sweden

 02Fh	Norway

 030h	Poland (not supported by DR-DOS 5.0)

 031h	Germany

 037h	Brazil (not supported by DR-DOS 5.0)

 03Dh	International English [Australia in DR-DOS 5.0]

 051h	Japan (DR-DOS 5.0, MS-DOS 5.0+)

 052h	Korea (DR-DOS 5.0)

 056h	China (MS-DOS 5.0+)

 058h	Taiwan (MS-DOS 5.0+)

 05Ah	Turkey (MS-DOS 5.0+)

 15Fh	Portugal

 162h	Iceland

 166h	Finland

 311h	Middle East/Saudi Arabia (DR-DOS 5.0,MS-DOS 5.0+)

 3CCh	Israel (DR-DOS 5.0,MS-DOS 5.0+)

INT 21 38--


21 3C-- Bitfields for file attributes:

Copy to Main

Table 0626

Bitfields for file attributes:

Bit(s)	Description

 0	read-only

 1	hidden

 2	system

 3	volume label (ignored)

 4	reserved, must be zero (directory)

 5	archive bit

 7	if set, file is shareable under Novell NetWare

INT 21 3C--


21 3D-- Bitfields for access and sharing modes:

Copy to Main

Table 0627

Bitfields for access and sharing modes:

Bit(s)	Description

 2-0	access mode

000 read only

001 write only

010 read/write

011 (DOS 5+ internal) passed to redirector on EXEC to allow

case-sensitive filenames

 3	reserved (0)

 6-4	sharing mode (DOS 3.0+) (see #0628)

000 compatibility mode

001 "DENYALL" prohiboth read and write access by others

010 "DENYWRITE" prohiwrite access by others

011 "DENYREAD" prohiread access by others

100 "DENYNONE" allow full access by others

111 network FCB (only available during server call)

 7	inheritance

if set, file is private to current process and will not be inherited

  by child processes

INT 21 3D--


21 3D-- Values of DOS file sharing behavior:

Copy to Main

Table 0628

Values of DOS file sharing behavior:

  |	Second and subsequent Opens

 First	  |Compat  Deny	  Deny	 Deny	Deny

 Open	  |	   All	  Write	 Read	None

  |R W RW R W RW R W RW R W RW R W RW

 - - - - -| - - - - - - - - - - - - - - - - -

 Compat R |Y Y Y  N N N	 1 N N	N N N  1 N N

W |Y Y Y  N N N	 N N N	N N N  N N N

RW|Y Y Y  N N N	 N N N	N N N  N N N

 - - - - -|

 Deny	R |C C C  N N N	 N N N	N N N  N N N

 All	W |C C C  N N N	 N N N	N N N  N N N

RW|C C C  N N N	 N N N	N N N  N N N

 - - - - -|

 Deny	R |2 C C  N N N	 Y N N	N N N  Y N N

 Write	W |C C C  N N N	 N N N	Y N N  Y N N

RW|C C C  N N N	 N N N	N N N  Y N N

 - - - - -|

 Deny	R |C C C  N N N	 N Y N	N N N  N Y N

 Read	W |C C C  N N N	 N N N	N Y N  N Y N

RW|C C C  N N N	 N N N	N N N  N Y N

 - - - - -|

 Deny	R |2 C C  N N N	 Y Y Y	N N N  Y Y Y

 None	W |C C C  N N N	 N N N	Y Y Y  Y Y Y

RW|C C C  N N N	 N N N	N N N  Y Y Y

Legend: Y = open succeeds, N = open fails with error code 05h

C = open fails, INT 24 generated

1 = open succeeds if file read-only, else fails with error code

2 = open succeeds if file read-only, else fails with INT 24

SeeAlso: #0848

INT 21 3D--


21 3F-- Values for status of Turbo Debugger command:

Copy to Main

Table 0629

Values for status of Turbo Debugger command:

 00h	successful

 01h	invalid handle

 02h	no more breakpoints available

 03h	hardware does not support specified breakpoint type

 04h	previous command prevents execution

 05h	debugger hardware not found

 06h	hardware failure

 07h	invalid command

 08h	driver not initialized yet

 FEh	recursive entry (hardware breakpoint inside hw bp handler)

INT 21 3F--


21 3F-- Format of Turbo Debugger status block:

Copy to Main

Table 0630

Format of Turbo Debugger status block:

Offset	Size	Description

 00h	BYTE	status of command (see #0629)

---status for command 01h---

 01h	WORD	device driver interface version number (currently 1)

 03h	WORD	device driver software version

 05h	BYTE	maximum simultaneous hardware breakpoints

 06h	BYTE	configuration bits (see #0631)

 07h	BYTE	supported breakpoint types (see #0632)

 08h	WORD	supported addressing match modes (see #0633)

 0Ah	WORD	supported data matches (see #0634)

 0Ch	BYTE	maximum data match length (01h, 02h, or 04h)

 0Dh	WORD	size of onboard memory (in KB)

 0Fh	WORD	maximum number of trace-back events

 11h	WORD	hardware breakpoint enable byte address segment (0000h if not

  supported)

---status for command 04h---

 01h	BYTE	handle to use when referring to the just-set breakpoint

INT 21 3F--


21 3F-- Bitfields for Turbo Debugger configuration bits:

Copy to Main

Table 0631

Bitfields for Turbo Debugger configuration bits:

Bit(s)	Description

 0	CPU and DMA accesses are distinct

 1	can detect DMA transfers

 2	supports data mask

 3	hardware pass counter on breakpoints

 4	can match on data as well as addresses

INT 21 3F--


21 3F-- Bitfields for Turbo Debugger supported breakpoint types:

Copy to Main

Table 0632

Bitfields for Turbo Debugger supported breakpoint types:

Bit(s)	Description

 0	memory read

 1	memory write

 2	memory read/write

 3	I/O read

 4	I/O write

 5	I/O read/write

 6	instruction fetch

INT 21 3F--


21 3F-- Bitfields for Turbo Debugger supported addressing match modes:

Copy to Main

Table 0633

Bitfields for Turbo Debugger supported addressing match modes:

Bit(s)	Description

 0	any address

 1	equal to test value

 2	not equal

 3	above test value

 4	below test value

 5	below or equal

 6	above or equal

 7	within range

 8	outside range

INT 21 3F--


21 3F-- Bitfields for Turbo Debugger supported data matches:

Copy to Main

Table 0634

Bitfields for Turbo Debugger supported data matches:

Bit(s)	Description

 0	any data

 1	equal to test value

 2	not equal

 3	above test value

 4	below test value

 5	below or equal

 6	above or equal

 7	within range

 8	outside range

INT 21 3F--


21 3F-- Format of PC/TCP configuration data:

Copy to Main

Table 0635

Format of PC/TCP configuration data:

Offset	Size	Description

 00h 12 BYTEs	IPCUST.SYS device driver header

 12h	BYTE	???

 13h	BYTE	???

 14h	WORD	???

 16h	BYTE	bit flags

bit 0: send BS rather than DEL for BackSpace key

bit 1: wrap long lines

 17h	BYTE	???

 18h 64 BYTEs	ASCIZ hostname

 58h 64 BYTEs	ASCIZ domain name

(fully qualified domain name is hostname.domain-name)

 98h 16 BYTEs	ASCIZ username

 A8h 64 BYTEs	ASCIZ full name

 E8h 64 BYTEs	ASCIZ office address

128h 32 BYTEs	ASCIZ phone number

148h	WORD	offset from GMT in minutes

14Ah  4 BYTEs	ASCIZ timezone name

14Eh	WORD	number of time servers

150h  ? DWORDs	(big-endian) IP addresses for time servers

???

164h	WORD	number of old-style name servers

166h  3 DWORDs	(big-endian) IP addresses for name servers

172h	WORD	number of domain name servers

174h  3 DWORDs	(big-endian) IP addresses for domain name servers

180h	DWORD	(big-endian) IP address of default gateway

184h	DWORD	(big-endian) IP address of log server

188h	DWORD	(big-endian) IP address of cookie server

18Ch	DWORD	(big-endian) IP address of lpr server

190h	DWORD	(big-endian) IP address of imagen print server

194h 54 BYTEs	???

1E8h	WORD	TCP default window size in bytes

1EAh	WORD	TCP low window size

1ECh 64 BYTEs	ASCIZ host tabel filename

22Ch  2 BYTEs	???

22Eh 80 BYTEs	ASCIZ mail relay host name

27Eh	BYTE	???

27Fh	BYTE	??? bit flags

280h 44 BYTEs	???

2ACh	WORD	???

2AEh 202 BYTEs	???

INT 21 3F--


21 3F-- Format of BW-TCP driver info:

Copy to Main

Table 0636

Format of BW-TCP driver info:

Offset	Size	Description

 00h	WORD	I/O base address

 02h	BYTE	shared memory page (01h = segment 0100h, etc.)

 03h	BYTE	interrupt vector for private API

 04h	BYTE	IRQ used by board

 05h	WORD	size of data buffer

 07h	WORD	maximum transfer window

 09h	WORD	time zone

 0Bh	BYTE	address type (01h user, 04h RARP, 05h BOOTP)

 0Ch	DWORD	internet address

 10h	WORD	"value" ???

 12h	BYTE	subnet mask

 13h	WORD	"ether_pointer" ???

 15h	WORD	offset in device driver of log server records (see #0637)

 17h	WORD	offset in device driver of name server records (see #0637)

 19h	WORD	offset in device driver of print server records (see #0637)

 1Bh	WORD	offset in device driver of time server records (see #0637)

 1Dh	WORD	offset in device driver of gateway records (see #0637)

 1Fh	WORD	segment address of device driver

 21h	BYTE	transfer size

 22h  9 BYTEs	network adapter board name

---11/21/91+ ---

 23h	BYTE	ETHDEV version (major in high nybble, minor in low nybble)

 24h	BYTE	ETHDEV revision

 25h	BYTE	TCPIP version (major in high nybble, minor in low nybble)

 26h	BYTE	TCPIP revision

 27h	BYTE	BWRPC version (major in high nybble, minor in low nybble)

 28h	BYTE	BWRPC revision

 29h	BYTE	BWNFS version (major in high nybble, minor in low nybble)

 2Ah	BYTE	BWNFS revision

 2Bh	BYTE	Telnet version (major in high nybble, minor in low nybble)

 2Ch	BYTE	Telnet revision

 2Dh	BYTE	NETBIOS version (major in high nybble, minor in low nybble)

 2Eh	BYTE	NETBIOS revision

Note:	for each driver, if version=0, the driver is not installed or does

  not support the version check

INT 21 3F--


21 3F-- Format of BW-TCP server records:

Copy to Main

Table 0637

Format of BW-TCP server records:

Offset	Size	Description

 00h	BYTE	number of server records following

 01h  N DWORDs	internet addresses of servers

INT 21 3F--


21 3F-- Format of Trusted Access state record:

Copy to Main

Table 0638

Format of Trusted Access state record:

Offset	Size	Description

 00h	BYTE	00h off, 01h on

 01h	BYTE	keys being disabled

bit 0: Ctrl-Break

bit 1: SysReq

bit 2: Ctrl and Alt

bit 3: Ctrl-Alt-Del

bit 7: all keys (overrides other bits)

INT 21 3F--


21 3F-- Format of IFSHLP.SYS entry point record:

Copy to Main

Table 0639

Format of IFSHLP.SYS entry point record:

Offset	Size	Description

 00h  4 BYTEs	(call) signature 70h E9h 34h 37h

signature must be 34h 37h 70h EFh if called via IOCTL

 04h	DWORD	(ret) pointer to FAR call entry point (see #0640)

INT 21 3F--


21 3F-- Call IFSHLP.SYS entry point with:

Copy to Main

Table 0640

Call IFSHLP.SYS entry point with:

STACK:	WORD	function number (00h-0Ch)

00h ???

01h set ??? intercept

02h remove ??? intercept

03h ??? LPT2

04h ??? LPT1

05h ??? and remove ??? intercept

06h set ??? flag

07h clear ??? flag

08h get ??? flag word

09h ???

0Ah ???

0Bh ???

0Ch get ???

---if function 00h---

Return: AX = ??? (0024h seen)

DX = resident code segment

---if function 01h---

STACK:	DWORD	new intercept address

Return: AX = status

    0000h successful

    0001h failed (already set)

DX = 0000h

---if function 02h---

Return: AX = status

    0000h successful

    0001h failed (not set)

DX = 0000h

---if function 03h,04h---

STACK:	WORD	???

Return: AX = 0000h

DX = 0000h

---if function 05h---

???

---if function 06h---

Return: AX = 0001h and DX = 0000h if already set

AX,DX unchanged if successful

---if function 07h---

Return: AX = 0001h and DX = 0000h if not set

AX,DX unchanged if successful

---if function 08h---

Return: DX = 0000h

AX = flags (bit 0 set/cleared by functions 06h and 07h)

---if function 09h---

Return: AX = status

    0000h successful

    0001h failed (already called)

---if function 0Ah---

STACK:	WORD	???

???

---if function 0Bh---

Return: AX = status

    0000h successful

    0001h failed (not set)

---if function 0Ch---

Return: AX = 0000h

ES:BX -> ??? data

---if function > 0Ch---

Return:	AX = 0001h

DX = 0000h

INT 21 3F--


21 40-- Format of Turbo Debugger hardware breakpoint commands:

Copy to Main

Table 0641

Format of Turbo Debugger hardware breakpoint commands:

Offset	Size	Description

 00h	BYTE	command code

00h install interrupt vectors

01h get hardware capabilities

02h enable hardware breakpoints

03h disable hardware breakpoints

04h set hardware breakpoint

05h clear hardware breakpoint

06h set I/O base address and reset hardware

07h restore interrupt vectors

---command code 00h---

 01h	DWORD	pointer to Turbo Debugger entry point to be jumped to on

  hardware breakpoint; call with CPU state the same as on

  the breakpoint except for pushing AX and placing an entry

  code (FFh if breakout button or breakpoint handle) in AH

---command code 04h---

 01h	BYTE	breakpoint type

00h memory read

01h memory write

02h memory read/write

03h I/O read

04h I/O write

05h I/O read/write

06h instruction fetch

 02h	BYTE	address matching mode (see #0642)

 03h	DWORD	32-bit linear low address

 07h	DWORD	32-bit linear high address

 0Bh	WORD	pass count

 0Dh	BYTE	data size (01h, 02h, or 04h)

 0Eh	BYTE	source of matched bus cycle (01h CPU, 02h DMA, 03h either)

 0Fh	BYTE	data-matching mode (see #0642)

 10h	DWORD	low data value

 14h	DWORD	high data value

 18h	DWORD	data mask specifying which bits of the data are tested

---command code 05h---

 01h	BYTE	handle of breakpoint to clear (breakpoint returned from command

  04h)

---command code 06h---

 01h	WORD	base address of hardware debugger board

INT 21 40--


21 40-- Values for Turbo Debugger address/data matching mode:

Copy to Main

Table 0642

Values for Turbo Debugger address/data matching mode:

 00h	match any

 01h	equal to test value

 02h	different from test value

 03h	above test value

 04h	below test value

 05h	below or equal to test value

 06h	above or equal to test value

 07h	within inclusive range

 08h	outside specified range

INT 21 40--


21 4301 Bitfields for file attributes:

Copy to Main

Table 0643

Bitfields for file attributes:

Bit(s)	Description

 7	shareable (Novell NetWare)

 6	unused

 5	archive

 4	directory

 3	volume label

execute-only (Novell NetWare)

 2	system

 1	hidden

 0	read-only

INT 21 4301


21 4302 Bitfields for DR-DOS file access rights:

Copy to Main

Table 0644

Bitfields for DR-DOS file access rights:

Bit(s)	Description

 0	owner delete requires password

 1	owner execution requires password (FlexOS)

 2	owner write requires password

 3	owner read requires password

 4	group delete requires password

 5	group execution requires password (FlexOS)

 6	group write requires password

 7	group read requires password

 8	world delete requires password

 9	world execution requires password (FlexOS)

 10	world write requires password

 11	world read requires password

INT 21 4302


21 4311 Bitfields for VINES extended file attributes:

Copy to Main

Table 0645

Bitfields for VINES extended file attributes:

Bit(s)	Description

 7	unused

 6	shareable

 5	execute-only

 4-0	unused

INT 21 4311


21 4400 Bitfields for device information word:

Copy to Main

Table 0646

Bitfields for device information word:

Bit(s)	Description

 character device

  14	device driver can process IOCTL requests (see AX=4402h)

  13	output until busy supported

  11	driver supports OPEN/CLOSE calls

   7	set (indicates device)

   6	EOF on input

   5	raw (binary) mode

   4	device is special (uses INT 29)

   3	clock device

   2	NUL device

   1	standard output

   0	standard input

 disk file

  15	file is remote (DOS 3.0+)

  14	don't set file date/time on closing (DOS 3.0+)

  11	media not removable

   8	(DOS 4 only) generate INT 24 if no disk space on write or read past

  end of file

   7	clear (indicates file)

   6	file has not been written

  5-0	drive number (0 = A:)

INT 21 4400


21 4402 Format of NDIS request block for GetProtocolManagerInfo:

Copy to Main

Table 0647

Format of NDIS request block for GetProtocolManagerInfo:

Offset	Size	Description

 00h	WORD	01h

 02h	WORD	returned status (see #0657)

 04h	DWORD	returned pointer to structure representing parsed user config

 08h	DWORD	unused

 0Ch	WORD	returned BCD version of NDIS on which Protocol Manager is based

SeeAlso: #0648,#0649,#0650,

#0651,#0652,#0653,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for RegisterModule:

Copy to Main

Table 0648

Format of NDIS request block for RegisterModule:

Offset	Size	Description

 00h	WORD	02h

 02h	WORD	returned status (see #0657)

 04h	DWORD	pointer to module's common characteristics table (see #0658)

 08h	DWORD	pointer to list of modules to which the module is to be bound

 0Ch	WORD	unused

SeeAlso: #0647,#0649,#0650,

#0651,#0652,#0653,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for BindAndStart:

Copy to Main

Table 0649

Format of NDIS request block for BindAndStart:

Offset	Size	Description

 00h	WORD	03h

 02h	WORD	returned status (see #0657)

 04h	DWORD	caller's virtual address in FailingModules structure

 08h	DWORD	unused

 0Ch	WORD	unused

SeeAlso: #0647,#0648,#0650,

#0651,#0652,#0653,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for GetProtocolManagerLinkage:

Copy to Main

Table 0650

Format of NDIS request block for GetProtocolManagerLinkage:

Offset	Size	Description

 00h	WORD	04h

 02h	WORD	returned status (see #0657)

 04h	DWORD	returned dispatch point

 08h	DWORD	unused

 0Ch	WORD	returned protocol manager DS

Note:	the dispatch point may be called as follows instead of using this IOCTL

STACK: WORD  protocol manager DS

       DWORD pointer to request block

Return: AX = returned status

STACK popped

SeeAlso: #0647,#0648,#0649,

#0651,#0652,#0653,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for GetProtocolIniPath:

Copy to Main

Table 0651

Format of NDIS request block for GetProtocolIniPath:

Offset	Size	Description

 00h	WORD	05h

 02h	WORD	returned status (see #0657)

 04h	DWORD	pointer to a buffer for the ASCIZ pathname of PROTOCOL.INI

 08h	DWORD	unused

 0Ch	WORD	buffer length

SeeAlso: #0647,#0648,#0649,

#0650,#0652,#0653,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for RegisterProtocolManagerInfo:

Copy to Main

Table 0652

Format of NDIS request block for RegisterProtocolManagerInfo:

Offset	Size	Description

 00h	WORD	06h

 02h	WORD	returned status (see #0657)

 04h	DWORD	pointer to structure containing parsed user config file

 08h	DWORD	unused

 0Ch	WORD	length of structure

SeeAlso: #0647,#0648,#0649,

#0650,#0651,#0653,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for InitAndRegister:

Copy to Main

Table 0653

Format of NDIS request block for InitAndRegister:

Offset	Size	Description

 00h	WORD	07h

 02h	WORD	returned status (see #0657)

 04h	DWORD	unused

 08h	DWORD	poitner to ASCIZ name of the module to be prebind initialized

 0Ch	WORD	unused

SeeAlso: #0647,#0648,#0649,

#0650,#0651,#0652,#0654,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for UnbindAndStop:

Copy to Main

Table 0654

Format of NDIS request block for UnbindAndStop:

Offset	Size	Description

 00h	WORD	08h

 02h	WORD	returned status (see #0657)

 04h	DWORD	failing modules as for BindAndStart

 08h	DWORD	if not 0000h:0000h, pointer to ASCIZ name of module to unbind

if 0000h:0000h, terminate a set of previously dynamically

  bound protocol modules

 0Ch	WORD	unused

SeeAlso: #0647,#0648,#0649,

#0650,#0651,#0652,#0653,#0655,#0656

INT 21 4402


21 4402 Format of NDIS request block for BindStatus:

Copy to Main

Table 0655

Format of NDIS request block for BindStatus:

Offset	Size	Description

 00h	WORD	09h

 02h	WORD	returned status (see #0657)

 04h	DWORD	must be 0000h:0000h

on return, points to root tree

 08h	DWORD	0000h:0000h

 0Ch	WORD	unused under DOS

SeeAlso: #0647,#0648,#0649,

#0650,#0651,#0652,#0653,#0654,#0656

INT 21 4402


21 4402 Format of NDIS request block for RegisterStatus:

Copy to Main

Table 0656

Format of NDIS request block for RegisterStatus:

Offset	Size	Description

 00h	WORD	0Ah

 02h	WORD	returned status (0000h, 0008h, 002Ch) (see #0657)

 04h	DWORD	0000h:0000h

 08h	DWORD	pointer to 16-byte ASCIZ module name

 0Ch	WORD	0000h

Note:	not supported by the 10NET v5.0 PROTMAN$ driver

SeeAlso: #0647,#0648,#0649,

#0650,#0651,#0652,#0653,#0654,#0655

INT 21 4402


21 4402 Values for NDIS status code:

Copy to Main

Table 0657

Values for NDIS status code:

 0000h	success

 0001h	wait for release--protocol has retained control of the data buffer

 0002h	request queued

 0003h	frame not recognized

 0004h	frame rejected

 0005h	frame should be forwarded

 0006h	out of resource

 0007h	invalid parameter

 0008h	invalid function

 0009h	not supported

 000Ah	hardware error

 000Bh	transmit error

 000Ch	unrecognized destination

 000Dh	buffer too small

 0020h	already started

 0021h	binding incomplete

 0022h	driver not initialized

 0023h	hardware not found

 0024h	hardware failure

 0025h	configuration failure

 0026h	interrupt conflict

 0027h	MAC incompatible

 0028h	initialization failed

 0029h	no binding

 002Ah	network may be disconnected

 002Bh	incompatible OS version

 002Ch	already registered

 002Dh	path not found

 002Eh	insufficient memory

 002Fh	info not found

 00FFh	general failure

 F000h-FFFFh reserved for vendor-specific codes, treated as general failure

INT 21 4402


21 4402 Format of NDIS common characteristics table:

Copy to Main

Table 0658

Format of NDIS common characteristics table:

Offset	Size	Description

 00h	WORD	size of table in bytes

 02h	BYTE	NDIS major version

 03h	BYTE	NDIS minor version

 04h	WORD	reserved

 06h	BYTE	module major version

 07h	BYTE	module minor version

 08h	DWORD	module function flag bits

bit 0: binding at upper boundary supported

bit 1: binding at lower boundary supported

bit 2: dynamically bound

bits 3-31 reserved, must be 0

 0Ch 16 BYTEs	ASCIZ module name

 1Ch	BYTE	upper boundary protocol level (see #0659)

 1Dh	BYTE	upper boundary interface type

for MACs: 1 = MAC

for data links and transports: to be defined

for session: 1 = NCB

any level: 0 = private (ISV-defined)

 1Eh	BYTE	lower boundary protocol level (see #0659)

 1Fh	BYTE	lower boundary interface type

same as offset 1Dh

 20h	WORD	module ID filled in by protocol manager

 22h	WORD	module DS

 24h	DWORD	system request entry point

 28h	DWORD	pointer to service-specific characteristics (see #0661,#0663)

0000h:0000h if none

 2Ch	DWORD	pointer to service-specific status, or 0000h:0000h if none

  (see #0664)

 30h	DWORD	pointer to upper dispatch table (see #0660)

0000h:0000h if none

 34h	DWORD	pointer to lower dispatch table (see #0660)

0000h:0000h if none

 38h  2 DWORDs	reserved, must be 0

Note:	for compatibility with NDIS 1.x.x, a major version of 00h is

  interpreted as 01h

INT 21 4402


21 4402 Values for NDIS boundary protocol level:

Copy to Main

Table 0659

Values for NDIS boundary protocol level:

 00h	physical

 01h	Media Access Control

 02h	Data link

 03h	network

 04h	transport

 05h	session

 FFh	not specified

INT 21 4402


21 4402 Format of NDIS dispatch table:

Copy to Main

Table 0660

Format of NDIS dispatch table:

Offset	Size	Description

 00h	DWORD	-> common characteristics table (see #0658)

 04h  4 BYTEs	???

 08h	DWORD	-> ??? function (called with 12 bytes of stack arguments)

 0Ch	DWORD	-> ??? function (called with 10 bytes of stack arguments)

 10h	DWORD	-> ??? function (called with 16 bytes of stack arguments)

 14h	DWORD	-> ??? function (called with 4 bytes of stack arguments)

 18h	DWORD	-> ??? function (called with 18 bytes of stack arguments)

 1Ch	DWORD	-> ??? function (called with 12 bytes of stack arguments)

INT 21 4402


21 4402 Format of MAC Service-Specific Characteristics Table:

Copy to Main

Table 0661

Format of MAC Service-Specific Characteristics Table:

Offset	Size	Description

 00h	WORD	length of table in bytes

 02h 16 BYTEs	ASCIZ MAC type name, "802.3", "802.4", "802.5", "802.6", "DIX",

  "DIX+802.3", "APPLETALK", "ARCNET", "FDDI", "SDLC", "BSC",

  "HDLC", or "ISDN"

 12h	WORD	length of station addresses in bytes

 14h 16 BYTEs	permanent station address

 24h 16 BYTEs	current station address

 34h	DWORD	current functional adapter address (00000000h if none)

 38h	DWORD	pointer to multicast address list

 3Ch	DWORD	link speed in bits/sec

 40h	DWORD	service flags (see #0662)

 44h	WORD	maximum frame size which may be both sent and received

 46h	DWORD	total transmit buffer capacity in bytes

 4Ah	WORD	transmit buffer allocation block size in bytes

 4Ch	DWORD	total receive buffer capacity in bytes

 50h	WORD	receive buffer allocation block size in bytes

 52h  3 BYTEs	IEEE vendor code

 55h	BYTE	vendor adapter code

 56h	DWORD	pointer to ASCIZ vendor adapter description

 5Ah	WORD	IRQ used by adapter

 5Ch	WORD	transmit queue depth

 5Eh	WORD	maximum supported number of data blocks in buffer descriptors

 60h  N BYTEs	vendor-specific info

SeeAlso: #0663

INT 21 4402


21 4402 Bitfields for service flags:

Copy to Main

Table 0662

Bitfields for service flags:

Bit(s)	Description

 0	supports broadcast

 1	supports multicast

 2	supports functional/group addressing

 3	supports promiscuous mode

 4	station address software settable

 5	statistics always current

 6	supports InitiateDiagnostics

 7	supports loopback

 8	MAC does primarily ReceiveChain indications instead of ReceiveLookahead

indications

 9	supports IBM source routing

 10	supports MAC reset

 11	supports Open/Close adapter

 12	supports interrupt request

 13	supports source routing bridge

 14	supports GDT virtual addresses (OS/2 version)

 15	multiple TransferDatas allowed durign a single indication

 16	MAC normally sets FrameSize = 0 in ReceiveLookahead

 17-31	reserved, must be 0

INT 21 4402


21 4402 Format of NetBIOS Service-Specific Characteristics Table:

Copy to Main

Table 0663

Format of NetBIOS Service-Specific Characteristics Table:

Offset	Size	Description

 00h	WORD	length of table in bytes

 02h 16 BYTEs	ASCIZ type name of NetBIOS module

 12h	WORD	NetBIOS module code

 14h  N BYTEs	vendor-specific info

SeeAlso: #0661

INT 21 4402


21 4402 Format of MAC Service-Specific Status Table:

Copy to Main

Table 0664

Format of MAC Service-Specific Status Table:

Offset	Size	Description

 00h	WORD	length of table in bytes

 02h	DWORD	seconds since 0:00 1/1/70 when diagnostics last run

(FFFFFFFFh = never)

 06h	DWORD	MAC status bits (see #0665)

 0Ah	WORD	current packet filter flags (see #0666)

 0Ch	DWORD	pointer to media-specific status table or 0000h:0000h

 10h	DWORD	seconds past 0:00 1/1/70 of last ClearStatistics

 14h	DWORD	total frames received (FFFFFFFFh = not counted)

 18h	DWORD	frames with CRC error (FFFFFFFFh = not counted)

 1Ch	DWORD	total bytes received (FFFFFFFFh = not counted)

 20h	DWORD	frames discarded--no buffer space (FFFFFFFFh = not counted)

 24h	DWORD	multicast frames received (FFFFFFFFh = not counted)

 28h	DWORD	broadcast frames received (FFFFFFFFh = not counted)

 2Ch	DWORD	frames with errors (FFFFFFFFh = not counted)

 30h	DWORD	overly large frames (FFFFFFFFh = not counted)

 34h	DWORD	frames less than minimum size (FFFFFFFFh = not counted)

 38h	DWORD	multicast bytes received (FFFFFFFFh = not counted)

 3Ch	DWORD	broadcast bytes received (FFFFFFFFh = not counted)

 40h	DWORD	frames discarded--hardware error (FFFFFFFFh = not counted)

 44h	DWORD	total frames transmitted (FFFFFFFFh = not counted)

 48h	DWORD	total bytes transmitted (FFFFFFFFh = not counted)

 4Ch	DWORD	multicast frames transmitted (FFFFFFFFh = not counted)

 50h	DWORD	broadcast frames transmitted (FFFFFFFFh = not counted)

 54h	DWORD	broadcast bytes transmitted (FFFFFFFFh = not counted)

 58h	DWORD	multicast bytes transmitted (FFFFFFFFh = not counted)

 5Ch	DWORD	frames not transmitted--timeout (FFFFFFFFh = not counted)

 60h	DWORD	frames not transmitted--hardware error (FFFFFFFFh = not countd)

 64h  N BYTEs	vendor-specific info

INT 21 4402


21 4402 Bitfields for MAC status bits:

Copy to Main

Table 0665

Bitfields for MAC status bits:

Bit(s)	Description

 0-2	operational status

000 hardware not installed

001 hardware failed startup diagnostics

010 hardware configuration problem

011 hardware fault

100 operating marginally due to soft faults

101 reserved

110 reserved

111 hardware fully operational

 3	MAC bound

 4	MAC open

 5	diagnostics in progress

 6-31	reserved

INT 21 4402


21 4402 Bitfields for packet filter flags:

Copy to Main

Table 0666

Bitfields for packet filter flags:

Bit(s)	Description

 0	directed/multicast or group/functional

 1	broadcast

 2	promiscuous

 3	all source routing

 4-15	reserved, must be zero

INT 21 4402


21 4402 Format of System 36/38 emulator returned data:

Copy to Main

Table 0667

Format of System 36/38 emulator returned data:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	DWORD	pointer to ???

 08h  4 BYTEs	???

INT 21 4402


21 4402 Call HIGHUMM.SYS entry point with:

Copy to Main

Table 0668

Call HIGHUMM.SYS entry point with:

AH = 00h allocate UMB (same as XMS function 10h) (see INT 2F/AX=4310h)

    DX = size in paragraphs

    Return: BX = segment number (if successful)

    DX = size of requested block/size of largest block

AH = 01h deallocate UMB (same as XMS func 11h) (see INT 2F/AX=4310h)

    DX = segment number of UMB

AH = 02h request a bank-switched memory block

    DX = size in paragraphs

    Return: BX = segment number (if successful)

    DX = size of requested block/size of largest block

AH = 03h release a bank-switched memory block

    DX = segment number

AH = 04h transfer data to/from high memory

    DS:SI -> source

    ES:DI -> destination

    CX = length in bytes

    Note: enables bank-switched memory, does the copy, then disables

bank-switched memory

AH = 05h get a word from bank-switched memory

    ES:DI -> word to read

    Return: DX = word

AH = 06h put a word to bank-switched memory

    ES:DI -> word to write

    DX = word

AH = 07h put a byte to bank-switched memory

    ES:DI -> byte to write

    DL = byte

AH = 08h enable bank-switched memory

    DS:SI -> 6-byte status save area

AH = 09h disable bank-switched memory

    DS:SI -> 6-byte save area from enable call (AH=08h)

AH = 0Ah assign name to UMB or high bank-switched block

    DX = segment number

    DS:SI -> 8-byte blank-padded name

AH = 0Bh locate UMB block by name

    DS:SI -> 8-byte blank-padded name

    Return: BX = segment number (if successful)

    DX = size of block

AH = 0Ch locate bank-switched block by name

    DS:SI -> 8-byte blank-padded name

    Return: BX = segment number (if successful)

    DX = size of block

Return: AX = status code

    0001h successful

    0000h failed

BL = error code

    80h not implemented

    B0h insufficient memory, smaller block available

    B1h insufficient memory, no blocks available

    B2h invalid segment number

Note:	only functions 00h and 01h are always available; the remaining

  functions are only enabled if the proper commandline switch is given

INT 21 4402


21 4402 Format of SMARTDRV status record:

Copy to Main

Table 0669

Format of SMARTDRV status record:

Offset	Size	Description

 00h	BYTE	write-through flag (always 01h)

 01h	BYTE	writes should be buffered (always 00h)

 02h	BYTE	cache enabled if 01h

 03h	BYTE	driver type (01h extended memory, 02h expanded)

 04h	WORD	clock ticks between cache flushes (currently unused)

 06h	BYTE	cache contains locked tracks if nonzero

 07h	BYTE	flush cache on INT 19 reboot if nonzero

 08h	BYTE	cache full track writes if nonzero

 09h	BYTE	double buffering (for VDS) state (00h off, 01h on, 02h dynamic)

 0Ah	DWORD	original INT 13 vector

 0Eh	BYTE	minor version number

 0Fh	BYTE	major version number

 10h	WORD	unused

 12h	WORD	sectors read	\

 14h	WORD	sectors already in cache	 > may be scaled rather than

 16h	WORD	sectors already in track buffer /  absolute counts

 18h	BYTE	cache hit rate in percent

 19h	BYTE	track buffer hit rate in percent

 1Ah	WORD	total tracks in cache

 1Ch	WORD	number of tracks in use

 1Eh	WORD	number of locked tracks

 20h	WORD	number of dirty tracks

 22h	WORD	current cache size in 16K pages

 24h	WORD	original (maximum) cache size in 16K pages

 26h	WORD	minimum cache size in 16K pages

 28h	DWORD	pointer to byte flag to increment for locking cache contents

INT 21 4402


21 4402 Values for CD-ROM data being requested:

Copy to Main

Table 0670

Values for CD-ROM data being requested:

 00h	device driver header address

 01h	drive head location

 02h	reserved

 03h	error statistics

 04h	audio channel info

 05h	raw drive bytes (uninterpreted and device-specific)

 06h	device status

 07h	sector size

 08h	volume size

 09h	media change status

 0Ah	audio disk info

 0Bh	audio track info

 0Ch	audio Q-Channel info

 0Dh	audio sub-channel info

 0Eh	UPC code

 0Fh	audio status info

INT 21 4402


21 4402 Format of CD-ROM control block:

Copy to Main

Table 0671

Format of CD-ROM control block:

Offset	Size	Description

 00h	BYTE	data being requested (see #0670)

---function 00h---

 01h	DWORD	device driver header address (see also AH=52h)

---function 01h---

 01h	BYTE	addressing mode

00h HSG

01h Red Book

 02h	DWORD	current location of drive's head

logical sector number in HSG mode

frame/second/minute/unused in Red Book mode

(HSG sector = minute * 4500 + second * 75 + frame - 150)

---function 03h---

 01h  N BYTEs	undefined as of 5 Aug 88 specification

---function 04h---

 01h	BYTE	input channel (0-3) for output channel 0

 02h	BYTE	volume for output channel 0

 03h	BYTE	input channel (0-3) for output channel 1

 04h	BYTE	volume for output channel 1

 05h	BYTE	input channel (0-3) for output channel 2

 06h	BYTE	volume for output channel 2

 07h	BYTE	input channel (0-3) for output channel 3

 08h	BYTE	volume for output channel 3

Notes:	output channels 0 and 1 are left and right, 2 and 3 are left prime and

  right prime; a volume of 00h is off

the default setting is for each input channel to be assigned to the

  same-numbered output channel at full (FFh) volume

---function 05h---

 01h	BYTE	number of bytes read

 02h 128 BYTEs	buffer for drive bytes

---function 06h---

 01h	DWORD	device parameters (see #0672)

---function 07h---

 01h	BYTE	read mode

00h cooked

01h raw

 02h	WORD	sector size in bytes

---function 08h---

 01h	DWORD	volume size in sectors

---function 09h---

 01h	BYTE	media change status

00h don't know

01h media unchanged

FFh media has been changed

---function 0Ah---

 01h	BYTE	lowest audio track number

 02h	BYTE	highest audio track number

 03h	DWORD	start address of lead-out track (Red Book format)

--function 0Bh---

 01h	BYTE	track number (set by caller)

 02h	DWORD	starting point of track (Red Book format)

 06h	BYTE	track control info

bits 15,14,12: track type (notice: bits not contiguous!)

000 two audio channels, no pre-emphasis

001 two audio channels with pre-emphasis

010 data track

100 four audio channels, no pre-emphasis

101 four audio channels with pre-emphasis

other reserved

bit 13: digital copy permitted

---function 0Ch---

 01h	BYTE	CONTROL and ADR byte (as received from drive)

 02h	BYTE	track number

 03h	BYTE	point or index

 04h	BYTE	minute	\

 05h	BYTE	second	 > running time within track

 06h	BYTE	frame	/

 07h	BYTE	zero

 08h	BYTE	"AMIN" or "PMIN"     \

 09h	BYTE	"ASEC" or "PSEC"      > running time on disk

 0Ah	BYTE	"AFRAME" or "PFRAME" /

---function 0Dh---

 01h	DWORD	starting frame address (Red Book format)

 05h	DWORD	transfer address

 09h	DWORD	number of sectors to read

Note:	copies 96 bytes of sub-channel info per sector into buffer

---function 0Eh---

 01h	BYTE	CONTROL and ADR byte

 02h  7 BYTEs	UPC/EAN code (13 BCD digits,low-order nybble of last byte is 0)

 09h	BYTE	zero

 0Ah	BYTE	"AFRAME"

---function 0Fh---

 ??? documentation not yet available

 01h	WORD	pause status (0000h not paused, 0001h paused)

 03h	DWORD	audio play start address

 07h	DWORD	??? audio play length or end address

INT 21 4402


21 4402 Bitfields for CD-ROM device parameters:

Copy to Main

Table 0672

Bitfields for CD-ROM device parameters:

Bit(s)	Description

 0	door open

 1	door unlocked

 2	supports raw reading in addition to cooked

 3	writable

 4	can play audio/video tracks

 5	supports interleaving

 6	reserved

 7	supports prefetch requests

 8	supports audio channel control

 9	supports Red Book addressing in addition to HSG

 10	audio is playing

 11	no disk in drive

 12	supports R-W subchannels

INT 21 4402


21 4402 Format of HOOKROM.SYS hooked vector table entry:

Copy to Main

Table 0673

Format of HOOKROM.SYS hooked vector table entry:

Offset	Size	Description

 00h  5 BYTEs	FAR jump to actual interrupt handler

(end of table if first byte is not EAh)

 05h	BYTE	interrupt vector number

INT 21 4402


21 4402 Format of ASPI IOCTL result:

Copy to Main

Table 0674

Format of ASPI IOCTL result:

Offset	Size	Description

 00h	DWORD	function address

 04h	BYTE	number of SCSI host adapters supported by host manager

INT 21 4402


21 4402 Values for ASPI request number:

Copy to Main

Table 0675

Values for ASPI request number:

 00h	"HA_INQ"	host adapter inquiry

 01h	"GET_TYPE"	get device type

 02h	"EXEC_SIO"	execute SCSI I/O

 03h	"ABORT_SRB"	abort SRB

 04h	"RESET_DEV"	reset SCSI device

 05h	"SET_HAPRMS"	set host adapter parameters

 06h	get disk drive information

INT 21 4402


21 4402 Format of SCSI Request Block (64 bytes):

Copy to Main

Table 0676

Format of SCSI Request Block (64 bytes):

Offset	Size	Description

 00h	BYTE	request number (see #0675)

 01h	BYTE	request status (see #0677)

 02h	BYTE	host adapter ID

 03h	BYTE	request flags (see #0678)

 04h	DWORD	reserved

---request 00h---

 08h	BYTE	(ret) number of host adapters

 09h	BYTE	(ret) target adapter ID

 0Ah 16 BYTEs	(ret) SCSI manager ID

 1Ah 16 BYTEs	(ret) host adapter ID

 2Ah 16 BYTEs	(ret) host adapter-unique parameters

---request 01h---

 08h	BYTE	target ID

 09h	BYTE	logical unit number

 0Ah	BYTE	(ret) device type (see #0681)

---request 02h---

 08h	BYTE	target ID

 09h	BYTE	logical unit number

 0Ah	DWORD	data allocation length

 0Eh	BYTE	sense allocation length

 0Fh	DWORD	data buffer pointer

 13h	DWORD	next request pointer (for linking)

 17h	BYTE	CDB length

 18h	BYTE	(ret) host adapter status (see #0676)

 19h	BYTE	(ret) target status (see #0680)

 1Ah	DWORD	post routine address

 1Eh	WORD	real mode Post DS

 20h	DWORD	SRB pointer

 24h	WORD	reserved

 26h	DWORD	SRB physical address

 2Ah 22 BYTEs	SCSIMGR$ workspace

 40h  N BYTEs	CCB, including sense data (20-24 bytes)

---request 03h---

 08h	DWORD	address of SRB to abort

---request 04h---

 08h	BYTE	target ID

 09h	BYTE	logical unit number

 0Ah 14 BYTEs	reserved

 18h	BYTE	(ret) host adapter status (see #0679)

 19h	BYTE	(ret) target status (see #0680)

 1Ah	DWORD	post routine address

 1Eh 34 BYTEs	workspace

---request 05h---

 08h 16 BYTEs	host adapter-unique parameters

---request 06h---

 08h	BYTE	target ID

 09h	BYTE	logical unit number

 0Ah	BYTE	disk drive flags (see #0682)

 0Bh	BYTE	INT 13h drive number

 0Ch	BYTE	preferred head number translation

 0Dh	BYTE	preferred sector size translation

 0Eh 10 BYTEs	reserved

SeeAlso: #0683

INT 21 4402


21 4402 Values for ASPI request status:

Copy to Main

Table 0677

Values for ASPI request status:

 00h	not done yet

 01h	completed successfully

 02h	aborted by host

 04h	SCSI I/O error

 80h	invalid

 81h	no adapter

 82h	no device attached

 else	status

INT 21 4402


21 4402 Bitfields for ASPI request flags:

Copy to Main

Table 0678

Bitfields for ASPI request flags:

Bit(s)	Description

 0	posting enabled

 1	linking enabled

 2	direction

 3	transfer from SCSI target to host

 4	transfer from host to SCSI target

Note:	no data is transferred if both bits 3 and 4 are set

INT 21 4402


21 4402 Values for host adapter status:

Copy to Main

Table 0679

Values for host adapter status:

 00h	no error detected

 11h	select timeout

 12h	data overrun

 13h	bus error

 14h	bus failure

INT 21 4402


21 4402 Values for target status:

Copy to Main

Table 0680

Values for target status:

 00h	no status

 02h	sense data stored in SRB

 08h	target busy

 18h	reservation error

INT 21 4402


21 4402 Values for device type:

Copy to Main

Table 0681

Values for device type:

 00h	disk drive

 01h	tape drive (streamer)

 02h	printer

 03h	processor

 04h	WORM drive

 05h	CD-ROM drive

 06h	scanner

 07h	optical drive

 08h	autochanger

 09h	communications device

INT 21 4402


21 4402 Values for disk drive flags:

Copy to Main

Table 0682

Values for disk drive flags:

 00h	no INT 13 access

 01h	INT 13 with DOS access

 02h	INT 13 without DOS access

 03h	invalid flags

INT 21 4402


21 4402 Format of CCB:

Copy to Main

Table 0683

Format of CCB:

Offset	Size	Description

 00h	BYTE	command code (see #0684)

 01h	BYTE	flags

bits 4-0: vary by function

bits 7-5: logical unit number

 02h	BYTE	"adr_1"

 03h	BYTE	"adr_0"

 04h	BYTE	length

 05h	BYTE	control

...

 06h/0Ah 14 BYTEs buffer for sense data (see #0685)

SeeAlso: #0676

INT 21 4402


21 4402 Values for CCB command code:

Copy to Main

Table 0684

Values for CCB command code:

 00h	test unit ready

 01h	rewind

 03h	request sense data

 05h	get block size limits

 08h	Group 0 read

 0Ah	Group 0 write

 10h	write file marks

 11h	SCSI Space (set position?)

 12h	SCSI Inquire

 15h	set mode information

 16h	reserve SCSI device

 17h	release SCSI device

 19h	erase

 1Ah	request mode information

 1Bh	load/unload media

 1Dh	request target self-check

 24h	set window parameters

 25h	get window parameters

 28h	Group 1 read

 2Ah	Group 1 write

 31h	document feeder control

 34h	get scan data status

---vendor-specific commands---

 D3h	get document feeder status

 D4h	set document feeder mode

INT 21 4402


21 4402 Format of sense data:

Copy to Main

Table 0685

Format of sense data:

Offset	Size	Description

 00h	BYTE	error code (bit 7 set if valid)

 01h	BYTE	segment number

 02h	BYTE	sense key

bit 6: EOM

bit 5: ILI

bits 0-3: sense key (see #0686)

 03h  4 BYTEs	information bytes

 07h	BYTE	additional sense length (0Ah)

 08h  4 BYTEs	command-specific information

 0Ch	BYTE	additional sense code

 0Dh	BYTE	additional sense code qualifier

 0Eh	BYTE	field replaceable unit code

 0Fh  3 BYTEs	sense key specific bytes

INT 21 4402


21 4402 Values for sense key:

Copy to Main

Table 0686

Values for sense key:

 00h	no sense data

 02h	SCSI unit not ready

 03h	media error

 04h	unrecoverable hardware error

 05h	illegal parameter in CDB

 06h	target has been reset

 0Bh	target aborted command

INT 21 4402


21 4402 Format of 386MAX v6.01+ state:

Copy to Main

Table 0687

Format of 386MAX v6.01+ state:

Offset	Size	Description

 -1	BYTE	(call) 03h

 00h  6 BYTEs	signature "386MAX"

 06h  4 BYTEs	version string "N;NN" or "N.NN" (i.e. "6;01" for v6.01)

(';' by default; apparently changed to a period when 386MAX

has linked high RAM into DOS's memory chain)

 0Ah	WORD	segment of low-memory portion of 386MAX.SYS

 0Ch  2 BYTEs	???

 0Eh	WORD	segment of ??? memory block or 0000h

 10h	WORD	bit flags 1 (see #0688)

 12h	WORD	starting address of video memory in KB

 14h  2 BYTEs	???

 16h	WORD	total high DOS memory in KB

 18h  2 BYTEs	???

 1Ah	WORD	available shared memory in KB

 1Ch	WORD	KBytes extended memory used by 386MAX

 1Eh  2 BYTEs	???

 20h	WORD	total extended memory in KB

 22h	WORD	IO port to write (OUT DX,AL) to invoke 386MAX INT 15 functions

 24h	WORD	IO port to write (OUT DX,AL) to invoke 386MAX API functions

  (see #0701)

 26h	WORD	??? (depends on DOS version)

 28h	WORD	size of ??? in paragraphs

 2Ah	DWORD	machine type (see #0696)

 2Eh	DWORD	-> first DOS memory control block

 32h	WORD	system configuration flags (see #0689)

 34h	WORD	debugging flags 1 (see #0690)

 36h	WORD	debugging flags 2 (see #0691)

 38h  2 BYTEs	???

 3Ah	WORD	segment of first MCB in high memory chain

 3Ch	WORD	feature flags 1 (see #0693)

 3Eh	WORD	feature flags 2 (see #0694)

 40h	WORD	feature flags 3 (see #0695)

 42h	WORD	segment of first 386MAX control block??? (see #0697)

 44h	WORD	amount of memory to report available on INT 15/AH=88h

 46h  4 BYTEs	???

 4Ah	WORD	number of K at start of address space swapped with fast

  extended memory (SWAP= parameter)

 4Ch  2 BYTEs	???

 4Eh	WORD	segment address of ???

 50h	WORD	debugging flags 3 (see #0692)

 52h	DWORD	old INT 21h

 56h	DWORD	pointer to 386MAX's EMS (INT 67h) handler

---386MAX v7.00---

 5Ah	DWORD	KB of extended memory managed by 386MAX

 5Eh	DWORD	bytes of extended memory (EXT= parameter)

 62h  4 BYTEs	???

INT 21 4402


21 4402 Bitfields for 386MAX bit flags 1:

Copy to Main

Table 0688

Bitfields for 386MAX bit flags 1:

Bit(s)	Description

 1	???

 2	allow A20 to be enabled/disabled???

 3	??? (cleared by calling INT 67 functions or starting MSWindows)

 4	high RAM present???

 5	386MAX in AUTO mode

 6	386MAX enabled

 7	386MAX is providing EMS services

 8	??? (affects API function 08h)

 9	A20 gate closed (A20 disabled) (see INT 15/AX=2402h)

 10	Weitek support enabled

 11	???

 12	ROMs not shadowed???

 13	QPMS has been used

 14	???

 15	???

INT 21 4402


21 4402 Bitfields for 386MAX system configuration flags:

Copy to Main

Table 0689

Bitfields for 386MAX system configuration flags:

Bit(s)	Description

 1	ROM compressed???

 3	???

 5	386MAX loaded into high memory

 6	Microchannel bus

 7	Weitek math coprocessor detected

 9	??? (also generates INT 01 on ??? and INT 03 on ???)

 11	PC/XT (thus only single 8259 interrupt controller present, DMA only

in 1st megabyte, etc)

 13	LMLTOP= specified

 14	enable A20 control???

 15	???

INT 21 4402


21 4402 Bitfields for 386MAX debugging flags 1:

Copy to Main

Table 0690

Bitfields for 386MAX debugging flags 1:

Bit(s)	Description

 0	DEBUG=LED

 1	DEBUG=X67

 2	DEBUG=INV

 3	DEBUG=EMSPTED

 4	DEBUG=JMP

 5	DEBUG=CALL

 6	DEBUG=HLT

 7	DEBUG=PMR

 8	DEBUG=CR3

 9	DEBUG=CAPS or DEBUG=INT

 10	DEBUG=RC

 11	DEBUG=ROM

 12	DEBUG=XM

 13	DEBUG=SOR

 14	DEBUG=XR

 15	DEBUG=EMSERR (generate INT 01 on returning error from EMS call)

INT 21 4402


21 4402 Bitfields for 386MAX debugging flags 2:

Copy to Main

Table 0691

Bitfields for 386MAX debugging flags 2:

Bit(s)	Description

 0	DEBUG=ROMSWAP

 1	DEBUG=UNSHADOWROM

 2	DEBUG=COMPROM

 3	DEBUG=DPMIPHYS

 4	DEBUG=ALLROM

 5	DEBUG=VMS

 6	DEBUG=XMS (generate INT 01 on XMS calls)

 7	DEBUG=I06

 8	DEBUG=VCPI

 9	DEBUG=XDMA

 10	DEBUG=X09

 13	DEBUG=I67 (generate INT 01 on every INT 67 call)

 14	DEBUG=EVM (generate INT 01 on entering V86 mode)

 15	DEBUG=EMSSAVE or DEBUG=VDS

INT 21 4402


21 4402 Bitfields for 386MAX debugging flags 3:

Copy to Main

Table 0692

Bitfields for 386MAX debugging flags 3:

Bit(s)	Description

 10	DEBUG=EPM

 12	DEBUG=ABIOS

 13	DEBUG=XMSPTED

 14	DEBUG=TIME

 15	DEBUG=SCRUB

INT 21 4402


21 4402 Bitfields for 386MAX feature flags 1:

Copy to Main

Table 0693

Bitfields for 386MAX feature flags 1:

Bit(s)	Description

 1	Weitek present

 2	no DPMI services

 3	NODMA

 4	TERSE

 5	NOROM

 6	NOPARITY

 8	NOFLEX (IGNOREFLEXFRAME)

 11	don't create UMBs

 12	don't backfill below video memory (NOLOW)

 13	FRAME= specified

 14	EXT= specified

 15	NOEMS, allow prior expanded memory manager to provide EMS

INT 21 4402


21 4402 Bitfields for 386MAX feature flags 2:

Copy to Main

Table 0694

Bitfields for 386MAX feature flags 2:

Bit(s)	Description

 0	UNSHIFT specified (FORCEA20 disabled)

 1	NOXRAM

 2	NOSCSI specified

 3	SCREEN specified

 4	enabled EISADMA

 5	slow DMA

 6	RESETKEYB specified

 7	???

 9	TOP384

 10	???

 11	NOWARMBOOT

 12	USE= specified

 13	ROM= specified

INT 21 4402


21 4402 Bitfields for 386MAX feature flags 3:

Copy to Main

Table 0695

Bitfields for 386MAX feature flags 3:

Bit(s)	Description

 0	Windows3 support enabled

 1	SHADOWROM

 2	don't compress ROM (NOCOMPROM)

 3	??? (related to PRGREG=)

 4	??? (related to PRGREG=)

 5	SHADOWRAM

 6	DOS4 specified

 7	NOLOADHIGH

 8	NOPULSE

 11	FORCEA20

 12	DMA buffer enabled

 13	NOSCRUB

 15	NOFRAME

INT 21 4402


21 4402 Bitfields for 386MAX machine type:

Copy to Main

Table 0696

Bitfields for 386MAX machine type:

Bit(s)	Description

 12	Amstrad

 13	Epson

 14	Zenith Data Systems

 15	"ASEM"

 16	NEC

 17	"HPRS" model codes 69h and 6Ah

 18	Dell

 19	"CA"

 20	ITT (Xtra Business Systems/Alcatel)

 21	Toshiba 5100

 22	Olivetti

 23	Quadram Quad386 (BIOS model FEh, submodel A6h)

 24	Tandy???

 25	AST 386

 26	INBOARD, ??? version

 27	INBOARD, ??? version

 28	INBOARD, ??? version

 29	"HPRS"

 30	Compaq 386

 31	JET386

INT 21 4402


21 4402 Format of 386MAX control block:

Copy to Main

Table 0697

Format of 386MAX control block:

Offset	Size	Description

 00h	WORD	segment of next block (FFFFh if last)

 02h	WORD	segment of previous block (FFFFh if first)

 04h 12 BYTEs	filename

 10h	WORD	resident size in paragraphs

 12h	WORD	environment size???

 14h	WORD	real prsent environment size + 1 (0000h if ENVSAVE used)

 16h  2 BYTEs	???

 18h	DWORD	initial size or SIZE=n in 386LOAD commandline

 1Ch	DWORD	SIZE=-1 ???

 20h	DWORD	SIZE= ???

 24h	BYTE	PRGREG= if specified, else FFh

 25h	BYTE	ENVREG= if specified, else FFh

 26h	BYTE	FlexFrame (00h not present, 01h present)

 27h  3 BYTEs	???

 2Ah	BYTE	GROUP= or 00h if not present

 2Bh	BYTE	???

 2Ch	WORD	PSP

INT 21 4402


21 4402 Format of 386MAX high memory info record:

Copy to Main

Table 0698

Format of 386MAX high memory info record:

Offset	Size	Description

 00h	WORD	segment address of memory region

 02h	WORD	size of memory region in paragraphs

 04h	BYTE	type or flags???

00h if locked out

02h if EMS page frame

04h if high RAM

42h if ROM

 05h	BYTE	???

INT 21 4402


21 4402 Format of 386MAX ROM shadowing record:

Copy to Main

Table 0699

Format of 386MAX ROM shadowing record:

Offset	Size	Description

 00h	WORD	logical start segment of ROM??? (may be used by BlueMAX when it

  squeezes together the ROMs to make room)

 02h	WORD	physical start segment of ROM

 04h  2 BYTEs	???

 06h	WORD	size of shadowed ROM in paragraphs

 08h  2 BYTEs	???

 0Ah	WORD	flags

bit 15: shadowing enabled for this ROM???

bit 14: ???

bit 13: ???

bit 12: ???

bit 10: ???

INT 21 4402


21 4402 Values for 386MAX memory type:

Copy to Main

Table 0700

Values for 386MAX memory type:

 00h	unused by EMS

 01h	DOS

 04h	page frame overlapping ROM???

 80h	high memory

 84h	page frame???

 87h	video ROM???

Note:	the type may be 00h (unused) if the 16K page is split among different

  uses (such as ROM and high RAM)

INT 21 4402


21 4402 Call 386MAX API (via OUT DX,AL) with:

Copy to Main

Table 0701

Call 386MAX API (via OUT DX,AL) with:

STACK: WORD value for DX

AH = 00h unused

Return: AH = 84h (unsupported function)

AH = 01h get high memory information

ES:DI -> buffer for array of high memory info records

(see #0698)

Return: CX = number of records placed in buffer

AH = 02h get shadowed ROM info

ES:DI -> buffer for array of ROM shadowing records (see #0699)

Return: CX = number of records placed in buffer

AH = 03h get 386MAX state

ES:DI -> 90-byte buffer for state (see #0687)

Return: AH = 00h (successful)

buffer filled

AH = 04h get memory types???

ES:DI -> buffer for memory type info (array of bytes, one per

16K page) (see #0700)

Return:	CX = number of bytes placed in buffer

AH = 05h get page table entries

AL = A20 control (00h enable A20 first, 01h leave unchanged)

CX = buffer size in bytes (0000h = enough for all memory from

given start to end of memory managed by 386MAX)

SI = first K to report (rounded down to 4K page)

ES:DI -> buffer for returned page table entries

Return: CX = number of bytes returned (four per 4K page)

ES:DI buffer filled

AH = 06h get memory speed info

ES:DI -> buffer for memory speed records (see #0702)

Return: AH = 00h (successful)

CX = number of bytes placed in buffer

Note:	this function can take over a second to execute

AH = 07h map/unmap multiple handle pages

DX = EMS handle (on stack)

STACK: DWORD -> EMS mapping record

Return:	AH = status (00h,80h,83h,8Ah,8Bh)

Format of EMS mapping record:

Offset	Size	Description

 00h	WORD	function

0000h use physical page numbers

0001h use segment addresses

 02h	WORD	EMS handle

 04h	WORD	number of mapping entries following

 06h 2N WORDs	logical page number and physical page/segment

logical page FFFFh means unmap physical page

SeeAlso: INT 67/AH=50h

AH = 08h "EMM2_GOREAL" check whether possible to disable 386MAX

AL = ??? (00h or nonzero)

Return: AH = status (00h OK, A4h not possible at this time)

Note:	if AL=00h, this function always returns success

AH = 09h toggle Bit Flags 1 flags

BX = bitmask of bit flags 1's flags to toggle (see #0688)

Return: AH = 00h (successful)

Note:	enables A20 first

AH = 0Ah toggle Debugging Flags 1 flags

BX = bitmask of Debugging Flags 1's bits to toggle (see #0690)

Return: AH = 00h (successful)

Notes:	enables A20 first

does ??? if bit 3 on after specified bits are toggled

AH = 0Bh toggle Debugging Flags 2 flags

BX = bitmask of Debugging Flags 2's bits to toggle (see #0691)

Return: AH = 00h (successful)

Note:	enables A20 first

AH = 0Ch toggle feature flags 3

BX = bitmask of feature flags 3's bits to toggle (see #0695)

Return: AH = 00h (successful)

Note:	enables A20 first

AH = 0Dh specify 386MAX high-memory location

BX = segment address of high-memory real-mode portion of 386MAX

CX = current segment of real-mode stub???

Return: AH = status (00h successful)

???

AH = 0Eh CRT controller register virtualization

AL = subfunction

    00h allow access to CRTC I/O ports 03B4h/03B5h, 03D4h/03D5h

    01h trap accesses to CRTC I/O ports

AH = 0Fh reboot system

Return: never

AH = 10h unused

Return: AH = 84h (unsupported function)

AH = 11h get high memory information

ES:DI -> 96-byte buffer for high memory info

Return: AH = 00h (successful)

ES:DI buffer filled

Notes:	each byte in buffer contains bit flags for a 4K page in

  the A000h-FFFFh region

bit 0: page is writeable

bit 1: physical address same as linear address

bit 2: EMS page frame

bit 6: page is part of the QPMS window

this function can take over a second to execute,

  because it does a 128K read for each page in an

  attempt to flush any RAM cache the system may have

AH = 12h shadow RAM mapping

AL = subfunction

    00h unshadow ROMs (except page FFh if NOWARMBOOT set)

    01h map shadow RAM into ROM regions???

Return: AH = 00h (successful) if AL=00h or 01h

AH = 8Fh otherwise

AH = 13h shadow RAM page protection

AL = subfunction

    00h set all shadowed ROM 4K pages to read-only

    01h set all shadowed ROM 4K pages to read-write

Return: AH = 00h (successful) if AL=00h or 01h

AH = 8Fh otherwise

AH = 14h get Programmable Option Select info???

ES:DI -> 54-byte buffer for POS data???

Return: AH = 00h if successful

AH = A4h on error

Note:	the buffer consists of nine 6-byte fields; the first

  eight for slots 1-8, the last for the system board

AH = 15h ???

???

Return: ???

AH = 16h get 386MAX memory usage screen

ES:DI -> buffer for memory info display

CX = size of buffer in bytes

Return:	ES:DI buffer filled with '$'-terminated string (if

large enough to hold entire usage screen)

Note:	the screen is 0303h bytes in v7.00

AH = 17h Windows 3 startup/termination

AL = subfunction

    00h Windows3 initializing

DX (on stack) = Windows startup flags

DI = Windows version number (major in upper byte)

ES:BX = 0000h:0000h

DS:SI = 0000h:0000h

Return: CX = 0000h if OK for Windows to load

   <> 0 if Windows should not load

ES:BX -> startup info structure

DS:SI -> Virtual86 mode enable/disable callback

    01h Windows3 terminating

ES:BX -> ???

DX (on stack) = Windows exit flags

Return: ???

AH = 18h QPMS (Qualitas Protected Memory Services)

AL = subfunction

    00h get QPMS configuration

Return: BX = starting segment of QPMS memory window

CX = number of 4K pages reserved for QPMS???

DX = number of 4K pages in QPMS window???

    01h map QPMS memory page???

BX = 4K page number within memory reserved for QPMS???

CL = 4K page number within QPMS memory window???

    02h mark all QPMS memory read-only

    03h mark all QPMS memory read-write

Return: AH = status (00h,8Ah,8Bh,8Fh)

AH = 19h get linear address for physical address

EDX = physical address (low word on stack)

Return: AH = status

    00h successful

EDX = linear address at which physical address

may be accessed

    8Bh physical address currently not addressable

Note:	enables A20 first

AH = 1Ah set page table entry

EDX = new page table entry (low word on stack)

ESI = linear address of page to map (bits 0-11 clear)

Return: AH = status (00h,8Bh)

Note:	enables A20 first

AH = 1Bh get ???

Return: AH = status

BX = ???

CX = number of ???

EDX = physical address of ???

AH = 1Ch get original interrupt vector

AL = interrupt vector (00h-7Fh)

Return: AH = 00h (successful)

EDX = original vector before 386MAX loaded (segment in

high word, offset in low word)

Note:	no range checking is performed; requests for INTs 80h-

  FFh will return random values

AH = 1Dh display string???

SI = ???

Return: AH = 00h (successful)

???

Note:	this function appears to be broken in v7.00

AH = 1Eh get memory info

ES:DI -> memory info (see #0703)

Return: ???

AH = 1Fh get DPMI host information

Return: AX = 0000h if successful

BX = DPMI flags (see #1819 at INT 31/AX=0400h)

CL = CPU type (02h = 80286, 03h = 80386, etc.)

DX = DPMI ver supported (DH=major, DL=2-digit minor)

SI = ???

ES???:DI -> ???

Note:	NOP if NODPMI switch specified

AH = 20h (v7.00) get ???

    AL = index of ???

    Return: EDX = ??? for specified ???

AH = 21h (v7.00) STACKS support

    AL = 00h get STACKS parameters

Return: BX = ??? (0060h for v7.00)

CX = number of stacks for hardware interrupts

DX = size of each stack in bytes

SI = ??? (low and high bytes are separate values)

DI = ??? (low and high bytes are separate values)

    low byte = logical page number set by subfn 02h

ES = ???

    AL = 01h set ??? "EMM2_DSTKS"

EBX = ???

ECX = ???

    AL = 02h set ???

BL = logical page number for ??? (00h-03h)

Return: AH = status (00h,8Ah)

AH = 22h (v7.00) call ??? for every load module

    AL = which function to call

00h call ???

else call ????

    Return: AH = 00h

    Note: if AL=00h, calls the protected-mode function pointed at by

the DWORD at offset 22h from the start of each module installed

by a LOAD= directive; if AL<>00h, it calls the function

pointed at by the DWORD at offset 28h of the load module

AH = 23h (v7.00) ???

    AL = 00h set ???

BL = ???

Return:	AH = 00h or unchanged (depending on ???)

    AL = 01h set ???

BL = ???

BH = ???

CX = ???

DX = ??? (on top of stack)

Return: AH = status (00h if successful, 8Fh once table full)

Note:	this call adds one entry to an internal table on each

  call, until the table is full

    AL = 02h get ???

CX = size of buffer

ES:DI -> buffer for ??? (60 bytes total data)

Return: CX = number of bytes actually returned

Note:	returns the array storing the values set with AX=2301h

Format of one entry in array:

Offset	Size	Description

 00h	BYTE	??? (BL from subfn 01h)

 01h	WORD	??? (CX from subfn 01h)

 03h	BYTE	??? (BH from subfn 01h)

 04h	WORD	??? (DX from subfn 01h)

    AL = 03h set ??? name/path

ES:DI -> buffer containing ASCIZ ???

    AL = 04h get ???

ES:DI -> buffer for ASCIZ ???

    Note: the ASCIZ string for subfunctions 03h and 04h does not appear

to be used by 386MAX, and may serve merely for communication

between two other Qualitas programs

AH = 24h (v7.00) high memory control

    AL = 00h get high memory state

Return: BX = current state

    00h high memory removed from DOS memory chain

    01h high memory included in DOS memory chain

    AL = 01h set high memory state

BX = new state

    00h high memory removed from DOS memory chain

    01h high memory included in DOS memory chain

    else

Return: ??? (error, but return varies according to ???)

AH = 25h (v7.00) remove high RAM from DOS memory chain

AH = 26h (v7.00) ???

    BX = ???

    CX = ???

    SI = ???

    DI = ???

    Return: AH = status

    BX = ???

    CX = ???

AH = 27h (v7.00) ???

    AL = 00h get ???

Return: BX = number of paragraphs for ???

    AL = 01h ???

BX = ???

ES??? = ???

    AL = 02h ???

???

    AL = 03h ???

CX = ???

DX = ???

ES??? = ???

Return: ???

AH = 28h (v7.00) get ???

Return: AH = status (00h,8Fh) (see #2253 at INT 67/AH=40h)

if AH=00h,

    CX = ???

    DX = ???

AH = 29h (v7.00) get ???

Return: AX = ???

AH = 40h-5Dh EMS services (see INT 67/AH=40h etc)

AH = DEh VCPI services (see INT 67/AX=DE00h etc)

Return: AH = status (as for EMS INT 67 calls)

    00h successful

    80h internal error

    81h hardware malfunction

    83h invalid handle

    84h	undefined function

    8Ah invalid logical page nuber

    8Bh illegal physical page number

    8Fh undefined subfunction

    A4h access denied

    etc.

STACK popped (value placed in DX if no specific return value for DX)

INT 21 4402


21 4402 Format of 386MAX memory speed record:

Copy to Main

Table 0702

Format of 386MAX memory speed record:

Offset	Size	Description

 00h	DWORD	page table entry for 4K page

 04h	WORD	number of microticks (840ns units) required for REP LODSD of

  entire 4K page

INT 21 4402


21 4402 Format of 386MAX memory info [array]:

Copy to Main

Table 0703

Format of 386MAX memory info [array]:

Offset	Size	Description

 00h	DWORD	linear start address

 04h	DWORD	size in bytes

 08h	WORD	XMS handle (if next byte = 04h)

??? (if next byte = 05h)

??? (if next byte = 06h)

??? (if next byte = 13h)

??? (if next byte = 14h)

??? (if next byte = 15h)

??? (if next byte = 23h)

??? (if next byte = 24h)

??? (if next byte = 26h)

else unused

 0Ah	BYTE	type

00h = ???, 01h = VDISK,

02h = INT 15h extended memory, 03h = ??? extended,

04h = XMS handle's memory, 05h = ???, 06h = ???, 07h = ???,

08h = ???, 09h = ???, 0Ah = ???, 0Bh = ???,

11h = ???, 12h = ???, 14h = ???, 15h = ???,

19h = ???, 1Ah = ???, 1Bh = ???,

1Ch = ???, 1Dh = ???, 1Eh = ???, 1Fh = ???,

20h = ???, 21h = ???, 23h = ???, 24h = ???,

26h = ???

 0Bh	BYTE	??? (00h for types 00h-03h, 07h-0Bh, 19h-21h;

     80h for types 04h/13h-15h/23h-26h;

??? for type 05h)

INT 21 4402


21 4402 Format of PGS1600.DEV configuration information:

Copy to Main

Table 0704

Format of PGS1600.DEV configuration information:

Offset	Size	Description

 00h	WORD	version (high byte = major, low byte = minor)

 02h	WORD	board initialisation mode

 04h	WORD	board I/O address

03D0h CGA emulation

03B0h MDA emulation

0390h no emulation

0350h no emulation, alternate

 06h	WORD	emulation buffer segment

B800h	CGA emulation

B000h	MDA emulation

0000h	no emulation

 08h	WORD	PG1600 graphics buffer segment

 0Ah	WORD	number of bytes between consecutive graphic rows

 0Ch	WORD	horizontal pixel size

 0Eh	WORD	vertical pixel size

 10h	WORD	horizontal dots per inch

 12h	WORD	vertical dots per inch

 14h	WORD	graphics buffer bits per pixel

 16h	WORD	monitor bits per pixel

INT 21 4402


21 4402 Format of WORKGRP.SYS entry point record:

Copy to Main

Table 0705

Format of WORKGRP.SYS entry point record:

Offset	Size	Description

 00h	WORD	3633h  \ signature???

 02h	WORD	EF6Fh  /

 04h	DWORD	address of entry point (see #0706)

Note:	first four bytes of buffer must be 6Fh E9h 33h 36h on entry when using

  IOCTL rather than READ to get the entry point record

INT 21 4402


21 4402 Call WORKGRP entry point with:

Copy to Main

Table 0706

Call WORKGRP entry point with:

STACK:	WORD	function number (0000h-0009h)

Return: STACK unchanged

SeeAlso: #0707,#0708,

#0709,#0710,#0711,#0712,#0713,#0714

INT 21 4402


21 4402 Call WORKGRP function 00h with:

Copy to Main

Table 0707

Call WORKGRP function 00h with:

STACK:	WORD	0000h (function "get ???")

Return: DX:AX -> data table

INT 21 4402


21 4402 Call WORKGRP function 01h with:

Copy to Main

Table 0708

Call WORKGRP function 01h with:

STACK:	WORD	0001h (function "hook ???")

Return: STACK:	DWORD	pointer to ???

WORD	0001h (function number)

INT 21 4402


21 4402 Call WORKGRP function 02h with:

Copy to Main

Table 0709

Call WORKGRP function 02h with:

STACK:	WORD	0002h (function "unhook ???")

???

Return: ???

INT 21 4402


21 4402 Call WORKGRP function 03h with:

Copy to Main

Table 0710

Call WORKGRP function 03h with:

STACK:	WORD	0003h (function "reenable printer port")

WORD	LPT port number

Return: ???

INT 21 4402


21 4402 Call WORKGRP function 04h with:

Copy to Main

Table 0711

Call WORKGRP function 04h with:

STACK:	WORD	0004h (function "disable printer port")

WORD	LPT port number

Return: ???

INT 21 4402


21 4402 Call WORKGRP function 05h with:

Copy to Main

Table 0712

Call WORKGRP function 05h with:

STACK:	WORD	0005h (function "???")

???

Return: ???

INT 21 4402


21 4402 Call WORKGRP function 06h with:

Copy to Main

Table 0713

Call WORKGRP function 06h with:

STACK:	WORD	0006h (function "???")

Return: STACK unchanged

AX = 0000h

DX = 0000h

INT 21 4402


21 4402 Call WORKGRP functions 07h-09h with:

Copy to Main

Table 0714

Call WORKGRP functions 07h-09h with:

STACK:	WORD	0007h-0009h (NOP functions)

Return: STACK unchanged

AX = 0001h

DX = 0000h

INT 21 4402


21 4402 Format of 10NET 10BEUI.DOS parameter record:

Copy to Main

Table 0715

Format of 10NET 10BEUI.DOS parameter record:

Offset	Size	Description

 00h	WORD	000Ah (function number???)

 02h	WORD	???

 04h	DWORD	pointer to buffer for ???

 08h  4 BYTEs	???

 0Ch	WORD	transfer size

INT 21 4402


21 4402 Format of 10NET 10MEMMGR.SYS interface info:

Copy to Main

Table 0716

Format of 10NET 10MEMMGR.SYS interface info:

Offset	Size	Description

 00h	DWORD	address of entry point (see #0717)

 04h	WORD	version (0500h for v5.00)

INT 21 4402


21 4402 Call 10NET 10MEMMGR.SYS entry point with:

Copy to Main

Table 0717

Call 10NET 10MEMMGR.SYS entry point with:

AL = 01h ???

    BX = ???

    Return: CF clear if successful

    CF set on error

AX = error code

AL = 02h ???

    ???

AL = 03h ???

    ???

AL = 04h set/restore memory allocation strategy

    BX = subfunction

0000h set strategy

0001h restore strategy

    Return: CF clear if successful

    CF set on error (if function disabled)

    various registers destroyed

AL = other

    Return: CF set

    AX = 0000h

    BL = 01h

INT 21 4402


21 4402 Format of Compaq AG1024.SYS location record:

Copy to Main

Table 0718

Format of Compaq AG1024.SYS location record:

Offset	Size	Description

 00h	WORD	signature 55AAh

 02h	WORD	segment of ???

 04h	WORD	segment of device driver's code

INT 21 4402


21 4402 Format of FTPSOFT.DOS data:

Copy to Main

Table 0719

Format of FTPSOFT.DOS data:

Offset	Size	Description

 00h	WORD	(call) BA98h (if different, no data returned)

 02h	DWORD	-> NDIS common characteristics table

  (see #0658 at AX=4402h"NDIS")

 06h	DWORD	(call) -> new dispatch table (see #0660 at AX=4402h"NDIS")

 0Ah	DWORD	-> 28-byte buffer for ??? data

 0Eh	DWORD	???

 12h	DWORD	-> FAR function to reset dispatch jump table to defaults

 16h	BYTE	???

Note:	the addresses in the new dispatch table are copied into an internal

  jump table which may be reset by calling the function pointed at by

  offset 12h

INT 21 4402


21 4402 Format of PENDEV.SYS entry point record:

Copy to Main

Table 0720

Format of PENDEV.SYS entry point record:

Offset	Size	Description

 00h	DWORD	-> array of jumps

 04h	WORD	offset of function to retrieve entry point (see #0721)

 06h  2 BYTEs	signature "Pe"

 08h	WORD	offset of function to set entry point (see #0722)

 0Ah  2 BYTEs	signature "nD"

 0Ch	WORD	offset of function to clear entry point (see #0723)

 0Eh	WORD	signature "OS"

INT 21 4402


21 4402 Call PENDEV.SYS function to retrieve entry point with:

Copy to Main

Table 0721

Call PENDEV.SYS function to retrieve entry point with:

AX = index of entry point (0-9)

Return: CF clear if successful

    DX:AX -> desired entry point

CF set on error (AX out of range)

INT 21 4402


21 4402 Call PENDEV.SYS function to set entry point with:

Copy to Main

Table 0722

Call PENDEV.SYS function to set entry point with:

AX = index of entry point (0-9)

DX:SI -> new handler

Return: CF clear if successful

CF set on error (AX out of range)

INT 21 4402


21 4402 Call PENDEV.SYS function to clear entry point with:

Copy to Main

Table 0723

Call PENDEV.SYS function to clear entry point with:

AX = index of entry point (0-9)

Return: CF clear if successful

CF set on error (AX out of range)

Note:	resets the jump at the specified entry point to its default target,

  which simply returns

INT 21 4402


21 4402 Format of TCPDRV.DOS request block:

Copy to Main

Table 0724

Format of TCPDRV.DOS request block:

Offset	Size	Description

 00h	BYTE	(call) function number

00h initialize ???

06h get ???

07h get ???

 01h	BYTE	(call) 00h

(ret) error code if error, unchanged if successful

 02h	WORD	signature 4354h ('CT')

---function 00h---

 04h	DWORD	(call) pointer to ??? FAR function

function is called with ES:BX -> device driver request used to

  invoke this function

 08h  4 BYTEs	???

 0Ch	DWORD	(call) pointer to ??? record, WORD at offset 22h is read

 10h	DWORD	(ret) -> ??? buffer if 0000h:0000h on call

---function 06h---

 04h  4 BYTEs	???

 08h	DWORD	(ret) pointer to ???

---function 07h---

 04h	DWORD	(ret) pointer to ??? record

INT 21 4402


21 4402 Format of CPRLOW address list:

Copy to Main

Table 0725

Format of CPRLOW address list:

Offset	Size	Description

 00h	WORD	segment of CPRLOW code

 02h	WORD	offset in code segment of ??? entry point

(switches into protected mode)

 04h	WORD	offset in code segment of jump array (see #0726)

 06h	WORD	segment of copy of interrupt vector table at CPRLOW load time

Note:	neither the entry point nor the jump array is valid until after a

  CPR /LOAD, because CPR.EXE installs the code into CPRLOW at runtime.

INT 21 4402


21 4402 Format of CPRLOW jump array:

Copy to Main

Table 0726

Format of CPRLOW jump array:

Offset	Size	Description

 00h  3 BYTEs	initialize CPRLOW interrupt hooks

 03h  3 BYTEs	reset timers and enable CPR (hotkey enable)

 06h  3 BYTEs	disable CPR (hotkey disable)

 09h  3 BYTEs	clear ??? flag, hotkey disable, and ???

 0Ch  3 BYTEs	initialize delay loop counter (destroys AX,BX,CX,DX)

 0Fh  3 BYTEs	disable CPR completely (commandline /DISABLE)

 12h  3 BYTEs	enable ??? if CPR enabled by both cmdline and hotkey

 15h  3 BYTEs	enable CPR (commandline /ENABLE)

INT 21 4402


21 4402 Format of CTMMSYS.SYS entry point record:

Copy to Main

Table 0727

Format of CTMMSYS.SYS entry point record:

Offset	Size	Description

 00h	DWORD	(call) signature 4D6D7443h (ASCII "CtmM")

(ret) pointer to CTMMSYS entry point (see #0728)

SeeAlso: #0729

INT 21 4402


21 4402 Call CTMMSYS.SYS entry point with:

Copy to Main

Table 0728

Call CTMMSYS.SYS entry point with:

AX = ???

STACK:	WORD	???

WORD	???

WORD	??? (0001h,0002h,0005h,0006h)

WORD	???

DWORD	-> ???

WORD	???

WORD	???

Return: DX:AX = ??? or error code

0000h:000Bh invalid value for ???

0000h:000Fh API call already in progress

SeeAlso: #0727

INT 21 4402


21 4402 Format of CTSB2.SYS entry point record:

Copy to Main

Table 0729

Format of CTSB2.SYS entry point record:

Offset	Size	Description

 00h	DWORD	(call) signature 4D6D7443h (ASCII "CtmM")

(ret) pointer to CTSB2 entry point (see #0730)

SeeAlso: #0727

INT 21 4402


21 4402 Call CTSB2.SYS entry point with:

Copy to Main

Table 0730

Call CTSB2.SYS entry point with:

AX = ???

STACK:	DWORD	-> ???

WORD	function number

(0100h,0200h,0300h,0400h,0500h,0600h,0701h)

DWORD	-> ???

WORD	???

WORD	???

Return: DX:AX = ??? or error code

0000h:0004h invalid subfunction???

0000h:000Bh invalid value for ???

0000h:000Fh API call already in progress

SeeAlso: #0729

INT 21 4402


21 4402 Format of Novell DOS 7 EMM386.EXE state record:

Copy to Main

Table 0731

Format of Novell DOS 7 EMM386.EXE state record:

Offset	Size	Description

 00h	WORD	signature EDC0h

 02h 60 BYTEs	???

INT 21 4402


21 4402 Format of memory manager API entry point record:

Copy to Main

Table 0732

Format of memory manager API entry point record:

Offset	Size	Description

 00h	WORD	??? (0022h for CEMM 5.11, 0025h for MS EMM386 v4.45)

 02h	DWORD	manager's private API entry point

(see #0733,#2271 at INT 67/AX=FFA5h)

INT 21 4402


21 4402 Call CEMM v5.10+ entry point with:

Copy to Main

Table 0733

Call CEMM v5.10+ entry point with:

AH = 00h get memory manager's state

    Return: AH = state

bit 0: turned OFF

bit 1: AUTO mode enabled

AH = 01h set memory manager's state

    AL = new state (00h ON, 01h OFF, 02h AUTO)

    Return: CF clear if successful

    CF set on error

AH = 02h Weitek coprocessor support

    AL = subfunction

00h get Weitek support state

    Return: AL = status

bit 0: Weitek coprocessor is present

bit 1: Weitek support is enabled

01h turn on Weitek support

02h turn off Weitek support

    Return: CF clear if successful

    CF set on error

AH = error code (01h invalid subfunc, 02h no Weitek)

AH = 05h get statistics

    ???

AH > 06h

    Return: CF set

    AH = 01h (invalid function)

Notes:	AH=03h,04h,06h are NOPs which return CF clear, presumably for backwards

  compatibility with earlier versions of CEMM

in v5.11, AH=05h merely prints an error message (using INT 21/AH=09h)

  stating that a different version of CEMM is installed and it is

  therefore not possible to display the statistics

INT 21 4402


21 4402 Format of EMM import structure record:

Copy to Main

Table 0734

Format of EMM import structure record:

Offset	Size	Description

 00h	DWORD	physical address of EMM import structure (see #0735)

 04h	BYTE	EMM import structure major version

 05h	BYTE	EMM import structure minor version

Note:	version 1.00 contains only EMS information (Windows 3.0+)

version 1.10 contains UMB/XMS/HMA/EMS information (Windows 3.1)

version 1.11 is version 1.10 plus memory manager maker/product name

SeeAlso: #2248

INT 21 4402


21 4402 Format of Global EMM Import record:

Copy to Main

Table 0735

Format of Global EMM Import record:

Offset	Size	Description

 00h	BYTE	bit flags

bit 2: ???

bit 3: free EMM386 virtual HMA only if hma_page_table_paddr!=0

bit 4: no UMB???

 01h	BYTE	reserved (0)

 02h	WORD	size of structure in bytes

 04h	WORD	structure version

 06h	DWORD	reserved

 0Ah 384 BYTEs	64 EMS frame status records (see #0736), one per 16K of

  real-mode 1M address space

18Ah	BYTE	??? (must be at least 3*number_of_EMS_frames+4)

18Bh	BYTE	number of UMB frame descriptors following

18Ch 4N DWORDs	UMB frame descriptors

each is 4 DWORDs giving physical page numbers for the four

  4K pages of a 16K EMS frame (00000000h if non-UMB page)

var	BYTE	number of EMS handle info records following

    16N BYTEs	EMS handle info records (see #0738)

---version 1.10+ ---

DWORD	realmode INT 67 vector (used by Windows to set breakpoints)

DWORD	physical address of HMA page table values

BYTE	number of free page entries following

     2N DWORDs	free page entries

each is:

    DWORD	physical page number

    DWORD	number of consecutive physical pages

BYTE	number of XMS handle info records following

00h if memory manager does not emulate XMS or has real mode

  XMS code which can execute in the Windows environment

    12N BYTEs	XMS handle info records (see #0739)

BYTE	number of free UMB info records following

     2N WORDs	free UMB info records

each is:

    WORD	real mode start segment

    WORD	size in paragraphs

---version 1.11---

     20 BYTEs	blank-padded maker name

     20 BYTEs	blank-padded product name

INT 21 4402


21 4402 Format of EMS frame status record:

Copy to Main

Table 0736

Format of EMS frame status record:

Offset	Size	Description

 00h	BYTE	frame type (see #0737)

 01h	BYTE	owner handle (00h/FFh = none) from frame including UMB

index to UMB frame descriptors

 02h	WORD	logical page for frame, 7FFFh if none, FFFFh if non-EMS frame

 04h	BYTE	EMS physical page number (FFh for non-EMS = don't care???)

 05h	BYTE	flags for non-EMS frames (00h for EMS frame)

bits 0,1 for first 4K, bits 2,3 for second 4K, etc:

  10: direct mapping (linear address = physical address)

  01: UMB mapping

INT 21 4402


21 4402 Bitfields for EMS frame type:

Copy to Main

Table 0737

Bitfields for EMS frame type:

Bit(s)	Description

 0	EMS frame

 1	(if EMS frame) in standard 64K page frame

 2	first 4K of frame is UMB

 3	second 4K of frame is UMB

 4	third 4K of frame is UMB

 5	last 4K of frame is UMB

INT 21 4402


21 4402 Format of EMS handle info record:

Copy to Main

Table 0738

Format of EMS handle info record:

Offset	Size	Description

 00h	BYTE	handle number (00h = system handle)

 01h	BYTE	flags

bit 0: normal handle rather than system handle

bit 2: ??? (set by some EMS managers)

 02h  8 BYTEs	EMS handle's name

 0Ah	WORD	number of 16K pages for handle

 0Ch	DWORD	physical address of page table entries forming page map

Note:	all values should be zero for the system handle if no large frame

  support is present

INT 21 4402


21 4402 Format of XMS handle info record:

Copy to Main

Table 0739

Format of XMS handle info record:

Offset	Size	Description

 00h	WORD	handle

 02h	WORD	flags

bit 0: handle usable by Windows

(already in use when Windows started if clear)

bit 1: reserved (0)

 04h	DWORD	size in KB (may be zero, used only if flags bit 0 set)

 08h	DWORD	physical address (only if flags bit 0 set)

INT 21 4402


21 4402 Format of memory manager version:

Copy to Main

Table 0740

Format of memory manager version:

Offset	Size	Description

 00h	BYTE	major version

 01h	BYTE	minor version (binary)

INT 21 4402


21 4402 Format of EMM386.EXE data buffer:

Copy to Main

Table 0741

Format of EMM386.EXE data buffer:

Offset	Size	Description

 00h	BYTE	(call) function

03h get ???

04h get ???

---function 03h---

 00h	WORD	???

 02h	WORD	???

---function 04h---

 00h	WORD	segment of UMB containing EMM386 code/data

 02h	WORD	number of paragraphs of EMM386 code/data in UMB

 04h	WORD	???

INT 21 4402


21 4403 Values for SMARTDRV function code:

Copy to Main

Table 0742

Values for SMARTDRV function code:

 00h	flush cache

 01h	flush and discard cache

 02h	disable caching (flushes and discards cache first)

 03h	enable caching

 04h	control write caching

 05h	set flushing tick count

 06h	lock cache contents

 07h	unlock cache contents

 08h	set flush-on-reboot flag

 09h	unused

 0Ah	control full-track caching

 0Bh	reduce cache size

 0Ch	increase cache size

 0Dh	set INT 13 chain address

INT 21 4403


21 4403 Format of SMARTDRV control block:

Copy to Main

Table 0743

Format of SMARTDRV control block:

Offset	Size	Description

 00h	BYTE	function code (see #0742)

---functions 00h-03h,06h,07h---

 no additional fields

---function 04h---

 01h	BYTE	write caching control action

00h turn off write-through

01h turn on write-through

02h turn off write buffering (also flushes cache)

03h turn on write buffering (also flushes cache)

---function 05h---

 01h	WORD	number of timer ticks between cache flushes

---function 08h---

 01h	BYTE	new flush-on-reboot flag (00h off, 01h on)

---function 0Ah---

 01h	BYTE	full-track writes are

00h not cached

01h cached

---functions 0Bh,0Ch---

 01h	WORD	number of 16K pages by which to increase/reduce cache size

---function 0Dh---

 01h	DWORD	new address to which to chain on INT 13

Note:	the previous address is not preserved

INT 21 4403


21 4403 Format of CR-ROM control block:

Copy to Main

Table 0744

Format of CR-ROM control block:

Offset	Size	Description

 00h	BYTE	function code

00h eject disk

01h lock/unlock door

02h reset drive

03h control audio channel

04h write device control string

05h close tray

---functions 00h,02h,05h---

 no further fields

---function 01h---

 01h	BYTE	lock function

00h unlock door

01h lock door

---function 03h---

 01h	BYTE	input channel (0-3) for output channel 0

 02h	BYTE	volume for output channel 0

 03h	BYTE	input channel (0-3) for output channel 1

 04h	BYTE	volume for output channel 1

 05h	BYTE	input channel (0-3) for output channel 2

 06h	BYTE	volume for output channel 2

 07h	BYTE	input channel (0-3) for output channel 3

 08h	BYTE	volume for output channel 3

Note:	output channels 0 and 1 are left and right, 2 and 3 are left prime and

  right prime; a volume of 00h is off

---function 04h---

 01h  N BYTEs	bytes to send directly to the CD-ROM drive without

  interpretation

INT 21 4403


21 4403 Format of SCSITAPE control block:

Copy to Main

Table 0745

Format of SCSITAPE control block:

Offset	Size	Description

 00h	WORD	command type

'F' Format (argument 1 = interleave, argument 2 = format type)

'E' Erase

'R' Rewind

'L' Load

'N' No Load

'S' Space (argument 1 = count, argument 2 = type)

'M' File Mark (argument 1 = count)

'A' Reassign

 02h	WORD	argument 1

 04h	WORD	argument 2

 06h	WORD	segment of command buffer

 08h	WORD	offset of command buffer

 0Ah	WORD	length of command buffer

INT 21 4403


21 4403 Format of buffer on return:

Copy to Main

Table 0746

Format of buffer on return:

Offset	Size	Description

 00h  4 BYTEs	signature "IABH"

---if function 81h---

 (no additional fields)

---if function 82h---

 04h	DWORD	pointer to API entry point (see INT 2F/AX=FBA1h/BX=0082h)

---if function 84h---

 04h	WORD	success indicator

 06h	WORD	segment of ???

 08h	WORD	segment of ??? memory block to free if nonzero

 0Ah	WORD	segment of ??? memory block to free if nonzero

INT 21 4403


21 4403 Format of Compaq AG1024.SYS request packet:

Copy to Main

Table 0747

Format of Compaq AG1024.SYS request packet:

Offset	Size	Description

 00h	WORD	function

0000h get ??? (26h bytes)

0001h get ??? (36h bytes)

0002h set ??? (same as returned by function 0001h)

0003h get ??? (6 bytes)

0004h get ???

0005h get ???

0006h get ??? (10h bytes)

0007h set ??? (same as returned by function 0006h)

---functions 00h-03h,06h,07h---

 02h	WORD	size of data buffer

 04h	DWORD	-> buffer for function's data

 ---functions 04h,05h---

 02h	WORD	???

 04h	WORD	size of data buffer

 06h	DWORD	-> buffer to receive data

INT 21 4403


21 4403 Format of Compaq AG1024.SYS request packet:

Copy to Main

Table 0748

Format of Compaq AG1024.SYS request packet:

Offset	Size	Description

 00h	WORD	function

0000h get entry points

0001h get ???

 02h	DWORD	address of buffer for returned data

INT 21 4403


21 4404 Format of Stacker buffer:

Copy to Main

Table 0749

Format of Stacker buffer:

Offset	Size	Description

 00h	WORD	01CDh

 02h	WORD	sector count

 04h	DWORD	number of starting sector

 08h	DWORD	far pointer to Data Buffer

INT 21 4404


21 4404 Format of DUBLDISK data record:

Copy to Main

Table 0750

Format of DUBLDISK data record:

Offset	Size	Description

 00h	WORD	(call) signature 4444h

 02h	BYTE	(call) function

00h ???

01h ???

---function 00h---

 02h	BYTE	(ret) ???

 03h	BYTE	(ret) ???

---function 01h---

 02h	WORD	(ret) 4444h

 04h	WORD	allocation unit size???

 06h	WORD	???

 08h	WORD	???

 0Ah	BYTE	???

INT 21 4404


21 4404 Format of DUBLDISK signature data table:

Copy to Main

Table 0751

Format of DUBLDISK signature data table:

Offset	Size	Description

 00h  5 BYTEs	???

 05h	BYTE	first drive number

 06h	BYTE	number of drives

 07h	???

INT 21 4404


21 4404 Format of DoubleSpace DSPACKET structure:

Copy to Main

Table 0752

Format of DoubleSpace DSPACKET structure:

Offset	Size	Description

 00h	WORD	signature 444Dh ("DM")

 02h	BYTE	command code

46h ('F') flush internal caches

49h ('I') flush and invalidate internal caches

 03h	WORD	result code

(ret) 4F4Bh ("OK") if successful, else unchanged

 05h  5 BYTEs	padding

INT 21 4404


21 4404 Format of DoubleSpace DSPACKET structure:

Copy to Main

Table 0753

Format of DoubleSpace DSPACKET structure:

Offset	Size	Description

 00h	WORD	signature 444Dh ("DM")

 02h	BYTE	command code

53h ('S') get ??? for specified drive

 03h	WORD	result code

(ret) 4F4Bh ("OK") if successful, else unchanged

 05h	DWORD	(ret) pointer to 96-byte ??? data

 09h	DWORD	(ret) pointer to ??? data

 0Dh  3 BYTEs	reserved

INT 21 4404


21 4404 Format of DoubleTools structure:

Copy to Main

Table 0754

Format of DoubleTools structure:

Offset	Size	Description

 00h	WORD	(call) signature 55h AAh

(ret) signature 78h 70h ("xp")

 02h	WORD	(call) signature 52h 16h

(ret) ???

 04h	WORD	(ret) segment of driver's DS (same as its PSP)

INT 21 4404


21 4404 Format of COMBI-disk data packet:

Copy to Main

Table 0755

Format of COMBI-disk data packet:

Offset	Size	Description

 00h  6 BYTEs	ASCIZ signature "COMBI"

 06h	WORD	version (high byte = major, low = decimal minor version)

 08h	BYTE	current options (see below)

 09h	BYTE	sectors per allocation block

 0Ah	WORD	maximum buffer in KB

 0Ch	WORD	current buffer in KB (less than max if XMS memory being lent)

 0Eh	WORD	total number of allocation blocks

 10h	WORD	current number of allocation blocks

 12h	WORD	number of blocks being used by RAM disk

 14h	WORD	number of blocks being used by cache or unused

 16h	WORD	number of dirty cache blocks

 18h	WORD	number of blocks which could not be written out due to errors

 1Ah	WORD	total number of read requests

 1Ch	WORD	total number of sectors read

 1Eh	WORD	number of BIOS read requests (cache misses)

 20h	WORD	number of sectors read via BIOS (cache misses)

 22h	WORD	total number of write requests

 24h	WORD	total number of sectors written

 26h	WORD	number of BIOS write requests

 28h	WORD	number of sectors written via BIOS

 2Ah	WORD	number of RAM disk read requests

 2Ch	WORD	number of sectors read from RAM disk

 2Eh	WORD	number of RAM disk write requests

 30h	WORD	number of sectors written to RAM disk

INT 21 4404


21 4404 Format of SFS data packet:

Copy to Main

Table 0756

Format of SFS data packet:

Offset	Size	Description

 00h  4 BYTEs	signature string "SFS1"

 04h	WORD	SFS unit number (0-based)

 06h	WORD	drive on which the SFS volume is mounted

 08h	DWORD	sector offset of logical volume from start of physical volume

0 if logical volume = physical volume

 0Ch	WORD	flag: 00h = no disk mounted, 01h = disk mounted

 0Eh	WORD	flag: 00h read/write, 01h read-only

 10h	WORD	quick-unmount hotkey (high byte = shift state, low = scan code)

 12h	WORD	auto-unmount time in minutes, or 0000h if already expired, or

FFFFh if not set

 14h	WORD	time in minutes remaining before auto-unmount

 16h	WORD	internal driver check code

0000h no error

0001h driver consistency check failed

0002h unit consistency check failed

 18h	WORD	disk access mode

0000h BIOS

0001h IDE direct access

0002h SCSI direct access

INT 21 4404


21 4405 Format of DoubleSpace DSPACKET structure:

Copy to Main

Table 0757

Format of DoubleSpace DSPACKET structure:

Offset	Size	Description

 00h	WORD	signature 444Dh ("DM")

 02h	BYTE	command code

46h ('F') flush internal caches

49h ('I') flush and invalidate internal caches

 03h	WORD	result code

(ret) 4F4Bh ("OK") if successful, else unchanged

 05h  5 BYTEs	padding

INT 21 4405


21 4405 Values for COMBI-disk command code:

Copy to Main

Table 0758

Values for COMBI-disk command code:

 80h	flush cache

 81h	change options byte

 82h	shrink memory

 83h	expand memory

 84h	get dirty block information

 85h	reset write errors

 86h	reset counters

INT 21 4405


21 4405 Format of COMBI-disk command packet:

Copy to Main

Table 0759

Format of COMBI-disk command packet:

Offset	Size	Description

 00h	WORD	version

 02h	BYTE	command code (see #0758)

---command code 80h---

 no additional fields

---command code 81h---

 03h	BYTE	new options byte (see #0760)

---command code 82h---

 03h	WORD	number of KB to release

---command code 83h---

 03h	WORD	number of KB to expand

---command code 84h---

 03h	DWORD	-> buffer for block info (see #0761)

---command code 85h---

 03h	DWORD	block ID

---command code 86h---

 03h	BYTE	which counters to reset

bit 0: hard disk read counts

bit 1: hard disk write counts

bit 2: RAM disk read/write counts

Note:	multiple commands may be placed in a single packet by stringing

  together as many command/argument pairs as desired

INT 21 4405


21 4405 Bitfields for COMBI-disk options byte:

Copy to Main

Table 0760

Bitfields for COMBI-disk options byte:

Bit(s)	Description

 0	cache off

 1	cache frozen

 2	write caching enabled

 3	delayed writing disabled

 5	fix memory allocation (no XMS lending)

 6	no 'sector not found' error

INT 21 4405


21 4405 Format of COMBI-disk block info:

Copy to Main

Table 0761

Format of COMBI-disk block info:

Offset	Size	Description

 00h	DWORD	block ID

 04h	BYTE	bitmask of valid sectors in block

 05h	BYTE	bitmask of dirty sectors in block

 06h	BYTE	last error returned by BIOS

 07h	BYTE	number of errors

INT 21 4405


21 4405 Values for SFS control function:

Copy to Main

Table 0762

Values for SFS control function:

 00h	"PACKET_SET_DISKINFO"	 set disk parameters

 01h	"PACKET_SET_KEYINFO"	 set keying information

 02h	"PACKET_SET_READONLY"	 select read/write or read-only

 03h	"PACKET_SET_DRIVENO"	 set drive number to mount

 04h	"PACKET_SET_MOUNTSTATUS" set mount status

 05h	"PACKET_SET_UNMOUNT"	 set/clear quick-unmount hotkey

 06h	"PACKET_SET_TIMEOUT"	 set/clear auto-unmount timeout

INT 21 4405


21 4405 Format of SFS control data packet:

Copy to Main

Table 0763

Format of SFS control data packet:

Offset	Size	Description

 00h	WORD	signature 4330h ('C0')

 02h	WORD	function (see #0762)

---function 00h---

 04h	WORD	sector size in bytes

 06h	BYTE	sectors per cluster

 07h	WORD	number of boot sectors

 09h	BYTE	number of copies of FAT

 0Ah	WORD	size of root directory in entries

 0Ch	WORD	number of sectors on disk, 16-bit

 0Eh	BYTE	media descriptor byte

 0Fh	WORD	sectors per FAT

 11h	WORD	sectors per track

 13h	WORD	number of heads

 15h	DWORD	number of hidden sectors

 19h	DWORD	number of sectors on disk, 32-bit

---function 01h---

 04h 20 BYTEs	master IV for encrypted disk

 18h 64 BYTEs	NDC/SHS keying information

---function 02h---

 04h	WORD	read-only state: 00h read-only, 01h read/write

---function 03h---

 04h	WORD	drive number (see #0764)

 06h	DWORD	sector offset of logical volume from start of physical volume

0 if logical volume = physical volume

---function 04h---

 04h	WORD	mount status (00h unmounted, 01h mounted)

---function 05h---

 04h	WORD	hotkey (high byte = shift state, low byte = scan code or 00h)

0000h to disable hotkey

---function 06h---

 04h	WORD	timeout in minutes before automatic unmount

0000h to disable auto-unmount

Notes:	the data for function 00h corresponds to a DOS BPB (see AH=53h)

functions 00h, 01h, and 03h automatically unmount the encrypted drive

unmounting a drive with function 04h also destroys the encryption

  information in the driver and forces all dirty buffers to be flushed

INT 21 4405


21 4405 Bitfields for SFS drive number:

Copy to Main

Table 0764

Bitfields for SFS drive number:

Bit(s)	Description

 15-12	drive access mode

0000 BIOS access

0001 direct IDE access

0010 direct SCSI access

---if BIOS access---

 11-8	unused (0)

 7-0	BIOS drive number

---if IDE access---

 11-8	unused (0)

 7-0	IDE drive number

---if SCSI access---

 11-8	SCSI host number

 7-4	SCSI target ID

 3-0	SCSI logical unit number

INT 21 4405


21 440C Values for IOCTL category code:

Copy to Main

Table 0765

Values for IOCTL category code:

 00h	unknown (DOS 3.3+)

 01h	COMn: (DOS 3.3+)

 03h	CON (DOS 3.3+)

 05h	LPTn:

 9Eh	Media Access Control driver (STARLITE)

 00h-7Fh reserved for Microsoft

 80h-FFh reserved for OEM/user-defined

INT 21 440C


21 440C Values for generic character IOCTL function:

Copy to Main

Table 0766

Values for generic character IOCTL function:

 00h	MAC driver Bind (STARLITE) (see #0767)

 45h	set iteration (retry) count (see #0768)

 4Ah	select code page (see #0769)

 4Ch	start code-page preparation (see #0770)

 4Dh	end code-page preparation (see #0771)

 5Fh	set display information (DOS 4.0+) (see #0772)

 65h	get iteration (retry) count

 6Ah	query selected code page (see #0769)

 6Bh	query prepare list (see #0773)

 7Fh	get display information (DOS 4.0+) (see #0772)

Note:	bit assignments for function code:

    bit 7: set to ignore if unsupported, clear to return error

    bit 6: set if passed to driver, clear if intercepted by DOS

    bit 5: set if queries data from device, clear if sends command

    bits 4-0: subfunction

INT 21 440C


21 440C Format of parameter block for function 00h:

Copy to Main

Table 0767

Format of parameter block for function 00h:

Offset	Size	Description

 00h  8 BYTEs	ASCIZ signature "STARMAC"

 08h	WORD	version

 0Ah	WORD	flags

bit 0: media requires connect or listen request before use

bit 1: network is a LAN (broadcast/multicast supported)

bit 2: point-to-point network

 0Ch	WORD	handle for use with MAC driver's private interface (filled in

by MAC driver)

 0Eh	WORD	context

 10h	WORD	approximate speed in KB/sec (filled in by MAC driver)

 12h	WORD	approximate cost in cents per hour (filled in by MAC driver)

 14h	WORD	maximum packet size in bytes (filled in by MAC driver)

 16h	WORD	addressing format (filled in by MAC driver)

0000h general addressing

0001h Ethernet addressing

0002h Token Ring addressing

0003h Token Bus addressing

 18h	DWORD	Send entry point (filled in by MAC driver)

 1Ch	DWORD	RegisterEventHandler entry point (filled in by MAC driver)

 20h	DWORD	SetPacketFilter entry point (filled in by MAC driver)

 24h	DWORD	UnBind entry point (filled in by MAC driver)

INT 21 440C


21 440C Format of parameter block for function 45h:

Copy to Main

Table 0768

Format of parameter block for function 45h:

Offset	Size	Description

 00h	WORD	number of times output is attempted before driver assumes

  device is busy

INT 21 440C


21 440C Format of parameter block for functions 4Ah and 6Ah:

Copy to Main

Table 0769

Format of parameter block for functions 4Ah and 6Ah:

Offset	Size	Description

 00h	WORD	length of data

 02h	WORD	code page ID

 04h 2N BYTEs	DCBS (double byte character set) lead byte range

  start/end for each of N ranges (DOS 4.0)

WORD	0000h  end of data (DOS 4.0)

INT 21 440C


21 440C Format of parameter block for function 4Ch:

Copy to Main

Table 0770

Format of parameter block for function 4Ch:

Offset	Size	Description

 00h	WORD	flags

DISPLAY.SYS = 0000h

PRINTER.SYS bit 0 clear to prepare downloaded font, set to

prepare cartridge selection

 02h	WORD	length of remainder of parameter block

 04h	WORD	number of code pages following

 06h  N WORDs	code page 1,...,N

INT 21 440C


21 440C Format of parameter block for function 4Dh:

Copy to Main

Table 0771

Format of parameter block for function 4Dh:

Offset	Size	Description

 00h	WORD	length of data

 02h	WORD	code page ID

INT 21 440C


21 440C Format of parameter block for functions 5Fh and 7Fh:

Copy to Main

Table 0772

Format of parameter block for functions 5Fh and 7Fh:

Offset	Size	Description

 00h	BYTE	level (0 for DOS 4.x-6.0)

 01h	BYTE	reserved (0)

 02h	WORD	length of following data (14)

 04h	WORD	control flags

bit 0 set for blink, clear for intensity

bits 1-15 reserved

 06h	BYTE	mode type (1=text, 2=graphics)

 07h	BYTE	reserved (0)

 08h	WORD	colors

0000h = monochrome

else N bits per pixel

 0Ah	WORD	pixel columns

 0Ch	WORD	pixel rows

 0Eh	WORD	character columns

 10h	WORD	character rows

INT 21 440C


21 440C Format of parameter block for function 6Bh:

Copy to Main

Table 0773

Format of parameter block for function 6Bh:

Offset	Size	Description

 00h	WORD	length of following data

 02h	WORD	number of hardware code pages

 04h  N WORDs	hardware code pages 1,...,N

WORD	number of prepared code pages

      N WORDs	prepared code pages 1,...,N

INT 21 440C


21 440C Format of ASPITAPE.SYS mtop parameter block:

Copy to Main

Table 0774

Format of ASPITAPE.SYS mtop parameter block:

Offset	Size	Description

 00h	WORD	operation code

00h "MTWEOF" - write an end-of-file record

01h "MTFSF" - forward space file

02h "MTBSF" - backward space file

03h "MTFSR" - forward space record

04h "MTBSR" - backward space record

05h "MTREW" - rewind

06h "MTOFFL" - rewind and unload

07h "MTNOP" - perform TEST UNIT READY

 02h	DWORD	repetition count

INT 21 440C


21 440C Format of ASPITAPE.SYS mtget parameter block:

Copy to Main

Table 0775

Format of ASPITAPE.SYS mtget parameter block:

Offset	Size	Description

 00h	BYTE	ASPI host ID

 01h	BYTE	SCSI target ID

 02h	BYTE	SCSI logical unit number

 03h	BYTE	device parameters

bit 0: drive must use fixed-block read and write

bit 7: drive is an ASPI device

 04h	BYTE	current device state (see #0776)

 05h	BYTE	unit number within driver

 06h	WORD	fixed block blocksize

 08h	BYTE	last SCSI status

 09h	BYTE	last SCSI sense key

 0Ah	WORD	last SCSI opcode (packed) (see #0777)

 0Ch	WORD	residual bytes from SCSI opcode

INT 21 440C


21 440C Bitfields for ASPITAPE.SYS current device state:

Copy to Main

Table 0776

Bitfields for ASPITAPE.SYS current device state:

Bit(s)	Description

 0	device currently opened in buffered mode

 1	drive currently opened in nonbuffered mode

 2	rewind drive on last close

 3	drive has been written on

 4	drive has been read from

 5	next read will return 0 bytes

 6	EOM will resemble EOF

 7	drive may be busy rewinding

INT 21 440C


21 440C Bitfields for SCSI opcode:

Copy to Main

Table 0777

Bitfields for SCSI opcode:

Bit(s)	Description

 0-7	SCSI operation (SCSI packet byte 0)

 8-10	SCSI flags (SCSI packet byte 1)

 11-12	ASPI "Direction Bits" (ASPI SRB byte 3)

INT 21 440C


21 440D Values for block device IOCTL category code:

Copy to Main

Table 0778

Values for block device IOCTL category code:

 08h	disk drive

 00h-7Fh reserved for Microsoft

 80h-FFh reserved for OEM/user-defined

INT 21 440D


21 440D Values for generic block IOCTL minor code:

Copy to Main

Table 0779

Values for generic block IOCTL minor code:

 00h	(OS/2)	\ used to lock/unlock a drive

 01h	(OS/2)	/

 40h	set device parameters (see #0780)

 41h	write logical device track (see #0782)

 42h	format and verify logical device track (see #0783)

 46h	(DOS 4.0+) set volume serial number (see #0785,AH=69h)

 47h	(DOS 4.0+) set access flag (see #0786)

 48h	(Enh. Disk Drive Spec) set media lock state (see #0787,INT 13/AH=45h)

 49h	(Enh. Disk Drive Spec) eject media in drive (see INT 13/AH=49h)

 50h	(PCMCIA) attribute memory write

 51h	(PCMCIA) common memory write

 52h	(PCMCIA) force media change (DOS 5+ ???) (see #0788)

 53h	(PCMCIA) erase drive

 54h	(PCMCIA) erase media

 56h	(PCMCIA) set erase status callback

 57h	(PCMCIA) append Card Information Structure (CIS) tuple

 58h	(PCMCIA) erase CIS tuples

 60h	get device parameters (see #0780)

 61h	read logical device track (see #0782)

 62h	verify logical device track (see #0784)

 66h	(DOS 4.0+) get volume serial number (see #0785,AH=69h)

 67h	(DOS 4.0+) get access flag (see #0786)

 68h	(DOS 5.0+) sense media type (see #0789)

 70h	(PCMCIA) attribute memory read

 73h	(PCMCIA) get memory media information (DOS 5+ ???) (see #0790)

 76h	(PCMCIA) get erase status callback

 77h	(PCMCIA) get first Card Information Structure (CIS) tuple

 78h	(PCMCIA) get next CIS tuple

 7Fh	(PCMCIA) get ??? information (see #0791,#0792)

INT 21 440D


21 440D Format of parameter block for functions 40h, 60h:

Copy to Main

Table 0780

Format of parameter block for functions 40h, 60h:

Offset	Size	Description

 00h	BYTE	special functions

bit 0 set if function to use current BPB, clear if Device

  BIOS Parameter Block field contains new default BPB

bit 1 set if function to use track layout fields only

must be clear if CL=60h

bit 2 set if all sectors in track same size (should be set)

bits 3-7 reserved

 01h	BYTE	device type (see #0781)

 02h	WORD	device attributes

bit 0 set if nonremovable medium

bit 1 set if door lock ("changeline") supported

bits 2-15 reserved

 04h	WORD	number of cylinders

 06h	BYTE	media type

for 1.2M drive

    00h 1.2M disk (default)

    01h 320K/360K disk

F8h for DUBLDISK.SYS v2.6 expanded drives

always 00h for other drive types

 07h 31 BYTEs	device BPB (see #0875 at AH=53h), bytes after BPB offset 1Eh

  omitted

---function 40h only---

 26h	WORD	number of sectors per track (start of track layout field)

(maximum 63)

 28h  N word pairs: number,size of each sector in track

INT 21 440D


21 440D Values for device type:

Copy to Main

Table 0781

Values for device type:

 00h	320K/360K disk

 01h	1.2M disk

 02h	720K disk

 03h	single-density 8-inch disk

 04h	double-density 8-inch disk

 05h	fixed disk

 06h	tape drive

 07h	(DOS 3.3+) other type of block device, normally 1.44M floppy

 08h	read/write optical disk

 09h	(DOS 5+) 2.88M floppy

INT 21 440D


21 440D Format of parameter block for functions 41h, 61h:

Copy to Main

Table 0782

Format of parameter block for functions 41h, 61h:

Offset	Size	Description

 00h	BYTE	special functions (reserved, must be zero)

 01h	WORD	number of disk head

 03h	WORD	number of disk cylinder

 05h	WORD	number of first sector to read/write

 07h	WORD	number of sectors

 09h	DWORD	transfer address

INT 21 440D


21 440D Format of parameter block for function 42h:

Copy to Main

Table 0783

Format of parameter block for function 42h:

Offset	Size	Description

 00h	BYTE	reserved, must be zero (DOS <3.2)

  bit 0=0: format/verify track

1: format status call (DOS 3.2+), don't actually format

  bits 1-7 reserved, must be zero

value on return (DOS 3.3+):

  00h	specified tracks, sectors/track supported by BIOS

  01h	function not supported by BIOS

  02h	specified tracks, sectors/track not allowed for drive

  03h	no disk in drive

 01h	WORD	number of disk head

 03h	WORD	number of disk cylinder

INT 21 440D


21 440D Format of parameter block for function 62h:

Copy to Main

Table 0784

Format of parameter block for function 62h:

Offset	Size	Description

 00h	BYTE	reserved, must be zero (DOS <3.2)

  bit 0=0: verify single track

1: verify multiple tracks

  bits 1-7 reserved, must be zero

value on return (DOS 3.3+):

  00h	specified tracks, sectors/track supported by BIOS

  01h	function not supported by BIOS

  02h	specified tracks, sectors/track not allowed for drive

  03h	no disk in drive

 01h	WORD	number of disk head

 03h	WORD	number of disk cylinder

 05h	WORD	number of tracks to verify (equivalent to 255 or fewer sectors)

INT 21 440D


21 440D Format of parameter block for functions 46h, 66h:

Copy to Main

Table 0785

Format of parameter block for functions 46h, 66h:

Offset	Size	Description

 00h	WORD	(call) info level (should be 0000h)

 02h	DWORD	disk serial number (binary)

 06h 11 BYTEs	volume label or "NO NAME    "

 11h  8 BYTEs	filesystem type "FAT12	 " or "FAT16   " (CL=66h only)

INT 21 440D


21 440D Format of parameter block for functions 47h, 67h:

Copy to Main

Table 0786

Format of parameter block for functions 47h, 67h:

Offset	Size	Description

 00h	BYTE	special-function field (must be zero)

 01h	BYTE	disk-access flag, nonzero if access allowed by driver

INT 21 440D


21 440D Format of parameter block for function 48h:

Copy to Main

Table 0787

Format of parameter block for function 48h:

Offset	Size	Description

 00h	BYTE	(call) locking operation

00h lock media in drive

01h unlock media

02h get locking status

 01h	BYTE	(ret) drive's lock status

INT 21 440D


21 440D Format of parameter block for function 52h:

Copy to Main

Table 0788

Format of parameter block for function 52h:

 00h	BYTE	(call) unused???

(ret) 00h if flash/ATA drive but no card inserted

unchanged otherwise

Notes:	the absense of a flash card should be tested by checking the DOS error

  code rather than the returned byte

the parameter byte is cleared to 00h erroneously by the Award

  PCDISK.EXE v1.02c PCMCIA/ATA driver if no ATA card is inserted

  (bug corrected in PCDISK.EXE v1.02h and later)

not supported by the SystemSoft ATADRV.EXE and the Phoenix PCMATA.SYS

  PCMCIA/ATA drivers

INT 21 440D


21 440D Format of parameter block for function 68h:

Copy to Main

Table 0789

Format of parameter block for function 68h:

Offset	Size	Description

 00h	BYTE	01h for default media type, 00h for any other media type

(see also INT 13/AH=20h"Compaq")

 01h	BYTE	02h for 720K, 07h for 1.44M, 09h for 2.88M

INT 21 440D


21 440D Format of parameter block for function 73h:

Copy to Main

Table 0790

Format of parameter block for function 73h:

Offset	Size	Description

 00h	BYTE	???

00h ATA card inserted ???

80h ATA card not inserted ???

 01h	BYTE	length of parameter block ???

apparently always 40h

 02h	BYTE	???

00h ATA card not inserted ???

0Dh ATA card inserted ???

 03h  2 BYTEs	??? (apparently always 00h)

 05h	BYTE	drive number (0=first) ???

 06h	BYTE	total number of drives ???

 07h	BYTE	???

00h ATA card not inserted ???

01h ATA card inserted ???

 08h 17 BYTEs	???

 19h	BYTE	???

00h ATA card not inserted ???

01h ATA card inserted ???

 1Ah	BYTE	??? (apparently always 01h)

 1Bh	BYTE	???

00h ATA card not inserted ???

01h ATA card inserted ???

 1Ch  2 BYTEs	??? (apparently always 0015h)

 1Eh  2 BYTEs	???

 20h  2 BYTEs	??? (apparently always 0110h)

 22h 15 BYTEs	???

 31h  2 BYTEs	??? (apparently always 7000h)

 33h 11 BYTEs	driver signature

"AWARD PDISK" for Award PCDISK.EXE PCMCIA/ATA driver

"MS-BIOS    " for HP 200LX generic ATA driver

 3Eh  2 BYTEs	???

Notes:	parameter structure possibly depends on driver

this function is not supported by the SystemSoft ATADRV.EXE and the

  Phoenix PCMATA.SYS PCMCIA/ATA drivers

INT 21 440D


21 440D Format of parameter block for function 7Fh for SystemSoft ATADRV.EXE:

Copy to Main

Table 0791

Format of parameter block for function 7Fh for SystemSoft ATADRV.EXE:

Offset	Size	Description

 00h	DWORD	-> unknown location within driver

Note:	function supported by the SystemSoft ATADRV.EXE PCMCIA/ATA driver

  but not by the Award PCDISK.EXE PCMCIA/ATA driver

SeeAlso: #0792

INT 21 440D


21 440D Format of parameter block for function 7Fh for Phoenix PCMATA.SYS:

Copy to Main

Table 0792

Format of parameter block for function 7Fh for Phoenix PCMATA.SYS:

Offset	Size	Description

 00h  8 BYTEs	???

Note:	this function supported by the Phoenix PCMATA.SYS PCMCIA/ATA driver

  but not by the Award PCDISK.EXE PCMCIA/ATA driver

SeeAlso: #0791

INT 21 440D


21 4451 Values for Digital Research operating system version ID:

Copy to Main

Table 0793

Values for Digital Research operating system version ID:

 32h	Concurrent PC DOS 3.2

 41h	Concurrent DOS 4.1

 50h	Concurrent DOS/XM 5.0 or Concurrent DOS/386 1.1

 60h	Concurrent DOS/XM 6.0 or Concurrent DOS/386 2.0

 62h	Concurrent DOS/XM 6.2 or Concurrent DOS/386 3.0

 66h	DR Multiuser DOS 5.1

 67h	Concurrent DOS 5.1

INT 21 4451


21 4452 Values for Digital Research operating system version ID:

Copy to Main

Table 0794

Values for Digital Research operating system version ID:

 60h	DOS Plus

 63h	DR-DOS 3.41

 64h	DR-DOS 3.42

 65h	DR-DOS 5.00

 67h	DR-DOS 6.00

 70h	PalmDOS

 71h	DR-DOS 6.0 March 1993 "business update"

 72h	Novell DOS 7.0

INT 21 4452


21 4456 Bitfields for control flags:

Copy to Main

Table 0795

Bitfields for control flags:

Bit(s)	Description

 0	whose buffer: 0=application, 1=COMMAND.COM

---Novell DOS 7---

 1	toggle HISTORY usage

 2	toggle INSERT state

Note:	only one bit at a time may be used

INT 21 4456


21 4456 Bitfields for state flags:

Copy to Main

Table 0796

Bitfields for state flags:

Bit(s)	Description

 0	HISTORY buffer enabled

 1	INSERT enabled

 2-5	unused

 7	whose buffer: 0=application, 1=COMMAND.COM

INT 21 4456


21 4458 Format of DR-DOS 5.0-6.0 internal variable table:

Copy to Main

Table 0797

Format of DR-DOS 5.0-6.0 internal variable table:

Offset	Size	Description

 00h	WORD	???

 02h	WORD	segment of ???

 04h	WORD	offset within DOS data segment of history control structure

  for COMMAND.COM history buffer (see #0799)

 06h	WORD	offset within DOS data segment of history control structure

  for application history buffer (see #0799)

 08h	BYTE	initial history state flags (see #0796)

 09h  2 BYTEs	???

 0Bh	WORD	KB of extended memory at startup

 0Dh	BYTE	number of far jump entry points

 0Eh	WORD	segment containing far jumps to DR-DOS entry points (see #0800)

 10h	WORD	(only if kernel loaded in HMA) offset in HMA of first free HMA

  memory block (see #0801) or 0000h if none; segment is FFFFh

 12h	WORD	pointer to segment of environment variables set in CONFIG,

  or 0000h if already used

---DR-DOS 6.0---

 14h	WORD	(only if kernel loaded in HMA) offset in HMA of first used HMA

memory block (see #0801) or 0000h if none; segment is FFFFh

 16h  8 BYTEs	???

 1Eh	WORD	offset in DOS data segment of full COUNTRY.SYS filename

 20h  8 BYTEs	???

 28h	WORD	offset in DOS data segment of SHARE hook table

 2Ah  2 BYTEs	???

 2Ch	WORD	offset in DOS data segment of far pointer to INT 2F/AX=1000h

  handler

Note:	the segment used for the DR-DOS 6.0 CONFIG environment variables

  (excluding COMSPEC, VER and OS) is only useful for programs/drivers

  called from CONFIG.SYS. The word is set to zero later when the area

  is copied to the COMMAND.COM environment space.  This allows

  CONFIG.SYS to pass information to AUTOEXEC.BAT.

INT 21 4458


21 4458 Format of Novell DOS 7 internal variable table:

Copy to Main

Table 0798

Format of Novell DOS 7 internal variable table:

Offset	Size	Description

 00h	???

 1Eh	WORD	offset of COUNTRY.SYS filename

 42h 16 DWORDs	pointers to ??? entry points

???

INT 21 4458


21 4458 Format of history control structure:

Copy to Main

Table 0799

Format of history control structure:

Offset	Size	Description

 00h	WORD	segment of buffer

 02h	WORD	size of buffer in bytes

 04h	WORD	???

INT 21 4458


21 4458 Format of kernel entry jump table for DR-DOS 5.0-6.0:

Copy to Main

Table 0800

Format of kernel entry jump table for DR-DOS 5.0-6.0:

Offset	Size	Description

 00h  5 BYTEs	far jump to kernel entry point for CP/M CALL 5

 05h  5 BYTEs	far jump to kernel entry point for INT 20

 0Ah  5 BYTEs	far jump to kernel entry point for INT 21

 0Fh  5 BYTEs	far jump to kernel entry point for INT 22 (RETF)

 14h  5 BYTEs	far jump to kernel entry point for INT 23 (RETF)

 19h  5 BYTEs	far jump to kernel entry point for INT 24

 1Eh  5 BYTEs	far jump to kernel entry point for INT 25

 23h  5 BYTEs	far jump to kernel entry point for INT 26

 28h  5 BYTEs	far jump to kernel entry point for INT 27

 2Dh  5 BYTEs	far jump to kernel entry point for INT 28

 32h  5 BYTEs	far jump to kernel entry point for INT 2A (IRET)

 37h  5 BYTEs	far jump to kernel entry point for INT 2B (IRET)

 3Ch  5 BYTEs	far jump to kernel entry point for INT 2C (IRET)

 41h  5 BYTEs	far jump to kernel entry point for INT 2D (IRET)

 46h  5 BYTEs	far jump to kernel entry point for INT 2E (IRET)

 4Bh  5 BYTEs	far jump to kernel entry point for INT 2F

Notes:	all of these entry points are indirected through this jump table

  to allow the kernel to be relocated into high memory while leaving

  the actual entry addresses in low memory for maximum compatibility

some of these entry points (22h,23h,24h,2Eh,2Fh) are replaced as soon

  as COMMAND.COM is loaded, and return immediately to the caller, some

  returning an error code (the original handler for INT 2F returns

  AL=03h [fail]).

INT 21 4458


21 4458 Format of HMA Memory Block (DR-DOS 6.0 kernel loaded in HMA):

Copy to Main

Table 0801

Format of HMA Memory Block (DR-DOS 6.0 kernel loaded in HMA):

Offset	Size	Description

 00h	WORD	offset of next HMA Memory Block (0000h if last block)

 02h	WORD	size of this block in bytes (at least 10h)

 04h	BYTE	type of HMA Memory Block (interpreted by MEM)

00h system

01h KEYB

02h NLSFUNC

03h SHARE

04h TaskMAX

05h COMMAND

 05h	var	TSR (or system) code and data. DR-DOS TSR's, such as KEYB,

  hooks interrupts using segment FFFEh instead FFFFh.

INT 21 4458


21 44E0 Format of PC-NFS stack frame:

Copy to Main

Table 0802

Format of PC-NFS stack frame:

Offset	Size	Description

 00h	WORD	-> previous stack frame

 02h	DWORD	return address

INT 21 44E0


21 4B-- Format of EXEC parameter block for AL=00h,01h,04h:

Copy to Main

Table 0803

Format of EXEC parameter block for AL=00h,01h,04h:

Offset	Size	Description

 00h	WORD	segment of environment to copy for child process (copy caller's

  environment if 0000h)

 02h	DWORD	pointer to command tail to be copied into child's PSP

 06h	DWORD	pointer to first FCB to be copied into child's PSP

 0Ah	DWORD	pointer to second FCB to be copied into child's PSP

 0Eh	DWORD	(AL=01h) will hold subprogram's initial SS:SP on return

 12h	DWORD	(AL=01h) will hold entry point (CS:IP) on return

SeeAlso: #0804,#0805

INT 21 4B--


21 4B-- Format of EXEC parameter block for AL=03h:

Copy to Main

Table 0804

Format of EXEC parameter block for AL=03h:

Offset	Size	Description

 00h	WORD	segment at which to load overlay

 02h	WORD	relocation factor to apply to overlay if in .EXE format

SeeAlso: #0803,#0805

INT 21 4B--


21 4B-- Format of EXEC parameter block for FlashTek X-32:

Copy to Main

Table 0805

Format of EXEC parameter block for FlashTek X-32:

Offset	Size	Description

 00h	PWORD	48-bit far pointer to environment string

 06h	PWORD	48-bit far pointer to command tail string

SeeAlso: #0803,#0804

INT 21 4B--


21 4B-- Values for the executable types understood by various environments:

Copy to Main

Table 0806

Values for the executable types understood by various environments:

 MZ	old-style DOS executable (see #0807)

 NE	Windows or OS/2 1.x segmented ("new") executable (see #0809)

 LE	Windows virtual device driver (VxD) linear executable (see #0822)

 LX	variant of LE used in OS/2 2.x (see #0822)

 W3	Windows WIN386.EXE file; a collection of LE files

 PE	Win32 (Windows NT and Win32s) portable executable based on Unix COFF

 DL	HP 100LX/200LX system manager compliant executable (.EXM)

 MP	old PharLap .EXP (see #0832)

 P2	PharLap 286 .EXP (see #0833)

 P3	PharLap 386 .EXP (see #0833)

INT 21 4B--


21 4B-- Format of .EXE file header:

Copy to Main

Table 0807

Format of .EXE file header:

Offset	Size	Description

 00h  2 BYTEs	.EXE signature, either "MZ" or "ZM" (5A4Dh or 4D5Ah)

  (see also #0806)

 02h	WORD	number of bytes in last 512-byte page of executable

 04h	WORD	total number of 512-byte pages in executable (includes any

partial last page)

 06h	WORD	number of relocation entries

 08h	WORD	header size in paragraphs

 0Ah	WORD	minimum paragraphs of memory to allocation in addition to

executable's size

 0Ch	WORD	maximum paragraphs to allocate in addition to executable's size

 0Eh	WORD	initial SS relative to start of executable

 10h	WORD	initial SP

 12h	WORD	checksum (one's complement of sum of all words in executable)

 14h	DWORD	initial CS:IP relative to start of executable

 18h	WORD	offset within header of relocation table

40h or greater for new-format (NE,LE,LX,W3,PE,etc.) executable

 1Ah	WORD	overlay number (normally 0000h = main program)

---new executable---

 1Ch  4 BYTEs	???

 20h	WORD	behavior bits

 22h 26 BYTEs	reserved for additional behavior info

 3Ch	DWORD	offset of new executable (NE,LE,etc) header within disk file,

or 00000000h if plain MZ executable

---Borland TLINK---

 1Ch  2 BYTEs	??? (apparently always 01h 00h)

 1Eh	BYTE	signature FBh

 1Fh	BYTE	TLINK version (major in high nybble, minor in low nybble)

 20h  2 BYTEs	??? (v2.0 apparently always 72h 6Ah, v3.0+ seems always 6Ah 72h)

---ARJ self-extracting archive---

 1Ch  4 BYTEs	signature "RJSX" (older versions, new signature is "aRJsfX" in

the first 1000 bytes of the file)

---LZEXE 0.90 compressed executable---

 1Ch  4 BYTEs	signature "LZ09"

---LZEXE 0.91 compressed executable---

 1Ch  4 BYTEs	signature "LZ91"

---PKLITE compressed executable---

 1Ch	BYTE	minor version number

 1Dh	BYTE	bits 0-3: major version

bit 4: extra compression

bit 5: huge (multi-segment) file

 1Eh  6 BYTEs	signature "PKLITE" (followed by copyright message)

---LHarc 1.x self-extracting archive---

 1Ch  4 BYTEs	unused???

 20h  3 BYTEs	jump to start of extraction code

 23h  2 BYTEs	???

 25h 12 BYTEs	signature "LHarc's SFX "

---LHA 2.x self-extracting archive---

 1Ch  8 BYTEs	???

 24h 10 BYTEs	signature "LHa's SFX " (v2.10) or "LHA's SFX " (v2.13)

---TopSpeed C 3.0 CRUNCH compressed file---

 1Ch	DWORD	018A0001h

 20h	WORD	1565h

---PKARCK 3.5 self-extracting archive---

 1Ch	DWORD	00020001h

 20h	WORD	0700h

---BSA (Soviet archiver) self-extracting archive---

 1Ch	WORD	000Fh

 1Eh	BYTE	A7h

---LARC self-extracting archive---

 1Ch  4 BYTEs	???

 20h 11 BYTEs	"SFX by LARC "

---LH self-extracting archive---

 1Ch  8 BYTEs	???

 24h  8 BYTEs	"LH's SFX "

---other linkers---

 1Ch	var	optional information

---

  N   N DWORDs	relocation items

Notes:	if word at offset 02h is 4, it should be treated as 00h, since pre-1.10

  versions of the MS linker set it that way

if both minimum and maximum allocation (offset 0Ah/0Ch) are zero, the

  program is loaded as high in memory as possible (DOS only checks

  the maximum allocation, however)

the maximum allocation is set to FFFFh by default

additional data may be contained in the file beyond the end of the

  load image described by the .EXE header; this data may be overlays,

  the actual executable for newer-format executables, or debugging

  information (see #0813,#0837)

INT 21 4B--


21 4B-- Format of ROM Module Header:

Copy to Main

Table 0808

Format of ROM Module Header:

Offset	Size	Description

 00h  2 BYTEs	ROM signature 55h, AAh

 02h	BYTE	size of ROM in 512-byte blocks

 03h  3 BYTEs	POST initialization entry point (near JMP instruction)

 06h	ROM Program Name List [array]

Offset	Size	Description

 00h	BYTE	length of ROM program's name (00h if end of name list)

 01h  N BYTEs	program name

 N+1  3 BYTEs	program entry point (near JMP instruction)

INT 21 4B--


21 4B-- Format of new executable header:

Copy to Main

Table 0809

Format of new executable header:

Offset	Size	Description

 00h  2 BYTEs	"NE" (4Eh 45h) signature

 02h  2 BYTEs	linker version (major, then minor)

 04h	WORD	offset from start of this header to entry table (see #0816)

 06h	WORD	length of entry table in bytes

 08h	DWORD	file load CRC (0 in Borland's TPW)

 0Ch	BYTE	program flags (see #0810)

 0Dh	BYTE	application flags (see #0811)

 0Eh	WORD	auto data segment index

 10h	WORD	initial local heap size

 12h	WORD	initial stack size (added to data seg, 0000h if SS <> DS)

 14h	DWORD	program entry point (CS:IP), "CS" is index into segment table

 18h	DWORD	initial stack pointer (SS:SP), "SS" is segment index

if SS=automatic data segment and SP=0000h, the stack pointer is

  set to the top of the automatic data segment, just below the

  local heap

 1Ch	WORD	segment count

 1Eh	WORD	module reference count

 20h	WORD	length of nonresident names table in bytes

 22h	WORD	offset from start of this header to segment table (see #0814)

 24h	WORD	offset from start of this header to resource table

 26h	WORD	offset from start of this header to resident names table

 28h	WORD	offset from start of this header to module reference table

 2Ah	WORD	offset from start of this header to imported names table

(array of counted strings, terminated with a string of length

  00h)

 2Ch	DWORD	offset from start of file to nonresident names table

 30h	WORD	count of moveable entry point listed in entry table

 32h	WORD	file alignment size shift count

0 is equivalent to 9 (default 512-byte pages)

 34h	WORD	number of resource table entries

 36h	BYTE	target operating system

00h unknown

01h OS/2

02h Windows

03h European MS-DOS 4.x

04h Windows 386

05h BOSS (Borland Operating System Services)

81h PharLap 286|DOS-Extender, OS/2

82h PharLap 286|DOS-Extender, Windows

 37h	BYTE	other EXE flags (see #0812)

 38h	WORD	offset to return thunks or start of gangload area

 3Ah	WORD	offset to segment reference thunks or length of gangload area

 3Ch	WORD	minimum code swap area size

 3Eh  2 BYTEs	expected Windows version (minor version first)

Note:	this header is documented in detail in the Windows 3.1 SDK Programmer's

  Reference, Vol 4.

INT 21 4B--


21 4B-- Bitfields for new executable program flags:

Copy to Main

Table 0810

Bitfields for new executable program flags:

Bit(s)	Description

 0-1	DGROUP type

  0 = none

  1 = single shared

  2 = multiple (unshared)

  3 = (null)

 2	global initialization

 3	protected mode only

 4	8086 instructions

 5	80286 instructions

 6	80386 instructions

 7	80x87 instructions

INT 21 4B--


21 4B-- Bitfields for new executable application flags:

Copy to Main

Table 0811

Bitfields for new executable application flags:

Bit(s)	Description

 0-2	application type

001 full screen (not aware of Windows/P.M. API)

010 compatible with Windows/P.M. API

011 uses Windows/P.M. API

 3	is a Family Application (OS/2)

 5	0=executable, 1=errors in image

 6	non-conforming program (valid stack is not maintained)

 7	DLL or driver rather than application

(SS:SP info invalid, CS:IP points at FAR init routine called with

  AX=module handle which returns AX=0000h on failure, AX nonzero on

  successful initialization)

INT 21 4B--


21 4B-- Bitfields for other new .EXE flags:

Copy to Main

Table 0812

Bitfields for other new .EXE flags:

Bit(s)	Description

 0	supports long filenames

 1	2.X protected mode

 2	2.X proportional font

 3	gangload area

INT 21 4B--


21 4B-- Format of Codeview trailer (at end of executable):

Copy to Main

Table 0813

Format of Codeview trailer (at end of executable):

Offset	Size	Description

 00h	WORD	signature 4E42h ('NB')

 02h	WORD	Microsoft debug info version number

 04h	DWORD	Codeview header offset

SeeAlso: #0837

INT 21 4B--


21 4B-- Format of new executable segment table record:

Copy to Main

Table 0814

Format of new executable segment table record:

Offset	Size	Description

 00h	WORD	offset in file (shift left by alignment shift to get byte offs)

 02h	WORD	length of image in file (0000h = 64K)

 04h	WORD	segment attributes (see #0815)

 06h	WORD	number of bytes to allocate for segment (0000h = 64K)

Note:	the first segment table entry is entry number 1

SeeAlso: #0817

INT 21 4B--


21 4B-- Bitfields for segment attributes:

Copy to Main

Table 0815

Bitfields for segment attributes:

Bit(s)	Description

 0	data segment rather than code segment

 1	unused???

 2	real mode

 3	iterated

 4	movable

 5	sharable

 6	preloaded rather than demand-loaded

 7	execute-only (code) or read-only (data)

 8	relocations (directly following code for this segment)

 9	debug info present

 10,11	80286 DPL bits

 12	discardable

 13-15	discard priority

INT 21 4B--


21 4B-- Format of new executable entry table item (list):

Copy to Main

Table 0816

Format of new executable entry table item (list):

Offset	Size	Description

 00h	BYTE	number of entry points (00h if end of entry table list)

 01h	BYTE	segment number (00h if end of entry table list)

 02h 3N BYTEs	entry records

Offset	Size	Description

 00h	BYTE	flags

bit 0: exported

bit 1: single data

bits 2-7: unused???

 01h	WORD	offset within segment

INT 21 4B--


21 4B-- Format of new executable relocation data (immediately follows segment image):

Copy to Main

Table 0817

Format of new executable relocation data (immediately follows segment image):

Offset	Size	Description

 00h	WORD	number of relocation items

 02h 8N BYTEs	relocation items

Offset	Size	Description

 00h	BYTE	relocation type

00h LOBYTE

02h BASE

03h PTR

05h OFFS

0Bh PTR48

0Dh OFFS32

 01h	BYTE	flags

bit 2: additive

 02h	WORD	offset within segment

 04h	WORD	target address segment

 06h	WORD	target address offset

SeeAlso: #0814,#0818

INT 21 4B--


21 4B-- Format of new executable resource data:

Copy to Main

Table 0818

Format of new executable resource data:

Offset	Size	Description

 00h	WORD	alignment shift count for resource data

 02h  N RECORDs resources

Format of resource record:

Offset	Size	Description

 00h	WORD	type ID

0000h if end of resource records

>= 8000h if integer type

else offset from start of resource table to type string

 02h	WORD	number of resources of this type

 04h	DWORD	reserved for runtime use

 08h  N Resources (see #0819)

Note:	resource type and name strings are stored immediately following the

  resource table, and are not null-terminated

SeeAlso: #0819

INT 21 4B--


21 4B-- Format of new executable resource entry:

Copy to Main

Table 0819

Format of new executable resource entry:

Offset	Size	Description

 00h	WORD	offset in alignment units from start of file to contents of

the resource data

 02h	WORD	length of resource image in bytes

 04h	WORD	flags

bit 4: moveable

bit 5: shareable

bit 6: preloaded

 06h	WORD	resource ID

>= 8000h if integer resource

else offset from start of resource table to resource string

 08h	DWORD	reserved for runtime use

Notes:	resource type and name strings are stored immediately following the

  resource table, and are not null-terminated

strings are counted strings, with a string of length 0 indicating the

  end of the resource table

SeeAlso: #0818,#0820

INT 21 4B--


21 4B-- Format of new executable module reference table [one bundle of entries]:

Copy to Main

Table 0820

Format of new executable module reference table [one bundle of entries]:

Offset	Size	Description

 00h	BYTE	number of records in this bundle (00h if end of table)

 01h	BYTE	segment indicator

00h unused

FFh movable segment, segment number is in entry

else segment number of fixed segment

 02h  N RECORDs

Format of segment record

Offset	Size	Description

 00h	BYTE	flags

bit 0: entry is exported

bit 1: entry uses global (shared) data

bits 7-3: number of parameter words

---fixed segment---

 01h	WORD	offset

---moveable segment---

 01h  2 BYTEs	INT 3F instruction (CDh 3Fh)

 03h	BYTE	segment number

 05h	WORD	offset

Note:	table entries are numbered starting from 1

SeeAlso: #0821

INT 21 4B--


21 4B-- Format of new executable resident/nonresident name table entry:

Copy to Main

Table 0821

Format of new executable resident/nonresident name table entry:

Offset	Size	Description

 00h	BYTE	length of string (00h if end of table)

 01h  N BYTEs	ASCII text of string

 N+1	WORD	ordinal number (index into entry table)

Notes:	the first string in the resident name table is the module name; the

  first entry in the nonresident name table is the module description

the strings are case-sensitive; if the executable was linked with

  /IGNORECASE, all strings are in uppercase

SeeAlso: #0820

INT 21 4B--


21 4B-- Format of Linear Executable (enhanced mode executable) header:

Copy to Main

Table 0822

Format of Linear Executable (enhanced mode executable) header:

Offset	Size	Description

 00h  2 BYTEs	"LE" (4Ch 45h) signature (Windows)

"LX" (4Ch 58h) signature (OS/2)

 02h	BYTE	byte order (00h = little-endian, nonzero = big-endian)

 03h	BYTE	word order (00h = little-endian, nonzero = big-endian)

 04h	DWORD	executable format level

 08h	WORD	CPU type (see also INT 15/AH=C9h)

01h Intel 80286 or upwardly compatible

02h Intel 80386 or upwardly compatible

03h Intel 80486 or upwardly compatible

04h Intel Pentium (80586) or upwardly compatible

20h Intel i860 (N10) or compatible

21h Intel "N11" or compatible

40h MIPS Mark I (R2000, R3000) or compatible

41h MIPS Mark II (R6000) or compatible

42h MIPS Mark III (R4000) or compatible

 0Ah	WORD	target operating system

01h OS/2

02h Windows

03h European DOS 4.0

04h Windows 386

 0Ch	DWORD	module version

 10h	DWORD	module type (see #0823)

 14h	DWORD	number of memory pages

 18h	Initial CS:EIP

DWORD	object number

DWORD	offset

 20h	Initial SS:ESP

DWORD	object number

DWORD	offset

 28h	DWORD	memory page size

 2Ch	DWORD	(Windows LE) bytes on last page

(OS/2 LX) page offset shift count

 30h	DWORD	fixup section size

 34h	DWORD	fixup section checksum

 38h	DWORD	loader section size

 3Ch	DWORD	loader section checksum

 40h	DWORD	offset of object table (see #0824)

 44h	DWORD	object table entries

 48h	DWORD	object page map table offset (see #0826)

 4Ch	DWORD	object iterate data map offset

 50h	DWORD	resource table offset

 54h	DWORD	resource table entries

 58h	DWORD	resident names table offset (see #0827)

 5Ch	DWORD	entry table offset (see #0828,#0829)

 60h	DWORD	module directives table offset

 64h	DWORD	Module Directives entries

 68h	DWORD	Fixup page table offset

 6Ch	DWORD	Fixup record table offset (see #0831)

 70h	DWORD	imported modules name table offset

 74h	DWORD	imported modules count

 78h	DWORD	imported procedures name table offset

 7Ch	DWORD	per-page checksum table offset

 80h	DWORD	data pages offset

 84h	DWORD	preload page count

 88h	DWORD	non-resident names table offset

 8Ch	DWORD	non-resident names table length

 90h	DWORD	non-resident names checksum

 94h	DWORD	automatic data object

 98h	DWORD	debug information offset

 9Ch	DWORD	debug information length

 A0h	DWORD	preload instance pages number

 A4h	DWORD	demand instance pages number

 A8h	DWORD	extra heap allocation

 ACh 12 BYTEs	reserved

 B8h	DWORD	offset of VERSIONINFO resource (MS-Windows VxD only)

 BCh	DWORD	pointer to ??? (dynamically-loadable VxDs only???)

 C0h	WORD	device ID (MS-Windows VxD only)

 C2h	WORD	DDK version (MS-Windows VxD only)

Note:	used by EMM386.EXE, QEMM, and Windows 3.0 Enhanced Mode drivers

INT 21 4B--


21 4B-- Bitfields for Linear Executable module type:

Copy to Main

Table 0823

Bitfields for Linear Executable module type:

Bit(s)	Description

 2	initialization (only for DLLs) 0 = global, 1 = per-process

 4	no internal fixups in executable image

 5	no external fixups in executable image

 8-10	API compatibility

0 = unknown

1 = incompatible with PM windowing \

2 = compatible with PM windowing    > (only for

3 = uses PM windowing API	   /	programs)

 13	module not loadable (only for programs)

 15-17	module type

000 program

001 library (DLL)

011 protected memory library module

100 physical device driver

110 virtual device driver

 30	per-process library termination

(requires valid CS:EIP, can't be set for .EXE)

INT 21 4B--


21 4B-- Format of object table entry:

Copy to Main

Table 0824

Format of object table entry:

Offset	Size	Description

 00h	DWORD	virtual size in bytes

 04h	DWORD	relocation base address

 08h	DWORD	object flags (see #0825)

 0Ch	DWORD	page map index

 10h	DWORD	page map entries (see #0826)

 14h  4 BYTEs	reserved??? (apparently always zeros)

INT 21 4B--


21 4B-- Bitfields for object flags:

Copy to Main

Table 0825

Bitfields for object flags:

Bit(s)	Description

 0	readable

 1	writable

 2	executable

 3	resource

 4	discardable

 5	shared

 6	preloaded

 7	invalid

 8-9	type

00 normal

01 zero-filled

10 resident

11 resident and contiguous

 10	resident and long-lockable

 11	reserved

 12	16:16 alias required

 13	"BIG" (Huge: 32-bit)

 14	conforming

 15	"OBJECT_I/O_PRIVILEGE_LEVEL"

 16-31	reserved

INT 21 4B--


21 4B-- Format of object page map table entry:

Copy to Main

Table 0826

Format of object page map table entry:

Offset	Size	Description

 00h	BYTE	??? (usually 00h)

 01h	WORD	(big-endian) index to fixup table

0000h if no relocation info

 03h	BYTE	type (00h hard copy in file, 03h some relocation needed)

INT 21 4B--


21 4B-- Format of resident names table entry:

Copy to Main

Table 0827

Format of resident names table entry:

Offset	Size	Description

 00h	BYTE	length of name

 01h  N BYTEs	name

 N+1  3 BYTEs	???

INT 21 4B--


21 4B-- Format of LE linear executable entry table:

Copy to Main

Table 0828

Format of LE linear executable entry table:

Offset	Size	Description

 00h	BYTE	number of entries in table

 01h 10 BYTEs per entry

Offset	Size	Description

 00h	BYTE	bit flags

bit 0: non-empty bundle

bit 1: 32-bit entry

 01h	WORD	object number

 03h	BYTE	entry type flags

bit 0: exported

bit 1: uses single data rather than instance

bit 2: reserved

bits 3-7: number of stack parameters

 04h	DWORD	offset of entry point

 08h  2 BYTEs	???

Note:	empty bundles (bit flags at 00h = 00h) are used to skip unused indices,

  and do not contain the remaining nine bytes

INT 21 4B--


21 4B-- Format of LX linear executable entry table [array]:

Copy to Main

Table 0829

Format of LX linear executable entry table [array]:

Offset	Size	Description

 00h	BYTE	number of bundles following (00h = end of entry table)

 01h	BYTE	bundle type

00h empty

01h 16-bit entry

02h 286 callgate entry

03h 32-bit entry

04h forwarder entry

bit 7 set if additional parameter typing information is present

---bundle type 00h---

 no additional fields

---bundle type 01h---

 02h	WORD	object number

 04h	BYTE	entry flags

bit 0: exported

bits 7-3: number of stack parameters

 05h	WORD	offset of entry point in object (shifted by page size shift)

---bundle type 02h---

 02h	WORD	object number

 04h	BYTE	entry flags

bit 0: exported

bits 7-3: number of stack parameters

 05h	WORD	offset of entry point in object

 07h	WORD	reserved for callgate selector (used by loader)

---bundle type 03h---

 02h	WORD	object number

 04h	BYTE	entry flags

bit 0: exported

bits 7-3: number of stack parameters

 05h	DWORD	offset of entry point in object

---bundle type 04h---

 02h	WORD	reserved

 04h	BYTE	forwarder flags

bit 0: import by ordinal

bits 7-1 reserved

 05h	WORD	module ordinal

(forwarder's index into Import Module Name table)

 07h	DWORD	procedure name offset or import ordinal number

Note:	all fields after the first two bytes are repeated N times

INT 21 4B--


21 4B-- Bitfields for linear executable fixup type:

Copy to Main

Table 0830

Bitfields for linear executable fixup type:

Bit(s)	Description

 7	ordinal is BYTE rather than WORD

 6	16-rather than 8-object number/module ordinal

 5	addition with DWORD rather than WORD

 4	relocation info has size with new two bytes at end

 3	reserved (0)

 2	set if add to destination, clear to replace destination

 1-0	type

00 internal fixup

01 external fixup, imported by ordinal

10 external fixup, imported by name

11 internal fixup via entry table

INT 21 4B--


21 4B-- Format of linear executable fixup record:

Copy to Main

Table 0831

Format of linear executable fixup record:

Offset	Size	Description

 00h	BYTE	type

bits 7-4: modifier (0001 single, 0011 multiple)

bits 3-0: type

0000 byte offset

0010 word segment

0011 16-bit far pointer (DWORD)

0101 16-bit offset

0110 32-bit far pointer (PWORD)

0111 32-bit offset

1000 near call or jump, WORD/DWORD based on seg attrib

 01h	BYTE	linear executable fixup type (see #0830)

---if single type---

 02h	WORD	offset within page

 04h	relocation information

---internal fixup---

BYTE	object number

---external,ordinal---

BYTE	one-based module number in Import Module table

BYTE/WORD ordinal number

WORD/DWORD value to add (only present if modifier bit 4 set)

---external,name---

BYTE	one-based module number in Import Module table

WORD	offset in Import Procedure names

WORD/DWORD value to add (only present if modifier bit 4 set)

---if multiple type---

 02h	BYTE	number of items

 03h	var	relocation info as for "single" type (see above)

      N WORDs	offsets of items to relocate

INT 21 4B--


21 4B-- Format of old Phar Lap .EXP file header:

Copy to Main

Table 0832

Format of old Phar Lap .EXP file header:

Offset	Size	Description

 00h  2 BYTEs	"MP" (4Dh 50h) signature

 02h	WORD	remainder of image size / page size (page size = 512h)

 04h	WORD	size of image in pages

 06h	WORD	number of relocation items

 08h	WORD	header size in paragraphs

 0Ah	WORD	minimum number of extra 4K pages to be allocated at the end

  of program, when it is loaded

 0Ch	WORD	maximum number of extra 4K pages to be allocated at the end

  of program, when it is loaded

 0Eh	DWORD	initial ESP

 12h	WORD	word checksum of file

 14h	DWORD	initial EIP

 18h	WORD	offset of first relocation item

 1Ah	WORD	overlay number

 1Ch	WORD	??? (wants to be 1)

SeeAlso: #0833

INT 21 4B--


21 4B-- Format of new Phar Lap .EXP file header:

Copy to Main

Table 0833

Format of new Phar Lap .EXP file header:

Offset	Size	Description

 00h  2 BYTEs	signature ("P2" for 286 .EXP executable, "P3" for 386 .EXP)

 02h	WORD	level (01h flat-model file, 02h multisegmented file)

 04h	WORD	header size

 06h	DWORD	file size in bytes

 0Ah	WORD	checksum

 0Ch	DWORD	offset of run-time parameters within file (see #0835)

 10h	DWORD	size of run-time parameters in bytes

 14h	DWORD	offset of relocation table within file

 18h	DWORD	size of relocation table in bytes

 1Ch	DWORD	offset of segment information table within file (see #0834)

 20h	DWORD	size of segment information table in bytes

 24h	WORD	size of segment information table entry in bytes

 26h	DWORD	offset of load image within file

 2Ah	DWORD	size of load image on disk

 2Eh	DWORD	offset of symbol table within file

 32h	DWORD	size of symbol table in bytes

 36h	DWORD	offset of GDT within load image

 3Ah	DWORD	size of GDT in bytes

 3Eh	DWORD	offset of LDT within load image

 42h	DWORD	size of LDT in bytes

 46h	DWORD	offset of IDT within load image

 4Ah	DWORD	size of IDT in bytes

 4Eh	DWORD	offset of TSS within load image

 52h	DWORD	size of TSS in bytes

 56h	DWORD	minimum number of extra bytes to be allocated at end of program

(level 1 executables only)

 5Ah	DWORD	maximum number of extra bytes to be allocated at end of program

(level 1 executables only)

 5Eh	DWORD	base load offset (level 1 executables only)

 62h	DWORD	initial ESP

 66h	WORD	initial SS

 68h	DWORD	initial EIP

 6Ch	WORD	initial CS

 6Eh	WORD	initial LDT

 70h	WORD	initial TSS

 72h	WORD	flags

bit 0: load image is packed

bit 1: 32-bit checksum is present

bits 4-2: type of relocation table

 74h	DWORD	memory requirements for load image

 78h	DWORD	32-bit checksum (optional)

 7Ch	DWORD	size of stack segment in bytes

 80h 256 BYTEs	reserved (0)

SeeAlso: #0832,#0836

INT 21 4B--


21 4B-- Format of Phar Lap segment information table entry:

Copy to Main

Table 0834

Format of Phar Lap segment information table entry:

Offset	Size	Description

 00h	WORD	selector number

 02h	WORD	flags

 04h	DWORD	base offset of selector

 08h	DWORD	minimum number of extra bytes to be allocated to the segment

INT 21 4B--


21 4B-- Format of 386|DOS-Extender run-time parameters:

Copy to Main

Table 0835

Format of 386|DOS-Extender run-time parameters:

Offset	Size	Description

 00h  2 BYTEs	signature "DX" (44h 58h)

 02h	WORD	minimum number of real-mode params to leave free at run time

 04h	WORD	maximum number of real-mode params to leave free at run time

 06h	WORD	minimum interrupt buffer size in KB

 08h	WORD	maximum interrupt buffer size in KB

 0Ah	WORD	number of interrupt stacks

 0Ch	WORD	size in KB of each interrupt stack

 0Eh	DWORD	offset of byte past end of real-mode code and data

 12h	WORD	size in KB of call buffers

 14h	WORD	flags

bit 0: file is virtual memory manager

bit 1: file is a debugger

 16h	WORD	unprivileged flag (if nonzero, executes at ring 1, 2, or 3)

 18h 104 BYTEs	reserved (0)

INT 21 4B--


21 4B-- Format of Phar Lap repeat block header:

Copy to Main

Table 0836

Format of Phar Lap repeat block header:

Offset	Size	Description

 00h	WORD	byte count

 02h	BYTE	repeat string length

INT 21 4B--


21 4B-- Format of Borland debugging information header (following load image):

Copy to Main

Table 0837

Format of Borland debugging information header (following load image):

Offset	Size	Description

 00h	WORD	signature 52FBh

 02h	WORD	version ID

 04h	DWORD	size of name pool in bytes

 08h	WORD	number of names in name pool

 0Ah	WORD	number of type entries

 0Ch	WORD	number of structure members

 0Eh	WORD	number of symbols

 10h	WORD	number of global symbols

 12h	WORD	number of modules

 14h	WORD	number of locals (optional)

 16h	WORD	number of scopes in table

 18h	WORD	number of line-number entries

 1Ah	WORD	number of include files

 1Ch	WORD	number of segment records

 1Eh	WORD	number of segment/file correlations

 20h	DWORD	size of load image after removing uninitialized data and debug

  information

 24h	DWORD	debugger hook; pointer into debugged program whose meaning

  depends on program flags

 28h	BYTE	program flags

bit 0: case-sensitive link

bit 1: pascal overlay program

 29h	WORD	no longer used

 2Bh	WORD	size of data pool in bytes

 2Dh	BYTE	padding

 2Eh	WORD	size of following header extension (currently 00h, 10h, or 20h)

 30h	WORD	number of classes

 32h	WORD	number of parents

 34h	WORD	number of global classes (currently unused)

 36h	WORD	number of overloads (currently unused)

 38h	WORD	number of scope classes

 3Ah	WORD	number of module classes

 3Ch	WORD	number of coverage offsets

 3Eh	DWORD	offset relative to symbol base of name pool

 42h	WORD	number of browser information records

 44h	WORD	number of optimized symbol records

 46h	WORD	debugging flags

 48h  8 BYTEs	padding

Note:	additional information on the Borland debugging info may be found in

  Borland's Open Architecture Handbook

SeeAlso: #0813

INT 21 4B--


21 4B05 Format of execution state structure:

Copy to Main

Table 0838

Format of execution state structure:

Offset	Size	Description

 00h	WORD	reserved (00h)

 02h	WORD	type flags

bit 0: program is an .EXE

bit 1: program is an overlay

 04h	DWORD	pointer to ASCIZ name of program file

 08h	WORD	PSP segment of new program

 0Ah	DWORD	starting CS:IP of new program

 0Eh	DWORD	program size including PSP

INT 21 4B05


21 4E-- Format of FindFirst data block:

Copy to Main

Table 0839

Format of FindFirst data block:

Offset	Size	Description

---PC-DOS 3.10, PC-DOS 4.01, MS-DOS 3.2/3.3/5.0---

 00h	BYTE	drive letter (bits 0-6), remote if bit 7 set

 01h 11 BYTEs	search template

 0Ch	BYTE	search attributes

---DOS 2.x (and some DOS 3.x???)---

 00h	BYTE	search attributes

 01h	BYTE	drive letter

 02h 11 BYTEs	search template

---WILDUNIX.COM---

 00h 12 BYTEs	15-character wildcard search pattern and drive letter (packed)

 0Ch	BYTE	search attributes

---DOS 2.x and most 3.x---

 0Dh	WORD	entry count within directory

 0Fh	DWORD	pointer to DTA???

 13h	WORD	cluster number of start of parent directory

---PC-DOS 4.01, MS-DOS 3.2/3.3/5.0---

 0Dh	WORD	entry count within directory

 0Fh	WORD	cluster number of start of parent directory

 11h  4 BYTEs	reserved

---all versions, documented fields---

 15h	BYTE	attribute of file found

 16h	WORD	file time (see #0876 at AX=5700h)

 18h	WORD	file date (see #0877 at AX=5700h)

 1Ah	DWORD	file size

 1Eh 13 BYTEs	ASCIZ filename+extension

INT 21 4E--


21 52-- Format of List of Lists:

Copy to Main

Table 0840

Format of List of Lists:

Offset	Size	Description

 -24	WORD	(DOS 3.1+) contents of CX from INT 21/AX=5E01h

 -22	WORD	(DOS ???+) LRU counter for FCB caching

 -20	WORD	(DOS ???+) LRU counter for FCB opens

 -18	DWORD	(DOS ???+) address of OEM function handler (see INT 21/AH=F8h)

FFFFh:FFFFh if not installed or not available

 -14	WORD	(DOS ???+) offset in DOS CS of code to return from INT 21 call

 -12	WORD	(DOS 3.1+) sharing retry count (see AX=440Bh)

 -10	WORD	(DOS 3.1+) sharing retry delay (see AX=440Bh)

 -8	DWORD	(DOS 3.0+) pointer to current disk buffer

 -4	WORD	(DOS 3.0+) pointer in DOS data segment of unread CON input

when CON is read via a handle, DOS reads an entire line,

  and returns the requested portion, buffering the rest

  for the next read.  0000h indicates no unread input

 -2	WORD	segment of first memory control block (see #0841)

 00h	DWORD	pointer to first Drive Parameter Block (see #0620 at AH=32h)

 04h	DWORD	-> first System File Table (see #0851,#0852,#0853,#0854)

 08h	DWORD	pointer to active CLOCK$ device's header (most recently loaded

  driver with CLOCK bit set)

 0Ch	DWORD	pointer to active CON device's header (most recently loaded

  driver with STDIN bit set)

---DOS 2.x---

 10h	BYTE	number of logical drives in system

 11h	WORD	maximum bytes/block of any block device

 13h	DWORD	pointer to first disk buffer (see #0861,#0862)

 17h 18 BYTEs	actual NUL device driver header (not a pointer!)

NUL is always the first device on DOS's linked list of device

  drivers. (see #0858)

---DOS 3.0---

 10h	BYTE	number of block devices

 11h	WORD	maximum bytes/block of any block device

 13h	DWORD	pointer to first disk buffer (see #0862,#0864)

 17h	DWORD	pointer to array of current directory structures (see #0855)

 1Bh	BYTE	value of LASTDRIVE command in CONFIG.SYS (default 5)

 1Ch	DWORD	pointer to STRING= workspace area

 20h	WORD	size of STRING area (the x in STRING=x from CONFIG.SYS)

 22h	DWORD	pointer to FCB table

 26h	WORD	the y in FCBS=x,y from CONFIG.SYS

 28h 18 BYTEs	actual NUL device driver header (not a pointer!)

NUL is always the first device on DOS's linked list of device

  drivers. (see #0858)

---DOS 3.1-3.3---

 10h	WORD	maximum bytes per sector of any block device

 12h	DWORD	pointer to first disk buffer in buffer chain (see #0862)

 16h	DWORD	pointer to array of current directory structures (see #0855)

 1Ah	DWORD	pointer to system FCB tables (see #0852,#0853,#0854)

 1Eh	WORD	number of protected FCBs (the y in the CONFIG.SYS FCBS=x,y)

 20h	BYTE	number of block devices installed

 21h	BYTE	number of available drive letters (largest of 5, installed

  block devices, and CONFIG.SYS LASTDRIVE=).  Also size of

  current directory structure array.

 22h 18 BYTEs	actual NUL device driver header (not a pointer!)

NUL is always the first device on DOS's linked list of device

  drivers. (see #0858)

 34h	BYTE	number of JOIN'ed drives

---DOS 4.x---

 10h	WORD	maximum bytes per sector of any block device

 12h	DWORD	pointer to disk buffer info record (see #0864,#0865)

Note: although the initialization code in IO.SYS uses this

  pointer, MSDOS.SYS does not, instead using the hardcoded

  address of the info record

 16h	DWORD	pointer to array of current directory structures

(see #0855,#0856)

 1Ah	DWORD	pointer to system FCB tables (see #0852,#0853,#0854)

 1Eh	WORD	number of protected FCBs (the y in the CONFIG.SYS FCBS=x,y)

(always 00h for DOS 5.0)

 20h	BYTE	number of block devices installed

 21h	BYTE	number of available drive letters (largest of 5, installed

  block devices, and CONFIG.SYS LASTDRIVE=).  Also size of

  current directory structure array.

 22h 18 BYTEs	actual NUL device driver header (not a pointer!)

NUL is always the first device on DOS's linked list of device

  drivers. (see #0858)

 34h	BYTE	number of JOIN'ed drives

 35h	WORD	pointer within IBMDOS code segment to list of special program

  names (see #0874)

(always 0000h for DOS 5.0)

 37h	DWORD	pointer to FAR routine for resident IFS utility functions

(see #0870)

may be called by any IFS driver which does not wish to

  service functions 20h or 24h-28h itself

 3Bh	DWORD	pointer to chain of IFS (installable file system) drivers

 3Fh	WORD	the x in BUFFERS x,y (rounded up to multiple of 30 if in EMS)

 41h	WORD	number of lookahead buffers (the y in BUFFERS x,y)

 43h	BYTE	boot drive (1=A:)

 44h	BYTE	flag: 01h to use DWORD moves (80386+), 00h otherwise

 45h	WORD	extended memory size in KB

---DOS 5.0-6.0---

 10h 39 BYTEs	as for DOS 4.x (see above)

 37h	DWORD	pointer to SETVER program list or 0000h:0000h

 3Bh	WORD	(DOS=HIGH) offset in DOS CS of function to fix A20 control

  when executing special .COM format

 3Dh	WORD	PSP of most-recently EXECed program if DOS in HMA, 0000h if low

used for maintaining count of INT 21 calls which disable A20

  on return

 3Fh  8 BYTEs	as for DOS 4.x (see above)

---Windows NT DOS Box---

 10h  6 BYTEs	???

 16h	DWORD	pointer to array of current directory structures (see #0857)

 1Ah  6 BYTEs	???

 20h	BYTE	number of block devices installed

 21h	BYTE	number of local drive letters (= installed block devices)

Also size of current directory structure array.

 22h 18 BYTEs	actual NUL device driver header (not a pointer!)

NUL is always the first device on DOS's linked list of device

  drivers. (see #0858)

INT 21 52--


21 52-- Format of DOS memory control block (see also below):

Copy to Main

Table 0841

Format of DOS memory control block (see also below):

Offset	Size	Description

 00h	BYTE	block type: 5Ah if last block in chain, otherwise 4Dh

 01h	WORD	PSP segment of owner or special flag value (see #0842)

 03h	WORD	size of memory block in paragraphs

 05h  3 BYTEs	unused by MS-DOS

(386MAX) if locked-out block, region start/prev region end

---DOS 2.x,3.x---

 08h  8 BYTEs	unused

---DOS 4.0+ ---

 08h  8 BYTEs	ASCII program name if PSP memory block or DR-DOS UMB,

  else garbage

null-terminated if less than 8 characters

Notes:	the next MCB is at segment (current + size + 1)

under DOS 3.1+, the first memory block is the DOS data segment,

  containing installable drivers, buffers, etc.	 Under DOS 4.0+ it is

  divided into subsegments, each with its own memory control block

  (see #0845), the first of which is at offset 0000h.

for DOS 5+, blocks owned by DOS may have either "SC" or "SD" in bytes

  08h and 09h.	"SC" is system code or locked-out inter-UMB memory,

  "SD" is system data, device drivers, etc.

Some versions of DR-DOS use only seven characters of the program name,

  placing a NUL in the eighth byte.

SeeAlso: #0843,#0844,#0845

INT 21 52--


21 52-- Values for special flag PSP segments:

Copy to Main

Table 0842

Values for special flag PSP segments:

 0000h	free

 0006h	DR-DOS XMS UMB

 0007h	DR-DOS excluded upper memory ("hole")

 0008h	belongs to DOS

 FFF7h	386MAX v6.01+ ???

 FFFAh	386MAX UMB control block (see #0697 at AX=4402h"386MAX")

 FFFDh	386MAX locked-out memory

 FFFEh	386MAX UMB (normally immediately follows its control block)

 FFFFh	386MAX v6.01+ device driver

INT 21 52--


21 52-- Format of MS-DOS 5+ UMB control block:

Copy to Main

Table 0843

Format of MS-DOS 5+ UMB control block:

Offset	Size	Description

 00h	BYTE	type: 5Ah if last block in chain, 4Dh otherwise

 01h	WORD	first available paragraph in UMB if control block at start

  of UMB, 000Ah if control block at end of UMB

 03h	WORD	length in paragraphs of following UMB or locked-out region

 05h  3 BYTEs	unused

 08h  8 BYTEs	block type name: "UMB" if start block, "SM" if end block in UMB

INT 21 52--


21 52-- Format of STARLITE (General Software's Embedded DOS) memory control block:

Copy to Main

Table 0844

Format of STARLITE (General Software's Embedded DOS) memory control block:

Offset	Size	Description

 00h	BYTE	block type: 5Ah if last block in chain, otherwise 4Dh

 01h	WORD	PSP segment of owner, 0000h if free, 0008h if belongs to DOS

 03h	WORD	size of memory block in paragraphs

 05h	BYTE	unused

 06h	WORD	segment address of next memory control block (0000h if last)

 08h	WORD	segment address of previous memory control block or 0000h

 0Ah  6 BYTEs	reserved

INT 21 52--


21 52-- Format of DOS 4.0+ data segment subsegment control blocks:

Copy to Main

Table 0845

Format of DOS 4.0+ data segment subsegment control blocks:

Offset	Size	Description

 00h	BYTE	subsegment type (blocks typically appear in this order)

"D"  device driver

"E"  device driver appendage

"I"  IFS (Installable File System) driver

"F"  FILES=  control block storage area (for FILES>5)

"X"  FCBS=   control block storage area, if present

"C"  BUFFERS EMS workspace area (if BUFFERS /X option used)

"B"  BUFFERS=  storage area

"L"  LASTDRIVE=	 current directory structure array storage area

"S"  STACKS=  code and data area, if present (see #0846,#0847)

"T"  INSTALL= transient code

 01h	WORD	paragraph of subsegment start (usually the next paragraph)

 03h	WORD	size of subsegment in paragraphs

 05h  3 BYTEs	unused

 08h  8 BYTEs	for types "D" and "I", base name of file from which the driver

  was loaded (unused for other types)

INT 21 52--


21 52-- Format of data at start of STACKS code segment (if present):

Copy to Main

Table 0846

Format of data at start of STACKS code segment (if present):

Offset	Size	Description

 00h	WORD	???

 02h	WORD	number of stacks (the x in STACKS=x,y)

 04h	WORD	size of stack control block array (should be 8*x)

 06h	WORD	size of each stack (the y in STACKS=x,y)

 08h	DWORD	pointer to STACKS data segment

 0Ch	WORD	offset in STACKS data segment of stack control block array

 0Eh	WORD	offset in STACKS data segment of last element of that array

 10h	WORD	offset in STACKS data segment of the entry in that array for

  the next stack to be allocated (initially same as value in

  0Eh and works its way down in steps of 8 to the value in

  0Ch as hardware interrupts pre-empt each other)

Note:	the STACKS code segment data may, if present, be located as follows:

    DOS 3.2:	The code segment data is at a paragraph boundary fairly early

  in the IBMBIO segment (seen at 0070:0190h)

    DOS 3.3:	The code segment is at a paragraph boundary in the DOS data

  segment, which may be determined by inspecting the segment

  pointers of the vectors for those of interrupts 02h, 08h-0Eh,

  70h, 72-77h which have not been redirected by device drivers

  or TSRs.

    DOS 4.0+	Identified by sub-segment control block type "S" within the DOS

  data segment.

SeeAlso: #0848,INT B4"STACKMAN"

INT 21 52--


21 52-- Format of array elements in STACKS data segment:

Copy to Main

Table 0847

Format of array elements in STACKS data segment:

Offset	Size	Description

 00h	BYTE	status: 00h=free, 01h=in use, 03h=corrupted by overflow of

  higher stack.

 01h	BYTE	not used

 02h	WORD	previous SP

 04h	WORD	previous SS

 06h	WORD	ptr to word at top of stack (new value for SP). The word at the

  top of the stack is preset to point back to this control

  block.

INT 21 52--


21 52-- Format of SHARE.EXE hooks (DOS 3.1-6.00):

Copy to Main

Table 0848

Format of SHARE.EXE hooks (DOS 3.1-6.00):

Offset	Size	Description

(offsets from first system file table--pointed at by ListOfLists+04h)

-3Ch	DWORD	pointer to FAR routine for ???

Note: not called by MS-DOS 3.3, set to 0000h:0000h by

SHARE 3.3+

-38h	DWORD	pointer to FAR routine called on opening file

on call, internal DOS location points at filename

  (see #0892 at AX=5D06h)

Return: CF clear if successful

CF set on error

    AX = DOS error code (24h) (see #0885 at AH=59h)

Note: SHARE directly accesses DOS-internal data to get name of

file just opened

-34h	DWORD	pointer to FAR routine called on closing file

ES:DI -> system file table

Note: does something to every Record Lock Record for file

-30h	DWORD	pointer to FAR routine to close all files for given computer

(called by AX=5D03h)

-2Ch	DWORD	pointer to FAR routine to close all files for given process

(called by AX=5D04h)

-28h	DWORD	pointer to FAR routine to close file by name

(called by AX=5D02h)

DS:SI -> DOS parameter list (see #0891 at AX=5D00h)

   DPL's DS:DX -> name of file to close

Return: CF clear if successful

CF set on error

    AX = DOS error code (03h) (see #0885 at AH=59h)

-24h	DWORD	pointer to FAR routine to lock region of file

call with BX = file handle

  ---DOS 3.x---

  CX:DX = starting offset

  SI:AX = size

  ---DOS 4.0+ ---

  DS:DX -> lock range

DWORD start offset

DWORD size in bytes

Return: CF set on error

    AL = DOS error code (21h) (see #0885 at AH=59h)

Note: not called if file is marked as remote

-20h	DWORD	pointer to FAR routine to unlock region of file

call with BX = file handle

  ---DOS 3.x---

  CX:DX = starting offset

  SI:AX = size

  ---DOS 4.0+ ---

  DS:DX -> lock range

DWORD start offset

DWORD size in bytes

Return: CF set on error

    AL = DOS error code (21h) (see #0885 at AH=59h)

Note: not called if file is marked as remote

-1Ch	DWORD	pointer to FAR routine to check if file region is locked

call with ES:DI -> system file table entry for file

CX = length of region from current position in file

Return: CF set if any portion of region locked

    AX = 0021h

-18h	DWORD	pointer to FAR routine to get open file list entry

(called by AX=5D05h)

call with DS:SI -> DOS parameter list (see #0891 at AX=5D00h)

DPL's BX = index of sharing record

DPL's CX = index of SFT in SFT chain of sharing rec

Return: CF set on error or not loaded

    AX = DOS error code (12h) (see #0885 at AH=59h)

CF clear if successful

    ES:DI -> filename

    CX = number of locks owned by specified SFT

    BX = network machine number

    DX destroyed

-14h	DWORD	pointer to FAR routine for updating FCB from SFT???

call with DS:SI -> unopened FCB

  ES:DI -> system file table entry

Return: BL = C0h???

Note: copies following fields from SFT to FCB:

   starting cluster of file	  0Bh	 1Ah

   sharing record offset	  33h	 1Ch

   file attribute	  04h	 1Eh

-10h	DWORD	pointer to FAR routine to get first cluster of FCB file ???

call with ES:DI -> system file table entry

  DS:SI -> FCB

Return: CF set if SFT closed or sharing record offsets

mismatched

CF clear if successful

    BX = starting cluster number from FCB

-0Ch	DWORD	pointer to FAR routine to close file if duplicate for process

DS:SI -> system file table

Return: AX = number of handle in JFT which already uses SFT

Note: called during open/create of a file

Note: if SFT was opened with inheritance enabled and sharing

mode 111, does something to all other SFTs owned by

same process which have the same file open mode and

sharing record

-08h	DWORD	pointer to FAR routine for closing file

Note: closes various handles referring to file most-recently

opened

-04h	DWORD	pointer to FAR routine to update directory info in related SFT

  entries

call with ES:DI -> system file table entry for file (see #0853)

  AX = subfunction (apply to each related SFT)

00h: update time stamp (offset 0Dh) and date

     stamp (offset 0Fh)

01h: update file size (offset 11h) and starting

     cluster (offset 0Bh).  Sets last-accessed

     cluster fields to start of file if file

     never accessed

02h: as function 01h, but last-accessed fields

     always changed

03h: do both functions 00h and 02h

Note: follows ptr at offset 2Bh in system file table entries

Note: NOP if opened with no-inherit or via FCB

Notes:	most of the above hooks (except -04h, -14h, -18h, and -3Ch) assume

  either that SS=DOS DS or SS=DS=DOS DS and directly access

  DOS-internal data

sharing hooks are not supported by DR-DOS 5-6; they appear to be

  supported by Novell DOS 7, with a segment of 0000h indicating the

  DOS data segment

SeeAlso: #0849,#0850

INT 21 52--


21 52-- Format of sharing record:

Copy to Main

Table 0849

Format of sharing record:

Offset	Size	Description

 00h	BYTE	flag

00h free block

01h allocated block

FFh end marker

 01h	WORD	size of block

 03h	BYTE	checksum of pathname (including NUL)

if sum of ASCII values is N, checksum is (N/256 + N%256)

 04h	WORD	offset in SHARE's DS of first Record Lock Record (see #0850)

 06h	DWORD	pointer to start of system file table chain for file

 0Ah	WORD	unique sequence number

 0Ch	var	ASCIZ full pathname

Note:	not supported by DR-DOS SHARE 1.1 and 2.0; will reportedly be

  supported by Novell DOS 7

SeeAlso: #0848,#0850

INT 21 52--


21 52-- Format of SHARE.EXE Record Lock Record:

Copy to Main

Table 0850

Format of SHARE.EXE Record Lock Record:

Offset	Size	Description

 00h	WORD	offset in SHARE's DS of next lock table in list or 0000h

 02h	DWORD	offset in file of start of locked region

 06h	DWORD	offset in file of end of locked region

 0Ah	DWORD	pointer to System File Table entry for this file

 0Eh	WORD	PSP segment of lock's owner

---DOS 5+ ---

 10h	WORD	lock type: (00h lock all, 01h lock writes only)

SeeAlso: #0848,#0849,#0851,#0854

INT 21 52--


21 52-- Format of DOS 2.x system file tables:

Copy to Main

Table 0851

Format of DOS 2.x system file tables:

Offset	Size	Description

 00h	DWORD	pointer to next file table (offset FFFFh if last)

 04h	WORD	number of files in this table

 06h  28h bytes per file

Offset	Size	Description

 00h	BYTE	number of file handles referring to this file

 01h	BYTE	file open mode (see #0627 at AH=3Dh)

 02h	BYTE	file attribute

 03h	BYTE	drive (0 = character device, 1 = A, 2 = B, etc)

 04h 11 BYTEs	filename in FCB format (no path,no period,blank-padded)

 0Fh	WORD	???

 11h	WORD	???

 13h	DWORD	file size???

 17h	WORD	file date in packed format (see #0877 at AX=5700h)

 19h	WORD	file time in packed format (see #0876 at AX=5700h)

 1Bh	BYTE	device attribute (see #0646 at AX=4400h)

---character device---

 1Ch	DWORD	pointer to device driver

---block device---

 1Ch	WORD	starting cluster of file

 1Eh	WORD	relative cluster in file of last cluster accessed

------

 20h	WORD	absolute cluster number of current cluster

 22h	WORD	???

 24h	DWORD	current file position???

SeeAlso: #0852,#0853,#0854

INT 21 52--


21 52-- Format of DOS 3.0 system file tables and FCB tables:

Copy to Main

Table 0852

Format of DOS 3.0 system file tables and FCB tables:

Offset	Size	Description

 00h	DWORD	pointer to next file table (offset FFFFh if last)

 04h	WORD	number of files in this table

 06h  38h bytes per file

Offset	Size	Description

 00h-1Eh as for DOS 3.1+ (see #0853)

 1Fh	WORD	byte offset of directory entry within sector

 21h 11 BYTEs	filename in FCB format (no path/period, blank-padded)

 2Ch	DWORD	(SHARE.EXE) pointer to previous SFT sharing same file

 30h	WORD	(SHARE.EXE) network machine number which opened file

(Windows Enhanced mode DOSMGR uses the virtual machine

  ID as the machine number; see INT 2F/AX=1683h)

 32h	WORD	PSP segment of file's owner (first three entries for

  AUX/CON/PRN contain segment of IO.SYS startup code)

 34h	WORD	(SHARE.EXE) offset in SHARE code seg of share record

 36h	WORD	??? apparently always 0000h

SeeAlso: #0851,#0853,#0854

INT 21 52--


21 52-- Format of DOS 3.1-3.3x, DR-DOS 5.0-6.0 system file tables and FCB tables:

Copy to Main

Table 0853

Format of DOS 3.1-3.3x, DR-DOS 5.0-6.0 system file tables and FCB tables:

Offset	Size	Description

 00h	DWORD	pointer to next file table (offset FFFFh if last)

 04h	WORD	number of files in this table

 06h  35h bytes per file

Offset	Size	Description

 00h	WORD	number of file handles referring to this file

 02h	WORD	file open mode (see AX=6C00h, #0627 at AH=3Dh)

bit 15 set if this file opened via FCB

 04h	BYTE	file attribute (see #0643 at AX=4301h)

 05h	WORD	device info word (see #0646 at AX=4400h)

bit 15 set if remote file

bit 14 set means do not set file date/time on closing

bit 12 set means don't inherit on EXEC

bits 5-0 drive number for disk files

 07h	DWORD	pointer to device driver header if character device

else pointer to DOS Drive Parameter Block

  (see #0620 at AH=32h)

 0Bh	WORD	starting cluster of file

 0Dh	WORD	file time in packed format (see #0876 at AX=5700h)

not used for character devices in DR-DOS

 0Fh	WORD	file date in packed format (see #0877 at AX=5700h)

not used for character devices in DR-DOS

 11h	DWORD	file size

---system file table---

 15h	DWORD	current offset in file (may be larger than size of

  file; INT 21/AH=42h does not check new position)

---FCB table---

 15h	WORD	counter for last I/O to FCB

 17h	WORD	counter for last open of FCB

(these are separate to determine the times of the

  latest I/O and open)

---

 19h	WORD	relative cluster within file of last cluster accessed

 1Bh	WORD	absolute cluster number of last cluster accessed

0000h if file never read or written???

 1Dh	WORD	number of sector containing directory entry

 1Fh	BYTE	number of dir entry within sector (byte offset/32)

 20h 11 BYTEs	filename in FCB format (no path/period, blank-padded)

 2Bh	DWORD	(SHARE.EXE) pointer to previous SFT sharing same file

 2Fh	WORD	(SHARE.EXE) network machine number which opened file

(Windows Enhanced mode DOSMGR uses the virtual machine

  ID as the machine number; see INT 2F/AX=1683h)

 31h	WORD	PSP segment of file's owner (see #0603 at AH=26h)

  (first three entries for AUX/CON/PRN contain segment

  of IO.SYS startup code)

 33h	WORD	offset within SHARE.EXE code segment of

  sharing record (see #0849)  0000h = none

SeeAlso: #0851,#0852,#0854

INT 21 52--


21 52-- Format of DOS 4.0-6.0 system file tables and FCB tables:

Copy to Main

Table 0854

Format of DOS 4.0-6.0 system file tables and FCB tables:

Offset	Size	Description

 00h	DWORD	pointer to next file table (offset FFFFh if last)

 04h	WORD	number of files in this table

 06h  3Bh bytes per file

Offset	Size	Description

 00h	WORD	number of file handles referring to this file

FFFFh if in use but not referenced

 02h	WORD	file open mode (see AX=6C00h,#0627 at AH=3Dh)

bit 15 set if this file opened via FCB

 04h	BYTE	file attribute (see #0643 at AX=4301h)

 05h	WORD	device info word (see also #0646 at AX=4400h)

bit 15 set if remote file

bit 14 set means do not set file date/time on closing

bit 13 set if named pipe

bit 12 set if no inherit

bit 11 set if network spooler

bit 7  set if device, clear if file (only if local)

bits 6-0 as for AX=4400h

 07h	DWORD	pointer to device driver header if character device

else pointer to DOS Drive Parameter Block

  (see #0620 at AH=32h) or REDIR data

 0Bh	WORD	starting cluster of file (local files only)

 0Dh	WORD	file time in packed format (see #0876)

 0Fh	WORD	file date in packed format (see #0877)

 11h	DWORD	file size

 15h	DWORD	current offset in file (SFT)

LRU counters (FCB table, two WORDs)

---local file---

 19h	WORD	relative cluster within file of last cluster accessed

 1Bh	DWORD	number of sector containing directory entry

 1Fh	BYTE	number of dir entry within sector (byte offset/32)

---network redirector---

 19h	DWORD	pointer to REDIRIFS record

 1Dh  3 BYTEs	???

------

 20h 11 BYTEs	filename in FCB format (no path/period, blank-padded)

 2Bh	DWORD	(SHARE.EXE) pointer to previous SFT sharing same file

 2Fh	WORD	(SHARE.EXE) network machine number which opened file

(Windows Enhanced mode DOSMGR uses the virtual machine

  ID as the machine number; see INT 2F/AX=1683h)

 31h	WORD	PSP segment of file's owner (see #0603 at AH=26h)

  (first three entries for AUX/CON/PRN contain segment

  of IO.SYS startup code)

 33h	WORD	offset within SHARE.EXE code segment of

sharing record (see #0808)  0000h = none

 35h	WORD	(local) absolute cluster number of last clustr accessed

(redirector) ???

 37h	DWORD	pointer to IFS driver for file, 0000000h if native DOS

Note:	the OS/2 2.0 DOS Boot Session does not properly fill in the filename

  field due to incomplete support for SFTs; the OS/2 2.0 DOS Window

  does not appear to support SFTs at all

SeeAlso: #0851,#0852,#0853

INT 21 52--


21 52-- Format of current directory structure (CDS) (array, LASTDRIVE entries):

Copy to Main

Table 0855

Format of current directory structure (CDS) (array, LASTDRIVE entries):

Offset	Size	Description

 00h 67 BYTEs	ASCIZ path in form X:\PATH (local) or UNC form

  \\SERVER\PATH (network, see notes below)

 43h	WORD	drive attributes (see also note below and AX=5F07h)

bit 15: uses network redirector	 \ invalid if 00, installable

bit 14: physical drive	 / file system if 11

bit 13: JOIN'ed	  \ path above is true path that would be

bit 12: SUBST'ed  / needed if not under SUBST or JOIN

bit  7: remote drive hidden from redirector's assign-list and

  exempt from network connection make/break commands;

  set for CD-ROM drives

 45h	DWORD	pointer to Drive Parameter Block for drive

  (see #0620 at AH=32h)

---local drives---

 49h	WORD	starting cluster of current directory

0000h = root, FFFFh = never accessed

 4Bh	WORD	??? seems to be FFFFh always

 4Dh	WORD	??? seems to be FFFFh always

---network drives---

 49h	DWORD	pointer to redirector or REDIRIFS record, or FFFFh:FFFFh

(DOS 4 only) available for use by IFS driver

 4Dh	WORD	stored user data from INT 21/AX=5F03h

------

 4Fh	WORD	offset in current directory path of backslash corresponding to

  root directory for drive

this value specifies how many characters to hide from the

  "CHDIR" and "GETDIR" calls; normally set to 2 to hide the

  drive letter and colon, SUBST, JOIN, and networks change it

  so that only the appropriate portion of the true path is

  visible to the user

---DOS 4.0+ ---

 51h	BYTE	(DOS 4 only, remote drives) device type

04h network drive

 52h	DWORD	pointer to IFS driver (DOS 4) or redirector block (DOS 5+) for

  this drive, 00000000h if native DOS

 56h	WORD	available for use by IFS driver

Notes:	the path for invalid drives is normally set to X:\, but may be empty

  after JOIN x: /D in DR-DOS 5.0 or NET USE x: /D in older LAN versions

normally, only one of bits 13&12 may be set together with bit 14, but

  DR-DOS 5.0 uses other combinations for bits 15-12: 0111 JOIN,

  0001 SUBST, 0101 ASSIGN (see #0856)

Windows for Workgroups 3.11 network sets the path to the local

  drive and directory even for network drives; in that case the

  UNC form \\SERVER\SHARE can be obtained with INT 21/AX=5F02h

  or INT 21/AX=5F46h. LapLink RemoteAccess does the same even for

  INT 21/AX=5F02h

SoftWindows on the Macintosh PowerPC sets \\E for the host drive

SeeAlso: #0856

INT 21 52--


21 52-- Format of DR-DOS 5.0-6.0 current directory structure entry (array):

Copy to Main

Table 0856

Format of DR-DOS 5.0-6.0 current directory structure entry (array):

Offset	Size	Description

 00h 67 BYTEs	ASCIZ pathname of actual root directory for this logical drive

 43h	WORD	drive attributes

1000h SUBSTed drive

3000h??? JOINed drive

4000h physical drive

5000h ASSIGNed drive

7000h JOINed drive

8000h network drive

 45h	BYTE	physical drive number (0=A:) if this logical drive is valid

 46h	BYTE	??? apparently flags for JOIN and ASSIGN

 47h	WORD	cluster number of start of parent directory (0000h = root)

 49h	WORD	entry number of current directory in parent directory

 4Bh	WORD	cluster number of start of current directory

 4Dh	WORD	used for media change detection (details not available)

 4Fh	WORD	cluster number of SUBST/JOIN "root" directory

0000h if physical root directory

SeeAlso: #0855

INT 21 52--


21 52-- Format of Windows NT Current Directory Structure (CDS) (array):

Copy to Main

Table 0857

Format of Windows NT Current Directory Structure (CDS) (array):

Offset	Size	Description

 00h 67 BYTEs	ASCIZ path in form X:\ (does not show either current directory

  or network path)

 43h  4 BYTEs	???

Note:	the WinNT CDS contains only as many entries as there are local drives,

  not LASTDRIVE entries.

INT 21 52--


21 52-- Format of DOS device driver header:

Copy to Main

Table 0858

Format of DOS device driver header:

Offset	Size	Description

 00h	DWORD	pointer to next driver, offset=FFFFh if last driver

 04h	WORD	device attributes (see #0859,#0860)

 06h	WORD	device strategy entry point

call with ES:BX -> request header

  (see #1382 at INT 2F/AX=0802h)

 08h	WORD	device interrupt entry point

---character device---

 0Ah  8 BYTEs	blank-padded character device name

---block device---

 0Ah	BYTE	number of subunits (drives) supported by driver

 0Bh  7 BYTEs	normally unused; sometimes contains signature to indicate

  specific drivers:

"GFS	"   LapLink III device driver DD.BIN

"STAC-CD"   Stacker/Stacker Anywhere (see AX=4404h"Stacker")

"SIDExxx"   PCMCIA driver ATADRV.EXE (see AX=440Dh)

"$PCMATA"   PCMCIA driver PCMATA.SYS (see AX=440Dh)

"DSKREET"   NortonUtils v5+ Diskreet (see INT 2F/AX=FE00h)

"DBLSPAC"   MS DoubleSpace or DriveSpace

---DoubleSpace/DriveSpace---

 12h  2 BYTEs	signature ",." (2Ch 2Eh)

 14h	var	preloading API entry point

---CD-ROM---

 12h	WORD	reserved, must be 0000h

appears to be another device chain

 14h	BYTE	drive letter (must initially be 00h; this byte is set by

  MSCDEX when it loads)

 15h	BYTE	number of units

 16h  6 BYTEs	signature 'MSCDnn' where 'nn' is version (currently '00')

SeeAlso: #1341 at INT 25/AX=CDCDh,#1557 at INT 2F/AX=5600h

INT 21 52--


21 52-- Bitfields for device attributes (character device):

Copy to Main

Table 0859

Bitfields for device attributes (character device):

Bit(s)	Description

 15	set (indicates character device)

 14	IOCTL supported (see AH=44h)

 13	(DOS 3.0+) output until busy supported

 12	reserved

 11	(DOS 3.0+) OPEN/CLOSE/RemMedia calls supported

 10-8	reserved

 7	(DOS 5.0+) Generic IOCTL check call supported (driver command 19h)

(see AX=4410h,AX=4411h)

 6	(DOS 3.2+) Generic IOCTL call supported (driver command 13h)

(see AX=440Ch,AX=440Dh)

 5	reserved

 4	device is special (use INT 29 "fast console output")

 3	device is CLOCK$ (all reads/writes use transfer record described

  below)

 2	device is NUL

 1	device is standard output

 0	device is standard input

Note:	for European MS-DOS 4.0, bit 11 also indicates that bits 8-6 contain a

  version code (000 = DOS 3.0,3.1; 001 = DOS 3.2;

  010 = European DOS 4.0)

SeeAlso: #0860,#0858

INT 21 52--


21 52-- Bitfields for device attributes (block device):

Copy to Main

Table 0860

Bitfields for device attributes (block device):

Bit(s)	Description

 15	clear (indicates block device)

 14	IOCTL supported

 13	non-IBM format

 12	network device (device is remote)

 11	(DOS 3.0+) OPEN/CLOSE/RemMedia calls supported

 10	reserved

 9	direct I/O not allowed??? (set by DOS 3.3 DRIVER.SYS for "new" drives)

 8	??? set by DOS 3.3 DRIVER.SYS for "new" drives

 7	(DOS 5.0+) Generic IOCTL check call supported (driver command 19h)

(see AX=4410h,AX=4411h)

 6	(DOS 3.2+) Generic IOCTL call supported (driver command 13h)

implies support for commands 17h and 18h

  (see AX=440Ch,AX=440Dh,AX=440Eh,AX=440Fh)

 5-2	reserved

 1	driver supports 32-bit sector addressing (DOS 3.31+)

 0	 reserved

Note:	for European MS-DOS 4.0, bit 11 also indicates that bits 8-6 contain a

  version code (000 = DOS 3.0,3.1; 001 = DOS 3.2;

  010 = European DOS 4.0)

SeeAlso: #0859,#0858

INT 21 52--


21 52-- Format of DOS 2.x disk buffer:

Copy to Main

Table 0861

Format of DOS 2.x disk buffer:

Offset	Size	Description

 00h	DWORD	pointer to next disk buffer, offset = FFFFh if last

least-recently used buffer is first in chain

 04h	BYTE	drive (0=A, 1=B, etc), FFh if not in use

 05h  3 BYTEs	unused??? (seems always to be 00h 00h 01h)

 08h	WORD	logical sector number

 0Ah	BYTE	number of copies to write (1 for non-FAT sectors)

 0Bh	BYTE	sector offset between copies if multiple copies to be written

 0Ch	DWORD	pointer to DOS Drive Parameter Block (see #0620 at AH=32h)

 10h	buffered data

SeeAlso: #0862,#0864,#0865,#0867

INT 21 52--


21 52-- Format of DOS 3.x disk buffer:

Copy to Main

Table 0862

Format of DOS 3.x disk buffer:

Offset	Size	Description

 00h	DWORD	pointer to next disk buffer, offset = FFFFh if last

least-recently used buffer is first in chain

 04h	BYTE	drive (0=A,1=B, etc), FFh if not in use

 05h	BYTE	buffer flags (see #0863)

 06h	WORD	logical sector number

 08h	BYTE	number of copies to write (1 for non-FAT sectors)

 09h	BYTE	sector offset between copies if multiple copies to be written

 0Ah	DWORD	pointer to DOS Drive Parameter Block (see #0620 at AH=32h)

 0Eh	WORD	unused??? (almost always 0)

 10h	buffered data

SeeAlso: #0861,#0864,#0865,#0867

INT 21 52--


21 52-- Bitfields for DOS 3.x disk buffer flags:

Copy to Main

Table 0863

Bitfields for DOS 3.x disk buffer flags:

Bit(s)	Description

 7	???

 6	buffer dirty

 5	buffer has been referenced

 4	???

 3	sector in data area

 2	sector in a directory, either root or subdirectory

 1	sector in FAT

 0	boot sector??? (guess)

SeeAlso: #0868

INT 21 52--


21 52-- Format of DOS 4.00 (pre UR 25066) disk buffer info:

Copy to Main

Table 0864

Format of DOS 4.00 (pre UR 25066) disk buffer info:

Offset	Size	Description

 00h	DWORD	pointer to array of disk buffer hash chain heads (see #0866)

 04h	WORD	number of disk buffer hash chains (referred to as NDBCH below)

 06h	DWORD	pointer to lookahead buffer, zero if not present

 0Ah	WORD	number of lookahead sectors, else zero (the y in BUFFERS=x,y)

 0Ch	BYTE	00h if buffers in EMS (/X), FFh if not

 0Dh	WORD	EMS handle for buffers, zero if not in EMS

 0Fh	WORD	EMS physical page number used for buffers (usually 255)

 11h	WORD	??? seems always to be 0001h

 13h	WORD	segment of EMS physical page frame

 15h	WORD	??? seems always to be zero

 17h  4 WORDs	EMS partial page mapping information???

SeeAlso: #0861,#0862,#0865,#0869

INT 21 52--


21 52-- Format of DOS 4.01 (from UR 25066 Corrctive Services Disk on) disk buffer info:

Copy to Main

Table 0865

Format of DOS 4.01 (from UR 25066 Corrctive Services Disk on) disk buffer info:

Offset	Size	Description

 00h	DWORD	pointer to array of disk buffer hash chain heads (see #0866)

 04h	WORD	number of disk buffer hash chains (referred to as NDBCH below)

 06h	DWORD	pointer to lookahead buffer, zero if not present

 0Ah	WORD	number of lookahead sectors, else zero (the y in BUFFERS=x,y)

 0Ch	BYTE	01h, possibly to distinguish from pre-UR 25066 format

 0Dh	WORD	??? EMS segment for BUFFERS (only with /XD)

 0Fh	WORD	??? EMS physical page number of EMS seg above (only with /XD)

 11h	WORD	??? EMS segment for ??? (only with /XD)

 13h	WORD	??? EMS physical page number of above (only with /XD)

 15h	BYTE	??? number of EMS page frames present (only with /XD)

 16h	WORD	segment of one-sector workspace buffer allocated in main memory

  if BUFFERS/XS or /XD options in effect, possibly to avoid DMA

  into EMS

 18h	WORD	EMS handle for buffers, zero if not in EMS

 1Ah	WORD	EMS physical page number used for buffers (usually 255)

 1Ch	WORD	??? appears always to be 0001h

 1Eh	WORD	segment of EMS physical page frame

 20h	WORD	??? appears always to be zero

 22h	BYTE	00h if /XS, 01h if /XD, FFh if BUFFERS not in EMS

SeeAlso: #0861,#0862,#0864,#0869

INT 21 52--


21 52-- Format of DOS 4.x disk buffer hash chain head (array, one entry per chain):

Copy to Main

Table 0866

Format of DOS 4.x disk buffer hash chain head (array, one entry per chain):

Offset	Size	Description

 00h	WORD	EMS logical page number in which chain is resident, -1 if not

  in EMS

 02h	DWORD	pointer to least recently used buffer header.  All buffers on

  this chain are in the same segment.

 06h	BYTE	number of dirty buffers on this chain

 07h	BYTE	reserved (00h)

Notes:	buffered disk sectors are assigned to chain N where N is the sector's

  address modulo NDBCH,	 0 <= N <= NDBCH-1

each chain resides completely within one EMS page

this structure is in main memory even if buffers are in EMS

INT 21 52--


21 52-- Format of DOS 4.0-6.0 disk buffer:

Copy to Main

Table 0867

Format of DOS 4.0-6.0 disk buffer:

Offset	Size	Description

 00h	WORD	forward ptr, offset only, to next least recently used buffer

 02h	WORD	backward pointer, offset only

 04h	BYTE	drive (0=A,1=B, etc) if bit 7 clear

SFT index if bit 7 set

FFh if not in use

 05h	BYTE	buffer flags (see #0868)

 06h	DWORD	logical sector number (local buffers only)

 0Ah	BYTE	number of copies to write

for FAT sectors, same as number of FATs

for data and directory sectors, usually 1

 0Bh	WORD	offset in sectors between copies to write for FAT sectors

 0Dh	DWORD	pointer to DOS Drive Parameter Block (see #0620 at AH=32h)

 11h	WORD	size of data in buffer if remote buffer (see flags above)

 13h	BYTE	reserved (padding)

 14h	buffered data

Note:	for DOS 4.x, all buffered sectors which have the same hash value

  (computed as the sum of high and low words of the logical sector

  number divided by the number of disk buffer chains) are on the same

  doubly-linked circular chain; for DOS 5+, only a single circular

  chain exists.

the links consist of offset addresses only, the segment being the same

  for all buffers in the chain.

SeeAlso: #0861,#0862,#0864

INT 21 52--


21 52-- Bitfields for DOS 4.0-6.0 disk buffer flags:

Copy to Main

Table 0868

Bitfields for DOS 4.0-6.0 disk buffer flags:

Bit(s)	Description

 7	remote buffer

 6	buffer dirty

 5	buffer has been referenced (reserved in DOS 5+)

 4	search data buffer (only valid if remote buffer)

 3	sector in data area

 2	sector in a directory, either root or subdirectory

 1	sector in FAT

 0	reserved

SeeAlso: #0863

INT 21 52--


21 52-- Format of DOS 5.0-6.0 disk buffer info:

Copy to Main

Table 0869

Format of DOS 5.0-6.0 disk buffer info:

Offset	Size	Description

 00h	DWORD	pointer to least-recently-used buffer header (may be in HMA)

(see #0867)

 04h	WORD	number of dirty disk buffers

 06h	DWORD	pointer to lookahead buffer, zero if not present

 0Ah	WORD	number of lookahead sectors, else zero (the y in BUFFERS=x,y)

 0Ch	BYTE	buffer location

00h base memory, no workspace buffer

01h HMA, workspace buffer in base memory

 0Dh	DWORD	pointer to one-segment workspace buffer in base memory

 11h  3 BYTEs	unused

 14h	WORD	???

 16h	BYTE	flag: INT 24 fail while making an I/O status call

 17h	BYTE	temp storage for user memory allocation strategy during EXEC

 18h	BYTE	counter: number of INT 21 calls for which A20 is off

 19h	BYTE	bit flags

bit 0: ???

bit 1: SWITCHES=/W specified in CONFIG.SYS (don't load

WINA20.SYS when MS Windows 3.0 starts)

bit 2: in EXEC state (INT 21/AX=4B05h)

 1Ah	WORD	offset of unpack code start (used only during INT 21/AX=4B05h)

 1Ch	BYTE	bit 0 set iff UMB MCB chain linked to normal MCB chain

 1Dh	WORD	minimum paragraphs of memory required by program being EXECed

 1Fh	WORD	segment of first MCB in upper memory blocks or FFFFh if DOS

  memory chain in base 640K only (first UMB MCB usually at

  9FFFh, locking out video memory with a DOS-owned memory

  block)

the MCB this word points at contains a valid link into high

  memory even if it is marked with a 'Z' indicating the last

  memory block

 21h	WORD	paragraph from which to start scanning during memory allocation

SeeAlso: #0864,#0865

INT 21 52--


21 52-- Call IFS utility function entry point with:

Copy to Main

Table 0870

Call IFS utility function entry point with:

AH = 20h miscellaneous functions

    AL = 00h get date

Return: CX = year

DH = month

DL = day

    AL = 01h get process ID and computer ID

Return: BX = current PSP segment

DX = active network machine number

    AL = 05h get file system info

ES:DI -> 16-byte info buffer

Return: buffer filled

Offset	Size	Description

 00h  2 BYTEs	unused

 02h	WORD	number of SFTs (actually counts only

the first two file table arrays)

 04h	WORD	number of FCB table entries

 06h	WORD	number of proctected FCBs

 08h  6 BYTEs	unused

 0Eh	WORD	largest sector size supported

    AL = 06h get machine name

ES:DI -> 18-byte buffer for name

Return: buffer filled with name starting at offset 02h

    AL = 08h get sharing retry count

Return: BX = sharing retry count

    AL = other

Return: CF set

AH = 21h get redirection state

BH = type (03h disk, 04h printer)

Return: BH = state (00h off, 01h on)

AH = 22h ??? some sort of time calculation

AL = 00h ???

    nonzero ???

AH = 23h ??? some sort of time calculation

AH = 24h compare filenames

    DS:SI -> first ASCIZ filename

    ES:DI -> second ASCIZ filename

    Return: ZF set if files are same ignoring case and / vs \

AH = 25h normalize filename

    DS:SI -> ASCIZ filename

    ES:DI -> buffer for result

    Return: filename uppercased, forward slashes changed to backslashes

AH = 26h get DOS stack

    Return: DS:SI -> top of stack

    CX = size of stack in bytes

AH = 27h increment InDOS flag

AH = 28h decrement InDOS flag

Note:	IFS drivers which do not wish to implement functions 20h or 24h-28h may

  pass them on to the default handler pointed at by [LoL+37h]

SeeAlso: #0871,#0872

INT 21 52--


21 52-- Format of IFS driver list:

Copy to Main

Table 0871

Format of IFS driver list:

Offset	Size	Description

 00h	DWORD	pointer to next driver header

 04h  8 BYTEs	IFS driver name (blank padded), as used by FILESYS command

 0Ch  4 BYTEs	???

 10h	DWORD	pointer to IFS utility function entry point (see #0870)

call with ES:BX -> IFS request (see #0872)

 14h	WORD	offset in header's segment of driver entry point

???

SeeAlso: #0870,#0872

INT 21 52--


21 52-- Format of IFS request block:

Copy to Main

Table 0872

Format of IFS request block:

Offset	Size	Description

 00h	WORD	total size in bytes of request

 02h	BYTE	class of request

02h ???

03h redirection

04h ???

05h file access

06h convert error code to string

07h ???

 03h	WORD	returned DOS error code

 05h	BYTE	IFS driver exit status

00h success

01h ???

02h ???

03h ???

04h ???

FFh internal failure

 06h 16 BYTEs	???

---request class 02h---

 16h	BYTE	function code

04h ???

 17h	BYTE	unused???

 18h	DWORD	pointer to ???

 1Ch	DWORD	pointer to ???

 20h  2 BYTEs	???

---request class 03h---

 16h	BYTE	function code

 17h	BYTE	???

 18h	DWORD	pointer to ???

 1Ch	DWORD	pointer to ???

 22h	WORD	returned ???

 24h	WORD	returned ???

 26h	WORD	returned ???

 28h	BYTE	returned ???

 29h	BYTE	unused???

---request class 04h---

 16h	DWORD	pointer to ???

 1Ah	DWORD	pointer to ???

---request class 05h---

 16h	BYTE	function code

01h flush disk buffers

02h get disk space

03h MKDIR

04h RMDIR

05h CHDIR

06h delete file

07h rename file

08h search directory

09h file open/create

0Ah LSEEK

0Bh read from file

0Ch write to file

0Dh lock region of file

0Eh commit/close file

0Fh get/set file attributes

10h printer control

11h ???

12h process termination

13h ???

---class 05h function 01h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	BYTE	???

 27h	BYTE	???

---class 05h function 02h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	WORD	returned total clusters

 28h	WORD	returned sectors per cluster

 2Ah	WORD	returned bytes per sector

 2Ch	WORD	returned available clusters

 2Eh	BYTE	returned ???

 2Fh	BYTE	???

---class 05h functions 03h,04h,05h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	DWORD	pointer to directory name

---class 05h function 06h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	WORD	attribute mask

 28h	DWORD	pointer to filename

---class 05h function 07h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	WORD	attribute mask

 28h	DWORD	pointer to source filespec

 2Ch	DWORD	pointer to destination filespec

---class 05h function 08h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	BYTE	00h FINDFIRST

01h FINDNEXT

 28h	DWORD	pointer to FindFirst search data + 01h if FINDNEXT

 2Ch	WORD	search attribute if FINDFIRST

 2Eh	DWORD	pointer to filespec if FINDFIRST

---class 05h function 09h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 26h	WORD	???  \ together, specify open vs. create, whether or

 28h	WORD	???  / not to truncate

 2Ah  4 BYTEs	???

 2Eh	DWORD	pointer to filename

 32h  4 BYTEs	???

 36h	WORD	file attributes on call

returned ???

 38h	WORD	returned ???

---class 05h function 0Ah---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 26h	BYTE	seek type (02h = from end)

 28h	DWORD	offset on call

returned new absolute position

---class 05h functions 0Bh,0Ch---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 28h	WORD	number of bytes to transfer

returned bytes actually transferred

 2Ah	DWORD	transfer address

---class 05h function 0Dh---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 26h	BYTE	file handle???

 27h	BYTE	unused???

 28h	WORD	???

 2Ah	WORD	???

 2Ch	WORD	???

 2Eh	WORD	???

---class 05h function 0Eh---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 26h	BYTE	00h commit file

01h close file

 27h	BYTE	unused???

---class 05h function 0Fh---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h  4 BYTEs	???

 26h	BYTE	02h GET attributes

03h PUT attributes

 27h	BYTE	unused???

 28h 12 BYTEs	???

 34h	WORD	search attributes???

 36h	DWORD	pointer to filename

 3Ah	WORD	(GET) returned ???

 3Ch	WORD	(GET) returned ???

 3Eh	WORD	(GET) returned ???

 40h	WORD	(GET) returned ???

 42h	WORD	(PUT) new attributes

(GET) returned attributes

---class 05h function 10h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 26h	WORD	???

 28h	DWORD	pointer to ???

 2Ch	WORD	???

 2Eh	BYTE	???

 2Fh	BYTE	subfunction

01h get printer setup

03h ???

04h ???

05h ???

06h ???

07h ???

21h set printer setup

---class 05h function 11h---

 17h  7 BYTEs	???

 1Eh	DWORD	pointer to ???

 22h	DWORD	pointer to IFS open file structure (see #0873)

 26h	BYTE	subfunction

 27h	BYTE	unused???

 28h	WORD	???

 2Ah	WORD	???

 2Ch	WORD	???

 2Eh	BYTE	???

 2Fh	BYTE	???

---class 05h function 12h---

 17h 15 BYTEs	unused???

 26h	WORD	PSP segment

 28h	BYTE	type of process termination

 29h	BYTE	unused???

---class 05h function 13h---

 17h 15 BYTEs	unused???

 26h	WORD	PSP segment

---request class 06h---

 16h	DWORD	returned pointer to string corresponding to error code at 03h

 1Ah	BYTE	returned ???

 1Bh	BYTE	unused

---request class 07h---

 16h	DWORD	pointer to IFS open file structure (see #0873)

 1Ah	BYTE	???

 1Bh	BYTE	unused???

SeeAlso: #0871,#0870,#0873

INT 21 52--


21 52-- Format of IFS open file structure:

Copy to Main

Table 0873

Format of IFS open file structure:

Offset	Size	Description

 00h	WORD	???

 02h	WORD	device info word

 04h	WORD	file open mode

 06h	WORD	???

 08h	WORD	file attributes

 0Ah	WORD	owner's network machine number

 0Ch	WORD	owner's PSP segment

 0Eh	DWORD	file size

 12h	DWORD	current offset in file

 16h	WORD	file time

 18h	WORD	file date

 1Ah 11 BYTEs	filename in FCB format

 25h	WORD	???

 27h	WORD	hash value of SFT address

(low word of linear address + segment&F000h)

 29h  3 WORDs	network info from SFT

 2Fh	WORD	???

INT 21 52--


21 52-- Format of one item in DOS 4.0+ list of special program names:

Copy to Main

Table 0874

Format of one item in DOS 4.0+ list of special program names:

Offset	Size	Description

 00h	BYTE	length of name (00h = end of list)

 01h  N BYTEs	name in format name.ext

 N    2 BYTEs	DOS version to return for program (major,minor)

(see AH=30h,INT 2F/AX=122Fh)

---DOS 4 only---

 N+2	BYTE	number of times to return fake version number (FFh = always)

Note:	if the name of the executable for the program making the DOS "get

  version" call matches one of the names in this list, DOS returns the

  specified version rather than the true version number

INT 21 52--


21 53-- Format of BIOS Parameter Block:

Copy to Main

Table 0875

Format of BIOS Parameter Block:

Offset	Size	Description

 00h	WORD	number of bytes per sector

 02h	BYTE	number of sectors per cluster

 03h	WORD	number of reserved sectors at start of disk

 05h	BYTE	number of FATs

 06h	WORD	number of entries in root directory

 08h	WORD	total number of sectors

for DOS 4.0+, set to zero if partition >32M, then set DWORD at

  15h to actual number of sectors

 0Ah	BYTE	media ID byte (see #0581)

 0Bh	WORD	number of sectors per FAT

---DOS 2.13---

 0Dh	WORD	number of sectors per track

 0Fh	WORD	number of heads

 11h	WORD	number of hidden sectors

---DOS 3.0+ ---

 0Dh	WORD	number of sectors per track

 0Fh	WORD	number of heads

 11h	DWORD	number of hidden sectors

 15h 11 BYTEs	reserved

---DOS 4.0+ ---

 15h	DWORD	total number of sectors if word at 08h contains zero

 19h  6 BYTEs	???

 1Fh	WORD	number of cylinders

 21h	BYTE	device type

 22h	WORD	device attributes (removable or not, etc)

---DR-DOS 5+ ---

 15h	DWORD	total number of sectors if word at 08h contains zero

 19h  6 BYTEs	reserved

---European MS-DOS 4.00---

 15h	DWORD	total number of sectors if word at 08h contains zero

(however, this DOS does not actually implement >32M partitions)

SeeAlso: #0620

INT 21 53--


21 5700 Bitfields for file time:

Copy to Main

Table 0876

Bitfields for file time:

Bit(s)	Description

 15-11	hours (0-23)

 10-5	minutes

 4-0	seconds/2

INT 21 5700


21 5700 Bitfields for file date:

Copy to Main

Table 0877

Bitfields for file date:

Bit(s)	Description

 15-9	year - 1980

 8-5	month

 4-0	day

INT 21 5700


21 5702 Format of EAP (extended attribute properties) list:

Copy to Main

Table 0878

Format of EAP (extended attribute properties) list:

Offset	Size	Description

 00h	WORD	number of EAP structures following

 02h	var	array of EAP structures (see #0879)

SeeAlso: #0881

INT 21 5702


21 5702 Format of EAP (extended attribute property) structure:

Copy to Main

Table 0879

Format of EAP (extended attribute property) structure:

Offset	Size	Description

 00h	BYTE	attribute type

01h boolean (either 00h or 01h)

02h number (BYTE, WORD, or DWORD)

03h string

04h date stamp

05h time stamp

 01h	WORD	EAP flags (see #0880)

 03h	BYTE	size of reference string (name)

 04h  N BYTEs	reference string

INT 21 5702


21 5702 Bitfields for EAP flags:

Copy to Main

Table 0880

Bitfields for EAP flags:

Bit(s)	Description

 12	unchangeable

 13	ignore

 14	unchangeable

 15	used by COMMAND.COM for code page, but not understood by ATTRIB

INT 21 5702


21 5702 Format of EAV (extended attribute value) list:

Copy to Main

Table 0881

Format of EAV (extended attribute value) list:

Offset	Size	Description

 00h	WORD	number of EAV structures following

 02h	var	array of Extended Attribute Value structures (see #0882)

SeeAlso: #0878

INT 21 5702


21 5702 Format of Extended Attribute Value structures:

Copy to Main

Table 0882

Format of Extended Attribute Value structures:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	BYTE	size of reference string

 05h	WORD	size of value

 07h	var	reference string

var	value

INT 21 5702


21 5702 Format of FAPI path information:

Copy to Main

Table 0883

Format of FAPI path information:

Offset	Size	Description

 00h 22 BYTEs	???

 16h	DWORD	extended attribute size (none present if less than 5)

INT 21 5702


21 58-- Values for DOS memory allocation strategy:

Copy to Main

Table 0884

Values for DOS memory allocation strategy:

 00h low memory first fit

 01h low memory best fit

 02h low memory last fit

---DOS 5+ ---

 40h high memory first fit

 41h high memory best fit

 42h high memory last fit

 80h first fit, try high then low memory

 81h best fit, try high then low memory

 82h last fit, try high then low memory

INT 21 58--


21 59-- Values for DOS extended error code:

Copy to Main

Table 0885

Values for DOS extended error code:

 00h (0)   no error

 01h (1)   function number invalid

 02h (2)   file not found

 03h (3)   path not found

 04h (4)   too many open files (no handles available)

 05h (5)   access denied

 06h (6)   invalid handle

 07h (7)   memory control block destroyed

 08h (8)   insufficient memory

 09h (9)   memory block address invalid

 0Ah (10)  environment invalid (usually >32K in length)

 0Bh (11)  format invalid

 0Ch (12)  access code invalid

 0Dh (13)  data invalid

 0Eh (14)  reserved

 0Fh (15)  invalid drive

 10h (16)  attempted to remove current directory

 11h (17)  not same device

 12h (18)  no more files

---DOS 3.0+ ---

 13h (19)  disk write-protected

 14h (20)  unknown unit

 15h (21)  drive not ready

 16h (22)  unknown command

 17h (23)  data error (CRC)

 18h (24)  bad request structure length

 19h (25)  seek error

 1Ah (26)  unknown media type (non-DOS disk)

 1Bh (27)  sector not found

 1Ch (28)  printer out of paper

 1Dh (29)  write fault

 1Eh (30)  read fault

 1Fh (31)  general failure

 20h (32)  sharing violation

 21h (33)  lock violation

 22h (34)  disk change invalid (ES:DI -> media ID structure)(see #0886)

 23h (35)  FCB unavailable

 24h (36)  sharing buffer overflow

 25h (37)  (DOS 4.0+) code page mismatch

 26h (38)  (DOS 4.0+) cannot complete file operation (out of input)

 27h (39)  (DOS 4.0+) insufficient disk space

 28h-31h   reserved

 32h (50)  network request not supported

 33h (51)  remote computer not listening

 34h (52)  duplicate name on network

 35h (53)  network name not found

 36h (54)  network busy

 37h (55)  network device no longer exists

 38h (56)  network BIOS command limit exceeded

 39h (57)  network adapter hardware error

 3Ah (58)  incorrect response from network

 3Bh (59)  unexpected network error

 3Ch (60)  incompatible remote adapter

 3Dh (61)  print queue full

 3Eh (62)  queue not full

 3Fh (63)  not enough space to print file

 40h (64)  network name was deleted

 41h (65)  network: Access denied

 42h (66)  network device type incorrect

 43h (67)  network name not found

 44h (68)  network name limit exceeded

 45h (69)  network BIOS session limit exceeded

 46h (70)  temporarily paused

 47h (71)  network request not accepted

 48h (72)  network print/disk redirection paused

 49h (73)  network software not installed

    (LANtastic) invalid network version

 4Ah (74)  unexpected adapter close

    (LANtastic) account expired

 4Bh (75)  (LANtastic) password expired

 4Ch (76)  (LANtastic) login attempt invalid at this time

 4Dh (77)  (LANtastic v3+) disk limit exceeded on network node

 4Eh (78)  (LANtastic v3+) not logged in to network node

 4Fh (79)  reserved

 50h (80)  file exists

 51h (81)  reserved

 52h (82)  cannot make directory

 53h (83)  fail on INT 24h

 54h (84)  (DOS 3.3+) too many redirections

 55h (85)  (DOS 3.3+) duplicate redirection

 56h (86)  (DOS 3.3+) invalid password

 57h (87)  (DOS 3.3+) invalid parameter

 58h (88)  (DOS 3.3+) network write fault

 59h (89)  (DOS 4.0+) function not supported on network

 5Ah (90)  (DOS 4.0+) required system component not installed

 64h (100) (MSCDEX) unknown error

 65h (101) (MSCDEX) not ready

 66h (102) (MSCDEX) EMS memory no longer valid

 67h (103) (MSCDEX) not High Sierra or ISO-9660 format

 68h (104) (MSCDEX) door open

INT 21 59--


21 59-- Format of media ID structure:

Copy to Main

Table 0886

Format of media ID structure:

Offset	Size	Description

 00h 12 BYTEs	ASCIZ volume label of required disk

 0Ch	DWORD	serial number (DOS 4.0+)

INT 21 59--


21 59-- Values for DOS Error Class:

Copy to Main

Table 0887

Values for DOS Error Class:

 01h	out of resource (storage space or I/O channels)

 02h	temporary situation (file or record lock)

 03h	authorization (denied access)

 04h	internal (system software bug)

 05h	hardware failure

 06h	system failure (configuration file missing or incorrect)

 07h	application program error

 08h	not found

 09h	bad format

 0Ah	locked

 0Bh	media error

 0Ch	already exists

 0Dh	unknown

INT 21 59--


21 59-- Values for DOS Suggested Action:

Copy to Main

Table 0888

Values for DOS Suggested Action:

 01h	retry

 02h	delayed retry

 03h	prompt user to reenter input

 04h	abort after cleanup

 05h	immediate abort

 06h	ignore

 07h	retry after user intervention

INT 21 59--


21 59-- Values for DOS Error Locus:

Copy to Main

Table 0889

Values for DOS Error Locus:

 01h	unknown or not appropriate

 02h	block device (disk error)

 03h	network related

 04h	serial device (timeout)

 05h	memory related

INT 21 59--


21 59-- Format of European MS-DOS 4.0 hard error information packet:

Copy to Main

Table 0890

Format of European MS-DOS 4.0 hard error information packet:

Offset	Size	Description

 00h	WORD	contents of AX at system entry

 02h	WORD	Process ID which encountered error

 04h	WORD	contents of AX at time of error

 06h	BYTE	error type

00h physical I/O error

01h disk change request

02h file sharing violation

03h FCB problem

04h file locking violation

05h bad FAT

06h network detected error

 07h	BYTE	INT 24 error code

 08h	WORD	extended error code (see #0885)

 0Ah	DWORD	pointer to associated device

INT 21 59--


21 5D00 Format of DOS parameter list:

Copy to Main

Table 0891

Format of DOS parameter list:

Offset	Size	Description

 00h	WORD	AX

 02h	WORD	BX

 04h	WORD	CX

 06h	WORD	DX

 08h	WORD	SI

 0Ah	WORD	DI

 0Ch	WORD	DS

 0Eh	WORD	ES

 10h	WORD	reserved (0)

 12h	WORD	computer ID (0 = current system)

 14h	WORD	process ID (PSP segment on specified computer)

Note:	under Windows Enhanced mode, the computer ID is normally the virtual

  machine ID (see INT 2F/AX=1683h), though this can reportedly be

  changed by setting UniqueDOSPSP= in SYSTEM.INI

INT 21 5D00


21 5D06 Format of DOS 3.10-3.30 Swappable Data Area:

Copy to Main

Table 0892

Format of DOS 3.10-3.30 Swappable Data Area:

Offset	Size	Description

 -34	BYTE	(DOS 3.10+) printer echo flag (00h off, FFh active)

 -31	BYTE	(DOS 3.30) current switch character

 -28	BYTE	(DOS 3.30) incremented on each INT 21/AX=5E01h call

 -27 16 BYTEs	(DOS 3.30) machine name set by INT 21/AX=5E01h

 -11  5 WORDs	zero-terminated list of offsets which need to be patched to

  enable critical-section calls (see INT 2A/AH=80h)

 -1	BYTE	unused padding

---start of actual SDA---

 00h	BYTE	critical error flag ("ErrorMode")

 01h	BYTE	InDOS flag (count of active INT 21 calls)

 02h	BYTE	drive on which current critical error occurred, or FFh

(DR-DOS sets to drive number during INT 24, 00h otherwise)

 03h	BYTE	locus of last error

 04h	WORD	extended error code of last error

 06h	BYTE	suggested action for last error

 07h	BYTE	class of last error

 08h	DWORD	ES:DI pointer for last error

 0Ch	DWORD	current DTA (Disk Transfer Address)

note: may point into SDA during the DOS EXEC function

  (see AH=4Bh), so programs which swap the SDA must be

  prepared to move the DTA to a private buffer if they

  might be invoked during an EXEC

 10h	WORD	current PSP

 12h	WORD	stores SP across an INT 23

 14h	WORD	return code from last process termination (zerod after reading

  with AH=4Dh)

 16h	BYTE	current drive

 17h	BYTE	extended break flag

---remainder need only be swapped if in DOS---

 18h	WORD	value of AX on call to INT 21

 1Ah	WORD	PSP segment for sharing/network

 1Ch	WORD	network machine number for sharing/network (0000h = us)

 1Eh	WORD	first usable memory block found when allocating memory

 20h	WORD	best usable memory block found when allocating memory

 22h	WORD	last usable memory block found when allocating memory

 24h	WORD	memory size in paragraphs (used only during initialization)

 26h	WORD	last entry checked during directory search

 28h	BYTE	flag: INT 24 returned Fail

 29h	BYTE	flags: allowable INT 24 actions (passed to INT 24 in AH)

 2Ah	BYTE	directory flag (00h directory, 01h file)

 2Bh	BYTE	flag: FFh if Ctrl-Break termination, 00h otherwise

 2Ch	BYTE	flag: allow embedded blanks in FCB

 2Dh	BYTE	padding (unused)

 2Eh	BYTE	day of month

 2Fh	BYTE	month

 30h	WORD	year - 1980

 32h	WORD	number of days since 1-1-1980

 34h	BYTE	day of week (0 = Sunday)

 35h	BYTE	flag: console swapped during read from device

 36h	BYTE	flag: safe to call INT 28 if nonzero

 37h	BYTE	flag: if nonzero, INT 24 Abort turned into INT 24 Fail

(set only during process termination)

 38h 26 BYTEs	device driver request header (see #1382 at INT 2F/AX=0802h)

 52h	DWORD	pointer to device driver entry point (used in calling driver)

 56h 22 BYTEs	device driver request header for I/O calls

 6Ch 14 BYTEs	device driver request header for disk status check

 7Ah	DWORD	pointer to device I/O buffer???

 7Eh	WORD	???

 80h	WORD	???

 82h	BYTE	type of PSP copy (00h=simple for INT 21/AH=26h, FFh=make child)

 83h	BYTE	padding (unused)

 84h  3 BYTEs	24-bit user number (see AH=30h)

 87h	BYTE	OEM number (see #0619 at AH=30h)

 88h	WORD	offset to error code conversion table for INT 25/INT 26

 8Ah  6 BYTEs	CLOCK$ transfer record (see #0893)

 90h	BYTE	device I/O buffer for single-byte I/O functions

 91h	BYTE	padding??? (unused)

 92h 128 BYTEs	buffer for filename

112h 128 BYTEs	buffer for filename

192h 21 BYTEs	findfirst/findnext search data block (see #0839 at AH=4Eh)

1A7h 32 BYTEs	directory entry for found file (see #0580 at AH=11h)

1C7h 81 BYTEs	copy of current directory structure for drive being accessed

218h 11 BYTEs	FCB-format filename for device name comparison

223h	BYTE	terminating NUL for above filename

224h 11 BYTEs	wildcard destination specification for rename (FCB format)

22Fh	BYTE	terminating NUL for above spec

230h	BYTE	???

231h	WORD	destination file/directory starting sector

233h  5 BYTEs	???

238h	BYTE	extended FCB file attribute

239h	BYTE	type of FCB (00h regular, FFh extended)

23Ah	BYTE	directory search attributes

23Bh	BYTE	file open/access mode

23Ch	BYTE	file found/delete flag

bit 0: file found

bit 4: file deleted

23Dh	BYTE	flag: device name found on rename, or file not found

23Eh	BYTE	splice flag (file name and directory name together)

23Fh	BYTE	flag indicating how DOS function was invoked

(00h = direct INT 20/INT 21, FFh = server call AX=5D00h)

240h	BYTE	sector position within cluster

241h	BYTE	flag: translate sector/cluster (00h no, 01h yes)

242h	BYTE	flag: 00h if read, 01h if write

243h	BYTE	current working drive number

244h	BYTE	cluster factor

245h	BYTE	flag: cluster split mode

246h	BYTE	line edit (AH=0Ah) insert mode flag (nonzero = on)

247h	BYTE	canonicalized filename referred to existing file/dir if FFh

248h	BYTE	volume ID flag

249h	BYTE	type of process termination (00h-03h) (see AH=4Dh)

24Ah	BYTE	file create flag (00h = no, search only)

24Bh	BYTE	value with which to replace first byte of deleted file's name

  (normally E5h, but 00h as described under INT 21/AH=13h)

24Ch	DWORD	pointer to Drive Parameter Block for critical error invocation

temp: used during process termination

250h	DWORD	pointer to stack frame containing user registers on INT 21

254h	WORD	stores SP across INT 24

256h	DWORD	pointer to DOS Drive Parameter Block for ???

25Ah	WORD	saving partial cluster number

25Ch	WORD	temp: sector of work current cluster

25Eh	WORD	high part of cluster number (only low byte referenced)

260h	WORD	??? temp

262h	BYTE	Media ID byte returned by AH=1Bh,1Ch

263h	BYTE	padding (unused)

264h	DWORD	pointer to device header when filename is character device

268h	DWORD	pointer to current SFT

26Ch	DWORD	pointer to current directory structure for drive being accessed

270h	DWORD	pointer to caller's FCB

274h	WORD	number of SFT to which file being opened will refer

276h	WORD	temporary storage for file handle

278h	DWORD	pointer to a JFT entry in process handle table

  (see #0603 at AH=26h)

27Ch	WORD	offset in DOS DS of first filename argument

27Eh	WORD	offset in DOS DS of second filename argument

280h	WORD	offset of last component in pathname or FFFFh

282h	WORD	offset of transfer address to add

284h	WORD	last relative cluster within file being accessed

286h	WORD	temp: absolute cluster number being accessed

288h	WORD	directory sector number

28Ah	WORD	??? current cluster number

28Ch	WORD	current relative sector number within file

28Eh	WORD	current sector number

290h	WORD	current byte offset within sector

292h	DWORD	current offset in file

296h	DWORD	temp: file byte count

29Ah	WORD	temp: file byte count

29Ch	WORD	free file cluster entry

29Eh	WORD	last file cluster entry

2A0h	WORD	next file cluster number

2A2h	DWORD	number of bytes appended to file

2A6h	DWORD	pointer to current work disk buffer

2AAh	DWORD	pointer to working SFT

2AEh	WORD	used by INT 21 dispatcher to store caller's BX

2B0h	WORD	used by INT 21 dispatcher to store caller's DS

2B2h	WORD	temporary storage while saving/restoring caller's registers

2B4h	DWORD	pointer to prev call frame (offset 250h) if INT 21 reentered

also switched to for duration of INT 24

2B8h 21 BYTEs	FindFirst search data for source file(s) of a rename operation

(see #0839 at AH=4Eh)

2CDh 32 BYTEs	directory entry for file being renamed (see #0580 at AH=11h)

2EDh 331 BYTEs	critical error stack

   403h	 35 BYTEs scratch SFT

438h 384 BYTEs	disk stack (functions greater than 0Ch, INT 25,INT 26)

5B8h 384 BYTEs	character I/O stack (functions 01h through 0Ch)

---DOS 3.2,3.3x only---

738h	BYTE	device driver lookahead flag (usually printer) (see AH=64h)

739h	BYTE	volume change flag

73Ah	BYTE	flag: virtual open

73Bh	BYTE	???

SeeAlso: #0895

INT 21 5D06


21 5D06 Format of CLOCK$ transfer record:

Copy to Main

Table 0893

Format of CLOCK$ transfer record:

Offset	Size	Description

 00h	WORD	number of days since 1-Jan-1980

 02h	BYTE	minutes

 03h	BYTE	hours

 04h	BYTE	hundredths of second

 05h	BYTE	seconds

INT 21 5D06


21 5D0B Format of DOS 4.x swappable data area list:

Copy to Main

Table 0894

Format of DOS 4.x swappable data area list:

Offset	Size	Description

 00h	WORD	count of data areas

 02h  N BYTEs	"count" copies of data area record

Offset	Size	Description

 00h	DWORD	address

 04h	WORD	length and type

bit 15 set if swap always, clear if swap in DOS

bits 14-0: length in bytes

SeeAlso: #0895

INT 21 5D0B


21 5D0B Format of DOS 4.0-6.0 swappable data area:

Copy to Main

Table 0895

Format of DOS 4.0-6.0 swappable data area:

Offset	Size	Description

 -34	BYTE	printer echo flag (00h off, FFh active)

 -31	BYTE	current switch character (ignored by DOS 5+)

 -28	BYTE	incremented on each INT 21/AX=5E01h call

 -27 16 BYTEs	machine name set by INT 21/AX=5E01h

 -11  5 WORDs	zero-terminated list of offsets which need to be patched to

  enable critical-section calls (see INT 2A/AH=80h)

(all offsets are 0D0Ch, but this list is still present for

  DOS 3.x compatibility)

 -1	BYTE	unused padding

---start of actual SDA---

 00h	BYTE	critical error flag ("ErrorMode")

 01h	BYTE	InDOS flag (count of active INT 21 calls)

 02h	BYTE	drive on which current critical error occurred or FFh

 03h	BYTE	locus of last error

 04h	WORD	extended error code of last error

 06h	BYTE	suggested action for last error

 07h	BYTE	class of last error

 08h	DWORD	ES:DI pointer for last error

 0Ch	DWORD	current DTA (Disk Transfer Address)

note: may point into SDA during the DOS EXEC function

  (see AH=4Bh), so programs which swap the SDA must be

  prepared to move the DTA to a private buffer if they

  might be invoked during an EXEC

 10h	WORD	current PSP

 12h	WORD	stores SP across an INT 23

 14h	WORD	return code from last process termination (zerod after reading

  with AH=4Dh)

 16h	BYTE	current drive

 17h	BYTE	extended break flag

 18h	BYTE	flag: code page switching

 19h	BYTE	flag: copy of previous byte in case of INT 24 Abort

---remainder need only be swapped if in DOS---

 1Ah	WORD	value of AX on call to INT 21

 1Ch	WORD	PSP segment for sharing/network

 1Eh	WORD	network machine number for sharing/network (0000h = us)

 20h	WORD	first usable memory block found when allocating memory

 22h	WORD	best usable memory block found when allocating memory

 24h	WORD	last usable memory block found when allocating memory

 26h	WORD	memory size in paragraphs (used only during initialization)

 28h	WORD	last entry checked during directory search

 2Ah	BYTE	flag: nonzero if INT 24 Fail

 2Bh	BYTE	flags: allowable INT 24 responses (passed to INT 24 in AH)

 2Ch	BYTE	flag: do not set directory if nonzero

 2Dh	BYTE	flag: program aborted by ^C

 2Eh	BYTE	flag: allow embedded blanks in FCB

may also allow use of "*" wildcard in FCBs

 2Fh	BYTE	padding (unused)

 30h	BYTE	day of month

 31h	BYTE	month

 32h	WORD	year - 1980

 34h	WORD	number of days since 1-1-1980

 36h	BYTE	day of week (0 = Sunday)

 37h	BYTE	flag: console swapped during read from device

 38h	BYTE	flag: safe to call INT 28 if nonzero

 39h	BYTE	flag: abort currently in progress, turn INT 24 Abort into Fail

 3Ah 30 BYTEs	device driver request header (see #1382 at INT 2F/AX=0802h) for

  device calls

 58h	DWORD	pointer to device driver entry point (used in calling driver)

 5Ch 22 BYTEs	device driver request header for I/O calls

 72h 14 BYTEs	device driver request header for disk status check

 80h	DWORD	pointer to device I/O buffer

 84h	WORD	???

 86h	WORD	??? (0)

 88h	BYTE	type of PSP copy (00h=simple for INT 21/AH=26h, FFh=make child)

 89h	DWORD	start offset of file region to lock/unlock

 8Dh	DWORD	length of file region to lock/unlock

 91h	BYTE	padding (unused)

 92h  3 BYTEs	24-bit user number (see AH=30h)

 95h	BYTE	OEM number (see #0619 at AH=30h)

 96h  6 BYTEs	CLOCK$ transfer record (see #0893 at AX=5D06h)

 9Ch	BYTE	device I/O buffer for single-byte I/O functions

 9Dh	BYTE	padding???

 9Eh 128 BYTEs	buffer for filename

11Eh 128 BYTEs	buffer for filename

19Eh 21 BYTEs	findfirst/findnext search data block (see #0839 at AH=4Eh)

1B3h 32 BYTEs	directory entry for found file (see #0619 at AH=11h)

1D3h 88 BYTEs	copy of current directory structure for drive being accessed

22Bh 11 BYTEs	FCB-format filename for device name comparison

236h	BYTE	terminating NUL for above filename

237h 11 BYTEs	wildcard destination specification for rename (FCB format)

242h	BYTE	terminating NUL for above filespec

243h	BYTE	???

244h	WORD	???

246h  5 BYTEs	???

24Bh	BYTE	extended FCB file attributes

24Ch	BYTE	type of FCB (00h regular, FFh extended)

24Dh	BYTE	directory search attributes

24Eh	BYTE	file open/access mode

24Fh	BYTE	??? flag bits

reportedly 00h when deleting a file under MSDOS 5.0

250h	BYTE	flag: device name found on rename, or file not found

251h	BYTE	splice flag??? (file name and directory name together)

252h	BYTE	flag indicating how DOS function was invoked

(00h = direct INT 20/INT 21, FFh = server call AX=5D00h)

253h	BYTE	sector position within cluster

254h	BYTE	??? (flag: translate sector/cluster)

255h	BYTE	??? (flag: 00h if read, 01h if write)

256h	BYTE	current working drive number

257h	BYTE	cluster factor

258h	BYTE	???

259h	BYTE	line edit (AH=0Ah) insert mode flag (nonzero = on)

25Ah	BYTE	canonicalized filename referred to existing file/dir if FFh

25Bh	BYTE	volume ID flag

25Ch	BYTE	type of process termination (00h-03h) (see AH=4Dh)

25Dh	BYTE	???

25Eh	BYTE	??? file create flag (00h = no, search only)

25Fh	BYTE	??? (value for deleted file's first byte)

260h	DWORD	pointer to Drive Parameter Block for critical error invocation

264h	DWORD	pointer to stack frame containing user registers on INT 21

268h	WORD	stores SP across INT 24

26Ah	DWORD	pointer to DOS Drive Parameter Block for ???

26Eh	WORD	segment of disk buffer

270h	WORD	??? (saving partial cluster number)

272h	WORD	??? (temp: sector of work current cluster)

274h	WORD	??? (high part of cluster number)

276h	WORD	??? (temp)

278h	BYTE	Media ID byte returned by AH=1Bh,1Ch

279h	BYTE	??? (doesn't seem to be referenced)

27Ah	DWORD	pointer to device header if filename is character device

27Eh	DWORD	pointer to current SFT

282h	DWORD	pointer to current directory structure for drive being accessed

286h	DWORD	pointer to caller's FCB

28Ah	WORD	SFT index to which file being opened will refer

28Ch	WORD	temporary storage for file handle

28Eh	DWORD	pointer to a JFT entry in process handle table

  (see #0603 at AH=26h)

292h	WORD	offset in DOS DS of first filename argument

294h	WORD	offset in DOS DS of second filename argument

296h	WORD	??? (offset of last component in pathname or FFFFh)

298h	WORD	offset of transfer address to add

29Ah	WORD	last relative cluster within file being accessed

29Ch	WORD	temp: absolute cluster number being accessed

29Eh	WORD	directory sector number

2A0h	WORD	???

2A2h	WORD	??? directory cluster number

2A4h	DWORD	current relative sector number within file

2A8h	DWORD	??? (current sector number)

2ACh	WORD	??? (current byte offset within sector)

2AEh	DWORD	current offset in file

2B2h	WORD	???

2B4h	WORD	bytes in partial sector

2B6h	WORD	number of sectors

2B8h	WORD	??? (free file cluster entry)

2BAh	WORD	??? (last file cluster entry)

2BCh	WORD	??? (next file cluster number)

2BEh	DWORD	number of bytes appended to file

2C2h	DWORD	pointer to current work disk buffer

2C6h	DWORD	pointer to working SFT

2CAh	WORD	used by INT 21 dispatcher to store caller's BX

2CCh	WORD	used by INT 21 dispatcher to store caller's DS

2CEh	WORD	temporary storage while saving/restoring caller's registers

2D0h	DWORD	pointer to prev call frame (offset 264h) if INT 21 reentered

also switched to for duration of INT 24

2D4h	WORD	open mode/action for INT 21/AX=6C00h

2D6h	BYTE	??? (set to 00h by INT 21h dispatcher, 02h when a read is

  performed, and 01h or 03h by INT 21/AX=6C00h)

2D7h	WORD	??? apparently unused

2D9h	DWORD	stored ES:DI for AX=6C00h

2DDh	WORD	extended file open action code (see #0966 at AX=6C00h)

2DFh	WORD	extended file open attributes (see #0965 at AX=6C00h)

2E1h	WORD	extended file open file mode (see AX=6C00h)

2E3h	DWORD	pointer to filename to open (see AX=6C00h)

2E7h	WORD	??? temp DX storage or 0000h or temp data buffer size from

  disk buffer

2E9h	WORD	???

2EBh	BYTE	???

2ECh	WORD	stores DS during call to [List-of-Lists + 37h]

2EEh	WORD	???

2F0h	BYTE	???

2F1h	WORD	??? bit flags

2F3h	DWORD	pointer to user-supplied filename

2F7h	DWORD	pointer to ???

2FBh	WORD	stores SS during call to [List-of-Lists + 37h]

2FDh	WORD	stores SP during call to [List-of-Lists + 37h]

2FFh	BYTE	flag, nonzero if stack switched in calling [List-of-Lists+37h]

300h 21 BYTEs	FindFirst search data for source file(s) of a rename operation

(see #0839 at AH=4Eh)

315h 32 BYTEs	directory entry for file being renamed (see #0580 at AH=11h)

335h 331 BYTEs	critical error stack

480h 384 BYTEs	disk stack (functions greater than 0Ch, INT 25,INT 26)

600h 384 BYTEs	character I/O stack (functions 01h through 0Ch)

780h	BYTE	device driver lookahead flag (usually printer) (see AH=64h)

781h	BYTE	volume change flag

782h	BYTE	flag: virtual open

783h	BYTE	???

784h	WORD	???

786h	WORD	???

788h	WORD	???

78Ah	WORD	???

SeeAlso: #0892,#0894

INT 21 5D0B


21 5E01 Format of 10Net Configuration Table:

Copy to Main

Table 0896

Format of 10Net Configuration Table:

Offset	Size	Description

 00h  8 BYTEs	user name

 08h 15 BYTEs	node ID

 17h  3 BYTEs	unique portion of Ethernet address

 1Ah	BYTE	Who group number

 1Bh	WORD	services mask (see #0898)

 1Dh	DWORD	serial number

 21h	BYTE	maximum concurrent users with same serial number allowed on net

 22h	BYTE	chat mask (see #0899)

 23h	BYTE	internal system bits (see #0900)

 24h  9 BYTEs	version number in format MM.mm.xxx

 2Dh	BYTE	flag: 01h if machine is a PS/2

 2Eh	BYTE	flag: 03h if 80386

 2Fh	BYTE	spool termination mode: 01h concatenate, 02h truncate

(see AX=5D09h)

 30h	WORD	autospool timeout in clock ticks

 32h	WORD	monitor timeout in clock ticks

 34h	WORD	unused

 36h	WORD	chat timeout in clock ticks

 38h	WORD	netBIOS session timeout in half-seconds

 3Ah	WORD	datagram send timeout in seconds

 3Ch	WORD	keyboard value for initiating chat mode

 3Eh	WORD	Who timeout in clock ticks

 40h	BYTE	flag: 01h if server should process rom NetBIOS Post return

 41h	BYTE	flag: 01h if FCBs should be recycled

 42h  3 BYTEs	signature "DBG"

 45h	BYTE	last interrupt (21h or 6Fh)

 46h	BYTE	last INT 21 AH value

 47h	BYTE	last INT 6F AH value

 48h	WORD	last item posted

 4Ah	WORD	last item free-posted

 4Ch	WORD	last item handled by server

 4Eh	WORD	last redirector send NCB

 50h	WORD	last redirector receive NCB

 52h  4 BYTEs	signature "TABL"

 56h	WORD	offset of datagram buffer table header (see #0897)

 58h	WORD	offset of chat buffer table header (see #0897)

 5Ah	WORD	offset of Raw buffer table header (see #0897)

 5Ch	WORD	offset of Workstation buffer table header (see #0897)

 5Eh	WORD	offset of server receive-any table header (see #0897)

 60h	WORD	offset of Tiny buffer table header (see #0897)

 62h	WORD	offset of zero-length buffer table (NCBs) (see #0897)

 64h	WORD	offset of Rdr (Redirector Mount) table header (see #0897)

 66h	WORD	offset of Ntab (Redirector Session) table header (see #0897)

 68h	WORD	offset of FCB table header (see #0897)

 6Ah	WORD	offset of user file handle table header (see #0897)

 6Ch	WORD	offset of workstation printer RDR extension table header

 6Eh	WORD	offset of server shared device table header (see #0897)

 70h	WORD	offset of server connection table header (see #0897)

 72h	WORD	offset of server login table header (see #0897)

 74h	WORD	offset of server file table header (see #0897)

 76h	WORD	offset of server shared file table header (see #0897)

 78h	WORD	offset of server record lock table header (see #0897)

 7Ah	WORD	offset of remote printer claim table header (see #0897)

 7Ch	WORD	offset of remote printer device table header (see #0897)

 7Eh	WORD	offset of print server mount table header (see #0897)

 80h	WORD	offset of print server sessions table header (see #0897)

 82h	WORD	offset of print server print job structure table header

 84h	WORD	offset of print server pooled device table header (see #0897)

 86h	WORD	size of workstation buffer

 88h	WORD	size of server receive-any buffer

 8Ah	WORD	size of server raw I/O buffer

 8Ch  6 BYTEs	reserved

 92h	DWORD	pointer to profile pathname

 96h	BYTE	datagram retry count

 97h	BYTE	NetBIOS LAN adapter number

 98h  6 BYTEs	physical Ethernet address

 9Eh	BYTE	NetBIOS server name number

 9Fh	BYTE	NetBIOS redirector name number

 A0h	BYTE	10Net interrupt number

 A1h	BYTE	flag: chat is loaded

 A2h	BYTE	flag: INT 6F APIs permanently loaded

 A3h	BYTE	flag: file security present

 A4h	WORD	reserved

 A6h	BYTE	fixed mount bitmask for drives A:-H:

 A7h	BYTE	reserved

 A8h	WORD	10Net system flags (see #0901)

 AAh	BYTE	monitor flags (see #0902)

 ABh  5 BYTEs	reserved

 B0h	WORD	offset of monitor timer block

 B2h	WORD	offset of server timer block

 B4h	WORD	offset of chat timer block

 B6h	WORD	timer chain

 B8h  4 BYTEs	signature "TALS"

 BCh	WORD	number of 10Net sends

 BEh	WORD	number of 10Net receives

 C0h	WORD	number of no-buffer conditions

 C2h	WORD	number of dropped posted messages

 C4h	WORD	number of server NCB errors

 C6h	WORD	number of redirector NCB errors

 C8h	WORD	number of datagram send/receive errors

 CAh	WORD	number of dropped Whos

 CCh	WORD	number of dropped submits

 CEh	WORD	number of session aborts

 D0h	BYTE	number of NetBIOS interface-busy errors

 D1h	BYTE	last NetBIOS bad post command

 D2h	BYTE	last NetBIOS bad redirector command

 D3h	BYTE	do send datagram send/receive error command

 D4h	DWORD	-> DOS system parameter table

 D8h	WORD	number of DOS physical drives

 DAh	WORD	offset of DOS PSP field in DOS data segment

 DCh	WORD	offset of in-DOS flag in DOS data segment

 DEh	WORD	DOS data segment

 E0h	WORD	offset of DOS SFT in DOS data segment

 E2h	WORD	offset of number-of-physical-units field in DOS data segment

 E4h	WORD	10Net code segment

 E6h	WORD	10Net data segment

 E8h	WORD	10Net common server segment

 EAh	WORD	10Net file server segment

 ECh	WORD	10Net print server segment

 EEh	WORD	10Net remote printer segment

Note:	documentation lists field at offset D0h as a WORD, but all following

  offsets are as though it were a BYTE; if it is indeed a WORD, all

  offsets after D0h must be increased by one byte

INT 21 5E01


21 5E01 Format of 10Net Table Header:

Copy to Main

Table 0897

Format of 10Net Table Header:

Offset	Size	Description

 -16  4 BYTEs	table identifier

 -12	WORD	peak number of tables allocated

 -10	WORD	number of tables currently in use

 -8	WORD	total number of tables

 -6	WORD	size of each table

 -4	WORD	offset of first allocated table

 -2	WORD	offset of first free table

INT 21 5E01


21 5E01 Bitfields for 10NET services mask:

Copy to Main

Table 0898

Bitfields for 10NET services mask:

Bit(s)	Description

 0	workstation

 1	file server

 2	print queue server

 3	de-spool server

INT 21 5E01


21 5E01 Bitfields for 10NET chat mask:

Copy to Main

Table 0899

Bitfields for 10NET chat mask:

Bit(s)	Description

 0	chat permitted

 1	bell enabled

 2	chat keyboard initiated

 3	in INT 16 handler

 4	in Get Input

 5	display has timed out

 6	chat is idle

INT 21 5E01


21 5E01 Bitfields for 10NET internal system bits:

Copy to Main

Table 0900

Bitfields for 10NET internal system bits:

Bit(s)	Description

 0	submit permitted

 1	submit initiated

 2	submit executing

 3	internal client call/chat/spool/autospool

 4	in spool termination

 5	print permitted

 6	waiting for keyboard input

INT 21 5E01


21 5E01 Bitfields for 10NET System Flags:

Copy to Main

Table 0901

Bitfields for 10NET System Flags:

Bit(s)	Description

 0	in NetBIOS

 1	processing INT 28

 2	is server

 3	in net user-DOS function

 4	in DOS user-DOS function

 5	in net for user non-DOS function

 6	in server DOS function

 7	in server non-DOS function

 8	in terminate

 10	in user on server request

 13	in DOS for user on server

 14	disable critical error handler

INT 21 5E01


21 5E01 Bitfields for Monitor Flags:

Copy to Main

Table 0902

Bitfields for Monitor Flags:

Bit(s)	Description

 0	waiting for monitor response

 4	in monitor get-input routine

 5	monitor display timeout

 6	sensing for escape key

INT 21 5E01


21 5E04 Format of 10NET extended workstation printer setup structure:

Copy to Main

Table 0903

Format of 10NET extended workstation printer setup structure:

Offset	Size	Description

 00h	BYTE	notification flags (see #0904)

 01h	BYTE	job control mask (see #0905)

 02h	WORD	days to retain file

 04h	WORD	test print length

 06h	BYTE	number of copies to print

 07h	BYTE	compression algorithm

 08h	BYTE	tab width (00h = don't expand)

 09h	BYTE	initiation type (00h normal, 01h non-spooled)

 0Ah 38 BYTEs	job start operation notification instructions

 30h 32 BYTEs	comment for job

 50h 64 BYTEs	output filename or non-spooled file

INT 21 5E04


21 5E04 Bitfields for 10NET notification flags:

Copy to Main

Table 0904

Bitfields for 10NET notification flags:

Bit(s)	Description

 0	user at print start

 1	operator at start, with reply

 2	user at print completion

 3	operator at completion, with reply

 4	user on queue switch

 5	operator on queue switch, with reply

 6	user on print error

INT 21 5E04


21 5E04 Bitfields for 10NET job control mask:

Copy to Main

Table 0905

Bitfields for 10NET job control mask:

Bit(s)	Description

 0	print banner page

 1	eject page at end of job

 2	mark as "held" (queue but don't print)

 3	rush job (queue at top)

 4	overwrite file with zeros before deletion

 5	hyperspool if possible

INT 21 5E04


21 5F32 Format of Named Pipes _PIPEINFO structure:

Copy to Main

Table 0906

Format of Named Pipes _PIPEINFO structure:

Offset	Size	Description

 00h	WORD	size of outgoing buffer

 02h	WORD	size of incoming buffer

 04h	BYTE	maximum number of instances allowed

 05h	BYTE	current number of instances

 06h	BYTE	length of the name (including terminating NUL)

 07h  N BYTEs	name

INT 21 5F32


21 5F33 Bitfields for Named Pipes pipe mode:

Copy to Main

Table 0907

Bitfields for Named Pipes pipe mode:

Bit(s)	Description

 7	set if nonblocking, clear if blocking

 6	set if server end, clear if client end

 2	set if write in message mode, clear if write in byte mode

 0	set if read in message mode, clear if read in byte mode

INT 21 5F33


21 5F35 Values for pipe status:

Copy to Main

Table 0908

Values for pipe status:

 0001h	disconnected

 0002h	listening

 0003h	connected

 0004h	closing

INT 21 5F35


21 5F37 Format of Named Pipes DosCallNmPipe stack frame:

Copy to Main

Table 0909

Format of Named Pipes DosCallNmPipe stack frame:

Offset	Size	Description

 00h	DWORD	timeout

 04h	DWORD	-> bytes read WORD (not used!!)

 08h	WORD	out buffer length

 0Ah	DWORD	address of out buffer

 0Eh	WORD	in buffer length

 10h	DWORD	address of in buffer

 14h	DWORD	address of pipe name

INT 21 5F37


21 5F3B Format of LAN Manager handle_info_1 structure:

Copy to Main

Table 0910

Format of LAN Manager handle_info_1 structure:

Offset	Size	Description

 00h	DWORD	number of milliseconds which workstation collects data before

  it sends the data to the named pipe

 04h	DWORD	number of characters which workstation collects before it

  sends the data to the named pipe

INT 21 5F3B


21 5F40 Format of LAN Manager NetMessageBufferSend parameter structure:

Copy to Main

Table 0911

Format of LAN Manager NetMessageBufferSend parameter structure:

Offset	Size	Description

 00h	DWORD	-> recipient name (name for specific user, name* for domain

      wide name, * for broadcast)

 04h	DWORD	-> buffer

 08h	WORD	length of buffer

INT 21 5F40


21 5F41 Format of LAN Manager service_info_0 structure:

Copy to Main

Table 0912

Format of LAN Manager service_info_0 structure:

Offset	Size	Description

 00h 16 BYTEs	name

SeeAlso: #0913,#0914

INT 21 5F41


21 5F41 Format of service_info_1 structure:

Copy to Main

Table 0913

Format of service_info_1 structure:

Offset	Size	Description

 00h 16 BYTEs	name

 10h	WORD	status bitmask (see #0915)

 12h	DWORD	status code (see #0916)

(also see Microsoft LAN Manager Programmer's Reference)

 16h	WORD	process id

SeeAlso: #0912,#0914

INT 21 5F41


21 5F41 Format of service_info_2 structure:

Copy to Main

Table 0914

Format of service_info_2 structure:

Offset	Size	Description

 00h 16 BYTEs	name

 10h	WORD	status bitmask (see #0915)

 12h	DWORD	status code (see #0916)

 16h	WORD	process id

 18h 64 BYTEs	text

SeeAlso: #0912,#0913

INT 21 5F41


21 5F41 Bitfields for LAN Manager status bitmask:

Copy to Main

Table 0915

Bitfields for LAN Manager status bitmask:

Bit(s)	Description

 0,1	00 uninstall

01 install pending

10 uninstall pending

11 installed

 2,3	00 active

01 Continue pending

10 Pause pending

11 paused

 4	uninstallable

 5	pausable

 8	disk redirector paused

 9	spooled device redirector paused (printing)

 10	communication device redirector paused

INT 21 5F41


21 5F41 Values for LAN Manager status code:

Copy to Main

Table 0916

Values for LAN Manager status code:

 high word

    3051 Bad parameter value

    3052 A parameter is missing

    3053 An unknown parameter was specified

    3054 The resource is insufficient

    3055 Configuration is faulty

    3056 An MS-DOS or MS OS/2 error occured

    3057 An internal error occured

    3058 An ambiguous parameter name was given

    3059 A duplicate parameter exists

    3060 The service was terminated by NetSeviceControl when it did not respond

    3061 The service program file could not be executed

    3062 The subservice failed to start

    3063 There is a conflict in the value or use of these parameters

    3064 There is a problem with the file

 low word

    3070 There is insufficient memory

    3071 There is insufficeient disk space

    3072 Unable to create thread

    3073 Unable to create process

    3074 A security failure occured

    3075 There is bad or missing default path

    3076 Network software is not installed

    3077 Server software is not installed

    3078 The server could not access the UAS database

    3079 The action requires user-level security

    3080 The log directory is invalid

    3081 The LAN group specificed could not be used

    3082 The computername is being used as a message alias on another computer

    3083 The workstation failed to announce the servername

    3084 The user accounts system is not configured properly

INT 21 5F41


21 5F42 Format of LAN Manager NetServiceControl parameter structure:

Copy to Main

Table 0917

Format of LAN Manager NetServiceControl parameter structure:

Offset	Size	Description

 00h	DWORD	-> service name

 04h	WORD	result buffer size

 06h	DWORD	-> result buffer as service_info_2 structure

INT 21 5F42


21 5F43 Format of LAN Manager PRIDINFO structure:

Copy to Main

Table 0918

Format of LAN Manager PRIDINFO structure:

Offset	Size	Description

 00h	WORD	job id

 02h 16 BYTEs	server name

 12h 13 BYTEs	queue name

 1Fh  1 BYTE	pad

INT 21 5F43


21 5F44 Format of LAN Manager wksta_info_0 structure:

Copy to Main

Table 2715

Format of LAN Manager wksta_info_0 structure:

Offset	Size	Description

 00h    WORD     reserved (0)

 02h    DWORD    reserved (0)

 06h    DWORD    -> path to computer's LANMAN directory

 0Ah    DWORD    -> computername of the workstation

 0Eh    DWORD    -> username of user logged onto workstation

 12h    DWORD    -> domain to which workstation belongs

 16h    WORD     LAN Manager version number (2 bytes, Major, Minor)

 18h    DWORD    reserved (0)

 22h    WORD     number of seconds workstation waits for resource availability

 24h    DWORD    delay (in millsecs) before sending data to resource

 28h    WORD     reserved (0)

 2Ah    WORD     reserved (0)

 2Ch    WORD     number of seconds to maintain an inactive connection

 2Eh    WORD     number of seconds an inactive search continues

 30h    WORD     threads to dedicate to network (not supported in MSDOS)

 32h    WORD     number of simultaneous commands sent to network

 34h    WORD     reserved6 (must be 0)

 36h    WORD     number of internal buffers

 38h    WORD     size (in bytes) of each internal buffer

 3Ah    WORD     max size (in bytes) of an internal cache buffer (not MSDOS)

 3Ch    WORD     seconds before disconnecting inactive session (not MSDOS)

 3Eh    WORD     size (in bytes) of an internal error buffer (not MSDOS)

 40h    WORD     number of clients that can receive alert messages (not MSDOS)

 42h    WORD     number of services that can be started on workstation

 44h    WORD     max size (in kilobytes) of error log (not MSDOS)

 46h    WORD     number of secs before closing inactive print jobs (not MSDOS)

 48h    WORD     number of character buffers for workstation

 4Ah    WORD     max size (in bytes) of character buffer

 4Ch    DWORD    -> name of server that validated logon

 50h    DWORD    -> workstation heuristics

 52h    WORD     number of mailslots allowed

SeeAlso: #2716,#2717

INT 21 5F44


21 5F44 Format of LAN Manager wksta_info_1 structure:

Copy to Main

Table 2716

Format of LAN Manager wksta_info_1 structure:

Offset	Size	Description

 00h 84 BYTEs	wksta_info_0 structure (see #2715)

 54h    DWORD    -> name of domain which user is logged on to

 58h    DWORD    -> all domains in which computer is enlisted

 5Ch    WORD     number of buffers to allocate for receiving datagrams

SeeAlso: #2717

INT 21 5F44


21 5F44 Format of LAN Manager wksta_info_10 structure:

Copy to Main

Table 2717

Format of LAN Manager wksta_info_10 structure:

Offset	Size	Description

 00h    DWORD    -> computername of the workstation

 04h    DWORD    -> username of user logged onto workstation

 08h    DWORD    -> domain to which workstation belongs

 0Ch    WORD     LAN Manager version number (2 bytes, Major, Minor)

 0Eh    DWORD    -> name of domain which user is loggod on to

 12h    DWORD    -> all domains in which computer is enlisted

SeeAlso: #2715,#2716

INT 21 5F44


21 5F46 Format of LAN Manager use_info_0 structure:

Copy to Main

Table 0919

Format of LAN Manager use_info_0 structure:

Offset	Size	Description

 00h  9 BYTEs	local device name

 09h	BYTE	padding

 0Ah	DWORD	-> remote device name in UNC form \\server\share

SeeAlso: #0920

INT 21 5F46


21 5F46 Format of LAN Manager use_info_1 structure:

Copy to Main

Table 0920

Format of LAN Manager use_info_1 structure:

Offset	Size	Description

 00h  9 BYTEs	Local device name

 09h	BYTE	padding

 0Ah	DWORD	-> remote device name in UNC form \\server\share

 0Eh	DWORD	-> password

 12h	WORD	network link status

(00h OK, 02h disconnected, else unsure)

 14h	WORD	use type (-1 wildcard, 0 disk, 1 print, 2 com, 3 ipc)

 16h	WORD	ignored

 18h	WORD	ignored

SeeAlso: #0919

INT 21 5F46


21 5F49 Format of LAN Manager NetUseGetInfo parameter structure:

Copy to Main

Table 0921

Format of LAN Manager NetUseGetInfo parameter structure:

Offset	Size	Description

 00h	DWORD	pointer to either the local device name or UNC remote name

 04h	WORD	level of information (0000h or 0001h)

 06h	DWORD	pointer to buffer of use_info_0 or use_info_1 structures

 0Ah	WORD	length of buffer

INT 21 5F49


21 5F4A Format of LAN Manager NetRemoteCopy parameter structure:

Copy to Main

Table 0922

Format of LAN Manager NetRemoteCopy parameter structure:

Offset	Size	Description

 00h	DWORD	-> source name as UNC

 04h	DWORD	-> destination name as UNC

 08h	DWORD	-> source password

 0Ch	DWORD	-> destination password

 10h	WORD	destination open bitmap

if destination path exists

    0000h open fails

    0001h file is appended

    0002h file is overwritten

if destination path doesn't exist

    0000h open fails

    0010h file is created

 12h	WORD	copy control bitmap (see #0923)

 14h	DWORD	-> copy_info buffer

 18h	WORD	length of copy_info buffer

INT 21 5F4A


21 5F4A Bitfields for LAN Manager copy control:

Copy to Main

Table 0923

Bitfields for LAN Manager copy control:

Bit(s)	Description

 0	destination must be a file

 1	destination must be a directory

 2	destination is opened in ascii mode instead of binary

 3	source is opened in ascii mode instead of binary

 4	verify all write operations

INT 21 5F4A


21 5F4B Format of LAN Manager NetRemoteMove parameter structure:

Copy to Main

Table 0924

Format of LAN Manager NetRemoteMove parameter structure:

Offset	Size	Description

 00h	DWORD	-> source name as UNC

 04h	DWORD	-> destination name as UNC

 08h	DWORD	-> source password

 0Ch	DWORD	-> destination password

 10h	WORD	destination open bitmap

if destination path exists

    0000h open fails

    0001h file is appended

    0002h file is overwritten

if destination path doesn't exist

    0000h open fails

    0010h file is created

 12h	WORD	move control bitmap

    0001h destination must be a file

    0002h destination must be a directory

 14h	DWORD	-> move_info buffer

 18h	WORD	length of move_info buffer

INT 21 5F4B


21 5F4C Format of LAN Manager server_info_0 structure:

Copy to Main

Table 0925

Format of LAN Manager server_info_0 structure:

Offset	Size	Description

 00h 16 BYTEs	name

SeeAlso: #0926

INT 21 5F4C


21 5F4C Format of LAN Manager server_info_1 structure:

Copy to Main

Table 0926

Format of LAN Manager server_info_1 structure:

Offset	Size	Description

 00h 16 BYTEs	name

 10h	BYTE	major version in lower nibble

 11h	BYTE	minor version

 12h	DWORD	server type bitmask (see #0927)

 16h	DWORD	-> comment string

SeeAlso: #0925

INT 21 5F4C


21 5F4C Bitfields for LAN Manager server type:

Copy to Main

Table 0927

Bitfields for LAN Manager server type:

Bit(s)	Description

 0	workstation

 1	server

 2	SQL server

 3	primary domain controller

 4	backup domain controller

 5	time server

 6	Apple File Protocol (AFP) server

 7	Novell server

 8	Domain Member (v2.1+)

 9	Print Queue server (v2.1+)

 10	Dialin server (v2.1+)

 11	Unix server (v2.1+)

INT 21 5F4C


21 5F52 Format of LAN Manager DosWriteMailslot parameter structure:

Copy to Main

Table 0928

Format of LAN Manager DosWriteMailslot parameter structure:

Offset	Size	Description

 00h	DWORD	timeout

 04h	DWORD	-> buffer

INT 21 5F52


21 5F53 Format of LAN Manager NetServerEnum2 parameter structure:

Copy to Main

Table 0929

Format of LAN Manager NetServerEnum2 parameter structure:

Offset	Size	Description

 00h	WORD	level (0000h or 0001h)

 02h	DWORD	-> buffer as array of server_info_??? structures (see #0931)

 06h	WORD	length of buffer

 08h	DWORD	server type bitmask (see #0930)

 0Ch	DWORD	-> Domain name (may be 0000h:0000h for all local domains)

INT 21 5F53


21 5F53 Bitfields for LAN Manager server type:

Copy to Main

Table 0930

Bitfields for LAN Manager server type:

Bit(s)	Description

 0	workstation

 1	server

 2	SQL server

 3	primary domain controller

 4	backup domain controller

 5	time server

 6	Apple File Protocol (AFP) server

 7	Novell server

 8	Domain Member (v2.1+)

 9	Print Queue server (v2.1+)

 10	Dialin server (v2.1+)

 11	Unix server (v2.1+)

Note:	set all (FFFFFFFFh) for All Types

INT 21 5F53


21 5F53 Format of LAN Manager server_info_0 structure:

Copy to Main

Table 0931

Format of LAN Manager server_info_0 structure:

Offset	Size	Description

 00h 16 BYTEs	name

SeeAlso: #0932

INT 21 5F53


21 5F53 Format of LAN Manager server_info_1 structure:

Copy to Main

Table 0932

Format of LAN Manager server_info_1 structure:

Offset	Size	Description

 00h 16 BYTEs	name

 10h	BYTE	major version in lower nibble

 11h	BYTE	minor version

 12h	DWORD	server type (bits 0-11) (see #0930)

 16h	DWORD	-> comment string

SeeAlso: #0931

INT 21 5F53


21 5F87 Format of LANtastic user account structure:

Copy to Main

Table 0933

Format of LANtastic user account structure:

Offset	Size	Description

 00h 16 BYTEs	blank-padded username (zero-padded for v4.x)

 10h 16 BYTEs	reserved (00h)

 20h 32 BYTEs	user description

 40h	BYTE	privilege bits (see #0934)

 41h	BYTE	maximum concurrent users

 42h 42 BYTEs	bit map for disallowed half hours, beginning on Sunday

(bit set if half-hour not an allowed time)

 6Ch	WORD	internal (0002h)

 6Eh  2 WORDs	last login time

 72h  2 WORDs	account expiration date (MS-DOS-format year/month:day)

 76h  2 WORDs	password expiration date (0 = none)

 7Ah	BYTE	number of days to extend password after change (1-31)

00h if no extension required

---v3.x---

 7Bh  5 BYTEs	reserved

---v4.x---

 7Bh	BYTE	storage for first letter of user name when deleted (first

  character is changed to 00h when deleting account)

 7Ch	BYTE	extended privileges

 7Dh  3 BYTEs	reserved

INT 21 5F87


21 5F87 Bitfields for LANtastic privilege bits:

Copy to Main

Table 0934

Bitfields for LANtastic privilege bits:

Bit(s)	Description

 7	bypass access control lists

 6	bypass queue protection

 5	treat as local process

 4	bypass mail protection

 3	allow audit entry creation

 2	system manager

 0	user cannot change password

INT 21 5F87


21 5F98 Format of LANtastic message buffer:

Copy to Main

Table 0935

Format of LANtastic message buffer:

Offset	Size	Description

 00h	BYTE	reserved

 01h	BYTE	message type

00h general

01h server warning

02h-7Fh reserved

80h-FFh user-defined

 02h 16 BYTEs	ASCIZ destination machine name

 12h 16 BYTEs	ASCIZ server name which user must be logged into

 22h 16 BYTEs	ASCIZ user name

 32h 16 BYTEs	ASCIZ originating machine name (filled in when received)

 42h 80 BYTEs	message text

INT 21 5F98


21 5F9A Bitfields for unsolicited message processing flags:

Copy to Main

Table 0936

Bitfields for unsolicited message processing flags:

Bit(s)	Description

 0	beep before message is delivered

 1	deliver message to message service

 2	pop up message automatically (v3+)

INT 21 5F9A


21 5FA0 Format of LANtastic queue entry:

Copy to Main

Table 0937

Format of LANtastic queue entry:

Offset	Size	Description

 00h	BYTE	status of entry (see #0938)

 01h	DWORD	size of spooled file

 05h	BYTE	type of entry (see #0939)

 06h	BYTE	output control (see #0940)

 07h	WORD	number of copies

 09h	DWORD	sequence number of queue entry

 0Dh 48 BYTEs	pathname of spooled file

 3Dh 16 BYTEs	user who spooled file

 4Dh 16 BYTEs	name of machine from which file was spooled

 5Dh	WORD	date file was spooled (see #0877 at AX=5700h)

 5Fh	WORD	time file was spooled (see #0876 at AX=5700h)

 61h 17 BYTEs	ASCIZ destination device or user name

 72h 48 BYTEs	comment field

INT 21 5FA0


21 5FA0 Values for status of LANtastic queue entry:

Copy to Main

Table 0938

Values for status of LANtastic queue entry:

 00h	empty

 01h	being updated

 02h	being held

 03h	waiting for despool

 04h	being despooled

 05h	canceled

 06h	spooled file could not be accessed

 07h	destination could not be accessed

 08h	rush job

INT 21 5FA0


21 5FA0 Values for type of LANtastic queue entry:

Copy to Main

Table 0939

Values for type of LANtastic queue entry:

 00h	printer queue file

 01h	message

 02h	local file

 03h	remote file

 04h	to remote modem

 05h	batch processor file

INT 21 5FA0


21 5FA0 Bitfields for output control:

Copy to Main

Table 0940

Bitfields for output control:

Bit(s)	Description

 6	don't delete (for mail)

 5	mail file contains voice mail (v3+)

 4	mail message has been read

 3	response has been requested for this mail

INT 21 5FA0


21 5FA3 Format of LANtastic printer status:

Copy to Main

Table 0941

Format of LANtastic printer status:

Offset	Size	Description

 00h	BYTE	printer state (see #0942)

 01h	WORD	queue index of print job being despooled

FFFFh if not despooling--ignore all following fields

 03h	WORD	actual characters per second being output

 05h	DWORD	number of characters actually output so far

 09h	DWORD	number of bytes read from spooled file so far

 0Dh	WORD	copies remaining to print

INT 21 5FA3


21 5FA3 Bitfields for LANtastic printer state:

Copy to Main

Table 0942

Bitfields for LANtastic printer state:

Bit(s)	Description

 7	printer paused

 0-6	0 printer disabled

1 will stop at end of job

2 print multiple jobs

INT 21 5FA3


21 5FA4 Format of LANtastic stream information:

Copy to Main

Table 0943

Format of LANtastic stream information:

Offset	Size	Description

 00h	BYTE	queueing of jobs for logical printer (0=disabled,other=enabled)

 01h 11 BYTEs	logical printer resource template (may contain ? wildcards)

INT 21 5FA4


21 5FB0 Format of LANtastic active user entry:

Copy to Main

Table 0944

Format of LANtastic active user entry:

Offset	Size	Description

 00h	WORD	virtual circuit number

 02h	BYTE	login state (see #0945)

 03h	BYTE	last command issued (see #0946)

 04h  5 BYTEs	number of I/O bytes (40-bit unsigned number)

 09h  3 BYTEs	number of server requests (24-bit unsigned)

 0Ch 16 BYTEs	name of user who is logged in

 1Ch 16 BYTEs	name of remote logged in machine

 2Ch	BYTE	extended privileges (v4+???)

bit 0: user cannot change his password

 2Dh	WORD	time left in minutes (0000h = unlimited) (v4+???)

INT 21 5FB0


21 5FB0 Bitfields for login state:

Copy to Main

Table 0945

Bitfields for login state:

Bit(s)	Description

 0	fully logged in

 1	remote program load login

 2	user has system manager privileges

 3	user can create audit entries

 4	bypass mail protection

 5	treat as local process

 6	bypass queue protection

 7	bypass access control lists

INT 21 5FB0


21 5FB0 Values for last LANtastic command:

Copy to Main

Table 0946

Values for last LANtastic command:

 00h	login

 01h	process termination

 02h	open file

 03h	close file

 04h	create file

 05h	create new file

 06h	create unique file

 07h	commit data to disk

 08h	read file

 09h	write file

 0Ah	delete file

 0Bh	set file attributes

 0Ch	lock byte range

 0Dh	unlock byte range

 0Eh	create subdirectory

 0Fh	remove subdirectory

 10h	rename file

 11h	find first matching file

 12h	find next matching file

 13h	get disk free space

 14h	get a queue entry

 15h	set a queue entry

 16h	control the queue

 17h	return login information

 18h	return link description

 19h	seek on file

 1Ah	get server's time

 1Bh	create audit entry

 1Ch	open file in multitude of modes

 1Dh	change password

 1Eh	disable account

 1Fh	local server file copy

---v3+---

 20h	get username from account file

 21h	translate server's logical path

 22h	make indirect file

 23h	get indirect file contents

 24h	get physical printer status

 25h	get logical print stream info

 26h	set logical print stream info

 27h	get user's account record

---v4+---

 28h	request server shutdown

 29h	cancel server shutdown

 2Ah	stuff server's keyboard

 2Bh	write then commit data to disk

 2Ch	set extended queue entry

 2Dh	terminate user from server

 2Eh	enable/disable logins

 2Fh	flush server caches

 30h	change username

 31h	get extended queue entry

(same as get queue, but can return named fields blanked)

INT 21 5FB0


21 5FB1 Bitfields for LANtastic access control list:

Copy to Main

Table 0947

Bitfields for LANtastic access control list:

Bit(s)	Description

 4	(I) allow expansion of indirect files

 5	(A) allow attribute changing

 6	(P) allow physical access to device

 7	(E) allow program execution

 8	(N) allow file renaming

 9	(K) allow directory deletion

 10	(D) allow file deletion

 11	(L) allow file/directory lookups

 12	(M) allow directory creation

 13	(C) allow file creation

 14	(W) allow open for write and writing

 15	(R) allow open for read and reading

INT 21 5FB1


21 5FC0 Format of LANtastic time block:

Copy to Main

Table 0948

Format of LANtastic time block:

Offset	Size	Description

 00h	WORD	year

 02h	BYTE	day

 03h	BYTE	month

 04h	BYTE	minutes

 05h	BYTE	hour

 06h	BYTE	hundredths of second

 07h	BYTE	second

INT 21 5FC0


21 5FC8 Bitfields for LANtastic option flags:

Copy to Main

Table 0949

Bitfields for LANtastic option flags:

Bit(s)	Description

 0	auto reboot

 1	do not notify users

 2	halt after shutdown

 3	shutdown due to power fail (used by UPS)

 4-7	reserved

 8-14	user definable

 15	reserved

INT 21 5FC8


21 5FCC Bitfields for control bits:

Copy to Main

Table 0950

Bitfields for control bits:

Bit(s)	Description

 0	disable logins

INT 21 5FCC


21 6300 Format of double-byte character set lead byte table entry:

Copy to Main

Table 0951

Format of double-byte character set lead byte table entry:

Offset	Size	Description

 00h  2 BYTEs	low/high ends of a range of leading byte of double-byte chars

 02h  2 BYTEs	low/high ends of a range of leading byte of double-byte chars

...

  N   2 BYTEs	00h,00h end flag

INT 21 6300


21 6300 Format of DBCS table:

Copy to Main

Table 0952

Format of DBCS table:

Offset	Size	Description

 00h  2 BYTEs	low/high ends of a range of leading byte of double-byte chars

 02h  2 BYTEs	low/high ends of a range of leading byte of double-byte chars

...

  N   2 BYTEs	00h,00h end flag

INT 21 6300


21 64-- Values for OS/2 API ordinal:

Copy to Main

Table 0953

Values for OS/2 API ordinal:

 0025h	DOS32StartSession

 0082h	DosGetCP

 00B6h	DosQFSAttach

 00BFh	DosEditName

 00CBh	DosForceDelete

 0144h	Dos32CreateEventSem

 0145h	Dos32OpenEvenSem

 0146h	Dos32CloseEventSem

 0147h	Dos32ResetEventSem

 0148h	Dos32PostEventSem

 0149h	Dos32WaitEventSem

 014Ah	Dos32QueryEventSem

 014Bh	Dos32CreateMutexSem

 014Ch	Dos32OpenMutexSem

 014Dh	Dos32CloseMutexSem

 014Eh	Dos32RequestMutexSem

 014Fh	Dos32ReleaseMutexSem

 0150h	Dos32QueryMutexSem

 0151h	Dos32CreateMuxWaitSem

 0152h	Dos32OpenMuxWaitSem

 0153h	Dos32CloseMuxWaitSem

 0154h	Dos32WaitMuxWaitSem

 0155h	Dos32AddMuxWaitSem

 0156h	Dos32DeleteMuxWaitSem

 0157h	Dos32QueryMuxWaitSem

INT 21 64--


21 64-- Format of OS/2 Virtual DOS Machine STARTDATA structure:

Copy to Main

Table 0954

Format of OS/2 Virtual DOS Machine STARTDATA structure:

Offset	Size	Description

 00h	WORD	length of structure (must be 0018h,001Eh,0020h,0032h,or 003Ch)

 02h	WORD	relation of new process to caller (00h independent, 01h child)

 04h	WORD	fore/background (00h foreground, 01h background)

 06h	WORD	trace options (00h-02h, 00h = no trace)

 08h	DWORD	pointer to ASCIZ program title (max 62 chars) or 0000h:0000h

 0Ch	DWORD	pointer to ASCIZ program name (max 128 chars) or 0000h:0000h

 10h	DWORD	pointer to ASCIZ program args (max 144 chars) or 0000h:0000h

 14h	DWORD	"TermQ" (currently reserved, must be 00000000h)

 18h	DWORD	pointer to environment (max 486 bytes) or 0000h:0000h

 1Ch	WORD	inheritance (00h or 01h)

 1Eh	WORD	session type

00h OS/2 session manager determines type (default)

01h OS/2 full-screen

02h OS/2 window

03h PM

04h VDM full-screen

07h VDM window

 20h	DWORD	pointer to ASCIZ icon filename (max 128 chars) or 0000h:0000h

 24h	DWORD	"PgmHandle" (currently reserved, must be 00000000h)

 28h	WORD	"PgmControl"

 2Ah	WORD	initial column

 2Ch	WORD	initial row

 2Eh	WORD	initial width

 30h	WORD	initial height

 32h	WORD	reserved (0)

 34h	DWORD	"ObjectBuffer" (currently reserved, must be 00000000h)

 38h	DWORD	"ObjectBufferLen" (currently reserved, must be 00000000h)

INT 21 64--


21 64-- Format of OS/2 Virtual DOS Machine FSQAttachStruc:

Copy to Main

Table 0955

Format of OS/2 Virtual DOS Machine FSQAttachStruc:

Offset	Size	Description

 00h	DWORD	reserved

 04h	DWORD	pointer to the offset of the data buffer length

 08h	DWORD	pointer to the offset of the data buffer

 0Ch	WORD	FSA Info level

 0Eh	WORD	ordinal index into table

 10h	DWORD	pointer to the offset of the device name

Notes:	The segment value of the buffer, buffer length, and device

  name MUST all be the same.  It is defined on entry in the DS

  register.  The details of each info level are defined in the

  OS/2 CP Reference.

INT 21 64--


21 65-- Format of country information:

Copy to Main

Table 0956

Format of country information:

Offset	Size	Description

 00h	BYTE	info ID

---if info ID = 01h---

 01h	WORD	size

 03h	WORD	country ID

 05h	WORD	code page

 07h 34 BYTEs	country-dependent info (see AH=38h)

---if info ID = 02h---

 01h	DWORD	pointer to uppercase table (see #0957)

---if info ID = 04h---

 01h	DWORD	pointer to filename uppercase table (see #0958)

---if info ID = 05h---

 01h	DWORD	pointer to filename character table (see #0959)

---if info ID = 06h---

 01h	DWORD	pointer to collating table (see #0960)

---if info ID = 07h (DOS 4.0+)---

 01h	DWORD	pointer to DBCS lead byte table (see #0961)

INT 21 65--


21 65-- Format of uppercase table:

Copy to Main

Table 0957

Format of uppercase table:

Offset	Size	Description

 00h	WORD	table size

 02h 128 BYTEs	uppercase equivalents (if any) of chars 80h to FFh

INT 21 65--


21 65-- Format of filename uppercase table:

Copy to Main

Table 0958

Format of filename uppercase table:

Offset	Size	Description

 00h	WORD	table size

 02h 128 BYTEs	uppercase equivalents (if any) of chars 80h to FFh

INT 21 65--


21 65-- Format of filename terminator table:

Copy to Main

Table 0959

Format of filename terminator table:

Offset	Size	Description

 00h	WORD	table size (not counting this word)

 02h	BYTE	??? (01h for MS-DOS 3.30-6.00)

 03h	BYTE	lowest permissible character value for filename

 04h	BYTE	highest permissible character value for filename

 05h	BYTE	??? (00h for MS-DOS 3.30-6.00)

 06h	BYTE	first excluded character in range \ all characters in this

 07h	BYTE	last excluded character in range  / range are illegal

 08h	BYTE	??? (02h for MS-DOS 3.30-6.00)

 09h	BYTE	number of illegal (terminator) characters

 0Ah  N BYTEs	characters which terminate a filename:	."/\[]:|<>+=;,

Note:	partially documented for DOS 5+, but undocumented for earlier versions

INT 21 65--


21 65-- Format of collating table:

Copy to Main

Table 0960

Format of collating table:

Offset	Size	Description

 00h	WORD	table size

 02h 256 BYTEs	values used to sort characters 00h to FFh

INT 21 65--


21 65-- Format of DBCS lead byte table:

Copy to Main

Table 0961

Format of DBCS lead byte table:

Offset	Size	Description

 00h	WORD	length

 02h 2N BYTEs	start/end for N lead byte ranges

WORD	0000h	(end of table)

INT 21 65--


21 6602 Values for code page:

Copy to Main

Table 0962

Values for code page:

 437	US

 850	Multilingual

 852	Slavic/Latin II (DOS 5+)

 857	Turkish

 860	Portugal

 861	Iceland

 863	Canada (French)

 865	Norway/Denmark

INT 21 6602


21 69-- Format of disk info:

Copy to Main

Table 0963

Format of disk info:

Offset	Size	Description

 00h	WORD	info level (zero)

 02h	DWORD	disk serial number (binary)

 06h 11 BYTEs	volume label or "NO NAME    " if none present

 11h  8 BYTEs	(AL=00h only) filesystem type--string "FAT12   " or "FAT16   "

INT 21 69--


21 6C00 Values for extended open function status:

Copy to Main

Table 0964

Values for extended open function status:

 01h	file opened

 02h	file created

 03h	file replaced

INT 21 6C00


21 6C00 Bitfields for file create attribute:

Copy to Main

Table 0965

Bitfields for file create attribute:

Bit(s)	Description

 6-15	reserved

 5	archive

 4	reserved

 3	volume label

 2	system

 1	hidden

 0	readonly

INT 21 6C00


21 6C00 Bitfields for action:

Copy to Main

Table 0966

Bitfields for action:

Bit(s)	Description

 7-4	action if file does not exist

0000 fail

0001 create

 3-0	action if file exists

0000 fail

0001 open

0010 replace/open

INT 21 6C00


21 6D-- Format of ROM search structure:

Copy to Main

Table 0967

Format of ROM search structure:

Offset	Size	Description

 00h 13 BYTEs	ASCIZ name of found ROM program

 0Dh	DWORD	address at which to resume search (do not modify)

 11h	var	ASCIZ search mask passed in (do not modify)

INT 21 6D--


21 6F02 Format of ROM exclusion region list:

Copy to Main

Table 0968

Format of ROM exclusion region list:

Offset	Size	Description

 00h	WORD	number of entries

 02h 2N WORDs	start/end segments of N excluded regions

INT 21 6F02


21 7070 Format of PCW Weather Card data structure:

Copy to Main

Table 0969

Format of PCW Weather Card data structure:

Offset	Type	Description

 00h	WORD	hour

 02h	WORD	minute

 04h	WORD	second

 06h	WORD	day

 08h	WORD	month

 0Ah	WORD	year

 0Ch	WORD	???

 0Eh	WORD	relative barometric pressure (in 1/100 inches)

 10h	WORD	???

 12h	WORD	???

 14h	WORD	temperature 1 (in 1/10 degrees F)

 16h	WORD	temperature 1 lowest (in 1/10 degrees F)

 18h	WORD	temperature 1 highest (in 1/10 degrees F)

 1Ah	WORD	temperature 2 (in 1/10 degrees F)

 1Ch	WORD	temperature 2 lowest (in 1/10 degrees F)

 1Eh	WORD	temperature 2 highest (in 1/10 degrees F)

 20h	WORD	wind speed (in MPH)

 22h	WORD	average of 60 wind speed samples (in MPH)

 24h	WORD	highest wind speed (in MPH)

 26h	WORD	wind chill factor  (in 1/10 degrees F)

 28h	WORD	lowest wind chill factor (in 1/10 degrees F)

 2Ah	WORD	???

 2Ch	WORD	wind direction (in degrees)

 2Eh	WORD	accumulated daily rainfall (in 1/10 inches)

 30h	WORD	accumulated annual rainfall (in 1/10 inches)

INT 21 7070


21 714E Format of Windows95 long filename FindData record:

Copy to Main

Table 2695

Format of Windows95 long filename FindData record:

Offset	Size	Description

 00h	DWORD	file attributes

bits 0-6 standard DOS attributes (see #0643 at INT 21/AX=4301h)

bit 8: temporary file

 04h	QWORD	file creation time (number of 100ns intervals since 1/1/1601)

 0Ch	QWORD	last access time

 14h	QWORD	last modification time

 1Ch	DWORD	file size (high 32 bits)

 20h	DWORD	file size (low 32 bits)

 24h  8 BYTEs	reserved

 2Ch 260 BYTEs	ASCIZ full filename

130h 14 BYTEs	ASCIZ short filename (for backward compatibility)

INT 21 714E


21 8A-- Values for termination type:

Copy to Main

Table 0970

Values for termination type:

 00h	normal termination

 01h	aborted by Control-C

 02h	aborted by I/O error

 03h	terminate and stay resident

 04h	aborted by signal

 05h	aborted by program error

INT 21 8A--


21 8C-- Values for European MS-DOS 4.0 signal number:

Copy to Main

Table 0971

Values for European MS-DOS 4.0 signal number:

 01h	SIGINTR	Control-C or user defined interrupt key

 08h	SIGTERM	program termination

 09h	SIGPIPE	broken pipe

 0Dh	SIGUSER1	reserved for user definition

 0Eh	SIGUSER2	reserved for user definition

INT 21 8C--


21 8C-- Values for signal action:

Copy to Main

Table 0972

Values for signal action:

 00h	SIG_DFL	terminate process on receipt

 01h	SIG_IGN	ignore signal

 02h	SIG_GET	signal is accepted

 03h	SIG_ERR	sender gets error

 04h	SIG_ACK	acknowledge received signal and clear it, but don't

  change current setting

INT 21 8C--


21 8C-- Values signal handler is called with:

Copy to Main

Table 0973

Values signal handler is called with:

AL = signal number (see #0971)

AH = signal argument

Return: RETF, CF set: terminate process

RETF, CF clear, ZF set: abort any interrupted system call with an error

RETF, CF clear, ZF clear: restart any interrupted system call

IRET: restart any interrupted system call

Note:	the signal handler may also perform a nonlocal GOTO by resetting the

  stack pointer and jumping; before doing so, it should dismiss the

  signal by calling this function with BL=04h

INT 21 8C--


21 A0-- Bitfields for Attachmate Extra! display status:

Copy to Main

Table 0974

Bitfields for Attachmate Extra! display status:

Bit(s)	Description

 7	0=windowed, 1=enlarged

 6-3	current screen profile number 0-9

 2-0	active window number (0=PC, 1-4=host B-E, 5-6=notepad F-G)

INT 21 A0--


21 A0-- Bitfields for host window status:

Copy to Main

Table 0975

Bitfields for host window status:

Bit(s)	Description

 15	reserved

 14	0=host E window installed, 1=not

 13	0=host E terminal on, 1=off

 12	0=host E window displayed, 1=not

 11	reserved

 10	0=host D window installed, 1=not

 9	0=host D terminal on, 1=off

 8	0=host D window displayed, 1=not

 7	reserved

 6	0=host C window installed, 1=not

 5	0=host C terminal on, 1=off

 4	0=host C window displayed, 1=not

 3	reserved

 2	0=host B window installed, 1=not

 1	0=host B terminal on, 1=off

 0	0=host B window displayed, 1=not

INT 21 A0--


21 A2-- Bitfields for Attachmate Extra! host window status:

Copy to Main

Table 0976

Bitfields for Attachmate Extra! host window status:

Bit(s)	Description

 7	0=power off, 1=power on

 6	0=not installed, 1=installed

 5-3	reserved

 2-0	window number 1-4=host B-E

INT 21 A2--


21 A3-- Values for Attachmate Extra! host function code:

Copy to Main

Table 0977

Values for Attachmate Extra! host function code:

 00h=reserved	10h=PF16	20h=Clear	30h=SysReq

 01h=PF1	11h=PF17	21h=Print	31h=ErInp

 02h=PF2	12h=PF18	22h=Left	32h=ErEof

 03h=PF3	13h=PF19	23h=Right	33h=Ident

 04h=PF4	14h=PF20	24h=Up	34h=Test

 05h=PF5	15h=PF21	25h=Down	35h=Reset

 06h=PF6	16h=PF22	26h=Home	36h=DevCncl

 07h=PF7	17h=PF23	27h=Fast Left	37h=Dup

 08h=PF8	18h=PF24	28h=Fast Right	38h=FldMark

 09h=PF9	19h=Alt on	29h=Bksp	39h=Enter

 0Ah=PF10	1Ah=Alt off	2Ah=Insert	3Ah=CrSel

 0Bh=PF11	1Bh=Shift on	2Bh=Delete

 0Ch=PF12	1Ch=Shift off	2Ch=Backtab

 0Dh=PF13	1Dh=PA1	2Dh=Tab

 0Eh=PF14	1Eh=PA2	2Eh=Newline

 0Fh=PF15	1Fh=PA3	2Fh=Attn

INT 21 A3--


21 AF-- Format of Attachmate Extra! translate tables:

Copy to Main

Table 0978

Format of Attachmate Extra! translate tables:

Offset	Size	Description

 00h 256 BYTEs	ASCII to 3270 buffer code translate table

100h 256 BYTEs	3270 buffer code to ASCII translate table

200h 256 BYTEs	3270 buffer code to EBCDIC translate table

300h 256 BYTEs	EBCDIC to 3270 buffer code translate table

INT 21 AF--


21 B301 Values for signature level indicator:

Copy to Main

Table 0979

Values for signature level indicator:

 0000h:0000h = signature level 0

 0002h:0000h = signature level 1

 0202h:0000h = signature level 2

 0202h:0202h = signature level 3

INT 21 B301


21 B4-- Format of Novell NetWare input buffer:

Copy to Main

Table 0980

Format of Novell NetWare input buffer:

Offset	Size	Description

 00h	BYTE	"WorkFileServer"

 01h	BYTE	access code

 02h	DWORD	"OpenHandle"

 06h	WORD	"OpenHandleCount"

 08h	DWORD	"OpenFileSize"

Note:	the six bytes at 02h-07h appear to be the six-byte NetWare handle

  returned by AX=E909h

INT 21 B4--


21 B5-- Values for NetWare task mode byte in version 3.01:

Copy to Main

Table 0981

Values for NetWare task mode byte in version 3.01:

 00h-03h reserved

 04h	 no task cleanup

INT 21 B5--


21 B6-- Bitfields for NetWare extended file attributes:

Copy to Main

Table 0982

Bitfields for NetWare extended file attributes:

Bit(s)	Description

 2-0	search mode (executables only)

000 none (use shell's default search)

001 search on all opens without path

010 do not search

011 search on read-only opens without path

100 reserved

101 search on all opens

110 reserved

111 search on all read-only opens

 3	reserved

 4	transactions on file tracked

 5	file's FAT indexed

 6	read audit (to be implemented)

 7	write audit (to be implemented)

INT 21 B6--


21 B800 Format of NetWare capture flags table:

Copy to Main

Table 0983

Format of NetWare capture flags table:

Offset	Size	Description

 00h	BYTE	status (used internally, should be set to 00h)

 01h	BYTE	print flags (see #0984)

 02h	BYTE	tab size (01h-12h, default 08h)

 03h	BYTE	printer number on server (00h-04h, default 00h)

 04h	BYTE	number of copies to print (00h-FFh, default 01h)

 05h	BYTE	form type required in printer (default 00h)

 06h	BYTE	reserved

 07h 13 BYTEs	text to be placed on banner page

 14h	BYTE	reserved

 15h	BYTE	default local printer (00h = LPT1)

 16h	WORD	(big-endian) timeout in clock ticks for flushing capture file

  on inactivity, or 0000h to disable timeout

 18h	BYTE	flush capture file on LPT close if nonzero

 19h	WORD	(big-endian) maximum lines per page

 1Bh	WORD	(big-endian) maximum characters per line

 1Dh 13 BYTEs	name of form required in printer

 2Ah	BYTE	LPT capture flag

00h inactive, FFh LPT device is being captured

 2Bh	BYTE	file capture flag

00h if no file specified, FFh if capturing to file

 2Ch	BYTE	timing out (00h if no timeout in effect, FFh if timeout counter

  running)

 2Dh	DWORD	(big-endian) address of printer setup string

 31h	DWORD	(big-endian) address of printer reset string

 35h	BYTE	target connection ID

 36h	BYTE	capture in progress if FFh

 37h	BYTE	job queued for printing if FFh

 38h	BYTE	print job valid if FFh

 39h	DWORD	bindery object ID of print queue if previous byte FFh

 3Dh	WORD	(big-endian) print job number (1-999)

INT 21 B800


21 B800 Bitfields for NetWare print flags:

Copy to Main

Table 0984

Bitfields for NetWare print flags:

Bit(s)	Description

 2	print capture file if interrupted by loss of connection

 3	no automatic form feed after print job

 6	printing control sequences interpreted by print service

 7	print banner page before capture file

INT 21 B800


21 BC-- Values for NetWare status:

Copy to Main

Table 0985

Values for NetWare status:

 00h	successful

 96h	no dynamic memory for file

 FEh	timed out

 FFh	failed

INT 21 BC--


21 BC-- Bitfields for NetWare flags:

Copy to Main

Table 0986

Bitfields for NetWare flags:

Bit(s)	Description

 0	lock as well as log record

 1	non-exclusive lock

INT 21 BC--


21 C701 Values for NetWare TTS status:

Copy to Main

Table 0987

Values for NetWare TTS status:

 00h	successful

 FDh	transaction tracking disabled

 FEh	transaction ended records locked

 FFh	no explicit transaction active

INT 21 C701


21 CB-- Values for NetWare status:

Copy to Main

Table 0988

Values for NetWare status:

 00h	successful

 FEh	timed out

 FFh	failed

INT 21 CB--


21 D4-- Values for NetWare status:

Copy to Main

Table 0989

Values for NetWare status:

 00h	successful

 FFh	no such record name

INT 21 D4--


21 DA-- Format of NetWare reply buffer:

Copy to Main

Table 0990

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	sectors/block

 02h	WORD	total blocks on volume

 04h	WORD	unused blocks

 06h	WORD	total directory entries

 08h	WORD	unused directory entries

 0Ah 16 BYTEs	volume name, null padded

 1Ah	WORD	removable flag, 0000h = not removable

Note:	all words are big-endian

INT 21 DA--


21 DF01 Values for Software Carousel error code:

Copy to Main

Table 0991

Values for Software Carousel error code:

 00h	invalid subfunction in AL

 01h	invalid task number

 02h	tried to switch to task with no memory size

 03h	tried to kill program in partition with no program running

 04h	tried to change size of an active memory partition

 05h	invalid memory size

 06h	tried to send command to task with a pending previous command

INT 21 DF01


21 E0-- Format of NetWare request buffer:

Copy to Main

Table 0992

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	subfunction

00h spool data to a capture file

01h close and queue capture file

02h set spool flags

03h spool existing file

04h get spool queue entry

05h remove entry from spool queue

 03h	???

INT 21 E0--


21 E0-- Format of NetWare "Get Printer Status" request buffer:

Copy to Main

Table 0993

Format of NetWare "Get Printer Status" request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	06h (subfunction "Get Printer Status")

 03h	BYTE	printer number (00h-04h)

SeeAlso: #0994

INT 21 E0--


21 E0-- Format of NetWare "Get Printer Status" reply buffer:

Copy to Main

Table 0994

Format of NetWare "Get Printer Status" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0004h (size of following results buffer)

 02h	BYTE	flag: 00h printer active, FFh printer halted

 03h	BYTE	flag: 00h printer online, 01h printer offline

 04h	BYTE	current form type

 05h	BYTE	target printer number (00h-04h)

same as number in request buffer unless rerouted by server

  console

SeeAlso: #0993

INT 21 E0--


21 E0-- Format of NetWare "Specify Capture File" request buffer:

Copy to Main

Table 0995

Format of NetWare "Specify Capture File" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 102h)

 02h	BYTE	09h (subfunction "Specify Capture File")

 03h	BYTE	directory handle or 00h

 04h	BYTE	length of filename

 05h  N BYTEs	name of capture file

SeeAlso: #0996

INT 21 E0--


21 E0-- Format of NetWare reply buffer:

Copy to Main

Table 0996

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

SeeAlso: #0995

INT 21 E0--


21 E1-- Format of NetWare "Send Broadcast Message" request buffer:

Copy to Main

Table 0997

Format of NetWare "Send Broadcast Message" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 9Eh)

 02h	BYTE	00h (subfunction "Send Broadcast Message")

 03h	BYTE	number of connections (01h-64h)

 04h  N BYTEs	list of connections to receive broadcast message

BYTE	length of message (01h-37h)

      N BYTEs	broadcast message (no control characters or characters > 7Eh)

SeeAlso: #0998

INT 21 E1--


21 E1-- Format of NetWare "Send Broadcast Message" reply buffer:

Copy to Main

Table 0998

Format of NetWare "Send Broadcast Message" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 65h)

 02h	BYTE	number of connections

 03h  N BYTEs	list of per-connection results

00h successful

FCh message rejected due to lack of buffer space

FDh invalid connection number

FFh blocked (see also AH=E1h/SF=02h)

SeeAlso: #0997

INT 21 E1--


21 E1-- Format of NetWare "Get Broadcast Message" request buffer:

Copy to Main

Table 0999

Format of NetWare "Get Broadcast Message" request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	01h (subfunction "Get Broadcast Message")

SeeAlso: #1000

INT 21 E1--


21 E1-- Format of NetWare "Get Broadcast Message" reply buffer:

Copy to Main

Table 1000

Format of NetWare "Get Broadcast Message" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 38h)

 02h	BYTE	length of message (00h-37h)

00h if no broadcast messages pending

 03h  N BYTEs	message (no control characters or characters > 7Eh)

SeeAlso: #0999

INT 21 E1--


21 E1-- Format of NetWare "Enable/Disable Broadcast Messages" request buffer:

Copy to Main

Table 1001

Format of NetWare "Enable/Disable Broadcast Messages" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 9Eh)

 02h	BYTE	subfunction

02h disable station broadcasts

03h enable station broadcasts

 03h	???

SeeAlso: #1002

INT 21 E1--


21 E1-- Format of NetWare "Enable/Disable Broadcast Messages" reply buffer:

Copy to Main

Table 1002

Format of NetWare "Enable/Disable Broadcast Messages" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer

 02h	???

SeeAlso: #1001

INT 21 E1--


21 E1-- Format of NetWare "Send Personal Message" request buffer:

Copy to Main

Table 1003

Format of NetWare "Send Personal Message" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max E5h)

 02h	BYTE	04h (subfunction "Send Personal Message")

 03h	BYTE	number of connections (01h-64h)

 04h  N BYTEs	list of connections to receive broadcast message

BYTE	length of message (01h-7Eh)

      N BYTEs	message (no control characters or characters > 7Eh)

SeeAlso: #1004

INT 21 E1--


21 E1-- Format of NetWare "Send Personal Message" reply buffer:

Copy to Main

Table 1004

Format of NetWare "Send Personal Message" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 65h)

 02h	BYTE	number of connections

 03h  N BYTEs	list of per-connection results

00h successful

FCh message rejected because queue is full (contains 6 msgs)

FDh incomplete pipe

FFh failed

SeeAlso: #1003

INT 21 E1--


21 E1-- Format of NetWare "Get Personal Message" request buffer:

Copy to Main

Table 1005

Format of NetWare "Get Personal Message" request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	05h (subfunction "Get Personal Message")

SeeAlso: #1006

INT 21 E1--


21 E1-- Format of NetWare "Get Personal Message" reply buffer:

Copy to Main

Table 1006

Format of NetWare "Get Personal Message" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 80h)

 02h	BYTE	connection number of sending station

 03h	BYTE	length of message (00h-7Eh)

00h if no personal messages pending

 04h  N BYTEs	message (no control characters or characters > 7Eh)

SeeAlso: #1005

INT 21 E1--


21 E1-- Format of NetWare "Open Message Pipe" request buffer:

Copy to Main

Table 1007

Format of NetWare "Open Message Pipe" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 66h)

 02h	BYTE	06h (subfunction "Open Message Pipe")

 03h	BYTE	number of pipes to open (01h-64h)

 04h  N BYTEs	list of connection numbers

SeeAlso: #1008,#1009,#1012

INT 21 E1--


21 E1-- Format of NetWare "Open Message Pipe" reply buffer:

Copy to Main

Table 1008

Format of NetWare "Open Message Pipe" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 65h)

 02h	BYTE	number of connections

 03h  N BYTEs	list of results

00h successful

FEh incomplete (target half not yet created)

FFh failed

SeeAlso: #1007,#1010,#1013

INT 21 E1--


21 E1-- Format of NetWare "Close Mesage Pipe" request buffer:

Copy to Main

Table 1009

Format of NetWare "Close Mesage Pipe" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 66h)

 02h	BYTE	07h (subfunction "Close Message Pipe")

 03h	BYTE	number of pipes to close (01h-64h)

 04h  N BYTEs	list of connection numbers

SeeAlso: #1007,#1010

INT 21 E1--


21 E1-- Format of NetWare "Close Message Pipe" reply buffer:

Copy to Main

Table 1010

Format of NetWare "Close Message Pipe" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 65h)

 02h	BYTE	number of connections

 03h  N BYTEs	list of results

00h successful

FDh failed

FFh no such pipe

SeeAlso: #1008,#1009

INT 21 E1--


21 E1-- Values for NetWare function status:

Copy to Main

Table 1011

Values for NetWare function status:

 00h	successful

 FCh	full message queue

 FEh	out of dynamic workspace

SeeAlso: #1016

INT 21 E1--


21 E1-- Format of NetWare "Check Pipe Status" request buffer:

Copy to Main

Table 1012

Format of NetWare "Check Pipe Status" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 66h)

 02h	BYTE	08h (subfunction "Check Pipe Status")

 03h	BYTE	number of pipes to monitor (01h-64h)

 04h  N BYTEs	list of connection numbers

SeeAlso: #1007,#1013

INT 21 E1--


21 E1-- Format of NetWare "Check Pipe Status" reply buffer:

Copy to Main

Table 1013

Format of NetWare "Check Pipe Status" reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 65h)

 02h	BYTE	number of connections

 03h  N BYTEs	list of pipe statuses

00h open

FEh incomplete

FFh closed

SeeAlso: #1008,#1012

INT 21 E1--


21 E1-- Format of NetWare "Broadcast to Console" request buffer:

Copy to Main

Table 1014

Format of NetWare "Broadcast to Console" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 3Eh)

 02h	BYTE	09h (subfunction "Broadcast to Console")

 03h	BYTE	length of message (01h-3Ch)

 04h  N BYTEs	message (no control characters or characters > 7Eh)

SeeAlso: #1015

INT 21 E1--


21 E1-- Format of NetWare reply buffer:

Copy to Main

Table 1015

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

SeeAlso: #1014

INT 21 E1--


21 E2-- Values for NetWare function status:

Copy to Main

Table 1016

Values for NetWare function status:

 00h	successful

 84h	not permitted to create

 8Ah	not permitted to delete

 8Bh	not permitted to rename

 8Ch	not permitted to modify

 98h	nonexistent volume

 9Bh	invalid directory handle

 9Ch	invalid path

 9Eh	invalid filename

 9Fh	directory currently in use

 A0h	directory not empty

 C6h	no console rights

 FCh	no such bindery object

SeeAlso: #1011,#1043

INT 21 E2--


21 E2-- Format of NetWare "Set Directory Handle" request buffer:

Copy to Main

Table 1017

Format of NetWare "Set Directory Handle" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 103h)

 02h	BYTE	00h (subfunction "Set Directory Handle")

 03h	BYTE	directory handle of target

 04h	BYTE	directory handle of source

 05h	BYTE	length of source directory path (01h-FFh)

 06h  N BYTEs	source directory path

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1018

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E2--


21 E2-- Format of NetWare "Get Directory Path" request buffer:

Copy to Main

Table 1019

Format of NetWare "Get Directory Path" request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	01h (subfunction "Get Directory Path")

 03h	BYTE	directory handle

SeeAlso: #1020,#1021

INT 21 E2--


21 E2-- Format of NetWare "Get Directory Path" reply buffer:

Copy to Main

Table 1020

Format of NetWare "Get Directory Path" reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of following data buffer

 02h	BYTE	length of directory path (01h-FFh)

 03h  N BYTEs	full directory path including volume

SeeAlso: #1019,#1022

INT 21 E2--


21 E2-- Format of NetWare "Scan Directory Information" request buffer:

Copy to Main

Table 1021

Format of NetWare "Scan Directory Information" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 104h)

 02h	BYTE	02h (subfunction "Scan Directory Information")

 03h	BYTE	directory handle

 04h	WORD	(big-endian) subdirectory number

0000h for first call, returned subdir number + 1 on next call

 06h	BYTE	length of directory path

 07h  N BYTEs	directory path

SeeAlso: #1019,#1022

INT 21 E2--


21 E2-- Format of NetWare "Scan Directory Information" reply buffer:

Copy to Main

Table 1022

Format of NetWare "Scan Directory Information" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 001Ch (length of following data buffer)

 02h 16 BYTEs	subdirectory name

 12h	DWORD	(big-endian) date and time of creation (see #1023)

 16h	DWORD	(big-endian) object ID of owner

 1Ah	BYTE	maximum directory rights (see #1026)

 1Bh	BYTE	unused

 1Ch	WORD	(big-endian) subdirectory number

SeeAlso: #1020,#1021

INT 21 E2--


21 E2-- Bitfields for NetWare date and time:

Copy to Main

Table 1023

Bitfields for NetWare date and time:

Bit(s)	Description

 31-25	year-1980

 24-21	month

 20-16	day

 15-11	hour

 10-5	minute

 4-0	second

INT 21 E2--


21 E2-- Format of NetWare "Get Effective Directory Rights" request buffer:

Copy to Main

Table 1024

Format of NetWare "Get Effective Directory Rights" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 102h)

 02h	BYTE	03h (subfunction "Get Effective Directory Rights")

 03h	BYTE	directory handle

 04h	BYTE	length of directory path (00h-FFh)

 05h  N BYTEs	directory path

SeeAlso: #1025,#1027

INT 21 E2--


21 E2-- Format of NetWare "Get Effective Directory Rights" reply buffer:

Copy to Main

Table 1025

Format of NetWare "Get Effective Directory Rights" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0001h (length of following data buffer)

 02h	BYTE	effective directory rights (see #1026)

SeeAlso: #1024

INT 21 E2--


21 E2-- Bitfields for NetWare directory rights:

Copy to Main

Table 1026

Bitfields for NetWare directory rights:

Bit(s)	Description

 0	reading allowed

 1	writing allowed

 2	opens allowed

 3	file creation allowed

 4	deletion allowed

 5	"parental" may create/delete subdirectories and grant/revoke trustee

  rights

 6	directory search allowed

 7	file attributes may be changed

SeeAlso: #1025,#1027

INT 21 E2--


21 E2-- Format of NetWare "Modify Maximum Rights Mask" request buffer:

Copy to Main

Table 1027

Format of NetWare "Modify Maximum Rights Mask" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 104h)

 02h	BYTE	04h (subfunction "Modify Maximum Rights Mask")

 03h	BYTE	directory handle

 04h	BYTE	rights to grant (see #1026)

 05h	BYTE	rights to revoke (see #1026)

 06h	BYTE	length of directory path (00h-FFh)

 07h  N BYTEs	directory path

Note:	the rights specified at offset 05h are revoked first, and then the

  rights specified at offset 04h are added to the resulting rights

  mask

SeeAlso: #1024,#1028

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1028

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

SeeAlso: #1027

INT 21 E2--


21 E2-- Format of NetWare "Get Volume Number" request buffer:

Copy to Main

Table 1029

Format of NetWare "Get Volume Number" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 12h)

 02h	BYTE	05h (subfunction "Get Volume Number")

 03h	BYTE	length of volume name (01h-10h)

 04h  N BYTEs	volume name

SeeAlso: #1030

INT 21 E2--


21 E2-- Format of NetWare "Get Volume Number" reply buffer:

Copy to Main

Table 1030

Format of NetWare "Get Volume Number" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0001h (length of following results buffer)

 02h	BYTE	volume number

SeeAlso: #1029

INT 21 E2--


21 E2-- Format of NetWare "Get Volume Name" request buffer:

Copy to Main

Table 1031

Format of NetWare "Get Volume Name" request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	06h (subfunction "Get Volume Name")

 03h	BYTE	volume number

SeeAlso: #1032

INT 21 E2--


21 E2-- Format of NetWare "Get Volume Name" reply buffer:

Copy to Main

Table 1032

Format of NetWare "Get Volume Name" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0011h (length of following results buffer)

 02h	BYTE	length of volume name

 03h 16 BYTEs	NUL-padded volume name

SeeAlso: #1031

INT 21 E2--


21 E2-- Format of NetWare "Create Directory" request buffer:

Copy to Main

Table 1033

Format of NetWare "Create Directory" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 103h)

 02h	BYTE	0Ah (subfunction "Create Directory")

 03h	BYTE	directory handle

 04h	BYTE	maximum directory rights (see #1026)

 05h	BYTE	length of directory path (00h-FFh)

 06h  N BYTEs	directory path

SeeAlso: #1034,#1035

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1034

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

SeeAlso: #1033,#1035

INT 21 E2--


21 E2-- Format of NetWare "Delete Directory" request buffer:

Copy to Main

Table 1035

Format of NetWare "Delete Directory" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 103h)

 02h	BYTE	0Bh (subfunction "Delete Directory")

 03h	BYTE	directory handle

 04h	BYTE	unused

 05h	BYTE	length of directory path (00h-FFh)

 06h  N BYTEs	directory path

SeeAlso: #1033,#1034

INT 21 E2--


21 E2-- Format of NetWare "Scan Directory For Trustees" request buffer:

Copy to Main

Table 1036

Format of NetWare "Scan Directory For Trustees" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 103h)

 02h	BYTE	0Ch (subfunction "Scan Directory For Trustees")

 03h	BYTE	directory handle

 04h	BYTE	sequence number

00h on first call, increment for each subsequent call

 05h	BYTE	length of directory path (00h-FFh)

 06h  N BYTEs	directory path

SeeAlso: #1037,#1038

INT 21 E2--


21 E2-- Format of NetWare "Scan Directory For Trustees" reply buffer:

Copy to Main

Table 1037

Format of NetWare "Scan Directory For Trustees" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0031h (length of following results buffer)

 02h 16 BYTEs	directory name

 12h  4 BYTEs	date and time of creation

 16h	DWORD	(big-endian) object ID of owner

 1Ah  5 DWORDs	(big-endian) object IDs of Trustees 0 through 4

00000000h = end of group

 2Eh  5 BYTEs	directory rights for Trustees 0 through 4 (see #1026)

SeeAlso: #1036,#1040

INT 21 E2--


21 E2-- Format of NetWare "Add Trustee To Directory" request buffer:

Copy to Main

Table 1038

Format of NetWare "Add Trustee To Directory" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 107h)

 02h	BYTE	0Dh (subfunction "Add Trustee To Directory")

 03h	BYTE	directory handle

 04h	DWORD	(big-endian) object ID of trustee

 08h	BYTE	trustee directory rights (see #1026)

 09h	BYTE	length of directory path (00h-FFh)

 0Ah  N BYTEs	directory path

SeeAlso: #1040

INT 21 E2--


21 E2-- Format of NetWare "Delete Trustee From Directory" request buffer:

Copy to Main

Table 1039

Format of NetWare "Delete Trustee From Directory" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 107h)

 02h	BYTE	0Eh (subfunction "Delete Trustee From Directory")

 03h	BYTE	directory handle

 04h	DWORD	(big-endian) object ID of trustee

 08h	BYTE	unused

 09h	BYTE	length of directory path (00h-FFh)

 0Ah  N BYTEs	directory path

SeeAlso: #1040

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1040

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E2--


21 E2-- Format of NetWare "Rename Directory" request buffer:

Copy to Main

Table 1041

Format of NetWare "Rename Directory" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 111h)

 02h	BYTE	0Fh (subfunction "Rename Directory")

 03h	BYTE	directory handle

 04h	BYTE	length of directory path (00h-FFh)

 05h  N BYTEs	directory path

BYTE	length of new directory name (01h-0Eh)

      N BYTEs	new directory name

INT 21 E2--


21 E2-- Format of NetWare "Purge Erased Files" request buffer:

Copy to Main

Table 1042

Format of NetWare "Purge Erased Files" request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	10h (subfunction "Purge Erased Files")

INT 21 E2--


21 E2-- Values for NetWare function status:

Copy to Main

Table 1043

Values for NetWare function status:

 00h	successful

 98h	nonexistent volume

 9Ch	invalid path

 C6h	no console rights

 FFh	no more erased files

SeeAlso: #1016,#1073

INT 21 E2--


21 E2-- Format of NetWare "Restore Erased File" request buffer:

Copy to Main

Table 1044

Format of NetWare "Restore Erased File" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 13h)

 02h	BYTE	11h (subfunction "Restore Erased File")

 03h	BYTE	directory handle or 00h

 04h	BYTE	length of volume name

 05h  N BYTEs	volume name (including colon)

Note:	if both a directory handle and a volume name are specified, the volume

  name overrides the handle

SeeAlso: #1045

INT 21 E2--


21 E2-- Format of NetWare "Restore Erased File" reply buffer:

Copy to Main

Table 1045

Format of NetWare "Restore Erased File" reply buffer:

Offset	Size	Description

 00h	WORD	(call) 001Eh (size of following results buffer)

 02h 15 BYTEs	ASCIZ name of erased file

 11h 15 BYTEs	ASCIZ name under which file was restored

SeeAlso: #1044

INT 21 E2--


21 E2-- Format of NetWare "Allocate Permanent Directory Handle" request buffer:

Copy to Main

Table 1046

Format of NetWare "Allocate Permanent Directory Handle" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 103h)

 02h	BYTE	12h (subfunction "Allocate Permanent Directory Handle")

 03h	BYTE	directory handle

 04h	BYTE	drive ('A'-'Z')

 05h	BYTE	length of directory path

 06h  N BYTEs	directory path

SeeAlso: #1047,#1048

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1047

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0002h (size of following results buffer)

 02h	BYTE	new directory handle

 03h	BYTE	effective directory rights (see #1026)

INT 21 E2--


21 E2-- Format of NetWare "Allocate Temporary Directory Handle" request buffer:

Copy to Main

Table 1048

Format of NetWare "Allocate Temporary Directory Handle" request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 103h)

 02h	BYTE	13h (subfunction "Allocate Temporary Directory Handle")

 03h	BYTE	directory handle

 04h	BYTE	drive ('A'-'Z')

 05h	BYTE	length of directory path

 06h  N BYTEs	directory path

SeeAlso: #1046,#1049

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1049

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	14h (subfunction "Deallocate Directory Handle")

 03h	BYTE	directory handle

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1050

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no returned data)

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1051

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	15h (subfunction "Get Volume Info With Handle")

 03h	BYTE	directory handle

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1052

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 001Ch (length of following results buffer)

 02h	WORD	(big-endian) sectors per block

 04h	WORD	(big-endian) total blocks on volume

 06h	WORD	(big-endian) blocks available on volume

 08h	WORD	(big-endian) total directory slots

 0Ah	WORD	(big-endian) directory slots available

 0Ch 16 BYTEs	NUL-padded volume name

 1Ch	WORD	(big-endian) flag: volume removable if nonzero

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1053

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	16h (subfunction "Allocate Special Temporary Directory Handle")

???

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1054

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	18h (subfunction "Restore Directory Handle")

 03h	BYTE	directory handle

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1055

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0010h (length of following results buffer)

 02h 16 BYTEs	save buffer

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1056

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0011h (length of following data)

 02h	BYTE	18h (subfunction "Restore Directory Handle")

 03h 16 BYTEs	save buffer

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1057

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0002h (length of following results buffer)

 02h	BYTE	new directory handle

 03h	BYTE	effective rights (see #1026)

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1058

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 10Bh)

 02h	BYTE	19h (subfunction "Set Directory Information")

 03h	BYTE	directory handle

 04h	DWORD	(big-endian) date and time of creation

 08h	DWORD	(big-endian) object ID of owner

 0Ch	BYTE	maximum directory rights (see #1026)

 0Dh	BYTE	length of directory path

 0Eh  N BYTEs	directory path

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1059

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E2--


21 E2-- Format of NetWare request buffer:

Copy to Main

Table 1060

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	BYTE	1Ah (subfunction "Get Path From Directory Entry")

 03h	BYTE	volume number (00h-1Fh)

 04h	WORD	(big-endian) directory entry number

INT 21 E2--


21 E2-- Format of NetWare reply buffer:

Copy to Main

Table 1061

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 200h)

 02h 256 BYTEs	path

INT 21 E2--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1062

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	subfunction number

00h login

01h change password

02h map user to station set

03h map object to number

04h map number to object

05h get station's logged information

06h get station's root mask (obsolete)

07h map group name to number

08h map number to group name

09h get memberset M of group G

var	depends on subfunction

Notes:	the above subfunctions are not described in _NetWare_System_Calls--DOS_

see separate entries below for other subfunctions

SeeAlso: #1063,#1064,#1067

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1063

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of following buffer space for results

var	depends on subfunction

SeeAlso: #1062

INT 21 E3--


21 E3-- Format of NetWare object property:

Copy to Main

Table 1064

Format of NetWare object property:

Offset	Size	Description

 00h 1-16 BYTEs property name (see also #1065)

  N	BYTE	flags

bit 0: property is dynamic

bit 1: property is a set rather than an item

 N+1	BYTE	security levels (see #1066)

???

INT 21 E3--


21 E3-- Values for names of well-known NetWare properties:

Copy to Main

Table 1065

Values for names of well-known NetWare properties:

 ACCOUNT_BALANCE

 ACCOUNT_SERVERS

 GROUP_MEMBERS

 GROUPS_I'M_IN

 IDENTIFICATION	user's name

 LOGIN_CONTROL

 NET_ADDRESS

 OPERATORS

 PASSWORD

 SECURITY_EQUALS

INT 21 E3--


21 E3-- Values for NetWare security levels:

Copy to Main

Table 1066

Values for NetWare security levels:

 00h	"anyone" everyone may access

 01h	"logged" only logged-in clients may access

 02h	"object" only clients logged-in with object's name, type, and password

 03h	"supervisor" only clients logged-in with supervisor privileges

 04h	"NetWare" only NetWare may access

Note:	the above values are stored in a nybble; the high half-byte is write

  access and the low half-byte is read access

INT 21 E3--


21 E3-- Values for NetWare object type:

Copy to Main

Table 1067

Values for NetWare object type:

 0000h	unknown

 0001h	user

 0002h	user group

 0003h	print queue

 0004h	file server

 0005h	job server

 0006h	gateway

 0007h	print server

 0008h	archive queue

 0009h	archive server

 000Ah	job queue

 000Bh	administration

 0021h	NAS SNA gateway

 0026h	remote bridge server

 0027h	TCPIP gateway

 002Dh	time synchronization server

 002Eh	archive server dynamic SAP

 0047h	advertising print server

 0053h	print queue uwer

 0048h-8000h reserved

 FFFFh	wild (used only for finding objects)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1068

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 102h)

 02h	BYTE	0Ah (subfunction "Enter Login Area")

 03h	BYTE	number of local drives

 04h	BYTE	length of subdirectory name (00h-FFh)

 05h  N BYTEs	name of subdirectory under SYS:LOGIN where to find the login

  utility

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1069

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1070

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	0Ch (subfunction "Verify Network Serial Number")

 03h	DWORD	(big-endian) network serial number to verify

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1071

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0002h (size of following results buffer)

 02h	WORD	(big-endian) application number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1072

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 52h)

 02h	BYTE	0Dh (subfunction "Log Network Message")

 03h	BYTE	length of message (01h-50h)

 04h  N BYTEs	message (no control characters or characters > 7Eh)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1073

Values for NetWare function status:

 00h	successful

 98h	nonexistent volume

 F2h	not permitted to read object

SeeAlso: #1043,#1076

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1074

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	0Eh (subfunction "Get Disk Utilization")

 03h	BYTE	volume number (00h-1Fh)

 04h	DWORD	(big-endian) object ID

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1075

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 000Bh (size of following results buffer)

 02h	BYTE	volume number (00h-1Fh)

 03h	DWORD	(big-endian) object ID

 07h	WORD	(big-endian) directories used by object

 09h	WORD	(big-endian) files created by object

 0Bh	WORD	(big-endian) disk blocks used by object-created files

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1076

Values for NetWare function status:

 00h	successful

 89h	not permitted to search directory

 FFh	no more matching files

SeeAlso: #1073,#1094

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1077

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 105h)

 02h	BYTE	0Fh (subfunction "Scan File Information")

 03h	WORD	(big-endian) sequence number

FFFFh on first call

 05h	BYTE	directory handle or 00h

 06h	BYTE	search attributes (see #0643 at AX=4301h)

 07h	BYTE	length of filespec

 08h  N BYTEs	ASCIZ uppercase filespec

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1078

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 005Eh (size of following results buffer)

 02h	WORD	next sequence number (place in request buffer for next call)

 04h 14 BYTEs	ASCIZ filename

 12h	BYTE	file attributes (see #0643 at AX=4301h)

 13h	BYTE	extended file attributes (see #0982 at AH=B6h)

 14h	DWORD	(big-endian) file size in bytes

 18h	WORD	(big-endian) file's creation date (see #0877 at AX=5700h)

 1Ah	WORD	(big-endian) date of last access (see #0876 at AX=5700h)

 1Ch	DWORD	(big-endian) date and time of last update (see #1023)

 20h	DWORD	(big-endian) object ID of owner

 24h	DWORD	(big-endian) date and time last archived (see #1023)

 28h 55 BYTEs	reserved

Note:	the official documentation erroneously lists the field at offset 04h as

  15 bytes and thus shifts the remaining fields by one byte

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1079

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 151h)

 02h	BYTE	10h (subfunction "Set File Information")

 03h	BYTE	file attributes (see #0643 at AX=4301h)

 04h	BYTE	extended file attributes (see #0982 at AH=B6h)

 05h  4 BYTEs	reserved

 09h	WORD	(big-endian) file's creation date (see #0877 at AX=5700h)

 0Bh	WORD	(big-endian) date of last access (see #0876 at AX=5700h)

 0Dh	DWORD	(big-endian) date and time of last update (see #1023)

 11h	DWORD	(big-endian) object ID of owner

 15h	DWORD	(big-endian) date and time last archived (see #1023)

 19h 56 BYTEs	reserved

 51h	BYTE	directory handle or 00h

 52h	BYTE	search attributes (see #0643 at AX=4301h)

 53h	BYTE	length of filename

 54h  N BYTEs	filename

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1080

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1081

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	11h (subfunction "Get File Server Information")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1082

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0080h (size of following results buffer)

 02h 48 BYTEs	server's name

 32h	BYTE	NetWare version

 33h	BYTE	NetWare subversion (0-99)

 34h	WORD	(big-endian) number of connections supported

NetWare 4.01 reportedly returns maximum simulataneously-used

  connections

 36h	WORD	(big-endian) number of connections in use

 38h	WORD	(big-endian) maximum connected volumes

---Advanced NetWare 2.1+ ---

 3Ah	BYTE	operating system revision number

 3Bh	BYTE	fault tolerance (SFT) level

 3Ch	BYTE	TTS level

 3Dh	WORD	(big-endian) maximum simultaneously-used connections

NetWare 4.01 reportedly returns number of connections in use

 3Fh	BYTE	accounting version

 40h	BYTE	VAP version

 41h	BYTE	queueing version

 42h	BYTE	print server version

 43h	BYTE	virtual console version

 44h	BYTE	security restrictions level

 45h	BYTE	internetwork bridge version

 46h 60 BYTEs	reserved

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1083

Format of NetWare request buffer:

offset	 size	description

 00h	 WORD	0001h (length of following data)

 02h	 BYTE	12h (subfunction "Get Serial Number")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1084

Format of NetWare reply buffer:

offset	 size	description

 00h	 WORD	(call) 0006h (size of following results buffer)

 02h   4 BYTEs	(big-endian) NetWare server serial number

 06h   2 BYTEs	(big-endian) NetWare application serial number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1085

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	13h (subfunction "Get Internet Address")

 03h	BYTE	logical connection number (01h-64h)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1086

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 000Ch (length of following results buffer)

 02h  4 BYTEs	network number

 06h  6 BYTEs	physical node address

 0Ch  2 BYTEs	socket number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1087

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max B3h)

 02h	BYTE	14h (subfunction "Login To File Server")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object's name

BYTE	length of password

      N BYTEs	password

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1088

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1089

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 33h)

 02h	BYTE	15h (subfunction "Get Object Connection Numbers")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1090

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of following results buffer (max 65h)

 02h	BYTE	number of connections

 03h  N BYTEs	connection list

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1091

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	16h (subfunction "Get Connection Information")

 03h	BYTE	logical connection number (01h-64h)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1092

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 003Eh (length of following results buffer)

 02h	DWORD	(big-endian) object ID for object logged in on the connection

00000000h if no object logged in

 06h	WORD	(big-endian) type of object

 08h 48 BYTEs	name of object

 38h  7 BYTEs	login time (see #1093)

Note:	much of the Novell documentation incorrectly states the reply buffer

  length as 3Fh instead of 40h, which corresponds to a results length

  of 3Dh (61) bytes instead of the correct 3Eh (62) bytes

INT 21 E3--


21 E3-- Format of NetWare login time:

Copy to Main

Table 1093

Format of NetWare login time:

Offset	Size	Description

 00h	BYTE	year (80-99 = 1980-1999, 00-79 = 2000-2079)

 01h	BYTE	month (1-12)

 02h	BYTE	day (1-31)

 03h	BYTE	hour (0-23)

 04h	BYTE	minute (0-59)

 05h	BYTE	second (0-59)

 06h	BYTE	day of week (0 = Sunday)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1094

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 EEh	object already exists

 EFh	invalid name

 F0h	wildcard not allowed

 F1h	invalid bindery security level

 F3h	not permitted to rename object

 F4h	not permitted to delete objects

 F5h	not permitted to create objects

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1076,#1101

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1095

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 35h)

 02h	BYTE	32h (subfunction "Create Bindery Object")

 03h	BYTE	object flag (00h static, 01h dynamic)

 04h	BYTE	object security levels

 05h	WORD	(big-endian) type of object

 07h	BYTE	length of object's name

 08h  N BYTEs	object's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1096

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	0000h (no data returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1097

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 33h)

 02h	BYTE	33h (subfunction "Delete Bindery Object")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object's name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1098

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 63h)

 02h	BYTE	34h (subfunction "Rename Bindery Object")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object's name

BYTE	length of new name (01h-2Fh)

      N BYTEs	new name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1099

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 33h)

 02h	BYTE	35h (subfunction "Get Bindery Object ID")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name

 06h  N BYTEs	object's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1100

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0036h (length of following buffer space)

 02h	DWORD	(big-endian) object ID

 06h	WORD	(big-endian) type of object

 08h 48 BYTEs	object name

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1101

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 EFh	invalid name

 F0h	wildcard not allowed

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1094,#1107

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1102

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	36h (subfunction "Get Bindery Object Name")

 03h	DWORD	(big-endian) object ID

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1103

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0036h (length of following buffer space)

 02h	DWORD	(big-endian) object ID

 06h	WORD	(big-endian) type of object

 08h 48 BYTEs	object name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1104

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 37h)

 02h	BYTE	37h (subfunction "Scan Bindery Object")

 03h	DWORD	(big-endian) last object ID

 07h	WORD	(big-endian) type of object

 09h	BYTE	length of object's name

 0Ah  N BYTEs	object's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1105

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0039h (length of following buffer space)

 02h	DWORD	(big-endian) object ID

FFFFFFFFh for first call

 06h	WORD	(big-endian) type of object

 08h 48 BYTEs	object name (counted string)

 38h	BYTE	object flag (00h static, 01h dynamic)

 39h	BYTE	object's security levels

 3Ah	BYTE	object properties flag (00h no, FFh yes)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1106

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 34h)

 02h	BYTE	38h (subfunction "Change Bindery Object Security")

 03h	BYTE	new security levels

 04h	WORD	(big-endian) type of object

 06h	BYTE	length of object's name (01h-2Fh)

 07h  N BYTEs	object name

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1107

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 EDh	property already exists

 EFh	invalid name

 F0h	wildcard not allowed

 F1h	invalid bindery security level

 F6h	not permitted to delete properties

 F7h	not permitted to create properties

 FBh	no such property

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1101,#1111

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1108

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 45h)

 02h	BYTE	39h (subfunction "Create Property")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object's name

BYTE	property flags

BYTE	property security levels

BYTE	length of property's name (01h-0Fh)

      N BYTEs	property's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1109

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1110

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 43h)

 02h	BYTE	3Ah (subfunction "Delete Property")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object's name

BYTE	length of property's name (01h-0Fh)

      N BYTEs	property's name

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1111

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 F0h	wildcard not allowed

 F1h	invalid bindery security level

 FBh	no such property

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1107,#1115

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1112

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 44h)

 02h	BYTE	3Bh (subfunction "Change Property Security")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object name

BYTE	new property security levels

BYTE	length of property's name

      N BYTEs	property name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1113

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 47h)

 02h	BYTE	3Ch (subfunction "Scan Property")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object name

DWORD	(big-endian) sequence number

FFFFFFFFh for first call

BYTE	length of property's name (01h-0Fh)

      N BYTEs	property's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1114

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0018h (length of following results buffer)

 02h 16 BYTEs	property name

 12h	BYTE	property flags

 13h	BYTE	property security levels

 14h	DWORD	(big-endian) sequence number

 18h	BYTE	property value flag (00h no, FFh yes)

 19h	BYTE	more properties (00h no, FFh yes)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1115

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 E8h	not item property

 ECh	no such segment

 F0h	wildcard not allowed

 F1h	invalid bindery security level

 F8h	not permitted to write property

 F9h	not permitted to read property

 FBh	no such property

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1111,#1120

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1116

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 44h)

 02h	BYTE	3Dh (subfunction "Read Property Value")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object name

BYTE	segment number (01h on first call, increment until done)

BYTE	length of property's name (01h-0Fh)

      N BYTEs	property name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1117

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0082h (length of following results buffer)

 02h 128 BYTEs	property's value

 82h	BYTE	more segments (00h no, FFh yes)

 83h	BYTE	property's flags

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1118

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max C5h)

 02h	BYTE	3Eh (subfunction "Write Property Value")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object name

BYTE	segment number (01h on first call, increment until done)

BYTE	erase remaining segments (00h no, FFh yes)

BYTE	length of property's name (01h-0Fh)

      N BYTEs	property name

    128 BYTEs	property value segment

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1119

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1120

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 F0h	wildcard not allowed

 FBh	no such property

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure: no such object, bad password, no password for object,

  or invalid old password

SeeAlso: #1115,#1124

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1121

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 133h)

 02h	BYTE	3Fh (subfunction "Verify Bindery Object Password")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object name

BYTE	length of password (00h-7Fh)

      N BYTEs	password

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1122

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 133h)

 02h	BYTE	40h (subfunction "Change Bindery Object Password")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name (01h-2Fh)

 06h  N BYTEs	object name

BYTE	length of old password (00h-7Fh)

      N BYTEs	old password

BYTE	length of new password (00h-7Fh)

      N BYTEs	new password

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1123

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1124

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 E9h	member already exists

 EAh	member does not exist

 EBh	not a group property

 F0h	wildcard not allowed

 F8h	can't write property

 F9h	not permitted to read property

 FBh	no such property

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1120,#1135

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1125

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 75h)

 02h	BYTE	41h (subfunction "Add Bindery Object to Set")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name

 06h  N BYTEs	object name

BYTE	length of property name (01h-0Fh)

      N BYTEs	property name

WORD	(big-endian) type of member object

BYTE	length of member object's name

      N BYTEs	member object's name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1126

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 75h)

 02h	BYTE	42h (subfunction "Delete Bindery Object from Set")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name

 06h  N BYTEs	object name

BYTE	length of property name (01h-0Fh)

      N BYTEs	property name

WORD	(big-endian) type of member object

BYTE	length of member object's name

      N BYTEs	member object's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1127

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no data returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1128

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 75h)

 02h	BYTE	43h (subfunction "Is Bindery Object In Set")

 03h	WORD	(big-endian) type of object

 05h	BYTE	length of object's name

 06h  N BYTEs	object's name

BYTE	length of property's name

      N BYTEs	property's name

WORD	(big-endian) type of member object

BYTE	length of member object's name

      N BYTEs	member object's name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1129

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	44h (subfunction "Close Bindery")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1130

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	45h (subfunction "Open Bindery")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1131

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	46h (subfunction "Get Bindery Access Level")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1132

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following buffer)

 02h	BYTE	security levels

 03h	DWORD	(big-endian) object ID

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1133

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0008h (length of following data)

 02h	BYTE	47h (subfunction "Scan Bindery Object Trustee Paths")

 03h	BYTE	volume number (00h-1Fh)

 04h	WORD	(big-endian) last sequence number (FFFFh on first call)

 06h	DWORD	(big-endian) object ID

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1134

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of following results buffer (max 107h)

 02h	WORD	(big-endian) next sequence number

 04h	DWORD	(big-endian) object ID

 08h	BYTE	trustee directory rights (see #1026 at AH=E2h/SF=03h)

 09h	BYTE	length of trustee path

 0Ah  N BYTEs	trustee path

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1135

Values for NetWare function status:

 00h	successful

 96h	server out of memory

 99h	directory full

 9Bh	invalid directory handle

 9Ch	invalid path

 D0h	queue error

 D1h	no such queue

 D2h	no server for queue

 D3h	no queue rights

 D4h	queue full

 D5h	no queue job

 D6h	no job rights

 D7h	queue servicing error

 D8h	queue not active

 D9h	station is not a server

 DAh	queue halted

 DBh	too many queue servers

 EDh	property already exists

 EEh	object already exists

 EFh	invalid name

 F0h	wildcard not allowed

 F1h	invalid bindery security level

 F5h	not permitted to create object

 F7h	not permitted to create property

 FCh	no such object

 FEh	server bindery locked

 FFh	bindery failure

SeeAlso: #1124,#1171,#1572 at INT 2F/AX=7A20h/BX=0000h

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1136

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max ABh)

 02h	BYTE	64h (subfunction "Create Queue")

 03h	WORD	(big-endian) queue type

 05h	BYTE	length of queue's name (01h-2Fh)

 06h  N BYTEs	queue's name

BYTE	directory handle or 00h

BYTE	length of path name (01h-76h)

      N BYTEs	path name of directory in which to create queue subdirectory

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1137

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0004h (size of following results buffer)

 02h	DWORD	(big-endian) object ID of queue

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1138

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	65h (subfunction "Destroy Queue")

 03h	DWORD	(big-endian) object ID of queue

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1139

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	66h (subfunction "Read Queue Current Status")

 03h	DWORD	(big-endian) object ID of queue

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1140

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0085h (size of following results)

 02h	DWORD	(big-endian) object ID of queue

 06h	BYTE	status of queue (see #1141)

 07h	BYTE	number of jobs in queue (00h-FAh)

 08h	BYTE	number of servers attached to queue (00h-19h)

 09h 25 DWORDs	list of object IDs of attached servers

 6Dh 25 BYTEs	list of attached servers' stations

 86h	BYTE	(call) maximum number of servers to return

INT 21 E3--


21 E3-- Bitfields for NetWare queue status:

Copy to Main

Table 1141

Bitfields for NetWare queue status:

Bit(s)	Description

 0	operator disabled addition of new jobs

 1	operator refuses additional job servers attaching

 2	operator disabled job servicing

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1142

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	BYTE	67h (subfunction "Set Queue Current Status")

 03h	DWORD	(big-endian) object ID of queue

 07h	BYTE	queue status (see #1141)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1143

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1144

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0107h (length of following data)

 02h	BYTE	68h (subfunction "Close File and Start Queue Job")

 03h	DWORD	(big-endian) object ID of queue

 07h	BYTE	client station

 08h	BYTE	client task number

 09h	DWORD	(big-endian) object ID of client

 0Dh	DWORD	(big-endian) object ID of target server

FFFFFFFh if any server acceptable

 11h  6 BYTEs	target execution time (year,month,day,hour,minute,second)

FFFFFFFFFFFFh to execute as soon as possible

 17h  6 BYTEs	job entry time (year,month,day,hour,minute,second)

 1Dh	WORD	(big-endian) job number

 1Fh	WORD	(big-endian) job type

 21h	BYTE	job position

 22h	BYTE	job control flags

 23h 14 BYTEs	ASCIZ job file name

 31h  6 BYTEs	job file handle

 37h	BYTE	server station

 38h	BYTE	server task number

 39h	DWORD	(big-endian) object ID of server

 3Dh 50 BYTEs	ASCIZ job description string

 6Fh 152 BYTEs	client record area

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1145

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0036h (size of following results buffer)

 02h	BYTE	client station

 03h	BYTE	client task number

 04h	DWORD	(big-endian) object ID of client

 08h	DWORD	(big-endian) object ID of target server

 0Ch  6 BYTEs	target execution time (year,month,day,hour,minute,second)

 12h  6 BYTEs	job entry time (year,month,day,hour,minute,second)

 18h	WORD	(big-endian) job number

 1Ah	WORD	(big-endian) job type

 1Ch	BYTE	job position

 1Dh	BYTE	job control flags

 1Eh 14 BYTEs	ASCIZ job file name

 2Ch  6 BYTEs	job file handle

 32h	BYTE	server station

 33h	BYTE	server task number

 34h	DWORD	(big-endian) object ID of server or 00000000h

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1146

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	69h (subfunction "Close File and Start Queue Job")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1147

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1148

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	6Ah (subfunction "Remove Job From Queue")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1149

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	6Bh (subfunction "Get Queue Job List")

 03h	DWORD	(big-endian) object ID of queue

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1150

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 1F6h)

 02h	WORD	(big-endian) job count

 04h  N WORDs	(big-endian) list of job numbers by position in queue

WORD	maximum job numbers

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1151

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	6Ch (subfunction "Read Queue Job Entry")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1152

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0100h (size of following results)

 02h	BYTE	client station number

 03h	BYTE	client task number

 04h	DWORD	object ID of client

 08h	DWORD	(big-endian) object ID of target server

FFFFFFFFh if any server acceptable

 0Ch  6 BYTEs	target execution time (year,month,day,hour,minute,second)

FFFFFFFFFFFFh if serviced as soon as possible

 12h  6 BYTEs	job entry time (year,month,day,hour,minute,second)

 18h	WORD	(big-endian) job number

 1Ah	WORD	(big-endian) job type

 1Ch	BYTE	job position

 1Dh	BYTE	job control flags (see #1153)

 1Eh 14 BYTEs	ASCIZ job filename

 2Ch  6 BYTEs	job file handle

 32h	BYTE	server station

 33h	BYTE	server task number

 34h	DWORD	object ID of server

 38h 50 BYTEs	ASCIZ job description string

 6Ah 152 BYTEs	client record area

INT 21 E3--


21 E3-- Bitfields for NetWare job control flags:

Copy to Main

Table 1153

Bitfields for NetWare job control flags:

Bit(s)	Description

 3	job will be serviced automatically if connection broken

 4	job remains in queue after server aborts job

 5	client has not filled associated job file

 6	User Hold--job advances, but cannot be serviced until this is

  cleared by user or operator

 7	Operator Hold--job advances, but cannot be serviced until this is

  cleared by an operator

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1154

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0105h (length of following data)

 02h	BYTE	6Dh (subfunction "Change Queue Job Entry")

 03h	DWORD	(big-endian) object ID of queue

 07h	BYTE	client station number

 08h	BYTE	client task number

 09h	DWORD	(big-endian) object ID of client

 0Dh	DWORD	(big-endian) object ID of target server

 11h  6 BYTEs	target execution time (year,month,day,hour,minute,second)

 17h  6 BYTEs	job entry time (year,month,day,hour,minute,second)

 1Dh	WORD	(big-endian) job number

 1Fh	WORD	(big-endian) job type

 21h	BYTE	job position

 22h	BYTE	job control flags (see #1153)

 23h 14 BYTEs	ASCIZ job filename

 31h  6 BYTEs	job file handle

 37h	BYTE	server station

 38h	BYTE	server task number

 39h	DWORD	object ID of server

 3Dh 50 BYTEs	ASCIZ job description string

 6Fh 152 BYTEs	client record area

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1155

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0008h (length of following data)

 02h	BYTE	6Eh (subfunction "Change Queue Job Position")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

 09h	BYTE	new position in queue (01h-FAh)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1156

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1157

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	6Fh (subfunction "Attach Queue Server To Queue")

 03h	DWORD	(big-endian) object ID of queue

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1158

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	70h (subfunction "Detach Queue Server From Queue")

 03h	DWORD	(big-endian) object ID of queue

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1159

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	71h (subfunction "Service Queue Job and Open File")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) target job type

FFFFh any

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1160

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	000Bh (length of following data)

 02h	BYTE	72h (subfunction "Finish Servicing Queue Job and File")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

 09h	DWORD	(big-endian) charge

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1161

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	73h (subfunction "Abort Servicing Queue Job and File")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1162

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1163

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	74h (subfunction "Change To Client Rights")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1164

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	75h (subfunction "Change To Client Rights")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1165

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	000Ah (length of following data)

 02h	BYTE	76h (subfunction "Read Queue Server Current Status")

 03h	DWORD	(big-endian) object ID of queue

 07h	DWORD	(big-endian) object ID of server

 0Bh	BYTE	server station

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1166

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0040h (size of following results)

 02h 64 BYTEs	server status record (format depends on server)

first four bytes should contain estimated "price" for an

  average job

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1167

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0045h (length of following data)

 02h	BYTE	77h (subfunction "Set Queue Server Current Status")

 03h	DWORD	(big-endian) object ID of queue

 07h 64 BYTEs	server status record (format depends on server)

first four bytes should contain estimated "price" for an

  average job

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1168

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1169

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	78h (subfunction "Get Queue Job's File Size")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1170

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 000Ah (size of following results)

 02h	DWORD	(big-endian) object ID of queue

 06h	WORD	(big-endian) job number

 08h	DWORD	(big-endian) size of job file in bytes

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 2692

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	84h (subfunction "Abort Servicing Queue Job")

 03h	DWORD	(big-endian) object ID of queue

 07h	WORD	(big-endian) job number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 2693

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1171

Values for NetWare function status:

 00h	successful

 C0h	no account privileges

 C1h	no account balance

 C2h	credit limit exceeded

 C3h	too many holds on account

SeeAlso: #1135,#1181

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1172

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 33h)

 02h	BYTE	96h (subfunction "Get Account Status")

 03h	WORD	(big-endian) type of bindery object

 05h	BYTE	length of object name (01h to 2Fh)

 06h  N BYTEs	object name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1173

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of following buffer space

 02h	DWORD	(big-endian) account balance

 06h	DWORD	(big-endian) credit limit

signed number indicating lowest allowable account balance

 0Ah 120 BYTEs	reserved

 82h	DWORD	(big-endian) object ID, server 1

 86h	DWORD	(big-endian) hold amount, server 1

...

 F8h	DWORD	(big-endian) object ID, server 16

 FCh	DWORD	(big-endian) hold amount, server 16

Note:	the reply buffer lists the servers which have placed holds on a portion

  of the account balance, and the amount reserved by each

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1174

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 13Fh)

 02h	BYTE	97h (subfunction "Submit Account Charge")

 03h	WORD	(big-endian) service type

 05h	DWORD	(big-endian) amount to be charged to account

 09h	DWORD	(big-endian) amount of prior hold to be cancelled

 0Dh	WORD	(big-endian) type of bindery object

 0Fh	WORD	(big-endian) type of comment

8000h-FFFFh reserved for experimental use

 11h	BYTE	length of object's name

 12h  N BYTEs	object name

BYTE	length of comment

      N BYTEs	comment

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1175

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 37h)

 02h	BYTE	98h (subfunction "Submit Account Hold")

 03h	DWORD	(big-endian) amount of account balance to reserve

 07h	WORD	(big-endian) type of bindery object

 09h	BYTE	length of object's name

 0Ah  N BYTEs	object name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1176

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	0000h (no data returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1177

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 137h)

 02h	BYTE	99h (subfunction "Submit Account Note")

 03h	WORD	(big-endian) type of service

 05h	WORD	(big-endian) type of bindery object

 07h	WORD	(big-endian) type of comment

8000h-FFFFh reserved for experimental use

 09h	BYTE	length of object's name

 0Ah  N BYTEs	object name

BYTE	length of comment

      N BYTEs	comment

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1178

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	C8h (subfunction "Check Console Privileges")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1179

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	C9h (subfunction "Get File Server Description Strings")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1180

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0200h (size of following results buffer)

 02h	var	ASCIZ name of company distributing this copy of NetWare

var	ASCIZ version and revision

      9 BYTEs	ASCIZ revision date (mm/dd/yy)

var	ASCIZ copyright notice

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1181

Values for NetWare function status:

 00h	successful

 C6h	no console rights

SeeAlso: #1171,#1195

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1182

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	CAh (subfunction "Set File Server Date And Time")

 03h	BYTE	year (00-79 = 2000-2079, 80-99 = 1980-1999)

 04h	BYTE	month (1-12)

 05h	BYTE	day (1-31)

 06h	BYTE	hour (0-23)

 07h	BYTE	minute

 08h	BYTR	second

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1183

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	CBh (subfunction "Disable File Server Login")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1184

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1185

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	CCh (subfunction "Enable File Server Login")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1186

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	CDh (subfunction "Get File Server Login Status")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1187

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0001h (size of following results buffer)

 02h	BYTE	login state (00h disabled, 01h enabled)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1188

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	CEh (subfunction "Purge All Erased Files")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1189

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	CFh (subfunction "Disable Transaction Tracking")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1190

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1191

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	D0h (subfunction "Enable Transaction Tracking")

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1192

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max A2h)

 02h	BYTE	D1h (subfunction "Send Console Broadcast")

 03h	BYTE	number of connections to receive message

00h = all, else specific list below

 04h  N BYTEs	connection list

BYTE	length of message (max 3Ch)

      N BYTEs	message

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1193

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	D2h (subfunction "Clear Connection Number")

 03h	BYTE	connection number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1194

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0000h (no results returned)

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1195

Values for NetWare function status:

 00h	successful

 C6h	no console rights

 FFh	files open

SeeAlso: #1181,#1223

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1196

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	D3h (subfunction "Down File Server")

 03h	BYTE	flag: force down even if files open if nonzero

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1197

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	D4h (subfunction "Get File System Statistics")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1198

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0028h (size of following results buffer)

 02h	DWORD	clock ticks since system started

 06h	WORD	maximum open files set by configuration

 08h	WORD	maximum files open concurrently

 0Ah	WORD	current number of open files

 0Ch	DWORD	total files opened

 10h	DWORD	total file read requests

 14h	DWORD	total file write requests

 18h	WORD	current changed FATs

 1Ah	WORD	total changed FATs

 1Ch	WORD	number of FAT write errors

 1Eh	WORD	number of fatal FAT write errors

 20h	WORD	number of FAT scan errors

 22h	WORD	maximum concurrently-indexed files

 24h	WORD	current number of indexed files

 26h	WORD	number of attached indexed files

 28h	WORD	number of indexed files available

Note:	all fields except the first are big-endian

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1199

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	D5h (subfunction "TTS Get Statistics")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1200

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of following results buffer (max 1BCh)

 02h	DWORD	(big-endian) clock ticks since system started

 06h	BYTE	transaction tracking supported if nonzero

(all following fields are invalid if zero)

 07h	BYTE	transaction tracking enabled

 08h	WORD	(big-endian) transaction volume number

 0Ah	WORD	(big-endian) maximum simultaneous transactions configured

 0Ch	WORD	(big-endian) maximum simultaneous transactions since startup

 0Eh	WORD	(big-endian) current transactions in progress

 10h	DWORD	(big-endian) total transactions performed

 14h	DWORD	(big-endian) total write transactions

 18h	DWORD	(big-endian) total transactions backed out

 1Ch	WORD	(big-endian) number of unfilled backout requests

 1Eh	WORD	(big-endian) disk blocks used for transaction tracking

 20h	DWORD	(big-endian) blocks allocated for tracked-file FATs

 24h	DWORD	(big-endian) number of file size changes during a transaction

 28h	DWORD	(big-endian) number of file truncations during a transaction

 2Ch	BYTE	number of records following

 2Dh	Active Transaction Records [array]

Offset	Size	Description

 00h	BYTE	logical connection number

 01h	BYTE	task number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1201

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	D6h (subfunction "Get Disk Cache Statistics")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1202

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 004Eh (length of following results buffer)

 02h	DWORD	clock ticks since system started

 06h	WORD	number of cache buffers

 08h	WORD	size of cache buffer in bytes

 0Ah	WORD	number of dirty cache buffers

 0Ch	DWORD	number of cache read requests

 10h	DWORD	number of cache write requests

 14h	DWORD	number of cache hits

 18h	DWORD	number of cache misses

 1Ch	DWORD	number of physical read requests

 20h	DWORD	number of physical write requests

 24h	WORD	number of physical read errors

 26h	WORD	number of physical write errors

 28h	DWORD	cache get requests

 2Ch	DWORD	cache full write requests

 30h	DWORD	cache partial write requests

 34h	DWORD	background dirty writes

 38h	DWORD	background aged writes

 3Ch	DWORD	total cache writes

 40h	DWORD	number of cache allocations

 44h	WORD	thrashing count

 46h	WORD	number of times LRU block was dirty

 48h	WORD	number of reads on cache blocks not yet filled by writes

 4Ah	WORD	number of times a fragmented write occurred

 4Ch	WORD	number of cache hits on unavailable block

 4Eh	WORD	number of times a cache block was scrapped

Note:	all fields except the first are big-endian

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1203

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	D7h (subfunction "Get Drive Mapping Table")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1204

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 00ECh (length of following results buffer)

 02h	DWORD	(big-endian) clock tick elapsed since system started

 06h	BYTE	fault tolerance (SFT) level

 07h	BYTE	number of logical drives attached to server

 08h	BYTE	number of physical drives attached to server

 09h  5 BYTEs	disk channel types (00h none, 01h XT, 02h AT, 03h SCSI,

  04h disk coprocessor drive, 32h-FFh value-added drive types)

 0Eh	WORD	(big-endian) number of outstanding controller commands

 10h 32 BYTEs	drive mapping table (FFh = no such drive)

 30h 32 BYTEs	drive mirror table (secondary physical drive, FFh = none)

 50h 32 BYTEs	dead mirror table (last drive mapped to, FFh if never mirrored)

 70h	BYTE	physical drive being remirrored (FFh = none)

 71h	BYTE	reserved

 72h	DWORD	(big-endian) remirrored block

 76h 60 BYTEs	SFT error table (internal error counters)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1205

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	D8h (subfunction "Get Physical Disk Statistics")

 03h	BYTE	physical disk number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1206

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 005Dh (size of following results record)

 02h	DWORD	(big-endian) clock ticks since system started

 06h	BYTE	physical disk channel

 07h	BYTE	flag: drive removable if nonzero

 08h	BYTE	physical drive type

 09h	BYTE	drive number within controller

 0Ah	BYTE	controller number

 0Bh	BYTE	controller type

 0Ch	DWORD	(big-endian) size of drive in 4K disk blocks

 10h	WORD	(big-endian) number of cylinders on drive

 12h	BYTE	number of heads

 13h	BYTE	number of sectors per track

 14h 64 BYTEs	ASCIZ drive make and model

 54h	WORD	(big-endian) number of I/O errors

 56h	DWORD	(big-endian) start of Hot Fix table

 5Ah	WORD	(big-endian) size of Hot Fix table

 5Ch	WORD	(big-endian) number of Hot Fix blocks available

 5Eh	BYTE	flag: Hot Fix disabled if nonzero

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1207

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	D9h (subfunction "Get Disk Channel Statistics")

 03h	BYTE	channel number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1208

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 00A8h (size of following results record)

 02h	DWORD	(big-endian) clock ticks since system started

 06h	WORD	(big-endian) channel run state (see #1209)

 08h	WORD	(big-endian) channel synchronization state (see #1210)

 0Ah	BYTE	driver type

 0Bh	BYTE	major version of driver

 0Ch	BYTE	minor version of driver

 0Dh 65 BYTEs	ASCIZ driver description

 4Eh	WORD	(big-endian) first I/O address used

 50h	WORD	(big-endian) length of first I/O address

 52h	WORD	(big-endian) second I/O address used

 54h	WORD	(big-endian) length of second I/O address

 56h  3 BYTEs	first shared memory address

 59h  2 BYTEs	length of first shared memory address

 5Bh  3 BYTEs	second shared memory address

 5Eh  2 BYTEs	length of second shared memory address

 60h	BYTE	first interrupt number in-use flag

 61h	BYTE	first interrupt number used

 62h	BYTE	second interrupt number in-use flag

 63h	BYTE	second interrupt number used

 64h	BYTE	first DMA channel in-use flag

 65h	BYTE	first DMA channel used

 66h	BYTE	second DMA channel in-use flag

 67h	BYTE	second DMA channel used

 68h	BYTE	flags

 69h	BYTE	reserved

 6Ah 80 BYTEs	ASCIZ configuration description

INT 21 E3--


21 E3-- Values for channel run state:

Copy to Main

Table 1209

Values for channel run state:

 0000h	running

 0001h	being stopped

 0002h	stopped

 0003h	nonfunctional

INT 21 E3--


21 E3-- Values for channel synchronization state:

Copy to Main

Table 1210

Values for channel synchronization state:

 0000h	not in use

 0002h	used by NetWare, no other requests

 0004h	used by NetWare, other requests

 0006h	in use, not needed by NetWare

 0008h	in use, needed by NetWare

 000Ah	channel released, NetWare should use it

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1211

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0003h (length of following data)

 02h	BYTE	DAh (subfunction "Get Connection's Task Information")

 03h	WORD	(big-endian) logical connection number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1212

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	BYTE	lock status of connection (see #1213)

 03h	var	Lock Status Information (see #1214)

 N	BYTE	number of records following

 N+1	Active Task Information Records [array]

Offset	Size	Description

 00h	BYTE	task number (01h-FFh)

 01h	BYTE	task state

01h in TTS explicit transaction

02h in TTS implicit transaction

04h shared fileset lock active

INT 21 E3--


21 E3-- Values for lock status of connection:

Copy to Main

Table 1213

Values for lock status of connection:

 00h	no locks

 01h	waiting on physical record lock

 02h	waiting on file lock

 03h	waiting on logical record lock

 04h	waiting on semaphore

INT 21 E3--


21 E3-- Format of Lock Status Information:

Copy to Main

Table 1214

Format of Lock Status Information:

Offset	Size	Description

---lock status 00h---

 no fields

---lock status 01h---

 00h	BYTE	number of waiting task

 01h	DWORD	start address

 05h	DWORD	end address

 09h	BYTE	volume number

 0Ah	WORD	directory entry number

 0Ch 14 BYTEs	ASCIZ filename

---lock status 02h---

 00h	BYTE	number of waiting task

 01h	BYTE	volume number

 02h	WORD	directory entry number

 04h 14 BYTEs	ASCIZ filename

---lock status 03h---

 00h	BYTE	number of waiting task

 01h	BYTE	length of record name

 02h  N BYTEs	ASCIZ record name

---lock status 04h---

 00h	BYTE	number of waiting task

 01h	BYTE	length of semaphore's name

 02h  N BYTEs	ASCIZ semaphore name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1215

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	DBh (subfunction "Get Connection's Open Files")

 03h	WORD	(big-endian) logical connection number

 05h	WORD	(big-endian) last record seen (0000h on first call)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1216

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	WORD	next request record (place in "last record" field on next call)

0000h if no more records

 04h	BYTE	number of records following

 05h	var	array of File Information Records (see #1217)

INT 21 E3--


21 E3-- Format of NetWare File Information Record:

Copy to Main

Table 1217

Format of NetWare File Information Record:

Offset	Size	Description

 00h	BYTE	task number

 01h	BYTE	lock flags (see #1218)

 02h	BYTE	access flags (see #1219)

 03h	BYTE	lock type

00h no lock

FEh file lock

FFh locked by Begin Share File Set

 04h	BYTE	volume number (00h-1Fh)

 05h	WORD	(big-endian) directory entry

 07h 14 BYTEs	ASCIZ filename

INT 21 E3--


21 E3-- Bitfields for lock flags:

Copy to Main

Table 1218

Bitfields for lock flags:

Bit(s)	Description

 0	file is locked

 1	file opened Shareable

 2	logged

 3	file opened Normal

 6	TTS holding lock

 7	Transaction Flag set on file

INT 21 E3--


21 E3-- Bitfields for access flags:

Copy to Main

Table 1219

Bitfields for access flags:

Bit(s)	Description

 0	file open for reading by calling station

 1	file open for writing by calling station

 2	deny reads by other stations

 3	deny writes by other stations

 4	file detached

 5	TTS Holding Detach

 6	TTS Holding Open

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1220

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 104h)

 02h	BYTE	DCh (subfunction "Get Connections Using a File")

 03h	WORD	(big-endian) last record (0000h on first call)

 05h	BYTE	directory handle

 06h	BYTE	length of file path

 07h  N BYTEs	ASCIZ file path

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1221

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	WORD	(big-endian) count of tasks which have opened or logged file

 04h	WORD	(big-endian) count of tasks which have opened file

 06h	WORD	(big-endian) count of opens for reading

 08h	WORD	(big-endian) count of opens for writing

 0Ah	WORD	(big-endian) deny read count

 0Ch	WORD	(big-endian) deny write count

 0Eh	WORD	next request record (place in "last record" field on next call)

0000h if no more records

 10h	BYTE	locked flag

00h not locked exclusively

else locked exclusively

 11h	BYTE	number of records following

 12h	var	array of File Usage Information Records (see #1222)

INT 21 E3--


21 E3-- Format of NetWare File Usage Information Record:

Copy to Main

Table 1222

Format of NetWare File Usage Information Record:

Offset	Size	Description

 00h	WORD	(big-endian) logical connection number

 02h	BYTE	task number

 03h	BYTE	lock flags (see #1218)

 04h	BYTE	access flags (see #1219)

 05h	BYTE	lock type

00h no lock

FEh file lock

FFh locked by Begin Share File Set

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1223

Values for NetWare function status:

 00h	successful

 C6h	no console rights

 FFh	file not open

SeeAlso: #1195,#1245

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1224

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0016h (length of following data)

 02h	BYTE	DDh (subfunction "Get Physical Record Locks by Connection and

  File")

 03h	WORD	(big-endian) logical connection number

 05h	WORD	(big-endian) last record seen (0000h on first call)

 07h	BYTE	volume number (00h-1Fh)

 08h	WORD	(big-endian) directory handle

 0Ah 14 BYTEs	ASCIZ filename

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1225

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	WORD	next request record (place in "last record" on next call)

0000h if no more records

 04h	BYTE	number of physical record locks

 05h	BYTE	number of records following

 06h	var	array of Physical Record Lock Info records (see #1226)

INT 21 E3--


21 E3-- Format of NetWare Physical Record Lock Info:

Copy to Main

Table 1226

Format of NetWare Physical Record Lock Info:

Offset	Size	Description

 00h	BYTE	task number

 01h	BYTE	lock status (see #1227)

 02h	DWORD	(big-endian) starting offset of record in file

 06h	DWORD	(big-endian) ending offset of record in file

INT 21 E3--


21 E3-- Bitfields for lock status:

Copy to Main

Table 1227

Bitfields for lock status:

Bit(s)	Description

 0	exclusive lock

 1	shareable lock

 2	logged

 6	lock held by TTS

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1228

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 104h)

 02h	BYTE	DEh (subfunction "Get Physical Record Locks by File")

 03h	WORD	(big-endian) last record seen (0000h on first call)

 05h	BYTE	directory handle

 06h	BYTE	length of filename

 07h  N BYTEs	ASCIZ filename

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1229

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	WORD	next request record (place in "last record" on next call)

0000h if no more records

 04h	BYTE	number of physical record locks

 05h	BYTE	number of records following

 06h	var	array of Physical Record Lock Info records (see #1230)

INT 21 E3--


21 E3-- Format of NetWare Physical Record Lock Info:

Copy to Main

Table 1230

Format of NetWare Physical Record Lock Info:

Offset	Size	Description

 00h	WORD	(big-endian) number of tasks logging record

 02h	WORD	(big-endian) number of tasks with shareable lock

 04h	DWORD	(big-endian) starting offset of record in file

 08h	DWORD	(big-endian) ending offset of record in file

 0Ch	WORD	(big-endian) logical connection number

 0Eh	BYTE	task number

 0Fh	BYTE	lock type

00h none

FEh file lock

FFh Begin Share File Set lock

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1231

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	DFh (subfunction "Get Logical Records By Connection")

 03h	WORD	(big-endian) logical connection number

 05h	WORD	(big-endian) last record seen (0000h on first call)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1232

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	WORD	next request record (place in "last record" field on next call)

0000h if no more locked records

 09h	BYTE	number of records following

 0Ah	var	array of Logical Lock Information Records (see #1233)

INT 21 E3--


21 E3-- Format of NetWare Logical Lock Information Record:

Copy to Main

Table 1233

Format of NetWare Logical Lock Information Record:

Offset	Size	Description

 00h	BYTE	task number

 01h	BYTE	lock status (see #1227)

 02h	BYTE	length of logical lock's name

 03h  N BYTEs	logical lock's name

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1234

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 67h)

 02h	BYTE	E0h (subfunction "Get Logical Record Information")

 03h	WORD	(big-endian) last record seen (0000h on first call)

 05h	BYTE	length of logical record's name

 06h  N BYTEs	logical record's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1235

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 200h)

 02h	WORD	(big-endian) number of logical connections logging the record

 04h	WORD	(big-endian) number of logical connections with shareable lock

 06h	WORD	(big-endian) next request record (place in "last record" field

  on next call)

 08h	BYTE	locked exclusively if nonzero

 09h	BYTE	number of records following

 0Ah	var	array of Task Information Records (see #1236)

INT 21 E3--


21 E3-- Format of NetWare Task Information Record:

Copy to Main

Table 1236

Format of NetWare Task Information Record:

Offset	Size	Description

 00h	WORD	(big-endian) logical connection number

 02h	BYTE	task number

 03h	BYTE	lock status (see #1227)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1237

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	E1h (subfunction "Get Connection's Semaphores")

 03h	WORD	(big-endian) logical connection number

 05h	WORD	(big-endian) last record seen (0000h on first call)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1238

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results record (max 1FEh)

 02h	WORD	next request record (place in "last record" field on next call)

 04h	BYTE	number of records following

 05h	var	array of Semaphore Information Records (see #1239)

INT 21 E3--


21 E3-- Format of NetWare Semaphore Information Record:

Copy to Main

Table 1239

Format of NetWare Semaphore Information Record:

Offset	Size	Description

 00h	WORD	(big-endian) open count

 02h	BYTE	semaphore value (-128 to 127)

 03h	BYTE	task number

 04h	BYTE	lock type

 05h	BYTE	length of semaphore's name

 06h  N BYTEs	semaphore's name

     14 BYTEs	filename

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1240

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 83h)

 02h	BYTE	E2h (subfunction "Get LAN Driver's Configuration Information")

 03h	WORD	(big-endian) last record seen (0000h on first call)

 05h	BYTE	length of semaphore's name (01h-7Fh)

 06h  N BYTEs	semaphore's name

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1241

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 1FEh)

 02h	WORD	next request record (place in "last record" on next call)

0000h if no more

 04h	WORD	(big-endian) number of logical connections opening semaphore

 06h	BYTE	semaphore value (-127 to 128)

 07h	BYTE	number of records following

 08h	var	array of Semaphore Information records (see #1242)

INT 21 E3--


21 E3-- Format of NetWare Semaphore Information:

Copy to Main

Table 1242

Format of NetWare Semaphore Information:

Offset	Size	Description

 00h	WORD	(big-endian) logical connection number

 02h	BYTE	task number

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1243

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	E3h (subfunction "Get LAN Driver's Configuration Information")

 03h	BYTE	LAN board (00h-03h)

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1244

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 00ACh (size of following results buffer)

 02h  4 BYTEs	network number

 06h  6 BYTEs	node number

 0Ch	BYTE	LAN driver installed (00h no--remaining fields invalid)

 0Dh	BYTE	option number selected at configuration time

 0Eh 160 BYTEs	configuration text

ASCIZ hardware type

ASCIZ hardware settings

INT 21 E3--


21 E3-- Values for NetWare function status:

Copy to Main

Table 1245

Values for NetWare function status:

 00h	successful

 C6h	no console rights

SeeAlso: #1223,#1265

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1246

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0003h (length of following data)

 02h	BYTE	E5h (subfunction "Get Connection's Usage Statistics")

 03h	WORD	(big-endian) logical connection number

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1247

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0014h (size of following results record)

 02h	DWORD	(big-endian) clock ticks since server started

 06h  6 BYTEs	bytes read

 0Ch  6 BYTEs	bytes written

 12h	DWORD	(big-endian) total request packets

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1248

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	E6h (subfunction "Get Bindery Object Disk Space Left")

 03h	DWORD	(big-endian) object ID

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1249

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 000Fh (size of following results buffer)

 02h	DWORD	(big-endian) clock ticks elapsed since server started

 06h	DWORD	(big-endian) object ID

 0Ah	DWORD	(big-endian) 4K disk blocks available to user

 0Eh	BYTE	restrictions (00h enforced, FFh not enforced)

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1250

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	E7h (subfunction "Get File Server LAN I/O Statistics")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1251

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0042h (size of following results buffer)

 02h	DWORD	clock ticks since system started

 06h	WORD	total routing buffers

 08h	WORD	maximum routing buffers used

 0Ah	WORD	current routing buffers used

 0Ch	DWORD	total file service packets

 10h	WORD	number of file service packets buffered

 12h	WORD	number of invalid connection packets

 14h	WORD	packets with bad logical connection numbers

 16h	WORD	number of packets received during processing

 18h	WORD	number of requests reprocessed

 1Ah	WORD	packets with bad sequence numbers

 1Ch	WORD	number of duplicate replies sent

 1Eh	WORD	number of acknowledgements sent

 20h	WORD	number of packets with bad request types

 22h	WORD	requests to attach to ws for which a request is being processed

 24h	WORD	requests to attach from ws which is already attaching

 26h	WORD	number of forged detach requests

 28h	WORD	detach requests with bad connection number

 2Ah	WORD	requests to detach from ws for which requests pending

 2Ch	WORD	number of cancelled replies

 2Eh	WORD	packets discarded due to excessive hop count

 30h	WORD	packets discarded due to unknown net

 32h	WORD	incoming packets discarded for lack of DGroup buffer

 34h	WORD	outgoing packets discarded due to lack of buffer

 36h	WORD	received packets destined for B,C, or D side drivers

 38h	DWORD	number of NetBIOS packets propagated through net

 3Ch	DWORD	total number of non-file-service packets

 40h	DWORD	total number of routed packets

Note:	all fields except the first are big-endian

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1252

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	E8h (subfunction "Get File Server Misc Information")

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1253

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) size of following results buffer (max 0048h)

 02h	DWORD	(big-endian) clock ticks since system started

 06h	BYTE	CPU type

00h Motorola 68000

01h Intel 8086, 8088, or V20

02h Intel 80286+

 07h	BYTE	reserved

 08h	BYTE	number of service processes in server

 09h	BYTE	server utilization in percent

 0Ah	WORD	(big-endian) maximum bindery objects set by configuration

0000h = unlimited

 0Ch	WORD	(big-endian) maximum number of bindery objects used

 0Eh	WORD	(big-endian) current number of bindery objects in use

 10h	WORD	(big-endian) total server memory in KB

 12h	WORD	(big-endian) wasted server memory in KB

normally 0000h

 14h	WORD	number of records following (01h-03h)

 16h	var	array of Dynamic Memory Information records (see #1254)

INT 21 E3--


21 E3-- Format of NetWare Dynamic Memory Information:

Copy to Main

Table 1254

Format of NetWare Dynamic Memory Information:

Offset	Size	Description

 00h	DWORD	(big-endian) total dynamic space

 04h	DWORD	(big-endian) maximum dynamic space used

 08h	DWORD	(big-endian) current dynamic space usage

INT 21 E3--


21 E3-- Format of NetWare request buffer:

Copy to Main

Table 1255

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	E9h (subfunction "Get Volume Information")

 03h	BYTE	directory handle

INT 21 E3--


21 E3-- Format of NetWare reply buffer:

Copy to Main

Table 1256

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	(call) 0028h (length of following results buffer)

 02h	DWORD	(big-endian) elapsed system time

 06h	BYTE	volume number

 07h	BYTE	logical drive number

 08h	WORD	(big-endian) sectors per block

 0Ah	WORD	(big-endian) starting block

 0Ch	WORD	(big-endian) total blocks on volume

 0Eh	WORD	(big-endian) blocks available on volume

 10h	WORD	(big-endian) total directory slots

 12h	WORD	(big-endian) directory slots available

 14h	WORD	(big-endian) maximum directory entries actually used

 16h	BYTE	flag: volume hashed if nonzero

 17h	BYTE	flag: volume cached if nonzero

 18h	BYTE	flag: volume removable if nonzero

 19h	BYTE	flag: volume mounted if nonzero

 1Ah 16 BYTEs	NUL-padded volume name

INT 21 E3--


21 E4-- Bitfields for NetWare file attributes:

Copy to Main

Table 1257

Bitfields for NetWare file attributes:

Bit(s)	Description

 0	read only

 1	hidden

 2	system

 7	shareable

INT 21 E4--


21 E7-- Format of NetWare date/time buffer:

Copy to Main

Table 1258

Format of NetWare date/time buffer:

Offset	Size	Description

 00h	BYTE	year (80-99 = 1980-1999, 0-79 = 2000-2079)

 01h	BYTE	month (1=Jan)

 02h	BYTE	day

 03h	BYTE	hours

 04h	BYTE	minutes

 05h	BYTE	seconds

 06h	BYTE	day of week (0 = Sunday) (Novell and NTNX only)

INT 21 E7--


21 E8-- Bitfields for DoubleDOS keyboard control flags:

Copy to Main

Table 1259

Bitfields for DoubleDOS keyboard control flags:

Bit(s)	Description

 0	menu

 1	exchange

 2	entire keyboard enable/disable

 3	Ctrl-C

 4	Ctrl-PrtSc

 5	Alt/Erase

 6	Ctrl-Break

 7	Ctrl-NumLock

 8	shift-PrtSc

 9-13	undefined

 14	cancel key (clear keyboard buffer)

 15	suspend key

Note:	setting a enables the corresponding key or operatin, clearing a

  disables it

INT 21 E8--


21 E9-- Values for DoubleDOS timesharing priority:

Copy to Main

Table 1260

Values for DoubleDOS timesharing priority:

 00h	visible program gets 70%, invisible gets 30% (default)

 01h	visible program gets 50%, invisible gets 50%

 02h	visible program gets 30%, invisible gets 70%

 03h	Top program gets 70%, bottom program gets 30%

 04h	Top program gets 30%, bottom program gets 70%

 05h	get current priority

INT 21 E9--


21 EB-- Values for NetWare status:

Copy to Main

Table 1261

Values for NetWare status:

 00h	successful

 96h	no dynamic memory for file

 FEh	timed out

 FFh	failed

INT 21 EB--


21 EF01 Values in NetWare drive flag table:

Copy to Main

Table 1262

Values in NetWare drive flag table:

 00h	drive is not mapped

 01h	permanent network drive

 02h	temporary network drive

 80h	mapped to local drive

 81h	local drive used as permanent network drive

 82h	local drive used as temporary network drive

INT 21 EF01


21 EF03 Format of NetWare connection ID table [one entry of eight-element array]:

Copy to Main

Table 1263

Format of NetWare connection ID table [one entry of eight-element array]:

Offset	Size	Description

 00h	BYTE	in-use flag

E0h AES temporary

F8h IPX in critical section

FAh processing

FBh holding

FCh AES waiting

FDh waiting

FEh receiving

FFh sending

 01h	BYTE	order number assigned to server (1-8)

 02h	DWORD	(big-endian) file server's network address

 06h  6 BYTEs	(big-endian) file server's node address

 0Ch	WORD	(big-endian) socket number

 0Eh	WORD	(big-endian) base receive timeout in clock ticks

 10h  6 BYTEs	(big-endian) preferred routing node

 16h	BYTE	packet sequence number

 17h	BYTE	connection number (FFh = no connection)

 18h	BYTE	connection status (00h if active)

 19h	WORD	(big-endian) maximum receive timeout in clock ticks

 1Bh  5 BYTEs	reserved

INT 21 EF03


21 EF04 Format of file server name table:

Copy to Main

Table 1264

Format of file server name table:

Offset	Size	Description

 00h 48 BYTEs	ASCIZ server name for first entry in connection ID table

 30h 48 BYTEs	ASCIZ server name for second entry in connection ID table

...

150h 48 BYTEs	ASCIZ server name for eighth entry in connection ID table

INT 21 EF04


21 F1-- Values for NetWare function status:

Copy to Main

Table 1265

Values for NetWare function status:

 00h	successful

 F8h	already attached to server

 F9h	connection table full

 FAh	no more server slots

 FCh	unknown file server

 FEh	server bindery locked

 FFh	no response from server, or connection does not exist

SeeAlso: #1245,#1293

INT 21 F1--


21 F2-- Values for NetWare Core Protocol functions:

Copy to Main

Table 1266

Values for NetWare Core Protocol functions:

Fnc/Subfn	Description

01h	File Set Lock

02h	File Release Lock

03h	Log File (see AH=EBh"NetWare")

04h	Lock File Set (see AH=CBh"NetWare")

05h	Release File (see AH=CCh,AH=ECh"NetWare")

06h	Release File Set (see AH=CDh"NetWare")

07h	Clear File (see AH=CEh,AH=EDh"NetWare")

08h	Clear File Set (see AH=CFh"NetWare")

09h	Log Logical Record (see AH=D0h"NetWare")

0Ah	Lock Logical Record Set (see AH=D1h"NetWare")

0Bh	Clear Logical Record (see AH=D4h"NetWare")

0Ch	Release Logical Record (see AH=D2h"NetWare")

0Dh	Release Logical Record Set (see AH=D3h"NetWare")

0Eh	Clear Logical Record Set (see AH=D5h"NetWare")

0Fh	Allocate Resource (see AH=D8h"NetWare")

10h	Deallocate Resource (see AH=D9h"NetWare")

11h/0Ah	Get Printer Queue

11h/xxh	print spooling (see AX=E0xxh"NetWare")

12h	Get Volume Info with Number (see AH=DAh"NetWare")

13h	Get Station Number (see AH=DCh"NetWare")

14h	Get File Server Date and Time (NW v2.2+) (see AH=E7h"NetWare")

15h/xxh	broadcast services (see AX=E1xxh"NetWare")

16h/01h Get Directory Path

16h/0Fh	Rename Directory

16h/1Bh	Scan Salvagable Files

16h/1Ch	Recover Salvagable File

16h/1Dh	Purge Salvagable File

16h/1Eh	Scan Dir Entry

16h/1Fh	Get Dir ENtry

16h/20h	Scan Volume for Restrictions

16h/21h	Add User Disk Space Restriction (see AX=F216h/SF=21h)

16h/22h	Clear Volume Restrictions

16h/23h	Scan Dir Restrictions

16h/24h	Set Directory Disk Space Restriction (see AX=F216h/SF=24h)

16h/25h	Set Entry

16h/26h	Scan File or Directory For Extended Trustees (see AX=F216h/SF=26h)

16h/27h	Add Extended Trustee to Directory or File (see AX=F216h/SF=27h)

16h/28h	Scan File Physical

16h/29h	Get Object Disk Restrictions (see AX=F216h/SF=29h)

16h/2Ah	Get Effective Rights

16h/2Bh	Delete Trustee

16h/2Ch	Get Volume Usage

16h/2Dh	Get Dir Info

16h/2Eh	Move Entry

16h/2Fh	Fill Name Space Buffer

16h/30h	Get Name Space Entry

16h/31h	Open Data Stream

16h/32h	Get Object Effective Rights

16h/33h	Get Extended Volume Info

16h/F3h	Map Directory Number to Path

16h/xxh file/directory services (see AX=E2xxh"NetWare")

17h/0Eh Get Disk Utilization

17h/17h	Get Encryption Key

17h/18h	Login Object Encrypted

17h/1Ch	Get Connection Information (see AX=F217h/SF=1Ch)

17h/1Fh	Get Connection List from Object

17h/32h Create Bindery Object

17h/33h Delete Bindery Object

17h/34h Rename Object

17h/35h Get Bindery Object ID

17h/36h Get Bindery Object Name

17h/37h Scan Bindery Object

17h/38h Change Bindery Object Security

17h/39h Create Property

17h/3Ah Delete Property

17h/3Bh Change Property Security

17h/3Ch Scan Property

17h/3Dh Read Property Value

17h/3Eh Write Property Value

17h/41h Add Bindery Object to Set

17h/42h Delete Bindery Object from Set

17h/43h Is Bindery Object in Set

17h/44h Close Bindery

17h/45h Open Bindery

17h/46h Get Bindery Access Level

17h/47h Scan Bindery Object Trustee Paths

17h/48h	Get Bindery Object Access Level

17h/49h	Is Station a Manager?

17h/4Ah	Verify Bindery Object Password Encrypted

17h/4Bh	Change Bindery Object Password Encrypted

17h/4Ch	Get Relation of an Object

17h/96h Get Account Status

17h/97h Submit Account Charge

17h/98h Submit Account Hold

17h/99h Submit Account Note

17h/D2h Clear Connection Number (Logout Station) (see AX=F217h/SF=D2h)

17h/DAh Get Connection's Task Information (NW v2.2)

17h/DBh Get Connection's Open Files (NW v2.2)

17h/DCh Get Connections Using a File (NW v2.2)

17h/E5h Get Connection's Usage Statistics (NW v2.2)

17h/E6h Get Object's Remaining Disk Space

17h/EAh Get Connection's Task Information (NW v3.11+)

17h/EBh	Get Connection's Open Files (NW v3.11+) (see AX=F217h/SF=EBh)

17h/ECh	Get Connections Using a File (NW v3.11+) (see AX=F217h/SF=ECh)

17h/EEh	Get Physical Record Locks by File (see AX=F217h/SF=EEh)

17h/F2h Get Semaphore Information (see AX=F217h/SF=F2h)

17h/F3h Map Directory Number to Path (see AX=F217h/SF=F3h)

17h/F4h	Convert Path to Directory Entry (see AX=F217h/SF=F4h)

17h/xxh	connection control (see AX=E3xxh"NetWare")

18h	End of Job (see AH=D6h"NetWare")

19h	Logout (see AH=D7h"NetWare")

1Ah	Log Physical Record (see AH=BCh"NetWare")

1Bh	Lock Physical Record Set (see AH=C2h"NetWare")

1Ch	Release Physical Record (see AH=BDh"NetWare")

1Dh	Release Physical Record Set (see AH=C3h"NetWare")

1Eh	Clear Physical Record (see AH=BEh"NetWare")

1Fh	Clear Physical Record Set (see AH=C4h"NetWare")

20h/xxh	semaphore services (see AX=C5xxh"NetWare")

21h	Negotiate Buffer

22h/00h	TTS Is Available (see AX=C702h"NetWare")

22h/01h	TTS Begin Transaction (see AX=C700h"NetWare")

22h/02h	TTS End Transaction (see AX=C701h"NetWare")

22h/03h	TTS Abort Transaction (see AX=C703h"NetWare")

22h/04h	TTS Transaction Status (see AX=C704h"NetWare")

22h/05h	TTS Get Application Thresholds (see AX=C705h"NetWare")

22h/06h	TTS Set Application Thresholds (see AX=C706h"NetWare")

22h/07h	TTS Get Workstation Thresholds (see AX=C707h"NetWare")

22h/08h	TTS Set Workstation Thresholds (see AX=C708h"NetWare")

22h/09h	TTS Get Control Flags

22h/0Ah	TTS Set Control Flags

23h/01h	AFP Create Directory

23h/02h	AFP Create File

23h/03h	AFP Delete

23h/04h	AFP Get Entry ID From Name

23h/05h	AFP Get File Infomration

23h/06h	AFP Get Entry ID From NetWare Handle

23h/07h	AFP Rename

23h/08h	AFP Open File Fork

23h/09h	AFP Set File Information

23h/0Ah	AFP Scan File Information

23h/0Bh	AFP Alloc Temporary Dir Handle

23h/0Ch	AFP Get Entry ID From Path Name

23h/0Dh AFP 2.0 Create Directory

23h/0Eh AFP Get DOS Name from Entry ID

23h/0Eh AFP 2.0 Create File

23h/10h AFP 2.0 Set File Information

23h/11h AFP 2.0 Scan File Information

23h/13h AFP Get Macintosh Info on Deleted File

3Dh	Commit File

3Eh	File Search Initialize (FindFirst)

3Fh	File Search Continue (FindNext)

40h	Search File

42h	File Close

43h	File Create

44h	Erase Files

45h	File Rename

46h	Set File Attributes

47h	Get File Size

48h	File Read

49h	File Write

4Ah	File Server Copy (see AH=F3h"NetWare")

4Bh	Set File Time and Date

4Ch	File Open

4Dh	Create New File

4Eh	Allow Task Access to File

4Fh	Set Extended File Attributes (see AH=B6h"NetWare")

55h	Get File Bit Map

56h/xx	extended attribute services (OS/2)

56h/01h	close extended attribute

56h/02h	write extended attribute

56h/03h	read extended attribute

56h/04h	enumerate extended attribute

56h/05h	duplicate EA

57h/01h	open/create file/directory

57h/02h	init search, continue with 57h/03h

57h/03h	Scan NS Entry Info

57h/04h	rename file/directory

57h/05h	scan for trustees

57h/06h	Get NS Entry Info (see AX=F257h/SF=06h)

57h/07h	Set NS Entry DOS Info

57h/08h	delete file/directory

57h/09h	set short directory handle

57h/0Ah	Add Trustee

57h/0Bh	Delete Trustee

57h/0Ch	Allocate Temp NS Dir Handle

57h/13h	Read NS Info

57h/15h	get path string for short directory handle

57h/16h	Get Directory Base

57h/17h	Get NS Info

57h/19h	Write NS Info

57h/1Ah	Read Extended NS Info

57h/1Bh	Write Extended NS Infor

57h/1Ch	Get NS Path

57h/1Dh	Get Effective Rights

58h/01h	Get Volume Audit Statistics

58h/02h	Add Audit Property

58h/03h	Login as Volume Auditor

58h/04h Change Auditor Password

58h/05h Check Audit Access

58h/06h	Remove Audit Property

58h/07h	Disable Auditing on Volume

58h/08h	Enable Auditing on Volume

58h/09h	Is User Audited?

58h/0Ah	Read Auditing Bit Map

58h/0Bh	Read Audit Config Header

58h/0Dh	Logout as Volume Auditor

58h/0Eh	Reset Auditing File

58h/0Fh	Reset Audit History File

58h/10h	Write Auditing Bit Map

58h/11h	Write Audit Config Header

58h/13h	Get Auditing Flags

58h/14h	Close Old Auditing File

58h/15h	Delete Old Auditing File

58h/16h	Check Audit Level Two Access

5Ah/01h	Get DM (Data Migration) Info

5Ah/80h Move File Data to DM

5Ah/81h DM File Information

5Ah/82h Volume DM Status

5Ah/83h Get Migration or Status Information

5Ah/84h DM Support Module Information

5Ah/85h Move File Data from DM

5Ah/86h Get or Set Default Support Module

61h	Negotiate LIP Buffer, packet signing, and IPX checksums

65h	Packet Burst Connection

68h/xxh NetWare 4.x directory services (subfn at DS:[SI+11h])

68h/01h NDS resolve name

68h/03h	NDS read property

68h/35h NDS get server address

68h/36h NDS set keys

68h/39h NDS begin login

68h/3Ah NDS finish login

68h/3Bh NDS begin authenticate

68h/3Ch NDS finish authenticate

68h/3Dh NDS Logout

72h	NetWare 4.x Time Services

7Bh/01h	Get Cache Information

7Bh/02h	Get File Server Information

7Bh/03h	Get NetWare File Systems Information

7Bh/04h	Get User Information

7Bh/05h	Get Packet Burst Information

7Bh/06h	Get IPX/SPX Information

7Bh/07h	Get Garbage Collection Information

7Bh/08h	Get CPU Information

7Bh/09h	Get Volume Switch Information

7Bh/0Ah	Get NLM Loaded List

7Bh/0Bh	Get NLM Information

7Bh/0Ch	Get Directory Cache Information

7Bh/0Dh	Get OS Version Information

7Bh/0Eh	Get Active Connection List by Type

7Bh/0Fh	Get NLM's Resource Tag List

7Bh/14h	Get Active LAN Board List

7Bh/15h	Get LAN Configuration Information

7Bh/16h	Get LAN Common Counters Information

7Bh/17h	Get LAN Custom Counters Information

7Bh/18h	Get LAN Config Strings

7Bh/19h	Get LSL Informatino

7Bh/1Ah	Get LSL Logical Board Statistics

7Bh/1Eh	Get Media Manager Object Information

7Bh/1Fh	Get Media Manager Object List

7Bh/20h	Get Media Manager Object Children List

7Bh/21h	Get Volume Segment List

7Bh/28h	Get Active Protocol Stacks

7Bh/29h	Get Protocol Stack Configuration Information

7Bh/2Ah	Get Protocol Stack Statistics Information

7Bh/2Bh	Get Protocol Stack Custom Information

7Bh/2Ch	Get Protocol Stack Numbers By Media Number

7Bh/2Dh	Get Protocol Stack Numbers By LAN Board Number

7Bh/2Eh	Get Media Name by Media Number

7Bh/2Fh	Get Loaded Media Number List

7Bh/32h	Get General Router and SAP Information

7Bh/33h	Get Network Router Information

7Bh/34h	Get Network Routers Information

7Bh/35h	Get Known Networks Information

7Bh/36h	Get Server Information

7Bh/38h	Get Known Servers Information

7Bh/3Ch	Get Server Set Commands Information

7Bh/3Dh	Get Server Set Categories

Note:	the subfunction is stored at DS:SI for AL=56h,57h, DS:SI+2 for

  AL=15h-17h,23h

INT 21 F2--


21 F216 Format of NetWare request buffer:

Copy to Main

Table 1267

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	000Ah (length of following data)

 02h	BYTE	21h (subfunction "Add User Disk Space Restriction")

 03h	BYTE	volume number

 04h	DWORD	(big-endian) object ID

 08h	DWORD	(big-endian) disk space limit in 4K blocks

00000000h to 40000000h

INT 21 F216


21 F216 Format of NetWare request buffer:

Copy to Main

Table 1268

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	BYTE	24h (subfunction "Set Directory Disk Space Restriction")

 03h	BYTE	directory handle

 04h	DWORD	(big-endian) disk space limit in 4K blocks

00000000h to remove restriction, negative to set to 0 blocks

INT 21 F216


21 F216 Format of NetWare request buffer:

Copy to Main

Table 1269

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	26h (subfunc "Scan File or Directory For Extended Trustees")

 03h	BYTE	directory handle

 04h	BYTE	sequence number

00h for first call, increment by number of returned entries

 05h	BYTE	length of path

 06h  N BYTEs	pathname

INT 21 F216


21 F216 Format of NetWare reply buffer:

Copy to Main

Table 1270

Format of NetWare reply buffer:

Offset	Size	Description

 00h	BYTE	number of entries returned (max 20)

 01h 20 DWORDs	(big-endian) list of object IDs

 51h 20 WORDs	list of associated trustee rights

INT 21 F216


21 F216 Format of NetWare request buffer:

Copy to Main

Table 1271

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	27h (subfunction "Add Extended Trustee to Directory or File")

 03h	BYTE	directory handle

 04h	DWORD	(big-endian) object ID

 08h	WORD	trustee rights (see #1272)

 0Ah	BYTE	path length

 0Bh  N BYTEs	path name

INT 21 F216


21 F216 Bitfields for NetWare trustee rights:

Copy to Main

Table 1272

Bitfields for NetWare trustee rights:

Bit(s)	Description

 0	read

 1	write

 3	create

 4	delete

 5	access

 6	file

 7	modify

 8	supervisor

INT 21 F216


21 F216 Format of NetWare request buffer:

Copy to Main

Table 1273

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	BYTE	21h (subfunction "Get Object Disk Restrictions")

 03h	BYTE	volume number

 04h	DWORD	(big-endian) object ID

INT 21 F216


21 F216 Format of NetWare reply buffer:

Copy to Main

Table 1274

Format of NetWare reply buffer:

Offset	Size	Description

 00h	DWORD	disk space limit

 04h	DWORD	disk space currently in use by object

INT 21 F216


21 F216 Format of NetWare "Get Extended Volume Information" request buffer:

Copy to Main

Table 2733

Format of NetWare "Get Extended Volume Information" request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	33h (subfunction "Get Extended Volume Information")

 03h	DWORD	volume number

SeeAlso: #2734

INT 21 F216


21 F216 Format of NetWare "Get Extended Volume Information" reply buffer:

Copy to Main

Table 2734

Format of NetWare "Get Extended Volume Information" reply buffer:

Offset	Size	Description

 00h	WORD	length of returned data

 02h	DWORD	volume type

 06h	DWORD	status flag bits

 0Ah	DWORD	sector size

 0Eh	DWORD	sectors per cluster

 12h	DWORD	total clusters in volume

 16h	DWORD	free clusters

 1Ah	DWORD	freeable suballocated clusters

 1Eh	DWORD	freeable in-limbo sectors

 22h	DWORD	non-freeable in-limbo sectors

 26h	DWORD	non-freeable available suballocated sectors

 2Ah	DWORD	unuable suballocated sectors

 2Eh	DWORD	total suballocated clusters

 32h	DWORD	number of data streams

 36h	DWORD	number of in-limbo data streams

 3Ah	DWORD	age of oldest deleted file in clock ticks

 3Eh	DWORD	number of compressed data streams

 42h	DWORD	number of compressed in-limbo data streams

 46h	DWORD	number of uncompressable data streams

 4Ah	DWORD	number of precompressed sectors

 4Eh	DWORD	number of compressed sectors

 52h	DWORD	number of migrated files

 56h	DWORD	number of migrated sectors

 5Ah	DWORD	number of clusters used by FAT

 5Eh	DWORD	number of clusters used by directories

 62h	DWORD	number of clusters used by extended directories

 66h	DWORD	total number of directory entries

 6Ah	DWORD	number of unused directory entries

 6Eh	DWORD	total number of extended directory extants

 72h	DWORD	number of unused extended directory extants

 76h	DWORD	number of extended attributes defined

 7Ah	DWORD	number of extended-attribute extants used

 7Eh	DWORD	object ID for Directory Services

 82h	DWORD	date and time volume last modified

 86h	var	counted??? volume name string

SeeAlso: #2733

INT 21 F216


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1275

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	1Ch (subfunction "Get Connection Information")

 03h	DWORD	target connection number

Note:	connection numbers greater than the maximum supported by the server

  can cause ABENDs

INT 21 F217


21 F217 Format of NetWare reply buffer:

Copy to Main

Table 1276

Format of NetWare reply buffer:

Offset	Size	Description

 00h	DWORD	(big-endian) unique user ID, 00000000h if no one logged in

 04h	WORD	(big-endian) user type

 06h 48 BYTEs	user name

 36h  7 BYTEs	login time (see #1258)

 3Dh	BYTE	reserved

INT 21 F217


21 F217 Format of NetWare "Change Connection State" requst buffer:

Copy to Main

Table 2729

Format of NetWare "Change Connection State" requst buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	1Dh (subfunction "Change Connection State")

 03h	DWORD	new state

INT 21 F217


21 F217 Format of NetWare "Set Watchdog Delay Interval" request buffer:

Copy to Main

Table 2732

Format of NetWare "Set Watchdog Delay Interval" request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	1Eh (subfunction "Set Watchdog Delay Interval")

 03h	DWORD	interval in minutes

INT 21 F217


21 F217 Format of NetWare "Get Connection List" request buffer:

Copy to Main

Table 2731

Format of NetWare "Get Connection List" request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	1Fh (subfunction "Get Connection List")

 03h	DWORD	object ID

 07h	DWORD	??? (initialize to FFFFFFFFh before first call)

INT 21 F217


21 F217 Format of NetWare "Get Volume Extended Information" request buffer:

Copy to Main

Table 2727

Format of NetWare "Get Volume Extended Information" request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	33h (subfunction "Get Volume Extended Information")

 03h	BYTE	volume ID

SeeAlso: #2728

INT 21 F217


21 F217 Format of NetWare "Get Volume Extended Information" reply buffer:

Copy to Main

Table 2728

Format of NetWare "Get Volume Extended Information" reply buffer:

Offset	Size	Description

 00h	WORD	(call) length of buffer

(ret) length of returned data

 02h	DWORD	???

 06h	DWORD	features

bit 0: suballocation

bit 1: compressoin

bit 2: migration

bit 3: auditing

 0Ah 31 DWORDs	???

 86h	var	ASCIZ volume name

SeeAlso: #2727

INT 21 F217


21 F217 Format of NetWare "Add Object to Set" request buffer:

Copy to Main

Table 2694

Format of NetWare "Add Object to Set" request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	41h (subfunction "Add Object to Set")

 03h	WORD	(big-endian) object type

 05h	BYTE	length of object name

 06h  N BYTEs	object name

BYTE	length of property name

      N BYTEs	property name

WORD	type of object being added to set

BYTE	length of member object's name

      N BYTEs	member object's name

INT 21 F217


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1277

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	D2h (subfunction "Clear Connection Number")

 03h	BYTE	connection number

INT 21 F217


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1278

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	EBh (subfunction "Get Connection's Open Files")

 03h	WORD	target connection number

 05h	WORD	last record seen (set to 0000h for first call)

Note:	connection numbers greater than the maximum supported by the server

  can cause ABENDs

INT 21 F217


21 F217 Format of NetWare reply buffer:

Copy to Main

Table 1279

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	next request record

 02h	WORD	number of records returned (max 28)

 04h 29N BYTEs	array of connection records (see #1280)

INT 21 F217


21 F217 Format of NetWare connection record:

Copy to Main

Table 1280

Format of NetWare connection record:

Offset	Size	Description

 00h	WORD	task number

 02h	BYTE	lock type

 03h	BYTE	access control

 04h	BYTE	lock flag

 05h	BYTE	volume number

 06h	DWORD	parent directory entry number

 0Ah	DWORD	directory entry number

 0Eh	BYTE	reserved

 0Fh	BYTE	data stream type

 10h	BYTE	file name length

 11h 12 BYTEs	file name

INT 21 F217


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1281

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0009h (length of following data)

 02h	BYTE	ECh (subfunction "Get Connections Using a File")

 03h	BYTE	data stream type

 04h	BYTE	volume number

 05h	DWORD	directory entry number

 09h	WORD	last record seen (0000h for first call)

INT 21 F217


21 F217 Format of NetWare reply buffer:

Copy to Main

Table 1282

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	next request record

 02h	WORD	use count

 04h	WORD	open count

 06h	WORD	number of times open for reading

 08h	WORD	number of times open for writing

 0Ah	WORD	Deny Read count

 0Ch	WORD	Deny Write count

 0Eh	BYTE	flag: locked

 0Fh	BYTE	data stream type

 10h	WORD	number of records returned (max 70)

 12h 7N BYTEs	returned records (see #1283)

INT 21 F217


21 F217 Format of returned record:

Copy to Main

Table 1283

Format of returned record:

Offset	Size	Description

 00h	WORD	connection number

 02h	WORD	task number

 04h	BYTE	lock type

 05h	BYTE	access flag

 06h	BYTE	lock flag

INT 21 F217


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1284

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0009h (length of following data)

 02h	BYTE	EEh (subfunction "Get Physical Record Locks by File")

 03h	BYTE	data stream number

 04h	BYTE	volume number

 05h	DWORD	directory entry number

 09h	WORD	last record seen (0000h for first call)

INT 21 F217


21 F217 Format of NetWare reply buffer:

Copy to Main

Table 1285

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	next request record

 02h	WORD	number of locks

 04h 17N BYTEs	array of lock records, one per lock (see #1286)

INT 21 F217


21 F217 Format of NetWare lock record:

Copy to Main

Table 1286

Format of NetWare lock record:

Offset	Size	Description

 00h	WORD	logged count

 02h	WORD	number of shareable locks

 04h	DWORD	start offset of record

 08h	DWORD	end offset of record

 0Ch	WORD	logical connection number

 0Eh	WORD	task number

 10h	BYTE	lock type

INT 21 F217


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1287

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	length of following data (max 84h)

 02h	BYTE	F2h (subfunction "Get Semaphore Information")

 03h	WORD	last record seen (0000h on first call)

 05h	BYTE	length of semaphore name (max 128)

 06h  N BYTEs	semaphore name

INT 21 F217


21 F217 Format of NetWare reply buffer:

Copy to Main

Table 1288

Format of NetWare reply buffer:

Offset	Size	Description

 00h	WORD	next request record

 02h	WORD	open count

 04h	BYTE	value of semaphore

 05h	WORD	number of records returned

 07h 2N WORDs	list of logical connection number/task number pairs

INT 21 F217


21 F217 Format of NetWare request buffer:

Copy to Main

Table 1289

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	0007h (length of following data)

 02h	BYTE	F3h (subfunction "Map Directory Number to Path")

 03h	BYTE	volume number

 04h	DWORD	directory entry number

 08h	BYTE	name space type

INT 21 F217


21 F217 Format of NetWare reply buffer:

Copy to Main

Table 1290

Format of NetWare reply buffer:

Offset	Size	Description

 00h	BYTE	directory path length

 01h  N BYTEs	directory path (NetWare style, separated by length descriptors

  rather than slashes or backslashes)

INT 21 F217


21 F217 Format of NetWare "Convert Path to Directory Entry" request buffer:

Copy to Main

Table 1291

Format of NetWare "Convert Path to Directory Entry" request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	F4h (subfunction "Convert Path to Directory Entry")

 03h	BYTE	directory handle or 00h for none

 04h	BYTE	length of directory path

 05h  N BYTEs	directory path (must be fully qualified if no handle specified)

INT 21 F217


21 F217 Format of NetWare "Convert Path to Directory Entry" reply buffer:

Copy to Main

Table 1292

Format of NetWare "Convert Path to Directory Entry" reply buffer:

Offset	Size	Description

 00h	BYTE	(ret) volume number

 01h	DWORD	(ret) directory entry number

INT 21 F217


21 F217 Format of NetWare "Clear Connection Number" request buffer:

Copy to Main

Table 2730

Format of NetWare "Clear Connection Number" request buffer:

Offset	Size	Description

 00h	WORD	length of following data

 02h	BYTE	FEh (subfunction "Clear Connection Number")

 03h	DWORD	connection number

INT 21 F217


21 F244 Values for NetWare function status:

Copy to Main

Table 1293

Values for NetWare function status:

 00h	successful

 98h	nonexistent volume

 9Bh	invaid directory handle

 9Ch	invalid path

 FFh	no files found

SeeAlso: #1265,#1572 at INT 2F/AX=7A20h/BX=0000h

INT 21 F244


21 F244 Format of NetWare request buffer:

Copy to Main

Table 1294

Format of NetWare request buffer:

Offset	Size	Description

 00h	BYTE	directory handle

 01h	BYTE	search attributes (see #0643 at AX=4301h)

 02h	BYTE	length of filespec

 03h  N BYTEs	ASCIZ filespec (may include wildcards)

INT 21 F244


21 F257 Format of NetWare request buffer:

Copy to Main

Table 1295

Format of NetWare request buffer:

Offset	Size	Description

 00h	BYTE	06h (subfunction "Get NS Entry Info")

 01h	BYTE	name space

 02h	BYTE	destination name space

 03h	WORD	search attributes

 05h	DWORD	return information mask (see #1296)

 09h	BYTE	volume number

 0Ah	DWORD	directory base

 0Eh	BYTE	handle flag

00h first byte of dir base is dir handle; ignore volume number

01h dir base = unique ID, volume number set

FFh volume number and dir base ignored, volume part of path

 0Fh	BYTE	number of path components

 10h  N BYTEs	list of path components (each a counted string)

INT 21 F257


21 F257 Bitfields for return information mask:

Copy to Main

Table 1296

Bitfields for return information mask:

Bit(s)	Description

 0	include filename

 1	data stream space allocated info

 2	attributes info

 3	data stream size info

 4	total space allocated for all data streams

 5	extended attributes info

 6	archive info

 7	modify info

 8	create info

 9	name space info

 10	directory info

 11	rights info

INT 21 F257


21 F257 Format of NetWare reply buffer for name space info:

Copy to Main

Table 1297

Format of NetWare reply buffer for name space info:

Offset	Size	Description

 00h 72 BYTEs	reserved

 48h	DWORD	creator's name space number

 4Ch 257 BYTEs	reserved

INT 21 F257


21 F258 Format of NetWare "Get Volume Auditing Statistics" request buffer:

Copy to Main

Table 1298

Format of NetWare "Get Volume Auditing Statistics" request buffer:

Offset	Size	Description

 00h	BYTE	01h (function "Get Volume Auditing Statistics")

 01h	DWORD	volume

SeeAlso: #1299

INT 21 F258


21 F258 Format of NetWare "Get Volume Auditing Statistics" reply buffer:

Copy to Main

Table 1299

Format of NetWare "Get Volume Auditing Statistics" reply buffer:

Offset	Size	Description

 00h	WORD	auditing version (date)

 02h	WORD	audit file version (date)

 04h	DWORD	auditing enabled flag

 08h	DWORD	audit file's size

 0Ch	DWORD	audit configuration file's size

 10h	DWORD	maximum audit file size

 14h	DWORD	audit file size threshold

 18h	DWORD	number of audit records

 1Ch	DWORD	number of history records

SeeAlso: #1298,#1311

INT 21 F258


21 F268 Format of NetWare "Get Tree Name" request buffer:

Copy to Main

Table 1300

Format of NetWare "Get Tree Name" request buffer:

Offset	Size	Description

 00h	BYTE	01h

INT 21 F268


21 F268 Format of NetWare "Get Tree Name" reply buffer:

Copy to Main

Table 1301

Format of NetWare "Get Tree Name" reply buffer:

Offset	Size	Description

 00h	DWORD	???

 04h	DWORD	???

 08h 32 BYTEs	tree name, padded with underscores ('_')

 28h 60 BYTEs	???

INT 21 F268


21 F268 Format of NetWare "Get Bindery Context" request buffer:

Copy to Main

Table 1302

Format of NetWare "Get Bindery Context" request buffer:

Offset	Size	Description

 00h	BYTE	04h

INT 21 F268


21 F268 Format of NetWare "Get Bindery Context" reply buffer:

Copy to Main

Table 1303

Format of NetWare "Get Bindery Context" reply buffer:

Offset	Size	Description

 00h	DWORD	length

 04h  N WORDs	Unicode bindery context string

INT 21 F268


21 F268 Format of NetWare "NDS List Partitions" request buffer:

Copy to Main

Table 1304

Format of NetWare "NDS List Partitions" request buffer:

Offset	Size	Description

 00h	BYTE	02h

 01h	DWORD	??? (FFFFFFFFh)

 05h	DWORD	??? (00000202h)

 09h	DWORD	length (00000018h)

 0Dh	DWORD	??? (00000000h)

 11h	DWORD	function (00000016h) (subfunction "NDS List Partitions")

 15h	DWORD	??? (00000400h)

 19h	DWORD	API version (00000000h)

 1Dh	DWORD	??? (00000000h)

 21h	DWORD	iteration (FFFFFFFFh)

SeeAlso: #1305,#1306

INT 21 F268


21 F268 Format of NetWare "NDS List Partitions" reply buffer:

Copy to Main

Table 1305

Format of NetWare "NDS List Partitions" reply buffer:

Offset	Size	Description

 00h	DWORD	length

 04h	DWORD	???

 08h	DWORD	return code

 0Ch	DWORD	iteration

 10h 1000 BYTEs	returned data

SeeAlso: #1304

INT 21 F268


21 F268 Format of NetWare "NDS Get Server Name and Address" request buffer:

Copy to Main

Table 1306

Format of NetWare "NDS Get Server Name and Address" request buffer:

Offset	Size	Description

 00h	BYTE	02h

 01h	DWORD	??? (FFFFFFFFh)

 05h	DWORD	??? (00000202h)

 09h	DWORD	length (0000000Ch)

 0Dh	DWORD	??? (00000000h)

 11h	DWORD	function (00000035h) (subfunc "NDS Get Server Name and Addr")

 15h	DWORD	??? (00000400h)

SeeAlso: #1304,#1307

INT 21 F268


21 F268 Format of NetWare "NDS Get Server Name and Address" reply buffer:

Copy to Main

Table 1307

Format of NetWare "NDS Get Server Name and Address" reply buffer:

Offset	Size	Description

 00h	DWORD	length

 04h	DWORD	???

 08h	DWORD	return code

 0Ch	DWORD	length of name

 10h  N WORDs	Unicode server name string

var	padding

DWORD	??? (00000001h)

DWORD	??? (00000000h)

DWORD	??? (0000000Ch)

     12 BYTEs	server's IPX address

SeeAlso: #1306

INT 21 F268


21 F268 Format of NetWare "NDS Logout" request buffer:

Copy to Main

Table 1308

Format of NetWare "NDS Logout" request buffer:

Offset	Size	Description

 00h	BYTE	02h

 01h	DWORD	??? (FFFFFFFFh)

 05h	DWORD	??? (00000202h)

 09h	DWORD	length (0000000Ch)

 0Dh	DWORD	??? (00000000h)

 11h	DWORD	function (0000003Dh) (subfunction "NDS Logout")

 15h	DWORD	??? (00000000h)

SeeAlso: #1309

INT 21 F268


21 F268 Format of NetWare "NDS Logout" reply buffer:

Copy to Main

Table 1309

Format of NetWare "NDS Logout" reply buffer:

Offset	Size	Description

 00h	DWORD	length

 04h	DWORD	???

 08h	DWORD	return code

SeeAlso: #1308

INT 21 F268


21 F268 Format of NetWare "Get DS Auditing Statistics" request buffer:

Copy to Main

Table 1310

Format of NetWare "Get DS Auditing Statistics" request buffer:

Offset	Size	Description

 00h	BYTE	C8h

SeeAlso: #1311

INT 21 F268


21 F268 Format of NetWare "Get DS Auditing Statistics" reply buffer:

Copy to Main

Table 1311

Format of NetWare "Get DS Auditing Statistics" reply buffer:

Offset	Size	Description

 00h	WORD	auditing version (date)

 02h	WORD	audit file version (date)

 04h	DWORD	auditing enabled flag

 08h	DWORD	audit file's size

 0Ch	DWORD	audit configuration file's size

 10h	DWORD	maximum audit file size

 14h	DWORD	audit file size threshold

 18h	DWORD	number of audit records

 1Ch	DWORD	number of history records

SeeAlso: #1299,#1310

INT 21 F268


21 F272 Format of NetWare "Get File Server UTC Time" request buffer:

Copy to Main

Table 1312

Format of NetWare "Get File Server UTC Time" request buffer:

Offset	Size	Description

 00h	BYTE	??? (00h)

 01h	BYTE	??? (01h)

 02h	BYTE	??? (01h)

SeeAlso: #1313

INT 21 F272


21 F272 Format of NetWare "Get File Server UTC Time" reply buffer:

Copy to Main

Table 1313

Format of NetWare "Get File Server UTC Time" reply buffer:

Offset	Size	Description

 00h	DWORD	seconds

 04h	DWORD	???

 04h	DWORD	??? (00000204h)

 04h	DWORD	??? (00000000h)

 04h	DWORD	??? (00000000h)

 04h	DWORD	??? (FFFFFFFFh)

 04h	DWORD	??? (00000000h)

SeeAlso: #1312

INT 21 F272


21 F27B Format of NetWare "Get Router Info" request buffer:

Copy to Main

Table 1314

Format of NetWare "Get Router Info" request buffer:

Offset	Size	Description

 00h	WORD	???

 02h	BYTE	33h (function "Get Router Info")

 03h	DWORD	network number

SeeAlso: #1315

INT 21 F27B


21 F27B Format of NetWare "Get Router Info" reply buffer:

Copy to Main

Table 1315

Format of NetWare "Get Router Info" reply buffer:

Offset	Size	Description

 00h	DWORD	timestamp

 04h	DWORD	???

 08h	DWORD	network number

 0Ch	WORD	hops

 0Eh	WORD	???

 10h	WORD	time

SeeAlso: #1314,#1316

INT 21 F27B


21 F27B Format of NetWare "Get Router Info" request buffer:

Copy to Main

Table 1316

Format of NetWare "Get Router Info" request buffer:

Offset	Size	Description

 00h	WORD	???

 02h	BYTE	35h (function "Get Known Networks Info")

 03h	DWORD	??? (00000000h)

SeeAlso: #1317

INT 21 F27B


21 F27B Format of NetWare "Get Router Info" reply buffer:

Copy to Main

Table 1317

Format of NetWare "Get Router Info" reply buffer:

Offset	Size	Description

 00h	DWORD	timestamp

 04h	DWORD	???

 08h	DWORD	number of records following

 0Ch	var	array of network info records

Offset	Size	Description

 00h	WORD	network number

 04h	WORD	hops

 06h	WORD	???

 08h	WORD	time

SeeAlso: #1314,#1316

INT 21 F27B


21 F3-- Format of NetWare request buffer:

Copy to Main

Table 1318

Format of NetWare request buffer:

Offset	Size	Description

 00h	WORD	source file handle (as returned by AH=3Ch or AH=3Dh)

 02h	WORD	destination file handle

 04h	DWORD	starting offset in source

 08h	DWORD	starting offset in destination

 0Ch	DWORD	number of bytes to copy

INT 21 F3--


21 FF00 Format of TopWare user information:

Copy to Main

Table 1319

Format of TopWare user information:

Offset	Size	Description

 00h	BYTE	node ID

 01h 15 BYTEs	user name

 10h	WORD	user number

 12h	BYTE	group number

INT 21 FF00


21 FF00 Format of TopWare drive mapping [array]:

Copy to Main

Table 1320

Format of TopWare drive mapping [array]:

Offset	Size	Description

 00h	BYTE	bits 6-0: drive number (1=A:, etc.)

bit 7: this is a server drive

 01h  3 BYTEs	mapping drive (for example, "C:\")

 04h 64 BYTEs	current directory

INT 21 FF00


21 FF80 Format of TopWare message:

Copy to Main

Table 1321

Format of TopWare message:

Offset	Size	Description

 00h	BYTE	type code

07h TopSend

11h user application

other reserved for TopWare

 01h	var	data

Note:	sending messages with a type code other than 11h will cause

  unpredictable results

INT 21 FF80


21 FF8D Values for TopWare screen mode:

Copy to Main

Table 1322

Values for TopWare screen mode:

 00h	text mode

 01h	720x348

 02h	640x408

 03h	720x352

 04h	640x390

 05h	reserved

INT 21 FF8D


21 FF9A Format of TopWare user-defined packet:

Copy to Main

Table 1323

Format of TopWare user-defined packet:

Offset	Size	Description

 00h	BYTE	FFh

 01h	WORD	(call) length of data field plus 3

(ret) length of received message (0000h if none received)

 03h	BYTE	destination ID (FFh for broadcast message)

 04h	BYTE	sending station ID

 05h	BYTE	type code (11h; all other codes reserved for TopWare)

 06h  N BYTEs	received message

INT 21 FF9A


21 FFB0 Bitfields for TopWare printer priority status:

Copy to Main

Table 1324

Bitfields for TopWare printer priority status:

Bit(s)	Description

 2	LPT3 has high priority

 1	LPT2 has high priority

 0	LPT1 has high priority

INT 21 FFB0


21 FFB3 Bitfields for TopWare printer start-of-job formfeed status:

Copy to Main

Table 1325

Bitfields for TopWare printer start-of-job formfeed status:

Bit(s)	Description

 2	LPT3 has formfeed enabled

 1	LPT2 has formfeed enabled

 0	LPT1 has formfeed enabled

INT 21 FFB3


21 FFBF Format of TopWare logon information:

Copy to Main

Table 1326

Format of TopWare logon information:

Offset	Size	Description

 00h	BYTE	station address

 01h 15 BYTEs	username

INT 21 FFBF


21 FFC0 Bitfields for TopWare printer end-of-job formfeed status:

Copy to Main

Table 1327

Bitfields for TopWare printer end-of-job formfeed status:

Bit(s)	Description

 2	LPT3 has formfeed enabled

 1	LPT2 has formfeed enabled

 0	LPT1 has formfeed enabled

INT 21 FFC0


21 FFC3 Bitfields for TopWare printer sharing status:

Copy to Main

Table 1328

Bitfields for TopWare printer sharing status:

Bit(s)	Description

 2	LPT3 is shared

 1	LPT2 is shared

 0	LPT1 is shared

INT 21 FFC3


21 FFC8 Bitfields for TopWare print header status:

Copy to Main

Table 1329

Bitfields for TopWare print header status:

Bit(s)	Description

 2	LPT3 has headers enabled

 1	LPT2 has headers enabled

 0	LPT1 has headers enabled

INT 21 FFC8


21 FFCC Format of TopWare queued file information buffer [16-item array, one element]:

Copy to Main

Table 1330

Format of TopWare queued file information buffer [16-item array, one element]:

Offset	Size	Description

 00h 12 BYTEs	filename

 0Ch	DWORD	size

 10h	WORD	date

 12h	WORD	time

 14h 15 BYTEs	username

 23h	BYTE	count

 24h	BYTE	flag: header

 25h	BYTE	print number

INT 21 FFCC


21 FFCD Format of TopWare server status:

Copy to Main

Table 1331

Format of TopWare server status:

Offset	Size	Description

 00h	BYTE	station address

 01h 15 BYTEs	username

 10h	BYTE	flag: 01h printer is shared, 00h sharing disabled

 11h	BYTE	number of files pending in queue

INT 21 FFCD


21 FFE3 Values for TopWare error code:

Copy to Main

Table 1332

Values for TopWare error code:

 01h	invalid handle

 03h	no interfaces of the specified type found

 05h	bad packet type

 09h	insufficient space

 0Ah	type already being accessed

 0Ch	unable to send packet (usually hardware error)

 11h	invalid function

INT 21 FFE3


21 FFE3 Values TopWare receive routine is called with:

Copy to Main

Table 1333

Values TopWare receive routine is called with:

AX = function

    0000h request packet buffer

CX = packet size

Return: ES:DI -> buffer or 0000h:0000h to discard packet

    0001h packet copied

CX = packet size

DS:SI -> copied packet (same as returned ES:DI above)

INT 21 FFE3


24 ---- Values critical error handler is called with:

Copy to Main

Table 1334

Values critical error handler is called with:

AH = type and processing flags (see #1335)

AL = drive number if AH bit 7 clear

BP:SI -> device driver header (see #0858 at INT 21/AH=52h)

(BP:[SI+4] bit 15 set if character device)

DI low byte contains error code if AH bit 7 set (see #1336)

STACK:	DWORD	return address for INT 24 call

WORD	flags pushed by INT 24

WORD	original AX on entry to INT 21

WORD	BX

WORD	CX

WORD	DX

WORD	SI

WORD	DI

WORD	BP

WORD	DS

WORD	ES

DWORD	return address for INT 21 call

WORD	flags pushed by INT 21

Return:	AL = action code (see #1337)

SS,SP,DS,ES,BX,CX,DX preserved

Notes:	the only DOS calls the handler may make are INT 21/AH=01h-0Ch,30h,59h

if the handler returns to the application by popping the stack, DOS

  will be in an unstable state until the first call with AH > 0Ch

for DOS 3.1+, IGNORE (AL=00h) is turned into FAIL (AL=03h) on network

  critical errors

if IGNORE specified but not allowed, it is turned into FAIL

if RETRY specified but not allowed, it is turned into FAIL

if FAIL specified but not allowed, it is turned into ABORT

(DOS 3.0+) if a critical error occurs inside the critical error

  handler, the DOS call is automatically failed (AL set to 03h and

  the INT 24 call skipped)

INT 24 ----


24 ---- Bitfields for critical error type and processing flags:

Copy to Main

Table 1335

Bitfields for critical error type and processing flags:

Bit(s)	Description

 7	clear = disk I/O error

set   = -- if block device, bad FAT image in memory

-- if char device, error code in DI

 6	unused

 5	Ignore allowed (DOS 3.0+)

 4	Retry allowed (DOS 3.0+)

 3	Fail allowed (DOS 3.0+)

 2-1	disk area of error

00 = DOS area	01 = FAT

10 = root dir	11 = data area

 0	set if write, clear if read

INT 24 ----


24 ---- Values for critical error code:

Copy to Main

Table 1336

Values for critical error code:

 00h	write-protection violation attempted

 01h	unknown unit for driver

 02h	drive not ready

 03h	unknown command given to driver

 04h	data error (bad CRC)

 05h	bad device driver request structure length

 06h	seek error

 07h	unknown media type

 08h	sector not found

 09h	printer out of paper

 0Ah	write fault

 0Bh	read fault

 0Ch	general failure

 0Dh	(DOS 3.0+) sharing violation

 0Eh	(DOS 3.0+) lock violation

 0Fh	invalid disk change

 10h	(DOS 3.0+) FCB unavailable

 11h	(DOS 3.0+) sharing buffer overflow

 12h	(DOS 4.0+) code page mismatch

 13h	(DOS 4.0+) out of input

 14h	(DOS 4.0+) insufficient disk space

INT 24 ----


24 ---- Values for critical error handler action code:

Copy to Main

Table 1337

Values for critical error handler action code:

 00h	ignore error and continue processing request

 01h	retry operation

 02h	terminate program as though INT 21/AH=4Ch called (INT 20h for DOS 1.x)

 03h	fail system call in progress (DOS 3+)

INT 24 ----


25 ---- Values for disk I/O status:

Copy to Main

Table 1338

Values for disk I/O status:

 80h	device failed to respond (timeout)

 40h	seek operation failed

 20h	controller failed

 10h	data error (bad CRC)

 08h	DMA failure

 04h	requested sector not found

 03h	write-protected disk (INT 26 only)

 02h	bad address mark

 01h	bad command

INT 25 ----


25 ---- Format of disk read packet:

Copy to Main

Table 1339

Format of disk read packet:

Offset	Size	Description

 00h	DWORD	sector number

 04h	WORD	number of sectors to read

 06h	DWORD	transfer address

INT 25 ----


25 CDCD Format of Stacker v2+ driver address buffer:

Copy to Main

Table 1340

Format of Stacker v2+ driver address buffer:

Offset	Size	Description

 00h	WORD	signature CDCDh

 02h	WORD	??? 0001h

 04h	DWORD	pointer to Stacker signature at device driver offset 1Ah

  (see #1341)

INT 25 CDCD


25 CDCD Format of Stacker v2+ device driver:

Copy to Main

Table 1341

Format of Stacker v2+ device driver:

Offset	Size	Description

 00h	DWORD	pointer to next driver, offset=FFFFh if last driver

FFFFh:FFFFh for Stacker Anywhere

 04h	WORD	device attributes (see #0859,#0860)

 06h	WORD	device strategy entry point

 08h	WORD	device interrupt entry point

 0Ah	BYTE	number of subunits (drives) supported by driver

0 for Stacker Anywhere

 0Bh  7 BYTEs	signature "STAC-CD" for Stacker and Stacker Anywhere

 12h  7 BYTEs	???

 19h	BYTE	always = 01h ?? (Stacker Anywhere points here)

 1Ah	WORD	signature A55Ah (all other Stacker versions point here)

 1Ch	WORD	Stacker version * 64h

0C8h = 200, 012Ch = 300, 0190h = 400 (also Stacker Anywhere)

 1Eh	WORD	offset of volume-specific information offset table

(list of WORDs, one per drive, containing offsets to various

  information)

 20h 56 BYTEs	n/a

 58h	BYTE	volume number, set after INT 21/AX=4404h, INT 21/AX=4408h

(use to index into volume-specific info offset table,

should be set to FFh before and tested for change after)

 59h 19 BYTEs	n/a

 6Ch  4 BYTEs	ASCII string "SWAP"

 70h 26 BYTEs	drive mapping table (one byte for each drive A: through Z:)

(only used for drives swapped by SSWAP.COM; other drives

compressed by Stacker can be found with the standard device

driver header signature (see INT 21/AH=52h)

---Stacker 4, Stacker Anywhere---

 8Ah 40	BYTEs	???

 B2h  4 BYTEs	ASCII string "SWP2"

 B6h 26 BYTEs	drive table ???

 D0h 150 BYTEs	???

166h 60 BYTEs	LZSINFO structure (see #1523 at INT 2F/AX=4A12h)

SeeAlso: #1342,#0858 at INT 21/AH=52h

INT 25 CDCD


25 CDCD Format of Stacker boot record:

Copy to Main

Table 1342

Format of Stacker boot record:

Offset	Size	Description

1F0h  8 BYTEs	Stacker signature (first byte is CDh)

1F8h	DWORD	pointer to start of Stacker device driver

1FCh	WORD	Stacker volume number

1FEh	WORD	???

SeeAlso: #1341

INT 25 CDCD


26 ---- Format of disk write packet:

Copy to Main

Table 1343

Format of disk write packet:

Offset	Size	Description

 00h	DWORD	sector number

 04h	WORD	number of sectors to read

 06h	DWORD	transfer address

INT 26 ----


2A 80-- Values for DOS critical section number:

Copy to Main

Table 1344

Values for DOS critical section number:

 01h	DOS kernel, SHARE.EXE, DOSMGR

apparently for maintaining the integrity of DOS/SHARE/NET

  data structures

 02h	DOS kernel, DOSMGR

ensures that no multitasking occurs while DOS is calling an

  installable device driver

 05h	network redirector

 06h	DOS 4.x only IFSFUNC

 08h	ASSIGN.COM

 0Ah	MSCDEX, CORELCDX

 0Fh	IBM PC LAN server (while intercepting INT 10/AH=06h,07h,0Eh)

INT 2A 80--


2C 0000 Values for Cloaking error code:

Copy to Main

Table 1345

Values for Cloaking error code:

 0001h	no more selectors

 0002h	not a GDT ring 0 selector

 0003h	invalid selector (out of range, not user selector)

 0004h	selector not allocated

INT 2C 0000


2C 0005 Bitfields for extended access mode byte:

Copy to Main

Table 1346

Bitfields for extended access mode byte:

Bit(s)	Description

 7	4K granularity instead of byte granularity

 6	32-bit code segment

 5	reserved (0)

 4	segment available to system

SeeAlso: #0379

INT 2C 0005


2C 0009 Values Cloaking passalong address is called with:

Copy to Main

Table 1347

Values Cloaking passalong address is called with:

EAX = CS:IP of byte following INT 2C instruction invoking passalong

SS:EBX -> caller registers (see #1348)

CF clear

others undefined

Return: CF clear: pass along to V86-mode INT 2C handler

CF set: return immediately to V86 mode

INT 2C 0009


2C 0009 Format of Cloaking caller registers:

Copy to Main

Table 1348

Format of Cloaking caller registers:

Offset	Size	Description

 00h	DWORD	EDI

 04h	DWORD	ESI

 08h	DWORD	EBP

 0Ch	DWORD	reserved (ESP from PUSHAD instruction)

 10h	DWORD	EBX

 14h	DWORD	EDX

 18h	DWORD	ECX

 1Ch	DWORD	EAX

 20h	DWORD	error code

 24h	DWORD	EIP

 28h	WORD	CS

 2Ah	WORD	padding

 2Ch	DWORD	EFLAGS

 30h	DWORD	ESP

 34h	WORD	SS

 36h	WORD	padding

--remainder not available if protected-mode ring3 trap---

 38h	WORD	ES

 3Ah	WORD	padding

 3Ch	WORD	DS

 3Eh	WORD	padding

 40h	WORD	FS

 42h	WORD	padding

 44h	WORD	GS

 46h	WORD	padding

INT 2C 0009


2C 000F Values for Cloaking shell event code:

Copy to Main

Table 1349

Values for Cloaking shell event code:

 0414h	Hot key event

subevent 0000h: Alt-Space

subevent 0001h: Alt-Enter

subevent 0002h: Dir-VM

 0415h	Switch context

subevent 0000h for DOS VM context, nonzero for System VM context

 0416h	Clipboard event

 0417h	Termination event

subevent 0000h for normal termination, nonzero for error

 0418h	Display message

subevent 0000h for normal message, nonzero for system model ASAP

 0419h	Crash

 041Ah	Paste complete

subevent 0000h: normal

subevent 0001h: cancelled by user

subevent 0002h: cancelled

 041Bh	Contention event

 041Ch	Screen switch

subevent 0000h: forward

subevent 0001h: back

 041Dh	Filesystem change

 041Eh	Check Focus

 041Fh	Panic

INT 2C 000F


2C 000F Bitfields for boost value:

Copy to Main

Table 1350

Bitfields for boost value:

Bit(s)	Description

 0	boost system VM until focus changes

 1	boost system VM on Switcher screen

 2	boost system VM until response

 3	boost system VM during clipboard activity

 4	boost system VM during print screen

 5	boost system VM during update

INT 2C 000F


2C 0012 Bitfields for VM status flags:

Copy to Main

Table 1351

Bitfields for VM status flags:

Bit(s)	Description

 0	in exclusive mode

 1	runs in background

 2	being created

 3	suspended

 4	not executable

 5	executing in protected mode

 6	contains PM application

 7	32-bit PM application

 8	called from VxD

 9	high priority background

 10	blocked on semaphore

 11	awakening

 12	has pageable V86

 13	has locked V86

 14	is scheduled

 15	idle

 16	closing

INT 2C 0012


2C 0012 Bitfields for shell flags:

Copy to Main

Table 1352

Bitfields for shell flags:

Bit(s)	Description

 2	windowed

 5	Alt-Tab reserved

 6	Alt-Esc reserved

 7	Alt-Space reserved

 8	Alt-PrtSc reserved

 9	Alt-Enter reserved

 10	Alt-PrtSc reserved

 11	PrtSc reserved

 12	polling enabled

 13	no HMA

 14	has shortcut key

 15	locked EMS handles

 16	locked XMS handles

 17	fast paste enabled

 18	locked V86 memory

 30	close-on-exit enabled

INT 2C 0012


2C 0013 Bitfields for message box flags:

Copy to Main

Table 1353

Bitfields for message box flags:

Bit(s)	Description

 3-0	response codes (see #1354)

 7-4	icon codes

1 = Warning hand

2 = exclamation mark

4 = asterisk

 9-8	default response (0 = first button, 1 = second, 2 = third)

 12	message is system model

 15	don't change focus

 29	hang with interrupts enabled

 30	do not window

 31	execute ASAP

INT 2C 0013


2C 0013 Values for response codes:

Copy to Main

Table 1354

Values for response codes:

 00h	OK

 01h	OK, Cancel

 02h	Abort, Retry, Ignore

 03h	Yes, No, Cancel

 04h	Yes, No

 05h	Retry, Cancel

INT 2C 0013


2C 002D Values Cloaking port-trapping passalong address is called with:

Copy to Main

Table 1355

Values Cloaking port-trapping passalong address is called with:

EAX = CS:IP of faulting instruction (unless executing in protected-mode

ring 3)

SS:EBX -> caller register structure (see #1348)

check EFLAGS V86-mode bit for type

CX = first two bytes of I/O instruction which was trapped

DX = port to which I/O is being performed

CF clear

Return: CF clear if RM386 should perform I/O operation

CF set if I/O should be skipped

Note:	RM386 skips the trapped I/O instruction, so the passalong handler

  should not modify the client CS:EIP

INT 2C 002D


2C 0033 Format of client registration structure:

Copy to Main

Table 1356

Format of client registration structure:

Offset	Size	Description

 00h	PWORD	link to next structure

 06h	PWORD	link to previous structure

 0Ch  2 BYTEs	client version (major, minor)

 0Eh 20 BYTEs	client name

 22h	DWORD	physical address of client start

 26h	DWORD	client's total size in bytes

Note:	the link area should not be modified once the structure has been

  used for the registration call

INT 2C 0033


2D ---- Format of AMIS signature string:

Copy to Main

Table 1357

Format of AMIS signature string:

Offset	Size	Description

 00h  8 BYTEs	blank-padded manufacturer's name (possibly abbreviated)

 08h  8 BYTEs	blank-padded product name

 10h 64 BYTEs	ASCIZ product description (optional, may be a single 00h)

Note:	it is not necessary to reserve a full 64 bytes for the description,

  just enough to store the actual ASCIZ string

SeeAlso: #1364

INT 2D ----


2D ---- Format of AMIS interrupt hook list [array]:

Copy to Main

Table 1358

Format of AMIS interrupt hook list [array]:

Offset	Size	Description

 00h	BYTE	interrupt number (last entry in array is 2Dh)

 01h	WORD	offset within hook list's segment of the interrupt handler

this will point at the initial short jump of the interrupt

  sharing protocol header (see #1363)

INT 2D ----


2D ---- Format of AMIS hotkey list:

Copy to Main

Table 1359

Format of AMIS hotkey list:

Offset	Size	Description

 00h	BYTE	type of hotkey checking (see #1360)

 01h	BYTE	number of hotkeys (may be zero if TSR can disable hotkeys)

 02h 6N BYTEs	array of hotkey definitions

(one per hotkey, first should be primary hotkey)

Offset	Size	Description

 00h	BYTE	hotkey scan code (00h/80h if shift states only)

hotkey triggers on release if bit 7 set

 01h	WORD	required shift states (see #1361)

 03h	WORD	disallowed shift states (see #1361)

 05h	BYTE	hotkey flags (see #1362)

Notes:	except for bit 7, the shift states correspond exactly to the return

  values from INT 16/AH=12h.  A set bit in the required states word

  indicates that the corresponding shift state must be active when the

  hotkey's scan code is received for the hotkey to be recognized; a

  clear bit means that the corresponding state may be ignored.	A set

  bit in the disallowed shift states word indicates that the

  corresponding shift state must be inactive.

for the disallowed-states word, if one of the "either" bits is set,

  then both the corresponding left bit and right bit must be set

examples:

Ctrl-Alt-Del monitoring: 53h 000Ch 0003h 06h

Alt-key tap (DESQview):	 B8h 0000h 0007h 08h

Shf-Shf-N (NOTE.COM):	 31h 0003h 000Ch 00h

Index:	hotkeys;AMIS

INT 2D ----


2D ---- Bitfields for type of AMIS hotkey checking:

Copy to Main

Table 1360

Bitfields for type of AMIS hotkey checking:

Bit(s)	Description

 0	checks before chaining INT 09

 1	checks after chaining INT 09

 2	checks before chaining INT 15/AH=4Fh

 3	checks after chaining INT 15/AH=4Fh

 4	checks on INT 16/AH=00h,01h,02h

 5	checks on INT 16/AH=10h,11h,12h

 6	checks on INT 16/AH=20h,21h,22h

 7	reserved (0)

INT 2D ----


2D ---- Bitfields for AMIS shift states:

Copy to Main

Table 1361

Bitfields for AMIS shift states:

Bit(s)	Description

 0	right shift pressed

 1	left shift pressed

 2	either control key pressed

 3	either Alt key pressed

 4	ScrollLock active

 5	NumLock active

 6	CapsLock active

 7	either shift key pressed

 8	left control key pressed

 9	left Alt key pressed

 10	right control key pressed

 11	right Alt key pressed

 12	ScrollLock pressed

 13	NumLock pressed

 14	CapsLock pressed

 15	SysReq key pressed

Notes:	if bit 2 is set, either control key may be pressed for the hotkey; if

  bits 8 and 10 are both set, then both control keys must be pressed.

  Similarly for bits 3 and 9/11, as well as 7 and 0/1.

the SysReq key is often labeled SysRq

INT 2D ----


2D ---- Bitfields for AMIS hotkey flags:

Copy to Main

Table 1362

Bitfields for AMIS hotkey flags:

Bit(s)	Description

 0	hotkey chained before processing

 1	hotkey chained after processing

 2	others should pass through this hotkey so that it can be monitored

 3	hotkey will not activate if other keys pressed/released before hotkey

  press is completed

 4	this key is remapped into some other key

 5-7	reserved (0)

INT 2D ----


2D ---- Format of interrupt sharing protocol interrupt handler entry point:

Copy to Main

Table 1363

Format of interrupt sharing protocol interrupt handler entry point:

Offset	Size	Description

 00h  2 BYTEs	short jump to actual start of interrupt handler, immediately

  following this data block (EBh 10h)

 02h	DWORD	address of next handler in chain

 06h	WORD	signature 424Bh

 08h	BYTE	EOI flag

00h software interrupt or secondary hardware interrupt handler

80h primary hardware interrupt handler (will issue EOI)

 09h  2 BYTEs	short jump to hardware reset routine

must point at a valid FAR procedure (may be just RETF)

 0Bh  7 BYTEs	reserved (0)

SeeAlso: INT F1"Common ISDN API",#2615

INT 2D ----


2D ---- Values of AMIS signatures known to be in use:

Copy to Main

Table 1364

Values of AMIS signatures known to be in use:

 'Byrial J' 'EKLAVO  '	permits keyboard entry of Esperanto accented letters

 'CoveSoft' 'Burnout+'	shareware screen saver Burnout Plus

 'Crynwr  ' 'SPELLER '	TSR spelling-checker

 'CSJewell' 'Modula3L'	Curtis Jewell's Modula-3 compiler (non-TSR)

 'DAISYCHA' 'INDRIVER'	Advanced Parallel Port daisy chain driver (vendor name

  in product description field, if desired)

(see also INT 2D/AL=DCh)

 'DTown SD' 'DTU     '  DTown Software Development's DTown Utilities

(see also INT 2D/AL=20h)

 'ECLIPSE ' 'PLUMP   '	Eclipse Software's printer and plotter spooler

 'GraySoft' 'GIPC    '	GraySoft's Inter-Process Communications driver

 'heathh  ' 'Monitor '

 'Helge O '	TSRs by Helge Olav Helgesen

 'J. Berry' 'RATSR   '	RemoteAccess Network Manager workstation module

 'JWB	  ' 'RAMLIGHT'	James Birdsall's on-screen RAMdisk activity indicator

 'M Better' 'iHPFS   '	Marcus Better's HPFS filesystem driver for DOS

 'Nildram ' 'ST	     '	Screen Thief graphics screen grabber

 'Pino Nav' 'Keybit  '  Pino Navato's KEYBIT Lite Italian keyboard driver v4+

 'R-Ware  ' 'dLite   '	run-time data decompression TSR

 'Ralf B  ' 'FASTMOUS'	example TSR included with sample AMIS library code

 'Ralf B  ' 'NOLPT n '	example TSR -- turn LPTn into bit-bucket

 'Ralf B  ' 'NOTE    '	example TSR -- popup note-taker

 'Ralf B  ' 'RBkeyswp'	RBkeyswap v3.0+ -- swap Esc/~ and LCtrl/CapsLock keys

 'Ralf B  ' 'SWITCHAR'	example TSR -- add switchar() support removed from DOS5

 'Ralf B  ' 'VGABLANK'	example TSR -- VGA-only screen blanker

 'Sally IS' 'Mdisk   '	removeable, resizeable RAMdisk

 'Sally IS' 'Scr2Tex '	screen dumper with output in (La)Tex format

 'Thaco	  ' 'NEST    '	Eirik Pedersen's programmer's delimiter matcher

 'TifaWARE' 'EATMEM  '	George A. Theall's public domain memory restrictor for

testing programs (v1.1+)

 'TifaWARE' 'RECALL  '	public domain commandline editor and history (v1.2+)

 'Todd	  ' 'XPTR2   '	PC-to-Transputer interface by Todd Radel

SeeAlso: #1357

INT 2D ----


2D --10 Format of dLite parameter block:

Copy to Main

Table 1365

Format of dLite parameter block:

Offset	Size	Description

 00h	BYTE	TSR flags (see #1366)

 01h	WORD	maximum number of programs needing original filesize

 03h	WORD	current number of programs needing original filesize

 05h	WORD	maximum number of files that can be handled by dLite (should

  be the same as FILES= in CONFIG.SYS)

 07h	WORD	offset (in the same segment as the parameter block) of the

  table of programs needing the original filesize (8 bytes

  each,	without path or extension, uppercase, and zero \

  terminated if	shorter than 8 bytes)

INT 2D --10


2D --10 Bitfields for dLite TSR flags:

Copy to Main

Table 1366

Bitfields for dLite TSR flags:

Bit(s)	Description

 0	deny FCB access

 1	dLite sleeping rather than activated

 2	always indicate original filesize when reading directory entries,

  rather than only for specified programs

 3-7	reserved

SeeAlso: #1365

INT 2D --10


2D --10 Bitfields for Burnout Plus status:

Copy to Main

Table 1367

Bitfields for Burnout Plus status:

Bit(s)	Description

 0	screen is blanked

 1	MS Windows is active (Burnout Plus deactivated)

 2-15	reserved

INT 2D --10


2D --10 Bitfields for Burnout Plus features loaded/features enabled:

Copy to Main

Table 1368

Bitfields for Burnout Plus features loaded/features enabled:

Bit(s)	Description

 0	mouse activity monitor

 1	passkey support

 2	password support

 3	continuous clear

 4	software blanking

 5	video activity monitor

 6	disk activity monitor

 7	activating keystroke suppression

SeeAlso: #1369

INT 2D --10


2D --10 Format of Burnout Plus control structure:

Copy to Main

Table 1369

Format of Burnout Plus control structure:

Offset	Size	Description

 00h	BYTE	size of structure in bytes

 01h	WORD	Burnout Plus version

 03h	WORD	screen blanking reset count in clock ticks

 05h	WORD	current countdown value in clock ticks

 07h	BYTE	type of timeout specification

 08h	BYTE	instant-blank hotkey

 09h	WORD	extended status information (see #1370)

the bits for password, passkey, and software blanking are

  ignored and cannot be enabled or disabled externally

 0Bh	WORD	features enabled (see #1368)

Note:	all fields except the first two may be modified by external programs

  to affect the operation of Burnout Plus

Index:	hotkeys;Burnout Plus

INT 2D --10


2D --10 Bitfields for extended Burnout Plus status information:

Copy to Main

Table 1370

Bitfields for extended Burnout Plus status information:

Bit(s)	Description

 0	Burnout Plus disabled

 1	force screen to blank on next clock tick

 2	restore screen if currently blanked

 3-15	reserved

Note:	1 and 2 are automatically cleared by Burnout Plus after blanking

  or restoring the screen

SeeAlso: #1369

INT 2D --10


2E ---- Format of DOS commandline:

Copy to Main

Table 1371

Format of DOS commandline:

Offset	Size	Description

 00h	BYTE	length of command string, not counting trailing CR

 01h	var	command string

  N	BYTE	0Dh (CR)

INT 2E ----


2F ---- Format of POPUP vector table entry:

Copy to Main

Table 1372

Format of POPUP vector table entry:

Offset	Size	Description

 00h	BYTE	vector number (00h = end of table)

 01h	DWORD	original vector

 05h	WORD	offset of interrupt handler in TSR's code segment

INT 2F ----


2F ---- Format of CiriSOFT author_name_ver table:

Copy to Main

Table 1373

Format of CiriSOFT author_name_ver table:

Offset	Size	Description

 -16	WORD	segment of the start of the resident TSR code (CS in programs

  with PSP, XMS upper memory segment if installed as UMB...)

 -14	WORD	offset of the start of the resident TSR code (frequently 100h

  in *.COM programs and 0 in upper memory TSR's).

 -12	WORD	memory used by TSR (in paragraphs). Knowing the memory area

  used by TSR is possible to determine if hooked vectors are

  still pointing it (and if it is safe to uninstall).

 -10	BYTE	characteristics byte (see #1374)

 -9	BYTE	number of multiplex entry used (redefinition available). Note

  that the TSR must use THIS variable in it's INT 2Fh handler.

 -8	WORD	offset to vector_area table (see #1375)

 -6	WORD	offset to extra_area table (see #1376,bit 7 in offset -10)

 -4   4 BYTEs	signature string "*##*"

 00h	var	"AUTHOR:PROGRAM_NAME:VERSION",0	 (variable length, this area

  is used in order to determine if the TSR is already resident

  and it's version code; the ':' char is used as delimiter)

INT 2F ----


2F ---- Bitfields for CiriSOFT characteristics byte:

Copy to Main

Table 1374

Bitfields for CiriSOFT characteristics byte:

Bit(s)	Description

 0-2	type

000 normal program (with PSP)

001 upper XMS memory block (needed HIMEM.SYS function to free memory

      when uninstalling)

010 device driver (*.SYS)

011 device driver in EXE format

1xx others (reserved)

 3-6	reserved

 7	set if extra_table defined and supported (see #1376)

SeeAlso: #1373

INT 2F ----


2F ---- Format of CiriSOFT vector_area table:

Copy to Main

Table 1375

Format of CiriSOFT vector_area table:

Offset	Size	Description

 -1	BYTE	number of vectors intercepted by TSR

 00h	BYTE	first vector number

 01h	DWORD	first vector pointer before installing the TSR

 05h	BYTE	second vector number

 06h	DWORD	second vector pointer before installing the TSR

 0Ah	...	(and so on)

Note:	the TSR must use these variables to invoke the previous interrupt

  handler routines

SeeAlso: #1373

INT 2F ----


2F ---- Format of extra_area table (needed only to improve relocation feature):

Copy to Main

Table 1376

Format of extra_area table (needed only to improve relocation feature):

Offset	Size	Description

 00h	WORD	offset to external_ctrl table (see #1377)

0000h if not supported

 02h	WORD	reserved for future use (0)

SeeAlso: #1373

INT 2F ----


2F ---- Format of CiriSOFT external_ctrl table:

Copy to Main

Table 1377

Format of CiriSOFT external_ctrl table:

Offset	Size	Description

 00h	BYTE	bit 0: TSR is relocatable (no absolute segment references)

 01h	WORD	offset to a variable which can activate/inhibit the TSR

 ---And if bit 0 in offset 00h is off:

 03h	DWORD	pointer to ASCIZ pathname for executable file which supports

  /SR parameter (silent installation & inhibit)

 07h	DWORD	pointer to first variable to initialize on the copy reloaded

  from the previous TSR still resident

 0Bh	DWORD	pointer to last variable (all variables packed in one block)

INT 2F ----


2F 0101 Format of PRINT submit packet:

Copy to Main

Table 1378

Format of PRINT submit packet:

Offset	Size	Description

 00h	BYTE	level (must be 00h)

 01h	DWORD	pointer to ASCIZ filename (no wildcards)

INT 2F 0101


2F 0101 Values for PRINT error code:

Copy to Main

Table 1379

Values for PRINT error code:

 0001h	invalid function

 0002h	file not found

 0003h	path not found

 0004h	out of file handles

 0005h	access denied

 0008h	print queue full

 0009h	spooler busy

 000Ch	name too long

 000Fh	invalid drive

INT 2F 0101


2F 0802 Values for device driver command code:

Copy to Main

Table 1380

Values for device driver command code:

 00h	INIT

 01h	MEDIA CHECK (block devices)

 02h	BUILD BPB (block devices)

 03h	IOCTL INPUT

 04h	INPUT

 05h	NONDESTRUCTIVE INPUT, NO WAIT (character devices)

 06h	INPUT STATUS (character devices)

 07h	INPUT FLUSH (character devices)

 08h	OUTPUT

 09h	OUTPUT WITH VERIFY

 0Ah	OUTPUT STATUS (character devices)

 0Bh	OUTPUT FLUSH (character devices)

 0Ch	IOCTL OUTPUT

 0Dh	(DOS 3.0+) DEVICE OPEN

 0Eh	(DOS 3.0+) DEVICE CLOSE

 0Fh	(DOS 3.0+) REMOVABLE MEDIA (block devices)

 10h	(DOS 3.0+) OUTPUT UNTIL BUSY (character devices)

 11h	(European MS-DOS 4.0) STOP OUTPUT (console screen drivers only)

 12h	(European MS-DOS 4.0) RESTART OUTPUT (console screen drivers only)

 13h	(DOS 3.2+) GENERIC IOCTL

 14h	unused

 15h	(European MS-DOS 4.0) RESET UNCERTAIN MEDIA FLAG

 16h	unused

 17h	(DOS 3.2+) GET LOGICAL DEVICE

 18h	(DOS 3.2+) SET LOGICAL DEVICE

 19h	(DOS 5.0+) CHECK GENERIC IOCTL SUPPORT

 80h	(CD-ROM) READ LONG

 81h	(CD-ROM) reserved

 82h	(CD-ROM) READ LONG PREFETCH

 83h	(CD-ROM) SEEK

 84h	(CD-ROM) PLAY AUDIO

 85h	(CD-ROM) STOP AUDIO

 86h	(CD-ROM) WRITE LONG

 87h	(CD-ROM) WRITE LONG VERIFY

 88h	(CD-ROM) RESUME AUDIO

INT 2F 0802


2F 0802 Bitfields for device request status:

Copy to Main

Table 1381

Bitfields for device request status:

Bit(s)	Description

 15	error

 14-11	reserved

 10	??? set by DOS kernel on entry to some driver calls

 9	busy

 8	done (may be clear on return under European MS-DOS 4.0)

 7-0	error code if bit 15 set (see #1383)

INT 2F 0802


2F 0802 Format of device driver request header:

Copy to Main

Table 1382

Format of device driver request header:

Offset	Size	Description

 00h	BYTE	length of request header

 01h	BYTE	subunit within device driver

 02h	BYTE	command code (see #1380)

 03h	WORD	status (filled in by device driver) (see #1381)

---DOS---

 05h  4 BYTEs	reserved (unused in DOS 2.x and 3.x)

 09h	DWORD	(European MS-DOS 4.0 only) pointer to next request header in

  device's request queue

(other versions) reserved (unused in DOS 2.x and 3.x)

---STARLITE architecture---

 05h	DWORD	pointer to next request header

 09h  4 BYTEs	reserved

---command code 00h---

 0Dh	BYTE	(ret) number of units

 0Eh	DWORD	(call) pointer to DOS device helper function (see #1384)

  (European MS-DOS 4.0 only)

(call) pointer past end of memory available to driver (DOS 5+)

(ret) address of first free byte following driver

 12h	DWORD	(call) pointer to commandline arguments

(ret) pointer to BPB array (block drivers) or

  0000h:0000h (character drivers)

 16h	BYTE	(DOS 3.0+) drive number for first unit of block driver (0=A)

   ---European MS-DOS 4.0---

 17h	DWORD	pointer to function to save registers on stack

   ---DOS 5+ ---

 17h	WORD	(ret) error-message flag

0001h MS-DOS should display error msg on init failure

---command code 01h---

 0Dh	BYTE	media descriptor

 0Eh	BYTE	(ret) media status

00h don't know

01h media has not changed

FFh media has been changed

 0Fh	DWORD	(ret, DOS 3.0+) pointer to previous volume ID if the

  OPEN/CLOSE/RM bit in device header is set and disk changed

---command code 02h---

 0Dh	BYTE	media descriptor

 0Eh	DWORD	transfer address

-> scratch sector if NON-IBM FORMAT bit in device header set

-> first FAT sector otherwise

 12h	DWORD	pointer to BPB (set by driver) (see #0875 at INT 21/AH=53h)

---command codes 03h,0Ch--- (see also INT 21/AX=4402h,INT 21/AX=4403h)

 0Dh	BYTE	media descriptor (block devices only)

 0Eh	DWORD	transfer address

 12h	WORD	(call) number of bytes to read/write

(ret) actual number of bytes read or written

---command codes 04h,08h,09h (except Compaq DOS 3.31, DR-DOS 6)---

 0Dh	BYTE	media descriptor (block devices only)

 0Eh	DWORD	transfer address

 12h	WORD	byte count (character devices) or sector count (block devices)

 14h	WORD	starting sector number (block devices only)

 16h	DWORD	(DOS 3.0+) pointer to volume ID if error 0Fh returned

 1Ah	DWORD	(DOS 4.0+) 32-bit starting sector number (block devices with

  device attribute word bit 1 set only) if starting sector

  number above is FFFFh (see INT 21/AH=52h)

---command codes 04h,08h,09h (Compaq DOS 3.31, DR-DOS 6)---

 0Dh	BYTE	media descriptor (block devices only)

 0Eh	DWORD	transfer address

 12h	WORD	byte count (character devices) or sector count (block devices)

 14h	DWORD	32-bit starting sector number (block devices only)

Note:	to reliably determine which variant of the request block for

  functions 04h,08h,09h has been passed to the driver, check

  the length field as well as the word at offset 14h.  If the

  length is 1Eh and 14h=FFFFh, use the DWORD at 1Ah as the

  starting sector number; if the length is 18h, use the DWORD

  at 14h; otherwise, use the WORD at 14h.

---command code 05h---

 0Dh	BYTE	byte read from device if BUSY bit clear on return

---command codes 06h,07h,0Ah,0Bh,0Dh,0Eh,0Fh---

 no further fields

---command code 10h---

 0Dh	BYTE	unused

 0Eh	DWORD	transfer address

 12h	WORD	(call) number of bytes to write

(ret) actual number of bytes written

---command codes 11h,12h---

 0Dh	BYTE	reserved

---command code 15h---

 no further fields

---command codes 13h,19h---

 0Dh	BYTE	category code

00h unknown

01h COMn:

03h CON

05h LPTn:

07h mouse (European MS-DOS 4.0)

08h disk

9Eh (STARLITE) Media Access Control driver

 0Eh	BYTE	function code

00h (STARLITE) MAC Bind request

 0Fh	WORD	copy of DS at time of IOCTL call (apparently unused in DOS 3.3)

SI contents (European MS-DOS 4.0)

 11h	WORD	offset of device driver header

DI contents (European MS-DOS 4.0)

 13h	DWORD	pointer to parameter block from INT 21/AX=440Ch or AX=440Dh

---command codes 80h,82h---

 0Dh	BYTE	addressing mode

00h HSG (default)

01h Phillips/Sony Red Book

 0Eh	DWORD	transfer address (ignored for command 82h)

 12h	WORD	number of sectors to read

(if 0 for command 82h, request is an advisory seek)

 14h	DWORD	starting sector number

logical sector number in HSG mode

frame/second/minute/unused in Red Book mode

(HSG sector = minute * 4500 + second * 75 + frame - 150)

 18h	BYTE	data read mode

00h cooked (2048 bytes per frame)

01h raw (2352 bytes per frame, including EDC/ECC)

 19h	BYTE	interleave size (number of sectors stored consecutively)

 1Ah	BYTE	interleave skip factor

(number of sectors between consecutive portions)

---command code 83h---

 0Dh	BYTE	addressing mode (see above)

 0Eh	DWORD	transfer address (ignored)

 12h	WORD	number of sectors to read (ignored)

 14h	DWORD	starting sector number (see also above)

---command code 84h---

 0Dh	BYTE	addressing mode (see above)

 0Eh	DWORD	starting sector number (see also above)

 12h	DWORD	number of sectors to play

---command codes 85h,88h---

 no further fields

---command codes 86h,87h---

 0Dh	BYTE	addressing mode (see above)

 0Eh	DWORD	transfer address (ignored in write mode 0)

 12h	WORD	number of sectors to write

 14h	DWORD	starting sector number (see also above)

 18h	BYTE	write mode

00h mode 0 (write all zeros)

01h mode 1 (default) (2048 bytes per sector)

02h mode 2 form 1 (2048 bytes per sector)

03h mode 2 form 2 (2336 bytes per sector)

 19h	BYTE	interleave size (number of sectors stored consecutively)

 1Ah	BYTE	interleave skip factor

(number of sectors between consecutive portions)

INT 2F 0802


2F 0802 Values for device driver error code:

Copy to Main

Table 1383

Values for device driver error code:

 00h	write-protect violation

 01h	unknown unit

 02h	drive not ready

 03h	unknown command

 04h	CRC error

 05h	bad drive request structure length

 06h	seek error

 07h	unknown media

 08h	sector not found

 09h	printer out of paper

 0Ah	write fault

 0Bh	read fault

 0Ch	general failure

 0Dh	reserved

 0Eh	(CD-ROM) media unavailable

 0Fh	invalid disk change

INT 2F 0802


2F 0802 Call European MS-DOS 4.0 device helper function with:

Copy to Main

Table 1384

Call European MS-DOS 4.0 device helper function with:

DL = function

    00h "SchedClock" called on each timer tick

AL = tick interval in milliseconds

    01h "DevDone" device I/O complete

ES:BX -> request header

Note:	must update status word first; may be called from

  an interrupt handler

    02h "PullRequest" pull next request from queue

DS:SI -> DWORD pointer to start of device's request queue

Return: ZF clear if pending request

    ES:BX -> request header

ZF set if no more requests

    03h "PullParticular" remove specific request from queue

DS:SI -> DWORD pointer to start of device's request queue

ES:BX -> request header

Return: ZF set if request header not found

    04h "PushRequest" push the request onto the queue

DS:SI -> DWORD pointer to start of device's request queue

ES:BX -> request header

interrupts disabled

    05h "ConsInputFilter" keyboard input check

AX = character (high byte 00h if PC ASCII character)

Return: ZF set if character should be discarded

ZF clear if character should be handled normally

Note:	called by keyboard interrupt handler so DOS can scan

  for special input characters

    06h "SortRequest" push request in sorted order by starting sector

DS:SI -> DWORD pointer to start of device's request queue

ES:BX -> request header

interrupts disabled

    07h "SigEvent" send signal on keyboard event

AH = event identifier

Return: AL,FLAGS destroyed

    09h "ProcBlock" block on event

AX:BX = event identifier (typically a pointer)

CX = timeout in ms or 0000h for never

DH = interruptable flag (nonzero if pause may be interrupted)

interrupts disabled

Return: after corresponding ProcRun call

CF clear if event wakeup, set if unusual wakeup

ZF set if timeout wakeup, clear if interrupted

AL = wakeup code, nonzero if unusual wakeup

interrupts enabled

BX,CX,DX destroyed

Note:	block process and schedules another to run

    0Ah "ProcRun" unblock process

AX:BX = event identifier (typically a pointer)

Return: AX = number of processes awakened

ZF set if no processes awakened

BX,CX,DX destroyed

    0Bh "QueueInit" initialize/clear character queue

DS:BX -> character queue structure (see #1385)

Note:	the queue size field must be set before calling

    0Dh "QueueWrite" put a character in the queue

DS:BX -> character queue (see #1385)

AL = character to append to end of queue

Return: ZF set if queue is full

ZF clear if character stored

    0Eh "QueueRead" get a character from the queue

DS:BX -> character queue (see #1385)

Return: ZF set if queue is empty

ZF clear if characters in queue

    AL = first character in queue

    10h "GetDOSVar" return pointer to DOS variable

AL = index of variable

    03h current process ID

BX = index into variable if AL specifies an array

CX = expected length of variable

Return: CF clear if successful

    DX:AX -> variable

CF set on error

    AX,DX destroyed

BX,CX destroyed

Note:	the variables may not be modified

    14h "Yield" yield CPU if higher-priority task ready to run

Return: FLAGS destroyed

    1Bh "CritEnter" begin system critical section

DS:BX -> semaphore (6 BYTEs, initialized to zero)

Return: AX,BX,CX,DX destroyed

    1Ch "CritLeave" end system critical section

DS:BX -> semaphore (6 BYTEs, initialized to zero)

Return: AX,BX,CX,DX destroyed

Note:	must be called in the context of the process which

  called CritEnter on the semaphore

Note:	the DWORD pointing at the request queue must be allocated by the driver

  and initialized to 0000h:0000h.  It always points at the next request

  to be executed

INT 2F 0802


2F 0802 Format of European MS-DOS 4.0 character queue:

Copy to Main

Table 1385

Format of European MS-DOS 4.0 character queue:

Offset	Size	Description

 00h	WORD	size of queue in bytes

 02h	WORD	index of next character out

 04h	WORD	count of characters in the queue

 06h  N BYTEs	queue buffer

INT 2F 0802


2F 0803 Format of DOS 3.30 drive data table:

Copy to Main

Table 1386

Format of DOS 3.30 drive data table:

Offset	Size	Description

 00h	DWORD	pointer to next table (offset FFFFh if last table)

 04h	BYTE	physical unit number (for INT 13)

 05h	BYTE	logical drive number (0=A:)

 06h 19 BYTEs	BIOS Parameter Block (see also INT 21/AH=53h)

Offset	Size	Description

 00h	WORD	bytes per sector

 02h	BYTE	sectors per cluster, FFh if unknown

 03h	WORD	number of reserved sectors

 05h	BYTE	number of FATs

 06h	WORD	number of root dir entries

 08h	WORD	total sectors

 0Ah	BYTE	media descriptor, 00h if unknown

 0Bh	WORD	sectors per FAT

 0Dh	WORD	sectors per track

 0Fh	WORD	number of heads

 11h	WORD	number of hidden sectors

 19h	BYTE	flags

bit 6: 16-bit FAT instead of 12-bit FAT

 1Ah	WORD	number of DEVICE OPEN calls without corresponding DEVICE CLOSE

 1Ch 11 BYTEs	volume label or "NO NAME    " if none (always "NO NAME" for

  fixed media)

 27h	BYTE	terminating null for volume label???

 28h	BYTE	device type (see #0781 at INT 21/AX=440Dh)

 29h	WORD	bit flags describing drive (see #1389)

 2Bh	WORD	number of cylinders

 2Dh 19 BYTEs	BIOS Parameter Block for highest capacity supported

 40h  3 BYTEs	???

 43h  9 BYTEs	filesystem type???, default = "NO NAME	"

(apparently only MS-DOS 3.30 fixed media, nulls for removable

  media and PC-DOS 3.30)

 4Ch	BYTE	least-significant byte of last-accessed cylinder number

---removable media---

 4Dh	DWORD	time of last access in clock ticks (FFFFFFFFh if never)

---fixed media---

 4Dh	WORD	partition (FFFFh = primary, 0001h = extended)

 4Fh	WORD	absolute cylinder number of partition's start on physical

  drive (always FFFFh if primary partition)

SeeAlso: #1387,#1388

INT 2F 0803


2F 0803 Format of COMPAQ DOS 3.31 drive data table:

Copy to Main

Table 1387

Format of COMPAQ DOS 3.31 drive data table:

Offset	Size	Description

 00h	DWORD	pointer to next table (offset FFFFh if last table)

 04h	BYTE	physical unit number (for INT 13)

 05h	BYTE	logical drive number (0=A:)

 06h 25 BYTEs	BIOS Parameter Block (see DOS 4.0-6.0 drive data table below)

 1Fh  6 BYTEs	reserved fields from BPB above???

 25h	BYTE	flags

bit 6: 16-bit FAT instead of 12-bit FAT

bit 5: large volume???

 26h	WORD	device-open count???

 28h 11 BYTEs	volume label or "NO NAME    " if none (always "NO NAME" for

  fixed media)

 33h	BYTE	terminating null for volume label

 34h	BYTE	device type (see #0781 at INT 21/AX=440Dh)

 35h	WORD	bit flags describing drive (see #1389)

 37h	WORD	number of cylinders

 39h 25 BYTEs	BIOS parameter block for highest capacity drive supports

 52h  6 BYTEs	??? apparently always zeros

 58h	BYTE	least-significant byte of last-accessed cylinder number

---removable media---

 59h	DWORD	time of last access in clock ticks (FFFFFFFFh if never)

---fixed media---

 59h	WORD	partition (FFFFh = primary, 0001h = extended)

 5Bh	WORD	absolute cylinder number of partition's start on physical

  drive (always FFFFh if primary partition)

SeeAlso: #1386,#1388

INT 2F 0803


2F 0803 Format of DOS 4.0-6.0 drive data table:

Copy to Main

Table 1388

Format of DOS 4.0-6.0 drive data table:

Offset	Size	Description

 00h	DWORD	pointer to next table (offset FFFFh if last table)

 04h	BYTE	physical unit number (for INT 13)

 05h	BYTE	logical drive number (0=A:)

 06h 25 BYTEs	BIOS Parameter Block (see also INT 21/AH=53h)

Offset	Size	Description

 00h	WORD	bytes per sector

 02h	BYTE	sectors per cluster, FFh if unknown

 03h	WORD	number of reserved sectors

 05h	BYTE	number of FATs

 06h	WORD	number of root dir entries

 08h	WORD	total sectors (see offset 15h if zero)

 0Ah	BYTE	media descriptor, 00h if unknown

 0Bh	WORD	sectors per FAT

 0Dh	WORD	sectors per track

 0Fh	WORD	number of heads

 11h	DWORD	number of hidden sectors

 15h	DWORD	total sectors if WORD at 08h is zero

 1Fh	BYTE	flags

bit 6: 16-bit FAT instead of 12-bit

bit 7: unsupportable disk (all accesses will return Not Ready)

 20h	WORD	device-open count

 22h	BYTE	device type (see #0781 at INT 21/AX=440Dh)

 23h	WORD	bit flags describing drive (see #1389)

 25h	WORD	number of cylinders (for partition only, if hard disk)

 27h 25 BYTEs	BIOS Parameter Block for default (highest) capacity supported

 40h  6 BYTEs	reserved (part of BPB above)

 46h	BYTE	last track accessed

---removable media---

 47h	DWORD	time of last access in clock ticks (FFFFFFFFh if never)

---fixed media---

 47h	WORD	partition (FFFFh = primary, 0001h = extended)

always 0001h for DOS 5+

 49h	WORD	absolute cylinder number of partition's start on physical drive

(FFFFh if primary partition in DOS 4.x)

------

 4Bh 11 BYTEs	volume label or "NO NAME    " if none (apparently taken from

  extended boot record rather than root directory)

 56h	BYTE	terminating null for volume label

 57h	DWORD	serial number

 5Bh  8 BYTEs	filesystem type ("FAT12	  " or "FAT16	")

 63h	BYTE	terminating null for filesystem type

SeeAlso: #1386,#1387

INT 2F 0803


2F 0803 Bitfields for flags describing drive:

Copy to Main

Table 1389

Bitfields for flags describing drive:

Bit(s)	Description

 0	fixed media

 1	door lock ("changeline") supported

 2	current BPB locked

 3	all sectors in a track are the same size

 4	physical drive has multiple logical units

 5	current logical drive for shared physical drive

 6	disk change detected

 7	device parameters were changed (set DASD before formatting)

(see #0780 at INT 21/AX=440Dh)

 8	disk reformatted (BPB of current media was changed)

 9	access flag (fixed media only, disables reads and writes)

(see #0786 at INT 21/AX=440Dh)

INT 2F 0803


2F 10FE Call DELWATCH private entry point with:

Copy to Main

Table 1390

Call DELWATCH private entry point with:

AH = function

    00h NOP???

Return: AX = 0000h

CX = 0004h (unsupported function)

    01h disable DELWATCH on drive

AL = drive number (00h = A:)

Return: AX = status (0000h if failed, FFFFh if successful)

    02h ???

AL = drive number (00h = A:)

???

Return: ???

    03h	???

AL = drive number (00h = A:)

CX = ??? (0000h/0001h)

???

Return: ???

    04h ???

AL = drive number (00h = A:)

???

Return: ???

    05h ???

AL = drive number (00h = A:)

???

Return: ???

    06h enable DELWATCH on drive

AL = drive number with bit 7 set (80h = A:, etc.)

BX = maximum files of same name in one directory to save

CX = maximum files to save on this disk

???

Return: AX = status

    0000h failed

    FFFFh successful

CX = error code on failure

    (0004h if AL < 80h on entry)

    07h ???

    08h set file extensions list

AL = sense (00h exclude named extensions, 01h only named ext.)

DS:BX -> 31-byte ASCIZ extension list (three blank-padded bytes

  per extension)

Return: AX = FFFFh (successful)

    09h	???

AL = drive number (00h = A:)

???

Return: ???

    0Ah ???

AL = drive number (00h = A:)

???

Return: ???

    0Bh reset ???

Return: AX = FFFFh (successful)

see also function 0Dh

    0Ch check if drive enabled

AL = drive number with bit 7 set (80h = A:, etc.)

Return: AX = state

    0000h disabled or error (check CX)

    0001h drive enabled

CX = error code (0004h invalid drive number)

    0Dh set ???

BX = ???

Return: AX = FFFFh (successful)

see also function 0Bh

    0Eh ???

AL = drive number (00h = A:)

???

Return: ???

Return: AX = 0000h, CX = 0001h if DELWATCH busy

registers unchanged if AH >= 0Fh on entry

INT 2F 10FE


2F 110A Format of parameter block entry [array, but currently limited to single entry]:

Copy to Main

Table 1391

Format of parameter block entry [array, but currently limited to single entry]:

Offset	Size	Description

 00h	DWORD	start offset

 04h	DWORD	size of region

INT 2F 110A


2F 1186 Format of LAN Manager DosReadAsynchNmPipe stack frame:

Copy to Main

Table 1392

Format of LAN Manager DosReadAsynchNmPipe stack frame:

Offset	Size	Description

 00h	DWORD	-> number of bytes read

 04h	WORD	size of buffer

 06h	DWORD	-> buffer

 0Ah	DWORD	-> return code

 0Eh	DWORD	function to call on completion as function( char far *buffer )

 12h	WORD	handle

INT 2F 1186


2F 118F Format of LAN Manager DosReadAsynchNmPipe stack frame:

Copy to Main

Table 1393

Format of LAN Manager DosReadAsynchNmPipe stack frame:

Offset	Size	Description

 00h	DWORD	-> number of bytes read

 04h	WORD	Size of buffer

 06h	DWORD	-> buffer

 0Ah	DWORD	-> return code

 0Eh	DWORD	function to call on completion as function( char far *buffer )

 12h	WORD	handle

INT 2F 118F


2F 1190 Format of LAN Manager DosReadAsynchNmPipe2 stack frame:

Copy to Main

Table 1394

Format of LAN Manager DosReadAsynchNmPipe2 stack frame:

Offset	Size	Description

 00h	DWORD	-> number of bytes read

 04h	WORD	size of buffer

 06h	DWORD	-> buffer

 0Ah	DWORD	-> return code

 0Eh	DWORD	function to call on completion as function( char far *buffer )

 12h	WORD	handle

 14h	DWORD	???

INT 2F 1190


2F 1191 Format of LAN Manager DosReadAsynchNmPipe2 stack frame:

Copy to Main

Table 1395

Format of LAN Manager DosReadAsynchNmPipe2 stack frame:

Offset	Size	Description

 00h	DWORD	-> number of bytes read

 04h	WORD	size of buffer

 06h	DWORD	-> buffer

 0Ah	DWORD	-> return code

 0Eh	DWORD	function to call on completion as function( char far *buffer )

 12h	WORD	handle

 14h	DWORD	???

INT 2F 1191


2F 122A Values DOS 3.30+ FASTOPEN entry point is called with:

Copy to Main

Table 1396

Values DOS 3.30+ FASTOPEN entry point is called with:

AL = 01h  Lookup

    CX = ??? seems to be offset

    DI = ??? seems to be offset

    SI = offset in DOS DS of filename

AL = 02h  insert file into FASTOPEN cache

AL = 03h  delete file from FASTOPEN cache

    SI = offset in DOS DS of filename

AL = 04h  purge FASTOPEN cache

    AH = subfunction (00h,01h,02h)

    ES:DI -> ???

    CX = ??? (subfunctions 01h and 02h only)

Returns: CF set on error or not installed

Note: function 03h calls function 01h first

SeeAlso: #1397,#1398

INT 2F 122A


2F 122A Values PC-DOS 4.01 FASTOPEN is additionally called with:

Copy to Main

Table 1397

Values PC-DOS 4.01 FASTOPEN is additionally called with:

AL = 04h ???

    AH = 03h

    ???

AL = 05h ???

AL = 0Bh ???

AL = 0Ch ???

AL = 0Dh ???

AL = 0Eh ???

AL = 0Fh ???

AL = 10h ???

SeeAlso: #1396,#1398

INT 2F 122A


2F 122A Values MS-DOS 5.0-6.0 FASTOPEN is additionally called with:

Copy to Main

Table 1398

Values MS-DOS 5.0-6.0 FASTOPEN is additionally called with:

AL = 04h  purge FASTOPEN cache

    AH = 03h

    ???

AL = 05h ???

    DL = drive (00h = A:)

    ???

AL = 06h ???

    ???

SeeAlso: #1396,#1397

INT 2F 122A


2F 122E Format of DOS 4.x error table:

Copy to Main

Table 1399

Format of DOS 4.x error table:

Offset	Size	Description

 00h	BYTE	FFh

 01h  2 BYTEs	04h,00h (DOS version???)

 03h	BYTE	number of error headers following

 04h 2N WORDs	table of all error headers for table

Offset	Size	Description

 00h	WORD	error message number

 02h	WORD	offset of error message from start of header

error messages are count byte followed by msg

Note:	DOS 5 error tables consist of one word per error number; each word

  contains either the offset of a counted string or 0000h

INT 2F 122E


2F 122E Call error retrieval function with:

Copy to Main

Table 1400

Call error retrieval function with:

AX = error number (see #1401)

DI = offset of error table

Return: ES:DI -> error message (counted string)

Notes:	this function needs to access COMMAND.COM if the messages were not

  loaded into memory permanently with /MSG; the caller should assume

  that the returned message will be overwritten by the next call of

  the function

supported by DR-DOS 5.0

INT 2F 122E


2F 122E Values for parameter errors:

Copy to Main

Table 1401

Values for parameter errors:

 01h	Too many parameters

 02h	Required Parameter missing

 03h	Invalid switch

 04h	Invalid keyword

 06h	Parameter value not in allowed range

 07h	Parameter value not allowed

 08h	Parameter value not allowed

 09h	Parameter format not correct

 0Ah	Invalid parameter

 0Bh	Invalid parameter combination

INT 2F 122E


2F 12FF Call Novell EMM386.EXE entry point with:

Copy to Main

Table 1402

Call Novell EMM386.EXE entry point with:

AH = 00h get memory manager's status???

    ???

AH = 01h set memory manager's status???

    ???

AH = 02h Weitek coprocessor support???

    AL = subfunction???

more functions???

SeeAlso: #0733 at INT 21/AX=4402h/SF=02h,#2271 at INT 67/AX=FFA5h

INT 2F 12FF


2F 1401 Format of DOS 3.30 internal code page structure:

Copy to Main

Table 1403

Format of DOS 3.30 internal code page structure:

Offset	Size	Description

 00h  8 BYTEs	???

 08h 64 BYTEs	name of country information file

 48h	WORD	system code page

 4Ah	WORD	number of supported subfunctions

 4Ch  5 BYTEs	data to return for INT 21/AX=6502h

 51h  5 BYTEs	data to return for INT 21/AX=6504h

 56h  5 BYTEs	data to return for INT 21/AX=6505h

 5Bh  5 BYTEs	data to return for INT 21/AX=6506h

 60h 41 BYTEs	data to return for INT 21/AX=6501h

INT 2F 1401


2F 1402 Values for POPUP error code:

Copy to Main

Table 1404

Values for POPUP error code:

 0001h	process does not own screen

 0004h	unknown error

 0005h	invalid pointer

INT 2F 1402


2F 14FE Format of DR-DOS COUNTRY.SYS file:

Copy to Main

Table 1405

Format of DR-DOS COUNTRY.SYS file:

Offset	Size	Description

 00h 126 BYTEs	copyright notice (terminated with Ctrl-Z, padded with NULs)

 7Eh	WORD	signature EDC1h

 80h	var	country pointer records

Offset	Size	Description

 00h	WORD	country code (0000h if end of array)

 02h	WORD	code page

 04h	WORD	??? (0000h)

 06h  7 WORDs	offsets in file for data tables for subfunctions

  01h-07h

 var	var	country information

INT 2F 14FE


2F 1500 Format of CDBLITZ statistics record:

Copy to Main

Table 1406

Format of CDBLITZ statistics record:

Offset	Size	Description

 00h	WORD	cache mode (see also AX=1500h/CH=94h)

0001h 'min', 0002h 'max'

 02h	DWORD	number of read calls???

 06h	DWORD	total number of sectors read

 0Ah	DWORD	unused??? (zero)

 0Eh	DWORD	number of cache hit sectors

 12h	WORD	cache size in KB

 14h	WORD	unused??? (zero)

 16h	WORD	cache state (0000h disabled, 0001h enabled)

INT 2F 1500


2F 150F Format of CD-ROM directory entry (direct copy):

Copy to Main

Table 1407

Format of CD-ROM directory entry (direct copy):

Offset	Size	Description

 00h	BYTE  length of directory entry

 01h	BYTE  length of XAR in Logical Block Numbers

 02h	DWORD LBN of data, Intel (little-endian) format

 06h	DWORD LBN of data, Motorola (big-endian) format

 0Ah	DWORD length of file, Intel format

 0Eh	DWORD length of file, Motorola format

---High Sierra---

 12h  6 BYTEs date and time

 18h	BYTE  bit flags

 19h	BYTE  reserved

---ISO 9660---

 12h  7 BYTEs date and time

 19h	BYTE  bit flags

---both formats---

 1Ah	BYTE  interleave size

 1Bh	BYTE  interleave skip factor

 1Ch	WORD  volume set sequence number, Intel format

 1Eh	WORD  volume set sequence number, Motorola format

 20h	BYTE  length of file name

 21h  N BYTEs file name

BYTE (optional) padding if filename is odd length

      N BYTEs system data

SeeAlso: #1408

INT 2F 150F


2F 150F Format of CD-ROM directory entry (canonicalized):

Copy to Main

Table 1408

Format of CD-ROM directory entry (canonicalized):

Offset	Size	Description

 00h	BYTE	length of XAR in Logical Block Numbers

 01h	DWORD	Logical Block Number of file start

 05h	WORD	size of disk in logical blocks

 07h	DWORD	file length in bytes

 0Bh  7 BYTEs	date and time

 12h	BYTE	bit flags

 13h	BYTE	interleave size

 14h	BYTE	interleave skip factor

 15h	WORD	volume set sequence number

 17h	BYTE	length of file name

 18h 38 BYTEs	ASCIZ filename

 3Eh	WORD	file version number

 40h	BYTE	number of bytes of system use data

 41h 220 BYTEs	system use data

SeeAlso: #1407

INT 2F 150F


2F 1603 Format of Windows/386 instance data:

Copy to Main

Table 1409

Format of Windows/386 instance data:

Offset	Size	Description

 00h	WORD	segment of IO.SYS (0000h = default 0070h)

 02h	WORD	offset in IO.SYS of STACKS data structure (DOS 3.2x)

0000h if not applicable

 04h	WORD	number of instance data entries (max 32)

 06h	Array of instance data entries

Offset	Size	Description

 00h	WORD	segment (0002h = DOS kernel)

 02h	WORD	offset

 04h	WORD	size

INT 2F 1603


2F 1605 Format of Windows Startup Information Structure:

Copy to Main

Table 1410

Format of Windows Startup Information Structure:

Offset	Size	Description

 00h  2 BYTEs	major, minor version of info structure

 02h	DWORD	pointer to next startup info structure or 0000h:0000h

 06h	DWORD	pointer to ASCIZ name of virtual device file or 0000h:0000h

 0Ah	DWORD	virtual device reference data (see #1412)

(only used if above nonzero)

 0Eh	DWORD	pointer to instance data records (see #1411) or 0000h:0000h

INT 2F 1605


2F 1605 Format of one Instance Item in array:

Copy to Main

Table 1411

Format of one Instance Item in array:

Offset	Size	Description

 00h	DWORD	address of instance data (end of array if 0000h:0000h)

 04h	WORD	size of instance data

INT 2F 1605


2F 1605 Format of Virtual Device Reference Data:

Copy to Main

Table 1412

Format of Virtual Device Reference Data:

Offset	Size	Description

 00h	DWORD	physical address of ??? or 00000000h

 04h	DWORD	physical address of ??? table

 08h	DWORD	"DEST_PAGE" address to which pages must be mapped

 0Ch  N DWORDs	"SRC_PAGE" physical addresses of the pages

00000000h = end of table

Note:	EMM386.EXE sets the first pointer to the start of the device driver

  chain, the second pointer to a field of 40h bytes followed by a

  16-bit offset to the end of the SRC_PAGE table, and DEST_PAGE to

  the start segment of the UMB area

INT 2F 1605


2F 1605 Values Windows virtual mode enable/disable procedure is called with:

Copy to Main

Table 1413

Values Windows virtual mode enable/disable procedure is called with:

AX = 0000h disable V86 mode

AX = 0001h enable V86 mode

interrupts disabled

Return: CF set on error

CF clear if successful

interrupts disabled

INT 2F 1605


2F 1607 Values for VNETBIOS action code:

Copy to Main

Table 1414

Values for VNETBIOS action code:

 00h	"VN_Unknown" unknown command

 04h	"VN_No_Map"  no memory mapping necessary

 08h	"VN_Map_In"  input buffer is quickly used, so no global mapping needed

 0Ch	"VN_Map_In"  output buffer is quickly used, so no global mapping needed

 10h	"VN_Map_In_Out"	 buffer is quickly used, so no global mapping needed

 14h	"VN_Chain_Send"	 the chain-send command

 18h	"VN_Cancel"	special case for cancel command

 1Ch	"VN_Buffer_In"	buffer is incoming

 20h	"VN_Buffer_Out" buffer is outgoing

 24h	"VN_Buffer_In_Out" buffer used for both incoming and outgoing data

INT 2F 1607


2F 1607 Bitfields for DOSMGR patch requests:

Copy to Main

Table 1415

Bitfields for DOSMGR patch requests:

Bit(s)	Description

 0	enable critical sections

 1	NOP setting/checking user ID

 2	turn INT 21/AH=3Fh on STDIN into polling loop

 3	trap stack fault in "SYSINIT" to WIN386

 4	BIOS patch to trap "Insert disk X:" to WIN386

INT 2F 1607


2F 1607 Format of DOSMGR patch table:

Copy to Main

Table 1416

Format of DOSMGR patch table:

Offset	Size	Description

 00h  2 BYTEs	DOS version (major, minor)

 02h	WORD	offset in DOS data segment of "SAVEDS"

 04h	WORD	offset in DOS data segment of "SAVEBX"

 06h	WORD	offset in DOS data segment of InDOS flag

 08h	WORD	offset in DOS data segment of User ID word

 0Ah	WORD	offset in DOS data segment of "CritPatch" table to enable

  critical section calls (see INT 2A/AH=80h)

 0Ch	WORD	(DOS 5+ only) offset in DOS data segment of "UMB_HEAD",

  containing segment of last MCB in conventional memory

INT 2F 1607


2F 160B Format of TSR-to-Windows communication structure:

Copy to Main

Table 1417

Format of TSR-to-Windows communication structure:

Offset	Size	Description

 00h	DWORD	pointer to next structure

 04h	WORD	PSP segment

 06h	WORD	API version ID (0100h)

 08h	WORD	EXEC flags

bit 0: "WINEXEC"

bit 1: "LOADLIBRARY"

bit 2: "OPENDRIVER"

 0Ah	WORD	"exec_cmd_show"

 0Ch	DWORD	"exec_cmd"

 10h  4 BYTEs	reserved (0)

 14h	DWORD	pointer to TSR ID block (see #1418)

 18h	DWORD	pointer to TSR data block or 0000h:0000h

INT 2F 160B


2F 160B Format of Norton Utilities 6.0 TSR ID block:

Copy to Main

Table 1418

Format of Norton Utilities 6.0 TSR ID block:

Offset	Size	Description

 00h	WORD	length of name string

 02h  N BYTEs	name of TSR's executable

INT 2F 160B


2F 1684 Values for MS Windows VxD ID:

Copy to Main

Table 1419

Values for MS Windows VxD ID:

Value	Name   CallOut V86 PM	Description

 0000h	LPT	    N	N  N	DOS386 LPT Device (Windows for Workgroups 3.11)

 0000h	MSODISUP    N	N  N	MS ODI Support (Windows for Workgroups 3.11)

 0000h	NWNBLINK    N	N  N	Netware NetBIOS (Windows for Workgroups 3.11)

 0000h	SERIAL	    N	N  N	DOS386 Serial Device (Windows for Workgrp 3.11)

 0001h	VMM	N  N	Virtual Machine Manager

 0002h	Debug

 0003h	VPICD	Y  Y	Virtual Prog. Interrupt Controller (PIC) Device

 0004h	VDMAD	N  N	Virtual Direct Memory Access (DMA) Device

 0005h	VTD	Y  Y	Virtual Timer Device

 0006h	V86MMGR	    Y	N  N	Virtual 8086 Mode Device

 0007h	PageSwap	N  N	Paging Device

 0008h	Parity	N  N	Parity-check trapper

 0009h	Reboot	N  Y	Ctrl-Alt-Del handler

 000Ah	VDD	N  Y	Virtual Display Device (GRABBER)

 000Bh	VSD	N  N	Virtual Sound Device

 000Ch	VMD	    Y	Y  Y	Virtual Mouse Device

 000Dh	VKD	N  Y	Virtual Keyboard Device

 000Eh	VCD	N  Y	Virtual COMM Device

 000Fh	VPD	Virtual Printer Device

 0010h	VHD	Virtual Hard Disk Device (Windows 3.0)

 0010h	BLOCKDEV	N  N	Virtual Hard Disk Device (Windows 3.1)

 0010h	IOS	    N	N  N	DOS386 IOS Device (Windows for Workgroups 3.11)

 0010h	IOS	N  Y	(Chicago)

 0011h	VMCPD	Y  Y	Virtual Math CoProcessor Device

 0012h	EBIOS	N  N	Reserve EBIOS page (e.g., on PS/2)

 0013h	BIOSXLAT	N  N	Map ROM BIOS API between prot & V86 mode

 0014h	VNETBIOS    Y	N  N	Virtual NetBIOS Device

 0015h	DOSMGR	    Y	Y  N	DOS data instancing (see #1422)

 0016h	WINLOAD

 0017h	SHELL	N  Y

 0018h	VMPOLL	N  N

 0019h	VPROD

 001Ah	DOSNET	N  N	assures network integrity across VMs

 001Ah	VNETWARE	Y  Y	Novell NetWare DOSNET replacement

 001Bh	VFD	N  N	Virtual Floppy Device

 001Ch	VDD2	Secondary display adapter

 001Ch	LoadHi	N  N	Netroom LoadHi Device (RMLODHI.VXD)

 001Ch	LoadHi	N  N	386MAX LoadHi Device (386MAX.VXD)

 001Ch	LoadHi	N  N	Win386 LoadHi Device (EMM386.EXE)

 001Dh	WINDEBUG	N  Y

 001Dh	TDDebug	N  Y

 001Eh	TSRLoad	TSR instance utility

 001Fh	BiosHook	BIOS interrupt hooker VxD

 0020h	Int13	    N	N  N

 0021h	PageFile	N  Y	Paging File device

 0022h	SCSI

 0023h	MCA_POS

 0024h	SCSIFD	SCSI FastDisk device

 0025h	VPEND	Pen device

 0026h	APM	Advanced Power Management

 0027h	VXDLDR	     N	Y  Y	VXDLDR (Windows for Workgroups 3.11)

 0028h	NDIS	     N	Y  Y	Network Driver Interface Specification

  (Windows for Workgroups 3.11)

 002Ah	VWIN32	N  Y	(Chicago)

 002Bh	VCOMM	     N	Y  Y	DOS386 VCOMM Device (Windows for Workgrps 3.11)

 002Dh	W32S	     Y	N  Y	WIN32s 32-bit extension to Windows API

 0030h	MACH32	     N	N  Y	ATI Mach32 video card

 0031h	NETBEUI	     N	N  N	NETBEUI (Windows for Workgroups 3.11)

 0032h	SERVER	     N	Y  Y	Int21 File Server (Windows for Workgroups 3.11)

 0033h	CONFIGMG	Y  Y	(Chicago)

 0033h	EDOS	N  N	Windows DOS Box Enhancer by Mom's Software

 0034h	DWCFGMG.SYS	Plug-and-Play configuration manager

 0036h	VFBACKUP	Y  Y	(Chicago)

 0038h	VCOND	Y  Y	(Chicago)

 003Ah	VPMTD	     N	N  Y	IFAX Scheduler Device (Windows for Workgr 3.11)

 003Bh	DSVXD	Y  N	DoubleSpace VxD from MS-DOS v6.x

 0051h	ISAPNP	N  N

 008Dh	ESDI_506	N  N	(Chicago)

 0090h	voltrack	N  N

 00FDh	FAKEIDE	N  N	(Chicago)

 0102h	CV1	N  N	Microsoft C/C++ 7.00+ CodeView for Windows

 0200h	VIPX	Y  Y	NetWare Virtual IPX Driver

 0201h	VNWLSERV	N  N	NetWare Lite 1.1 Server (SERVER.EXE)

 0202h	WINICE	Y  Y	SoftICE/W

 0203h	VCLIENT	N  Y	NetWare Lite 1.1+ Client

 0205h	VCAFT	N  N	Novell Virtual CAFT Driver (LANalyzer for Win)

 0205h	BCW	Y  Y	Nu-Mega Bounds Checker for Windows

 0206h	VTXRX	N  N	Novell Virtual TXRX Driver (LANalyzer for Win)

 0207h	DPMS	     N	Y  N	Novell DOS Protected Mode Services

 0234h	VCOMMUTE	Y  Y	PC Tools Commute

 0442h	VTDAPI	N  Y	MMSys Win386 VTAPI Device

 0444h	VADMAD	Autoinitialize DMA (Windows 3.0)

 0445h	VSBD	Y  Y	WinResKit: Sound Blaster Device

 0446h	VADLIBD	     Y	Y  Y	MMSys Win386 AdLib Device (v3.x)

 045Dh	VflatD	N  Y	dva.386, part of WIN32s

 0460h	UNIMODEM	N  Y

 0480h	VNetSup	     N	Y  Y	Virtual Net Support (Windows for Workgrps 3.11)

 0481h	VRedir	     N	N  N	Redirector File System Driver

  (Windows for Workgroups 3.11)

 0482h	VBrowse	Y  Y	Win386 Virtual Browser

 0483h	VSHARE	N  N	Windows for Workgroups Virtual SHARE

 0484h	IFSMgr	     Y	Y  N	Installable File System Manager

  (Windows for Workgroups 3.11)

 0486h	VFAT	     N	Y  Y	Win386 HPFS Driver (Windows for Workgrps 3.11)

 0487h	NWLINK	Y  Y	Win386 Virtual Packet Exchange Protocol

 0487h	NWSUP	     Y	N  N	NetWare Vnetbios shim

 048Bh	VCache	     N	Y  Y	Virtual File Cache (Windows for Workgrps 3.11)

 048Bh	VCACHE	Y  Y

 048Dh	RASMAC	Y  Y	enhanced mode Win4Workgroups RASMAC device

 1021h	VMB	Y  Y	Microsoft C/C++ 7.00 WXSRVR

 1022h	Vpfd	Y  Y	Microsoft C/C++ 7.00

 1025h	MMD	Y  Y	Microsoft C/C++ 8.00, Visual C/C++ 1.00

 2020h	PIPE	Y  Y	by Thomas W. Olson, in Windows/DOS DevJrn 5/92

 21EAh	VADLIBWD	N  Y	Adlib Waveform Driver by John Ridges

 2200h	VFINTD	Y  Y	Norton VFINTD (Norton Desktop)

 22C0h	???	    Y	Rational Systems DOS/4GW ???

 2402h	ZMAX	N  N	Qualitas 386MAX v7 DOSMAX handler

 24A0h	VNSS	N  Y	Norton Screen Saver (Norton Desktop)

 24A1h	VNDWD	Y  Y	Norton VNDWD Device (Norton Desktop)

 24A2h	SYMEvent	Y  Y	Norton Utilities v8

 2540h	VILD	Y  N	INTERLNK client from MS-DOS v6.x

 2640h	VASBID	N  Y	WinResKit: Artisoft Sounding Board Device

 2860h	COMMTASK    N	N  Y	Windows 386-mode preemptive tasker by James

  A. Kenemuth of Interabang Computing

 28A0h	PHARLAPX	Y	PharLap inter-VM communications DLL

 28A1h	PharLap	    Y	Y  Y	PharLap 386|DOS-Extender DOSXNT.386

 28C0h	VXD	    N	Y  Y	Generic VxD for real and protected mode by

  Andrew Schulman in MSJ February 1993

 2925h	EDOS	Y  Y	Enhanced DOS by Firefly Software

 292Dh	VSBPD	Y  Y	Sound Blaster Pro

 3098h	VstlthD	    N	N  N	for QEMM Stealth ROM mode

 310Eh	WPS	N  Y	MS DevNet CD-ROM: Windows Process Status

 32CBh	VFRAD	Y  Y	Dr.Franz - Simultan's diagnotics VFRAD.386

 4321h	POSTMSG	Y  Y	(see #1436)

 7A5Fh	SIWVID	    Y	Y  Y	Soft-ICE for Windows video driver

 7FE0h	VSWITCHD	Y  N	by Jeff Prosise

 7FE0h	VWFD	    N	Y  Y	reports windowed/fullscreen state

  by Neil Sandlin of Microsoft

 7FE1h	VWATCHD	    N	Y  Y	basic driver w/ no functionality except tracing

  by Keith Jin of Microsoft PSS

 7FE5h	VFINTD	    N	Y  Y	Virtual Floppy Interrupt trapper by Neil

  Sandlin of Microsoft

 7FE7h	VMPAGES	    N	Y  Y	demonstration of exporting VxD services, by

  Neil Sandlin of Microsoft

 7FE8h	VPOSTD	Y  Y	PostMessage() demo by Curtis J. Palmer of MS

 7FE9h	VIdleD	    N	N  N	demonstration of Call_When_Idle function, by

  Bernie McIlroy of Microsoft

 7FEBh	VMIOD	    N	N  N	Virtual Monitor I/O Traffic Device, by Neil

  Sandlin of Microsoft

 7FEDh	VMIRQD	    N	N  N	Virtual Monitor IRQ Traffic Device, by Neil

  Sandlin of Microsoft

 8888h	VbillD	Bill Potvin II's for reversing Compaq LTE video

 EEEEh	VEPSD	N  N	Virtual Extended Paging Services for

  Borland C++ v4.0

Note:	The high bit of the VxD ID is reserved for future use. The

next 10 bits are the OEM number which is assigned by Microsoft. The

low 5 bits are the device number.  Naturally, this scheme has not

been adhered to since there are now more than 32 different VxDs.

INT 2F 1684


2F 1684 Call VTD.386 entry point with:

Copy to Main

Table 1420

Call VTD.386 entry point with:

AX = function number

    0000h get VTD version number

Return: AH = major version

AL = minor version

    0100h get current clock tick time

Return: EDX:EAX = clock tick time in 840ns units since Windows

  was started

    0101h get current system time in milliseconds

Return: EAX = time in milliseconds that Windows has been

  running

    0102h get current virtual machine time

Return: EAX = cumulative amount of time the virtual machine has

  been active, in milliseconds

Note:	this entry point should only be called directly when TOOLHELP.DLL

  TimerCount() cannot be called

SeeAlso: #2633,#2634,#2654 at INT 20"Windows"

INT 2F 1684


2F 1684 Call REBOOT protected-mode entry point with:

Copy to Main

Table 1421

Call REBOOT protected-mode entry point with:

AX = function

    0100h warm boot

Return: never

Note:	broadcasts "Reboot_Processor" message, which is caught

  by the VKD device

    0201h set KERNEL Ctrl-Alt-Del handler

ES:DI -> new Ctrl-Alt-Del handler

DS:SI -> KERNEL reboot sanity check byte

Return: CF clear

Notes:	if an application installs its own handler and then

  chains to Windows' handler, Windows will no longer

  be able to detect hung applications, and will always

  produce an "Application not responding" dialog

DS must contain a writable, fixed selector because

  the provided address is converted to a linear address

  before being stored

when Ctrl-Alt-Del is pressed in the system VM, Reboot

  sets the sanity check byte to zero, schedules a

  750ms wait, and then tests whether the check byte is

  still zero; if not, it displays a message that there

  is no hung application and then exits

    0202h get KERNEL Ctrl-Alt-Del handler

Return: CF clear

ES:DI -> current Ctrl-Alt-Del handler

Note:	the default handler is located in KERNEL

    0203h display "Application not responding" dialog box

ES:DI -> ASCIZ name of hung application

Return: never if user pressed Ctrl-Alt-Del a second time

CF clear

AX = result

    0000h user pressed Esc

    0001h user pressed Enter

Note:	this function is used by the default Windows

  Ctrl-Alt-Del handler

    0204h set/reset protected-mode INT 01 handler

CX:EDX -> new protected-mode INT 01 handler

CX = 0000h restore protected-mode INT 01 handler

Return: CF clear

Notes:	if CX is nonzero, the current handler address is saved

  internally before the new handler is set; this saved

  address is then used when CX is zero on entry

used by Windows' default Ctrl-Alt-Del handler; actual

  fatal exit to DOS will be done on next INT 01

Warning: opened files are not closed and remain open as

  orphaned files in DOS

Note:	functions 0201h and 0203h are not useful outside the system VM

SeeAlso: #2635,#2636

INT 2F 1684


2F 1684 Call DOSMGR entry point with:

Copy to Main

Table 1422

Call DOSMGR entry point with:

AX = 0000h get DOSMGR version

    Return: CF clear

    AX = version (AH = major, AL = minor)

AX = 0001h set critical focus

    Return: CF clear

AX = 0002h crash current virtual machine

    Return: never

    Note:   displays message box stating that "application has been

      stopped by the DOSMGR device"

AX = 0003h enter critical section

    Note:   this function assumes that the code for INT 2A/AX=8001h

      and INT 2A/AX=8002h have been modified for Windows

AX = 0004h get VM ID byte

    Return: CF clear if successful

ES:DI -> VM ID byte

    CF set on error

    Note:   this function fails if the INT 2A modifications have not

      yet been applied

AX = 0005h inform Windows of possible media change

    BL = drive number (00h=A:)

    Return: CF clear if successful

    CF set on error

SeeAlso: #2647 at INT 20"Windows"

INT 2F 1684


2F 1684 Call SHELL entry point with:

Copy to Main

Table 1423

Call SHELL entry point with:

EDX = function number (0000h-0016h, mostly unknown)

    0000h get version number

Return: AX = version number

EBX = system VM handle

    0001h "SHELL_Get_SYSVM_Info" get system VM information

Return: CF clear

AX bit 0 set if system VM executing exclusively

BX = background time slice priority

CX = foreground time slice priority

SI = minimum time slice in milliseconds

    0002h "SHELL_Set_SYSVM_Info" set system VM information

AX bit 0 set if system VM should execute exclusively (ignored?)

BX = background time slice priority (1-10000)

CX = foreground time slice priority (1-10000)

SI = minimum time slice in milliseconds (1-10000)

Return: CF clear if successful

    0003h "SHELL_Crt_VM" create a virtual machine

ES:EDI -> SEB structure (see #1424)

Return: CF clear if successful

   EAX = VM handle

CF set on error

   EDX,EAX = result from GetSetDetailedVMError()

    0004h "SHELL_Destroy_VM" destroy a virtual machine

EBX = VM handle (not system VM)

Return: nothing

    0005h "SHELL_Set_Focus"

EBX = VM handle

ECX = ???

Return: nothing

    0006h "SHELL_Get_VM_State"

EBX = VM handle (not system VM)

ES:EDI -> ??? structure

Return: CF clear if successful

    0007h "SHELL_Set_VM_State"

EBX = VM handle (not system VM)

ES:EDI -> ??? structure

    0008h "SHELL_Debug_Out"

???

Return: ???

Note:	dummy function in retail version of MS Windows

    0009h "SHELL_VMDA_Init"

???

Return: ???

    000Ah "SHELL_VMDA_Exit"

???

Return: ???

    000Bh "SHELL_Get_Message_Txt"

???

Return: ???

    000Ch "SHELL_Event_Complete"

???

Return: ???

    000Dh "SHELL_Get_Contention_Info"

???

Return: ???

    000Eh "SHELL_Get_Clip_Info"

???

Return: ???

    000Fh "SHELL_Set_Paste"

???

Return: ???

    0010h "SHELL_Switcher_Assist"

???

Return: ???

    0011h "SHELL_Get_FileSysChng"

???

Return: ???

    0012h "SHELL_Query_Destroy"

???

Return: ???

    0013h "SHELL_SetFocus_Cur_VM" set input focus to current VM

???

Return: ???

    0014h "SHELL_User_Busy_API"

???

Return: ???

    0015h "SHELL_Chng_Hot_Key"

???

Return: ???

    0016h "SHELL_Get_TermInfo"

???

Return: ???

Return: CF set if called from VM other than system VM

    EAX = FFFFFFFFh

Note:	except for function 0013h, this API may only be called from the system

  VM

SeeAlso: #2655 at INT 20"Windows"

INT 2F 1684


2F 1684 Format of Shell Execution Block (SEB):

Copy to Main

Table 1424

Format of Shell Execution Block (SEB):

Offset	Size	Description

 00h	DWORD	PIF flags (see #1425)

 04h	DWORD	display flags (see #1426)

 08h	PWORD	-> pathname of .EXE to run

 0Eh	PWORD	-> argument list

 14h	PWORD	-> working drive/directory

 1Ah	WORD	desired number of V86 pages for virtual machine

 1Ch	WORD	minimum number of V86 pages for VM

 1Eh	WORD	foreground priority

 20h	WORD	background priority

 22h	WORD	maximum KB of EMS

 24h	WORD	minimum KB of EMS

 26h	WORD	maximum KB of XMS

 28h	WORD	minimum KB of XMS

 2Ah	WORD	???

 2Ch	WORD	???

 2Eh 128 BYTEs	title

Note:	the PWORDs at offsets 08h,0Eh, and 14h consist of a DWORD offset

  followed by a WORD selector

INT 2F 1684


2F 1684 Bitfields for 386 Enhanced Mode PIF flags:

Copy to Main

Table 1425

Bitfields for 386 Enhanced Mode PIF flags:

Bit(s)	Description

 0	exclusive use of processor when VM is fullscreen

 1	VM runs in background

 2	VM runs in window

 3-4	???

 5	Alt-Tab reserved

 6	Alt-Esc reserved

 7	Alt-Space reserved

 8	Alt-Enter reserved

 9	Alt-PrtSc reserved

 10	PrtSc reserved

 11	Ctrl-Esc reserved

 12	VM will release idle time slice

 13	VM not allowed to use high mem

 14	unknown

 15	VM expanded mem not pageable

 16	VM extended mem not pageable

 17	Fast paste from clipboard enabled

 18	VM app memory not pageable

 30	Close VM when app exits

INT 2F 1684


2F 1684 Bitfields for SHELL display options:

Copy to Main

Table 1426

Bitfields for SHELL display options:

Bit(s)	Description

 0	emulate text mode

 1	monitor text port

 2	monitor low graphics port

 3	monitor high graphics port

 7	Retain video memory

INT 2F 1684


2F 1684 Call PAGEFILE entry point with:

Copy to Main

Table 1427

Call PAGEFILE entry point with:

AX = function

    0000h get version

Return: CF clear

AX = version (AH = major, AL = minor)

    0001h get swap file info

DS:SI -> 128-byte buffer for swap file full pathname

DS:DI -> 128-byte buffer for SPART.PAR full pathname

Return: CF clear

AL = pager type (see #1428)

AH = flags

    bit 7: swap file corrupted

ECX = maximum size of swap file

DS:SI buffer filled if paging enabled

DS:DI buffer filled if permanent swap file

    0002h delete permanent swap file on exit

Return: CF clear

    0003h get current temporary swap file size

Return: CF clear

DX:AX = current swap file size in bytes

0000h:0000h if permanent swap file

Note:	this API is only available in protected mode, and may only be called

  from the system VM

SeeAlso: #2656 at INT 20"Windows"

INT 2F 1684


2F 1684 Values for MS Windows PAGEFILE pager type:

Copy to Main

Table 1428

Values for MS Windows PAGEFILE pager type:

 00h	paging disabled

 01h	MSDOS

 02h	BIOS

 03h	32-bit disk access

SeeAlso: #1427

INT 2F 1684


2F 1684 Call Configuration Manager entry point with:

Copy to Main

Table 1429

Call Configuration Manager entry point with:

AX = function

    0000h "CM_GetVersion" get supported DDI version

Return: AH = major version (01h)

AL = minor version (00h)

BX = number of devices identified by configuration

Note:	returns AX = 0000h if no config manager installed

    0001h "CM_GetConfig" get device configuration

BX = device index

ES:DI -> buffer for configuration information (see #1430)

Return: AX = status

    0000h successful

ES:DI buffer filled

    other error code (0001h = index out of range)

    0002h "CM_LockConfig" lock device configuration

ES:DI -> configuration information

Return: AX = status

    0000h successful

ES:DI buffer filled with assigned config

    0001h resources conflict

    0002h invalid request or configuration info

    0003h "CM_UnlockConfig" unlock device configuration

ES:DI -> configuration information

Return: AX = status

    0000h successful

ES:DI buffer filled with assigned config

    0001h invalid request or configuration info

INT 2F 1684


2F 1684 Format of Configuration Information Structure:

Copy to Main

Table 1430

Format of Configuration Information Structure:

Offset	Size	Description

 00h	DWORD	bus ID

 04h	DWORD	device ID

 08h	DWORD	serial number

 0Ch	DWORD	logical ID

 10h	DWORD	flags

---ISA bus---

 14h	BYTE	Card Select Number

 15h	BYTE	logical device number

 16h	WORD	Read Data port

------

 18h	WORD	number of memory windows

 1Ah  9 DWORDs	physical base addresses of memory windows

 3Eh  9 DWORDs	length of memory windows

 62h  9 WORDs	memory window attributes

 74h	WORD	number of I/O ports

 76h 20 WORDs	I/O port base addresses

 B6h 20 WORDs	lengths of I/O port ranges

 F6h	WORD	number of IRQs

 F8h  7 BYTEs	IRQ registers

 FFh  7 BYTEs	IRQ attributes

106h	WORD	number of DMA channels

108h  7 BYTEs	DMA channels used

10Fh  7 WORDs	DMA channel attributes

11Dh  3 BYTEs	reserved

SeeAlso: #1429

INT 2F 1684


2F 1684 Call VADMAD entry point with:

Copy to Main

Table 1431

Call VADMAD entry point with:

DX = operation

    0000h set VADMAD mode

AX = desired mode

    0001h set VADMAD channel

AX = desired channel

Note:	after setting mode/channel, start the DMA operation with an OUT to

  I/O port 0Bh (channels 0-3) or D6h (channels 4-7)

SeeAlso: #2633 at INT 20"Windows"

INT 2F 1684


2F 1684 Call VSWITCHD entry point with:

Copy to Main

Table 1432

Call VSWITCHD entry point with:

AX = function

    0000h toggle windowed mode (simulate Alt-Enter keypress)

Return: nothing

    0001h get windowed mode

Return: CF clear if VM is windowed

CF set if VM is full-screen

INT 2F 1684


2F 1684 Call PHARLAPX VxD entry point with:

Copy to Main

Table 2648

Call PHARLAPX VxD entry point with:

AX = function

    0001h get PHARLAP.386 version

Return: AX = version number (AH = major, AL = minor)

---queue functions---

    0101h allocate a new message queue

CX = size of queue data buffer in bytes

Return: DX:AX = handle for new queue, or 0000h:0000h on error

    0102h allocate a new key queue

CX = size of queue data buffer in bytes

EDX = VM handle into which keys will be pasted

Return: DX:AX = handle for new queue, or 0000h:0000h on error

    0103h free message queue

EDX = queue handle

Return: AX = status (0000h,0003h,0007h) (see #2649)

    0104h free key queue

EDX = queue handle

Return: AX = status (0000h,0003h,0005h) (see #2649)

    0105h add message to communications queue

EDX = queue handle

BX = length of message data in bytes

CX = length of message header in bytes

ES:(E)SI -> message header

GS:(E)DI -> message data

Return: AX = status (0000h-0003h,0007h) (see #2649)

    0106h remove message from queue

EDX = queue handle

CX = length of buffer in bytes

ES:(E)SI -> buffer for message

Return: AX = status (0000h,0003h,0006h,0007h,0008h) (see #2649)

CX = length of returned message (if AX=0000h or 0008h)

    0107h flush queue (remove all data)

EDX = queue handle

Return: AX = status (0000h,0003h) (see #2649)

    0108h add PasteKey structure(s) to key queue

EDX = queue handle

CX = number of PasteKey structures in buffer

ES:(E)SI -> PasteKey array (see #2650)

Return: AX = status (0000h-0003h) (see #2649)

    0109h register enqueueing callback function

EDX = queue handle

ECX = function argument

ES:(E)SI -> callback function

Return: AX = status (0000h,0003h,0009h) (see #2649)

    010Ah register dequeueing callback function

EDX = queue handle

ECX = function argument

ES:(E)SI -> callback function

Return: AX = status (0000h,0003h,0009h) (see #2649)

    010Bh unregister enqueueing callback function

EDX = queue handle

Return: AX = status (0000h,0003h,0009h) (see #2649)

    010Ch unregister dequeueing callback function

EDX = queue handle

Return: AX = status (0000h,0003h,0009h) (see #2649)

    010Dh get message queue status

EDX = queue handle

Return: AX = status (0000h,0003h) (see #2649)

CX = number of pending messages

    010Eh peek at message in queue

EDX = queue handle

BX = number of message in queue (0000h = first)

CX = size of buffer in bytes

ES:(E)SI -> buffer for message

Return: AX = status (0000h,0003h,0006h,0008h) (see #2649)

CX = length of returned message (if AX=0000h or 0008h)

    010Fh peek at last message in queue

EDX = queue handle

CX = size of buffer in bytes

ES:(E)SI -> buffer for message

Return: AX = status (0000h,0003h,0006h,0008h) (see #2649)

CX = length of returned message (if AX=0000h or 0008h)

    0110h replace last message in queue

EDX = queue handle

CX = length of message header in bytes

BX = length of message data in bytes

ES:(E)SI -> message header

GS:(E)DI -> message data

Return: AX = status (0000h,0002h,0003h) (see #2649)

    0111h set permitted message count for queue

EDX = queue handle

CX = maximum number of messages to enqueue (FFFFh = unlimited)

Return: AX = status (0000h,0003h) (see #2649)

---generalized VxD services---

    0202h call VxD function

ES:(E)BX -> in/out register-set buffer

Return: buffer updated

    0203h map flat

???

--system register functions---

    0301h read system registers into buffer

ES:(E)SI -> 512-byte buffer

Return: AX = 0000h

buffer filled (mostly zeros)

    0302h copy linear memory into buffer

EDX = linear address

CX = number of bytes to copy

ES:(E)SI -> buffer

Return: AX = 0000h

    0303h copy data into linear memory

EDX = linear address

CX = number of bytes to copy

ES:(E)SI -> buffer

Return: AX = 0000h

    0304h freeze VM

???

    0305h unfreeze VM

???

---name registration functions---

    0401h register name

EDX = magic number to associate with name

ES:(E)SI -> name to register

Return: AX = status (0000h,0009h) (see #2649)

    0402h unregister name

ES:(E)SI -> name to be unregistered

Return: AX = status (0000h,0009h) (see #2649)

    0403h look up name

ES:(E)SI -> name to look up

Return: DX:AX = magic number or 0000h:0000h if not registered

    0404h get name list handle

Return: DX:AX = name list handle

0000h:0000h if not initialized

---special DOS server routines (undocumented)---

    0501h register

    0502h unregister

    0503h validate VM

    0504h get INT9 count

    0505h get screen line

    0506h get shift status

    0507h get server PB pointer

    0508h initialize DOS shell

    0509h get last VM handle

INT 2F 1684


2F 1684 Values for PHARLAPX function status:

Copy to Main

Table 2649

Values for PHARLAPX function status:

 00h	successful

 01h	data is too large to fit in queue

 02h	queue is full

 03h	invalid queue handle

 04h	invalid VM handle for queue

 05h	error starting a paste operation

 06h	queue is empty

 07h	a VM is blocked waiting on the queue

 08h	message was too long (truncated)

 09h	unable to register or unregister specified callback

SeeAlso: #2648

INT 2F 1684


2F 1684 Format of PHARLAPX PasteKey structure:

Copy to Main

Table 2650

Format of PHARLAPX PasteKey structure:

Offset	Size	Description

 00h	BYTE	ASCII code

 01h	BYTE	scan code

 02h	WORD	shift states

SeeAlso: #2648

INT 2F 1684


2F 1684 Format of PHARLAPX VxD-call register structure:

Copy to Main

Table 2651

Format of PHARLAPX VxD-call register structure:

Offset	Size	Description

 00h	DWORD	call number

 04h	WORD	input register map (see #2652)

 06h	WORD	output register map (see #2652)

 08h  7 DWORDs	values for EAX, EBX, ECX, EDX, EBP, ESI, EDI on call

 24h  4	WORDs	values for DS, ES, FG, GS on call

 2Ch	DWORD	EFLAGS on call

 30h  7 DWORDs	returned values of EAX, EBX, ECX, EDX, EBP, ESI, EDI

 4Ch  4 WORDs	returned values of DS, ES, FS, GS

 54h	DWORD	returned EFLAGS

SeeAlso: #2648

INT 2F 1684


2F 1684 Bitfields for PHARLAPX VxD-call register map:

Copy to Main

Table 2652

Bitfields for PHARLAPX VxD-call register map:

Bit(s)	Description

 0	value in EAX field is valid

 1	value in EBX field is valid

 2	value in ECX field is valid

 3	value in EDX field is valid

 4	value in EBP field is valid

 5	value in ESI field is valid

 6	value in EDI field is valid

 7	value in DS field is valid

 8	value in ES field is valid

 9	value in FS field is valid

 10	value in GS field is valid

 11	value in EFLAGS field is valid

SeeAlso: #2651

INT 2F 1684


2F 1684 Call EDOS entry point with:

Copy to Main

Table 1433

Call EDOS entry point with:

AX = 0000h get EDOS version number

    Return: AH = major version

    AL = minor version

AX = 0001h display message

    CX = 0

    DX:BX -> ASCIZ Message

AX = 0002h get EDOS error coded

    Return: EAX = time in milliseconds that Windows has been running

AX = 0003h execute windows program

    Return: EAX = cumulative amount of time the virtual machine has

been active, in milliseconds

AX = 0008h get/set priority

    BX = 0000h??? foreground

 0001h background

    DI = 0000h get

 0001h set

    DX = priority setting

    Return: CX = foreground priority

    DX = background priority

    BX:AX = flags

00000001h exclusive ON

00000010h background ON

    SI = CPU percentage

INT 2F 1684


2F 1684 Call WPS protected-mode entry point with:

Copy to Main

Table 1434

Call WPS protected-mode entry point with:

DX = function

    0000h get WPS.386 version

Return: CF clear

AX = version (AH = major, AL = minor)

    0001h get number of installed VxDs

Return: CF clear

AX = number of installed VxDs

    0002h get VxD characteristics

AX = number of VxD

ES:BX -> buffer for VxD characteristics structure (see #1435)

Return: CF clear

ES:BX buffer filled

INT 2F 1684


2F 1684 Format of WPS.386 VxD characteristics structure:

Copy to Main

Table 1435

Format of WPS.386 VxD characteristics structure:

Offset	Size	Description

 00h	WORD	VxD ID number

 02h	BYTE	VxD minor version

 03h	BYTE	VxD major version

 04h	BYTE	DDK minor version

 05h	BYTE	DDK major version

 06h	WORD	flags

bit 0: V86 API supported

bit 1: PM API supported

bit 2: services supported

 08h	DWORD	start order

 0Ch  9 BYTEs	ASCIZ VxD name

INT 2F 1684


2F 1684 Call POSTMSG protected-mode entry point with:

Copy to Main

Table 1436

Call POSTMSG protected-mode entry point with:

AX = window handle

CX:BX -> callback procedure (see #1437)

Return: nothing

Note:	this call registers a WinApp with the VxD; the callback must be in a

  fixed, non-discardable code segment

SeeAlso: #1438

INT 2F 1684


2F 1684 Values POSTMSG callback routine is called with:

Copy to Main

Table 1437

Values POSTMSG callback routine is called with:

STACK:	DWORD	"lParam" parameter from DOSApp

WORD	"wParam" parameter from DOSApp

WORD	Windows message number (WM_USER + 100)

DWORD	registered hwnd

INT 2F 1684


2F 1684 Call POSTMSG V86-mode entry point with:

Copy to Main

Table 1438

Call POSTMSG V86-mode entry point with:

BX = wParam value to pass to protected-mode callback

DX:AX = lParam value to pass to protected-mode callback

Return: CF clear if successful

CF set on error (no WinApp registered)

SeeAlso: #1436

INT 2F 1684


2F 1684 Call VbillD entry point with:

Copy to Main

Table 1439

Call VbillD entry point with:

AX = function

    0001h set reverse video

    0002h set normal video

Return: ???

INT 2F 1684


2F 1685 Bitfields for VM switching flags:

Copy to Main

Table 1440

Bitfields for VM switching flags:

Bit(s)	Description

 0	wait until interrupts enabled

 1	wait until critical section unowned

 2-15	reserved (zero)

INT 2F 1685


2F 1687 Call DPMI mode switch entry point with:

Copy to Main

Table 1441

Call DPMI mode switch entry point with:

AX = flags

    bit 0: set if 32-bit program

ES = real mode segment of buffer for DPMI private data (ignored if

SI was zero)

Return: CF set on error

    program still in real mode

    AX = error code (DPMI 1.0+)

       8011h unable to allocate all necessary descriptors

       8021h 32-bit program specified, but 16-bit DPMI host

CF clear if successful

    CS = 16-bit selector corresponding to real-mode CS

    SS = selector corresponding to real-mode SS (64K limit)

    DS = selector corresponding to real-mode DS (64K limit)

    ES = selector to program's PSP (100h byte limit)

    FS = GS = 0

    high word of ESP = 0 if 32-bit program

    program now in protected mode

Note:	this entry point is only called for the initial switch to protected

  mode

INT 2F 1687


2F 168A Values for DPMI vendor-specific API names:

Copy to Main

Table 1442

Values for DPMI vendor-specific API names:

 "MS-DOS"	MS Windows and 386MAX v6.00+ (see #1443)

 "386MAX"	386MAX v6.00+

 "HELIX_DPMI"	Helix Netroom's DPMI server

 "Phar Lap"	Phar Lap 286|DOS-Extender RUN286 (see #1444)

INT 2F 168A


2F 168A Call Windows-support ("MS-DOS") entry point with:

Copy to Main

Table 1443

Call Windows-support ("MS-DOS") entry point with:

AX = 0100h get LDT alias selector

Return: CF clear if successful

    AX = alias selector

CF set on error

INT 2F 168A


2F 168A Call Phar Lap RUN286 entry point with:

Copy to Main

Table 1444

Call Phar Lap RUN286 entry point with:

AX = 0000h (function "load MSW")

BX = new value for MSW register (low word of CR0)

Return: ???

INT 2F 168A


2F 1703 Values for WinOldAp clipboard format:

Copy to Main

Table 1445

Values for WinOldAp clipboard format:

 01h	text

 02h	bitmap

 03h	metafile picture

 04h	SYLK

 05h	DIF

 06h	TIFF

 07h	OEM text

 08h	DIB bitmap

 80h	special format (used by Windows WRITE, maybe other Windows applets???)

 81h	DSP text

 82h	DSP bitmap

INT 2F 1703


2F 1703 Format of Windows Clipboard bitmap:

Copy to Main

Table 1446

Format of Windows Clipboard bitmap:

Offset	Size	Description

 00h	WORD	type (0000h)

 02h	WORD	width of bitmap in pixels

 04h	WORD	height of bitmap in pixels

 06h	WORD	bytes per line

 08h	BYTE	number of color planes

 09h	BYTE	number of adjacent color bits in pixel

 0Ah	DWORD	pointer to start of data

 0Eh	WORD	width in 0.1mm units

 10h	WORD	height in 0.1mm units

 12h  N BYTEs	bitmap data

INT 2F 1703


2F 1703 Format of Windows metafile picture:

Copy to Main

Table 1447

Format of Windows metafile picture:

Offset	Size	Description

 00h	WORD	mapping mode

 02h	WORD	X extent

 04h	WORD	Y extent

 06h	WORD	picture data

INT 2F 1703


2F 170A Values for GDI information index:

Copy to Main

Table 1448

Values for GDI information index:

 00h	device driver version

 02h	device classification

 04h	width in mm

 06h	height in mm

 08h	width in pixels

 0Ah	height in pixels

 0Ch	bits per pixel

 0Eh	number of bit planes

 10h	number of brushes supported by device

 12h	number of pens supported by device

 14h	number of markers supported by device

 16h	number of fonts supported by device

 18h	number of colors

 1Ah	size required for device descriptor

 1Ch	curve capabilities

 1Eh	line capabilities

 20h	polygon capabilities

 22h	text capabilities

 24h	clipping capabilities

 26h	bitblt capabilities

 28h	X aspect

 2Ah	Y aspect

 2Ch	length of hypotenuse of aspect

 58h	logical pixels per inch of width

 5Ah	logical pixels per inch of height

SeeAlso: #1449,

#1450,#1451,#1452,#1453,#1454,#1455

INT 2F 170A


2F 170A Values for device classification:

Copy to Main

Table 1449

Values for device classification:

 00h	vector plotter

 01h	raster display

 02h	raster printer

 03h	raster camera

 04h	character-stream, PLP

 05h	Metafile, VDM

 06h	display-file

SeeAlso: #1448,

#1450,#1451,#1452,#1453,#1454,#1455

INT 2F 170A


2F 170A Bitfields for curve capabilities:

Copy to Main

Table 1450

Bitfields for curve capabilities:

Bit(s)	Description

 0	circles

 1	pie wedges

 2	chord arcs

 3	ellipses

 4	wide lines

 5	styled lines

 6	wide styled lines

 7	interiors

SeeAlso: #1448,

#1449,#1451,#1452,#1453,#1454,#1455

INT 2F 170A


2F 170A Bitfields for line capabilities:

Copy to Main

Table 1451

Bitfields for line capabilities:

Bit(s)	Description

 1	polylines

 2	markers

 3	polymarkers

 4	wide lines

 5	styled lines

 6	wide styled lines

 7	interiors

SeeAlso: #1448,

#1449,#1450,#1452,#1453,#1454,#1455

INT 2F 170A


2F 170A Bitfields for polygon capabilities:

Copy to Main

Table 1452

Bitfields for polygon capabilities:

Bit(s)	Description

 0	polygons

 1	rectangles

 2	trapezoids

 3	scanlines

 4	wide borders

 5	styled borders

 6	wide styled borders

 7	interiors

SeeAlso: #1448,

#1449,#1450,#1451,#1453,#1454,#1455

INT 2F 170A


2F 170A Bitfields for text capabilities:

Copy to Main

Table 1453

Bitfields for text capabilities:

Bit(s)	Description

 0	output precision character

 1	output precision stroke

 2	clippping precision stroke

 3	90-degree character rotation

 4	arbitrary character rotation

 5	independent X and Y scaling

 6	double-size

 7	integer scaling

 8	continuous scaling

 9	bold

 10	italic

 11	underline

 12	strikeout

 13	raster fonts

 14	vector fonts

 15	reserved

SeeAlso: #1448,

#1449,#1450,#1451,#1452,#1454,#1455

INT 2F 170A


2F 170A Values for clipping capabilities:

Copy to Main

Table 1454

Values for clipping capabilities:

 00h	none

 01h	clipping to rectangles

SeeAlso: #1448,

#1449,#1450,#1451,#1452,#1453,#1455

INT 2F 170A


2F 170A Bitfields for raster capabilities:

Copy to Main

Table 1455

Bitfields for raster capabilities:

Bit(s)	Description

 0	simple bitBLT

 1	device requires banding support

 2	device requires scaling support

 3	supports >64K bitmap

SeeAlso: #1448,

#1449,#1450,#1451,#1452,#1453,#1454

INT 2F 170A


2F 1A02 Format of ANSI.SYS parameter block:

Copy to Main

Table 1456

Format of ANSI.SYS parameter block:

Offset	Size	Description

 00h	BYTE	subfunction

00h set/reset interlock

01h get /L flag

 01h	BYTE	interlock state

00h=reset, 01h=set

  This interlock prevents some of the ANSI.SYS post-processing

  in its hook onto INT 10, AH=00h mode set

 02h	BYTE	(returned)

00h if /L not in effect

01h if /L in effect

INT 2F 1A02


2F 1A21 Values for AVATAR.SYS state characters:

Copy to Main

Table 1457

Values for AVATAR.SYS state characters:

 'a'	activate driver

 'd'	disable driver

 'f'	use fast screen output

 'g'	always convert gray keys (+ and -) to function keys

 'G'	never convert gray keys

 'l'	convert gray keys only when ScrollLock active

 's'	use slow screen output

 't'	Tandy 1000 keyboard (not yet implemented)

INT 2F 1A21


2F 1AA6 Bitfields for ANSIPLUS hooked interrupts mask:

Copy to Main

Table 1458

Bitfields for ANSIPLUS hooked interrupts mask:

Bit(s)	Description

 0	INT 09 hook disabled

 1	INT 10 hook disabled

 2	INT 15 hook disabled

 3	INT 16 hook disabled

 4	INT 1C hook disabled

 5	reset all bits when INT 29 called

 6	INT 29 hook disabled

 7	INT 33, INT 74, or other mouse event hook disabled

INT 2F 1AA6


2F 2707 Format of TaskMAX parameter block:

Copy to Main

Table 1459

Format of TaskMAX parameter block:

Offset	Size	Description

 00h	WORD	reserved, should be 0000h

 02h	DWORD	pointer to command tail to be copied into child's PSP

 06h	DWORD	pointer to first FCB to be copied into child's PSP

 0Ah	DWORD	pointer to second FCB to be copied into child's PSP

INT 2F 2707


2F 2780 Values for Novell DOS 7 EMM386 function status:

Copy to Main

Table 1460

Values for Novell DOS 7 EMM386 function status:

 0000h	successful

 0001h	invalid function???

 0002h	invalid subfunction

 0003h	???

 0004h	invalid ??? index

 0005h	???

 0006h	???

 0007h	???

 0009h	???

 000Ah	???

 000Bh	invalid ??? handle

 000Ch	???

 000Dh	???

 000Eh	???

 000Fh	???

 0014h	???

 0023h	???

 0030h	???

 003Fh	???

INT 2F 2780


2F 39-- Values for Kingswood TSR ID number:

Copy to Main

Table 1461

Values for Kingswood TSR ID number:

 01h	TSR Windows

 02h	NOBUSY

 03h	CD STACK

 04h	DISK WATCH

 05h	PUSHBP

 06h	ALIAS

 07h	KEYMACRO

 08h	SLOWDOWN

 09h	ANSIGRAB

 0Ah	TEE

 0Bh	FASTMOUS

 0Ch	EXTWILD

 0Dh	BREAKOUT

 0Eh	STOPDISK

 0Fh	MEMINIT

 10h	JANUSEXT

 11h	CAPS

 12h	ANSI

 13h	TRAPPER

 14h	EATMEM

 15h	WPJOKE

 16h	SHOWDOS

 17h	LOGINTS

 18h	BLANKVGA

 19h	SWAPEXEC

 1Ah	SHELL

 1Bh	TSRGAMES

INT 2F 39--


2F 39-- Format of Kingswood TSR modules:

Copy to Main

Table 1462

Format of Kingswood TSR modules:

Offset	Size	Description

 00h  4 BYTEs	signature "FTSR"

 04h	WORD	segment address of this module (used to check validity)

 06h	WORD	number of words to skip (usually 0000h if no PSP present)

 08h  N WORDs	module-defined data that must be at a fixed segment offset

(usually only a PSP if file access is required)

     5N BYTEs	interrupt list (see #1463)

BYTE	FFh terminator

INT 2F 39--


2F 39-- Format of Kingswood TSR interrupt list entry:

Copy to Main

Table 1463

Format of Kingswood TSR interrupt list entry:

Offset	Size	Description

 00h	BYTE	interrupt number (00h-FEh)

 01h	WORD	offset within segment of DWORD pointer to previous interrupt

 03h	WORD	offset within segment of begin of interrupt handler code

INT 2F 39--


2F 3912 Bitfields for Kingswood ANSI flags:

Copy to Main

Table 1464

Bitfields for Kingswood ANSI flags:

Bit(s)	Description

 0	do not wrap at end of line

 1	wait for beeps to end before displaying next character

 2	do not use graphics cursor

INT 2F 3912


2F 4000 Values for Windows video virtualization:

Copy to Main

Table 1465

Values for Windows video virtualization:

 01h	does not virtualize video access

 02h	virtualizes the video when in text mode

 03h	virtualizes the video when in text mode or single plane graphics modes

 04h	virtualizes the video when in text mode, single plane graphics modes,

  and VGA multiplane modes

 FFh	virtualizes the video fully

INT 2F 4000


2F 4309 Format of XMS handle table:

Copy to Main

Table 1466

Format of XMS handle table:

Offset	Size	Description

 00h	BYTE	??? (01h in HIMEM.SYS v3.09)

 01h	BYTE	size of one handle descriptor

 02h	WORD	number of handles (default = 20h)

 04h	DWORD	pointer to XMS handle array (see #1467)

SeeAlso: #1496

INT 2F 4309


2F 4309 Format of XMS handle descriptor [array]:

Copy to Main

Table 1467

Format of XMS handle descriptor [array]:

Offset	Size	Description

 00h	BYTE	flag

01h=free, 02h=used, 04h=in pool but not associated with any EMB

 01h	BYTE	lock count (00h=unlocked)

 02h	DWORD	address of XMS block in KB (shift left by 10 for abs. address)

 06h	DWORD	size of XMS block in KB

INT 2F 4309


2F 4310 Format of XMS driver entry point:

Copy to Main

Table 1468

Format of XMS driver entry point:

Offset	Size	Description

 00h  5 BYTEs	jump to actual handler

either short jump (EBh XXh) followed by three NOPs or

  far jump (EAh XXXX:XXXX) to a program which has hooked itself

  into the XMS driver chain

Note:	to hook into the XMS driver chain, a program should follow the chain of

  far jumps until it reaches the short jump of the driver at the end

  of the chain; this short jump is to be replaced with a far jump to

  the new handler's entry point, which should contain a short jump

  followed by three NOPs.  The new handler must return to the address

  pointed at by the short jump which was overwritten.  Using this

  method, the new handler becomes the first to see every XMS request.

INT 2F 4310


2F 4310 Call the XMS driver "Get XMS version number" function with:

Copy to Main

Table 1469

Call the XMS driver "Get XMS version number" function with:

AH = 00h

Return: AX = XMS version (in BCD, AH=major, AL=minor)

BX = internal revision number (in BCD for HIMEM.SYS)

DX = High Memory Area (HMA) state

    0001h HMA (1M to 1M + 64K) exists

    0000h HMA does not exist

SeeAlso: #1470,#1471,#1476,#1477,#1483

INT 2F 4310


2F 4310 Call the XMS driver "Request High Memory Area" function with:

Copy to Main

Table 1470

Call the XMS driver "Request High Memory Area" function with:

AH = 01h

DX = memory in bytes (for TSR or device drivers)

    FFFFh if application program

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,90h,91h,92h) (see #1494)

Note:	HIMEM.SYS will fail function 01h with error code 91h if AL=40h and

  DX=KB free extended memory returned by last call of function 08h

SeeAlso: #1471,#1503

INT 2F 4310


2F 4310 Call the XMS driver "Release High Memory Area" function with:

Copy to Main

Table 1471

Call the XMS driver "Release High Memory Area" function with:

AH = 02h

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,90h,93h) (see #1494)

SeeAlso: #1470

INT 2F 4310


2F 4310 Call the XMS driver "Global enable A20, for using the HMA" function with:

Copy to Main

Table 1472

Call the XMS driver "Global enable A20, for using the HMA" function with:

AH = 03h

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,82h) (see #1494)

SeeAlso: #1473,#1474

INT 2F 4310


2F 4310 Call the XMS driver "Global disable A20" function with:

Copy to Main

Table 1473

Call the XMS driver "Global disable A20" function with:

AH = 04h

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,82h,94h) (see #1494)

SeeAlso: #1472,#1475

INT 2F 4310


2F 4310 Call the XMS driver "Local enable A20" function with:

Copy to Main

Table 1474

Call the XMS driver "Local enable A20" function with:

AH = 05h

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,82h) (see #1494)

Note:	this function is used for direct access to extended memory

SeeAlso: #1472,#1475

INT 2F 4310


2F 4310 Call the XMS driver "Local disable A20" function with:

Copy to Main

Table 1475

Call the XMS driver "Local disable A20" function with:

AH = 06h

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,82h,94h) (see #1494)

SeeAlso: #1473,#1474

INT 2F 4310


2F 4310 Call the XMS driver "Query A20 state" function with:

Copy to Main

Table 1476

Call the XMS driver "Query A20 state" function with:

AH = 07h

Return: AX = status

    0001h enabled

    0000h disabled

BL = error code (00h,80h,81h) (see #1494)

SeeAlso: #1469,#1477

INT 2F 4310


2F 4310 Call the XMS driver "Query free extended memory" function with:

Copy to Main

Table 1477

Call the XMS driver "Query free extended memory" function with:

AH = 08h

BL = 00h (some implementations leave BL unchanged on success)

Return: AX = size of largest extended memory block in KB

DX = total extended memory in KB

BL = error code (00h,80h,81h,A0h) (see #1494)

Note:	this function does not include the HMA in the returned memory sizes

SeeAlso: #1469,#1476,#1478,#1490

INT 2F 4310


2F 4310 Call the XMS driver "Allocate extended memory block" function with:

Copy to Main

Table 1478

Call the XMS driver "Allocate extended memory block" function with:

AH = 09h

DX = Kbytes needed

Return: AX = status

    0001h success

DX = handle for memory block

    0000h failure

BL = error code (80h,81h,A0h) (see #1494)

SeeAlso: #1477,#1480,#1483,#1484,#1485,#1491

INT 2F 4310


2F 4310 Call the XMS driver "Free extended memory block" function with:

Copy to Main

Table 1479

Call the XMS driver "Free extended memory block" function with:

AH = 0Ah

DX = handle of block to free

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,A2h,ABh) (see #1494)

SeeAlso: #1478,#1491

INT 2F 4310


2F 4310 Call the XMS driver "Move extended memory block" function with:

Copy to Main

Table 1480

Call the XMS driver "Move extended memory block" function with:

AH = 0Bh

DS:SI -> EMM structure (see #1495)

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h-82h,A3h-A9h) (see #1494)

Note:	if either handle in the EMM structure is 0000h, the corresponding

  offset is considered to be an absolute segment:offset address in

  directly addressable memory

SeeAlso: #1478,#1481

INT 2F 4310


2F 4310 Call the XMS driver "Lock extended memory block" function with:

Copy to Main

Table 1481

Call the XMS driver "Lock extended memory block" function with:

AH = 0Ch

DX = handle of block to lock

Return: AX = status

    0001h success

DX:BX = 32-bit physical address of locked block

    0000h failure

BL = error code (80h,81h,A2h,ACh,ADh) (see #1494)

Note:	MS Windows 3.x rejects this function for handles allocated after

  Windows started

SeeAlso: #1478,#1480,#1482

INT 2F 4310


2F 4310 Call the XMS driver "Unlock extended memory block" function with:

Copy to Main

Table 1482

Call the XMS driver "Unlock extended memory block" function with:

AH = 0Dh

DX = handle of block to unlock

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,A2h,AAh) (see #1494)

SeeAlso: #1481

INT 2F 4310


2F 4310 Call the XMS driver "Get handle information" function with:

Copy to Main

Table 1483

Call the XMS driver "Get handle information" function with:

AH = 0Eh

DX = handle for which to get info

Return: AX = status

    0001h success

BH = block's lock count

BL = number of free handles left

DX = block size in KB

    0000h failure

BL = error code (80h,81h,A2h) (see #1494)

BUG:	MS Windows 3.10 acts as though unallocated handles are in use

Note:	MS Windows 3.00 has problems with this call

SeeAlso: #1469,#1478,#1492

INT 2F 4310


2F 4310 Call the XMS driver "Reallocate extended memory block" function with:

Copy to Main

Table 1484

Call the XMS driver "Reallocate extended memory block" function with:

AH = 0Fh

DX = handle of block

BX = new size of block in KB

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,81h,A0h-A2h,ABh) (see #1494)

SeeAlso: #1478,#1487

INT 2F 4310


2F 4310 Call the XMS driver "Request upper memory block" function with:

Copy to Main

Table 1485

Call the XMS driver "Request upper memory block" function with:

AH = 10h

DX = size of block in paragraphs

Return: AX = status

    0001h success

BX = segment address of UMB

DX = actual size of block

    0000h failure

BL = error code (80h,B0h,B1h) (see #1494)

DX = largest available block

Notes:	Upper Memory consists of non-EMS memory between 640K and 1024K

the XMS driver need not implement functions 10h through 12h to be

  considered compliant with the standard

under DOS 5+, if CONFIG.SYS contains the line DOS=UMB, then no upper

  memory blocks will be available for allocation because all blocks

  have been grabbed by MS-DOS while booting

SeeAlso: #1478,#1486,#1504,INT 21/AH=58h"UMB"

INT 2F 4310


2F 4310 Call the XMS driver "Release upper memory block" function with:

Copy to Main

Table 1486

Call the XMS driver "Release upper memory block" function with:

AH = 11h

DX = segment address of UMB to release

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,B2h) (see #1494)

Note:	the XMS driver need not implement functions 10h through 12h to be

  considered compliant with the standard

SeeAlso: #1479,#1485,#1487

INT 2F 4310


2F 4310 Call the XMS v3.0+ driver "Reallocate upper memory block" function with:

Copy to Main

Table 1487

Call the XMS v3.0+ driver "Reallocate upper memory block" function with:

AH = 12h

DX = segment address of UMB to resize

BX = new size of block in paragraphs

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,B0h,B2h) (see #1494)

DX = maximum available size (RM386)

Note:	the XMS driver need not implement functions 10h through 12h to be

  considered compliant with the standard

SeeAlso: #1484,#1485,#1486,#1502

INT 2F 4310


2F 4310 Call the QEMM v5.11 "???" function with:

Copy to Main

Table 1488

Call the QEMM v5.11 "???" function with:

AH = 34h  (QEMM 5.11 only, undocumented)

???

Return: ???

SeeAlso: #1489

INT 2F 4310


2F 4310 Call the QEMM v5.11 "???" function with:

Copy to Main

Table 1489

Call the QEMM v5.11 "???" function with:

AH = 44h  (QEMM 5.11 only, undocumented)

???

Return: ???

SeeAlso: #1488,#1502

INT 2F 4310


2F 4310 Call the XMS v3.0 driver "Query free extended memory" function with:

Copy to Main

Table 1490

Call the XMS v3.0 driver "Query free extended memory" function with:

AH = 88h

Return: EAX = largest block of extended memory, in KB

BL = status (00h,80h,81h,A0h) (see #1494)

ECX = physical address of highest byte of memory

    (valid even on error codes 81h and A0h)

EDX = total Kbytes of extended memory (0 if status A0h)

BUG:	HIMEM v3.03-3.07 crash on an 80286 machine if any of the 8Xh functions

  are called

SeeAlso: #1477,#1491

INT 2F 4310


2F 4310 Call the XMS v3.0 driver "Allocate any extended memory" function with:

Copy to Main

Table 1491

Call the XMS v3.0 driver "Allocate any extended memory" function with:

AH = 89h

EDX = Kbytes needed

Return: AX = status

    0001h success

DX = handle for allocated block (free with AH=0Ah) (see #1479)

    0000h failure

BL = status (80h,81h,A0h,A1h,A2h) (see #1494)

SeeAlso: #1478,#1490

INT 2F 4310


2F 4310 Call the XMS v3.0 driver "Get extended EMB handle information" function with:

Copy to Main

Table 1492

Call the XMS v3.0 driver "Get extended EMB handle information" function with:

AH = 8Eh

DX = handle

Return: AX = status

    0001h success

BH = block's lock count

CX = number of free handles left

EDX = block size in KB

    0000h failure

BL = status (80h,81h,A2h) (see #1494)

BUG:	MS-DOS 6.0 HIMEM.SYS leaves CX unchanged

SeeAlso: #1483,#1491,#1493

INT 2F 4310


2F 4310 Call the XMS v3.0 driver "Reallocate any extended memory block" function with:

Copy to Main

Table 1493

Call the XMS v3.0 driver "Reallocate any extended memory block" function with:

AH = 8Fh

DX = unlocked memory block handle

EBX = new size in KB

Return: AX = status

    0001h success

    0000h failure

BL = status (80h,81h,A0h-A2h,ABh) (see #1494)

BUG:	HIMEM v3.03-3.07 crash on an 80286 machine if any of the 8Xh functions

  are called

SeeAlso: #1484,#1492

INT 2F 4310


2F 4310 Values for XMS error code returned in BL:

Copy to Main

Table 1494

Values for XMS error code returned in BL:

 00h	successful

 80h	function not implemented

 81h	Vdisk was detected

 82h	an A20 error occurred

 8Eh	a general driver error

 8Fh	unrecoverable driver error

 90h	HMA does not exist or is not managed by XMS provider

 91h	HMA is already in use

 92h	DX is less than the /HMAMIN= parameter

 93h	HMA is not allocated

 94h	A20 line still enabled

 A0h	all extended memory is allocated

 A1h	all available extended memory handles are allocated

 A2h	invalid handle

 A3h	source handle is invalid

 A4h	source offset is invalid

 A5h	destination handle is invalid

 A6h	destination offset is invalid

 A7h	length is invalid

 A8h	move has an invalid overlap

 A9h	parity error occurred

 AAh	block is not locked

 ABh	block is locked

 ACh	block lock count overflowed

 ADh	lock failed

 B0h	only a smaller UMB is available

 B1h	no UMB's are available

 B2h	UMB segment number is invalid

INT 2F 4310


2F 4310 Format of EMM structure:

Copy to Main

Table 1495

Format of EMM structure:

Offset	Size	Description

 00h	DWORD	number of bytes to move (must be even)

 04h	WORD	source handle

 06h	DWORD	offset into source block

 0Ah	WORD	destination handle

 0Ch	DWORD	offset into destination block

Notes:	if source and destination overlap, only forward moves (source base

  less than destination base) are guaranteed to work properly

if either handle is zero, the corresponding offset is interpreted

  as a real-mode address referring to memory directly addressable

  by the processor

INT 2F 4310


2F 4310 Format of XMS handle info [array]:

Copy to Main

Table 1496

Format of XMS handle info [array]:

Offset	Size	Description

 00h	BYTE	handle

 01h	BYTE	lock count

 02h	DWORD	handle size

 06h	DWORD	handle physical address (only valid if lock count nonzero)

SeeAlso: #1466

INT 2F 4310


2F 4310 Call the Cloaking v1.01 "Client Registration" function with:

Copy to Main

Table 1497

Call the Cloaking v1.01 "Client Registration" function with:

AH = 7Eh

BX = subfunction

    0000h get client registration count

    0001h get client registration structures

ES:DI -> buffer for registration structures

Return: AX = status

    0000h failed

    0001h successful

---subfunction 00h---

BX = size of client structure in bytes

CX = number of clients installed

---subfunction 01h---

ES:DI buffer filled

SeeAlso: #1498,#1500,INT 2C/AX=0033h

INT 2F 4310


2F 4310 Call the Cloaking v1.01 "Verify Cloaking Host" function with:

Copy to Main

Table 1498

Call the Cloaking v1.01 "Verify Cloaking Host" function with:

AH = 7Fh

Return: AX = status

    0000h failed

    0001h (successful) if installed

BX = version (0101h for v1.01)

CX = flags

    bit 0: host is VCPI-based

DS:DX -> ASCIZ Cloaking host signature

    "CLOAKING.EXE"0, followed by a far-call entry point to

      uninstall host (see #1499) in Helix's CLOAKING.EXE

SeeAlso: #1497,#1500

Index:	installation check;Cloaking host|installation check;CLOAKING.EXE

INT 2F 4310


2F 4310 Call the CLOAKING.EXE "Uninstall Host" function with:

Copy to Main

Table 1499

Call the CLOAKING.EXE "Uninstall Host" function with:

Return:	AX = 4F4Bh ('OK') if successfully uninstalled protected-mode code

INT 2F 4310


2F 4310 Call the Cloaking "Start Protected-Mode Client" function with:

Copy to Main

Table 1500

Call the Cloaking "Start Protected-Mode Client" function with:

AH = 82h

DX = XMS handle of locked block containing protected-mode code

CL = code size (00h 16-bit, else 32-bit)

ESI, EDI = parameters to pass to protected-mode code

Return: AX = status

    nonzero success

    0000h failed

BL = error code (A2h,B0h) (see #1494)

Notes:	this function calls a user initialization function at offset 0 in

  the XMS memory block (see #1501)

supported by Helix's RM386 v6.00 and Helix's CLOAKING.EXE

SeeAlso: #1497,#1498

INT 2F 4310


2F 4310 Values user initialization function is called with:

Copy to Main

Table 1501

Values user initialization function is called with:

EBX = physical address of block's start

ESI = user data from function 82h call

EDI = user data from function 82h call

CS = code selector for XMS block at EBX (16-bit or 32-bit)

DS = data selector for XMS block, starting at EBX

ES = selector for V86 memory access to full real-mode 1088K

GS = selector for full 4G flat address space

SS:ESP -> stack provided by host

Return: via 32-bit FAR return

Note:	the initialization function may call any protected-mode Cloaking

  service; it should store the values of DS, ES, and GS for future

  reference

INT 2F 4310


2F 4310 Call the Netroom RM386 v6.00 "Reallocate upper memory block" function with:

Copy to Main

Table 1502

Call the Netroom RM386 v6.00 "Reallocate upper memory block" function with:

AH = 80h

DX = segment address of UMB to resize

BX = new size of block in paragraphs

Return: AX = status

    0001h success

    0000h failure

BL = error code (80h,B0h,B2h) (see #1494)

DX = maximum available size

Note:	this function is identical to function 12h

SeeAlso: #1487,#1503

INT 2F 4310


2F 4310 Call the Netroom RM386 v6.00 "re-enable HMA allocation" function with:

Copy to Main

Table 1503

Call the Netroom RM386 v6.00 "re-enable HMA allocation" function with:

AH = 81h

Return: AX = 0001h (success)

SeeAlso: #1470,#1502,#1504

INT 2F 4310


2F 4310 Call the Netroom RM386 v6.00 "Create new UMB entry" function with:

Copy to Main

Table 1504

Call the Netroom RM386 v6.00 "Create new UMB entry" function with:

AH = 83h

BX = segment of high-memory block

DX = first page of start of block

CX = number of consecutive pages in block

DI = start of UMB in block

Return: AX = 0001h (success)

DI = segment of first high-DOS block

Note:	the new UMB is not linked into the high-memory chain

SeeAlso: #1485,#1503,#1505

INT 2F 4310


2F 4310 Call the Netroom RM386 v6.00 "Get all XMS handles info" function with:

Copy to Main

Table 1505

Call the Netroom RM386 v6.00 "Get all XMS handles info" function with:

AH = 84h

CX = size of buffer for handle info

ES:DI -> buffer for handle info (see #1496)

Return: AX = 0001h (success)

DX = current number of allocated XMS handles

SeeAlso: #1504,#1490

INT 2F 4310


2F 4310 Call XMZ v1.02 "Get HMA Information" function with:

Copy to Main

Table 2712

Call XMZ v1.02 "Get HMA Information" function with:

AH = FFh  (XMZ only)

AL = 01h

Return: AX = 1 on success

DX = minimum HMA allocation size (/HMAMIN=)

BX = actual size of HMA allocation, if in use (i.e. the value in DX

      when XMS function 1 was called)

SeeAlso: #2713

INT 2F 4310


2F 4310 Call XMZ v1.02 "Get EMB Handle Information" function with:

Copy to Main

Table 2713

Call XMZ v1.02 "Get EMB Handle Information" function with:

AH = FFh  (XMZ only)

AL = 02h

Return: AX = 1 on success

DX = number of EMB handles configured (/NUMHANDLES=)

BX = offset in XMZ's segment of the handle table (use segment of

      entry point) (see #2714)

SeeAlso: #2712

INT 2F 4310


2F 4310 Format of XMZ v1.02 EMB Handle structure:

Copy to Main

Table 2714

Format of XMZ v1.02 EMB Handle structure:

Offset	Size	Description

 00h    BYTE    flag byte

                04h unused handle slot

                02h in-use handle slot

                01h handle slot that represents a free block

 01h    BYTE    lock count

 02h    WORD    block start address (1K increments)

 04h    WORD    block length (1K increments)

SeeAlso: #2713

INT 2F 4310


2F 4330 Call parameters for external A20 handler are:

Copy to Main

Table 1506

Call parameters for external A20 handler are:

AX = function

    0000h disable A20

    0001h enable A20

    0002h get A20 state

Return: AX = status (functions 0000h and 0001h)

    0000h failure

    0001h successful

AX = A20 state (function 0002h)

    0000h disabled

    0001h enabled

Note:	HIMEM.SYS only calls function 0002h if the returned CL indicated that

  the handler supports the call

INT 2F 4330


2F 43E0 Format of DPMS 1.0 server structure:

Copy to Main

Table 1507

Format of DPMS 1.0 server structure:

Offset	Size	Description

 00h  4 BYTEs	signature string "DPMS"

 04h  2 BYTEs	DPMS version (major,minor)

 06h  8 BYTEs	blank-padded server OEM name

 0Eh  2 BYTEs	OEM server version (major,minor)

 10h	WORD	DPMS flags (see #1508)

 12h	BYTE	CPU type

(02h = 286, 03h = 386 or higher, higher values allowed)

INT 2F 43E0


2F 43E0 Bitfields for DPMS flags:

Copy to Main

Table 1508

Bitfields for DPMS flags:

Bit(s)	Description

 0	fast processor reset available (286 only)

 1	DPMS server is enabled

 2	memory is remapped

 3-15	reserved (undefined)

INT 2F 43E0


2F 43E0 Format of beta DPMS registration structure:

Copy to Main

Table 1509

Format of beta DPMS registration structure:

Offset	Size	Description

 00h	DWORD	real-mode API entry point (see #1511)

 04h	DWORD	16-bit protected-mode API entry point (see #1511)

 08h  8 BYTEs	reserved (0)

 10h  8 BYTEs	blank-padded server OEM name

 18h	WORD	flags

bit 0: fast processor reset available (286 only)

bits 1-15 reserved (undefined)

 1Ah  2 BYTEs	DPMS version (major,minor)

 1Ch	BYTE	CPU type (02h = 286, 03h = 386 or higher)

INT 2F 43E0


2F 43E1 Format of DPMS client interface structure:

Copy to Main

Table 1510

Format of DPMS client interface structure:

Offset	Size	Description

 00h	WORD	0000h (structure version / flags)

 02h  8 BYTEs	blank-padded client name

 0Ah  7 BYTEs	real/virtual-86 mode API code (see #1511)

 11h	BYTE	space for return instruction

set to C3h for near return, CBh for far return

 12h  7 BYTEs	16-bit protected-mode API code (see #1511)

 19h	BYTE	space for return instruction

set to C3h for near return, CBh for far return

 1Ah  9 BYTEs	32-bit protected-mode API code (see #1511)

 23h	BYTE	space for return instruction

set to C3h for near return, CBh for far return

Note:	the DPMS server fills the return opcode bytes with zeros and DPMS

  requests will thus crash the system unless the application

  explicitly sets them (some early versions set them to C3h by

  default, but one should not rely on that)

INT 2F 43E1


2F 43E1 Call DPMS entry point with:

Copy to Main

Table 1511

Call DPMS entry point with:

AX = 0000h unregister client from server

 ---control transfer functions---

AX = 0100h call protected-mode procedure

CX = number of words of stack to copy

ES:(E)DI -> callup/down register structure (see #1513)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0101h call real-mode procedure (RETF return)

CX = number of words of stack to copy

ES:(E)DI -> callup/down register structure (see #1513)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0102h call real-mode procedure (IRET return)

CX = number of words of stack to copy

ES:(E)DI -> callup/down register structure (see #1513)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0103h call real-mode interrupt handler

BL = interrupt number

CX = number of words of stack to copy

ES:(E)DI -> callup/down register structure (see #1513)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0104h register default protected mode procedure

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0105h register default real-mode procedure (RETF return)

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

Note:	the procedure will be called from 16-bit prot. mode

AX = 0106h register default real-mode procedure (IRET return)

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

Note:	the procedure will be called from 16-bit prot. mode

AX = 0107h register default real-mode interrupt handler

BL = interrupt number

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

Note:	the handler will be called from 16-bit protected mode

AX = 0108h register default real-mode procedure (RETF return)

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

Note:	the procedure will be called from 32-bit prot. mode

AX = 0109h register default real-mode procedure (IRET return)

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

Note:	the procedure will be called from 32-bit prot. mode

AX = 010Ah register default real-mode interrupt handler

BL = interrupt number

ES:(E)DI -> default register structure (see #1514)

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

Note:	the handler will be called from 32-bit protected mode

 ---descriptor management---

AX = 0200h allocate descriptors

CX = number of descriptors to allocate

Return: CF clear if successful

    AX = selector for first descriptor allocated

CF set on error

    AX = error code (see #1512)

AX = 0201h free a descriptor

BX = selector for descriptor

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0202h create alias descriptor

BX = selector for descriptor to be aliased

Return: CF clear if successful

    AX = alias descriptor

CF set on error

    AX = error code (see #1512)

AX = 0203h build alias to real-mode segment

BX = descriptor

CX = real-mode segment

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0204h set descriptor base

BX = descriptor

CX:DX = base address

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0205h set descriptor limit

BX = descriptor

CX = limit

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0206h set descriptor type/attribute

BX = descriptor

CL = type

CH = attribute

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0207h get descriptor base

BX = descriptor

Return: CF clear if successful

    CX:DX = base address

CF set on error

    AX = error code (see #1512)

 ---linear memory functions---

AX = 0300h get size of largest free block of memory

Return: CF clear if successful

    BX:CX = size

CF set on error

    AX = error code (see #1512)

AX = 0301h allocate block of extended memory

BX:CX = required size

Return: CF clear if successful

    BX:CX = base address

    SI:DI = handle

CF set on error

    AX = error code (see #1512)

AX = 0302h free block of extended memory

SI:DI = handle

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0303h map linear memory

ES:(E)DI -> DDS (see #1515)

Return: CF clear if successful

    BX:CX = base address

    SI:DI = handle

CF set on error

    AX = error code (see #1512)

AX = 0304h unmap linear memory

SI:DI = handle

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0305h get page table entries

ESI = linear address

(E)CX = count

ES:(E)DI -> buffer for page table entries

Return: CF clear if successful

    ES:(E)DI buffer filled

CF set on error

    AX = error code (see #1512)

AX = 0306h set page table entries

EBX = linear memory handle

ESI = linear address

(E)CX = count

ES:(E)DI -> buffer containing page table entries

Return: CF clear if successful

CF set on error

    AX = error code (see #1512)

AX = 0307h get largest mappable block size

Return: CF clear if successful

    BX:CX = size

CF set on error

    AX = error code (see #1512)

 ---miscellaneous---

AX = 0400h relocate segment to extended memory

ES:SI = base address

CX = limit

BL = type

BH = attribute

DX = selector or 0000h

Return: CF clear if successful

    AX = selector

    BX:CX = new base address

    SI:DI = handle

CF set on error

    AX = error code (see #1512)

Note:	the beta DPMS specification, which is still supported by the Novell

  DOS 7.0 DPMS host, only supported functions 0100h-0103h, 0200h-0207h,

  0300h-0304h, and 0400h

INT 2F 43E1


2F 43E1 Values for DPMS error code:

Copy to Main

Table 1512

Values for DPMS error code:

 8000h	general error

 8001h	unsupported function

 8002h	unable to switch to protected mode

 8004h	no default stack defined

 8005h	unknown client

 8010h	resource unavailable

 8011h	descriptor unavailable

 8012h	linear memory unavailable

 8013h	physical memory unavailable

 8021h	invalid value

 8022h	invalid selector

 8023h	invalid handle

 8025h	invalid linear address

INT 2F 43E1


2F 43E1 Format of DPMS callup/down register structure:

Copy to Main

Table 1513

Format of DPMS callup/down register structure:

Offset	Size	Description

 00h	DWORD	EDI

 04h	DWORD	ESI

 08h	DWORD	EBP

 0Ch  4 BYTEs	reserved (0) (ESP, may be used by DPMS server)

 10h	DWORD	EBX

 14h	DWORD	EDX

 18h	DWORD	ECX

 20h	DWORD	EAX

 24h	DWORD	EIP

 28h	WORD	CS

 2Ah  2 BYTEs	reserved (0)

 2Ch	DWORD	EFLAGS

 30h	DWORD	ESP

 34h	WORD	SS

 36h  2 BYTEs	reserved (0)

 38h	WORD	ES

 3Ah  2 BYTEs	reserved (0)

 3Ch	WORD	DS

 3Eh  2 BYTEs	reserved (0)

 40h	WORD	FS

 42h  2 BYTEs	reserved (0)

 44h	WORD	GS

 46h  2 BYTEs	reserved (0)

INT 2F 43E1


2F 43E1 Format of DPMS default register structure:

Copy to Main

Table 1514

Format of DPMS default register structure:

Offset	Size	Description

 00h	DWORD	EIP

 04h	WORD	CS

 06h  2 BYTEs	reserved (0)

 08h	WORD	number of words to copy from stack to stack

 0Ah	BYTE	(call) 00h

(ret) nonzero if call could not be made

 0Bh	BYTE	reserved (may be used by some servers)

 0Ch	DWORD	ESP

 10h	WORD	SS

 12h  2 BYTEs	reserved (0)

 14h	WORD	ES

 16h  2 BYTEs	reserved (0)

 18h	WORD	DS

 1Ah  2 BYTEs	reserved (0)

 1Ch	WORD	FS

 1Eh  2 BYTEs	reserved (0)

 20h	WORD	GS

 22h  2 BYTEs	reserved (0)

 24h  9 BYTEs	API entry code (filled in by server)

INT 2F 43E1


2F 43E1 Format of DPMS lock DDS:

Copy to Main

Table 1515

Format of DPMS lock DDS:

Offset	Size	Description

 00h	DWORD	total size in bytes

 04h	DWORD	offset

 08h	WORD	segment or selector

 0Ah	WORD	reserved

 0Ch	WORD	maximum number of physical blocks structure has space for

 0Eh	WORD	number of physical blocks listed

 10h	DWORD	physical address of first block

 14h	DWORD	size in bytes of first block

...

INT 2F 43E1


2F 4A10 Bitfields for SMARTDRV status:

Copy to Main

Table 1516

Bitfields for SMARTDRV status:

Bit(s)	Description

 7	not cached

 6	write-through (not write-cached)

 0-5	real drive number (0=A, 1=B...)

INT 2F 4A10


2F 4A10 Values for SMARTDRV status byte:

Copy to Main

Table 1517

Values for SMARTDRV status byte:

 00h	state unknown

 FFh	drive double-buffered

 else	not double-buffered

INT 2F 4A10


2F 4A10 Format of SMARTDRV information pointer table:

Copy to Main

Table 1518

Format of SMARTDRV information pointer table:

Offset	Size	Description

 00h	WORD	offset of ??? byte/word array (byte if elements < 2000h bytes)

 02h	WORD	offset of dirty flag byte/word array (byte if elts < 2000h)

each byte/word is a bit string of the dirty sectors in element

 04h	WORD	offset of word array containing low halves of unique

  identifiers for the corresponding element's contents

 06h	WORD	offset of word array containing high halves of unique

  identifiers for the corresponding element's contents

 08h	WORD	offset of WORD containing current number of elements in cache

INT 2F 4A10


2F 4A11 Values for DBLSPACE function status:

Copy to Main

Table 1519

Values for DBLSPACE function status:

 0000h	successful

 0100h	bad function

 0101h	invalid drive

 0102h	not a compressed drive

 0103h	drive already swapped

 0104h	drive not swapped

INT 2F 4A11


2F 4A11 Format of DBLSPACE activation record:

Copy to Main

Table 1520

Format of DBLSPACE activation record:

Offset	Size	Description

 00h  2 BYTEs	signature "MD" (4Dh 44h)

 02h	BYTE	4Dh ('M') mount command

 03h	BYTE	error code (set to FFh before calling) (see #1521)

 04h	BYTE	host drive number (0=A:)

 05h	???	DISK_UNIT structure (not documented)

INT 2F 4A11


2F 4A11 Values for DBLSPACE Mount error code:

Copy to Main

Table 1521

Values for DBLSPACE Mount error code:

 00h	successful

 01h	drive letter not available for DoubleSpace

 02h	drive letter already in use

 03h	no more disk units (increase MaxRemovableDrives in .INI)

 09h	CVF too fragmented

INT 2F 4A11


2F 4A11 Format of DBLSPACE free space record:

Copy to Main

Table 1522

Format of DBLSPACE free space record:

Offset	Size	Description

 00h	DWORD	total number of sectors in drive's sector heap

 04h	DWORD	number of free sectors in drive's sector heap

INT 2F 4A11


2F 4A12 Format of LZSINFO structure:

Copy to Main

Table 1523

Format of LZSINFO structure:

Offset	Size	Description

 00h  6 BYTEs	signature "LZSAPI"

 06h	WORD	server version (200 (0C8h) for Stacker 4 and Stacker Anywhere)

 08h  4 BYTEs	vendor signature

"STAC" = Stac Electronics, Inc.

 0Ch  6 BYTEs	???

 12h	WORD	bit flags: server status/capabilities (see #1524)

 14h	DWORD	-> Stacker 3.X-compatible compression procedure

 18h	DWORD	-> Stacker 3.X-compatible decompression procedure

 1Ch  4 BYTEs	reserved (always set to 0)

 20h	DWORD	-> incremental Stacker 3.x-compatible compression procedure

  (see #1525)

 24h  4 BYTEs	???

 28h	DWORD	-> incremental Stacker 3.x-compatible decompression procedure

  (see #1526)

 2Ch  4	BYTES	???

 30h	DWORD	-> new (Stacker 4) compression procedure

 34h  4 BYTEs	???

 38h	DWORD	-> new (Stacker 4) decompression procedure

Notes:	Stacker 4 usally keeps two different data-compression algorithms in

  memory (preferably in XMA):

    1) new (Stacker 4) data compression algorithm (4K LZ77 with hashing

  and static Huffman encoding), and

    2) old (Stacker 3.x-compatible) one (2K LZ77 with hashing), which

  is used to work with STACVOL files created under older

  versions of Stacker.

INT 2F 4A12


2F 4A12 Bitfields for LZSAPI capabilities:

Copy to Main

Table 1524

Bitfields for LZSAPI capabilities:

Bit(s)	Description

 0	???

 1	busy/error flag

 2-10	???

 11	maximum compressor/decompressor presented

INT 2F 4A12


2F 4A12 Call Stacker 3.x-style non-incremental functions with:

Copy to Main

Table 1525

Call Stacker 3.x-style non-incremental functions with:

STACK:	DWORD	return address for compress/decompress procedure

WORD	compression algorithm parameters (see #1527)

WORD	size of destination buffer (in bytes)

DWORD	address of destination buffer

WORD	size of source buffer (in bytes)

DWORD	address of source buffer

Return: (compression/decompression procedure)

AX = size of resulting data in destination buffer

    0000h if error (either destination buffer too small or error in

  compressed data)

INT 2F 4A12


2F 4A12 Call Stacker 4-style incremental procedures with:

Copy to Main

Table 1526

Call Stacker 4-style incremental procedures with:

STACK:	DWORD	return address for compr./decompr. procedure

DWORD	address of LZSSWAP structure (see #1528)

if 0000:0000, procedure uses non-incremental technique

WORD	compression algorithm parameters (see #1527)

WORD	size of destination buffer (in bytes)

DWORD	address of destination buffer

WORD	size of source buffer (in bytes)

DWORD	address of source buffer

INT 2F 4A12


2F 4A12 Values for Compression algorithm parameters:

Copy to Main

Table 1527

Values for Compression algorithm parameters:

Value	Compression level (/P=xx parameter)

 07F9h	  1

 0621h	  2

 0625h	  3

 0665h	  4

 0669h	  5

 06E9h	  6

 06EDh	  7

 07D1h	  8

 07D9h	  9

INT 2F 4A12


2F 4A12 Format of LZSSWAP structure:

Copy to Main

Table 1528

Format of LZSSWAP structure:

Offset	Size	Description

 00h  2 BYTEs	signature "CS"

 02h  6 BYTEs	reserved

 08h	DWORD	address of destination buffer swapping procedure

 0Ch	DWORD	address of stack swapping procedure

INT 2F 4A12


2F 4A13 Format of DBLSPACE entry point record:

Copy to Main

Table 1529

Format of DBLSPACE entry point record:

Offset	Size	Description

 00h	DWORD	pointer to FAR function for ???

 04h  5 BYTEs	FAR JUMP instruction to ???

INT 2F 4A13


2F 4B01 Format of task switcher callback info structure:

Copy to Main

Table 1530

Format of task switcher callback info structure:

Offset	Size	Description

 00h	DWORD	pointer to next callback info structure

 04h	DWORD	pointer to notification function (see #1531)

 08h	DWORD	reserved

 0Ch	DWORD	address of zero-terminated list of API info structures

(see #1534)

INT 2F 4B01


2F 4B01 Values task switcher notification function is called with:

Copy to Main

Table 1531

Values task switcher notification function is called with:

AX = function

    0000h switcher initialization

Return: AX = status

    0000h if OK to load

    nonzero to abort task switcher

    0001h query suspend

BX = session ID

Return: AX = status

    0000h if OK to switch session

    0001h if not

    0002h suspend session

BX = session ID

interrupts disabled

Return: AX = 0000h if OK to switch session

   = 0001h if not

    0003h activate session

BX = session ID

CX = session status flags

bit 0: set if first activation of session

bits 1-15: reserved (0)

interrupts disabled

Return: AX = 0000h

    0004h session active

BX = session ID

CX = session status flags

bit 0: set if first activation of session

bits 1-15: reserved (0)

Return: AX = 0000h

    0005h create session

BX = session ID

Return: AX = 0000h if OK to create session

   = 0001h if not

    0006h destroy session

BX = session ID

Return: AX = 0000h

    0007h switcher termination

BX = flags

    bit 0: set if calling switcher is only switcher loaded

    bits 1-15: reserved (0)

Return: AX = 0000h

ES:DI -> task switcher entry point (see #1532)

Notes:	function 0000h is generally called by the program which controls or

  invokes the task switcher, rather than by the task switcher itself;

  the entry point supplied to this function is not necessarily the

  entry point to the task switcher itself, and may be 0000h:0000h.  If

  any client indicates that loading is not possible, all clients will

  be called with function 0007h; thus it is possible for a client to

  receive a termination notice without a corresponding initialization

  notice.

except for functions 0002h and 0003h, the notification handler is

  called with interrupts enabled and may make any INT 21h function

  call; interrupts must not be enabled in functions 0002h and 0003h

function 0007h may be called with ES:DI = 0000h:0000h if the entry

  point is no longer valid

INT 2F 4B01


2F 4B02 Call task switcher entry point with:

Copy to Main

Table 1532

Call task switcher entry point with:

AX = 0000h get version

Return: CF clear if successful

    AX = 0000h

    ES:BX -> task switcher version struct (see #1533)

CF set if unsupported function

AX = 0001h test memory region

ES:DI -> first byte to be tested

CX = size of region to test

Return: CF clear if successful

    AX = memory type of tested region

0000h global

0001h global and local

0002h local (replaced on session switch)

CF set if unsupported function

AX = 0002h suspend switcher

ES:DI -> new task switcher's entry point

Return: CF clear if successful

    AX = state

0000h switcher has been suspended

0001h switcher not suspended, new switcher must

abort

0002h switcher not suspended, but new switcher

may run anyway

CF set if unsupported function

AX = 0003h resume switcher

ES:DI -> new task switcher's entry point

Return: CF clear if successful

    AX = 0000h

CF set if unsupported function

AX = 0004h hook notification chain

ES:DI -> callback info structure to be added to chain

  (see #1530)

Return: CF clear if successful

    AX = 0000h

CF set if unsupported function

AX = 0005h unhook notification chain

ES:DI -> callback info structure to be removed from chain

  (see #1530)

Return: CF clear if successful

    AX = 0000h

CF set if unsupported function

AX = 0006h query API support

BX = asynchronous API identifier

Return: CF clear if successful

    AX = 0000h

    ES:BX -> API info structure (see #1534) for the

      client which provides the highest

      level of API support

CF set if unsupported function

INT 2F 4B02


2F 4B02 Format of task switcher version structure:

Copy to Main

Table 1533

Format of task switcher version structure:

Offset	Size	Description

 00h	WORD	major version of supported protocol  (current protocol is 1.0)

 02h	WORD	minor version of supported protocol

 04h	WORD	major version of task switcher

 06h	WORD	minor version of task switcher

 08h	WORD	task switcher ID (see AX=4B03h)

 0Ah	WORD	operation flags

bit 0: set if task switcher disabled

bits 1-15: reserved (0)

 0Ch	DWORD	pointer to ASCIZ task switcher name

("MS-DOS Shell Task Switcher" for DOSSHELL task switcher)

 10h	DWORD	pointer to previous task switcher's entry point or 0000h:0000h

INT 2F 4B02


2F 4B02 Format of API info structure:

Copy to Main

Table 1534

Format of API info structure:

Offset	Size	Description

 00h	WORD	size of structure in bytes (000Ah)

 02h	WORD	API identifier

0001h NetBIOS

0002h 802.2

0003h TCP/IP

0004h LAN Manager named pipes

0005h Novell NetWare IPX

 04h	WORD	major version \ of highest version of API for which the support

 06h	WORD	minor version / level specified in the next field is provided

 08h	WORD	support level

0001h minimal support

0002h API-level support

0003h switcher compatibility

0004h seamless compatibility

INT 2F 4B02


2F 4B05 Format of task switcher startup info structure:

Copy to Main

Table 1535

Format of task switcher startup info structure:

Offset	Size	Description

 00h  2 BYTEs	major, minor version of info structure (03h,00h)

 02h	DWORD	pointer to next startup info structure or 0000h:0000h

 06h	DWORD	0000h:0000h (ignored)

 0Ah	DWORD	ignored

 0Eh	DWORD	pointer to instance data records (see #1536)

INT 2F 4B05


2F 4B05 Format of one instance data record in array:

Copy to Main

Table 1536

Format of one instance data record in array:

Offset	Size	Description

 00h	DWORD	address of instance data (end of array if 0000h:0000h)

 04h	WORD	size of instance data

INT 2F 4B05


2F 4B20 Format of WIN.COM buffer:

Copy to Main

Table 1537

Format of WIN.COM buffer:

Offset	Size	Description

 00h 128 BYTEs	ASCIZ pathname of program to execute

 80h 128 BYTEs	commandline for program

INT 2F 4B20


2F 4E53 Values for SilverNET module ID:

Copy to Main

Table 1538

Values for SilverNET module ID:

 01h	SilverCACHE

 02h	Workstation

 03h	NetBIOS

 04h	Peer

 20h	NS Share

 80h	NetWare help TSR

INT 2F 4E53


2F 4E53 Values for SilverNET Peer parameter index (* = read-only):

Copy to Main

Table 1539

Values for SilverNET Peer parameter index (* = read-only):

 00h *	maximum outstanding SMB buffers

 02h *	maximum logged-in nodes

 04h *	number of shareable resources

 06h *	number of characters to print per time slice

 08h *	number of printers that can be shared

 0Ah *	number of nodes logged in

 0Ch *	number of files to allow opened

 0Eh	how fast to despool (/PSLICE)

 10h	audit flag

 24h *	far pointer to resource table (each resource is 96 bytes in length)

 32h *	far pointer to SFT (internal if SilverNET files > CONFIG.SYS files,

else DOS SFT)

 36h	spool flags (see #1540)

INT 2F 4E53


2F 4E53 Bitfields for spool flags:

Copy to Main

Table 1540

Bitfields for spool flags:

Bit(s)	Description

 0	LPT1 needs despooling

 1	LPT2 needs despooling

 2	LPT2 needs despooling

 4	COM1 needs despooling

 5	COM2 needs despooling

 6	COM3 needs despooling

INT 2F 4E53


2F 4E53 Values for NS Share parameter index (* = read-only):

Copy to Main

Table 1541

Values for NS Share parameter index (* = read-only):

 00h	version number (high byte = minor, low byte = major)

 10h *	segment of first lock record (other records in consecutive paragraphs)

(if PSP field = 0000h, lock record is free)

 12h *	maximum possible number of lock records

 14h *	starting segment of sharing buffer

(NS Share's sharing records are identical to DOS SHARE except that

  fields which are normally offsets into SHARE are segment numbers)

 18h *	size of sharing buffer in paragraphs

 1Ah *	total free paragraphs in sharing buffer

 1Ch *	current number of shared files

 1Eh *	current number of locked records

INT 2F 4E53


2F 4E53 Values for Workstation parameter index (* = read-only):

Copy to Main

Table 1542

Values for Workstation parameter index (* = read-only):

 00h	version number (high byte = minor, low byte = major)

 02h *	size of each network buffer for file operations

 04h *	number of redirector file buffers

 06h *	size of each print cache buffer

 08h *	number of network LPT printers

 0Ch	flush time in ticks (idle time on network printer before flushing)

 0Eh	(16 WORDs) last active time for each printer

 2Eh *	stub segment if program split into two parts

 60h	receive name number for datagram listens

 62h *	18-byte machine name

 74h *	LASTDRIVE (01h = A:, etc.)

 7Ch	row number of message box on screen

 7Eh	message time in clock ticks

 82h *	number of network adapters in use

 84h	station ID broadcast flag (never set on redirectors)

 96h *	NetBIOS names left

 98h *	NCBs left

 9Ah *	sessions left

 A2h *	total number of network printers (LPT+COM)

 A4h *	number of serial network printers

 A8h *	segment containing file cache buffers

 AAh *	segment containing print cache buffers

 ACh *	bytes remaining free in HMA before program loaded

 AEh *	start of free memory in HMA

 B2h *	flag: using HMA

INT 2F 4E53


2F 5200 Format of JAMINFO v1.10 structure:

Copy to Main

Table 1543

Format of JAMINFO v1.10 structure:

Offset	Size	Description

 00h 25 BYTEs	extended BIOS parameter block (BPB)

 19h 11 BYTEs	???

 25h	DWORD	total number of sectors in JAM archive file

(size of compressed data area)

 29h	BYTE	flags (see #1545)

 2Ah 127 BYTEs	full JAM archive file name

 A9h	WORD	the number of fragments in archive file

 ABh 96 BYTEs	archive file fragmentation list -

array of 16 FRAGMENT structures (see #1546)

10Bh	DWORD	address of the host-drive DPB (Drive Parameter Block)

10Fh	DWORD	number of free sectors in JAM archive file

113h	WORD	device status word (see #1547)

SeeAlso: #1544

INT 2F 5200


2F 5200 Format of JAMINFO v1.20 structure:

Copy to Main

Table 1544

Format of JAMINFO v1.20 structure:

Offset	Size	Description

 00h 25 BYTEs	extended BIOS parameter block (BPB)

 19h	BYTE	physical driver number

 1Ah	BYTE	reserved

 1Bh	BYTE	extended boot record signature

 1Ch	DWORD	volume serial number

 20h 11 BYTEs	volume label

 2Bh  8 BYTEs	file system ID

 33h	DWORD	total number of sectors in JAM archive file

(size of compressed data area)

 37h	BYTE	flags (see #1545)

 38h 128 BYTEs	full JAM archive file name

 B8h	WORD	the number of fragments in archive file

 BAh 96 BYTEs	archive file fragmentation list -

array of 16 FRAGMENT structures (see #1546)

11Ah	DWORD	address of the host-drive DPB (Drive Parameter Block)

11Eh	DWORD	number of free sectors in JAM archive file

122h	WORD	device status word (see #1547)

Note:	the first 33h bytes are copied from the archive file's boot sector

SeeAlso: #1543

INT 2F 5200


2F 5200 Bitfields for JAMINFO flags:

Copy to Main

Table 1545

Bitfields for JAMINFO flags:

Bit(s)	Description

 2-0	reserved

 3	(v1.20+)

 4	enable direct write requests (Int 26h, non-DOS requests, etc.)

 5	read-only mode

 6	no write-behind caching

 7	full undelete-compatible allocation strategy

SeeAlso: #1543,#1544

INT 2F 5200


2F 5200 Format of JAM FRAGMENT structure:

Copy to Main

Table 1546

Format of JAM FRAGMENT structure:

Offset	Size	Description

 00h	WORD	starting sector (low word)

 02h	BYTE	starting sector (high byte)

 03h	WORD	size of fragment (low word)

 05h	BYTE	size of fragment (high byte)

SeeAlso: #1543,#1544

INT 2F 5200


2F 5200 Values for JAM.SYS status (high byte):

Copy to Main

Table 1547

Values for JAM.SYS status (high byte):

 00h	successful

 01h	drive is not a JAM drive

 02h	drive is already attached

 03h	archive file cluster size value is larger than driver's one

 04h	drive is not attached

 05h	drive is locked

 06h	drive is not locked

 07h	bad physical-level request

 08h	host drive reading/writing error

 09h	bad entries in JAM descriptor table

 0Ah	compressed data integrity error

 0Bh	archive file overflow

 0Ch	bad DOS request

 0Dh	incorrect parameters in JAMINFO structure

Note:	the low byte of the status is the DOS error code for the Host drive

SeeAlso: #1383 at INT 2F/AX=0802h

INT 2F 5200


2F 5206 Format of disk transfer packet:

Copy to Main

Table 1548

Format of disk transfer packet:

Offset	Size	Description

 00h	DWORD	sector number

 04h	WORD	number of sectors to read(write)

 06h	DWORD	transfer address

INT 2F 5206


2F 5401 Bitfields for power management status:

Copy to Main

Table 1549

Bitfields for power management status:

Bit(s)	Description

 0	POWER.EXE power management enabled

 1	APM firmware power management enabled

 2-7	reserved (0)

Notes:	bit 1 is ignored if there is no APM firmware

bits 1-0: 00 = POWER OFF, 10 = POWER STD, 11 = POWER ADV

INT 2F 5401


2F 5401 Values for POWER.EXE function status:

Copy to Main

Table 1550

Values for POWER.EXE function status:

 0000h	successful

 0002h	"ERROR_PM_ALREADY_CONNECTED"

 0003h	"ERROR_PM_NOT_CONNECTED"

 0087h	"ERROR_PM_INVALID_PARAMETER"

INT 2F 5401


2F 5403 Values for power management setting:

Copy to Main

Table 1551

Values for power management setting:

 0001h-0005h "min"

 0006h	     "reg"

 0007h-0008h "max"

INT 2F 5403


2F 5453 Values for TesSeRact names:

Copy to Main

Table 1552

Values for TesSeRact names:

 "AVATAR  "	AVATAR.SYS

 "QeditTSR"	TSR version of SemWare's Qedit editor

 "SCRNBLNK"	Trusted Access screen blanker

INT 2F 5453


2F 5453 Format of TesSeRact User Parameter Block:

Copy to Main

Table 1553

Format of TesSeRact User Parameter Block:

Offset	Size	Description

 00h  8 BYTEs	blank-padded TSR name

 08h	WORD	TSR ID number

 0Ah	DWORD	bitmap of supported functions

 0Eh	BYTE	scan code of primary hotkey

00h = pop up when shift states match

FFh = no popup (if shift state also FFh)

 0Fh	BYTE	shift state of primary hotkey

FFh = no popup (if scan code also FFh)

 10h	BYTE	number of secondary hotkeys

 11h	DWORD	pointer to extra hotkeys set by func 05h

 15h	WORD	current TSR status flags

 17h	WORD	PSP segment of TSR

 19h	DWORD	DTA for TSR

 1Dh	WORD	default DS for TSR

 1Fh	DWORD	stack at popup

 23h	DWORD	stack at background invocation

Index:	hotkeys;TesSeRact TSR interface

INT 2F 5453


2F 5453 Format of TSR internal data area:

Copy to Main

Table 1554

Format of TSR internal data area:

Offset	Size	Description

 00h	BYTE	revision level of TesSeRact library

 01h	BYTE	type of popup in effect

 02h	BYTE	INT 08 occurred since last invocation

 03h	BYTE	INT 13 occurred since last invocation

 04h	BYTE	active interrupts

 05h	BYTE	active soft interrupts

 06h	BYTE	DOS major version

 07h	BYTE	how long to wait before popping up

 08h	DWORD	pointer to INDOS flag

 0CH	DWORD	pointer to DOS critical error flag

 10h	WORD	PSP segment of interrupted program

 12h	WORD	PSP segment of prog interrupted by INT 28

 14h	DWORD	DTA of interrupted program

 18h	DWORD	DTA of program interrupted by INT 28

 1Ch	WORD	SS of interrupted program

 1Eh	WORD	SP of interrupted program

 20h	WORD	SS of program interrupted by INT 28

 22h	WORD	SP of program interrupted by INT 28

 24h	DWORD	INT 24 of interrupted program

 28h  3 WORDs	DOS 3.0+ extended error info

 2Eh	BYTE	old BREAK setting

 2Fh	BYTE	old VERIFY setting

 30h	BYTE	were running MS WORD 4.0 before popup

 31h	BYTE	MS WORD 4.0 special popup flag

 32h	BYTE	enhanced keyboard call in use

 33h	BYTE	delay for MS WORD 4.0

11 times (for INTs 08h,09h,13h,16h,1Ch,21h,28h,2Fh,1Bh,23h, and 24h):

DWORD	old interrupt vector

BYTE	interrupt number

WORD	offset in TesSeRact code segment of new interrupt handler

INT 2F 5453


2F 5481 Format of POWER.EXE idle detection statistics:

Copy to Main

Table 1555

Format of POWER.EXE idle detection statistics:

Offset	Size	Description

 00h	DWORD	"CPU_ON_TIME" total time CPU is active with POWER.EXE idle

  detection enabled, in timer ticks

 04h	DWORD	"CPU_IDLE_TIME" timer ticks during which CPU was idle

(divide by previous to get idle	rate)

 08h	DWORD	total idle calls

 0Ch	DWORD	"TOTAL_APP_IDLE" total INT 2Fh idle calls

 10h	DWORD	"TOTAL_DOS_YIELD" total INT 28h idle calls

 14h	DWORD	"TOTAL_KEY_IDLE" total INT 16h idle calls

 18h	DWORD	"TOTAL_DOS_IDLE" total INT 2Ah idle calls

INT 2F 5481


2F 5481 Format of APM statistics:

Copy to Main

Table 1556

Format of APM statistics:

Offset	Size	Description

 00h	DWORD	"RESUME_COUNT" total number of resumes since last APM_ENABLE

INT 2F 5481


2F 5600 Format of Interlnk device driver header:

Copy to Main

Table 1557

Format of Interlnk device driver header:

Offset	Size	Description

 00h	DWORD	pointer to next driver, offset=FFFFh if last driver

 04h	WORD	device attributes (see #0859,#0860)

 06h	WORD	device strategy entry point

 08h	WORD	device interrupt entry point

 0Ah  8 BYTEs	character device name "NUL2    "

 12h 165 BYTEs	???

 B7h 67 BYTEs	fully qualified Interlnk filename

 FAh  6 BYTEs	???

100h	DWORD	pointer back to Interlnk filename at offset B7h

104h  8 BYTEs	???

10Ch	BYTE	total number of redirected drives

10Dh	BYTE	first local drive number (0=A:)

10Eh	BYTE	printer redirection (0=no, 1=yes)

10Fh	BYTE	???

110h  3	BYTEs	LPT1...3 status (0FFh=invalid)

113h 26 BYTEs	remote drive number (0=A:, 0FEh=unused) (see note below)

12Dh 26 BYTEs	always 0FEh ???

147h 26 BYTEs	always 0FFh ???

Note:	to obtain the remote drive number, subtract the value at offset 10Ch

  from the local drive number before indexing into the table at 113h

  (example: if local drives F, G, H are remote drives C, F, E then

  the first three bytes at offset 113h are 02h, 05h, 04h)

for each instance of Interlnk, an extra device driver is loaded, but

  all have the same device name NUL2

SeeAlso: #0858 at INT 21/AH=52h

INT 2F 5600


2F 6282 Format of VSAFE/VWATCH record:

Copy to Main

Table 1558

Format of VSAFE/VWATCH record:

Offset	Size	Description

 00h	DWORD	???

 04h	WORD	offset of ??? in record's segment

VSAFE 2.0 sets byte at +01h to 56h or 58h

VWATCH 2.1 sets byte at +02h to 56h or 58h

 06h  2 BYTEs	???

 08h	BYTE	??? (01h/other)

INT 2F 6282


2F 6284 Format of DPROTECT data for v9.0:

Copy to Main

Table 1559

Format of DPROTECT data for v9.0:

Offset	Size	Description

 00h  5 BYTEs	???

 05h	WORD	resident code segment (may be segment of DWORD at +03h)

 07h	DWORD	-> FAR function to sound alert tone

???

INT 2F 6284


2F 6284 Bitfields for DATAMON/DPROTECT options:

Copy to Main

Table 1560

Bitfields for DATAMON/DPROTECT options:

Bit(s)	Description

 1	???

 12	disabled

 13	using Delete Sentry

 14	using Delete Tracker

INT 2F 6284


2F 6284 Bitfields for DATAMON/DPROTECT CX flags:

Copy to Main

Table 1561

Bitfields for DATAMON/DPROTECT CX flags:

Bit(s)	Description

 3	???

 5	???

 10	???

 12	disable DATAMON/DPROTECT

INT 2F 6284


2F 7001 Format of License Service SLSREQUEST structure:

Copy to Main

Table 1562

Format of License Service SLSREQUEST structure:

Offset	Size	Description

 00h	DWORD	(ret) status code

 04h	DWORD	(ret) handle identifying context

 08h	DWORD	(call) address of Publisher string

 0Ch	DWORD	(call) address of Product string

 10h	DWORD	(call) address of Version string

 14h	DWORD	units required

 18h	DWORD	address of comment string

 1Ch	DWORD	address of SLSCHALLENGE structure (see #1563)

INT 2F 7001


2F 7001 Format of License Service SLSCHALLENGE structure:

Copy to Main

Table 1563

Format of License Service SLSCHALLENGE structure:

Offset	Size	Description

 00h	DWORD	algorithm (currently always 1)

 04h	DWORD	secret to be challenged (1-255)

 08h	DWORD	size of challenge in bytes (1-255)

 0Ch  N BYTEs	challenge data

INT 2F 7001


2F 7002 Format of License Service SLSRELEASE structure:

Copy to Main

Table 1564

Format of License Service SLSRELEASE structure:

Offset	Size	Description

 00h	DWORD	handle indentifying license context

 04h	DWORD	total units consumed

 08h	DWORD	address of comment string

INT 2F 7002


2F 7003 Format of License Service SLSUPDATE structure:

Copy to Main

Table 1565

Format of License Service SLSUPDATE structure:

Offset	Size	Description

 00h	DWORD	(ret) status code

 04h	DWORD	(call) handle identifying license context

 08h	DWORD	(call) total units consumed

 0Ch	DWORD	additional units required

 10h	DWORD	address of comment string

 14h	DWORD	address of SLSCHALLENGE structure (see #1563)

INT 2F 7003


2F 7004 Format of License Service SLSGETERROR structure:

Copy to Main

Table 1566

Format of License Service SLSGETERROR structure:

Offset	Size	Description

 00h	DWORD	(ret) status code

 04h	DWORD	handle identifying license context

 08h	DWORD	error code

 0Ch	DWORD	buffer size in bytes

 10h  N BYTEs	data buffer

INT 2F 7004


2F 7005 Format of License Service SLSQUERY structure:

Copy to Main

Table 1567

Format of License Service SLSQUERY structure:

Offset	Size	Description

 00h	DWORD	(ret) status code

 04h	DWORD	handle identifying license context

 08h	DWORD	information index

 0Ch	DWORD	buffer size in bytes

 10h  N BYTEs	data buffer

INT 2F 7005


2F 7200 Format of SRDISK device driver header:

Copy to Main

Table 1568

Format of SRDISK device driver header:

Offset	Size	Description

 00h 10 BYTEs	same as standard device driver header

  (see #0858 at INT 21/AH=52h)

 0Ah	BYTE	number of subunits (drives) supported by driver

 0Bh  3 BYTEs	signature "SRD"

 0Eh  4 BYTEs	memory type string ("XMS "/"EMS ")

 12h  4 BYTEs	ASCII driver version string "N.NN"

 16h	BYTE	00h

 17h	BYTE	configuration format version (currently 00h or 01h)

 18h	WORD	offset of drive configuration data

INT 2F 7200


2F 7A10 Bitfields for NetWare TBMI status word:

Copy to Main

Table 1569

Bitfields for NetWare TBMI status word:

Bit(s)	Description

 0	INT2F intercepted by TBMI

 1	INT7A intercepted by TBMI

 2	INT64 intercepted by TBMI

 3-14	reserved or unused ???

 15	outstanding task ID was detected

INT 2F 7A10


2F 7A18 Bitfields for NetWare TASKID configuration flags:

Copy to Main

Table 1570

Bitfields for NetWare TASKID configuration flags:

Bit(s)	Description

 0	INT 2F hooked

 3	INT 08 hooked

 other	unused

INT 2F 7A18


2F 7A20 Call DOS Requester entry point with:

Copy to Main

Table 1571

Call DOS Requester entry point with:

STACK:	WORD	destination function

WORD	destination VLM ID (see #1573)

WORD	source VLM ID (0000h = application program)

registers as appropriate for function

Return: AX = status code (0000h,8811h,8846h,8848h,8853h) (see #1572)

other registers as appropriate for function

STACK popped

BP destroyed

INT 2F 7A20


2F 7A20 Values for VLM status code:

Copy to Main

Table 1572

Values for VLM status code:

 0000h	successful

 88xxh	error generated by requester

 8801h	invalid or non-attached connection handle

 8803h	cannot add CDS

 8804h	bad path

 8805h	error sending or receiving NCP packets

 8811h	nonexistent function called

 8836h	attempted function with invalid parameter

 8846h	???

 8848h	non-loaded or nonexistent VLM called

 884Dh	no more SFT entries (too many handles)

 8850h	too many reply fragments

 8853h	???

 89xxh	error generated by server

low byte = return code from server (see also #1101,#1135)

 8900h	server successful

 8901h	out of disk space

 897Eh	NCP boundary check failed

 897Fh	???

 8980h	lock failed; file in use

 8981h	out of handles

 8982h	no open privileges

 8983h	hard (non-correctable) I/O error

 8984h	no creation privileges

 8985h	no create/delete privileges

 8986h	attempted to create a file which already exists read-only

 8987h	filename error during creation (wildcards in name)

 8988h	invalid file handle

 8989h	no search privileges

 898Ah	no deletion privileges

 898Bh	no rename privileges

 898Ch	no modify privileges

 898Dh	some affected files are in use

 898Eh	all affected files are in use

 898Fh	some affected files are read-only

 8990h	all affected files are read-only; volume read-only

 8991h	some files could not be renamed because target names already exist

 8992h	all affected names exist

 8993h	no read privileges

 8994h	no write privileges

 8995h	file detached

 8996h	server out of memory

 8997h	no disk space for spool file

 8998h	disk map error; volume does not exist

 8999h	directory full

 899Ah	attempt to rename across volumes

 899Bh	bad directory handle

 899Ch	invalid path; no more trustees

 899Dh	no directory handles

 899Eh	bad filename

 899Fh	directory active

 89A0h	directory not empty

 89A1h	directory I/O error

 89A2h	I/O lock error

 89A3h-89BEh ???

 89BFh	invalid name space

 89C0h	no account privileges

 89C1h	no account balance

 89C2h	credit limit exceeded

 89C4h	account disabled

 89C5h	login lockout (intruder detection activated)

 89C6h	no console rights

 89C7h-89CFh

 89D0h	queue error

 89D1h	no queue

 89D2h	no queue server

 89D3h	no queue rights

 89D4h	queue full

 89D5h	no queue job

 89D6h	no job rights; unencrypted password

 89D7h	queue servicing error; duplicate password; bad account

 89D8h	queue not active; password too short

 89D9h	station not queue server; maximum logins exceeded

 89DAh	queue halted; bad login time

 89DBh	maximum queue servers; unauthorized login station

 89DCh	account disabled or expired

 89DEh	password expired (all grace logins used up)

 89DFh	password expired but login allowed (grace login)

 89E0h-89E6h ???

 89E7h	no disk track

 89E8h	property is not an item property; write to group

 89E9h	member exists

 89EAh	no such member

 89EBh	property is not a set property

 89ECh	no such set

 89EDh	property exists

 89EEh	object exists

 89EFh	illegal name

 89F0h	illegal wildcard

 89F1h	invalid bindery security level

 89F2h	not allowed to read object

 89F3h	not allowed to write/rename object

 89F4h	not allowed to delete object

 89F5h	not allowed to create object

 89F6h	not allowed to delete property

 89F7h	not allowed to create property; attempt to use non-local drive

 89F8h	not allowed to write property; already attached to server

 89F9h	not allowed to read property; no free connection slots

 89FAh	temporary remap error; no more server slots

 89FBh	no such property; invalid parameters

 89FCh	no such object; internet packet request canceled; unknown file server

 89FDh	bad station number; lock collision

 89FEh	directory locked; bindery locked; timeout

 89FFh	general error; hard error; lock error

Note:	some server-generated error codes have multiple interpretations; use

  the one appropriate to the failing call

INT 2F 7A20


2F 7A20 Values for VLM identifier:

Copy to Main

Table 1573

Values for VLM identifier:

 0001h	VLM.EXE	Virtual Loadable Modules manager (see also #1575)

 0010h	CONN.VLM	connection table manager (see also #1576)

 0020h	TRAN.VLM	transport protocol multiplexor (see also #1578)

 0021h	IPXNCP.VLM	transport protocol implementation using IPX (see #1580)

 0022h	TCPNCP.VLM	TCP/IP transport

 0030h	NWP.VLM	NetWare protocol multiplexor (see also #1581)

 0031h	BIND.VLM	bindery

 0032h	NDS.VLM	NetWare Directory Services (see also #1582)

 0033h	PNW.VLM	Personal NetWare

 0034h	RSA.VLM	RSA encryption for directory services re-authentication

 0040h	REDIR.VLM	DOS redirector (see also #1583)

 0041h	FIO.VLM	file I/O (see also #1585)

 0042h	PRINT.VLM	printer redirector (see also #1586)

 0043h	GENERAL.VLM	misc functions for NETx and REDIR (see also #1587)

 0050h	NETX.VLM	NetWare shell compatibility (see also #1588)

 0060h	AUTO.VLM	auto-reconnect/auto-retry

 0061h	SECURITY.VLM	enhanced security module

 0100h	NMR.VLM	NetWare management responder

 09F2h  DRVPRN.VLM      Desktop SNMP Services - Drive/Printer Mappings

 09F5h  SAA.VLM         SAA client API for Netware

 09F6h  IPXMIB.VLM      SNMP IPX-monitoring Module???

 09F7h  PNWMIB.VLM      Personal Netware SNMP Instrumentation Module

 09F8h  PNWTRAP.VLM     Personal Netware SNMP Trap Module

 09F9h  MIB2PROT.VLM    MIB-II Protocol Groups

 09FAh  MIB2IF.VLM      MIB-II Interfaces Group

 09FBh  NVT.VLM         ???

 09FCh  WSTRAP.VLM      Desktop SNMP Services - Trap Module

 09FDh  WSREG.VLM       Desktop SNMP Services - Registration Module

 09FEh  WSASN1.VLM      Desktop SNMP Services - ASN.1 Module

 09FFh  WSSNMP.VLM      Desktop SNMP Services - Agent Module

INT 2F 7A20


2F 7A20 Format of VLM header:

Copy to Main

Table 1574

Format of VLM header:

Offset	Size	Description

 00h	DWORD	-> initialization entry point

 04h	DWORD	-> VLM API entry point

 08h	DWORD	-> ??? entry point

 0Ch	DWORD	-> ??? entry point

 10h	DWORD	-> ??? entry point

...

 var	DWORD	00000000h (end of entry point list)

      4 BYTEs	signature "NVlm"

WORD	VLM identifier (see #1573)

---v1.20+ ---

 1Eh	WORD	???

 20h	WORD	Transient Switch Count

 22h	WORD	VLM Call Count

 24h	WORD	Offset ControlBlocks (See #2719)

 26h	WORD	Current VLMID

 28h	BYTE	Memory Type

00h=Conventional 02h=EMS 04h=XMS

 29h	BYTE	Modules Loaded

 2Ah	WORD	BlockId

 2Ch	WORD	Transient Block

 2Eh	WORD	Global Segment

 30h  3	DWORDs	pointers to AsyncQueue head, tail, and s???

 3Ch  3	DWORDs	pointers BusyQueue head, tail, and s???

 48h	WORD	ReEntrance Level

 4Ah	WORD	Full Map Count

 4Ch	WORD	???

 4Eh 80 BYTEs	ASCIZ configuration file filename

Note:	the number of entry points in the header is reported as "Func" in the

  VLM /D display.

INT 2F 7A20


2F 7A20 Format of VLM Control Block for VLM v1.20 [array]:

Copy to Main

Table 2719

Format of VLM Control Block for VLM v1.20 [array]:

Offset	Size	Description

 00h	WORD	Flag

 02h	WORD	VLM Identifier (See #1573)

 04h	WORD	Func

 06h	WORD	Maps

 08h	WORD	number of times called

 0Ah	WORD	???

 0Ch	WORD	Transient Segment

 0Eh	WORD	Global Segment

 10h	WORD	Address Low

 12h	WORD	Address High

 14h	WORD	TSegSize

 16h	WORD	GSegSize

 18h	WORD	SSegSize

 1Ah	BYTE	VLMName[9] ASCIZ

Note:	this information is shown in VLM /d under the dashed line. There are

  as many 35-byte blocks as modules loaded

SeeAlso: #1574

INT 2F 7A20


2F 7A20 Call VLM Manager (VLM.EXE, ID 0001h) with:

Copy to Main

Table 1575

Call VLM Manager (VLM.EXE, ID 0001h) with:

Func	Description/Registers

 01h	VLM Statistics

 04h	VLM internal use

BX = function

    0000h get interrupt vector (calls INT 21/AH=35h)

    0001h begin critical section (calls INT 2F/AX=1681h)

    0002h end critical section (calls INT 2F/AX=1682h)

    0003h ???

INT 2F 7A20


2F 7A20 Call Connection Manager (CONN.VLM, ID 0010h) with:

Copy to Main

Table 1576

Call Connection Manager (CONN.VLM, ID 0010h) with:

Func	Description/Registers

 01h	Conn Get Version

 03h	Conn Statistics

CX = length of buffer

ES:DI -> buffer for connection statistics (see #2725)

 04h	Conn Alloc Handle

 05h	Conn Validate Handle

CX = connection handle

Return: AX = 0000h if valid handle

 06h	Conn Free Handle

 07h	Conn Get Entry Field

BH = connection parameter (see #1577)

CX = connection handle

DX = value if BH is non-array parameter

DH = offset in array if BH is array parameter

DL = number of bytes to copy if BH is array

ES:DI -> return buffer if BH is array

Return: AX = 0000h if successful

DX = value if non-array parameter

DH = maximum number of bytes in buffer if array parameter

DL = number of bytes copied if array

BX destroyed

 08h	Conn Set Entry Field

BH = connection parameter (see #1577)

CX = connection handle

DX = value if BH is non-array parameter

DH = offset in array if BH is array parameter

DL = number of bytes to copy if BH is array

DS:SI -> buffer if BH is array

Return: AX = 0000h if successful

DH = maximum number of bytes in buffer

DL = number of bytes copied

BX destroyed

 09h	Conn Reset Entry Field

BH = connection parameter (see #1577)

CX = connection handle

Return: AX = 0000h if successful

BX,DX destroyed

 0Ah	Conn Lookup Handle

BL = lookup type (00h equal, 40h not equal)

BH = connection parameter (see #1577)

CX = connection handle, 0000h if first

DX = value if BH is non-array parameter

DH = offset in array if BH is array parameter

DL = number of bytes to copy if BH is array

DS:SI -> buffer if BH is array

Return: AX = 0000h if successful

CX = handle matching given parameters

 0Dh	Conn Name Lookup

CX = connection handle

ES:DI -> 49-byte buffer for server name

Return: AX = 0000h if successful

BX = length of server name

 0Eh	Conn Name To Handle

DS:SI -> uppercased server name

CX = length of server name, 0000h if ASCIZ name

Return: AX = error code or 0000h if successful

    CX = connection handle if successful

 0Fh	Conn Get Num Connections

Return: DX = number of connections

CX = segment of connection table

     first entry in table (See #2720)

INT 2F 7A20


2F 7A20 Format of VLM connection statistics:

Copy to Main

Table 2725

Format of VLM connection statistics:

Offset	Size	Description

 00h	WORD	total length of statistics record (including this word)

 02h	WORD	number of connection handles allocated

 04h	WORD	average name length (configured in NET.CFG)

 06h	WORD	maximum numbe of tasks (configured in NET.CFG)

 08h	WORD	???

 0Ah	WORD	???

 0Ch	WORD	???

Note:	some versions of the NetWare requester reportedly do not implement

  this correctly

SeeAlso: #1576

INT 2F 7A20


2F 7A20 Format of NetWare VLM Connection Table [array]:

Copy to Main

Table 2720

Format of NetWare VLM Connection Table [array]:

Offset	Size	Description

 00h	WORD	Protocol VLMid	  0032(NDS) 0031(BIND)	Func 07 equiv.

  0033(PNW) 0000(unused)       bh=01h

 02h	BYTE	(connection status)

bit 6: connection locked	       bh=16h

bit 5: authenticated	       bh=03h

bit 4: permanent	       bh=02h

bit 2: broadcast msg waiting	       bh=12h

 03h	BYTE	(connection capabilities)

bit 5: Large Internet Packets	       none

bit 3: Packet Burst Reset	       bh=07h

bit 2: Max I/O	       bh=06h

bit 1: SFT3 change	       bh=05h

bit 0: Packet Burst Support	       bh=04h

 04h	WORD	reference count	       bh=09h

 06h	WORD	soft resource count	       bh=15h

 08h	BYTE	NCP Order Number	       bh=0Eh

 09h	BYTE	Server security options	       bh=14h

bit 0: CRC enabled

bit 1: packet signing required

bit 5: packet signing enabled

 0Ah	BYTE	OS Major Version	       bh=08h

 0Bh	BYTE	OS Minor Version	       bh=08h

 0Ch	WORD	Hops to Server	       bh=0Ah

 0Eh	WORD	Maximum Packet Size for this connection	       bh=0Bh

 10h	WORD	LIP Parameters	       bh=13h

 12h	WORD	NCP Request Type	       bh=10h

 14h	BYTE	NCP Sequence	       bh=0Ch

 15h	WORD	Connection Number	       bh=0Dh

 17h	BYTE	???	       none

 18h	WORD	Transport VLMid 21(IPXNCP) 22(TCPNCP)	       bh=0Fh

 1Ah	BYTE	Node Address[4]	       bh=11h

 1Eh	BYTE	Network[6]	       bh=11h

 24h	BYTE	Socket[2]	       bh=11h

 26h	BYTE	Local Target[6]	       bh=11h

 2Ch	WORD	Round Trip Time	       bh=11h

 2Eh	WORD	???	       none

SeeAlso: #1576

INT 2F 7A20


2F 7A20 Values for NetWare Connection Manager CEI (Connection Entry Information):

Copy to Main

Table 1577

Values for NetWare Connection Manager CEI (Connection Entry Information):

 number	flags	description

 00h	FR	error

 01h	WL	VLM id of transport protocol (NDS/BIND/PNW)

00h = wildcard

 02h	FR	permanent flag (01h if connection is permanent)

 03h	F	authenticated flag (01h if connection is authenticated)

 04h	F	packet burst supported

 05h	FR	SFT3 change status

 06h	FR	connection needs maximum I/O transmission

 07h	FR	packet burst reset needed

 08h	W	server version

 09h	W	reference count (tasks using connection, 00h = dynamic)

 0Ah	W	distance to server associated with connection

 0Bh	W	maximum packet size supported by transport protocol

 0Ch	B	NCP sequence number

 0Dh	W	connection number

 0Eh	B	NCP order number

 0Fh	WL	VLM id for transport protocol

00h = wildcard, 21h = IPX, 22h = TCP

 10h	W	NCP request type

 11h	A	transport specific buffer

12 byte server address

6 byte	router address

2 byte round trip time

 12h	FR	broadcast message waiting

 13h	W	large internet packets supported

 14h	B	security options

bit 0: CRC enabled

bit 1: packet signing enabled

bit 5: packet signing active

 15h	W	soft resource count

 16h	FR	connection locked

Note:	flag meanings

    F=flag value

    B=byte value

    W=word value

    A=array

    R=resettable

    L=settable only before authentication

    others=read only

SeeAlso: #1576

INT 2F 7A20


2F 7A20 Call TRAN.VLM (VLM ID 0020h) with:

Copy to Main

Table 1578

Call TRAN.VLM (VLM ID 0020h) with:

Func	Description/Registers

 01h	TRAN Get Version

 03h	TRAN Statistics

 06h	TRAN Request Reply (see INT 21/AH=F2h)

AL = request code (see #1266 at INT 21/AH=F2h)

BH = error handler flag

    00h default error handler

    01h return network errors to caller

    02h handle network errors in requester

BL = request list length (max 5 fragments) (see #1579)

CX = connection handle

DH = 00h (reserved)

DL = reply list length (max 5 fragments) (see #1579)

DS:SI -> address list (each element is DWORD address + WORD length)

ES:DI -> address list

Return: AX = error code, 0000h if successful

BX,DX destroyed

reply buffer updated if successful

 08h	TRAN Schedule/Cancel Event

 09h	TRAN Get Max Phys Size

??? = subfunction

    00h get maximum node size

    01h get maximum route size to specified server

 0Ah	TRAN Broadcast Mux

INT 2F 7A20


2F 7A20 Format of TRAN.VLM request/reply fragment descriptor (array):

Copy to Main

Table 1579

Format of TRAN.VLM request/reply fragment descriptor (array):

Offset	Size	Description

 00h	DWORD	address of buffer

 04h	WORD	length of buffer

INT 2F 7A20


2F 7A20 Call IPXNCP.VLM (VLM ID 0021h) with:

Copy to Main

Table 1580

Call IPXNCP.VLM (VLM ID 0021h) with:

Func	Description/Registers

 01h	IPX Get Version

 03h	IPX Statistics

 06h	IPXNCP Request Reply???

functionally equivalent to Tran Request Reply???

INT 2F 7A20


2F 7A20 Call NWP.VLM (VLM ID 0030h) with:

Copy to Main

Table 1581

Call NWP.VLM (VLM ID 0030h) with:

Func	Description/Registers

 01h	NWP Get Version

 03h	NWP Statistics

 04h	NWP Connect

 05h	NWP Disconnect

 06h	NWP Attach

 08h	NWP Login

 09h	NWP Logout

 0Ah	NWP Get Bindery Object/Get Message Handler

BX = subfunction

    0002h set workstation's broadcast message mode

    0003h get object ID for object name

    0004h get object name for object ID

    0005h retrieve broadcast message

 0Ch	NWP context (passed through to NDS.VLM's function 0Ch) (see #1582)

 0Eh	NWP Ordered Send To All

 0Fh	NWP Preferred Handler

BX = subfunction

    0000h get preferred connection name

DX = VLM ID (NDS/BIND/PNW)

ES:DI -> 49-byte buffer for connection name

Return: ES:DI buffer filled

    0001h set preferred connection name

DX = VLM ID (NDS/BIND/PNW)

CX = length of connection name (may be 0000h, max 48)

DS:SI -> name of preferred connection

    0002h get preferred connection ID

DX = VLM ID (NDS/BIND/PNW)

Return: AX = status

CX = connection handle if successful

    0003h get server address

CX = connection handle or 0000h

DS:SI -> name to be resolved

ES:DI -> 12-byte buffer for server address

 10h	NWP ???

BX = subfunction

    0001h get security flags (see also INT 21/AX=B301h)

Return: BX:CX indicates signature level

= 0100h:0000h if signature level=0

= 0300h:0000h if signature level=1

= 0302h:0000h if signature level=2

= 0302h:0202h if signature level=3

    0002h create session keys (see also INT 21/AX=B302h)

CX = server connection handle

DS:SI -> 24-byte input buffer

    0004h set security flags (see also INT 21/AX=B304h)

BL:CL = new flags

    0006h renegotiate security level (see also INT 21/AX=B306h)

CX = server connection number (01h-08h)

INT 2F 7A20


2F 7A20 Call NDS.VLM (VLM ID 0032h) with:

Copy to Main

Table 1582

Call NDS.VLM (VLM ID 0032h) with:

Func	Description/Registers

 01h	NDS Get Version

 03h	NDS Statistics

 06h	NDS Attach

CX = allocated connection handle

DS:SI -> server address

 08h	NDS Fragment Requst

Return: AX = 8836h (invalid parameter)

Note:	this function was documented but does not work

 0Ch	NDS context

BX = subfunction

    0000h get default name context

CX = length of buffer for default context

ES:DI -> buffer to receive name

Return: ES:DI buffer filled

    0001h set default context

CX = length of new default context name

DS:SI -> context name

    0002h read from TDS

CX = reply buffer length

DX = 0110h ???

SI = offset in TDS

ES:DI -> reply buffer

    0003h write to TDS

    0005h "NWDSChangeResourceConnection/Lock Connection"

CX = connection handle

DL = subfunction (00h-09h)

    04h = NWDSChangeResourceOnConnection

    07h = NWDSChangeResourceOnConnection

    08h = NWDSLockConnection

    0006h NDS change connection state (internal) (!!!see sc4x01.zip)

CX = connection handle

AL = 00h or 01h

    0007h "NWDSSetMonitoredConnection"

AX = subfunction

    0001h get monitored connection

Return: CX = connection handle???

    0002h set monitored connection

CX = connection handle???

    0008h send NDS request

AX = NDS function

CX = connection handle

DS:SI -> request buffer descriptor (see #2726)

ES:DI -> reply buffer descriptor (see #2726)

    000Ah set NDS CEI Info

DL = buffer length

DS:SI -> input buffer

INT 2F 7A20


2F 7A20 Format of NetWare NDS request/reply buffer descriptor:

Copy to Main

Table 2726

Format of NetWare NDS request/reply buffer descriptor:

Offset	Size	Description

 00h	DWORD	-> buffer

 04h	WORD	length of buffer in bytes

SeeAlso: #1582

INT 2F 7A20


2F 7A20 Call REDIR.VLM (VLM ID 0040h) with:

Copy to Main

Table 1583

Call REDIR.VLM (VLM ID 0040h) with:

Func	Description/Registers

 01h	Redir Get Version

 03h	Redir Statistics

 04h	Redir Build SFT (see INT 21/AH=B4h"NetWare")

CX = connection handle

ES:DI -> SFT build request (see #1584)

Return: AX = 0000h if successful

    BX = DOS file handle

 05h	Redir DOS To NW Handle

 08h	Redir Specific

BX = 0000h get item

    DS:SI -> ASCIZ string "LPTx" (x='1'-'9') or drive spec ("d:")

    ES:DI -> 512-byte reply buffer for

      "\\server\resource",00h,"path",00h

INT 2F 7A20


2F 7A20 Format of NetWare SFT build request:

Copy to Main

Table 1584

Format of NetWare SFT build request:

Offset	Size	Description

 00h  6 BYTEs	NetWare handle

 06h	WORD	reserved for internal use

 08h 14 BYTEs	ASCIZ filename

 16h	BYTE	DOS file attributes

bit 7: file is shareable

 17h	BYTE	reserved

 18h	LONG	file size

 1Ch	WORD	creation date

 1Eh	WORD	last access date

 20h	WORD	last update date

 22h	WORD	last update time

INT 2F 7A20


2F 7A20 Call File I/O FIO.VLM (VLM ID 0041h) with:

Copy to Main

Table 1585

Call File I/O FIO.VLM (VLM ID 0041h) with:

Func	Description/Registers

 01h	FIO Get Version

 03h	FIO Statistics

 04h	FIO Remote Copy

INT 2F 7A20


2F 7A20 Call PRINT.VLM (VLM ID 0042h) with:

Copy to Main

Table 1586

Call PRINT.VLM (VLM ID 0042h) with:

Func	Description/Registers

 01h	Print Get Version

 03h	Print Statistics

 04h	Print Get/Set Data

BX??? = subfunction

    00h set printer control flags

    01h get printer control flags

    02h set extended printer control flags

    03h get extended printer control flags

 05h	Print Open Capture File

 07h	Print Get Num Of Printers

 08h	Print Redirection

BX = subfunction

    0000h redirect device to queue

AX = length of queue name, 0000h to use queue ID

DS:SI -> uppercased ASCIZ queue name

ES:DI -> queue ID, 0000h:0000h to use queue name

    0001h test whether device is redirected

    0002h cancel redirection

    0003h redirect device to file

AX = 0000h or 4E57h ('NW')

ES:DI -> ASCIZ path of file

    0004h get extended redirection information

CX = connection handle

DX = printer (0=LPT1)

Return: AX = 0000h if successful

 09h	Print Flush And Close Job

 0Ch	Print Get/Set Banner Name

INT 2F 7A20


2F 7A20 Format of PRINT.VLM standard print control information:

Copy to Main

Table 2653

Format of PRINT.VLM standard print control information:

Offset	Size	Description

 00h	BYTE	PFStatus (reserved, 00h)

 01h	BYTE	print flags (default 80h)

bit 2: release job for printing if capture interrupted

bit 3: suppress form feed

bit 4: notify

bit 6: text file

bit 7: print banner

 02h	BYTE	tab size (01h-12h, default 08h)

 03h	BYTE	number of copies (default 01h)

 04h	BYTE	???

 05h	BYTE	form type to be mounted in printer (default 00h)

 06h	BYTE	reserved (00h)

 07h 14 BYTEs	banner

 15h	BYTE	capture printer (LPT) number

 16h	WORD	capture timeout in seconds

 18h	BYTE	job concatenation flag (00h or 01h, default 00h)

 19h	BYTE	maximum lines per page (default 66)

 1Ah	BYTE	???

 1Bh	BYTE	maximum characters per line (default 132)

 1Ch	BYTE	???

 1Dh 13 BYTEs	name of form to be mounted in printer

 2Ah	BYTE	flag: capture active (00h or FFh, default 00h)

 2Bh	BYTE	flag: capturing to file (00h or 01h, default 00h)

 2Ch	BYTE	flag: timeout field is being decremented (default 00h)

 2Dh	DWORD	-> printer setup string

 31h	DWORD	-> printer reset string

 35h	BYTE	reserved (01h)

 36h	BYTE	flag: job has started printing (00h or FFh, default 00h)

 37h	BYTE	flag: job placed in queue (00h or FFh, default 00h)

 38h	BYTE	flag: PJobValid (00h or FFh, default 00h)

 39h	DWORD	print-queue ID

 3Dh	BYTE	low byte of print-job number (default 00h)

 3Eh	BYTE	???

 3Fh	BYTE	number of chars in INT 17h print cache buffer (default 00h)

 40h	BYTE	???

 41h	BYTE	high byte of print-job number (default 00h)

SeeAlso: #1586

INT 2F 7A20


2F 7A20 Call GENERAL.VLM (VLM ID 0043h) with:

Copy to Main

Table 1587

Call GENERAL.VLM (VLM ID 0043h) with:

Func	Description/Registers

 01h	Gen Get Version

 03h	Gen Statistics

 04h	Gen Get/Set Primary

BX = subfunction

    0001h get primary connection

CX = primary connection handle to be retrieved

Return: AX = status (see #1572)

CX = primary connection handle

    0002h set primary connection

CX = primary connection handle to be stored

Return: AX = status (see #1572)

 06h	Gen Specific

BX = subfunction

    0000h get command processor and master environment addresses

    0001h get default or primary connection

    0002h last queue information

AL = operation

    00h zap

    01h set

    02h get

DI:DX = queue file handle

CX = connection handle

    0003h get/set machine name(s)

AX = name type

    00h get short machine name

    02h get long machine name

    04h set short machine name

    06h set long machine name

    08h get DOS name

    0Ah set DOS name

ES:SI -> ASCIZ name if setting

    0004h set search mode

 09h	Gen Return Drive Info

BX = subfunction

    0000h get first available drive

Return: AX = status (see #1572)

BX = drive letter of first drive

    0001h get Lastdrive

Return: AX = status (see #1572)

CH = number lastdrive 1=A: - 1Ah=Z:

INT 2F 7A20


2F 7A20 Call NETX.VLM (VLM ID 0050h) with:

Copy to Main

Table 1588

Call NETX.VLM (VLM ID 0050h) with:

Func	Description/Registers

 01h	NetX Get Version

 03h	NetX Statistics

INT 2F 7A20


2F 7A20 Call SECURITY.VLM (VLM ID 0061h) with:

Copy to Main

Table 1589

Call SECURITY.VLM (VLM ID 0061h) with:

Func	Description/Registers

 01h	Security Get Version

 03h	Security Statistics

 04h	???

AL = subfunction

    01h compute session key

DS:SI -> 24-byte input buffer

ES:DI -> 8-byte output buffer

INT 2F 7A20


2F 7A20 Call VLM CallA entry point with:

Copy to Main

Table 1590

Call VLM CallA entry point with:

AX = function

    0000h submit

    0001h cancel (not implemented)

ES:DI -> Overlay Asynchronous Control Block structure (see #1591)

INT 2F 7A20


2F 7A20 Format of Overlay Asynchronous Control Block (OACB):

Copy to Main

Table 1591

Format of Overlay Asynchronous Control Block (OACB):

Offset	Size	Description

 00h	DWORD	link to next OACB, 0000h:0000h if last

 04h	DWORD	callback address or 0000h:0000h

 08h	BYTE	InUse flag (00h if complete)

 09h	BYTE	flag, reserved for VLM use

 0Ah	WORD	destination VLM

 0Ch	WORD	destination function

 0Eh	WORD	temporary storage for VLM.EXE

 10h  6 BYTEs	reserved

 16h  6 DWORDs	EAX,EBX,ECX,EDX,ESI,EDI

 2Eh  4 WORDs	DS,ES,FS,GS (FS and GS not used)

INT 2F 7A20


2F 7A20 Call DOS Requester entry point with:

Copy to Main

Table 1592

Call DOS Requester entry point with:

BX = function???

    0000h

DX = ???

DI = ???

BP = ???

    0002h

CX = ???

    0003h

DX = ???

BP = ???

    0006h

AH = subfunction???

AL = ???

STACK: variable (0, 4, 10, 14 bytes seen)

INT 2F 7A20


2F 7A20 Format of DOS Requester data:

Copy to Main

Table 1593

Format of DOS Requester data:

Offset	Size	Description

 00h	DWORD	pointer to ??? (code)

 04h  4 BYTEs	???

 08h	DWORD	pointer to ??? (code) (see #1594)

???

INT 2F 7A20


2F 7A20 Call offset 08h function with:

Copy to Main

Table 1594

Call offset 08h function with:

AL = function (00h-07h)

???

Return: ???

INT 2F 7A20


2F 7A2F Call IPXODI entry point with:

Copy to Main

Table 1595

Call IPXODI entry point with:

BX = function

    0000h ???

ES:SI -> ??? data

    0001h ???

AX = ???

Return: ES:SI -> ??? data

    0002h get ??? address

Return: ES:SI -> ??? buffer

    0003h send SPX packet???

AL = ???

CX = ???

DX = ???

SI = ???

Return: ??? (registers from a call to INT 7A/BX=0016h)

Return: BX corrupted

INT 2F 7A2F


2F 7A40 Bitfields for returned BX:

Copy to Main

Table 1596

Bitfields for returned BX:

Bit(s)	Description

 0	???

 1	???

 15-2	reserved???

INT 2F 7A40


2F 7A40 Call NetWare TCP/IP entry point with:

Copy to Main

Table 1597

Call NetWare TCP/IP entry point with:

ES:SI -> parameter block (see #1598)

Return: ES:SI parameter block updated

INT 2F 7A40


2F 7A40 Format of NetWare TCP/IP parameter block:

Copy to Main

Table 1598

Format of NetWare TCP/IP parameter block:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	WORD	(ret) ???

 06h	WORD	(ret) ???

 08h	DWORD	-> FAR routine called if bit 7 of function code set

 0Ch	BYTE	flags???

 0Dh  7 BYTEs	???

 14h	BYTE	(ret) ???

 15h	BYTE	(call) function code (bit 7 set if ???) (see #1599)

 16h	BYTE	socket number

 17h	BYTE	(ret) result or error code

 18h  4 WORDs	parameter words 0 to 3 (see #1599 for usage)

 20h	WORD	length of packet sent/received

 22h	WORD	number of pointer/length pairs following

 24h 6N BYTEs	buffer descriptors, each

Offset	Size	Description

 00h	DWORD	pointer to buffer

 04h	WORD	length of buffer

INT 2F 7A40


2F 7A40 Values for NetWare TCP/IP function code:

Copy to Main

Table 1599

Values for NetWare TCP/IP function code:

 01h	"accept"

 02h	"bind"

 03h	close socket

Call:	socket number field set

 04h	"connect"

 05h	get IP address

Call:	socket number field set to 0000h

Return:	parameter words 1 and 2 contain caller's IP address

 06h	get hardware address

 07h	"getpeername"

 08h	get socket name

 0Ah	get netmask

 0Bh	"ioctl"

 0Ch	"listen"

 0Dh	"select"

 10h	"shutdown"

 11h	open socket

Call:	socket number field set to 0000h

parameter word 0 = desired protocol (6 = TCP, 17 = UDP)

Return: socket number set

 12h	"read"

 13h	"recvfrom"

Call:	socket number set

packet length and buffer descriptors set

Return:	packet length and receive buffers updated

parameter word 1 = source port number

parameter words 2 and 3 = source IP address

 14h	"write"

 15h	"sendto"

Call:	socket number set

flags field = ???

parameter word 0 = 0000h

parameter word 1 = destination port number

parameter words 2 and 3 = destination IP address

packet length and buffer descriptors set

 16h	get BOOTP data

Note:	these functions are based on the Unix socket interface

INT 2F 7A40


2F 7A42 Call NetWare TCPIP.EXE entry point with:

Copy to Main

Table 1600

Call NetWare TCPIP.EXE entry point with:

DX = ???

ES:DI -> ??? (see #1601)

Return: AX = 0000h

other registers destroyed

INT 2F 7A42


2F 7A42 Format of data buffer:

Copy to Main

Table 1601

Format of data buffer:

Offset	Size	Description

 00h	WORD	offset of WORD ??? or 0000h

 02h	WORD	offset of DWORD ??? or 0000h

 04h	WORD	offset of DWORD ??? or 0000h

INT 2F 7A42


2F 7AC8 Bitfields for LAN HiJack function(s) to enable/disable:

Copy to Main

Table 1602

Bitfields for LAN HiJack function(s) to enable/disable:

Bit(s)	Description

 0	???

 1	remote keyboard enabled

 2	support remote's mouse

 3-7	unused

INT 2F 7AC8


2F 7AF1 Call Access Server driver "initialize port" function with:

Copy to Main

Table 1603

Call Access Server driver "initialize port" function with:

AH = 01h

AL = port number (00h-0Fh)

ES:BX -> configuration parameter block (see #1616)

interrupts disabled

Return: CF clear if successful

CF set on error

SeeAlso: #1604

INT 2F 7AF1


2F 7AF1 Call Access Server driver "get port status" function with:

Copy to Main

Table 1604

Call Access Server driver "get port status" function with:

AH = 02h

AL = port number (00h-0Fh)

interrupts disabled

Return: CF clear if successful

    BL = transmitter status (see #1613)

    BH = receiver status (see #1614)

    DL = external status signals (see #1615)

CF set on error

interrupts disabled

SeeAlso: #1603,#1605,#1608

INT 2F 7AF1


2F 7AF1 Call Access Server driver "get input from port" function with:

Copy to Main

Table 1605

Call Access Server driver "get input from port" function with:

AH = 03h

AL = port number (00h-0Fh)

CX = size of data buffer

ES:BX -> buffer for data

interrupts disabled

Return: CF clear if successful

CF set on error

interrupts disabled

CX = number of bytes read

Note:	the driver will add a NUL to the buffer when a break signal is detected

SeeAlso: #1605,#1606

INT 2F 7AF1


2F 7AF1 Call driver "send output data to port" function with:

Copy to Main

Table 1606

Call driver "send output data to port" function with:

AH = 04h

AL = port number (00h-0Fh)

CX = number of bytes to send

ES:BX -> buffer containing data

interrupts disabled

Return: CF clear if successful

CF set on error

interrupts disabled

CX = number of bytes actually written

SeeAlso: #1605,#1607

INT 2F 7AF1


2F 7AF1 Call driver "get I/O character counts" function with:

Copy to Main

Table 1607

Call driver "get I/O character counts" function with:

AH = 05h

AL = port number (00h-0Fh)

interrupts disabled

Return: CF clear if successful

    BX = number of bytes pending transmission

    CX = number of bytes available for reading

CF set on error

interrupts disabled

SeeAlso: #1605,#1606

INT 2F 7AF1


2F 7AF1 Call driver "control XON/XOFF" function with:

Copy to Main

Table 1608

Call driver "control XON/XOFF" function with:

AH = 06h

AL = port number (00h-0Fh)

DL = new state

    (00h software flow control disabled, else enabled)

interrupts disabled

Return: CF clear if successful

CF set on error

interrupts disabled

SeeAlso: #1609

INT 2F 7AF1


2F 7AF1 Call driver "get error counts and statistics" function with:

Copy to Main

Table 1609

Call driver "get error counts and statistics" function with:

AH = 07h

AL = port number (00h-0Fh)

ES:BX -> buffer for statistics (see #1617)

interrupts disabled

Return: CF clear if successful

    ES:BX buffer filled

CF set on error

interrupts disabled

SeeAlso: #1610,#1611,#1612

INT 2F 7AF1


2F 7AF1 Call driver "general request" function with:

Copy to Main

Table 1610

Call driver "general request" function with:

AH = 08h

AL = port number (00h-0Fh)

DX = requested operations

    bit 0: flush transmit buffers

    bit 1: flush receive buffers

    bit 4: define XON/XOFF characters

ES:BX -> XON/XOFF characters (see #1618) if DX bit 4 set

interrupts disabled

Return: CF clear if successful

CF set on error

interrupts disabled

INT 2F 7AF1


2F 7AF1 Call driver "deadman timer management" function with:

Copy to Main

Table 1611

Call driver "deadman timer management" function with:

AH = 09h

AL = port number (00h-0Fh)

BX = next time interval in seconds (0000h to disable timer)

interrupts disabled

Return: CF clear

interrupts disabled

SeeAlso: #1612

INT 2F 7AF1


2F 7AF1 Call driver "get buffer sizes" function with:

Copy to Main

Table 1612

Call driver "get buffer sizes" function with:

AH = 0Ah

AL = port number (00h-0Fh)

interrupts disabled

Return: CF clear if successful

   BX = size of transmit buffer

   CX = size of receive buffer

CF set on error

interrupts disabled

SeeAlso: #1611

INT 2F 7AF1


2F 7AF1 Values for Access Server transmitter status:

Copy to Main

Table 1613

Values for Access Server transmitter status:

 00h	uninitialized

 01h	ready, not transmitting

 02h	transmitting

 03h	XOFF received

 04h	transmitting, buffer full

 05h	XOFF received and buffer full

INT 2F 7AF1


2F 7AF1 Values for Access Server receiver status:

Copy to Main

Table 1614

Values for Access Server receiver status:

 00h	uninitialized

 01h	ready

 02h	receive buffer full, data may have been lost

INT 2F 7AF1


2F 7AF1 Bitfields for external status signals:

Copy to Main

Table 1615

Bitfields for external status signals:

Bit(s)	Description

 7,6	undefined

 5	CTS active

 4	DSR active

 3	DCD active

 2,1	undefined

 0	ring indicator

INT 2F 7AF1


2F 7AF1 Format of Access Server configuration parameter block:

Copy to Main

Table 1616

Format of Access Server configuration parameter block:

Offset	Size	Description

 00h	BYTE	receive baud rate index

00h 50 bps, 01h 75 bps, 02h 110 bps, 03h 134.5 bps,

04h 150 bps, 05h 300 bps, 06h 600 bps, 07h 1200 bps,

08h 1800 bps, 09h 2000 bps, 0Ah 2400 bps, 0Bh 3600 bps,

0Ch 4800 bps, 0Dh 7200 bps, 0Eh 9600 bps, 0Fh 19200 bps,

10h 38400 bps, 11h 57600 bps, 12h 115200 bps

 01h	BYTE	receive bits per character (0=5 bits..3=8 bits)

 02h	BYTE	receive stop bits

 03h	BYTE	receive parity

00h none, 01h odd, 02h even, 03h mark, 04h space

 04h	BYTE	transmit baud rate index (same as receive baud rate)

 05h	BYTE	transmit bits per character (0=5 bits..3=8 bits)

 06h	BYTE	transmit stop bits

 07h	BYTE	transmit parity (same as receive parity)

 08h	BYTE	DTR state (00h off, 01h on)

 09h	BYTE	RTS state (00h off, 01h on)

 0Ah	BYTE	flow control (00h none, 01h XON/XOFF, 02h RTS/CTS, 03h both)

 0Bh	BYTE	break control (00h off, 01h on)

INT 2F 7AF1


2F 7AF1 Format of Access Server statistics:

Copy to Main

Table 1617

Format of Access Server statistics:

Offset	Size	Description

 00h	BYTE	port number

 01h	BYTE	external status signals (see #1615)

 02h	BYTE	transmitter status (see #1613)

 03h	BYTE	receiver status (see #1614)

 04h	DWORD	number of characters received

 08h	DWORD	number of characters transmitted

 0Ch	WORD	input parity errors

 0Eh	WORD	input framing errors

 10h	WORD	lost characters due to hardware overrun

 12h	WORD	lost characters due to data buffer overrun

Note:	the counts are not allowed to wrap around; once a count reaches FFFFh

  or FFFFFFFFh, it is no longer incremented

INT 2F 7AF1


2F 7AF1 Format of Access Server XON/XOFF characters:

Copy to Main

Table 1618

Format of Access Server XON/XOFF characters:

Offset	Size	Description

 00h	BYTE	04h (number of bytes following)

 01h	BYTE	transmit XON character

 02h	BYTE	transmit XOFF character

 03h	BYTE	receive XON character

 04h	BYTE	receive XOFF character

INT 2F 7AF1


2F 7AFF Values Windows support procedure called with:

Copy to Main

Table 1619

Values Windows support procedure called with:

BP = function

    0001h Get ECB

BX = socket number

Return: ES:SI -> ECB or 0000h:0000h if none available

    0002h Count Listen ECBs

AX = BX = socket

Return: CX = number of listen ECBs for socket

(must be >= 2 for SPX to work)

    0003h ???

    0004h Inform task switcher of ECB locations

Note:	registers other than those listed above are equal

  to the values when IPX was called

Note:	the support function will not be called if IPX is called with BX

  bit 15 set

INT 2F 7AFF


2F 7F01 Format of CD-ROM redirector command record:

Copy to Main

Table 1620

Format of CD-ROM redirector command record:

Offset	Size	Description

 00h	BYTE	ID

 01h 10 BYTEs	CDB (Command Descriptor Block) for operation

 0Bh	WORD	segment of buffer

 0Dh	WORD	offset of buffer

 0Fh	BYTE	status

 10h	BYTE	sense

 12h	WORD	count

INT 2F 7F01


2F 8000 Format of CS_TSR process block:

Copy to Main

Table 1621

Format of CS_TSR process block:

Offset	Size	Description

 00h  4 BYTEs	CS_TSR signature 11h 43h 53h 10h

 04h	BYTE	INT 2F multiplex number

 05h	WORD	virtual process handle (unique among loaded TSRs)

 07h  2 BYTEs	version (binary minor version, then major version)

 09h	WORD	PSP segment of TSR

 0Bh	DWORD	pointer to ASCIZ program name

 0Fh  3 BYTEs	program creation date (day, month, year)

 12h  3 BYTEs	process start time (seconds, minutes, hours)

 15h  3 BYTEs	process start date (day, month, year)

INT 2F 8000


2F 8001 Values for CS_TSR signature strings:

Copy to Main

Table 1622

Values for CS_TSR signature strings:

 "ASCII"	ASCII, a popup ASCII table with character input

 "Halculator"	HALC, a 32-bit RPN WYSIWIH calculator with undo and ptr support

 "AntiTurbo"	AT!, an intelligent system slow-down utility

INT 2F 8001


2F 80FB Values for FaxBIOS function number:

Copy to Main

Table 1623

Values for FaxBIOS function number:

 0001h	SYS_LOGIN

 0002h	SYS_LOGOUT

 0003h	SYS_GET_FAXAPP_INFO

 0004h	STAT_IO_GET

 0005h	STAT_FAXBIOS_GET

 0006h	PDIR_OPEN

 0007h	PDIR_CLOSE (see #1633)

 0008h	PDIR_READ_PERSON (see #1634)

 0009h	PDIR_PARTIAL_READ

 000Ah	PDIR_READ_GROUP

 000Bh	PDIR_READ_MEMBER_LIST

 000Ch	PDIR_WRITE_PERSON

 000Dh	PDIR_WRITE_GROUP

 000Eh	PDIR_DELETE_PERSON

 000Fh	PDIR_DELETE_GROUP

 0010h	PDIR_READ_GROUP_LIST

 0011h	PDIR_IN_GROUP

 0012h	PDIR_OUT_GROUP

 0013h	SCHED_OPEN (see #1635)

 0014h	SCHED_ADD_DEST (see #1636)

 0015h	SCHED_ADD_FILE (see #1637)

 0016h	SCHED_SET_PARAMS (see #1638)

 0017h	SCHED_CANCEL (see #1635)

 0018h	SCHED_CLOSE (see #1639)

 0019h	SLOG_OPEN (see #1640)

 001Ah	SLOG_CLOSE (see #1640)

 001Bh	SLOG_SHORT_ENV_STAT

 001Ch	SLOG_LONG_ENV_STAT

 001Dh	SLOG_DEST_STAT

 001Eh	SLOG_FILE_STAT

 001Fh	SLOG_CANCEL_ENV

 0020h	RLOG_OPEN (see #1640)

 0021h	RLOG_CLOSE (see #1640)

 0022h	RLOG_READ

 0023h	GRAPH_GET_FILE_TYPE (see #1641)

 0024h	GRAPH_EXPORT_FILE

 0025h	GRAPH_GET_LAYOUT_INFO

 0026h	GRAPH_CREATE_FILE (see #1642)

 0027h	GRAPH_CLOSE_FILE (see #1643)

 0028h	GRAPH_CREATE_PAGE (see #1644)

 0029h	GRAPH_WRITE (see #1645)

 002Ah	GRAPH_END_PAGE

 002Bh	GRAPH_OPEN_FILE (see #1646)

 002Ch	GRAPH_GOTO_PAGE (see #1647)

 002Dh	GRAPH_READ (see #1648)

 002Eh	IOCTL_GET

 002Fh	IOCTL_SET

 0030h	IOCTL_ANSWER_FAX (see #1649)

 0031h	IOCTL_DIAL (see #1650)

INT 2F 80FB


2F 80FB Values for FaxBIOS result code:

Copy to Main

Table 1624

Values for FaxBIOS result code:

 0000h	successful

 0001h	not prepared or servicing another client (busy)

 0002h	call failed due to sharing (LOCKED)

 0003h	logged-in client limit reached (FULL)

 0004h	transport denied (TRANSPORT_DENIED)

 0005h	not implemented (NOT_IMPLEMENTED)

 0006h	aborted while in progress (ABORTED)

 0007h	permissions denied (PERMISSION_DENIED)

 0008h	requested data is no longer valid (NO_LONGER_VALID)

 0080h	unspecified system error occurred

 0081h	an internal file was not found

 0082h	an internal file could not be created

 0083h	an internal file could not be opened

 0084h	an internal file could not be closed

 0085h	error occurred writing to an internal file

 0086h	error occurred reading from an internal file

 0087h	bad or corrupted file encountered

 0088h	an access violation occurred

 0089h	an internal file is empty

 008Ah	insufficient memory to process request

 008Bh	FaxBIOS was unable to issue a handle

 008Ch	an error internal to FaxBIOS occurred

 008Dh	no room on disk

 0100h	unspecified error accessing client file

 0101h	file not found

 0102h	creation fault

 0103h	open fault

 0104h	close fault

 0105h	write fault

 0106h	read fault

 0107h	file corrupted

 0108h	access violation

 0109h	empty file

 0200h	unspecified argument error

 0201h	bad function

 0202h	bad option

 0203h	bad structure size

 0204h	bad buffer size

 0205h	bad client ID

 0300h	unspecified error with token

 0301h	cover sheet token was invalid

 0302h	logo token was invalid

 0303h	signature token was invalid

 0304h	font token was invalid

 0305h	phone directory token was invalid

 0306h	outbound route token was invalid

 0307h	priority token was invalid

 0308h	sort token was invalid

 0309h	billing token was invalid

 0400h	unspecified handle error

 0401h	bad Phone Directory handle

 0402h	bad scheduling handle

 0403h	bad read send log handle

 0404h	bad read receive log handle

 0405h	bad graphics handle

 0500h	data passed in structure was invalid

 0501h	name field given is invalid

 0502h	phone number given is invalid

 0503h	poll code submitted is invalid

 0504h	file type constant was invalid

 0505h	BFT constant not defined or supported

 0506h	resolution not defined or supported

 0507h	page length not defined or supported

 0508h	page width not defined or supported

 0509h	date & time requested are ridiculous

 050Ah	Subject text was not an ASCIZ string

 050Bh	From text was not an ASCIZ string

 050Ch	requested envelope ID was not found

 050Dh	requested envelope ID is not valid

 050Eh	envelope requested was not found

 050Fh	destination index is out of range

 0510h	file index is out of range

 0511h	index into receive log is out of range

 0512h	file name specified was incomplete or invalid

 0513h	page selected was out of range

 0514h	bit width more than byte width

 0515h	mode for open is not defined

 0516h	person index is out of range

 0517h	person ID is out of range

 0518h	group index out of range or invalid

 0519h	group ID out of range or invalid

 051Ah	range of indices to read is invalid

 051Bh	group name given is invalid

 051Ch	field_to_use is badly specified

 051Dh	predicate invalid for field specified

 0600h	unspecified client procedure error

 0601h	device of interest is not present

 0602h	device of interest has been removed

 0603h	device of interest is not responding

 0604h	device of interest is disabled

 0605h	could not dial because device was in use

 0606h	maximum destination limit exceeded

 0607h	maximum file limit exceeded

 0608h	scheduling closed with no destination

 0609h	scheduling closed with no files or poll

 060Ah	scheduling closed with no parameters specified

 060Bh	file type specified does not match file

 060Ch	file type specified is not supported

 060Dh	file submitted is not exportable

 060Eh	file type specified is not imageable

 060Fh	error converting file

 0610h	envelope could not be cancelled

 0611h	Phone Directory is full

 0612h	record is already in the Phone Directory

 0613h	selected group in Phone Directory is full

 0614h	person is already in the group

 0615h	person is not in the group & cannot be removed

 0616h	a graphics file to be created already exists

 0617h	a graphics file to be read is empty

 0618h	GRAPH_CREATE_PAGE called before GRAPH_END_PAGE

 0619h	graph read or write attempted without goto or create

 061Ah	graph page contains no data

 061Bh	Phone Directory is already open for this client

 061Ch	schedule log is already open for this client

 061Dh	receive log is aready open for this client

 061Eh	Phone Directory function requires write mode

 0800h	denied exclusive use of the API

INT 2F 80FB


2F 80FB Format of FaxBIOS SYS_LOGIN command buffer:

Copy to Main

Table 1625

Format of FaxBIOS SYS_LOGIN command buffer:

Offset	Size	Description

 00h	WORD	structure size

 02h	WORD	function number

 04h	WORD	return code

 06h	WORD	client ID

 08h	WORD	API Major Version

 0Ah	WORD	API Minor Version

 0Ch	DWORD	reserved for manufacturer's use

 10h 22 BYTEs	manufacturer's ID

 26h	WORD	highest possible device number

 28h	WORD	maximum destinations per envelope

 2Ah	WORD	maximum files per envelope

 2Ch	WORD	FaxBIOS capabilities (see #1626)

 2Eh	DWORD	T.30 capabilities (see #1627)

 32h	WORD	IPC handle

 34h	DWORD	amount of memory needed to load

 38h	WORD	scope (00h for public, nonzero for private)

 3Ah  6 BYTEs	future expansion

 40h	WORD	structure size

INT 2F 80FB


2F 80FB Bitfields for FaxBIOS capabilities:

Copy to Main

Table 1626

Bitfields for FaxBIOS capabilities:

Bit(s)	Description

 0	transmit supported

 1	receive supported

 2	IOCTL supported

 3	IOCTL_DIAL supported

 4	IOCTL_ANSWER_FAX supported

 5	manual transmit supported

 6	optional phone services supported

 7	canonical phone objects

 8	seam with next supported

INT 2F 80FB


2F 80FB Bitfields for T.30 capabilities:

Copy to Main

Table 1627

Bitfields for T.30 capabilities:

Bit(s)	Description

 0	low vertical resolution (minimum)

 1	high vertical resolution

 2	page width 107mm (4.21 in)

 3	page width 151mm (5.91 in)

 4	page width 215mm (8.46 in) (minimum)

 5	page width 255mm (10.04 in)

 6	page width 303mm (11.93 in)

 7	unused

 8	page length 297mm (11.69 in) (minimum)

 9	page length 364mm (14.33 in)

 10	page length 279mm (11 in)

 11	page length unlimited

 12	Group 4 resolution 300x300

 13	Group 4 resolution 400x400

 14	able to respond to poll from remote

 15	able to poll remote

 16	binary file transfer supported

INT 2F 80FB


2F 80FB Format of FaxBIOS SYS_LOGOUT command buffer:

Copy to Main

Table 1628

Format of FaxBIOS SYS_LOGOUT command buffer:

Offset	Size	Description

 00h	WORD	structure size

 02h	WORD	function number

 04h	WORD	return code

 06h	WORD	client ID

 08h	DWORD	client tag (for client's internal use)

 0Ch  6 BYTEs	future expansion

 12h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS SYS_GET_FAXAPP_INFO command buffer:

Copy to Main

Table 1629

Format of FaxBIOS SYS_GET_FAXAPP_INFO command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch 80 BYTEs	FaxBIOS data

 5Ch 80 BYTEs	default cover

 ACh 80 BYTEs	default logo

 FCh 80 BYTEs	default signature

14Ch 80 BYTEs	default font 10

19Ch 80 BYTEs	default font 165

1ECh 80 BYTEs	default user font

23Ch 80 BYTEs	default Pdir

28Ch 80 BYTEs	default sort

2DCh 10 BYTEs	default bill

2E6h 10 BYTEs	default route

2F0h 40 BYTEs	default cover sheet form

318h 34 BYTEs	valid dial characters

33Ah  6 BYTEs	local country code

340h  6 BYTEs	local city or area code

346h  6 BYTEs	future expansion

34Ch	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS STAT_IO_GET command buffer:

Copy to Main

Table 1630

Format of FaxBIOS STAT_IO_GET command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	device number

 0Eh	WORD	current activity

 10h	WORD	number of rings (if ringing)

 12h	WORD	number of fascimiles transmitted

 14h	WORD	number of fascimiles received

 16h	WORD	status of last transmission

 18h	WORD	envelope number of last transmission

 1Ah	WORD	index of last destination in envelope

 1Ch	WORD	status of last reception

 1Eh	WORD	current page (if session in progress)

 20h 80 BYTEs	current file

 70h 104 BYTEs	remote number

 D8h 20 BYTEs	last name

 ECh 20 BYTEs	first name

100h 32 BYTEs	company name

120h 32 BYTEs	notes

140h	WORD	current envelope ID (if sending)

142h	WORD	total pages in transmission (if sending)

144h  6 BYTEs	future expansion

14h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS STAT_FAXBIOS_GET command buffer:

Copy to Main

Table 1631

Format of FaxBIOS STAT_FAXBIOS_GET command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	status ID

 0Eh	WORD	currenty FaxBIOS function number

 10h	WORD	current Client ID being serviced

 12h	WORD	number of things to do

 14h	WORD	number of them done

 16h	WORD	number of pages to do (if any)

 18h	WORD	number of them done

 1Ah	WORD	number of files to do

 1Ch	WORD	number of them done

 1Eh 80 BYTEs	current File

 6Eh	WORD	0 if all devices are idle

 70h	WORD	number of fascimiles transmitted

 72h	WORD	number of fascimiles received

 74h	WORD	status of last transmission in system

 76h	WORD	envelope ID of last transmission

 78h	WORD	index of last destination in envelope

 7Ah	WORD	status of last reception in system

 7Ch	DWORD	time of next transmission

 80h  6 BYTEs	future expansion

 86h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS PDIR_OPEN command buffer:

Copy to Main

Table 1632

Format of FaxBIOS PDIR_OPEN command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch 80 BYTEs	Phone Directory token

 5Ch 80 BYTEs	sort order token

 ACh	WORD	open Mode (0 = read, 1 = write)

 AEh	WORD	Phone Directory handle

 B0h	WORD	number of people

 B2h	WORD	number of groups

 B4h	WORD	bitmap of fields supported by partial read

 B6h  6 BYTEs	future expansion

 BCh	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS PDIR_CLOSE command buffer:

Copy to Main

Table 1633

Format of FaxBIOS PDIR_CLOSE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	Phone Directory handle

 0Eh  6 BYTEs	future expansion

 14h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS PDIR_READ_PERSON command buffer:

Copy to Main

Table 1634

Format of FaxBIOS PDIR_READ_PERSON command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	Phone Directory handle

 0Eh	WORD	retrieve by index

 10h	WORD	person ID or index

 12h	WORD	how many groups person is in

 14h	WORD	person ID

 16h 20 BYTEs	last name

 2Ah 20 BYTEs	first name

 3Eh 32 BYTEs	company

 5Eh 32 BYTEs	notes

 7Eh  6 BYTEs	FAX country code

 84h  6 BYTEs	FAX city/area code

 8Ah 14 BYTEs	FAX local number

 98h 14 BYTEs	FAX extension

 A6h 24 BYTEs	reserved

 BEh  6 BYTEs	voice country code

 C4h  6 BYTEs	voice city/area code

 CAh 14 BYTEs	voice local number

 D8h 14 BYTEs	voice extension

 E6h 24 BYTEs	reserved

 FEh 10 BYTEs	outbound routing information

108h 10 BYTEs	billing information, credit card etc

112h	DWORD	remote FAX capabilities

116h 21 BYTEs	T.30 poll code of FAX number

12Bh 15 BYTEs	reserved

13Ah  6 BYTEs	future expansion

140h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS SCHED_OPEN, SCHED_CANCEL command buffer:

Copy to Main

Table 1635

Format of FaxBIOS SCHED_OPEN, SCHED_CANCEL command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	scheduler handle

 0Eh  6 BYTEs	future expansion

 14h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS SCHED_ADD_DEST command buffer:

Copy to Main

Table 1636

Format of FaxBIOS SCHED_ADD_DEST command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	schedule handle

 0Eh	WORD	device number if manual send wanted

 10h	WORD	non-zero if poll desired

 12h	WORD	person ID

 14h 20 BYTEs	last name

 28h 20 BYTEs	first name

 3Ch 32 BYTEs	company

 5Ch 32 BYTEs	notes

 7Ch  6 BYTEs	FAX country code

 82h  6 BYTEs	FAX city/area code

 88h 14 BYTEs	FAX local number

 96h 14 BYTEs	FAX extension

 A4h 24 BYTEs	reserved

 BCh  6 BYTEs	voice country code

 C2h  6 BYTEs	voice city/area code

 C8h 14 BYTEs	voice local number

 D6h 14 BYTEs	voice extension

 E4h 24 BYTEs	reserved

 FCh 10 BYTEs	outbound routing information

106h 10 BYTEs	billing information, credit card etc

110h	DWORD	remote FAX capabilities

114h 21 BYTEs	T.30 poll code of FAX number

129h 15 BYTEs	reserved

138h  6 BYTEs	future expansion

13Eh	WORD	structure size

SeeAlso: #1637

INT 2F 80FB


2F 80FB Format of FaxBIOS SCHED_ADD_FILE command buffer:

Copy to Main

Table 1637

Format of FaxBIOS SCHED_ADD_FILE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	schedule handle

 0Eh	WORD	file type

0000h unidentified

0001h native file format

0002h ASCII

0003h FaxBIOS Tiff Class F

 10h 80 BYTEs	file name

 60h 80 BYTEs	font token

 B0h	WORD	conversion options bitmap

 B2h	WORD	resolution

0000h standard 98 lines per inch, 204 dpi

0001h fine 196 lines per inch, 204 dpi

0002h Group4 300 dpi

0003h Group4 400 dpi

 B4h	WORD	page length

0000h 279 mm (11 in)

0001h 297 mm (11.69 in)

0002h 364 mm (14.33 in)

0003h unlimited

 B6h	WORD	page width

0000h 215 mm (8.46 in)

0001h 255 mm (10.04 in)

0002h 303 mm (11.93 in)

0003h 151 mm (5.91 in)

0004h 107 mm (4.21 in)

 B8h	WORD	binary file transfer specification

0000h only as FAX

0001h only as file (for non-faxable files)

0002h as file when possible else FAX

 BAh	WORD	seam flag (nonzero for seam with next)

 BCh	WORD	delete flag (nonzero to delete when done)

 BEh  6 BYTEs	future expansion

 C4h	WORD	structure size

SeeAlso: #1636,#1638

INT 2F 80FB


2F 80FB Format of FaxBIOS SCHED_SET_PARAMS command buffer:

Copy to Main

Table 1638

Format of FaxBIOS SCHED_SET_PARAMS command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	scheduler handle

 0Eh	DWORD	time to send

 10h 10 BYTEs	priority token

 1Ch 80 BYTEs	logo file token

 6Ch 80 BYTEs	signature file token

 BCh 80 BYTEs	cover page token

10Ch 40 BYTEs	Subject text

134h 40 BYTEs	From text

15Ch	WORD	user ID

15Eh  6 BYTEs	future expansion

164h	WORD	structure size

SeeAlso: #1636,#1637,#1639

INT 2F 80FB


2F 80FB Format of FaxBIOS SCHED_CLOSE command buffer:

Copy to Main

Table 1639

Format of FaxBIOS SCHED_CLOSE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	scheduler handle

 0Eh	WORD	envelope ID generated

 10h  6 BYTEs	future expansion

 16h	WORD	structure size

SeeAlso: #1638

INT 2F 80FB


2F 80FB Format of FaxBIOS SLOG_OPEN, SLOG_CLOSE, RLOG_OPEN, RLOG_CLOSE command buffer:

Copy to Main

Table 1640

Format of FaxBIOS SLOG_OPEN, SLOG_CLOSE, RLOG_OPEN, RLOG_CLOSE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	log handle

 0Eh	WORD	number of entries

 10h  6 BYTEs	future expansion

 16h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_GET_FILE_TYPE command buffer:

Copy to Main

Table 1641

Format of FaxBIOS GRAPH_GET_FILE_TYPE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch 80 BYTEs	filename

 5Ch	WORD	file type

0000h unidentified

0001h native file format

0002h ASCII

0003h FaxBIOS Tiff Class F

 5Eh	WORD	bitmap of supported capabilities

 60h  6 BYTEs	future expansion

 66h	WORD	structure size

SeeAlso: #1642,#1643

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_CREATE_FILE command buffer:

Copy to Main

Table 1642

Format of FaxBIOS GRAPH_CREATE_FILE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch 80 BYTEs	filename

 5Ch	WORD	graph handle

 5Eh  6 BYTEs	future expansion

 64h	WORD	structure size

SeeAlso: #1641,#1643,#1644

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_CLOSE_FILE, GRAPH_END_PAGE command buffer:

Copy to Main

Table 1643

Format of FaxBIOS GRAPH_CLOSE_FILE, GRAPH_END_PAGE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	graph handle

 0Eh  6 BYTEs	future expansion

 14h	WORD	structure size

SeeAlso: #1642,#1644

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_CREATE_PAGE command buffer:

Copy to Main

Table 1644

Format of FaxBIOS GRAPH_CREATE_PAGE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	graph handle

 0Eh	WORD	resolution

 10h	WORD	page width

 12h  6 BYTEs	future expansion

 18h	WORD	structure size

SeeAlso: #1642,#1643,#1645

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_WRITE_PAGE command buffer:

Copy to Main

Table 1645

Format of FaxBIOS GRAPH_WRITE_PAGE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	graph handle

 0Eh	DWORD	pointer to storage for image

 12h	WORD	band height in lines

 14h	WORD	width of page image in bytes

 16h	WORD	facsimile page width constant

 18h	WORD	width of page image in bits

 1Ah	WORD	number of bytes actually processed

 1Ch  6 BYTEs	future expansion

 22h	WORD	structure size

SeeAlso: #1644,#1646

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_OPEN_FILE command buffer:

Copy to Main

Table 1646

Format of FaxBIOS GRAPH_OPEN_FILE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch 80 BYTEs	filename

 5Ch	WORD	file type

 5Eh	WORD	graph handle

 60h	WORD	number of pages

 62h  6 BYTEs	future expansion

 68h	WORD	structure size

SeeAlso: #1645,#1647

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_GOTO_PAGE command buffer:

Copy to Main

Table 1647

Format of FaxBIOS GRAPH_GOTO_PAGE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	graph handle

 0Eh	WORD	page number

 10h	WORD	vertical resolution

 12h	WORD	page width

 14h	DWORD	page length

 18h  6 BYTEs	future expansion

 1Eh	WORD	structure size

SeeAlso: #1645,#1646,#1648

INT 2F 80FB


2F 80FB Format of FaxBIOS GRAPH_READ_PAGE command buffer:

Copy to Main

Table 1648

Format of FaxBIOS GRAPH_READ_PAGE command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	graph handle

 0Eh	DWORD	pointer to storage for image

 12h	WORD	band height in lines

 14h	WORD	width of page image in bytes

 16h	WORD	facsimile page width constant

 18h	WORD	width of page image in bits

 1Ah	WORD	number of bytes actually processed

 1Ch  6 BYTEs	future expansion

 22h	WORD	structure size

INT 2F 80FB


2F 80FB Format of FaxBIOS IOCTL_ANSWER_FAX command buffer:

Copy to Main

Table 1649

Format of FaxBIOS IOCTL_ANSWER_FAX command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	device number

 0Eh  6 BYTEs	future expansion

 14h	WORD	structure size

SeeAlso: #1650

INT 2F 80FB


2F 80FB Format of FaxBIOS IOCTL_DIAL command buffer:

Copy to Main

Table 1650

Format of FaxBIOS IOCTL_DIAL command buffer:

Offset	Size	Description

 00h 12 BYTEs	common data (see SYS_LOGOUT above)

 0Ch	WORD	device number

 0Eh  6 BYTEs	country code

 14h  6 BYTEs	city or area code

 1Ah 14 BYTEs	local number

 28h 14 BYTEs	extension

 36h 14 BYTEs	reserved

 4Eh  6 BYTEs	future expansion

 54h	WORD	structure size

SeeAlso: #1649

INT 2F 80FB


2F 8200 Values for RESPLAY status:

Copy to Main

Table 1651

Values for RESPLAY status:

 1000h	successful

 2000h	not initialized (see AX=8210h)

 other	RESPLAY not installed

INT 2F 8200


2F 8210 Values for RESPLAY sound device:

Copy to Main

Table 1652

Values for RESPLAY sound device:

 00h	printer port LPT1

 01h	printer port LPT2

 02h	prototype board at I/O address 0300h

 03h	printer port (alternative LPT1)

 04h	internal speaker

INT 2F 8210


2F AC01 Bitfields for QRIP internal flags:

Copy to Main

Table 1653

Bitfields for QRIP internal flags:

Bit(s)	Description

 0	ANSI emulation enabled (default on)

 1	RIP emulation enabled (default on)

 2	graphical commands allowed (default on)

 3	TTY text allowed (default on)

 4	disable @ variables (default off in TSR mode)

 5	wait for key on RIP "end scene" command (default off)

 6	anti-stripping (default off in TSR mode)

 7	sound enabled (default on)

 8	automatic message filter (default off in TSR mode)

 9	display-only mode (no user prompts)

 10	TTY text suppression (default off in TSR mode)

 11-15	reserved

INT 2F AC01


2F AC06 Values for QRIP special codes:

Copy to Main

Table 1654

Values for QRIP special codes:

 0000h	if none

 0100h	wait for user keypress (must call AX=AC16h/BL=00h or AX=AC18h)

 0101h	both/middle mouse button pressed

 0102h	entering block mode (up/download) (call AX=AC1Ah)

 0103h	right mouse button pressed

 0104h	BBS requested status bar on

 0105h	BBS requested status bar off

 0106h	BBS requested VT-102 terminal emulation

(keypad keys should send VT-102 escape codes)

 0107h	BBS requested VT-102 mode off

 0108h	BBS requested doorway mode (raw IBM keyboard ASCII/scan code pairs)

 0109h	BBS requested doorway mode off

 010Ah	hotkey mode on

 010Bh	hotkey mode off

 010Ch	BBS requested Tab-key button changing on

 010Dh	BBS requested Tab-key mode off

 010Eh	XOFF (use flow control to stop incoming characters)

 010Fh	XON (use flow control to resume incoming characters)

 0110h-0119h BBS requested application (0-9) be run

application 0 should be a standard text editor

 01FFh	send ASCII 00h to BBS

Note:	for special codes 0104h to 010Dh, the terminal program should report

  any mode changes it make in response by calling AX=AC16h

INT 2F AC06


2F AC1A Values for QRIP protocol identifier:

Copy to Main

Table 1655

Values for QRIP protocol identifier:

 00h	Xmodem (checksum)

 01h	Xmodem-CRC

 02h	Xmodem-1K

 03h	Xmodem-1K-G

 04h	Kermit

 05h	Ymodem

 06h	Ymodem-G

 07h	Zmodem with crash recovery

 08h-0Fh same as 00h-07h, but for uploading instead of downloading

SeeAlso: #1656

INT 2F AC1A


2F AC1A Values for QRIP file type:

Copy to Main

Table 1656

Values for QRIP file type:

 00h	RIP file sequence to be displayed

 01h	RIP file sequence to be stored in icon directory

 02h	ICN file sequence to be stored in icon directory

 03h	HLP file sequence to be stored, then auto-loaded if needed

 04h	COMPOSITE DYNAMIC file sequence (batch protocols only)

 05h	ACTIVE DYNAMIC file sequence (batch protocols only)

Note:	for file types 04h and 05h, any .RIP or .ICN files are stored in

  the icon directory; in mode 05h, any .RIP files are also played

  back as they are received

SeeAlso: #1655

INT 2F AC1A


2F AC1B Values for QRIP font size specifier:

Copy to Main

Table 1657

Values for QRIP font size specifier:

 00h	8x8 font, 80x43 screen

 01h	7x8 font, 90x43 screen

 02h	8x14 font, 80x25 screen

 03h	7x14 font, 90x25 screen

 04h	16x14 font, 40x25 screen

INT 2F AC1B


2F AD03 Format of DOS 5.0-6.0 DISPLAY.SYS code page information:

Copy to Main

Table 1658

Format of DOS 5.0-6.0 DISPLAY.SYS code page information:

Offset	Size	Description

 00h	WORD	number of software code pages

 02h	WORD	??? (0003h)

 04h	WORD	number of hardware code pages

 06h  N WORDs	hardware code page numbers

      N WORDs	software (prepared) code pages (FFFFh if not yet prepared)

INT 2F AD03


2F AD80 Format of KEYB internal data:

Copy to Main

Table 1659

Format of KEYB internal data:

Offset	Size	Description

 00h	DWORD	original INT 09

 04h	DWORD	original INT 2F

 08h  6 BYTEs	???

 0Eh	WORD	flags (see #2718)

 10h	BYTE	???

 11h	BYTE	???

 12h  4 BYTEs	???

 16h  2 BYTEs	country ID letters

 18h	WORD	current code page

---DOS 3.3---

 1Ah	WORD	pointer to first item in list of code page tables???

 1Ch	WORD	pointer to ??? item in list of code page tables

 1Eh  2 BYTEs	???

 20h	WORD	pointer to key translation data (see #1661)

 22h	WORD	pointer to last item in code page table list (see #1660)

 24h  9 BYTEs	???

---DOS 4.01---

 1Ah  2 BYTEs	???

 1Ch	WORD	pointer to first item in list of code page tables???

 1Eh	WORD	pointer to ??? item in list of code page tables

 20h  2 BYTEs	???

 22h	WORD	pointer to key translation data (see #1661)

 24h	WORD	pointer to last item in code page table list (see #1660)

 26h  9 BYTEs	???

Note:	at least in MS-DOS v6.22, the signature "SHARED DATA" immediately

  precedes this structure

INT 2F AD80


2F AD80 Bitfields for MS-DOS v6.22 KEYB flags:

Copy to Main

Table 2718

Bitfields for MS-DOS v6.22 KEYB flags:

Bit(s)	Description

 15	INT 16/AH=92h returned OK result (AH <= 80h)

 14	INT 16/AH=A2h returned OK result (AH <= 80h)

 13	unused (0)

 12	network installed (INT 2F/AX=B800h)

 11	original IBM PC (BIOS date 1981)

 10	PC or PC/XT (BIOS machine type byte of FBh or FEh)

 9	PC Convertible (BIOS machine type byte of F9h); use INT 15/AX=4104h

 8	unused (0)

 7	IBM PS/2 model 30 (BIOS machine type byte of FAh)

 6	IBM AT (BIOS machine type FCh)

 5	IBM PS/2 (BIOS machine type F8h)

 4	PS/2 and unknown only:

non-standard 8042 or no AT->PC scancode translation???

 3	temporary flag???

 2-0	???

SeeAlso: #1659

INT 2F AD80


2F AD80 Format of code page table list entries:

Copy to Main

Table 1660

Format of code page table list entries:

Offset	Size	Description

 00h	WORD	pointer to next item, FFFFh = last

 02h	WORD	code page

 04h  2 BYTEs	???

INT 2F AD80


2F AD80 Format of KEYB translation data:

Copy to Main

Table 1661

Format of KEYB translation data:

Offset	Size	Description

 00h	WORD	size of data in bytes, including this word

 02h N-2 BYTEs	???

INT 2F AD80


2F AE00 Format of COMMAND.COM command line buffer:

Copy to Main

Table 1662

Format of COMMAND.COM command line buffer:

Offset	Size	Description

 00h	BYTE	max length of command line, as in INT 21/AH=0Ah

 01h	BYTE	count of bytes to follow, excluding terminating 0Dh

      N BYTEs	command line text, terminated by 0Dh

INT 2F AE00


2F AE00 Format of command name buffer:

Copy to Main

Table 1663

Format of command name buffer:

Offset	Size	Description

 00h	BYTE	length of command name

 01h  N BYTEs	uppercased command name (blank-padded to 11 chars by 4DOS v4)

INT 2F AE00


2F AFDE Format of Disk-Emu information data:

Copy to Main

Table 1664

Format of Disk-Emu information data:

Offset	Size	Description

 00h	BYTE	number of tracks

 01h	BYTE	sectors per track

 02h	WORD	bytes per sector

 04h	BYTE	number of heads

 05h	BYTE	flag: 00h inactive, 01h active

 06h	BYTE	write protection (00h none, 01h full, 02h pseudo)

 07h	BYTE	saved (00h some unsaved data, 01h all data saved)

 08h	BYTE	disk in memory (00h no, 01h yes)

 09h	WORD	EMS handle

 0Bh	WORD	XMS handle

 0Dh	BYTE	memory type used for disk (00h XMS, 01h EMS)

INT 2F AFDE


2F B706 Bitfields for APPEND state:

Copy to Main

Table 1665

Bitfields for APPEND state:

Bit(s)	Description

 0	set if APPEND enabled

 1-11	reserved

 12	(DOS 5.0) set if APPEND applies directory search even if a drive has

  been specified

 13	set if /PATH flag active

 14	set if /E flag active (environment var APPEND exists)

 15	set if /X flag active

INT 2F B706


2F B804 Values network post routine is called with:

Copy to Main

Table 1666

Values network post routine is called with:

AX = 0000h single block message

    DS:SI -> ASCIZ originator name

    DS:DI -> ASCIZ destination name

    ES:BX -> text header (see #1667)

AX = 0001h start multiple message block

    CX = block group ID

    DS:SI -> ASCIZ originator name

    DS:DI -> ASCIZ destination name

AX = 0002h multiple block text

    CX = block group ID

    ES:BX -> text header (see #1667)

AX = 0003h end multiple block message

    CX = block group ID

AX = 0004h message aborted due to error

    CX = block group ID

AX = 0101h server received badly formatted network request

    Return: AX = FFFFh (PC LAN will process error)

AX = 0102h unexpected network error

    ES:BX -> NCB (see #1894 at INT 5C)

AX = 0103h server received INT 24 error

    other registers as for INT 24, except AH is in BH

    Return: as below, but only 0000h and FFFFh allowed

Return: AX = response code

    0000h user post routine processed message

    0001h PC LAN will process message, but message window not displayed

    FFFFh PC LAN will process message

INT 2F B804


2F B804 Format of text header:

Copy to Main

Table 1667

Format of text header:

Offset	Size	Description

 00h	WORD	length of text (maximum 512 bytes)

 02h  N BYTEs	text of message

Note:	all CRLF sequences in message text are replaced by 14h; all other

  values below 20h (space) are reserved

INT 2F B804


2F B80F Format of DOS LAN Requester return data buffer:

Copy to Main

Table 1668

Format of DOS LAN Requester return data buffer:

Offset	Size	Description

 00h	BYTE	major version

 01h	BYTE	minor version

 02h	WORD	configuration flags given when network was started (see #1669)

 04h 15 BYTEs	NET START machine name (space padded)

 13h	BYTE	00h

 14h 9	BYTEs	NET START domain name (NULL padded)

 1Dh	BYTE	00h

 1Eh 32 BYTEs	/WRK heuristics string (space padded, not terminated)

 3Eh	WORD	/SRV value

 40h	WORD	/ASG value

 42h	WORD	/NBC value

 44h	WORD	/NBS value

 46h	WORD	/BBC value

 48h	WORD	/BBS value

 4Ah	WORD	/PBC value

 4Ch	WORD	/PBS value

 4Eh	WORD	/PFS value

 50h	WORD	/PFT value

 52h	WORD	/PWT value

 54h	WORD	/KUC value

 56h	WORD	/KST value

 58h	WORD	/NVS value

 5Ah	WORD	/NMS value

 5Ch	WORD	/NDB value

 5Eh	WORD	/MBI value

 60h	BYTE	NetBIOS name number for machine name

 61h	BYTE	NetBIOS name number for domain name

 62h	WORD	NetBIOS sessions required for configuration

 64h	WORD	NetBIOS commands required for configuration

 66h	WORD	NetBIOS names required for configuration

 68h 128 BYTEs	NET START path (LANROOT)

 E8h	BYTE	00h

INT 2F B80F


2F B80F Bitfields for configuration flags:

Copy to Main

Table 1669

Bitfields for configuration flags:

Bit(s)	Description

 0	/NVS nonzero

 1	/NMS nonzero

 2	/API

 3	/HIM

 4	/LIM

 5	/ENC

 6	/POP

 7	/EMS

 8	/RPL

 9-12	reserved

 13	RDR started

 14	RCV started

 15	User is currently logged on

INT 2F B80F


2F C000 Call LSL function "Request MLID Registration" with:

Copy to Main

Table 1670

Call LSL function "Request MLID Registration" with:

BX = 0001h

ES:SI -> registration??? record (see #1674)

DS:DI -> buffer for LSL information block (see #1675)

Return: AX = completion code (0000h,8001h) (see #1673)

DS:DI buffer filled if successful

BX,CX corrupted

Note:	see "Novell LAN Driver Developer's Guide, Volume III" for more details

INT 2F C000


2F C000 Call LSL function "get support entry points" with:

Copy to Main

Table 1671

Call LSL function "get support entry points" with:

BX = 0002h

ES:SI -> buffer for entry point record (see #1676)

Return: ES:SI buffer filled

INT 2F C000


2F C000 Call LSL function "Request MLID API entry point" with:

Copy to Main

Table 1672

Call LSL function "Request MLID API entry point" with:

BX = 0003h

Return: ES:SI -> MLID (Multiple Link Interface Driver) API entry point

(call with BX=function 00h-10h, not range-checked)

Note:	LSL v1.10 and v2.05 execute BX=0003h for BX=0000h and any BX >= 0003h

INT 2F C000


2F C000 Values for LSL completion code:

Copy to Main

Table 1673

Values for LSL completion code:

 0000h	successful

 8001h	out of resources

 8002h	bad parameter

 8003h	no more items

 8004h	item not present

 8005h	failed

 8006h	receive overflow

 8007h	canceled

 8008h	bad command

 8009h	duplicate entry

 800Ah	no such handler

 800Bh	no such driver

INT 2F C000


2F C000 Format of LSL registration record:

Copy to Main

Table 1674

Format of LSL registration record:

Offset	Size	Description

 00h	DWORD	-> ??? FAR function (to be called with ES:SI -> ??? and

  returning AX = completion code)

 04h	DWORD	-> ???

 08h	DWORD	-> ??? data (at least 3Eh bytes)

INT 2F C000


2F C000 Format of LSL information block:

Copy to Main

Table 1675

Format of LSL information block:

Offset	Size	Description

 00h	DWORD	-> ??? entry point (called with BX=function 00h-11h)

 04h	WORD	???

 06h	WORD	???

Note:	due to a fencepost error, LSL v2.05 (distributed with Novell DOS 7)

  will crash if the above entry point is called with BX=0012h

INT 2F C000


2F C000 Format of entry point record:

Copy to Main

Table 1676

Format of entry point record:

Offset	Size	Description

 00h	DWORD	pointer to protocol support entry point in LSL (see #1677)

 04h	DWORD	pointer to general support entry point in LSL (see #1678)

INT 2F C000


2F C000 Call protocol support entry point with:

Copy to Main

Table 1677

Call protocol support entry point with:

BX = function number

    0000h ???

    0001h ???

    0002h ???

    0003h "ScheduleAESEvent"

ES:SI -> AES ECB to be scheduled (see #1681)

Return: ES,SI preserved

    0004h "CancelAESEvent"

ES:SI -> ECB to be cancelled (see #1681)

Return: ES,SI preserved

    0005h "GetIntervalMarker"

Return: DX:AX = current interval marker in milliseconds

all other registers preserved

    0006h "RegisterStack"

AX = logical board number

ES:SI -> bound stack info structure (see #1691)

Return: BX = assigned Stack ID if AX=0000h

    0007h "DeRegisterStack"

AX = protocol stack's assigned Stack ID

    0008h "RegisterDefaultStack"

AX = logical board number

ES:SI -> stack info structure (see #1692)

    0009h "DeRegisterDefaultStack"

AX = logical board number

    000Ah "RegisterPrescanStack"

AX = logical board number

ES:SI -> stack info structure (see #1692)

    000Bh "DeRegisterPrescanStack"

AX = logical board number

    000Ch "SendPacket"

ES:SI -> send ECB

Return: interrupts disabled

    000Dh ???

    000Eh ???

    000Fh ???

    0010h "GetStackIDFromName"

ES:SI -> counted NUL-terminated protocol name (max 15 chars)

Return: BX = Stack ID if AX=0000h

    0011h "GetPIDFromStackIDBoard"

AX = Stack ID for protocol

CX = logical board number

ES:SI -> 6-byte buffer for protocol ID

    0012h "GetMLIDControlEntry"

AX = logical board number

Return: ES:SI -> MLID control handler (see #1679) if AX=0000h

    0013h "GetProtocolControlEntry"

AX = Stack ID or

FFFEh Prescan stack

    CX = logical board number

FFFFh default protocol

    CX = logical board number

Return: ES:SI -> protocol stack control entry point if AX=0000h

  (see #1680)

    0014h "GetLSLStatistics"

Return: AX = 0000h (successful)

ZF set

ES:SI -> LSL statistics table (see #1683)

    0015h "BindStack"

AX = protocol stack's assigned Stack ID

CX = logical board number

    0016h "UnbindStack"

AX = protocol stack's assigned Stack ID

CX = logical board number

    0017h "AddProtocolID"

AX = frame type ID code

ES:SI -> 6-byte protocol ID

CX:DI -> counted NUL-terminated short protocol name (max 15 ch)

    0018h "RelinquishControl"

Return: after LSL performs any necessary background processing

    0019h "GetLSLConfiguration"

Return: AX = 0000h (successful)

ZF set

ES:SI -> LSL configuration table (see #1682)

    001Ah "GetTickMarker"

Return: AX = number of 55ms ticks since LSL loaded

BX destroyed

Return: AX = completion code (see #1673)

ZF set if successful

SS:SP, DS, BP preserved; most other registers may be destroyed

INT 2F C000


2F C000 Call general support entry point with:

Copy to Main

Table 1678

Call general support entry point with:

BX = function number

    0000h "Allocate Memory" (obsolete)

 always returns AX=8008h (BAD_COMMAND)

    0001h "Free Memory" (obsolete)

 always returns AX=8008h (BAD_COMMAND)

    0002h "Realloc Memory" (obsolete)

 always returns AX=8008h (BAD_COMMAND)

    0003h "Memory Statistics" (obsolete)

 always returns AX=8008h (BAD_COMMAND)

    0004h "Add Memory To Pool" (obsolete)

 always returns AX=8008h (BAD_COMMAND)

    0005h "AddGeneralService"

ES:SI -> General Service Control Block (see #1693)

    0006h "RemoveGeneralService"

ES:SI -> General Service Control Block (see #1693)

    0007h "GetNETcfgPath"

Return: AX = 0000h (successful)

DS:DX -> ASCIZ pathname for NET.CFG

    0008h U ???	 (in LSL 1.10)

Return: AX = 0000h

ES:SI -> ??? (a 22-byte data area)

    000Ah "GetCriticalSectionStatus"

Return: BX = total outstanding calls to "StartCriticalSection"

    000Bh "ServiceEvents"

interrupts disabled

Return: interrupts disabled

    0010h "GetStackECB"

DS:DI -> Lookahead structure (see #1694)

interrupts disabled

Return: ES:SI -> ECB if successful (AX=0000h,ZF set)

interrupts disabled

    8000h-FFFFh reserved for user general service providers

Return: AX = completion code (see #1673)

ZF set if successful

SS:SP, DS, BP preserved

INT 2F C000


2F C000 Call MLID control handler with:

Copy to Main

Table 1679

Call MLID control handler with:

AX = logical board number

BX = function number

    0000h "GetMLIDConfiguration"

Return: ES:SI -> MLID's configuration table if successful

  (see #1686 for format)

    0001h "GetMLIDStatistics"

Return: ES:SI -> MLID's statistics table if successful

  (see #1686 for format)

    0002h "AddMulticastAddress"

ES:SI -> 6-byte multicast address to add

    0003h "DeleteMulticastAddress"

ES:SI -> 6-byte multicast address to delete

    0005h "MLIDShutdown"

CX = type

    0000h permanent (also deregisters from LSL)

    other temporary (shutdown hardware only)

    0006h "MLIDReset" reinitialize board / restart from temp shutdown

    0007h "Create Connection" (obsolete?)

???

    0008h "Delete Connection" (obsolete?)

???

    0009h "SetLookAheadSize"

CX = requested lookahead size (00h-80h)

    000Ah "PromiscuousChange"

CX = what to receive promiscuously

    bit 0: MAC frames

    bit 1: non-MAC frames

    000Bh "RegisterReceiveMonitor"

CX = subfunction

    0000h disable receive monitoring

    else  enable receive monitoring

ES:SI -> monitor receive routine

ES:DI -> monitor transmit routine

    000Ch "Driver Poll" (obsolete?)

???

Return: AX = completion code (see #1673)

ZF set if successful

Note:	not all boards/MLIDs support function 0010h; see bit 13 in the MLID

  mode flags field of the MLID's configuration table

INT 2F C000


2F C000 Call protocol stack control entry point with:

Copy to Main

Table 1680

Call protocol stack control entry point with:

BX = function number

    0000h "GetProtocolStackConfiguration"

Return: ES:SI -> protocol stack's configuration table

   (see #1685)

    0001h "GetProtocolStackStatistics"

Return: ES:SI -> protocol stack's statistics table (see #1684)

    0002h "BindToMLID"

CX = board number to bind to

ES:SI -> implementation-dependant parameter string

    0003h "UnBindFromMLID"

CX = board number from which protocol should unbind

ES:SI -> optional implementation-dependant parameter string

    0004h "MLIDDeRegistered"

CX = board number that has de-registered from LSL

Return: AX = status

    0000h successful

    else implementation-dependant error codes

ZF set if successful

SS:SP, DS, BP preserved

INT 2F C000


2F C000 Format of AES ECB:

Copy to Main

Table 1681

Format of AES ECB:

Offset	Size	Description

 00h	DWORD	"AESLink" pointer used by LSL for list management

 04h	DWORD	number of milliseconds to wait

 08h	DWORD	"AESStatus" (is set to 00000000h when AES ESR is invoked)

 0Ch	DWORD	-> function to be invoked when time expires

ES:SI will point to this structure on entry,

DS, BP, and SS:SP must be preserved.

SeeAlso: #1695

INT 2F C000


2F C000 Format of LSL Configuration Table:

Copy to Main

Table 1682

Format of LSL Configuration Table:

Offset	Size	Description

 00h	BYTE	major version of configuration table

 01h	BYTE	minor version of configuration table (decimal, 0-99)

 02h  8 BYTEs	reserved

 0Ah	BYTE	LSL major version (decimal)

 0Bh	BYTE	LSL minor version (decimal, 0-99)

---LSL 1.0x ---

 0Ch 14 BYTEs	reserved

---LSL 1.10+ ---

 0Ch	WORD	maximum number of boards which LSL can handle

 0Eh	WORD	maximum number of protocol IDs which LSL can handle

 10h 12 BYTEs	reserved

INT 2F C000


2F C000 Format of LSL Statistics Table:

Copy to Main

Table 1683

Format of LSL Statistics Table:

Offset	Size	Description

 00h	BYTE	major version of statistics table format

 01h	BYTE	minor version of statistics table format (decimal, 0-99)

 02h	WORD	"GenericCounters" number of counters in static portion of

  table

 04h	DWORD	"ValidCountersMask" bit mask indicating which generic

  counters are actually used.  Bit 31 = TotalTxPackets, bit 30

  is the next field, etc.

 08h	DWORD	"TotalTxPackets" total SendPacket requests made

 0Ch	DWORD	reserved

 10h	DWORD	reserved

 14h	DWORD	"AESEventsCount" number of completed AES events

 18h	DWORD	"PostponedEvents" number of events postponed due to critical

  sections inside the MLIDs

 1Ch	DWORD	"CancelAESFailures" number of times CancelAESEvent failed

 20h	DWORD	reserved

 24h	DWORD	reserved

 28h	DWORD	"TotalRxPackets" total number of GetStackECB requests

 2Ch	DWORD	"UnclaimedPackets" total number of packets not consumed by a

  protocol stack

 30h	WORD	"NumberCustom" number of custom variables that follow

 32h  N DWORDs	custom counters

      N DWORDs	-> CustomCounterStrN (one per custom counter)

var	length-prepended and NULL terminated string for Counter 0

...

var	length-prepended and NULL terminated string for Counter N-1

SeeAlso: #1684,#1690

INT 2F C000


2F C000 Format of Protocol Stack Statistics Table:

Copy to Main

Table 1684

Format of Protocol Stack Statistics Table:

Offset	Size	Description

 00h	BYTE	statistics table major version

 01h	BYTE	statistics table minor version (decimal, 0-99)

 02h	WORD	number of generic counters following

 04h	DWORD	"ValidCountersMask" (bitmask, bit 31 is TotalTxPackets)

 08h	DWORD	TotalTxPackets

 0Ch	DWORD	TotalRxPackets

 10h	DWORD	IgnoredRxPackets

 14h	WORD	number of custom counters

 16h  N DWORDs	custom counters

      N DWORDs	-> CustomCounterStrN (one per custom counter)

var	length-prepended and NULL terminated string for Counter 0

...

var	length-prepended and NULL terminated string for Counter N-1

SeeAlso: #1683,#1690

INT 2F C000


2F C000 Format of Protocol Stack Configuration Table:

Copy to Main

Table 1685

Format of Protocol Stack Configuration Table:

Offset	Size	Description

 00h	BYTE	configuration table major version

 01h	BYTE	configuration table minor version (decimal, 0-99)

 02h	DWORD	-> counted NUL-terminated long descriptive name for protocol

 06h	DWORD	-> counted NUL-terminated short name for protocol (15 chars)

 0Ah	BYTE	protocol stack major version

 0Bh	BYTE	protocol stack minor version (decimal, 0-99)

 0Ch 16 BYTEs	reserved for future use

INT 2F C000


2F C000 Format of MLID Configuration Table:

Copy to Main

Table 1686

Format of MLID Configuration Table:

Offset	Size	Description

 00h 26 BYTEs	signature 'HardwareDriverMLID	     ' (8 spaces on end)

 1Ah	BYTE	configuration table major version

 1Bh	BYTE	configuration table minor version (decimal, 0-99)

 1Ch  6 BYTEs	node address

 22h	WORD	MLID mode flags (see #1687)

 24h	WORD	board number

 26h	WORD	board instance (if more than one of same board installed)

 28h	WORD	maximum packet size

 2Ah	WORD	BestDataSize

 2Ch	WORD	WorstDataSize

 2Eh	DWORD	-> counted NUL-terminated long name for NIC

 32h	DWORD	-> counted NUL-terminated short name for NIC (8 chars max)

 36h	DWORD	-> counted NUL-terminated Frame and Media type

 3Ah	WORD	reserved (0000h)

 3Ch	WORD	frame type ID

 3Eh	WORD	TransportTime (milliseconds)

 40h	DWORD	-> SourceRouteHandler for TokenRing. (Used by ROUTE.COM)

 44h	WORD	lookahead size

 46h	WORD	line speed (Mbps if high bit clear, else Kbps)

 48h	WORD	QueueDepth

 4Ah  6 BYTEs	reserved (0)

 50h	BYTE	driver major version

 51h	BYTE	driver minor version (decimal, 0-99)

 52h	WORD	bus/multicast flags (see #1688)

 54h	WORD	send retries

 56h	DWORD	ConfigTableLink

 5Ah	WORD	MLID sharing flags (see #1689)

 5Ch	WORD	slot number

 5Eh	WORD	I/O address 1

 60h	WORD	I/O range 1

 62h	WORD	I/O address 2

 64h	WORD	I/O range 2

 66h	DWORD	memory address 1

 6Ah	WORD	memory size 1

 6Ch	DWORD	memory address 2

 70h	WORD	memory size 2

 72h	BYTE	interrupt line 1

 73h	BYTE	interrupt line 2

 74h	BYTE	DMA line 1

 75h	BYTE	DMA line 2

INT 2F C000


2F C000 Bitfields for MLID mode flags:

Copy to Main

Table 1687

Bitfields for MLID mode flags:

Bit(s)	Description

 15	MLID supports Octet Reversal

 14	node address is non-canonical

 13	promiscuous mode is supported

 12-8	reserved

 7	LDataSize field in LookAhead structure supported

 6	raw send supported

 5	MLID needs to be polled by LSL

 4	reserved (0)

 3	multicasting is supported

 2	not currently used by DOS ODI, set to 0.

 1	network card uses DMA.

 0	RealDriverBit, always set to 1.

INT 2F C000


2F C000 Bitfields for bus/multicast flags:

Copy to Main

Table 1688

Bitfields for bus/multicast flags:

Bit(s)	Description

 10-9	specialized multicast support

00 = Group addressing is default for medium

01 = Invalid

10 = Filter group address in MLID.

11 = Adapter filters group address.

 2	supports Micro Channel cards

 1	supports ISA cards

 0	supports EISA cards

INT 2F C000


2F C000 Bitfields for MLID sharing flags:

Copy to Main

Table 1689

Bitfields for MLID sharing flags:

Bit(s)	Description

 8	NIC can share DMA2

 7	NIC can share DMA1

 6	NIC can share IRQ2

 5	NIC can share IRQ1

 4	NIC can share Memory2

 3	NIC can share Memory1

 2	NIC can share IO2

 1	NIC can share IO1

 0	MLID is currently shut down

INT 2F C000


2F C000 Format of MLID Statistics Table:

Copy to Main

Table 1690

Format of MLID Statistics Table:

Offset	Size	Description

 00h	BYTE	driver statistics table major version

 01h	BYTE	driver statistics table minor version (decimal, 0-99)

 02h	WORD	number of generic counters (typically 13)

 04h	DWORD	"ValidCountersMask" (bit mask, bit 31 is TotalTxCount)

 08h	DWORD	TotalTxCount

 0Ch	DWORD	TotalRxCount

 10h	DWORD	NoECBAvailableCount

 14h	DWORD	TxTooBigCount

 18h	DWORD	TxTooSmallCount

 1Ch	DWORD	RxOverflowCount

 20h	DWORD	RxTooBigCount

 24h	DWORD	RxTooSmallCount

 28h	DWORD	TxMiscCount

 2Ch	DWORD	RxMiscCount

 30h	DWORD	TxRetryCount

 34h	DWORD	RxChecksumErrorCount

 38h	DWORD	RxMismatchCount

 3Ch	WORD	number of custom counters

 3Eh  N DWORDs	custom counters

      N DWORDs	-> CustomCounterStrN (one per custom counter)

var	length-prepended and NULL terminated string for Counter 0

...

var	length-prepended and NULL terminated string for Counter N-1

SeeAlso: #1683,#1684

INT 2F C000


2F C000 Format of bound stack info structure:

Copy to Main

Table 1691

Format of bound stack info structure:

Offset	Size	Description

 00h	DWORD	-> protocol stack's short name (counted, NUL-terminated)

 04h	DWORD	-> receive handler

 08h	DWORD	-> control handler

INT 2F C000


2F C000 Format of stack info structure:

Copy to Main

Table 1692

Format of stack info structure:

Offset	Size	Description

 00h	DWORD	-> receive handler

 04h	DWORD	-> control handler

INT 2F C000


2F C000 Format of General Service Control Block:

Copy to Main

Table 1693

Format of General Service Control Block:

Offset	Size	Description

 00h	DWORD	-> next GSCB (maintained internally by LSL)

 04h	DWORD	-> entry point for general service handler

 08h	WORD	command code for this general service (8000h-FFFFh)

Note:	the control block must not be altered or deallocated until the general

  service is removed

INT 2F C000


2F C000 Format of Lookahead structure:

Copy to Main

Table 1694

Format of Lookahead structure:

Offset	Size	Description

 00h	DWORD	-> Media header

 04h	DWORD	-> lookahead buffer

 08h	WORD	length of lookahead buffer

 0Ah  6 BYTEs	protocol ID

 10h	WORD	logical board number

 12h	WORD	lookahead size

INT 2F C000


2F C000 Format of ODI ECB:

Copy to Main

Table 1695

Format of ODI ECB:

Offset	Size	Description

 00h	DWORD	link to next ECB

 04h	DWORD	link to previous ECB

 08h	WORD	general status

0000h received successfully

8006h packet overflow

8007h reception aborted (data not valid)

 0Ah	DWORD	-> event service routine or RETF (never 0000h:0000h)(see #1696)

 0Eh	WORD	protocol stack identifier

 10h  6 BYTEs	protocol ID (sending only)

 16h	WORD	MLID board number (sending only)

 18h  6 BYTEs	MAC destination address

 1Eh  4 BYTEs	driver workspace

 22h  4 BYTEs	protocol workspace

 26h	WORD	total length of sent buffer

 28h	WORD	fragment count

 2Ah  2 WORDs	segment,offset of first fragment buffer

 2Eh	WORD	length of first fragment buffer

...

SeeAlso: #1681

INT 2F C000


2F C000 Values event service routine is called with:

Copy to Main

Table 1696

Values event service routine is called with:

ES:SI -> associated ODI ECB (see #1695)

interrupts disabled

Return: DS,BP,SS,SP preserved

interrupt disabled

Notes:	the service routine may invoke any IPX/ODI function except CloseSocket

it is safe to send a packet and wait for completion if enough stack

  space is available

INT 2F C000


2F C000 Call NESL function GetNESLConfigPointer with:

Copy to Main

Table 1697

Call NESL function GetNESLConfigPointer with:

BX = 0000h

Return: AX = completion code (0000h,8008h) (see #1703)

ES:SI -> NESL configuration table if successful (see #1704)

BP,DS,STACK preserved

Desc:	Obtain a pointer to the NESL Configuration Table

SeeAlso: #1698,#1701

INT 2F C000


2F C000 Call NESL function RegisterEventProducer with:

Copy to Main

Table 1698

Call NESL function RegisterEventProducer with:

BX = 0001h

ES:SI -> Producer Event Control Block (PECB) (see #1705)

Return: AX = completion code (0000h, 8005h, 8008h) (see #1703)

ES:SI -> still points to PECB

BP,DS,STACK preserved

Desc:	Allows a module to register as a producer of a given event class

Note:	PECB_ClassName and PECB_Flags must be filled in on entry

SeeAlso: #1577,#1699,#1700,#1701

INT 2F C000


2F C000 Call NESL function DeRegisterEventProducer with:

Copy to Main

Table 1699

Call NESL function DeRegisterEventProducer with:

BX = 0002h

ES:SI -> PECB previously passed to RegisterEventProducer (see #1705)

Return: AX = completion code (0000h, 8002h, 8008h) (see #1703)

ES:SI -> still points to PECB

BP,DS,STACK preserved

Desc:	Allows a module to de-register as a producer of a given event class

SeeAlso: #1698,#1702

INT 2F C000


2F C000 Call NESL function EventNotification with:

Copy to Main

Table 1700

Call NESL function EventNotification with:

BX = 0003h

ES:SI -> PECB previously registered (see #1705)

Return: AX = completion code (0h, 8005h, 8008h) (see #1703)

ES:SI -> still points to PECB

BP,DS,STACK preserved

Desc:	Allows a module to signal that an event has just occurred in a given

  event class.

Notes:	Once called, NESL will generate corresponding callouts for this

  event, as described in Table #1707.

on entry, the PECB_DataPtr must point at an Event Parameter Block (EPB)

  (see #1708) filled in to match the desired event

SeeAlso: #1698

INT 2F C000


2F C000 Call NESL function RegisterEventConsumer with:

Copy to Main

Table 1701

Call NESL function RegisterEventConsumer with:

BX = 0004h

ES:SI -> Consumer Event Control Block (CECB) (see #1706)

Return: AX = completion code (0h, 8005h, 8008h) (see #1703)

ES:SI -> still points to CECB

BP,DS,STACK preserved

Desc:	Allows a module to register as a consumer of a given event class

Note:	on entry, the CECB_ClassName, CECB_NotifProc and CECB_OSILevel must be

  filled in.

SeeAlso: #1698,#1702

INT 2F C000


2F C000 Call NESL function DeRegisterEventConsumer with:

Copy to Main

Table 1702

Call NESL function DeRegisterEventConsumer with:

BX = 0005h

ES:SI -> CECB previously passed to RegisterEventConsumer (see #1706)

Return: AX = completion code (0h, 8002h, 8008h) (see #1703)

ES:SI -> still points to CECB

BP,DS,STACK preserved

Desc:	Allows a module to de-register as a consumer of a given event class

SeeAlso: #1699,#1701

INT 2F C000


2F C000 Values for NESL Error code:

Copy to Main

Table 1703

Values for NESL Error code:

 0000h	Successful

 8002h	Bad Parameter

 8005h	Fail

 8008h	Bad Command

INT 2F C000


2F C000 Format of NESL Configuration Table:

Copy to Main

Table 1704

Format of NESL Configuration Table:

Offset	Size	Description

 00h	WORD	NESL_Cfg_MajVer	 Major Version of this table (=1)

 02h	WORD	NESL_Cfg_MinVer	 Minor Version of this table (=0)

 04h	DWORD	NESL_Cfg_ModLName   -> ASCIZ long name of NESL module

(typically -> "NetWare Event Service Layer for 16-Bit DOS")

 08h	DWORD	NESL_Cfg_ModSName   -> ASCIZ short name of NESL module

(typically -> "NESL")

 0Ch	WORD	NESL_Cfg_ModMajVer  Major Version of NESL itself (=1)

 0Eh	WORD	NESL_Cfg_ModMinVer  Minor Version of NESL itself (=0)

INT 2F C000


2F C000 Format of NESL Producer Event Control Block (PECB):

Copy to Main

Table 1705

Format of NESL Producer Event Control Block (PECB):

Offset	Size	Description

 00h	WORD	PECB_MajVer  Major Version of this structure (=1)

 02h	WORD	PECB_MinVer  Minor Version of this structure (=0)

 04h	DWORD	PECB_NextProducer   -> next PECB.  NULL if last.

 08h	DWORD	PECB_ClassName	    -> ASCIZ string identifying event

  class (see #1709)

 0Ch	DWORD	PECB_ConsumerList   -> list of consumers for this event class

 10h	DWORD	PECB_DataPtr	    -> points to additional data during events

 14h	DWORD	PECB_Flags

Bit 0	=0  consumers should be called "top down" for this

    event class.  (OSI level 7 down to OSI level 1)

=1  consumers should be called "bottom up"

Bits 1-31   Reserved =0

 18h  8 BYTEs	PECB_Reserved (all zeros)

Note:	Although the event producer provides the memory for the PECB, the

  NESL module controls this memory until the event class is

  de-registered.

While owned by NESL, this structure should be treated as read-only,

  except for the PECB_DataPtr field.

INT 2F C000


2F C000 Format of NESL Consumer Event Control Block (CECB):

Copy to Main

Table 1706

Format of NESL Consumer Event Control Block (CECB):

Offset	Size	Description

 00h	WORD	CECB_MajVer  Major Version of this structure (=1)

 02h	WORD	CECB_MinVer  Minor Version of this structure (=0)

 04h	DWORD	CECB_NextConsumer   -> next CECB.  NULL if last.

 08h	DWORD	CECB_ClassName	    -> ASCIZ string identifying event

  class (see #1709)

 0Ch	DWORD	CECB_NotifProc	    -> FAR CALL event handler (see #1707)

 10h	WORD	CECB_OSILevel

Bits 4-7 = OSI Layer of this module (1 through 7)

Bits 0-3 = relative ordering with other modules on same layer

 13h 14 BYTEs	CECB_Reserved (all zeros)

Note:	Although the event consumer provides the memory for the CECB, the

  NESL module controls this memory until the consumer is de-registered.

While owned by NESL, this structure should be treated as read-only,

INT 2F C000


2F C000 Values NESL Consumer Notification Procedure is called with:

Copy to Main

Table 1707

Values NESL Consumer Notification Procedure is called with:

ES:SI -> Event Parameter Block (EPB) (see #1708)

Return: AX = completion code (0000h, 8005h) (see #1703)

ES:SI -> still points to EPB

Desc:	Called by NESL to notify the consumer when an event has occurred in

  an event class for which it has registered.

SeeAlso: #1706

INT 2F C000


2F C000 Format of NESL Event Parameter Block (EPB):

Copy to Main

Table 1708

Format of NESL Event Parameter Block (EPB):

Offset	Size	Description

 00h	WORD	EPB_MajVer  Major Version of this structure (=1)

 02h	WORD	EPB_MinVer  Minor Version of this structure (=0)

 04h	DWORD	EPB_ClassName  -> ASCIZ string identifying event class

  (see #1709)

 08h	DWORD	EPB_EventName  -> ASCIZ string identifying event within

  class (see #1710)

 0Ch	DWORD	EPB_ModuleName -> ASCIZ string identifying module

  producing event

 10h	DWORD	EPB_DataPtr0   -> event-defined data or NULL if not used

 14h	DWORD	EPB_DataPtr1   -> event-defined data or NULL if not used

 18h  8 BYTEs	EPB_Reserved (all zeros)

INT 2F C000


2F C000 Values for NESL Event Class Names:

Copy to Main

Table 1709

Values for NESL Event Class Names:

 Event Class	Description

 -------------------	-----------------------------------------

 Service Suspend	Suspension of a service.  Called top-down.

 Service Resume	Resumption/availability of a service. Called bottom-up.

 Service/Status Change	Change in status or level of service.  Called top-down.

 Suspend Request	Request to suspend a service.  Called bottom-up.

Note:	Contact Novell Labs to register new event classes.

INT 2F C000


2F C000 Values for NESL Event Names:

Copy to Main

Table 1710

Values for NESL Event Names:

 Event Name	Class	    Description

 --------------------------	-------------	    ---------------------------

 MLID Cable Disconnect	Service Suspend	    Cable disconnected from NIC

 MLID Card Removal	Service Suspend	    PCMCIA card removed

 MLID Hardware Failure	Service Suspend	    Serious hardware

  failure in NIC

 MLID Not In Range	Service Suspend	    Wireless access point

  is out of range

 MLID Shutdown	Service Suspend	    MLID was shut down

 MLID Media Access Denied	Service Suspend	    Access to physical

  medium unsuccessful

 MLID Cable Reconnect	Service Resume	    Cable re-connected to NIC

 MLID Card Insertion Complete	Service Resume	    PCMCIA card inserted

 MLID In Range	Service Resume	    Wireless access point

  in range

 MLID Reset	Service Resume	    MLID was just reset

 MLID Access Point Change	Serv/Status Change  Station has moved to

  new access point

 MLID Speed Change	Serv/Status Change  Change in communic. speed

Note:	Contact Novell Labs to register new event names.

For all predefined events above, EPB_DataPtr0 (see #1708) points

  to the MLID Configuration table (see AX=C000h"ODI") for the

  affected MLID.

INT 2F C000


2F C000 Format of NETWARN Configuration structure:

Copy to Main

Table 1711

Format of NETWARN Configuration structure:

Offset	Size	Description

 103h 7 BYTEs	signature string "NETWARN"

 10Ah	BYTE	major version in ASCII (="1")

 10Bh	BYTE	minor version in ASCII (="0")

 10Ch	DWORD	minimum size of EXE cared about in bytes (/S=xxxx)

 110h	WORD	same value in kilobytes (see 0113h, bit 4 below)

 112h	BYTE	multiplex code (AH value) actually being used

 113h	WORD	options (see #1712)

 115h	DWORD	INT 21h vector before NETWARN loaded

 119h	DWORD	INT 2Fh vector before NETWARN loaded

 11Dh 16 BYTEs	ASCIIZ local name of last device which was checked

 12Dh 128 BYTEs ASCIIZ remote name of last device which was checked

Note:	the specified offsets are from the start of the resident segment

INT 2F C000


2F C000 Bitfields for NETWARN options:

Copy to Main

Table 1712

Bitfields for NETWARN options:

Bit(s)	Description

 0	??? (=0)

 1	/U (Unload) selected (never in resident)

 2	/E (Enabled) Will trap & check EXEC's

 3	/D (Disabled) No EXEC checking done

 4	/S (Size) was set (see 010Ch, 0110h above)

 5	/P (Path shown)

 6	/H or /? (Help) (never in resident)

SeeAlso: #1711

INT 2F C000


2F C000 Format of PrintCache configuration table:

Copy to Main

Table 1713

Format of PrintCache configuration table:

Offset	Size	Description

 00h 26 BYTEs	ASCIZ signature string "TORQ Configuration Table: "

 1Ah  2 BYTEs	???

 1Ch	DWORD	-> data table (see #1714)

 20h  4 BYTEs	ASCIZ version string ("3.1" for v3.1)

 24h  5 BYTEs	???

 29h 12 BYTEs	ASCIZ version date string ("Aug 31 1993" for v3.1)

 35h	WORD	buffered port type (01h = LPT, 02h = COM)

 37h	WORD	buffered port BIOS port number

 39h  5 BYTEs	ASCIZ buffered port name ("LPTn" or "COMn")

 3Eh	WORD	physical port type (01h = LPT, 02h = COM)

 40h	WORD	physical port BIOS port number

 42h  5 BYTEs	ASCIZ physical port name ("LPTn" or "COMn")

 47h	BYTE	port driver IRQ

 48h 21 BYTEs	???

 5Dh	WORD	buffer size in K

 5Fh 27 BYTEs	???

 7Ah	BYTE	popup hotkey shift states (see #0442 at INT 16/AH=02h)

 7Bh	BYTE	popup hotkey scan code (see #0005 at INT 09h"IRQ1")

 7Ch  4 BYTEs	???

 80h 20 BYTEs	ASCIZ printer type name

???

INT 2F C000


2F C000 Format of PrintCache data table:

Copy to Main

Table 1714

Format of PrintCache data table:

Offset	Size	Description

 00h  2 BYTEs	???

 02h	DWORD	-> ??? entry point

???

INT 2F C000


2F C000 Values for Frank Kintrup TSR program ID:

Copy to Main

Table 1715

Values for Frank Kintrup TSR program ID:

 4153h	"AS"	ASCII.COM	ASCII table with paste function

 434Ch	"CL"	CLOCK.COM	clock with date/time display and alarm

 5043h	"PC"	PCALC.COM	programmer's calculator with paste function

 5343h	"SC"	SCRSAVE.COM	screen saver with mouse support and hotkey

 5544h	"UD"	UNDEL.COM	undelete program like SMARTCAN or DPROTECT

INT 2F C000


2F C001 Format of DIMWIT TSR configuration data:

Copy to Main

Table 1716

Format of DIMWIT TSR configuration data:

Offset	Size	Description

 00h	WORD	blanking delay in clock ticks

 02h	BYTE	instant-blanking hotkey scan code

Ctrl and Alt must also be pressed

INT 2F C001


2F C058 Values for Explosiv function status:

Copy to Main

Table 1717

Values for Explosiv function status:

 00h	successful

 01h	code too large to available space

 02h	no data read, load aborted

 03h	incomplete load, default blanking display loaded instead

 58h	unexpected offset in DX

INT 2F C058


2F C300 Values for SpaceManager program identifier:

Copy to Main

Table 1718

Values for SpaceManager program identifier:

 9000h	SMOUNT (SuperMount)

 9001h	SELECTC (SelectCompress)

 9002h	SUPERX (SuperExchange)

 9003h	FORTUNE (FortuneTeller)

INT 2F C300


2F CB01 Values for CAS error code:

Copy to Main

Table 1719

Values for CAS error code:

  (AH = class, AL = subcode, value passed back is 2's complement)

  Class 00h	--- FAX warnings

Subcode 00h	no error

02h	bad scanline count

03h	page sent with errors, could not retransmit

04h	received data lost

05h	invalid or missing logo file

06h	filename does not match nonstandard format (NSF) header

07h	file size does not match NSF header

  Class 01h	--- DOS warnings (data was sent)

Subcode 01h	invalid function

05h	access denied

06h	invalid handle

others	see INT 21/AH=59h

  Class 02h	--- fatal errors (data not sent)

Subcode 00h	multiplex handler failed

01h	unknown command

02h	bad event handle

03h	FIND NEXT attempted before FIND FIRST

04h	no more events

07h	invalid queue type

08h	bad control file

09h	communication board busy

0Ah	invalid command parameter

0Bh	can't uninstall resident code

0Ch	file exists

80h	unknown task type

81h	bad phone number

82h	bad .PCX file header

83h	unexpected EOF

84h	unexpected disconnect

85h	too many dialing retries

86h	no file specified for send

87h	communication board timeout

88h	received too many pages (>1023) of data

89h	manual connect initiated too long ago

8Ah	hardware command set error

8Bh	bad NonStandard Format (NSF) header file

  Class 03h	--- fatal DOS errors

Subcode 02h	file not found

03h	path not found

others	see INT 21/AH=59h

  Class 04h	--- FAX errors

Subcode 01h	remote unit not Group 3 compatible

02h	remote unit did not send capabilities

03h	other FAX machine incompatible

04h	other FAX incapable of file transfers

05h	exceeded retrain or FAX resend limit

06h	line noise or failure to agree on bit rate

07h	remote disconnected after receiving data

08h	no response from remote after sending data

09h	remote's capabilities incompatible

0Ah	no dial tone (v1.2+)

0Bh	invalid response from remote unit after sending data

0Dh	phone line dead or remote unit disconnected

0Eh	timeout while waiting for secondary dial tone (v1.2+)

11h	invalid command from remote after receiving data

15h	tried to receive from incompatible hardware

5Ch	received data overflowed input buffer

5Dh	remote unexpectedly stopped sending data

5Eh	other FAX machine jammed (no data sent)

5Fh	remote took too long to send fax scan line

63h	can't get through to remote unit

64h	user canceled event

  Class 05h	--- application-specific (v1.2+)

  ---Intel FAXPOP.EXE

Subcode 00h	tried to send while in graphics mode

01h	insufficient disk space

02h	internal buffer overflow

  Class 06h	--- CAS implementation-specific (v1.2+)

INT 2F CB01


2F CB0E Format of CAS external data block:

Copy to Main

Table 1720

Format of CAS external data block:

Offset	Size	Description

 00h	BYTE	CAS major version

 01h	BYTE	CAS minor version

 02h 68 BYTEs	ASCIZ path to directory containing CAS software, ends in slash

 46h 13 BYTEs	ASCIZ name of current phonebook (in CAS directory)

 53h 13 BYTEs	ASCIZ name of current logo file (in CAS directory)

 60h 32 BYTEs	ASCIZ default sender name

 80h 21 BYTEs	ASCIZ CCITT identification of fax device

 95h 107 BYTEs	reserved

INT 2F CB0E


2F CB10 Values for CAS event type:

Copy to Main

Table 1721

Values for CAS event type:

 00h	send

 01h	receive

 02h	polled send

 03h	polled receive

 04h to 7Fh reserved

 FFh	serious hardware error

INT 2F CB10


2F CB10 Format of CAS status area:

Copy to Main

Table 1722

Format of CAS status area:

Offset	Size	Description

 00h	BYTE	event type (see #1721)

 01h	BYTE	transfer type

00h 200x200 dpi, FAX mode

01h 100x200 dpi, FAX mode

02h file transfer mode

03h to 7Fh reserved

 02h	WORD	event status (see #1723)

 04h	WORD	event time (packed DOS time format, see INT 21/AX=5700h)

 06h	WORD	event date (packed DOS date format, see INT 21/AX=5700h)

 08h	WORD	number of files to transfer, max 7FFFh

 0Ah	WORD	offset of file transfer record

 0Ch 47 BYTEs	ASCIZ phone number to call

 3Bh 64 BYTEs	ASCIZ application-specific tag string

 7Bh	BYTE	reserved (00h)

 7Ch	BYTE	connect time, seconds

 7Dh	BYTE	connect time, minutes

 7Eh	BYTE	connect time, hours

 7Fh	DWORD	total number of pages in all files

 83h	DWORD	pages already transmitted

 87h	WORD	number of files already transmitted

 89h	BYTE	cover page flag

00h don't transmit cover page

01h transmit cover page

02h to 7Fh reserved

 8Ah	WORD	total number of transmission errors

 8Ch 78 BYTEs	reserved (zeros)

 DAh 21 BYTEs	ASCIZ remote FAX's CCITT identification

 EFH 32 BYTEs	ASCIZ destination name

10Fh 32 BYTEs	ASCIZ sender name

12Fh 80 BYTEs	filename of PCX logo file (max 1780x800 pixels)

17Fh 128 BYTEs	file transfer record for current event (see #1724)

INT 2F CB10


2F CB10 Values for CAS event status:

Copy to Main

Table 1723

Values for CAS event status:

 0000h	completed successfully

 0001h	waiting

 0002h	number dialed

 0003h	connected, sending

 0004h	connected, receiving

 0005h	aborted

 0006h to 007Fh reserved

 0080h to 7FFFh application-specific events

 8000h to FFFFh error codes

INT 2F CB10


2F CB10 Format of CAS file transfer record:

Copy to Main

Table 1724

Format of CAS file transfer record:

Offset	Size	Description

 00h	BYTE	file type (ignored unless FAX)

00h ASCII

01h PCX

02h DCX

03h to 7Fh reserved

 01h	BYTE	text size for ASCII FAX file

00h = 80 columns by 66 lines (11 inches)

01h = 132 columns by 88 lines (11 inches)

02h to 7Fh reserved

 02h	BYTE	status of file

00h untouched

01h opened

02h moved

03h deleted

04h not yet received

05h to 7Fh reserved

 03h	DWORD	bytes already transmitted

 07h	DWORD	file size in bytes

 0Bh	WORD	pages alread transmitted

 0Dh	WORD	number of pages in file

 0Fh 80 BYTEs	ASCIZ filename

 5Fh	BYTE	1/8 inch page length

if page length below set to 01h through 7Fh, this value

  specifies additional 1/8 inch increments to page length

 60h	BYTE	page length

00h = 11 inches

01h to 7Fh = page length is this number of inches plus value of

  1/8 inch field above

80h to FEh reserved

FFh = ASCII pages ending with formfeed

 61h 31 BYTEs	reserved (zeros)

INT 2F CB10


2F CB12 Format of status buffer for Intel Connection CoProcessor:

Copy to Main

Table 1725

Format of status buffer for Intel Connection CoProcessor:

Offset	Size	Description

 00h	BYTE	Connection CoProcessor connection status flags (see #1728)

 01h	BYTE	number of kilobytes of free buffer space

 02h	BYTE	page buffer status

bit 7: Connection CoProcessor has documents to send

bits 6-0: number of pages in buffer

 03h	BYTE	number of retries left for dialing number

 04h	BYTE	page number to retransmit

 05h	BYTE	communications status (see #1729)

 06h	BYTE	baud rate (see #1726)

 07h  3 BYTEs	reserved

 0Ah	BYTE	Connection CoProcessor hardware status (see #1730)

 0Bh	BYTE	Connection CoProcessor switch states (see #1731)

 0Ch	BYTE	communications flags (see #1732)

 0Dh	BYTE	reserved

 0Eh	WORD	error count (only valid while busy, reset when idle)

 10h	DWORD	size of nonstandard format (NSF) file in bytes

 14h	BYTE	'A' if Connection CoProcessor board present

 15h  9 BYTEs	reserved

 1Eh 21 BYTEs	ASCIZ CCITT identification

 33h 77 BYTEs	reserved

Note:	the Intel Connection CoProcessor and SatisFAXtion may be distinguished

  by examining the byte at offset 14h

INT 2F CB12


2F CB12 Bitfields for Connection CoProcessor baud rate:

Copy to Main

Table 1726

Bitfields for Connection CoProcessor baud rate:

Bit(s)	Description

 7	reserved

 6-4	baud rate

000 = 300 baud	(V.21 SDLC or HDLC mode)

100 = 2400 baud (V.27 ter)

101 = 4800 baud (V.27 ter)

110 = 7200 baud (V.29)

111 = 9600 baud (V.29)

 3-0	reserved, should be 0110

INT 2F CB12


2F CB12 Format of status buffer for Intel SatisFAXtion board:

Copy to Main

Table 1727

Format of status buffer for Intel SatisFAXtion board:

Offset	Size	Description

 00h	BYTE	SatisFAXtion connection status flags (see #1733)

 01h	BYTE	SatisFAXtion board state (see #1734)

 02h	BYTE	number of KB free in buffer

 03h	BYTE	number of pages or files in buffer

 04h	BYTE	number of redials remaining on current number

 05h	BYTE	FAX page number to retransmit

 06h	BYTE	current page/file in block transfer

 07h	BYTE	number of rings received (only if auto-answer enabled)

 08h	WORD	error count

 0Ah	DWORD	length of file being transferred

 0Eh  6 BYTEs	reserved

 14h	BYTE	'B' if SatisFAXtion board present

 15h 13 BYTEs	ASCIZ transfer agent name

 22h  5 BYTEs	ASCIZ transfer agent version number

 27h 13 BYTEs	ASCIZ resident loader name

 34h  5 BYTEs	ASCIZ resident loader version number

 39h 21 BYTEs	ASCIZ remote CSID

 4Eh 13 BYTEs	ASCIZ resident manager name

 5Bh  5 BYTEs	ASCIZ resident manager version number

 60h 32 BYTEs	reserved

Note:	the Intel Connection CoProcessor and SatisFAXtion may be distinguished

  by examining the byte at offset 14h

INT 2F CB12


2F CB12 Bitfields for Connection CoProcessor connection status flags:

Copy to Main

Table 1728

Bitfields for Connection CoProcessor connection status flags:

Bit(s)	Description

 7	hardware busy sending or receiving

 6	last page of data

 5	no data on current page

 4	retransmit request for current page being transmitted

 3	NSF (nonstandard file) mode active

 2-0	reserved

INT 2F CB12


2F CB12 Bitfields for communications status:

Copy to Main

Table 1729

Bitfields for communications status:

Bit(s)	Description

 7	originating call

 6	FAX message to be sent

 5	on line

 4	ring detected and receive enabled

 3	buffer dumped on receive

 2-0	hardware sequence state

000 idle

001 dial

010 answer

011 transmit

100 receive

101 pre-message

110 post-message

111 disconnect

INT 2F CB12


2F CB12 Bitfields for Connection CoProcessor hardware status:

Copy to Main

Table 1730

Bitfields for Connection CoProcessor hardware status:

Bit(s)	Description

 7	modem option installed

 6	Connection CoProcessor has control of DAA (not latched)

 5	on line (not latched)

 4	ring detected (not latched)

 3	data in command buffer (not latched)

 2	set if using DMA channel 1, clear if using DMA channel 3

 1	line length compensation 1 set (not latched)

 0	line length compensation 0 set (not latched)

INT 2F CB12


2F CB12 Bitfields for Connection CoProcessor switch states:

Copy to Main

Table 1731

Bitfields for Connection CoProcessor switch states:

Bit(s)	Description

 7	reserved

 6	unused

 5	spare switch open

 4	FAX ADR1 switch open

 3	FAX ADR0 switch open

 2	alternate interrupt switch open

 1	COM SEL 1 switch open

 0	COM SEL 0 switch open

Note:	valid combinations of 0-2 are

000  COM2 IRQ3 IObase 2F8h

001  COM1 IRQ4 IObase 3F8h

010  COM4 IRQ3 IObase 2E8h

011  COM3 IRQ4 IObase 3E8h

110  COM4 IRQ2 IObase 2E8h

111  COM3 IRQ5 IObase 3E8h

INT 2F CB12


2F CB12 Bitfields for communications flags:

Copy to Main

Table 1732

Bitfields for communications flags:

Bit(s)	Description

 7	reserved

 6	auxiliary relay forced ON

 5	modem select relay forced ON

 4	offhook relay forced ON

 3	9600 bps enabled

 2	7200 bps enabled

 1	4800 bps enabled

 0	2400 bps enabled

INT 2F CB12


2F CB12 Bitfields for SatisFAXtion connection status flags:

Copy to Main

Table 1733

Bitfields for SatisFAXtion connection status flags:

Bit(s)	Description

 7	busy in T.30 CCITT fax protocol

 6	data on current page/file (only used for block xfers)

 5	retransmission of last page requested

 4	in file transfer mode

 3	data in buffer

 2	data buffer dumped on receive

 1	200x100 dpi resolution instead of 200x200 dpi

 0	data modem in use, FAX image modem not available

INT 2F CB12


2F CB12 Bitfields for SatisFAXtion board state:

Copy to Main

Table 1734

Bitfields for SatisFAXtion board state:

Bit(s)	Description

 7	reserved

 6	handset jack active, data and FAX modems not available

 5-3	current rate

000  300 bps (V.21 HDLC)

100 2400 bps (V.27 ter)

101 4800 bps (V.27 ter)

110 7200 bps (V.29)

111 9600 bps (V.29)

 2-0	T.30 CCITT protocol state

000 idle

001 dialing

010 answering

011 transmitting

100 receiving

101 pre-message

110 post-message

111 disconnect

INT 2F CB12


2F CB13 Bitfields for Intel Connection CoProcessor failure codes:

Copy to Main

Table 1735

Bitfields for Intel Connection CoProcessor failure codes:

Bit(s)	Description

 3	9600 bps FAX modem module failed

 2	SDLC chip failed

 1	RAM failed

 0	ROM checksum failed

INT 2F CB13


2F CB13 Bitfields for Intel SatisFAXtion failure codes:

Copy to Main

Table 1736

Bitfields for Intel SatisFAXtion failure codes:

Bit(s)	Description

 1	2400 bps data modem failed

 0	9600 bps FAX modem failed

INT 2F CB13


2F CB15 Format of CAS file submission data area:

Copy to Main

Table 1737

Format of CAS file submission data area:

Offset	Size	Description

 00h	BYTE	transfer type

00h = 200x200 dpi, fax mode

01h = 100x200 dpi, fax mode

02h = file transfer mode

03h to 7Fh reserved

 01h	BYTE	text size

00h = 80 columns

01h = 132 columns

02h to 7Fh reserved

 02h	WORD	time to send (DOS packed time, see #0876 at INT 21/AX=5700h)

 04h	WORD	date to send (DOS packed date, see #0877 at INT 21/AX=5700h)

 06h 32 BYTEs	ASCIZ destination name

 26h 80 BYTEs	ASCIZ name of file to send

 76h 47 BYTEs	ASCIZ phone number to dial

 A5h 64 BYTEs	ASCIZ application-specific tag string

 E5h	BYTE	reserved (00h)

 E6h	BYTE	cover page

00h don't send cover page

01h send cover page

02h to 7Fh reserved

 E7h 23 BYTEs	reserved (zeros)

 FEh variable	ASCIZ string containing text of cover page (if cover page flag

set to 01h)

INT 2F CB15


2F CC-- Values for PC-Kwik program identifier:

Copy to Main

Table 1738

Values for PC-Kwik program identifier:

 00h	all installed PowerPak programs

 01h	SUPERPCK/SUPER/QCACHE v4.00+ (disk cache)

 02h	PCKSPL (print spooler)

 04h	PCKSCRN (screen accelerator)

 05h	PCKKEY (keyboard enhancer)

 06h	PCKRAMD (RAM disk)

 08h	PCKWIK.SYS

 10h	PCKCDROM (CD-ROM support for SUPERPCK)

INT 2F CC--


2F CD04 Values for IPI function status:

Copy to Main

Table 1739

Values for IPI function status:

 00h	successful

 80h	unsuccessful

 81h	scan line out of range

 82h	unsupported scan line density

 83h	out of memory

 84h	unrecognized source

 85h	initialization error

INT 2F CD04


2F CD04 Format of structure:

Copy to Main

Table 1740

Format of structure:

Offset	Size	Description

 00h	WORD	image source (0 = conventional memory, 1 = expanded memory)

 02h	DWORD	pointer to image data

 06h	WORD	scan line on which to place

 08h	WORD	bit offset from start of scan line at which to place

 0Ah	WORD	density of bitmap data (300, 600, or 1200 dpi)

 0Ch	WORD	width in bits of data

 0Eh	WORD	source logical page number

 10h	WORD	source handle (only if source in expanded memory)

 12h	WORD	source offset (only if source in expanded memory)

INT 2F CD04


2F CD07 Format of SWELL.EXE info buffer:

Copy to Main

Table 1741

Format of SWELL.EXE info buffer:

Offset	Size	Description

 00h	WORD	20h  (total size of buffer)

 02h	BYTE	suspend-once mode active if nonzero

 03h	BYTE	00h active, 01h suspended

 04h	BYTE	00h quiet, 01h verbose

 05h	BYTE	"Borland support" (allowing INT 21/AX=4B01h) on if nonzero

 06h 26 BYTEs	unused???

INT 2F CD07


2F CD08 Format of IPI screen image structure:

Copy to Main

Table 1742

Format of IPI screen image structure:

Offset	Size	Description

 00h	WORD	image source (0 = conventional memory, 1 = expanded memory)

 02h	DWORD	pointer to image data

 06h	WORD	horizontal position on paper of left edge (in 1200 dpi units)

 08h	WORD	vertical position on paper of top edge (in 1200 dpi units)

 0Ah	WORD	left cropping (currently must be zero)

 0Ch	WORD	top cropping (currently must be zero)

 0Eh	WORD	width (currently must be 8000h)

 10h	WORD	height (currently must be 8000h)

 12h	WORD	horizontal size of image in 1200 dpi units

 14h	WORD	vertical size of image in 1200 dpi units

 16h	WORD	aspect ratio (currently reserved)

 18h	WORD	initialization flag (if 01h, initialization is performed)

 1Ah	WORD	pixels per line of source data

 1Ch	WORD	number of scan lines in source data

 1Eh	WORD	number of scan lines in packet

 20h	WORD	bits per pixel (1,2,4,6, or 8)

 22h	WORD	pixels per byte (1,2,4, or 8)

 24h	WORD	compression type (currently only 00h [uncompressed] supported)

 26h	WORD	source page number (if in expanded memory)

 28h	WORD	source handle (if in expanded memory)

 2Ah	WORD	source offset (if in expanded memory)

INT 2F CD08


2F CD09 Format of IPI load screen structure:

Copy to Main

Table 1743

Format of IPI load screen structure:

Offset	Size	Description

 00h	BYTE	style

44h ('D') diamond style

4Ch ('L') line style

 01h	BYTE	reserved (00h)

 02h	WORD	frequency in lines per inch [sic]

currently, coerced to nearest of 50, 60, 68, 70, 75, 85, or 100

 04h	WORD	screen angle in degrees (-360 to 360)

currently coerced to nearest of -45, 0, 45, or 90

INT 2F CD09


2F CD0A Format of IPI palette structure:

Copy to Main

Table 1744

Format of IPI palette structure:

Offset	Size	Description

 00h	BYTE	bits per pixel for which palette is to be used (1,2,4,6, or 8)

 01h	2**N	palette translation values, one per possible pixel value

INT 2F CD0A


2F D100 Format of MDEBUG identification table:

Copy to Main

Table 1745

Format of MDEBUG identification table:

Offset	Size	Description

 -2	WORD	entry offset

 00h	WORD	CS of MDEBUG

 02h	DWORD	old INT 08h vector

 06h	DWORD	old INT 09h vector

 0Ah	DWORD	address INT 16h routine used by MDEBUG

 0Eh	BYTE	length of version string

 0Fh  N BYTEs	version string

INT 2F D100


2F D102 Values for MDEBUG error number:

Copy to Main

Table 1746

Values for MDEBUG error number:

 01h	syntax error

 02h	first shell of the command.com is activ

 03h	Esc pressed

 04h	break pressed

 05h	DOS is busy

 06h	command ended

 07h	division by zero

 08h	invalid display driver

 09h	invalid command driver

 0Ah	error 8 and 9

 0Bh	unknown error

 0Ch	new error

 else	unknown error

INT 2F D102


2F D102 Format of MDEBUG data structure:

Copy to Main

Table 1747

Format of MDEBUG data structure:

Offset	Size	Description

 00h	WORD	register SE

 02h	WORD	register OF

 04h	WORD	register FS

 06h	WORD	register FO

 08h	WORD	register AX

 0Ah	WORD	register BX

 0Ch	WORD	register CX

 0Eh	WORD	register DX

 10h	WORD	register SI

 12h	WORD	register DI

 14h	WORD	register DS

 16h	WORD	register ES

 18h	WORD	register BP

 1Ah	WORD	register SS

 1Ch	WORD	register SP

 1Eh	WORD	register FL (flags)

 20h	WORD	register R0

 22h	WORD	register R1

 24h	WORD	register R2

 26h	WORD	register R3

 28h	WORD	register R4

 2Ah	WORD	register R5

 2Ch	WORD	register R6

 2Eh	WORD	register R7

 30h	WORD	register R8

 32h	WORD	register CS, return-address

 34h	WORD	register IP, return-address

 36h	DWORD	saved pointer to data for key <F6> (v1.60)

saved monitor address (v1.70)

 3Ah 12 WORDs	saved register values on last popup entry (for <F8> key)

(original register values at popup entry of MDEBUG)

AX, BX, CX, DX, SI, DI, DS, ES, BP, SS, SP, flags

 52h 12 WORDs	saved register values on last popup exit (for <SHIFT-F8> key)

AX, BX, CX, DX, SI, DI, DS, ES, BP, SS, SP, flags

 6Ah	DWORD	address of the DOS-invars-table

 6Eh	DWORD	address of the InDOS flag

 72h	WORD	offset of the register which is used for the segment of the

  first monitor window

 74h	WORD	offset of the register which is used for the offset of the

  first monitor window

 76h	WORD	name of the register which is used for the segment of the

  first monitor segment

 78h	WORD	name of the register which is used for the offset of the first

  monitor window

 7Ah	WORD	pseudo register 1

 7Ch	WORD	pseudo register 2

INT 2F D102


2F D110 Format of the MDEBUG driver identification table:

Copy to Main

Table 1748

Format of the MDEBUG driver identification table:

Offset	Size	Description

 00h  26 BYTEs	 signature "Kommandotreiber für MDEBUG"

     ^- Note: ASCII 129,German U-umlaut

 27h  12 BYTEs	 name of driver, e.g. "MDHISDRV.COM"

 each driver must have a unique name

INT 2F D110


2F D201 Call VIDRAM entry point with:

Copy to Main

Table 1749

Call VIDRAM entry point with:

AH = 00h get status

Return: AL = VIDRAM state (see #1750)

BL = extra RAM status (see #1751)

BH = feature flags (see #1752)

CL = current monitor (01h = mono, 80h = color)

SI = current top of memory (paragraph)

DI = segment of start of HiRAM chain

AH = 01h setup

AL = VIDRAM state (see #1750)

BL = extra RAM status (see #1751)

BH = feature flags (see #1752)

CL = monitor (01h = monochrome, 80h = color)

SI = new top of memory (paragraph)

DI = segment of start of HiRAM chain

AH = 02h get end address of VIDRAM code

Return: ES:DI -> VIDRAM partial map context (see #1753,#1754)

Return: CF set on error

CF clear if successful

INT 2F D201


2F D201 Values for VIDRAM state:

Copy to Main

Table 1750

Values for VIDRAM state:

 00h	off

 01h	no EGA graphics

 02h	no graphics at all

INT 2F D201


2F D201 Values for VIDRAM extra RAM status:

Copy to Main

Table 1751

Values for VIDRAM extra RAM status:

 00h	VIDRAM does not use extra RAM

 01h	VIDRAM uses EMS as extra RAM

 02h	VIDRAM uses EGA as extra RAM

INT 2F D201


2F D201 Bitfields for VIDRAM feature flags:

Copy to Main

Table 1752

Bitfields for VIDRAM feature flags:

Bit(s)	Description

 0	override enabled

 1	mapped memory detected in A000h-B000h range

 2	top of memory not at 640K

 3	MDA detected

 4	high RAM exists in video area

 5	mapped memory detected in video area

 6-7	reserved???

INT 2F D201


2F D201 Format of VIDRAM partial map context (EMS 3.2):

Copy to Main

Table 1753

Format of VIDRAM partial map context (EMS 3.2):

Offset	Size	Description

 00h	BYTE	EMS version ID (32h)

 01h	WORD	EMM handle for this entry

 03h	BYTE	number of frames

 04h	BYTE	first page frame

 05h	WORD	offset from ES to previously saved map

INT 2F D201


2F D201 Format of VIDRAM partial map context (EMS 4.0):

Copy to Main

Table 1754

Format of VIDRAM partial map context (EMS 4.0):

Offset	Size	Description

 00h	BYTE	EMS version ID (40h)

 01h	WORD	mappable segment count

 03h  N WORD	mappable segments

WORD	offset to previously saved map???

INT 2F D201


2F D44D Format of 4DOS v4.0 data area:

Copy to Main

Table 1755

Format of 4DOS v4.0 data area:

Offset	Size	Description

 00h  2 BYTEs	???

 06h	WORD	XMS handle for swapping

???

INT 2F D44D


2F D44D Format of 4DOS EXEC record:

Copy to Main

Table 1756

Format of 4DOS EXEC record:

Offset	Size	Description

 00h	WORD	offset of ASCIZ program name in same segment as EXEC record

 02h	WORD	offset of DOS commandline in same segment as EXEC record

 04h	WORD	segment of environment for child process (see INT 21/AH=26h)

INT 2F D44D


2F D600 Format of HEART.COM buffer:

Copy to Main

Table 1757

Format of HEART.COM buffer:

Offset	Size	Description

 00h  8 WORDs	table of colors/attributes (see notes above)

 10h	BYTE	flags

bit 0: program is in critical section, so flash double

      exclamation mark

bit 1: program is in safe code, so flash the heart character

 11h	WORD	position of heartbeat on screen, normally 009Eh (last column

of second line)

INT 2F D600


2F D800 Call CLIENT API entry point with:

Copy to Main

Table 1758

Call CLIENT API entry point with:

BX = function

    0000h get ???

Return: DX = CLIENT version??? (0101h for v1.1)

ES:BX -> ??? data

    0001h ???

    0002h ???

    0003h ???

    0004h ???

    0005h ???

DL = ???

???

Return: ???

    0006h get module name???

ES:DI -> 16-byte buffer

Return: CX = ???

ES:DI filled with "NWLITE_CLIENT" 00h 00h 00h

    0007h ???

DX:CX = ???

???

Return: ???

    0008h ???

    0009h ???

DL = ???

ES:DI -> 16-byte buffer for ???

Return: CF clear if successful

    AX = 0000h

    CX = 0000h

    SI,DI destroyed

CF set on error

    AX = error code 4903h

    000Ah ???

AH = subfunction

    00h get ???

    01h clear/set ??? flag

AL = new state (00h cleared, 01h set)

    02h set ???

DX = new value of ???

Return: DX = old value of ???

    000Bh ???

AX = ???

???

Return: ???

    000Ch ???

AX = ???

???

Return: ???

    000Dh ???

AX = ???

???

Return: ???

    000Eh get original INT 17

Return: CF clear

ES:BX -> original INT 17

    000Fh ???

    0010h ???

AX = ???

???

Return: ???

    0011h get ???

Return: CF clear

DL = ???

    0012h get ???

AL = index of ???

ES:DI -> 10-byte buffer for ???

Return: CF clear if successful

    ES:DI buffer filled

    AX,CX destroyed

CF set on error

    AX = error code (4907h if AL out of range)

    0013h get ???

Return: CF clear

DH = ???

DL = ???

    0014h ???

DL = ???

???

Return: CF clear if successful

    ???

CF set on error

    AX = error code 8056h

    0015h ???

DX = ???

Return: ES:DI -> ???

    other

Return: CF set

AX = 0001h (invalid function)

INT 2F D800


2F D880 Call SERVER API entry point with:

Copy to Main

Table 1759

Call SERVER API entry point with:

BX = function

    0000h ???

???

Return: ???

Note: closes open files by calling INT 21/AH=3Eh

    0001h get connection information

DX = connection number (0001h-max connections)

ES:DI -> 28-byte buffer for connection information

Return: CF clear if successful

    ES:DI buffer filled

CF set on error

    AX = FFFFh

---Personal NetWare only---

    0002h ???

    0003h ???

    0004h ???

    0005h ???

    0006h ???

    0007h ???

    other

Return: CF set

AX = 0001h (invalid function)

INT 2F D880


2F D8C0 Call NLCACHE/NWCACHE API entry point with:

Copy to Main

Table 1760

Call NLCACHE/NWCACHE API entry point with:

BX = function

    0000h ???

???

Return: CF clear if successful

    AX = 0000h

    ???

CF set on error

    AX = error code

    0001h (NWCACHE only) ???

ES:DI -> buffer for ???

Return: ???

    other

Return: CF set

AX = 0001h (invalid function)

INT 2F D8C0


2F DB00 Format of ZFAX Configuration Table:

Copy to Main

Table 1761

Format of ZFAX Configuration Table:

Offset	Size	Description

 00h	WORD	version number (0300h for v3.0)

 02h	BYTE	reserved

 03h 70 BYTEs	ZFAX working path

 49h 128 BYTEs	path to external editor

 C9h 128 BYTEs	path to external terminal emulator

149h 128 BYTEs	path to Ring Shell

1C9h 128 BYTEs	path to DOS Shell

249h 128 BYTEs	path to Data Shell

2C9h 70 BYTEs	path to Chinese font

30Fh	BYTE	printer type (see #1762)

310h	BYTE	printer port (00h = LPT1, etc.)

311h	BYTE	type of graphics adapter

(00h auto-detect, 01h VGA, 02h EGA, 03h CGA, 04h Hercules)

312h	BYTE	display type

(00h auto-detect, 01h LCD, 02h color, 03h mono)

313h	BYTE	scan code for ZFAX hotkey

314h	BYTE	shift mask for ZFAX hotkey

315h	BYTE	tone/pulse dialing (00h tone, 01h pulse)

316h	BYTE	Caller ID (00h disabled, 01h enabled)

317h	BYTE	Distinctive Ring (00h disabled, 01h enabled)

318h	BYTE	normal ring answer type (see #1763)

319h	BYTE	Ring 1 answer type (see #1763)

31Ah	BYTE	Ring 2 answer type (see #1763)

31Bh	BYTE	Ring 3 answer type (see #1763)

31Ch	BYTE	COM port for modem

31Dh	BYTE	speaker volume (00h-07h)

31Eh	BYTE	modem dial timer, seconds

31Fh	WORD	user-defined COM port I/O address

321h	BYTE	user-defined COM port IRQ number

322h 81 BYTEs	dial prefix string

373h 79 BYTEs	dial postfix string

3C2h	BYTE	ring count until automatic answer

3C3h	BYTE	retry count on busy signal

3C4h	BYTE	redial delay in seconds

3C5h	WORD	system password

3C7h	BYTE	reserved

3C8h	BYTE	voice file compression format

00h CELP at 9600bps

01h two-bit ADPCM at 19200bps

03h three-bit ADPCM at 28800bps

3C9h	BYTE	voice system: DTMF 0 action (see #1764)

3CAh	BYTE	voice system: DTMF 1 action

3CBh	BYTE	voice system: DTMF 2 action

3CCh	BYTE	voice system: DTMF 3 action

3CDh	BYTE	voice system: DTMF 4 action

3CEh	BYTE	voice system: DTMF 5 action

3CFh	BYTE	voice system: DTMF 6 action

3D0h	BYTE	voice system: DTMF 7 action

3D1h	BYTE	voice system: DTMF 8 action

3D2h	BYTE	voice system: DTMF 9 action (see #1764)

3D3h	WORD	reserved

3D5h 25 BYTEs	local FAX ID to display on page header

3EEh 20 BYTEs	local FAX ID sent to remote FAX

402h	BYTE	FAX page size

00h A4 (210x297mm)

01h B4 (250x353mm)

02h A3 (297x420mm)

403h	BYTE	FAX resolution

00h normal (3.85 pixels/mm)

01h high (7.7 pixels/mm)

404h	BYTE	FAX coding scheme

00h 1-D, modified Huffman coding

01h 2-D, modified READ coding

405h	BYTE	left margin for text in millimeters

406h	BYTE	vertical insertion for text in mm (0-20)

407h	BYTE	horizontal insertion in mm (0-20)

408h	BYTE	maximum text lines per page

409h	BYTE	text type (00h ASCII, 01h WordStar-formatted)

40Ah	BYTE	PCX image resize (00h disabled, 01h enabled)

40Bh	BYTE	AutoPrint (00h disabled, 01h enabled)

40Ch	BYTE	cover page (00h disabled, 01h enabled)

40Dh 81 BYTEs	cover page logo filename

45Eh 65 BYTEs	cover page sender name

49Fh	BYTE	print capture (00h disabled, 01h enabled)

4A0h	BYTE	send immediately (00h disabled, 01h enabled)

4A1h	BYTE	print capture printer port

4A2h	BYTE	print capture timer in seconds

4A3h	BYTE	scan code for print capture hotkey

4A4h	BYTE	shift mask for print capture hotkey

4A5h	BYTE	DataShell type

00h internal Zmodem, 01h Data Shell, 02h disable

4A6h	BYTE	video I/O type

00h auto-detect, 01h use BIOS, 02h direct writes

4A7h	BYTE	call transfer digits

4A8h	WORD	voice recorder maximum time in seconds (0-999)

INT 2F DB00


2F DB00 Values for ZFAX printer type:

Copy to Main

Table 1762

Values for ZFAX printer type:

 00h	EPSON FX (9 pins)

 01h	EPSON LQ (24 pins)

 02h	HP Laser Jet II, letter size

 03h	HP Laser Jet II, legal size

 04h	HP Laser Jet II, A4 size

 05h	HP Laser Jet III, letter size

 06h	HP Laser Jet III, legal size

 07h	HP Laser Jet III, A4 size

INT 2F DB00


2F DB00 Values for Ring Answer Type:

Copy to Main

Table 1763

Values for Ring Answer Type:

 00h	voice system

 01h	FAX only

 02h	Data Shell

 03h	Ring Shell

 04h	DOS Shell

 05h	ignore

INT 2F DB00


2F DB00 Values for DTMF action:

Copy to Main

Table 1764

Values for DTMF action:

 00h	none

 01h	page operator

 02h	FaxBack

 03h	announcement

 04h	call transfer

 05h	receive FAX

 06h	receive data

 07h	voice mailbox

 08h	DOS Shell Out

 09h	Data Shell Out

INT 2F DB00


2F DB11 Values for ZFAX status:

Copy to Main

Table 1765

Values for ZFAX status:

 00h	OK

 01h	invalid DOS function

 02h	file not found

 03h	path not found

 04h	no file handle available

 05h	access denied by DOS

 06h	invalid handle

 07h	disk full

 10h	printer error

 11h	no graphics font

 12h	no ZFAX font

 20h	DCD dropped while sending

 21h	not ZyXEL modem

 22h	busy

 23h	no response from COM port

 24h	no carrier

 25h	no dial tone

 26h	no answer

 27h	no response

 28h	failed to send FAX

 30h	user aborted

 40h	critical error on disk

 50h	parameter error

INT 2F DB11


2F DD-- Format of CappaCom TSR info list:

Copy to Main

Table 1766

Format of CappaCom TSR info list:

Offset	Size	Description

 00h  9 BYTEs	blank-padded ASCIZ program name

 09h	BYTE	program ID

 0Ah	WORD	program's PSP segment

 0Ch	WORD	program version (major in high byte)

 0Eh	DWORD	pointer to next item in info list or 0000h:0000h

 12h	BYTE	number of interrupts hooked

 13h  5 BYTEs	interrupt numbers hooked by program

 18h  8 BYTEs	reserved

INT 2F DD--


2F DD-- Format of xDISK data buffer:

Copy to Main

Table 1767

Format of xDISK data buffer:

Offset	Size	Description

 00h	DWORD	pointer to ASCIZ driver signature "xDISK unit: X"

 04h	BYTE	flag: 01h if disk linked to DOS, 00h if unlinked

 05h	BYTE	flag: 01h if write protected, 00h if not

 06h	BYTE	flag: 01h if root directory full, 00h if not

 07h	BYTE	flag: 01h if free space uncompacted, 00h if compacted

 08h	BYTE	resizing state: 00h not resizable, 01h resized, 80h resizable

 09h	BYTE	flag: 01h inelastic resizable disk, 00h elastic

 0Ah  2 BYTEs	reserved

 0Ch	BYTE	flag: 01h collapsed disk, 00h not collapsed

 0Dh	BYTE	flag: 01h using all EMS, 00h some EMS free

 0Eh	BYTE	flag: 01h password enabled, 00h disabled

 0Fh	BYTE	flag: 01h password audio feedback, 00h no feedback

 10h	BYTE	flag: 01h password video feedback, 00h no feedback

 11h	BYTE	flag: 01h confirm changes, 00h no confirmation

 12h	BYTE	flag: 01h terse display, 00h verbose display

 13h	BYTE	flag: 01h click speaker on disk access, 00h no click

 14h	BYTE	flag: 01h flash icon on disk access, 00h no icon flash

 15h	BYTE	FAT entry size: 00h 12-bit, FFh 16-bit

 16h	WORD	count of open files in RAM disk

 18h	BYTE	unused

INT 2F DD--


2F DE01 Call DVeop entry point with:

Copy to Main

Table 1768

Call DVeop entry point with:

ES:DI -> callback address or 0000h:0000h to remove callback

Return: AX = status

    0000h failed (callback table full or attempted to remove non-

  existent callback)

    0001h successful

ES:DI -> chaining address

BX,CX,DX destroyed

Notes:	the callback function is called with a simulated interrupt when the

  DESQview window containing it is closed; it should perform all

  necessary cleanup and then perform a FAR jump to the chaining address

  or an IRET if the chaining address is 0000h:0000h

if the program wishes to remove itself before the window is closed, it

  should call the DVeop entry point with the previously returned

  chaining address and ignore the returned chaining address.

INT 2F DE01


2F DE01 Format of DVSIXDI v1.00 information for one process:

Copy to Main

Table 1769

Format of DVSIXDI v1.00 information for one process:

Offset	Size	Description

 00h	BYTE	flags

bit 7: process slot is valid

 01h	WORD	offset into DESQVIEW.DVO of program's record if started from

  Open Windows menu, else undefined

 03h	WORD	Switch Windows window number

 05h	WORD	segment of process handle

 07h	WORD	number of tasks owned by process

 09h	WORD	mapping context of process (see #0306 at INT 15/AX=1016h)

 0Bh	DWORD	hook for other programs

INT 2F DE01


2F DE01 Format of DVSIXDI v1.10-v2.00 information for one process:

Copy to Main

Table 1770

Format of DVSIXDI v1.10-v2.00 information for one process:

Offset	Size	Description

 00h	BYTE	process flags (see #1771)

 01h	WORD	Open Window keys

 03h	WORD	Switch Windows number

 05h	WORD	segment of process handle

 07h	WORD	number of tasks for process

 09h	WORD	process mapping context

 0Bh	DWORD	time process started (relative to start of DESQview)

 0Fh	DWORD	time process last got CPU (relative to start of DESQview)

 13h	DWORD	time process last gave up CPU (relative to start of DESQview)

 17h	DWORD	total CPU time since process started

 1Bh	DWORD	CPU time at start of current instantaneous interval

 1Fh	DWORD	CPU time in current instantaneous interval

 23h	DWORD	hook for other programs

Note:	all times are in 1/100s for v1.10, in 1/18s for v1.11+

INT 2F DE01


2F DE01 Bitfields for DVSIXDI process flags:

Copy to Main

Table 1771

Bitfields for DVSIXDI process flags:

Bit(s)	Description

 7	valid record

 6	(v2.00+) record is allocated; if bit 7 clear, process is "(starting)"

  and only offsets 01h and 09h are valid

 5	(v2.00+) this app currently owns the CPU

 4	reserved (0)

 3	DESQview system task

 2	reserved (0)

 1	task has keyboard (currently unused)

 0	task swapped out (currently unused)

INT 2F DE01


2F DE04 Format of XMS XDI structure:

Copy to Main

Table 1772

Format of XMS XDI structure:

Offset	Size	Description

 00h	DWORD	pointer to 10-byte record???

 04h	DWORD	pointer to next XMS XDI structure

 08h	WORD	mapping context

 0Ah	BYTE	???

 0Bh  5 BYTEs	XMS entry point to return for INT 2F/AX=4310h

(FAR jump to next field)

 10h  6 BYTEs	FAR handler for XMS driver entry point

(consists of a FAR CALL followed by RETF)

INT 2F DE04


2F DF00 Values for HyperWare product code:

Copy to Main

Table 1773

Values for HyperWare product code:

 4248h	('BH') HyperStb

 4448h	('DH') HyperDisk v4.20+

 4B48h	('KH') HyperKey

 5348h	('SH') HyperScreen

INT 2F DF00


2F DF01 Bitfields for HyperDisk caching flags:

Copy to Main

Table 1774

Bitfields for HyperDisk caching flags:

Bit(s)	Description

 0	staged writes enabled for floppy disks

 1	staged writes enabled for hard disks

 2	writes verified on floppy disks

 3	writes verified on hard disks

 4	reserved (0)

 5	reserved (0)

 6	floppy caching enabled

 7	all caching functions enabled

INT 2F DF01


2F E101 Bitfields for Phantom2 function mask:

Copy to Main

Table 1775

Bitfields for Phantom2 function mask:

Bit(s)	Description

 0	record

 1	play

 2	QuickPlay

 3	loop

 4	mode display toggle

 5	sound toggle

 6	set hotkey

 7	set filespec

INT 2F E101


2F E301 Format of returned data structure for ANARKEY v2.0:

Copy to Main

Table 1776

Format of returned data structure for ANARKEY v2.0:

Offset	Size	Description

 -7   7 BYTEs	signature ('ANARKEY')

 00h	WORD	??? (I see 0001h in v2.0)

 02h	WORD	??? (I see 0001h in v2.0)

 04h	WORD	??? (I see 0 in v2.0)

 06h	WORD	PSP segment of next program loaded

INT 2F E301


2F E301 Format of returned data structure for ANARKEY v3+:

Copy to Main

Table 1777

Format of returned data structure for ANARKEY v3+:

Offset	Size	Description

 -1	BYTE	multiplex number

 00h	WORD	??? (I see 0001h in v3.0-4.0)

 02h	WORD	??? (I see 0001h in v3.0-4.0)

 04h	BYTE	??? (I see 0 in v3.0-4.0)

 05h	WORD	PSP segment of next program loaded

INT 2F E301


2F ED00 Values for Phar Lap DOS extender ID:

Copy to Main

Table 1778

Values for Phar Lap DOS extender ID:

 01h	286dosx v1.3+ (Software Development Kit)

 02h	286dosx v1.3+ (Run-Time Kit)

 03h	386dosx v4.0+ (SDK)

 04h	386dosx v4.0+ (RTK)

INT 2F ED00


2F EE01 Values for XVIEW function status:

Copy to Main

Table 1779

Values for XVIEW function status:

 0000h	successful

 00F1h	unknown subfunction

 00F2h	unable to pop up

INT 2F EE01


2F EE02 Values for XVIEW anchor page number:

Copy to Main

Table 1780

Values for XVIEW anchor page number:

 FFEAh	_Credits

 FFECh	_SearchTopics

 FFEDh	_SearchText

 FFF0h	_ManualList

 FFF5h	_HelpOnHelp

 FFF8h	_HomePage

 FFF9h	_IndexPage

INT 2F EE02


2F EE03 Format of XVIEW data packet:

Copy to Main

Table 1781

Format of XVIEW data packet:

Offset	Size	Description

 00h	DWORD	-> ASCIZ database filespec (0000h:0000h for current database)

 04h	DWORD	-> ASCIZ text to look up or 0000h:0000h

 08h	WORD	page number (0000h if keyword used)

 0Ah  6 BYTEs	reserved

INT 2F EE03


2F EE-- Values for WEB module ID:

Copy to Main

Table 1782

Values for WEB module ID:

 10h	server module (SERVER.EXE)

 20h	client module (CLIENT.EXE)

 30h	mail module (MAIL.EXE)

 40h	spooler (PCSPOOL.EXE)

 50h	kernel module (KERNEL.EXE)

 60h	SAP module (KERNEL.EXE)

 70h	resident station manager (SM.EXE)

 90h	router module (ROUTER.EXE)

INT 2F EE--


2F EE-- Call server module entry point with:

Copy to Main

Table 1783

Call server module entry point with:

BX = function

    0000h remove server module

Return: AX = status (0000h if successful, else WEB error code)

    0001h create SYSINFO file

Note:	the SYSINFO file is used by the station manager when

  displaying info for a particular station

    0002h get server object table

Return: CX = number of server objects

ES:DI -> server object table

Note:	server objects include drives and devices that the

  server module controls

    0003h get server variables

Return: ES:DI -> server variables

INT 2F EE--


2F EE-- Call client module entry point with:

Copy to Main

Table 1784

Call client module entry point with:

BX = function

    0000h remove client module

Return: AX = status (0000h if successful, else WEB error code)

    0001h decrement client-only flag

    0002h increment client-only flag

    0005h set device capture

Note:	decrements DeviceOutput flag, telling the spooler that

  it may trap device output again

    0006h clear device capture

Note:	increments DeviceOutput flag, telling the spooler that

  it should not trap device output (this is used

  internally by the spooler to prevent it from trapping

  its own output)

    0007h get client debug pointer

Return: ES:DI -> client debug data structure (see #1788)

    0008h get root drive

Return: AL = WEB startup drive

    0009h get maximum possible drive/device redirections

Return: AL = maximum drive redirections

CH = maximum LPTx redirections

CL = maximum COMx redirections

    000Ah suspend client

Return: AX = previous value of Suspend flag

    000Bh resume client

Return: AX = previous value of Suspend flag

    000Ch get instance data

CX = maximum number of structures in array

ES:DI -> buffer for array of WIN_INSTANCE_DATA structures

  (see #1789)

Return: CX = number of structures actually returned

Note:	used internally by WEB4WIN

INT 2F EE--


2F EE-- Call mail module entry point with:

Copy to Main

Table 1785

Call mail module entry point with:

BX = function

    0000h remove mail module

Return: AX = status (0000h successful, else WEB error code)

    0001h set mail poll

Note:	schedules the WEB mail module

    0002h set mail notify

Note:	sets the Notify flag, which determines whether the

  user will be notified when mail is received

    0003h clear mail notify

Note:	clears the Notify flag, which determines whether the

  user will be notified when mail is received

    0004h check whether new mail has arrived

Return: AL = new mail status

    00h no new mail since last call

    else new mail has arrived

Note:	also clears the new-mail flag after retrieving it

    0005h send notify

ES:DI -> name of WEB user to be notified

    0006h get post office

Return: ES:DI -> full network path of Post Office subdirectory

INT 2F EE--


2F EE-- Call spooler entry point with:

Copy to Main

Table 1786

Call spooler entry point with:

BX = function

    0000h remove PCSpool module

Return: AX = status (0000h successful, else WEB error code)

    0001h set spooler poll

Note:	schedules the WEB spooler

    0002h check spooler changed

Return:	AX = 0000h

Note:	this call is a NOP in current versions of WEB

INT 2F EE--


2F EE-- Call kernel entry point with:

Copy to Main

Table 1787

Call kernel entry point with:

BX = function

    0000h remove kernel module

Return: AX = status (0000h successful, else WEB error code)

    0001h set kernel ^S filter

DL = new state (00h don't filter ^S, nonzero do filter)

    0002h get kernel data area

Return: ES:DI -> kernel data area

    0003h display dialog box

CL = dialog box type

    00h password

    01h E-Note received notification

    02h Novell login

    03h general notification

DL = number of rows to display

ES:SI -> array of far pointers to rows to be displayed

ES:DI -> Pascal-style input buffer

Return: AX = status (0000h successful, else error code)

    0004h kernel service events

    0005h get kernel's in-critical-section flag

Return: ES:DI -> kernel InCriticalSection flag

    0006h schedule DOS event

AL = directive

    00h do not ignore WEB ExtraBusy flag

    01h ignore ExtraBusy flag

    02h (WEB4WIN) check that current Windows VM is foregrnd VM

ES:SI -> WEB AES Event Control Block (ECB) (see #1790)

Notes:	the WEB Asynchronous Event Scheduler is similar to the

  one used by IPX; this call schedules a special ECB

  to be executed at a later time.  Unlike IPX ECBs,

  the timeout must be set explicitly by the caller

this function also calls function 0004h

    0007h check busy

AL = directive

    00h do not ignore WEB ExtraBusy flag

    01h ignore ExtraBusy flag

    02h (WEB4WIN) check that current Windows VM is foregrnd VM

Return: AX = status (0000h not busy, else busy)

    0008h set keyboard intercept

Note:	currently a NOP which returns immediately

    0009h get keyboard intercept

Note:	currently a NOP which returns immediately

    000Ah get dialog flags

Return: ES:DI -> kernel dialog flags (see #1791)

    000Bh get network path

Return: ES:DI -> fully-qualified network path of file where

the screen is stored on Dialog calls

    000Ch kernel alternate dialog

CL = dialog box type

    00h password

    01h E-Note received notification

    02h Novell login

    03h general notification

DL = number of rows to display

ES:SI -> array of far pointers to rows to be displayed

ES:DI -> Pascal-style input buffer

Return: AX = status (0000h successful, else error code)

Note:	this function is identical to function 0003h except

  that it does not notify WEB4WIN of the impending

  dialog request

    000Dh get machine/operating system type

Return: AX = machine/operating system type

    01h IBM PC, MS-DOS

    02h IBM PC, DOSV (Japanese)

    03h NEC PC-9800, JDOS (Japanese)

    04h IBM PC, Korean DBC DOS

INT 2F EE--


2F EE-- Format of client debug data structure:

Copy to Main

Table 1788

Format of client debug data structure:

Offset	Size	Description

 00h	WORD	total files

 02h	WORD	files free

 04h	WORD	no files

 06h	WORD	minimum files

 08h	WORD	total FCBs

 0Ah	WORD	total safe FCBs

 0Ch	WORD	FCBs in use

 0Eh	WORD	wrong FCB

 10h	WORD	compressed

 12h	WORD	retransmits

INT 2F EE--


2F EE-- Format of WIN_INSTANCE_DATA structure:

Copy to Main

Table 1789

Format of WIN_INSTANCE_DATA structure:

Offset	Size	Description

 00h	DWORD	real-mode pointer to data to be instanced

 04h	WORD	size of data to be instanced

INT 2F EE--


2F EE-- Format of WEB AES Event Control Block:

Copy to Main

Table 1790

Format of WEB AES Event Control Block:

Offset	Size	Description

 00h	DWORD	link address

 04h	WORD	ESR address

 08h	BYTE	InUse flag

 09h	BYTE	completion code

 0Ah  3 BYTEs	reserved

 0Dh	WORD	timeout

 0Fh	BYTE	IgnoreExtra flag

 10h	WORD	PSP

 12h	DWORD	DTA

 16h	WORD	AX value for DOS critical information

 18h	WORD	BX value for DOS critical information

 1Ah	WORD	CX value for DOS critical information

 1Ch	WORD	DX value for DOS critical information

INT 2F EE--


2F EE-- Values for kernel dialog flags:

Copy to Main

Table 1791

Values for kernel dialog flags:

 01h	dialog will timeout

 02h	display stars instead of entered keystrokes

INT 2F EE--


2F EEF0 Values for WEB Notification Function ID:

Copy to Main

Table 1792

Values for WEB Notification Function ID:

 00h	node added

 01h	node deleted

 02h	dial attempt

 03h	dial failed

 04h	file close

 05h	close connection

 07h	check Windows mode

 20h	link up

 21h	link down

INT 2F EEF0


2F F201 Format of WINX server buffer:

Copy to Main

Table 1793

Format of WINX server buffer:

Offset	Size	Description

 00h	BYTE	command/status

00h buffer available

01h buffer contains result

02h change directory

03h execute program

FFh terminate windows portion of WINX

 01h  ? BYTEs	command (03h) or directory (02h)

  or

 01h	DWORD	result (01h)

INT 2F F201


2F F401 Format of FINDIRQ hooked interrupt table:

Copy to Main

Table 1794

Format of FINDIRQ hooked interrupt table:

Offset	Size	Description

 00h	BYTE	1Ch

 01h	DWORD	FINDIRQ's INT 1C handler

 05h	DWORD	original INT 1C handler

 09h	BYTE	28h

 0Ah	DWORD	FINDIRQ's INT 28 handler

 0Eh	DWORD	original INT 28 handler

 12h	BYTE	2Fh

 13h	DWORD	FINDIRQ's INT 2F handler

 17h	DWORD	original INT 2F handler

INT 2F F401


2F FB42 Format of DPMILOAD memory block info:

Copy to Main

Table 1795

Format of DPMILOAD memory block info:

Offset	Size	Description

 00h	WORD	flags (see #1796)

 02h	DWORD	block size in bytes

---DPMI memory block---

 06h	DWORD	DPMI memory block handle

---DOS memory block---

 06h	WORD	real-mode segment of memory block

 08h	WORD	selector of memory block

---

 0Ah	DWORD	linear address of memory

 0Eh	WORD	memory operation error code

0008h no more free LDT descriptors

---if flags bit 0 clear---

 10h	WORD	code segment selector for memory block or 0000h or FFFFh

 12h	WORD	data alias selector for memory block or 0000h or FFFFh

---if flags bit 0 set---

 10h	WORD	data segment selector for memory block or 0000h or FFFFh

 12h	WORD	unused???

INT 2F FB42


2F FB42 Bitfields for DPMILOAD memory block flags:

Copy to Main

Table 1796

Bitfields for DPMILOAD memory block flags:

Bit(s)	Description

 0	set if data segment rather than code segment

 1	information valid

 2	set if DOS memory block rather than DPMI memory block

 4	???

 15	set if no LDT selectors for memory block???

SeeAlso: #1795

INT 2F FB42


2F FB42 Values for DPMILOAD function status:

Copy to Main

Table 1797

Values for DPMILOAD function status:

 0000h	successful

 0001h	??? failure

 0002h	invalid selector

 0004h	unknown error

 0008h	no more LDT descriptors available???

 FFDEh	unable to set descriptor

 FFDFh	unable to get segment base address

 FFE0h	???

 FFF2h	invalid parameter value

 FFF4h	component of filename too long (name not in 8.3 format)

 FFF5h	pathname too long (>79 chars)

 FFF6h	???

 FFF8h	???

 FFF9h	index out of range

 FFFAh	???

 FFFCh	invalid access to code segment???

 FFFEh	???

 FFFFh	general error

INT 2F FB42


2F FB42 Format of DPMILOAD data:

Copy to Main

Table 1798

Format of DPMILOAD data:

Offset	Size	Description

 00h 12 BYTEs	???

 0Ch	WORD	??? bit flags

 0Eh 14 BYTEs	???

 1Ch	WORD	number of memory control records (see #1801)

 1Eh 25 BYTEs	???

 37h	BYTE	??? bit flags

bit 4: data valid???

 38h  4 BYTEs	???

 3Ch	WORD	???

 3Eh 12 BYTEs	???

 46h	BYTE	??? counter

 47h	BYTE	???

 48h	BYTE	???

 49h	BYTE	???

 4Ah	WORD	???

 4Ch  2 BYTEs	???

 4Eh	WORD	offset of array of 64-byte memory control records

 52h	WORD	offset of name list (see #1799)

 54h  4 BYTEs	???

 58h	WORD	offset of array of 6-byte objects (see #1800)

 5Ah  8 BYTEs	???

 62h  9 BYTEs	ASCIZ name for ???

 6Bh  9 BYTEs	ASCIZ name for ???

???

INT 2F FB42


2F FB42 Format of name list entry [array]:

Copy to Main

Table 1799

Format of name list entry [array]:

Offset	Size	Description

 00h	BYTE	length of name (00h if end of array)

 01h  N BYTEs	name

 N+1	WORD	1-based index into array of unknown 6-byte objects

INT 2F FB42


2F FB42 Format of 6-byte objects:

Copy to Main

Table 1800

Format of 6-byte objects:

Offset	Size	Description

 00h	BYTE	???

 01h	BYTE	???

 02h	BYTE	???

 03h	BYTE	1-based index of memory control record

 04h	WORD	???

INT 2F FB42


2F FB42 Format of memory control record:

Copy to Main

Table 1801

Format of memory control record:

Offset	Size	Description

 00h 20 BYTEs	memory block info (see #1795)

 14h  6 BYTEs	???

 1Ah	BYTE	???

 1Bh  2 BYTEs	???

 1Dh	BYTE	??? bit flags

 1Eh 14 BYTEs	???

 2Ch	DWORD	pointer to ??? memory control record or 0000h:0000h

 30h	DWORD	pointer to ??? memory control record or 0000h:0000h

 34h	DWORD	pointer to next??? memory control record or 0000h:0000h

 38h	DWORD	pointer to prev??? memory control record or 0000h:0000h

 3Ch  4 BYTEs	???

Note:	the pointers at offsets 2Ch and 30h form a doubly-linked list, as do

  the pointers at offsets 34h and 38h

INT 2F FB42


2F FBA1 Format of TKERNEL response buffer:

Copy to Main

Table 1802

Format of TKERNEL response buffer:

Offset	Size	Description

 00h  4 BYTEs	signature "IABH"

 04h	DWORD	pointer to FAR extender entry point (see #1803)

INT 2F FBA1


2F FBA1 Call TKERNEL entry point with:

Copy to Main

Table 1803

Call TKERNEL entry point with:

AX = function number

    0000h initialize???

STACK:	WORD  ???

Return: AX = status???

STACK unchanged

    0001h get version???

Return: AX = 0200h for v2.0.34

    0002h get ???

Return: AX = ??? (011Eh or 0182h seen)

    0003h load protected-mode executable

STACK:	DWORD -> ASCIZ filename of executable

DWORD	???

DWORD -> program arguments (counted string plus CR)

DWORD -> environment for protected-mode executable

(terminated with two consecutive NULs)

DWORD -> WORD buffer for ???

Return: AX = status???

STACK unchanged

    0004h get descriptor

STACK:	WORD	selector for which to get descriptor

WORD	segment number (when running in real mode)

DWORD -> buffer for descriptor

Return: CF clear if successful

    buffer filled

CF set on error

    AX destroyed???

STACK unchanged

    0005h ???

STACK:	WORD	selector for ???

WORD	subfunction number???

0000h run previously-loaded program???

0001h ??? (similar to 0000h)

0002h

0003h

0005h ??? (similar to 0000h and 0001h)

Return: AX = status???

STACK unchanged

    0006h ???

STACK:	WORD ???

DWORD -> WORD (call) max iterations of ???

      (ret) remaining iterations

Return: AX = ???

STACK unchanged

    0007h unused

Return: AX = 0001h

    0008h unused

Return: AX = 0001h

    0009h copy protected-mode memory into conventional memory

STACK:	WORD	selector for source segment

WORD	segment of source if in real mode???

DWORD	offset of source

WORD	number of bytes to copy

DWORD -> low-memory destination

Return: AX = status

STACK unchanged

    000Ah copy conventional memory into protected-mode memory

STACK:	WORD	selector for destination segment

WORD	segment of destination if in real mode???

DWORD	offset of destination

WORD	number of bytes to copy

DWORD -> low-memory source

Return: AX = status

STACK unchanged

    000Bh get ??? pointers

STACK:	WORD desired pointer

0000h get ???

0002h get protected-mode CR3

0003h get 4K page table buffer pointer

else Return: DX:AX = FFFFh:FFFFh

Return: DX:AX = requested pointer

STACK unchanged

    000Ch set ??? pointers

STACK:	WORD desired pointer

0000h set ???

0002h set protected-mode CR3

0003h set 4K page table buffer pointer

else ignore

DWORD new value for pointer

Return: STACK unchanged

    000Dh get ??? pointers

STACK:	WORD desired pointer

0000h get ???

0001h get ???

0002h get ???

0003h get ???

0004h get ???

0005h get ???

0006h get ???

0007h get ???

else Return: DX:AX = FFFFh:FFFFh

Return: DX:AX = desired pointer

STACK unchanged

    000Eh set ??? pointer

STACK:	WORD desired pointer

0000h set ???

0001h set ???

0002h set ???

0003h set ???

0004h set ???

0005h set ???

0006h set ???

0007h set ???

else Return: DX:AX = FFFFh:FFFFh

Return: STACK unchanged

    000Fh get ???

Return: AX = ??? (seen 0008h)

    0010h get ???

Return: AX = ???

    0011h determine whether selector is valid

STACK:	WORD	possible selector

Return: AX = selector or 0000h if invalid

STACK unchanged

    0012h get physical address

STACK:	WORD	selector for desired segment

WORD	segment number if in real mode

DWORD	offset within segment

Return: DX:AX = 32-bit physical address or 00000000h on error

BX destroyed

STACK unchanged

    0013h ???

Note:	normally jumps to code for function 0012h

    0014h copy protected-mode memory to conventional memory, with ???

STACK:	WORD	selector for source segment

WORD	segment of source if in real mode???

DWORD	offset of source

WORD	number of bytes to copy

DWORD -> low-memory destination

Return: AX = status???

STACK unchanged

    0015h copy conventional memory to protected-mode memory, with ???

STACK:	WORD	selector for destination segment

WORD	segment of destination if in real mode???

DWORD	offset of destination

WORD	number of bytes to copy

DWORD -> low-memory source

Return: AX = status???

STACK unchanged

    0016h set ??? pointer

STACK:	WORD	unused

DWORD -> ??? or 0000h:0000h

Return: AX = 0000h

STACK unchanged

    0017h allocate real-mode procedure???

STACK:	DWORD	ASCIZ name of procedure

DWORD ???

DWORD	address of subroutine to invoke

Return: AX = status

    0032h procedure by that name exists

    0033h no more real-mode procedures available

DX destroyed

STACK unchanged

    0018h unused

Return: AX = 0001h

    0019h get parameter block

Return: DX:AX -> parameter block (format unknown at this time,

  but 92h bytes)

  (preceded by signature "!!PARAM-BLOCK!!")

    001Ah get ???

Return: AX = ??? (0148h seen)

    001Bh free real-mode procedure???

STACK:	DWORD -> ASCIZ name of procedure

Return: ???

STACK unchanged

    001Ch check whether packets from protected mode task pending

Return: AX = 0001h if packets pending, 0000h if not

    001Dh set ???

STACK:	DWORD ??? or 0000h:0000h

Return: AX,BX destroyed

STACK unchanged

    001Eh ???

STACK:	WORD ??? (high byte ignored)

DWORD -> data structure (see below)

Return: AX,BX,CX,DX destroyed

data structure updated

STACK unchanged

Format of data structure:

Offset	Size	Description

 00h  2 BYTEs	unused

 02h	WORD	???

 04h	WORD	???

 06h	WORD	???

 08h  2 BYTEs	unused

 0Ah	WORD	???

 0Ch	WORD	(call) ???

(ret) offset of this data structure (BUG?)

    001Fh set ???

STACK:	WORD ??? (set to 0001h if zero)

Return: AX destroyed

STACK unchanged

    0020h ???

STACK:	DWORD -> ??? (8 bytes of data)

Return: AX = ???

STACK unchanged

    0021h ???

STACK:	DWORD -> ??? (8 bytes of data)

WORD	???

WORD	???

Return: AX = ???

STACK unchanged

    0022h ???

STACK:	DWORD -> ??? (8 bytes of data)

DWORD -> 4-byte buffer for results

Return: AX = ???

STACK unchanged

    0023h ???

STACK:	DWORD -> ??? (8 bytes of data)

Return: AX = ???

STACK unchanged

    0024h set ???

STACK:	WORD ???

Return: AX destroyed

STACK unchanged

    0025h get ???

Return: AX = ??? (value set with func 0024h)

    0026h BUG: jumps to hyperspace due to fencepost error

    FFFFh set DOS memory management functions

BX:SI -> FAR routine for allocating DOS memory

  (called with AH=48h,BX=number of paragraphs to alloc;

  returns CF clear, AX=segment of allocated memory, or

  CF set on error)

CX:DI -> FAR routine for freeing DOS memory

  (called with AH=49h,ES=segment of block to free;

  returns CF set on error, AX=error code)

Note: each of these pointers normally points at INT 21/RETF

    other Return: AX = 0001h

Note:	BX may be destroyed by any of the API calls

INT 2F FBA1


2F FBA1 Format of TKERNEL response buffer:

Copy to Main

Table 1804

Format of TKERNEL response buffer:

Offset	Size	Description

 00h  4 BYTEs	signature "IABH"

 04h	WORD	success indicator

0001h failed (INT 2F hooked by another program)

unchanged if successful

 06h	WORD	segment of ???

 08h	WORD	segment of ??? memory block to free if nonzero

 0Ah	WORD	segment of ??? memory block to free if nonzero

INT 2F FBA1


2F FBFB Format of SoundBlaster entry point data structure:

Copy to Main

Table 1805

Format of SoundBlaster entry point data structure:

Offset	Size	Description

 00h  3 BYTEs	signature "FB "

 03h	BYTE	driver major version number???

 04h	DWORD	speech driver entry point (see #1806)

 08h 24 BYTEs	???

 20h  ? BYTEs	data buffer for calling speech driver

INT 2F FBFB


2F FBFB Call SoundBlaster speech driver entry point with:

Copy to Main

Table 1806

Call SoundBlaster speech driver entry point with:

AL = function

    07h speak a string

data buffer (see #1805) contains:

BYTE  length of string

      N BYTEs string to speak

INT 2F FBFB


2F FE00 Values for Norton Utilities TSR identifier:

Copy to Main

Table 1807

Values for Norton Utilities TSR identifier:

 4346h	("CF") NCACHE-F (v5) / NCACHE (v6) / NCACHE2 (v7+) / SPEEDRV

 4353h	("CS") NCACHE-S (v5 only)

 4443h	("DC") DISKREET

 444Dh	("DM") DISKMON

 4653h	("FS") FILESAVE (v5) / EP (v6) / SMARTCAN (v7+)

INT 2F FE00


2F FE00 Format of DISKMON.INI file:

Copy to Main

Table 1808

Format of DISKMON.INI file:

Offset	Size	Description

-6Ch 108 BYTEs	(in memory copy only)

list of filenames which are always protected:

  IBMBIO.COM/IBMDOS.COM, IO.SYS/MSDOS.SYS, TBIOS.SYS/TDOS.SYS,

  MIO.SYS/IO.BIN, COMMAND.COM

 00h	BYTE	??? always 01h

 01h	BYTE	disk light (00h off, 01h on)

 02h	BYTE	disk protection (00h off, 01h on)

 03h	BYTE	protected areas

01h system area

02h files

03h system area and files

04h entire disk

 04h	BYTE	floppy access (00h not allowed, 01h allowed)

 05h 27 BYTEs	filename extension list (9 entries)

(lowercase, blank padded or = 000000h)

 20h 240 BYTEs	filename list (20 entries)

(lowercase, name and extension blank padded, with '.')

Note:	CX:0508h -> copy in installed TSR (v5)

CX:052Fh -> copy in installed TSR (v6)

CX:04E0h -> copy in installed TSR (v7-v8)

INT 2F FE00


2F FE00 Format of FILESAVE.INI / EP.INI / SMARTCAN.INI file:

Copy to Main

Table 1809

Format of FILESAVE.INI / EP.INI / SMARTCAN.INI file:

Offset	Size	Description

 00h 26 BITs	drive list (bit set: file protection on, cleared: off):

 00h	BYTE	drives	A: - H:

 01h	BYTE	drives	I: - P:

 02h	BYTE	drives	Q: - X:

 03h	BYTE	drives	Y: - Z:

 04h	BYTE	which files to protect

00h all files

01h all files with extension in list

02h all files except those with extension in list

 05h 27 BYTEs	filename extension list (9 entries, uppercase, ASCIZ)

 20h	BYTE	include files with archive bit clear (00h no, 01h yes)

 21h	WORD	number of days after which files are purged (0 = never)

 23h	WORD	max kilobytes of erased file space to hold (0 = all)

Note:	CX:03D2h -> copy in installed TSR (v5)

CX:03F5h -> copy in installed TSR (v6)

CX:0434h -> copy in installed TSR (v7-v8)

INT 2F FE00


31 0000 Values for DPMI 1.0 error code:

Copy to Main

Table 1810

Values for DPMI 1.0 error code:

 0000h-7FFFh DOS error passed through by DPMI

 8001h	unsupported function

 8002h	object in wrong state for function

 8003h	system integrity would be endangered

 8004h	deadlock detected

 8005h	pending serialization request cancelled

 8010h	out of DPMI internal resources

 8011h	descriptor unavailable

 8012h	linear memory unavailable

 8013h	physical memory unavailable

 8014h	backing store unavailable

 8015h	callback unavailable

 8016h	handle unavailable

 8017h	maximum lock count exceeded

 8018h	shared memory already serialized exclusively by another

 8019h	shared memory already serialized shared by another client

 8021h	invalid value for numeric or flag parameter

 8022h	invalid segment selector

 8023h	invalid handle

 8024h	invalid callback

 8025h	invalid linear address

 8026h	request not supported by hardware

INT 31 0000


31 000E Format of DPMI descriptor buffer entry (one per descriptor to get):

Copy to Main

Table 1811

Format of DPMI descriptor buffer entry (one per descriptor to get):

Offset	Size	Description

 00h	WORD	selector (set by client)

 02h	QWORD	descriptor (set by host)

INT 31 000E


31 000F Format of DPMI descriptor buffer entry (one per descriptor to set):

Copy to Main

Table 1812

Format of DPMI descriptor buffer entry (one per descriptor to set):

Offset	Size	Description

 00h	WORD	selector

 02h	QWORD	descriptor

INT 31 000F


31 0203 Format of stack frame for 16-bit programs: (offset from SS:SP)

Copy to Main

Table 1813

Format of stack frame for 16-bit programs: (offset from SS:SP)

Offset	Size	Description

 00h	DWORD	return CS:IP (do not change)

 04h	WORD	error code

 06h	DWORD	CS:IP of exception

 0Ah	WORD	flags

 0Ch	DWORD	SS:SP

INT 31 0203


31 0203 Format of stack frame for 32-bit programs: (offset from SS:ESP)

Copy to Main

Table 1814

Format of stack frame for 32-bit programs: (offset from SS:ESP)

Offset	Size	Description

 00h	DWORD	return EIP (do not change)

 04h	WORD	return CS selector (do not change)

 06h	WORD	reserved (do not change)

 08h	DWORD	error code

 0Ch	DWORD	EIP of exception

 10h	WORD	CS selector of exception

 12h	WORD	reserved (do not change)

 14h	DWORD	EFLAGS

 18h	DWORD	ESP

 1Ch	WORD	SS

 1Eh	WORD	reserved (do not change)

INT 31 0203


31 0300 Format of DPMI real mode call structure:

Copy to Main

Table 1815

Format of DPMI real mode call structure:

Offset	Size	Description

 00h	DWORD	EDI

 04h	DWORD	ESI

 08h	DWORD	EBP

 0Ch	DWORD	reserved (00h)

 10h	DWORD	EBX

 14h	DWORD	EDX

 18h	DWORD	ECX

 1Ch	DWORD	EAX

 20h	WORD	flags

 22h	WORD	ES

 24h	WORD	DS

 26h	WORD	FS

 28h	WORD	GS

 2Ah	WORD	IP

 2Ch	WORD	CS

 2Eh	WORD	SP

 30h	WORD	SS

INT 31 0300


31 0303 Values DPMI real-mode callback procedure is called with:

Copy to Main

Table 1816

Values DPMI real-mode callback procedure is called with:

DS:(E)SI = selector:offset of real mode SS:SP

ES:(E)DI = selector:offset of real mode call structure

SS:(E)SP = locked protected mode API stack

interrupts disabled

Return: (with IRET)

ES:(E)DI = selector:offset of real mode call structure to restore

INT 31 0303


31 0305 Call DPMI state-save procedures with:

Copy to Main

Table 1817

Call DPMI state-save procedures with:

AL = direction

    00h save state

    01h restore state

ES:(E)DI -> state buffer

Return: all registers preserved

INT 31 0305


31 0306 Values to JUMP at mode-switch procedures with:

Copy to Main

Table 1818

Values to JUMP at mode-switch procedures with:

AX = new DS

CX = new ES

DX = new SS

(E)BX = new (E)SP

SI:(E)DI = new CS:(E)IP

Notes:	BP/EBP is preserved across the call, but AX/EAX, BX/EBX, CX/ECX,

  DX/EDX, SI/ESI, and DI/EDI will be undefined; FS and GS will be 0000h

interrupts will stay disabled during the entire mode switch if they

  are disabled on entry to the mode-switch procedure

INT 31 0306


31 0400 Bitfields for DPMI host flags:

Copy to Main

Table 1819

Bitfields for DPMI host flags:

Bit(s)	Description

 0	running under an 80386 (32-bit) implementation

 1	processor returns to real mode for reflected interrupts instead of V86

  mode

 2	virtual memory supported

 3	reserved (undefined)

 4-15	reserved (zero)

INT 31 0400


31 0401 Format of DPMI host description:

Copy to Main

Table 1820

Format of DPMI host description:

Offset	Size	Description

 00h	BYTE	host major version number

 01h	BYTE	host minor version number

 02h 126 BYTEs	ASCIZ host vendor name

INT 31 0401


31 0401 Bitfields for DPMI capabilities:

Copy to Main

Table 1821

Bitfields for DPMI capabilities:

Bit(s)	Description

 0	paged accessed/dirty supported (see AX=0506h,AX=0507h)

 1	exceptions restartability supported

 2	device mapping supported (see AX=0508h)

 3	conventional memory mapping supported (see AX=0509h)

 4	demand zero-fill supported

 5	write-protect client capability supported

 6	write-protect host capability supported

 7-15	reserved

INT 31 0401


31 0500 Format of DPMI memory information:

Copy to Main

Table 1822

Format of DPMI memory information:

Offset	Size	Description

 00h	DWORD	largest available block in bytes

 04h	DWORD	maximum unlocked page allocation

 08h	DWORD	maximum locked page allocation

 0Ch	DWORD	total linear address space in pages

 10h	DWORD	total unlocked pages

 14h	DWORD	free pages

 18h	DWORD	total physical pages

 1Ch	DWORD	free linear address space in pages

 20h	DWORD	size of paging file/partition in pages

 24h 12 BYTEs	reserved

INT 31 0500


31 0506 Bitfields for DPMI page attribute word:

Copy to Main

Table 1823

Bitfields for DPMI page attribute word:

Bit(s)	Description

 0-2	page type

000 uncommitted

001 committed

010 mapped (see AX=0508h,AX=0509h)

other currently unused

 3	page is read/write rather than read-only

 4	accessed/dirty bits supplied in bits 5 and 6

 5	page has been accessed (only valid if bit 4 set)

 6	page has been written (only valid if bit 4 set)

 7-15	reserved (0)

INT 31 0506


31 050B Format of DPMI memory information:

Copy to Main

Table 1824

Format of DPMI memory information:

Offset	Size	Description

 00h	DWORD	total allocated bytes of physical memory controlled by host

 04h	DWORD	total allocated bytes of virtual memory controlled by host

 08h	DWORD	total available bytes of virtual memory controlled by host

 0Ch	DWORD	total allocated bytes of virtual memory for curr virtual mach

 10h	DWORD	total available bytes of virtual memory for curr virtual mach

 14h	DWORD	total allocated bytes of virtual memory for current client

 18h	DWORD	total available bytes of virtual memory for current client

 1Ch	DWORD	total locked bytes for current client

 20h	DWORD	maximum locked bytes for current client

 24h	DWORD	highest linear address available to current client

 28h	DWORD	largest available memory block in bytes

 2Ch	DWORD	minimum allocation unit in bytes

 30h	DWORD	allocation alignment unit size in bytes

 34h 76 BYTEs	reserved (00h)

INT 31 050B


31 0C00 Format of DPMI resident service provider structure:

Copy to Main

Table 1825

Format of DPMI resident service provider structure:

Offset	Size	Description

 00h	QWORD	descriptor for 16-bit data segment

 08h	QWORD	descriptor for 16-bit code segment (zeros if not supported)

 10h	WORD	offset of 16-bit callback procedure

 12h  2 BYTEs	reserved

 14h	QWORD	descriptor for 32-bit data segment

 1Ch	QWORD	descriptor for 32-bit code segment (zeros if not supported)

 24h	DWORD	offset of 32-bit callback procedure

INT 31 0C00


31 0D00 Format of DPMI shared memory allocation request structure:

Copy to Main

Table 1826

Format of DPMI shared memory allocation request structure:

Offset	Size	Description

 00h	DWORD	requested length of shared memory block in bytes

 04h	DWORD	(ret) allocated length of block

 08h	DWORD	(ret) shared memory handle

 0Ch	DWORD	(ret) linear address of memory block

 10h	PWORD	selector:offset32 of ASCIZ name for memory block

(name max 128 bytes)

 16h  2 BYTEs	reserved

 18h  4 BYTEs	reserved (00h)

INT 31 0D00


31 0E00 Bitfields for DPMI coprocessor status:

Copy to Main

Table 1827

Bitfields for DPMI coprocessor status:

Bit(s)	Description

 0	numeric coprocessor enabled for current client

 1	client is emulating coprocessor

 2	numeric coprocessor is present

 3	host is emulating coprocessor instructions

 4-7	coprocessor type

0000 none

0010 80287

0011 80387

0100 80486 with numeric coprocessor

other reserved

 8-15	not used

INT 31 0E00


31 0E01 Bitfields for DPMI coprocessor flags:

Copy to Main

Table 1828

Bitfields for DPMI coprocessor flags:

Bit(s)	Description

 0	enable numeric coprocessor for current client

 1	client will emulate coprocessor

 2-15	not used

INT 31 0E01


31 FF00 Bitfields for CauseWay system flags:

Copy to Main

Table 2670

Bitfields for CauseWay system flags:

Bit(s)	Description

 0	32-bit code

 1	virtual memory manage enabled

 3-2	mode: 00 raw extended memory, 01 VCPI, 10 DPMI

 4	DPMI available

 5	VCPI available

 6	no memory managers

 7	application descriptor table type: 0 = GDT, 1 = LDT

 14-8	reserved

 15	debugging engine present

INT 31 FF00


31 FF24 Format of CauseWay executable:

Copy to Main

Table 2669

Format of CauseWay executable:

Offset	Size	Description

 00h  2 BYTEs	signature "3P"

 02h	DWORD	size of header data in bytes

 06h	DWORD	size of EXE image data in bytes

 0Ah	DWORD	number of bytes of program memory required

 0Eh	WORD	number of segment definitions (see #2672)

 10h	DWORD	number of relocation table entries

 14h	DWORD	offset of program entry point

 18h	WORD	segment list entry number for entry point's CS

 1Ah	DWORD	initial ESP

 1Eh	WORD	segment list entry number for initial SS

 20h	DWORD	control flags (see #2671)

 24h	DWORD	automatic stack size in bytes if ESP entry = 00000000h

 28h	BYTE	length of name (name follows program image)

 29h 23 BYTEs	reserved

INT 31 FF24


31 FF24 Bitfields for CauseWay executable control flags:

Copy to Main

Table 2671

Bitfields for CauseWay executable control flags:

Bit(s)	Description

 0	16-bit interrupt stack frame

 7	descriptor table type (0 = GDT, 1 = LDT)

 14	16-bit default data size

 31	compressed EXE image

Note:	bits 0 and 14 should always be equal

SeeAlso: #2669

INT 31 FF24


31 FF24 Format of CauseWay segment definition [array]:

Copy to Main

Table 2672

Format of CauseWay segment definition [array]:

Offset	Size	Description

 00h	DWORD	start offset within program image

 04h	DWORD	length and type

bits 0-19: length

bit 20:	   granularity (if set, length is in 4K pages)

bits 21-24: type

0000 code

0001 read/write data

0010 stack

0011 read-only data

bit 25: force segment descriptor's D bit to 0

bit 26: force segmetn descriptor's D bit to 1

SeeAlso: #2669

INT 31 FF24


33 0003 Bitfields for mouse button status:

Copy to Main

Table 1829

Bitfields for mouse button status:

Bit(s)	Description

 0	left button pressed if 1

 1	right button pressed if 1

 2	middle button pressed if 1 (Mouse Systems/Logitech/Genius)

INT 33 0003


33 0005 Values for mouse button number:

Copy to Main

Table 1830

Values for mouse button number:

 0000h	left

 0001h	right

 0002h	middle (Mouse Systems/Logitech/Genius mouse)

INT 33 0005


33 0009 Format of mouse mask bitmap:

Copy to Main

Table 1831

Format of mouse mask bitmap:

Offset	Size	Description

 00h 16 WORDs	screen mask

 10h 16 WORDs	cursor mask

Note:	each word defines the sixteen pixels of a row, low bit rightmost

INT 33 0009


33 000C Bitfields for mouse call mask:

Copy to Main

Table 1832

Bitfields for mouse call mask:

Bit(s)	Description

 0	call if mouse moves

 1	call if left button pressed

 2	call if left button released

 3	call if right button pressed

 4	call if right button released

 5	call if middle button pressed (Mouse Systems/Logitech/Genius mouse)

 6	call if middle button released (Mouse Systems/Logitech/Genius mouse)

 7-15	unused

Note:	some versions of the Microsoft documentation incorrectly state that CX

  bit 0 means call if mouse cursor moves

INT 33 000C


33 000C Values interrupt routine is called with:

Copy to Main

Table 1833

Values interrupt routine is called with:

AX = condition mask (same bit assignments as call mask)

BX = button state

CX = cursor column

DX = cursor row

SI = horizontal mickey count

DI = vertical mickey count

Notes:	some versions of the Microsoft documentation erroneously swap the

  meanings of SI and DI

in text modes, the row and column will be reported as a multiple of

  the character cell size, typically 8x8 pixels

INT 33 000C


33 0010 Format of Genius Mouse update region list:

Copy to Main

Table 1834

Format of Genius Mouse update region list:

Offset	Size	Description

 00h	WORD	left-most column

 02h	WORD	top-most row

 04h	WORD	right-most column

 06h	WORD	bottom-most row

INT 33 0010


33 0018 Bitfields for mouse call mask:

Copy to Main

Table 1835

Bitfields for mouse call mask:

Bit(s)	Description

 0	call if mouse moves

 1	call if left button pressed

 2	call if left button released

 3	call if right button pressed

 4	call if right button released

 5	call if shift button pressed during event

 6	call if ctrl key pressed during event

 7	call if alt key pressed during event

Note:	at least one of 5-7 must be set

INT 33 0018


33 0018 Values user handler is called with:

Copy to Main

Table 1836

Values user handler is called with:

AX = condition mask (same bit assignments as call mask)

BX = button state

CX = cursor column

DX = cursor row

SI = horizontal mickey count

DI = vertical mickey count

Return: registers preserved

Note:	in text modes, the row and column will be reported as a multiple of

  the cell size, typically 8x8 pixels

INT 33 0018


33 001C Values for mouse interrupt rate:

Copy to Main

Table 1837

Values for mouse interrupt rate:

 00h	no interrupts allowed

 01h	30 per second

 02h	50 per second

 03h	100 per second

 04h	200 per second

INT 33 001C


33 0022 Values for mouse driver language:

Copy to Main

Table 1838

Values for mouse driver language:

 00h	English

 01h	French

 02h	Dutch

 03h	German

 04h	Swedish

 05h	Finnish

 06h	Spanish

 07h	Portugese

 08h	Italian

INT 33 0022


33 0025 Bitfields for general mouse driver information:

Copy to Main

Table 1839

Bitfields for general mouse driver information:

Bit(s)	Description

 15	driver loaded as device driver rather than TSR

 14	driver is newer integrated type

 13,12	current cursor type

00 software text cursor

01 hardware text cursor (CRT Controller's cursor)

1X graphics cursor

 11-8	interrupt rate (see #1837)

 7-0	count of currently-active Mouse Display Drivers (MDD), the newer

  integrated driver type

INT 33 0025


33 002A Values for mouse type:

Copy to Main

Table 1840

Values for mouse type:

 00h	none

 01h	bus

 02h	serial

 03h	InPort

 04h	IBM

 05h	Hewlett-Packard

INT 33 002A


33 002B Format of acceleration profile data:

Copy to Main

Table 1841

Format of acceleration profile data:

Offset	Size	Description

 00h	BYTE	length of acceleration profile 1

 01h	BYTE	length of acceleration profile 2

 02h	BYTE	length of acceleration profile 3

 03h	BYTE	length of acceleration profile 4

 04h 32 BYTEs	threshold speeds for acceleration profile 1

 24h 32 BYTEs	threshold speeds for acceleration profile 2

 44h 32 BYTEs	threshold speeds for acceleration profile 3

 64h 32 BYTEs	threshold speeds for acceleration profile 4

 84h 32 BYTEs	speedup factor for acceleration profile 1

(10h = 1.0, 14h = 1.25, 20h = 2.0, etc)

 A4h 32 BYTEs	speedup factor for acceleration profile 2

(10h = 1.0, 14h = 1.25, 20h = 2.0, etc)

 C4h 32 BYTEs	speedup factor for acceleration profile 3

(10h = 1.0, 14h = 1.25, 20h = 2.0, etc)

 E4h 32 BYTEs	speedup factor for acceleration profile 4

(10h = 1.0, 14h = 1.25, 20h = 2.0, etc)

104h 16 BYTEs	name of acceleration profile 1 (blank-padded)

114h 16 BYTEs	name of acceleration profile 2 (blank-padded)

124h 16 BYTEs	name of acceleration profile 3 (blank-padded)

134h 16 BYTEs	name of acceleration profile 4 (blank-padded)

Note:	unused bytes in the threshold speed fields are filled with 7Fh and

  unused bytes in the speedup factor fields are filled with 10h

INT 33 002B


33 0030 Bitfields for BallPoint mouse button status:

Copy to Main

Table 1842

Bitfields for BallPoint mouse button status:

Bit(s)	Description

 5	button 1

 4	button 2

 3	button 3

 2	button 4

 other	zero

INT 33 0030


33 0033 Format of mouse settings data buffer:

Copy to Main

Table 1843

Format of mouse settings data buffer:

Offset	Size	Description

 00h	BYTE	mouse type

 01h	BYTE	current language

 02h	BYTE	horizontal sensitivity (00h-64h)

 03h	BYTE	vertical sensitivity (00h-64h)

 04h	BYTE	double-speed threshold (00h-64h)

 05h	BYTE	ballistic curve (01h-04h)

 06h	BYTE	interrupt rate (01h-04h)

 07h	BYTE	cursor override mask

 08h	BYTE	laptop adjustment

 09h	BYTE	memory type (00h-02h)

 0Ah	BYTE	SuperVGA support (00h,01h)

 0Bh	BYTE	rotation angle

 0Ch	BYTE	???

 0Dh	BYTE	primary button (01h-04h)

 0Eh	BYTE	secondary button (01h-04h)

 0Fh	BYTE	click lock enabled (00h,01h)

 10h 324 BYTEs	acceleration profile data (see #1841)

154h  5 BYTEs	??? (Microsoft driver, but not Logitech)

INT 33 0033


33 0035 Values for pointer style:

Copy to Main

Table 1844

Values for pointer style:

 00h	normal

 01h	reverse

 02h	transparent

INT 33 0035


33 0043 Format of Mouse Systems configuration buffer:

Copy to Main

Table 1845

Format of Mouse Systems configuration buffer:

Offset	Size	Description

 00h	WORD	I/O port address

 02h	BYTE	???

 03h	BYTE	interrupt number

 04h	BYTE	interrupt mask for interrupt controller

 05h  5 BYTEs	???

INT 33 0043


33 006D Format of Microsoft version number:

Copy to Main

Table 1846

Format of Microsoft version number:

Offset	Size	Description

 00h	BYTE	major version

 01h	BYTE	minor version (BCD)

INT 33 006D


33 0070 Format of Mouse Systems POPUP.COM data structure:

Copy to Main

Table 1847

Format of Mouse Systems POPUP.COM data structure:

Offset	Size	Description

 00h	WORD	signature ABCDh

 02h	DWORD	pointer to info structure??? (see #1848)

 06h  2 BYTEs	???

 08h	WORD	signature ABCDh

INT 33 0070


33 0070 Format of Mouse Systems POPUP.COM info structure:

Copy to Main

Table 1848

Format of Mouse Systems POPUP.COM info structure:

Offset	Size	Description

 00h	WORD	driver version

 02h  8 BYTEs	???

 0Ah	WORD	segment of ???

???

INT 33 0070


33 246C Format of Logitech Mouse parameter table:

Copy to Main

Table 1849

Format of Logitech Mouse parameter table:

Offset	Size	Description

 00h	WORD	baud rate divided by 100  (serial mouse only)

 02h	WORD	emulation	  (serial mouse only)

 04h	WORD	report rate	  (serial mouse only)

 06h	WORD	firmware revision	  (serial mouse only)

 08h	WORD	00h	  (serial mouse only)

 0Ah	WORD	port	  (serial mouse only)

 0Ch	WORD	physical buttons

 0Eh	WORD	logical buttons

INT 33 246C


33 256C Values for Logitech mouse emulation type:

Copy to Main

Table 1850

Values for Logitech mouse emulation type:

 00h	5 byte packed binary

 01h	3 byte packed binary

 02h	hexadecimal

 03h	relative bit pad

 04h	not supported

 05h	MM Series

 06h	not supported

 07h	Microsoft

INT 33 256C


33 3003 Format of Primary/Secondary Bitmap [SMD_BITMAP_STRUCT]:

Copy to Main

Table 1851

Format of Primary/Secondary Bitmap [SMD_BITMAP_STRUCT]:

Offset	Size	Description

 00h	BYTE	vertical size of bitmap (00h - 10h)

 01h	BYTE	horizontal size of bitmap (00h - 10h)

 02h	BYTE	vertical hotspot position (00h - 10h)

 03h	BYTE	horizontal hotspot position (00h - 10h)

 04h 16 WORDs	cursor bitmap data

 14h 16 WORDs	screen bitmap data

INT 33 3003


33 3003 Format of Sacrifice Character Map [SMD_SMAP_STRUCT]:

Copy to Main

Table 1852

Format of Sacrifice Character Map [SMD_SMAP_STRUCT]:

Offset	Size	Description

 00h	BYTE	bytes are character values (00h-FFh) used in place of the

 01h	BYTE	actual character for the corresponding position on the screen

 02h	BYTE	     +--------------+	  occupied by part or all of the mouse

 03h	BYTE	     | 0h | 1h | 2h |	  cursor

 04h	BYTE	     |----+----+----|

 05h	BYTE	     | 3h | 4h | 5h |

 06h	BYTE	     |----+----+----|

 07h	BYTE	     | 6h | 7h | 8h |

 08h	BYTE	     +--------------+

INT 33 3003


33 3003 Format of Program Information [SMD_INFO_STRUCT]:

Copy to Main

Table 1853

Format of Program Information [SMD_INFO_STRUCT]:

Offset	Size	Description

 00h	WORD	segment of old interrupt 33h handler

 02h	WORD	offset of old interrupt 33h handler

 04h	WORD	PSP of SMD

 06h	BYTE	ENABLE/DISABLE manual setting status

 07h	BYTE	ENABLE/DISABLE internal usage status

INT 33 3003


3E ---- Values for Borland floating-point shortcut subcode:

Copy to Main

Table 1854

Values for Borland floating-point shortcut subcode:

Subcode	Function

 DCh	load 8086 stack with 8087 registers; overwrites the 10*N bytes at the

  top of the stack prior to the INT 3E with the 8087 register contents

 DEh	load 8087 registers from top of 8086 stack; ST0 is furthest from top

  of 8086 stack

 E0h	round TOS and R1 to single precision, compare, pop twice

  returns AX=8087 status word, FLAGS=8087 condition bits

 E2h	round TOS and R1 to double precision, compare, pop twice

  returns AX=8087 status word, FLAGS=8087 condition bits

Note: buggy in TPas5.5, because it sets the 8087 precision control

  field to the undocumented value 01h; this results in actually

  rounding to single precision

 E4h	compare TOS/R1 with two POP's

  returns FLAGS=8087 condition bits

 E6h	compare TOS/R1 with POP

  returns FLAGS=8087 condition bits

 E8h	FTST (check TOS value)

  returns FLAGS=8087 condition bits

 EAh	FXAM (check TOS value)

  returns AX=8087 status word

 ECh	sine(ST0)

 EEh	cosine(ST0)

 F0h	tangent(ST0)

 F2h	arctangent(ST0)

 F4h	ST0 = ln(ST0)

 F6h	ST0 = log2(ST0)

 F8h	ST0 = log10(ST0)

 FAh	ST0 = e**ST0

 FCh	ST0 = 2**ST0

 FEh	ST0 = 10**ST0

INT 3E ----


41 ---- Format of fixed disk parameters:

Copy to Main

Table 1855

Format of fixed disk parameters:

Offset	Size	Description

 00h	WORD	number of cylinders

 02h	BYTE	number of heads

 03h	WORD	starting reduced write current cylinder (XT only, 0 for others)

 05h	WORD	starting write precompensation cylinder number

 07h	BYTE	maximum ECC burst length (XT only)

 08h	BYTE	control byte (see #1856,#1857)

 09h	BYTE	standard timeout (XT only, 0 for others)

 0Ah	BYTE	formatting timeout (XT and WD1002 only, 0 for others)

 0Bh	BYTE	timeout for checking drive (XT and WD1002 only, 0 for others)

 0Ch	WORD	cylinder number of landing zone (AT and later only)

 0Eh	BYTE	number of sectors per track (AT and later only)

 0Fh	BYTE	reserved

SeeAlso: #0179,#0181

INT 41 ----


41 ---- Bitfields for XT fixed disk control byte:

Copy to Main

Table 1856

Bitfields for XT fixed disk control byte:

Bit(s)	Description

 2-0	drive step speed

000  3ms

100  200ms

101  70ms (default)

110  3ms

111  3ms

 5-3	unused

 6	disable ECC retries

 7	disable access retries

INT 41 ----


41 ---- Bitfields for AT fixed disk control byte:

Copy to Main

Table 1857

Bitfields for AT fixed disk control byte:

Bit(s)	Description

 0	unused

 1	reserved (0)  (disable IRQ)

 2	reserved (0)  (no reset)

 3	set if more than 8 heads

 4	always 0

 5	set if manufacturer's defect map on max cylinder+1  (AT and later only)

 6	disable ECC retries

 7	disable access retries

INT 41 ----


41 ---- Format of BBC Master control block:

Copy to Main

Table 1858

Format of BBC Master control block:

Offset	Size	Description

 00h	BYTE	file handle

 01h	DWORD	pointer to data in either I/O processor or Tube processor

 05h	DWORD	number of bytes to be transferred

 09h	DWORD	transfer address

INT 41 ----


44 00-- Values for BBC Master filing system:

Copy to Main

Table 1859

Values for BBC Master filing system:

 00h	none

 01h	1200 bps cassette

 02h	300 bps cassette

 03h	ROM FS

 04h	DFS

 05h	ANFS/NFS

 06h	TFS

 08h	ADFS

INT 44 00--


45 ---- Format of BBC Master control block:

Copy to Main

Table 1860

Format of BBC Master control block:

Offset	Size	Description

 00h	WORD	address of CR-terminated filename

 02h	DWORD	load address of file

 06h	DWORD	execution address of file

 0Ah	DWORD	start address of data to save

 0Eh	DWORD	end address of data to save, or file attributes

file attributes in low byte (see #1861)

other three bytes are filing-system specific file attributes

INT 45 ----


45 ---- Bitfields for BBC Master file attributes:

Copy to Main

Table 1861

Bitfields for BBC Master file attributes:

Bit(s)	Description

 0	no owner read access

 1	no owner write access

 2	not executable by owner

 3	not deletable by owner

 4	no public read access

 5	no public write access

 6	not executable with public access

 7	not deletable with public access

INT 45 ----


47 8000 Values for SQL Base function number:

Copy to Main

Table 1862

Values for SQL Base function number:

 01h	"SQLFINI" initalialize application's use of the database

 02h	"SQLFDON" application is done using the database

 03h	"SQLFCON" connect to a cursor/database

 04h	"SQLFDIS" disconnect from a cursor/database

 05h	"SQLFCOM" compile a SQL command

 06h	"SQLFEXE" execute a SQL command

 07h	"SQLFCEX" compile and execute a SQL command

 08h	"SQLFCMT" commit a transaction to the database

 09h	"SQLFDES" describe the items of a SELECT statement

 0Ah	"SQLFGFI" get fetch information

 0Bh	"SQLFFBK" fetch previous result row from SELECT statement

 0Ch	"SQLFFET" fetch next result row from SELECT statement

 0Dh	"SQLFEFB" enable fetch backwards

 0Eh	"SQLFPRS" position in result set

 0Fh	"SQLFURS" undo result set

 10h	"SQLFNBV" get number of bind variables

 11h	"SQLFBND" bind data variables

 12h	"SQLFBNN" bind numerics

 13h	"SQLFBLN" bind long number

 14h	"SQLFBLD" bind long data variables

 15h	"SQLFSRS" start restriction set processing

 16h	"SQLFRRS" restart restriction set processing

 17h	"SQLFCRS" close restriction set

 18h	"SQLFDRS" drop restriction set

 19h	"SQLFARF" apply Roll Forward journal

 1Ah	"SQLFERF" end Roll Forward journal

 1Bh	"SQLFSRF" start Roll Forward journal

 1Ch	"SQLFSTO" store a compiled SQL command

 1Dh	"SQLFRET" retrieve a compiled SQL command

 1Eh	"SQLFDST" drop a stored command

 1Fh	"SQLFCTY" get command type

 20h	"SQLFEPO" get error position

 21h	"SQLFGNR" get number of rows

 22h	"SQLFNSI" get number of select items

 23h	"SQLFRBF" get Roll Back flag

 24h	"SQLFRCD" get return code

 25h	"SQLFROW" get number of ROWs

 26h	"SQLFSCN" set cursor name

 27h	"SQLFSIL" set isolation level

 28h	"SQLFSLP" set log parameters

 29h	"SQLFSSB" set select buffer

 2Ah	"SQLFSSS" set sort space

 2Bh	"SQLFRLO" read long

 2Ch	"SQLFWLO" write long

 2Dh	"SQLFLSK" long seek

 2Eh	"SQLFGLS" get long size

 2Fh	"SQLFELO" end long operation

 30h	"SQLFRBK" roll back a transaction from the database

 31h	"SQLFERR" error message

 32h	"SQLFCPY" copy

 33h	"SQLFR01" reserved

 34h	"SQLFSYS" system

 35h	"SQLFSTA" statistics

 36h	"SQLFR02" reserved

 37h	"SQLFXAD" extra add

 38h	"SQLFXCN" extra character to number

 39h	"SQLFXDA" extra date add

 3Ah	"SQLFXDP" extra date picture

 3Bh	"SQLFXDV" extra divide

 3Ch	"SQLFXML" extra multiply

 3Dh	"SQLFXNP" extra number picture

 3Eh	"SQLFXPD" extra picture date

 3Fh	"SQLFXSB" extra subtract

 40h	"SQLFINS" install database

 41h	"SQLFDIN" deinstall database

 42h	"SQLFDIR" directory of databases

 43h	"SQLFTIO" timeout

 44h	"SQLFFQN" get fully qualified column name

 45h	"SQLFEXP" explain execution plan

 46h	"SQLFFER" get full error

 47h	"SQLFBKP" begin online backup

 48h	"SQLFRDC" read backup data chunk

 49h	"SQLFEBK" end backup

 4Ah	"SQLFRES" begin restore from backup

 4Bh	"SQLFWDC" write backup data chunk for restore

 4Ch	"SQLFRRD" recover restored database to consistent state

 4Dh	"SQLFERS" end restore

 4Eh	"SQLFNRR" return number of result set rows

 4Fh	"SQLFSTR" start restriction mode

 50h	"SQLFSPR" stop restriction mode

 51h	"SQLFCNC" connect 2

 52h	"SQLFCNR" connect with no recovery

 53h	"SQLFOMS" set output message size

 54h	"SQLFIMS" set input message size

 55h	"SQLFSCP" set cache pages

 56h	"SQLFDSC" describe items of a SELECT statement (external)

 57h	"SQLFLAB" get label info for items in SELECT statement

 58h	"SQLFCBV" clear bind variables

 59h	"SQLFGET" get database information

 5Ah	"SQLFSET" set database information

 5Bh	"SQLFTEC" translate error code

INT 47 8000


48 ---- Values for valid UILIB function number:

Copy to Main

Table 1863

Values for valid UILIB function number:

 1000h	1160h	12D0h	1430h	1570h	1680h	17F0h	1920h	1A90h

 1010h	1170h	12E0h	1440h	1578h	1690h	1800h	1930h	1AA0h

 1020h	1180h	12F0h	1450h	1580h	16A0h	1810h	1940h

 1030h	1190h	1300h	1460h	1590h	16B0h	1820h	1950h

 1040h	11A0h	1310h	1470h	1594h	16C0h	1830h	1960h

 1050h	11B0h	1320h	1480h	1598h	16D0h	1840h	1970h

 1060h	11C0h	1330h	1490h	15A0h	16E0h	1848h	1980h

 1070h	11D0h	1340h	14A0h	15B0h	16F0h	1850h	1990h

 1080h	11E0h	1350h	14B0h	15C0h	1700h	1860h	19A0h

 1090h	11F0h	1360h	14B8h	15D0h	1710h	1870h	19B0h

 1095h	1200h	1370h	14BBh	15D4h	1720h	1878h	19C0h

 1098h	1210h	1380h	14C0h	15D8h	1730h	1880h	19D0h

 10A0h	1220h	1390h	14D0h	15E0h	1735h	1890h	19E0h

 10C0h	1230h	13A0h	14E0h	15F0h	1740h	1898h	19F0h

 10D0h	1240h	13B0h	14F0h	1600h	1750h	18A0h	1A00h

 10E0h	1250h	13B8h	1500h	1610h	1770h	18B0h	1A10h

 10F0h	1260h	13C0h	1508h	1620h	1780h	18C0h	1A20h

 1100h	1270h	13D0h	1510h	1630h	1790h	18D0h	1A30h

 1110h	1280h	13E0h	1520h	1640h	17A0h	18E0h	1A40h

 1120h	1290h	13F0h	1530h	1650h	17B0h	18F0h	1A50h

 1130h	12A0h	1400h	1540h	1660h	17C0h	1900h	1A60h

 1140h	12B0h	1410h	1550h	1664h	17D0h	1909h	1A70h

 1150h	12C0h	1420h	1560h	1670h	17E0h	1910h	1A80h

INT 48 ----


48 1A70 Values for UILIB call type:

Copy to Main

Table 1864

Values for UILIB call type:

 0000h	near

 0001h	far

 0002h	INT (only valid call type when using INT 48)

 0003h	near

INT 48 1A70


49 ---- Format of PCjr scan-code translation table:

Copy to Main

Table 1865

Format of PCjr scan-code translation table:

Offset	Size	Description

 00h	BYTE	number of non-keyboard scancodes in the table

 01h  N WORDs	high byte 00h (NUL) byte scancode with low order byte

  representing the scancode mapped values relative to their

  input values within the range of 56h through 7Eh

INT 49 ----


49 0001 Values for MAGic status:

Copy to Main

Table 1866

Values for MAGic status:

 0000h	cannot magnify current video mode

 0002h	magnified (text mode)

 0003h	magnified (graphics mode)

 FFFDh	function works only in magnified mode

 FFFFh	MAGic busy, retry later

INT 49 0001


4A ---- Format of BBC Master control block for function FAh:

Copy to Main

Table 1867

Format of BBC Master control block for function FAh:

Offset	Size	Description

 00h	BYTE	number of parameters sent to I/O processor (0Dh,0Eh)

 01h	BYTE	number of parameters read from I/O processor (01h)

 02h	DWORD	I/O processor address

 06h	DWORD	80186 segment:offset address

 0Ah	WORD	number of bytes to transfer

 0Ch	BYTE	operation type

00h write to 65C12 at 24 us/byte

01h read from 65C12 at 24 us/byte

02h write to 65C12 at 26 us/word

03h read from 65C12 at 26 us/word

04h write to 65C12 at 10 us/byte using 256-byte blocks

05h read from 65C12 at 10 us/byte using 256-byte blocks

 0Dh	BYTE	65C12 memory access control (only used if offset 00h = 0Eh)

(see #1868)

INT 4A ----


4A ---- Bitfields for 65C12 memory access control:

Copy to Main

Table 1868

Bitfields for 65C12 memory access control:

Bit(s)	Description

 7	unused

 6	always use main screen memory if I/O addr 3000h-7FFFh (overrides bit 5)

 5	use shadow screen memory if screen address specified

 4	use current ROM rather than ROM selected by bits 3-0 (only if I/O

  address between 8000h and BFFFh)

 3-0	paged ROM number

INT 4A ----


4B 8102 Values for VDS product number:

Copy to Main

Table 1869

Values for VDS product number:

 0000h	for Quadtel's QMAPS and Hewlett-Packard's HPMM.SYS

 0001h	for Microsoft's EMM386.EXE

 0003h	for Windows 3.x WIN386.EXE

 0300h	OS/2 (all versions to date)

 0EDCh	for DR-DOS 6.0 EMM386.SYS

 4560h	("E`") for Qualitas' 386MAX

 4D43h	("MC") for V Communications' Memory Commander

 5145h	("QE") for Quarterdeck's QEMM-386

 524Dh	("RM") for Helix's Netroom RM386

INT 4B 8102


4B 8102 Values for VDS error code:

Copy to Main

Table 1870

Values for VDS error code:

 01h	region not in contiguous memory

 02h	region crossed a physical alignment boundary

 03h	unable to lock pages

 04h	no buffer available

 05h	region too large for buffer

 06h	buffer currently in use

 07h	invalid memory region

 08h	region was not locked

 09h	number of physical pages greater than table length

 0Ah	invalid buffer ID

 0Bh	copy out of buffer range

 0Ch	invalid DMA channel number

 0Dh	disable count overflow

 0Eh	disable count underflow

 0Fh	function not supported

 10h	reserved flag bits set in DX

INT 4B 8102


4B 8102 Bitfields for VDS flags:

Copy to Main

Table 1871

Bitfields for VDS flags:

Bit(s)	Description

 0	PC/XT bus (DMA in first megabyte only)

 1	physical buffer/remap region in first megabyte

 2	automatic remap enabled

 3	all memory is physically contiguous

 4-15	reserved (zero)

INT 4B 8102


4B 8103 Bitfields for VDS flags:

Copy to Main

Table 1872

Bitfields for VDS flags:

Bit(s)	Description

 0	reserved (zero)

 1	data should be copied into buffer (ignored if 2 set)

 2	buffer should not be allocated if region noncontiguous or crosses

  physical alignment boundary specified by 4-5

 3	don't attempt automatic remap

 4	region must not cross 64K physical alignment boundary

 5	region must not cross 128K physical alignment boundary

 6-15	reserved (zero)

INT 4B 8103


4B 8103 Format of DMA descriptor structure (DDS):

Copy to Main

Table 1873

Format of DMA descriptor structure (DDS):

Offset	Size	Description

 00h	DWORD	region size

 04h	DWORD	offset

 08h	WORD	segment/selector

 0Ah	WORD	buffer ID

 0Ch	DWORD	physical address

INT 4B 8103


4B 8103 Format of Extended DMA descriptor structure (EDDS):

Copy to Main

Table 1874

Format of Extended DMA descriptor structure (EDDS):

Offset	Size	Description

 00h	DWORD	region size

 04h	DWORD	offset

 08h	WORD	segment/selector

 0Ah	WORD	reserved

 0Ch	WORD	number available

 0Eh	WORD	number used

 10h	DWORD	region 0 physical address

 14h	DWORD	region 0 size in bytes

 18h	DWORD	region 1 physical address

 1Ch	DWORD	region 1 size in bytes

...

INT 4B 8103


4B 8103 Format of Extended DMA descriptor structure (EDDS) with page table entries:

Copy to Main

Table 1875

Format of Extended DMA descriptor structure (EDDS) with page table entries:

Offset	Size	Description

 00h	DWORD	region size

 04h	DWORD	offset

 08h	WORD	segment/selector

 0Ah	WORD	reserved

 0Ch	WORD	number available

 0Eh	WORD	number used

 10h	DWORD	page table entry 0 (same as 80386 page table entry)

 14h	DWORD	page table entry 1

...

Note:	bits 1-11 of the page table entries should be zero; bit 0 set if page

  is present and locked

INT 4B 8103


4B 8105 Bitfields for VDS flags:

Copy to Main

Table 1876

Bitfields for VDS flags:

Bit(s)	Description

 0-5	reserved (zero)

 6	EDDS should be returned with page table entries

 7	only present pages should be locked (not-present pages receive entry

  of 0000h)

 8-15	reserved (zero)

INT 4B 8105


4B 8106 Bitfields for VDS flags:

Copy to Main

Table 1877

Bitfields for VDS flags:

Bit(s)	Description

 0-5	reserved (zero)

 6	EDDS contains page table entries

 7	EDDS may contain not-present pages (entry = 0000h)

 8-15	reserved (zero)

INT 4B 8106


4D 09-- Format of TI Professional PC Device Interface Table:

Copy to Main

Table 1878

Format of TI Professional PC Device Interface Table:

Offset	Size	Description

 00h	DWORD	-> entry point for disk routine

 04h	WORD	bytes per sector

 06h	BYTE	sectors per track

 07h	BYTE	number of heads

 08h	BYTE	number of cylinders

 09h	BYTE	retry count

 0Ah	BYTE	precompensation start

SeeAlso: #0572 at INT 1E

INT 4D 09--


4F 8100 Values for CAM function code:

Copy to Main

Table 1879

Values for CAM function code:

 00h	NOP

 01h	execute SCSI I/O

 02h	get device type

 03h	path inquiry

 04h	release SIM queue

 05h	set async callback

 06h	set device type

 07h-0Fh reserved

 10h	abort SCSI command

 11h	reset SCSI bus

 12h	reset SCSI device

 13h	terminate I/O process

 14h-1Fh reserved

 20h	engine inquiry

 21h	execute engine request

 22h-2Fh reserved

 30h	enable logical unit number

 31h	execute target I/O

 32h-7Fh reserved

 80h-FFh vendor-specific functions

INT 4F 8100


4F 8100 Format of CAM Control Block:

Copy to Main

Table 1880

Format of CAM Control Block:

Offset	Size	Description

 00h	DWORD	physical address of this CCB

 04h	WORD	CAM control block length

 06h	BYTE	function code (see #1879)

 07h	BYTE	CAM status (see #1883)

 08h	BYTE	SCSI status

 09h	BYTE	path ID (FFh = XPT)

 0Ah	BYTE	target ID

 0Bh	BYTE	logical unit number

 0Ch	WORD	CAM flags (see #1881)

 0Eh	BYTE	CAM address flags (see #1882)

 0Fh	BYTE	target-mode flags (see #1884)

---function 02h---

 10h	DWORD	pointer to 36-byte buffer for inquiry data or 0000h:0000h

 14h	BYTE	peripheral device type of target logical unit number

---function 03h---

 10h	BYTE	version number (00h-07h prior to rev 1.7, 08h = rev 1.7,

09h-FFh = rev no, i.e. 23h = rev 2.3)

 11h	BYTE	SCSI capabilities (see #1885)

 12h	BYTE	target mode support

bit 7: processor mode

bit 6: phase-cognizant mode

bit 5-0: reserved

 13h	BYTE	miscellaneous flags

bit 7: scanned high to low instead of low to high

bit 6: removables not included in scan

bit 5: inquiry data not kept by XPT

bits 4-0: reserved

 14h	WORD	engine count

 16h 14 BYTEs	vendor-specific data

 24h	DWORD	size of private data area

 28h	DWORD	asynchronous event capabilities (see #1886)

 2Ch	BYTE	highest path ID assigned

 2Dh	BYTE	SCSI device ID of initiator

 2Eh  2 BYTEs	reserved

 30h 16 BYTEs	SIM vendor ID

 40h 16 BYTEs	HBA (host bus adaptor) vendor ID

 50h  4 BYTEs	operating-system dependant usage

---functions 00h,04h,11h,12h---

 no additional fields

---function 05h---

 10h	DWORD	asynchronous event enables (see function 03h above)

 14h	DWORD	pointer to asynchronous callback routine (see #1888)

 18h	DWORD	pointer to peripheral driver buffer

 1Ch	BYTE	size of peripheral buffer

---function 06h---

 10h	BYTE	peripheral device type of target

---functions 10h,13h---

 10h	DWORD	pointer to CCB to be aborted

---function 20h---

 10h	WORD	engine number

 12h	BYTE	engine type

00h buffer memory

01h lossless compression

02h lossy compression

03h encryption

 13h	BYTE	engine algorithm ID

00h vendor-unique

01h LZ1 variation 1 (STAC)

02h LZ2 variation 1 (HP DCZL)

03h LZ2 variation 2 (Infochip)

 14h	DWORD	engine memory size

---function 21h---

 10h	DWORD	pointer to peripheral driver

 14h  4 BYTEs	reserved

 18h	DWORD	OS-dependent request-mapping info

 1Ch	DWORD	address of completion callback routine

 20h	DWORD	pointer to scatter/gather list or data buffer

 24h	DWORD	length of data transfer

 28h	DWORD	pointer to engine buffer data

 2Ch  2 BYTEs	reserved

 2Eh	WORD	number of scatter/gather entries

 30h	DWORD	maximum destination data length

 34h	DWORD	length of destination data

 38h	DWORD	source residual length

 3Ch 12 BYTEs	reserved

 48h	DWORD	OS-dependent timeout value

 4Ch  4 BYTEs	reserved

 50h	WORD	engine number

 52h	WORD	vendor-unique flags

 54h  4 BYTEs	reserved

 58h  N BYTEs	private data area for SIM

---function 30h---

 10h	WORD	group 6 vendor-unique CDB length

 12h	WORD	group 7 vendor-unique CDB length

 14h	DWORD	pointer to target CCB list

 18h	WORD	number of target CCBs

---other functions---

 10h	DWORD	pointer to peripheral driver

 14h	DWORD	pointer to next CCB

 18h	DWORD	OS-dependent request mapping information

 1Ch	DWORD	address of completion callback routine (see #1887)

 20h	DWORD	pointer to scatter/gather list or data buffer

 24h	DWORD	length of data transfer

 28h	DWORD	pointer to sense info buffer

 2Ch	BYTE	length of sense info buffer

 2Dh	BYTE	CDB length

 2Eh	WORD	number of scatter/gather entries

 30h  4 BYTEs	reserved

 34h	BYTE	SCSI status

 35h  3 BYTEs	reserved

 38h	DWORD	residual length

 40h 12 BYTEs	Command Descriptor Block (CDB)

 44h	DWORD	OS-dependent timeout value

 48h	DWORD	pointer to message buffer

 4Ch	WORD	length of message buffer

 4Eh	WORD	vendor-unique flags

 50h	BYTE	tag queue action

 51h  3 BYTEs	reserved

 54h  N BYTEs	private data area for SIM

INT 4F 8100


4F 8100 Bitfields for CAM flags:

Copy to Main

Table 1881

Bitfields for CAM flags:

Bit(s)	Description

 0	CDB is a pointer

 1	tagged queue action enable

 2	linked CDB

 3	disable callback on completion

 4	scatter/gather

 5	disable autosense

 7-6	direction (00 reserved, 01 in, 10 out, 11 no data transfer)

 9-8	reserved

 10	engine synchronize

 11	SIM queue freeze

 12	SIM queue priority

1 head insertion

0 tail insertion (normal)

 13	disable synchronous transfers	/ exclusive

 14	initiate synchronous transfers	\ mutually

 15	disable disconnect

INT 4F 8100


4F 8100 Bitfields for CAM address flags:

Copy to Main

Table 1882

Bitfields for CAM address flags:

Bit(s)	Description

 7	SG list/data (0 = host, 1 = engine)

 6	CDB pointer    (6-1: 0=virtual addr, 1=phys addr)

 5	SG list/data

 4	sense buffer

 3	message buffer

 2	next CCB

 1	callback on completion

 0	reserved

INT 4F 8100


4F 8100 Values for CAM status:

Copy to Main

Table 1883

Values for CAM status:

 00h	request in progress

 01h	request successful

 02h	host aborted request

 03h	unable to abort request

 04h	request completed with error

 05h	CAM is busy

 06h	invalid request

 07h	invalid path ID

 08h	no such SCSI device

 09h	unable to terminate I/O process

 0Ah	timeout on target selection

 0Bh	timeout on command

 0Dh	receive message rejection

 0Eh	sent/received SCSI bus reset

 0Fh	detected uncorrectable parity error

 10h	Autosense request failed

 11h	no HBA detected

 12h	data over/underrun

 13h	bus freed unexpectedly

 14h	target bus phase sequence failure

 15h	CCB too small

 16h	requested capability not available

 17h	sent bus device reset

 18h	terminate I/O process

 38h	invalid LUN

 39h	invalid target ID

 3Ah	unimplemented function

 3Bh	nexus not established

 3Ch	invalid initiator ID

 3Dh	received SCSI Command Descriptor Block

 3Eh	LUN already enabled

 3Fh	SCSI bus busy

Note:	bit 6 set to indicate frozen SIM queue

bit 7 set to indicate valid autosense

INT 4F 8100


4F 8100 Bitfields for CAM target-mode flags:

Copy to Main

Table 1884

Bitfields for CAM target-mode flags:

Bit(s)	Description

 7	data buffer valid

 6	status valid

 5	message buffer valid

 4	reserved

 3	phase-cognizant mode

 2	target CCB available

 1	disable autodisconnect

 0	disable autosave/restore

INT 4F 8100


4F 8100 Bitfields for SCSI capabilities:

Copy to Main

Table 1885

Bitfields for SCSI capabilities:

Bit(s)	Description

 7	modify data pointers

 6	wide bus (32 bits)

 5	wide bus (16 bits)

 4	synchronous transfers

 3	linked commands

 2	reserved

 1	tagged queueing

 0	soft reset

INT 4F 8100


4F 8100 Bitfields for CAM asynchronous event capabilities:

Copy to Main

Table 1886

Bitfields for CAM asynchronous event capabilities:

Bit(s)	Description

 31-24	vendor-specific

 23-8	reserved

 7	new devices found during rescan

 6	SIM module deregistered

 5	SIM module registered

 4	sent bus device reset to target

 3	SCSI AEN

 2	reserved

 1	unsolicited reselection

 0	unsolicited SCSI bus reset

INT 4F 8100


4F 8100 Values completion callback function is called with:

Copy to Main

Table 1887

Values completion callback function is called with:

interrupts disabled

ES:BX -> completed CCB

INT 4F 8100


4F 8100 Values asynchronous callback function is called with:

Copy to Main

Table 1888

Values asynchronous callback function is called with:

AH = opcode

AL = path ID generating callback

DH = target ID causing event

DL = LUN causing event

CX = data byte count (if applicable)

ES:BX -> data buffer (if applicable)

Return: all registers preserved

INT 4F 8100


50 0006 Values for type of input to Vanderaart Text Windows:

Copy to Main

Table 1889

Values for type of input to Vanderaart Text Windows:

 00h	everything

 01h	uppercase only

 02h	positive numbers

 03h	Dutch postal code ("9999 AA")

 04h	'J' or 'N' (Dutch yes/no)

 05h	telephone or FAX number

 06h	positive or negative number

 07h	date (dd/mm/yy)

 08h	money

 09h	'1' through '8'

 0Ah	'1' through '4'

 0Bh	uppercase filenames

INT 50 0006


50 000D Bitfields for input type:

Copy to Main

Table 1890

Bitfields for input type:

Bit(s)	Description

 0	force uppercase

 1	integer

 2	no spaces allowed

 3	no cursor keys

INT 50 000D


5B ---- Format of Starlan Network Control Block:

Copy to Main

Table 1891

Format of Starlan Network Control Block:

Offset	Size	Description

 00h	BYTE	ncb_command (see also #1895)

70h send net Break

 01h	BYTE	ncb_retcode

 02h	BYTE	ncb_lsn

 03h	BYTE	ncb_num

 04h	DWORD	-> ncb_buffer

 08h	WORD	ncb_length

 0Ah 16 BYTEs	ncb_callname

 1Ah 16 BYTEs	ncb_name

 2Ah	BYTE	ncb_rto

 2Bh	BYTE	ncb_sto

 2Ch	DWORD	-> ncb_post	/* int (far *ncb_post)(); */

 30h	BYTE	ncb_lana_num

 31h	BYTE	ncb_cmd_cplt

 32h	DWORD	-> ncb_vname

 36h	BYTE	ncb_vnamelen

 37h  9 BYTEs	ncb_reserve

Note:	fields 00h-31h are the same as for a standard NetBIOS NCB (see #1894)

INT 5B ----


5B ---- Format of ISOLAN Transfer Control Block:

Copy to Main

Table 1892

Format of ISOLAN Transfer Control Block:

Offset	Type	Description

 00h	BYTE	command code

B3h Status

F2h Activate

F3h Deactivate

F4h Send Data

 01h	BYTE	command identity

 02h	BYTE	virtual circuit ID

 03h	WORD	buffer length

 05h	DWORD	buffer pointer

 09h	BYTE	expedited data flag

 0Ah	BYTE	cancelable flag

 0Bh 16 BYTEs	local network address

 1Bh 16 BYTEs	remote network address

 2Bh	DWORD	asynchronous notification routine

 30h	DWORD	local network number

 34h	DWORD	remote network number

 38h	BYTE	call timeout

 39h	BYTE	not used

 3Ah  8 BYTEs	reserved

 42h	BYTE	command code extension

 43h	WORD	Blue Book MAC type

INT 5B ----


5C ---- Values for NetBIOS status:

Copy to Main

Table 1893

Values for NetBIOS status:

 00h	successful

 01h	bad buffer size

 03h	invalid NETBIOS command

 05h	timeout

 06h	receive buffer too small

 07h	No-ACK command failed

 08h	bad session number

 09h	LAN card out of memory

 0Ah	session closed

 0Bh	command has been cancelled

 0Dh	name already exists

 0Eh	local name table full

 0Fh	name still in use, can't delete

 11h	local session table full

 12h	remote PC not listening

 13h	bad NCB_NUM field

 14h	no answer to CALL or no such remote

 15h	name not in local name table

 16h	duplicate name

 17h	bad delete

 18h	abnormal end

 19h	name error, multiple identical names in use

 1Ah	bad packet

 21h	network card busy

 22h	too many commands queued

 23h	bad LAN card number

 24h	command finished while cancelling

 26h	command can't be cancelled

 30h	name defined by another process (OS/2)

 34h	NetBIOS environment not defined, must issue reset (OS/2)

 35h	required operating system resources exhausted (OS/2)

 36h	maximum applications exceeded (OS/2)

 37h	no SAPs available for NetBIOS (OS/2)

 38h	requested resources not available (OS/2)

 40h	Lana System Error

 41h	Lana Remote Hot Carrier

 42h	Lana Local Hot Carrier

 43h	Lana No Carrier Detected

 44h	unusual network condition

 45h-4Dh hardware error

 4Eh	token ring is broken

 4Fh	token ring error

 50h	adapter malfunction

 F7h	error in explicit INITIALIZE

 F8h	error in implicit OPEN

 F9h	TOKREUI internal error

 FAh	hardware adapter testing

 FBh	NetBIOS emulator not found

 FCh	OPEN or OPEN_SAP failure

 FDh	unexpected adapter closure

 FFh	NetBIOS busy (command pending)

INT 5C ----


5C ---- Format of NetBIOS Network Control Block:

Copy to Main

Table 1894

Format of NetBIOS Network Control Block:

Offset	Size	Description

 00h	BYTE	command code (see #1895)

 01h	BYTE	return code (see #1893)

 02h	BYTE	local session number (LSN)

 03h	BYTE	"ncb_num" datagram table entry from ADD NAME

 04h	DWORD	-> I/O buffer

 08h	WORD	length of data in buffer

 0Ah 16 BYTEs	remote system to call

 1Ah 16 BYTEs	network name of local machine

 2Ah	BYTE	receive timeout in 1/2 seconds

 2Bh	BYTE	send timeout in 1/2 seconds

 2Ch	DWORD	-> FAR post handler	/* int (far *ncb_post)(); */

 30h	BYTE	network adapter number on which to execute command

00h-03h IBM NetBIOS specs

F0h-FFh Eicon NABios interface (see also INT 7B"Eicon")

 31h	BYTE	command completion code (see returned status above)

 32h 14 BYTEs	reserved for network card

INT 5C ----


5C ---- Values for NetBIOS command code field in NCB:

Copy to Main

Table 1895

Values for NetBIOS command code field in NCB:

 10h	start session with NCB_NAME name (call)

 11h	listen for call

 12h	end session with NCB_NAME name (hangup)

 14h	send data via NCB_LSN

 15h	receive data from a session

 16h	receive data from any session

 17h	send multiple data buffers

 20h	send unACKed message (datagram)

 21h	receive datagram

 22h	send broadcast datagram

 23h	receive broadcast datagram

 30h	add name to name table

 31h	delete name from name table

 32h	reset adapter card and tables

 33h	get adapter status (see #1896)

 34h	status of all sessions for name (see #1898)

 35h	cancel

 36h	add group name to name table

 48h	send data and receive data (LAN Manager NETBEUI.DOS)

 70h	unlink from IBM remote program (no F0h function)

 71h	send data without ACK

 72h	send multiple buffers without ACK

 72h	UngermannBass Register (conflicts with above function)

 73h	UngermannBass SendNmc

 74h	UngermannBass Callniu

 75h	UngermannBass Calladdr

 76h	UngermannBass Listenaddr

 77h	UngermannBass SendPkt

 78h	find name

 78h	UngermannBass RcvPkt (conflicts with above function)

 79h	token-ring protocol trace

 79h	UngermannBass SendAttn (conflicts with above function)

 7Ah	UngermannBass RcvAttn

 7Bh	UngermannBass Listenniu

 7Ch	UngermannBass RcvRaw

 7Dh	UngermannBass SendNmc2

 7Fh	Beame&Whiteside BWNB installation check (returns with return code and

  completion code both set to 03h, while invalid functions return only

  return code field set to 03h)

Note:	OR any of the above except 70h with 80h for non-waiting call

INT 5C ----


5C ---- Format of NetBIOS structure "astatus":

Copy to Main

Table 1896

Format of NetBIOS structure "astatus":

Offset	Size	Description

 00h  6 BYTEs as_id

 06h	BYTE  as_jumpers

 07h	BYTE  as_post

 08h	BYTE  as_major

 09h	BYTE  as_minor

 0Ah	WORD  as_interval

 0Ch	WORD  as_crcerr

 0Eh	WORD  as_algerr

 10h	WORD  as_colerr

 12h	WORD  as_abterr

 14h	DWORD as_tcount

 18h	DWORD as_rcount

 1Ch	WORD  as_retran

 1Eh	WORD  as_xresrc

 20h  8 BYTEs as_res0

 28h	WORD  as_ncbfree

 2Ah	WORD  as_ncbmax

 2Ch	WORD  as_ncbx

 2Eh  4 BYTEs as_res1

 32h	WORD  as_sespend

 34h	WORD  as_msp

 36h	WORD  as_sesmax

 38h	WORD  as_bufsize

 3Ah	WORD  as_names

 3Ch 16 name structures	 as_name (see #1897)

INT 5C ----


5C ---- Format of NetBIOS structure "name":

Copy to Main

Table 1897

Format of NetBIOS structure "name":

Offset	Size	Description

 00h 16 BYTEs "nm_name" symbolic name

 10h	BYTE  "nm_num" number associated with name

 11h	BYTE  nm_status

INT 5C ----


5C ---- Format of NetBIOS structure "sstatus":

Copy to Main

Table 1898

Format of NetBIOS structure "sstatus":

Offset	Size	Description

 00h	BYTE	number of sessions being reported

 01h	BYTE	number of sessions with this name

 02h	BYTE	number of outstanding receive datagrams

 03h	BYTE	number of outstanding ReceiveAnys

 04h	var	session structures (see #1899)

INT 5C ----


5C ---- Format of NetBIOS structure "session":

Copy to Main

Table 1899

Format of NetBIOS structure "session":

Offset	Size	Description

 00h	BYTE	local session number

 01h	BYTE	state

01h listen pending

02h call pending

03h session established

04h hangup pending

05h hangup done

06h session aborted

 02h 16 BYTEs	local name

 12h 16 BYTEs	remote name

 22h	BYTE	number of outstanding receives

 23h	BYTE	number of outstanding sends/chainsends

INT 5C ----


5C ---- Values for ATALK.SYS command code:

Copy to Main

Table 1900

Values for ATALK.SYS command code:

 01h	"AT_INIT"	    initialize the driver

 02h	"AT_KILL"

 03h	"AT_GETNETINFO" get current network info incl init status

 04h	"AT_GETCLOCKTICKS"

 05h	"AT_STARTTIMER"

 06h	"AT_RESETTIMER"

 07h	"AT_CANCELTIMER"

 10h	"LAP_INSTALL"

 11h	"LAP_REMOVE"

 12h	"LAP_WRITE"

 13h	"LAP_READ"

 14h	"LAP_CANCEL"

 20h	"DDP_OPENSOCKET"

 21h	"DDP_CLOSESOCKET"

 22h	"DDP_WRITE"

 23h	"DDP_READ"

 24h	"DDP_CANCEL"

 30h	"NBP_REGISTER"

 31h	"NBP_REMOVE"

 32h	"NBP_LOOKUP"

 33h	"NBP_CONFIRM"

 34h	"NBP_CANCEL"

 35h	"ZIP_GETZONELIST"

 36h	"ZIP_GETMYZONE"

 37h	"ZIP_TAKEDOWN"

 38h	"ZIP_BRINGUP"

 40h	"ATP_OPENSOCKET"

 41h	"ATP_CLOSESOCKET"

 42h	"ATP_SENDREQUEST"

 43h	"ATP_GETREQUEST"

 44h	"ATP_SENDRESPONSE"

 45h	"ATP_ADDRESPONSE"

 46h	"ATP_CANCELTRANS"

 47h	"ATP_CANCELRESPONSE"

 48h	"ATP_CANCELREQUEST"

 50h	"ASP_GETPARMS"

 51h	"ASP_CLOSESESSION"

 52h	"ASP_CANCEL"

 53h	"ASP_INIT"

 54h	"ASP_KILL"

 55h	"ASP_GETSESSION"

 56h	"ASP_GETREQUEST"

 57h	"ASP_CMDREPLY"

 58h	"ASP_WRTCONTINUE"

 59h	"ASP_WRTREPLY"

 5Ah	"ASP_CLOSEREPLY"

 5Bh	"ASP_NEWSTATUS"

 5Ch	"ASP_ATTENTION"

 5Dh	"ASP_GETSTATUS"

 5Eh	"ASP_OPENSESSION"

 5Fh	"ASP_COMMAND"

 60h	"ASP_WRITE"

 61h	"ASP_GETATTENTION"

 70h	"PAP_OPEN"

 71h	"PAP_CLOSE"

 72h	"PAP_READ"

 73h	"PAP_WRITE"

 74h	"PAP_STATUS"

 75h	"PAP_REGNAME"

 76h	"PAP_REMNAME"

 77h	"PAP_INIT"

 78h	"PAP_NEWSTATUS"

 79h	"PAP_GETNEXTJOB"

 7Ah	"PAP_KILL"

 7Bh	"PAP_CANCEL"

INT 5C ----


5C ---- Format of AppleTalk control block:

Copy to Main

Table 1901

Format of AppleTalk control block:

Offset	Size	Description

 00h	WORD	command code (see #1900)

OR with the following flags

8000h start command then return

4000h wait for interrupt service to complete

 02h	WORD	returned status

0000h success (already initialized if func 01h)

 04h	DWORD	pointer to completion function

 08h	WORD	network number

 0Ah	BYTE	node ID

---if general func (01h,03h), control block continues:

 0Bh	BYTE	"inf_abridge"

 0Ch	WORD	"inf_config"

 0Eh	DWORD	pointer to buffer

 12h	WORD	buffer size

---if DDP function (20h-24h), control block continues:

 0Bh	BYTE	"ddp_addr_socket"

 0Ch	BYTE	"ddp_socket"

 0Dh	BYTE	"ddp_type"

 0Eh	DWORD	pointer to buffer

 12h	WORD	buffer size

 14h	BYTE	"ddp_chksum"

---if Name Binding Protocol (30h-34h), control block continues:

 0Bh	BYTE	"nbp_addr_socket"

 0Ch	WORD	"nbp_toget"

 0Eh	DWORD	pointer to buffer (see #1902)

 12h	WORD	buffer size

 14h	BYTE	"nbp_interval"

 15h	BYTE	"nbp_retry"

 16h	DWORD	"nbp_entptr"

---if AppleTalk Transaction Protocol (42h), control block continues:

 0Bh	BYTE	"atp_addr_socket"

 0Ch	WORD	"atp_socket"

 0Eh	DWORD	pointer to buffer

 12h	WORD	buffer size

 14h	BYTE	"atp_interval"

 15h	BYTE	"atp_retry"

 16h	BYTE	ATP flags

bit 5: exactly one transaction

 17h	BYTE	"atp_seqbit"

 18h	BYTE	transaction ID

 19h  4 BYTEs	ATP user bytes

 1Dh	BYTE	number of BDS buffers

 1Eh	BYTE	number of BDS responses

 1Fh	DWORD	pointer to BDS buffers (see #1903)

INT 5C ----


5C ---- Format of Name Binding Protocol Name-to-Address binding entries for NBP_LOOKUP:

Copy to Main

Table 1902

Format of Name Binding Protocol Name-to-Address binding entries for NBP_LOOKUP:

Offset	Size	Description

 00h	WORD	"tup_address_network"

 02h	BYTE	"tup_address_notid"

 03h	BYTE	"tup_address_socket"

 04h	BYTE	"tup_enum"

 05h 99 BYTEs	name

INT 5C ----


5C ---- Format of BDS entries:

Copy to Main

Table 1903

Format of BDS entries:

Offset	Size	Description

 00h	DWORD	pointer to buffer

 04h	WORD	size of buffer

 06h	WORD	BDS data size

 08h  4 BYTEs	"bds_userbytes"

INT 5C ----


5C ---- Format of IBM 802.2 CCB:

Copy to Main

Table 1904

Format of IBM 802.2 CCB:

Offset	Size	Description

 00h	BYTE	adapter

 01h	BYTE	command code

 02h	BYTE	return code

 03h	BYTE	work

 04h	DWORD	pointer to ???

 08h	DWORD	pointer to completion function???

 0Ch	DWORD	pointer to parameters???

INT 5C ----


5F 02-- Format of HP 95LX graphics info record:

Copy to Main

Table 1905

Format of HP 95LX graphics info record:

Offset	Size	Description

 00h	BYTE	current video mode

 01h	BYTE	default video mode

 02h	WORD	display width in pixels

 04h	WORD	display height in pixels

 06h	WORD	current pen column

 08h	WORD	current pen row

 0Ah	WORD	current line type

 0Ch	WORD	current replacement rule

 0Eh	WORD	current pen color

 10h	WORD	current leftmost column of clip region

 12h	WORD	current rightmost column of clip region

 14h	WORD	current topmost row of clip region

 16h	WORD	current bottommost row of clip region

 18h	WORD	current column of logical origin

 1Ah	WORD	current row of logical origin

 1Ch  8 BYTEs	current fill mask

INT 5F 02--


5F 0D-- Format of HP 95LX image buffer:

Copy to Main

Table 1906

Format of HP 95LX image buffer:

Offset	Size	Description

 00h	WORD	number of planes (always 01h on HP 95LX)

 02h	WORD	number of bits/pixel (always 01h on HP 95LX)

 04h	WORD	image width in pixels

 06h	WORD	image height in pixels

 08h  N BYTEs	image data

requires (WIDTH+7)/8 * HEIGHT bytes

INT 5F 0D--


5F 0E-- Bitfields for replacement rule:

Copy to Main

Table 1907

Bitfields for replacement rule:

Bit(s)	Description

 2	invert image before applying rule

 1-0	function (00 force, 01 AND, 10 OR, 11 XOR)

INT 5F 0E--


60 ---- Format of TI Professional System ROM data area:

Copy to Main

Table 1908

Format of TI Professional System ROM data area:

Offset	Size	Description

 00h	BYTE	port 00h shadow

 01h	BYTE	port 03h shadow

 02h	BYTE	port 04h shadow

 03h	WORD	system configuration word (see #1909)

 05h	BYTE	25ms count

 06h	WORD	offset of timing event 1 (0008h)

 08h	WORD	(event 1) offset of timing event 2 (0010h)

 0Ah	BYTE	(event 1) unused (FFh)

 0Bh	BYTE	(event 1) active flag (00h = off, 80h = on)

 0Ch	WORD	(event 1) count-down until end of event

 0Eh	WORD	(event 1) event routine (in segment F400h) to call at timeout

 10h	WORD	(event 2) offset of timing event 3 (0018h)

 12h	BYTE	(event 2) unused (FFh)

 13h	BYTE	(event 2) active flag (00h = off, 80h = on)

 14h	WORD	(event 2) count-down until end of event

 16h	WORD	(event 2) event routine (in segment F400h) to call at timeout

 18h	...

Note:	timing event 1 is the disk I/O timeout, and event 2 is the floppy disk

  motor timeout

INT 60 ----


60 ---- Bitfields for TI Professional System Configuration Word:

Copy to Main

Table 1909

Bitfields for TI Professional System Configuration Word:

Bit(s)	Description

 0	drive A: installed

 1	drive B: installed

 2	drive C: installed

 3	drive D: installed

 4	drive A: is 80-track

 5	drive A: is double-sided

 6	60-Hz (USA,etc.) system instead of 50-Hz (Europe)

 7	hard disk installed

 8	serial port 1 installed

 9	serial port 2 installed

 10	serial port 3 installed

 11	serial port 4 installed

 14-12	installed graphics planes

000 none

001 plane A

111 planes A, B, and C

 15	clock installed

SeeAlso: #1908

INT 60 ----


60 ---- Call Buffit private entry point with:

Copy to Main

Table 1910

Call Buffit private entry point with:

AH = function

    00h get information and hotkey state

    01h get information and toggle hotkey state

Return: AH = new hotkey state (00h enabled, 01h disabled)

AL = hotkey scan code

BH = hotkey shift states

BL = ??? (01h)

CX = segment of resident code

DH = interrupt number used for signature pointer

DL = ??? (00h)

SI = INT 09 handler offset

DI = INT 21 handler offset

Index:	hotkeys;Buffit

INT 60 ----


60 ---- Format of PC-IPC parameter block:

Copy to Main

Table 1911

Format of PC-IPC parameter block:

Offset	Size	Description

 00h	WORD	caller's ID

 02h	WORD	to ID

 04h	WORD	command code (see #1912)

 06h	WORD	returned status (see #1913)

 08h	WORD	returned error code (see #1914)

 0Ah	WORD	size of data

 0Ch	DWORD	pointer to data buffer

INT 60 ----


60 ---- Values for PC-IPC command code:

Copy to Main

Table 1912

Values for PC-IPC command code:

 01h "IPC_CMND_INQUIRE"	 inquire current status

set status field, writes WORD to data buffer containing free

  message space in bytes, and sets the "size" field to the

  number of messages waiting

 02h "IPC_CMND_ENABLE"	reenable PC-IPC

ignored unless called with the same ID that disabled PC-IPC

 03h "IPC_CMND_DISABLE" disable PC-IPC

 04h "IPC_CMND_INSTALL" reset PC-IPC

 06h "IPC_CMND_RDATA"	read data

returns first message in data buffer, sets "size" to message length

  and "to ID" field to sender's ID

if no messages available, bit 4 of status is cleared and "size" is

  set to zero

 07h "IPC_CMND_SDATA"	send data

 08h "IPC_CMND_REQID"	require user ID

create a new recognized ID and return in "caller's ID" field

 09h "IPC_CMND_DELID"	cancel user ID

delete caller's ID from pool of recognized IDs

 0Ah "IPC_CMND_RDATAW"	read data, wait if no messages available

 0Bh "IPC_CMND_VERS"	get PC-IPC version

string representing version returned in data buffer, "size" field

  set to length of string

INT 60 ----


60 ---- Bitfields for returned status:

Copy to Main

Table 1913

Bitfields for returned status:

Bit(s)	Description

 0	unused

 1	IPC enabled

 2	IPC installed

 3	error

 4	message(s) available

INT 60 ----


60 ---- Values for PC-IPC error code:

Copy to Main

Table 1914

Values for PC-IPC error code:

 00h	no error

 01h	invalid command or parameter

 02h	only process 0 can install/reset IPC

 03h	process can not install/reset IPC

 04h	IPC is not enabled

 05h	process can not disable IPC

 06h	invalid destination process ID

 07h	invalid sending process ID

 08h	invalid data destination

 09h	no more process IDs available

 0Ah	can not relinquish that process ID

 0Bh	message space is full

 0Ch	IPC is not installed

INT 60 ----


60 ---- Format of Excelan request packet:

Copy to Main

Table 1915

Format of Excelan request packet:

Offset	Size	Description

 00h 12 BYTEs	???

 0Ch	WORD	(ret) error code (see #1916)

 0Eh	DWORD	-> FAR function for ???

 12h	WORD	function number

0001h ???

0002h NOP

0003h NOP

0004h NOP

0005h ???

0006h get ??? record

0007h NOP

0008h reset ???

0009h NOP

000Ah set ???

???

---function 01h---

 20h	BYTE	(call) subfunction (32h-3Bh)

3Bh non-blocking I/O request (will be tested every clock tick)

 21h	BYTE	(ret) error code

00h successful

09h invalid connection number

2Ah bad connection type

45h ???

---function 01h, subfunction 32h---

 3Ah	WORD	(call) connection type (01h stream, 02h datagram)

---function 01h, subfunction 34h---

 26h	WORD	(call) ???

 28h	WORD	(call) ???

 2Ah	WORD	(call) ???

---function 01h, subfunction 35h---

 1Ah	WORD	(call) connection number???

 26h	WORD	(ret) ???

---function 01h, subfunction 36h---

 1Ah	WORD	(call) connection number???

 38h	WORD	???

---function 01h, subfunction 37h---

 24h	WORD	(ret) ???

 26h	WORD	(ret) ???

---function 01h, subfunction 38h---

 1Ah	WORD	(call) connection number???

---function 01h, subfunction 3Ah---

 22h	WORD	(call) ???

667Eh ???

667Fh ???

 24h	BYTE	(call 667Eh) ???

 24h	WORD	(return 667Fh) ???

---function 01h, subfunction 3Bh---

 0Eh	DWORD	(call) -> function to invoke for I/O or 0000h:0000h

function called with AX = 0000h

     STACK: DWORD -> request packet

    WORD 0000h

should return STACK unchanged

 1Ah	WORD	(call) connection number???

 21h	BYTE	(ret) set to 01h when I/O becomes possible

 22h	BYTE	(call) direction (00h write, 01h read)

 34h	DWORD	(ret) -> next pending request packet

---function 05h---

 1Eh	WORD	(call) ???

 20h	WORD	(call) ???

 34h	DWORD	(call) -> ???

---function 06h---

 16h	DWORD	(call) -> buffer for ??? record (see #1917)

 1Ah	WORD	(call) number of bytes to copy

 22h	WORD	(ret) number of bytes transferred

---function 08h---

 14h	WORD	(ret) ??? (0001h)

---function 0Ah---

 16h	DWORD	(call) -> WORD ???

 1Ch	WORD	(call) must be 000Ah for BWLWP35

INT 60 ----


60 ---- Values for Excelan error code:

Copy to Main

Table 1916

Values for Excelan error code:

 0000h	successful

 002Dh	invalid function

 0050h	???

INT 60 ----


60 ---- Format of ??? record:

Copy to Main

Table 1917

Format of ??? record:

Offset	Size	Description

 00h	WORD	offset of ???

 02h  4 BYTEs	???

 06h	DWORD	IP address (big-endian)

 0Ah  6 BYTEs	physical address (big-endian)

???

INT 60 ----


60 ---- Call INTRSPY v1.0 entry point with:

Copy to Main

Table 1918

Call INTRSPY v1.0 entry point with:

AH = function

    00h ???

    01h set current directory (for use in reporting)

ES:DI -> counted string containing directory name (max 79 char)

    02h set name of script file

ES:DI -> counted string containing file name (max 79 chars)

    03h set script arguments

ES:DI -> counted string containing arguments (max 79 chars)

    04h get directory set with function 01h

ES:DI -> 80-byte buffer for directory name

    05h get name of script file

ES:DI -> 80-byte buffer for script filename

    06h get script arguments

ES:DI -> 80-byte buffer for script arguments

    07h get ???

CL = 00h-15h specifies what to get

ES:DI -> WORD to be set with desired value on return

    08h get ???

ES:DI -> WORD to be set with returned value

    09h get ???

ES:DI -> WORD to be set with returned value

    0Bh store code for interrupt handler???

ES:DI -> data

CX = number of bytes

    0Ch ???

ES:DI -> ???

    0Dh get ???

ES:DI -> BYTE to be set with returned value

    0Eh set ??? flag

    0Fh clear ??? flag

    10h ???

Return: AL = 04h or 05h if failed

    11h ???

Return: AL = 05h if failed

    12h get ???

ES:DI -> buffer

Return: CX = number of bytes returned in buffer

    13h ???

Return: AH = 00h

AL = status

    00h successful

    01h invalid function

    02h ???

    03h ???

    04h ???

    05h ???

INT 60 ----


60 ---- Values for HP 95LX event type:

Copy to Main

Table 1919

Values for HP 95LX event type:

 00h	no events

 01h	keystroke available

 02h	Ctrl-Break

 03h	reactivation (always follows deactivation event)

 04h	about to deactivate (sleep)

next get-event call will not return until reactivated

 05h	forced application termination

 06h	1-2-3 bridge service request (only given to 1-2-3)

 07h	request to grow

 08h	request to shrink

 09h	application's alarm expired

 0Ah	daily chance to set an alarm

 0Bh	system date or time has been changed

INT 60 ----


60 ---- Format of HP 95LX event record:

Copy to Main

Table 1920

Format of HP 95LX event record:

Offset	Size	Description

 00h	WORD	event type (see #1919)

 02h	WORD	ASCII code page 850 translation of keystroke

or grow/shrink amount in paragraphs or 0000h if error

or alarm expiration data

 04h	BYTE	scan code from BIOS

 05h	BYTE	shift key states at time keystroke is retrieved

 06h	WORD	LICS translation of keystroke

 08h	BYTE	function key number (1-2-3 only)

 09h	DWORD	pointer to 1-2-3 bridge record (see #1922)

or pointer to time change structure (see #1921)

Note:	if the System Manager is awaiting the conclusion of a bridge service

  or grow/shrink call and the event type field is set to FFFFh on

  entry, the SysMgr will resume

INT 60 ----


60 ---- Format of HP 95LX time change structure:

Copy to Main

Table 1921

Format of HP 95LX time change structure:

Offset	Size	Description

 00h	WORD	old year

 02h	BYTE	old month

 03h	BYTE	old date

 04h	BYTE	old day

 05h	BYTE	old hour

 06h	BYTE	old minute

 07h	BYTE	old second

 08h	BYTE	old hundredth of a second

 09h  9 BYTEs	new time in same format as old time

INT 60 ----


60 ---- Format of HP 95LX bridge record:

Copy to Main

Table 1922

Format of HP 95LX bridge record:

Offset	Size	Description

 00h	WORD	function code (see #1923)

 02h	WORD	return code from 1-2-3

 04h 16 BYTEs	ASCII range name

 14h	WORD	start column of range

 16h	WORD	start row of range

 18h	WORD	end column of range

 1Ah	WORD	end row of range

 1Ch	WORD	order in which data is placed in buffer

 1Eh	WORD	buffer size

 20h	WORD	offset within bridge record's segment of buffer for cell data

INT 60 ----


60 ---- Values for HP 95LX function code:

Copy to Main

Table 1923

Values for HP 95LX function code:

 00h	test

 01h	get range

 02h	"GETRANGE_ADDR"

 03h	"SETRANGE_ADDR"

 04h	"GETRANGE_DATA"

 05h	"SETRANGE_DATA"

 06h	recalculate

 07h	get cursor

 08h	set cursor

 09h	redisplay

 0Ah	cell type

 0Bh	"CALCTYPE"

INT 60 ----


60 ---- Format of HP 95LX menu data:

Copy to Main

Table 1924

Format of HP 95LX menu data:

Offset	Size	Description

 00h 80 BYTEs	first line of menu text

 50h 80 BYTEs	second line of menu text

 A0h 80 BYTEs	third line of menu text

 F0h	WORD	number of keywords

 F2h	WORD	index of currently highlighted keyword or FFFFh

 F4h	WORD	single prompt on top line if nonzero

 F6h 20 BYTEs	which line each of 20 keywords is located on

10Ah 20 BYTEs	offset of each of 20 keywords within its line

11Eh 20 BYTEs	length of each of 20 keywords

132h 20 BYTEs	first letter of each of 20 keywords

146h 20 WORDs	offsets of long prompts for each of 20 keywords

INT 60 ----


60 ---- Format of HP 95LX file menu structure:

Copy to Main

Table 1925

Format of HP 95LX file menu structure:

Offset	Size	Description

 00h	DWORD	pointer to ASCIZ base directory name

 04h	DWORD	pointer to ASCIZ file pattern (wildcard filespec)

 08h	DWORD	pointer to file list workspace, at least 1024 bytes (see #1926)

 0Ch	WORD	size of file list workspace in bytes

 0Eh	WORD	starting row (-3 is topmost, 0 is first non-"reserved" line)

 10h	WORD	starting column

 12h	WORD	number of lines

 14h	WORD	number of columns

 16h	WORD	number of files displayed on each line

---the remaining fields are initialized by the System Manager---

 18h	WORD	0000h if first edit character, else multiline

 1Ah	WORD	number of files in file list

 1Ch	WORD	max files workspace has room for

 1Eh	WORD	file at top of list

 20h	WORD	index of file to highlight

 22h	WORD	index of file to unhighlight

 24h	WORD	current focus (01h FMENU, 02h EDIT)

INT 60 ----


60 ---- Format of HP 95LX file list workspace entry:

Copy to Main

Table 1926

Format of HP 95LX file list workspace entry:

Offset	Size	Description

 00h	BYTE	file attributes

 01h	WORD	file time (see #0876 at INT 21/AX=5700h)

 03h	WORD	file date (see #0877 at INT 21/AX=5700h)

 05h	DWORD	file size

 09h 13 BYTEs	ASCIZ filename

INT 60 ----


60 ---- Values for HP 95LX System Manager status:

Copy to Main

Table 1927

Values for HP 95LX System Manager status:

 0000h	keystroke processed, call INT 60/DI=0206h to refresh menu

 0001h	redisplay application area before refreshing menu

 0002h	user confirmed selection, filename is in edit record's buffer

 0003h	user aborted menu

 FFFBh	bad filename

 FFFCh	bad directory

 FFFDh	bad drive

 FFFEh	unknown keystroke

 FFFFh	keystroke known but invalid in current context

INT 60 ----


60 ---- Format of HP 95LX edit record:

Copy to Main

Table 1928

Format of HP 95LX edit record:

Offset	Size	Description

 00h	WORD	current length of edit buffer

 02h	BYTE	flag for special processing on first character

 03h	BYTE	flags

bit 0: tab handling

 04h	WORD	editing in prompt window?

 06h	DWORD	pointer to top line of prompt window message

 0Ah	WORD	length of top line of prompt

 0Ch	DWORD	pointer to second line of prompt window message

 10h	WORD	length of second line of prompt

 12h 80 BYTEs	workspace for editing

 62h  2 WORDs	line array needed for multi-line editing

 66h 36 BYTEs	multi-line edit record (see #1929)

 8Ah	WORD	displayable columns

INT 60 ----


60 ---- Format of HP 95LX multi-line edit record:

Copy to Main

Table 1929

Format of HP 95LX multi-line edit record:

Offset	Size	Description

 00h	DWORD	pointer to user-supplied edit buffer

 04h	WORD	length of edit buffer

 06h	WORD	current cursor position

 08h	WORD	starting row of edit area (-3 is topmost, 0 is first user line)

 0Ah	WORD	starting column of edit area

 0Ch	WORD	height of edit area

 0Eh	WORD	width of edit area

 10h	WORD	current top row (-3 is topmost, 0 is first user line)

 12h	WORD	number of rows displayable

 14h	BYTE	cursor column

 15h	BYTE	01h if buffer has been modified

 16h	BYTE	first displayable column (ticker fields only)

 17h	BYTE	01h if wordwrap enabled, FFh if ticker field

 18h	DWORD	pointer to array of line starts (at least one bigger than edit

  area is high)

 1Ch	BYTE	currently marking?

 1Dh	BYTE	flag

 1Eh	WORD	offset of mark start

 20h	WORD	offset of mark end (inclusive)

 22h	WORD	displayable columns

INT 60 ----


60 ---- Format of HP 95LX file state record:

Copy to Main

Table 1930

Format of HP 95LX file state record:

Offset	Size	Description

 00h	WORD	DOS file handle

 02h	WORD	state flags (see #1931)

 04h	DWORD	current DOS physical file offset (FFFFFFFFh if unknown)

 08h	DWORD	DOS file offset of start of buffer

 0Ch	DWORD	effective file offset as seen by caller

 10h	WORD	number of bytes in file buffer

---buffered I/O only---

 12h 512 BYTEs	file buffer

INT 60 ----


60 ---- Bitfields for HP 95LX file state flags:

Copy to Main

Table 1931

Bitfields for HP 95LX file state flags:

Bit(s)	Description

 0	buffer contents valid

 1	buffer is dirty and must be written

 2	unbuffered I/O

 3	file is a character device

SeeAlso: #1930

INT 60 ----


60 ---- Format of HP 95LX pattern match control block:

Copy to Main

Table 1932

Format of HP 95LX pattern match control block:

Offset	Size	Description

 00h 43 BYTEs	FindFirst data block (see #0839 at INT 21/AH=4Eh)

 2Bh 80 BYTEs	full path name

 7Bh	BYTE	offset of last component of filename

 7Ch	BYTE	DOS function number (4Eh or 4Fh)

INT 60 ----


60 ---- Values returned by HP 95LX System Manager:

Copy to Main

Table 1933

Values returned by HP 95LX System Manager:

 0000h	nonexistent

 0001h	file

 0002h	directory

 0003h	character device

INT 60 ----


60 ---- Values for HP 95LX error code:

Copy to Main

Table 1934

Values for HP 95LX error code:

 0000h	successful

 FFF8h	transfer request out of bounds

 FFF9h	no such representation

 FFFAh	no representation open

 FFFBh	a representation is already open

 FFFCh	representation already exists

 FFFDh	heap allocation failure

 FFFEh	clipboard not open

 FFFFh	clipboard access denied

INT 60 ----


60 ---- Format of HP 95LX alarm record:

Copy to Main

Table 1935

Format of HP 95LX alarm record:

Offset	Size	Description

 00h	BYTE	hour

 01h	BYTE	minute

 02h	BYTE	second

 03h	BYTE	unused padding

 04h	WORD	rescheduling interval, in seconds

 06h	BYTE	are seconds significant?

 07h	BYTE	alarm sound

 08h 40 BYTEs	message displayed when alarm activates

 30h	BYTE	task ID of owner

 31h	BYTE	application's own use for sub-class

 32h  4 BYTEs	application's own use for private data

INT 60 ----


60 ---- Bitfields for HP 95LX timestamp format:

Copy to Main

Table 1936

Bitfields for HP 95LX timestamp format:

Bit(s)	Description

 1-0	timestamp components

00 date only

01 time only

10 date and time

11 day and date

 4	supply am/pm

 5	supply seconds

 6	show year

 7	four-digit year

INT 60 ----


60 ---- Format of HP 95LX system settings:

Copy to Main

Table 1937

Format of HP 95LX system settings:

Offset	Size	Description

 00h	WORD	country code

 02h	WORD	speaker volume (00h-03h or FFh for off)

 04h	WORD	contrast level (00h-0Fh)

 06h	WORD	week start (00h Sunday, 01h Monday)

 08h	WORD	punctuation format (see #1938)

 0Ah	WORD	two-character language code (only 5355h = "US" byte-swapped)

 0Ch	WORD	current date format (see #1939)

 0Eh	WORD	current time format (see #1940)

 10h	WORD	collating sequence

00h numbers first, 01h letters first, 02h ASCII

 12h 80 BYTEs	name of picture file

 62h 30 BYTEs	name

 80h 30 BYTEs	title

 9Eh 28 BYTEs	company name

 BAh	WORD	number of languages

 BCh  6 BYTEs	available languages

 C2h 66 BYTEs	language menu

104h  2 BYTEs	ASCIZ date separator

106h  2 BYTEs	ASCIZ time separator

108h	BYTE	date order

109h	BYTE	use 24 hour time?

10Ah 16 BYTEs	currency string

11Ah	WORD	currency string position (00h prefix, 01h suffix)

11Ch	WORD	keyboard (see #1941)

11Eh	WORD	printer baud rate

00h 300, 01h 1200, 02h 2400, 03h 4800, 04h 9600, 05h 19200

120h	WORD	printer driver code

00h Epson FX80, 01h HP Laserjet, 02h IBM ProPrinter

122h	WORD	printer interface (00h COM1, 01h COM2, 02h IR, 03h LPT1)

124h	WORD	system manager interrupt (60h by default)

126h	WORD	code page (01h CP850, 02h CP437)

128h	WORD	active exit key

12Ah	WORD	active menu key

12Ch	WORD	active CHAR key toggle

12Eh  6 BYTEs	alarm

INT 60 ----


60 ---- Values for HP 95LX punctuation format:

Copy to Main

Table 1938

Values for HP 95LX punctuation format:

 code	decimal arg	thousands

 00h	.	,	,

 01h	,	.	.

 02h	.	;	;

 03h	,	;	.

 04h	.	,	" "

 05h	,	.	" "

 06h	.	;	" "

 07h	,	;	" "

INT 60 ----


60 ---- Values for HP 95LX current date format:

Copy to Main

Table 1939

Values for HP 95LX current date format:

 00h	dd-mmm-yy

 01h	dd-mmm

 02h	mmm-yy

 03h	mm/dd/yy

 04h	dd/mm/yy

 05h	dd.mm.yy

 06h	yy-mm-dd

 07h	mm/dd

 08h	dd/mm

 09h	dd.mm

 0Ah	mm-dd

INT 60 ----


60 ---- Values for HP 95LX current time format:

Copy to Main

Table 1940

Values for HP 95LX current time format:

 00h	HH:MM:SS am/pm

 01h	HH:MM am/pm

 02h	HH:MM:SS

 03h	HH.MM.SS

 04h	HH,MM,SS

 05h	HHhMMmSSs

 06h	HH:MM

 07h	HH.MM

 08h	HH,MM

 09h	HHhMMm

INT 60 ----


60 ---- Values for HP 95LX keyboard layout:

Copy to Main

Table 1941

Values for HP 95LX keyboard layout:

 0001h	Belgium

 0002h	French Canadian

 0004h	Denmark

 0008h	Finland

 0010h	French

 0020h	Finland

 0040h	Italy

 0080h	Netherlands

 0100h	Norway

 0200h	Portugal

 0400h	Spain

 0800h	Sweden

 1000h	Swiss French

 2000h	Swiss German

 4000h	United Kingdom

 8000h	USA

INT 60 ----


60 ---- Values for HP 95LX date parsing rule:

Copy to Main

Table 1942

Values for HP 95LX date parsing rule:

 01h	day-month-year

 02h	month-day-year

 03h	year-month-day

 04h	"DMYO"

 05h	"MDYO"

 OR with 08h to get any year

INT 60 ----


60 ---- Values for HP 95LX time parsing rule:

Copy to Main

Table 1943

Values for HP 95LX time parsing rule:

 01h	HH:MM:SS (am/pm)

 02h	HH:MM:SS (24hr)

 03h	HHMM:SS (24hr)

 04h	HH:MM:SS.hh (24hr)

 05h	HH:MM (am/pm)

 06h	HH:MM (24hr)

 07h	HHMM (24hr)

INT 60 ----


60 ---- Values for HP 95LX error code:

Copy to Main

Table 1944

Values for HP 95LX error code:

 0000h	successful

 FFF1h	"E_BUSY"

 FFF2h	timeout

 FFF3h	framing error

 FFF4h	parity error

 FFF5h	overrun error

 FFF6h	"E_EMPTY"

 FFF7h	"E_CONECT"

 FFF8h	not open

 FFF9h	out of memory

 FFFAh	buffer overflow

 FFFBh	"E_NOFIT"

 FFFCh	unsupported

 FFFDh	"E_IVOPR"

 FFFEh	"E_IVCHN"

 FFFFh	"E_REOPEN"

INT 60 ----


60 ---- Bitfields for HP 95LX reset options:

Copy to Main

Table 1945

Bitfields for HP 95LX reset options:

Bit(s)	Description

 0	reset line

 1	flush transmit buffer

 2	flush receive buffer

 3	reset modem

 4	reset receiver's ^S state

 5	reset transmitter's ^S state

INT 60 ----


60 ---- Format of HP 95LX communications settings:

Copy to Main

Table 1946

Format of HP 95LX communications settings:

Offset	Size	Description

 00h	BYTE	dial type ('T' tone, 'P' pulse)

 01h	WORD	baud rate divisor (115200/baud_rate)

 03h	BYTE	parity (00h none, 08h odd, 18h even, 28h mark, 38h space)

 04h	BYTE	stop bits (00h one, 04h two)

 05h	BYTE	data bits - 5

 06h	BYTE	software handshake

01h none, 02h XOFF/XON, 04h XOFF/any, 08h ENQ/ACK

 07h	BYTE	infrared (01h off, 02h on)

 08h	BYTE	duplex (01h half, 02h full)

 09h	BYTE	echo (01h echo, 02h no echo)

INT 60 ----


60 00-- Format of MDEBUG identification table:

Copy to Main

Table 1947

Format of MDEBUG identification table:

Offset	Size	Description

 -2	WORD	entry offset

 00h	WORD	CS of MDEBUG

 02h	DWORD	old INT 08h vector

 06h	DWORD	old INT 09h vector

 0Ah	DWORD	address INT 16h routine used by MDEBUG

 0Eh	BYTE	length of version string

 0Fh  N BYTEs	version string

INT 60 00--


60 01FF Values for Packet Driver error code:

Copy to Main

Table 1948

Values for Packet Driver error code:

 01h "BAD_HANDLE"	invalid handle number

 02h "NO_CLASS"	no interfaces of the specified class found

 03h "NO_TYPE"	no interfaces of the specified type found

 04h "NO_NUMBER"	no interfaces of the specified number found

 05h "BAD_TYPE"	bad packet type

 06h "NO_MULTICAST"	interface does not support multicast messages

 07h "CANT_TERMINATE"	this packet driver cannot terminate

 08h "BAD_MODE"	invalid receiver mode

 09h "NO_SPACE"	insufficient space

 0Ah "TYPE_INUSE"	type accessed but never released

 0Bh "BAD_COMMAND"	bad command

 0Ch "CANT_SEND"	packet could not be sent

 0Dh "CANT_SET"	hardware address could not be changed

 0Eh "BAD_ADDRESS"	hardware address has a bad length or format

 0Fh "CANT_RESET"	could not reset interface

INT 60 01FF


60 01FF Values for Packet Driver network interface classes/types:

Copy to Main

Table 1949

Values for Packet Driver network interface classes/types:

    Class 01h  Ethernet/IEEE 802.3

01h 3COM 3C500/3C501

02h 3COM 3C505

03h MICOM-Interlan NI5010

04h BICC Data Networks 4110

05h BICC Data Networks 4117

06h MICOM-Interlan NP600

08h Ungermann-Bass PC-NIC

09h Univation NC-516

0Ah TRW PC-2000

0Bh MICOM-Interlan NI5210

0Ch 3COM 3C503

0Dh 3COM 3C523

0Eh Western Digital WD8003

0Fh Spider Systems S4

10h Torus Frame Level

11h 10Net Communications

12h Gateway PC-bus

13h Gateway AT-bus

14h Gateway MCA-bus

15h IMC PCnic

16h IMC PCnic II

17h IMC PCnic 8-bit

18h Tigan Communications

19h Micromatic Research

1Ah Clarkson "Multiplexor"

1Bh D-Link 8-bit

1Ch D-Link 16-bit

1Dh D-Link PS/2

1Eh Research Machines 8

1Fh Research Machines 16

20h Research Machines MCA

21h Radix Microsystems EXM1 16-bit

22h Interlan Ni9210

23h Interlan Ni6510

24h Vestra LANMASTER 16-bit

25h Vestra LANMASTER 8-bit

26h Allied Telesis PC/XT/AT

27h Allied Telesis NEC PC-98

28h Allied Telesis Fujitsu FMR

29h Ungermann-Bass NIC/PS2

2Ah Tiara LANCard/E AT

2Bh Tiara LANCard/E MC

2Ch Tiara LANCard/E TP

2Dh Spider Communications SpiderComm 8

2Eh Spider Communications SpiderComm 16

2Fh AT&T Starlan NAU

30h AT&T Starlan-10 NAU

31h AT&T Ethernet NAU

32h Intel smart card

33h Xircom Packet Adapter

34h Aquila Ethernet

35h Novell NE1000

36h Novell NE2000

37h SMC PC-510

38h AT&T Fiber NAU

39h NDIS to Packet Driver adapter

3Ah Racal-InterLan ES3210

3Bh General Systems ISDN simulated Ethernet

3Ch Hewlett-Packard

3Dh IMC EtherNic-8

3Eh IMC EtherNic-16

3Fh IMC EtherNic-MCA

40h NetWorth EtherNext

41h Dataco Scanet

42h DEC DEPCA

43h C-Net

44h Gandalf LANLine

45h Apricot built-in

46h David Systems Ether-T

47h ODI to Packet Driver adapter (see also AX=5100h)

48h AMD Am21110-16

49h Intel ICD Network controller family

4Ah Intel ICD PCL2

4Bh Intel ICD PCL2A

4Ch AT&T LANPacer

4Dh AT&T LANPacer+

4Eh AT&T EVB

4Fh AT&T StarStation

50h SLIP simulated ethernet

51h Racal-Interlan NIA310

52h Racal-Interlan NISE

53h Racal-Interlan NISE30

54h Racal-Interlan NI6610

55h Ethernet over IP/UDP

56h ICL EtherTeam 16

57h David Systems

58h NCR WaveLAN

59h Thomas Contrad TC5045

5Ah Russ Nelson's Parallel Port driver

5Bh Intell EtherExpress 16

5Ch IBMTOKEN

5Dh Zenith Z-Note

5Eh 3Com 3C509

5Fh Mylex LNE390

60h Madge Smart Ringnode

61h Novell NE2100

62h Allied Telesis 1500

63h Allied Telesis 1700

64h Fujitsu EtherCoupler

    Class 02h  ProNET-10

01h Proteon p1300

02h Proteon p1800

    Class 03h  IEEE 802.5/ProNet-4 (without expanded RIFs)

01h IBM Token-Ring Adapter

02h Proteon p1340

03h Proteon p1344

04h Gateway PC-bus

05h Gateway AT-bus

06h Gateway MCA-bus

07h Madge board

39h NDIS to Packet Driver adapter

47h ODI to Packet Driver adapter

    Class 04h  Omninet

    Class 05h  Appletalk

01h ATALK.SYS adapter

    Class 06h  Serial Line

01h Clarkson 8250-SLIP

02h Clarkson "Multiplexor"

03h Eicon Technologies

    Class 07h  StarLAN (subsumed by Ethernet class)

    Class 08h  ARCnet

01h Datapoint RIM

    Class 09h  AX.25

01h Ottawa PI card

02h Eicon Technologies

    Class 0Ah  KISS

    Class 0Bh  IEEE 802.3 with 802.2 headers

types same as for class 01h

    Class 0Ch  FDDI with 802.2 headers

01h Western Digital

02h Frontier Technology

    Class 0Dh  Internet X.25

01h Western Digital

02h Frontier Technology

03h Emerging Technologies

04h The Software Forge

05h Link Data Intelligent X.25

06h Eicon Technologies

    Class 0Eh  N.T. LANSTAR (encapsulating DIX Ethernet)

01h NT LANSTAR/8

02h NT LANSTAR/MC

    Class 0Fh  SLFP (MIT serial specification)

01h MERIT

    Class 10h  PPP (Point-to-Point Protocol)

01h 8250/16550 UART

02h Niwot Networks synch

03h Eicon Technologies

    Class 11h  802.5 with expanded RIFs

types same as for class 3

    Class 12h  reserved for LCP/NCPs

Note: class and type numbers are cleared through FTP Software

INT 60 01FF


60 02-- Bitfields for MDEBUG error reasons:

Copy to Main

Table 1950

Bitfields for MDEBUG error reasons:

Bit(s)	Description

 0	invalid monitor start line

 1	invalid interpreter start line

 2	invalid hotkey

 3	invalid process number

 4-7	reserved

INT 60 02--


60 02-- Values packet driver receiver is called with when a packet is received:

Copy to Main

Table 1951

Values packet driver receiver is called with when a packet is received:

AX = subfunction

    00h get packet buffer

CX = buffer length

DX = lookahead length (v1.10+)

DS:SI -> lookahead buffer if DX nonzero (v1.10+)

DI = error flags (class dependent) (v1.10+)

Return: ES:DI -> packet buffer

0000h:0000h means throw away packet

CX = size of buffer (v1.10+), may be smaller than

      incoming data

    01h copy completed

DS:SI -> buffer

CX = bytes actually copied (v1.10+)

BX = handle

INT 60 02--


60 03-- Values for MDEBUG return code:

Copy to Main

Table 1952

Values for MDEBUG return code:

 FFFFh	call not allowed

 FFFEh	password is invalid

 FFFDh	display mode is invalid

 else	successful

INT 60 03--


60 0A-- Format of packet driver parameter table:

Copy to Main

Table 1953

Format of packet driver parameter table:

Offset	Size	Description

 00h	BYTE	major revision of packet driver spec driver conforms to

 01h	BYTE	minor revision of packet driver spec

 02h	BYTE	length of this structure in bytes

 03h	BYTE	length of a MAC-layer address

 04h	WORD	maximum transfer unit, including MAC headers

 06h	WORD	buffer size for multicast addr

 08h	WORD	number of receive buffers (one less than back-to-back MTU rcvs)

 0Ah	WORD	number of transmit buffers

 0Ch	WORD	interrupt number to hook for post-EOI processing, 00h=none

INT 60 0A--


60 0B-- Values packet driver completion function is called with:

Copy to Main

Table 1954

Values packet driver completion function is called with:

AX = result

    00h copy OK

    nonzero error

ES:DI -> buffer passed to INT 60/AH=0Bh call

INT 60 0B--


60 0C-- Format of packet driver IOCB:

Copy to Main

Table 1955

Format of packet driver IOCB:

Offset	Size	Description

 00h	DWORD	pointer to buffer

 04h	WORD	length of buffer

 06h	BYTE	flags

bit 0: packet driver is finished with IOCB

bit 1: application requests upcall when driver completes

 07h	DWORD	function address for upcall (see #1956)

 0Bh  4 BYTEs	future gather write

 0Fh	BYTE	???

 10h  8 BYTEs	private driver workspace

INT 60 0C--


60 0C-- Values completion function is called with:

Copy to Main

Table 1956

Values completion function is called with:

ES:DI -> IOCB passed to INT 60/AH=0Ch

INT 60 0C--


60 11-- Values for 3com semaphore status:

Copy to Main

Table 1957

Values for 3com semaphore status:

 00h	successful

 01h	timeout

 02h	server not responding

 03h	invalid semaphore name

 04h	semaphore list is full

 05h	invalid drive ID

 06h	invalid Ethernet address

 07h	not logged in

 08h	write to network failed

 09h	semaphore already logged for this CPU

INT 60 11--


60 14-- Values for packet driver receive mode:

Copy to Main

Table 1958

Values for packet driver receive mode:

 01h	turn off receiver

 02h	receive only packets sent to this interface

 03h	mode 2 plus broadcast packets

 04h	mode 3 plus limited multicast packets

 05h	mode 3 plus all multicast packets

 06h	all packets

 07h	raw mode for serial line only (v1.10+)

INT 60 14--


60 18-- Format of packet driver statistics:

Copy to Main

Table 1959

Format of packet driver statistics:

Offset	Size	Description

 00h	DWORD	packets in

 04h	DWORD	packets out

 08h	DWORD	bytes in

 0Ch	DWORD	bytes out

 10h	DWORD	errors in

 14h	DWORD	errors out

 18h	DWORD	packets dropped

INT 60 18--


61 ---- Format of TCPOpen request packet:

Copy to Main

Table 1960

Format of TCPOpen request packet:

Offset	Size	Description

 00h  8 BYTEs	???

 08h	WORD	function number (0000h-001Ah or FFF9h-FFFFh)

 0Ah	WORD	???

 0Ch  2 BYTEs	???

 0Eh	WORD	(ret) return code

 10h  2 BYTEs	???

 12h	WORD	???

 14h	WORD	(ret) 0001h if requested function complete

 16h	WORD	(ret) ???

 18h  6 BYTEs	???

 1Eh	DWORD	-> ???

 22h	WORD	??? or 0000h

 24h	WORD	(ret) ???

SeeAlso: #1961

INT 61 ----


61 ---- Call TCPOpen Function FFFFh: installation verification

Copy to Main

Table 1961

Call TCPOpen Function FFFFh: installation verification

Return: offset 10h = BEEFh

offset 14h = 0001h

offset 24h = ???

Index:	installation check;TCPOpen kernel

INT 61 ----


61 ---- Values for PC/TCP error code:

Copy to Main

Table 1962

Values for PC/TCP error code:

 00h "NET_NOERR" successful

 01h "NET_ERR_INUSE" protocol or socket already in use

 02h "NET_DOS_ERR" MS-DOS error (returned as suberror code in AH)

 03h "NET_ERR_NOMEM" out of memory

 04h "NET_ERR_NOTNETCONN" not a network descriptor

 05h "NET_ERR_ILLEGALOP" invalid operation on given kind of network descriptor

 06h "NET_ERR_BADPKT" illegal or corrupted packet

 07h "NET_ERR_NOHOST" no host bound to specified connection

 08h "NET_ERR_CANTOPEN" unable to open file

 09h "NET_ERR_NET_UNREACHABLE" network is unreachable

 0Ah "NET_ERR_HOST_UNREACHABLE" host is unreachable (see subcodes below)

 0Bh "NET_ERR_PROT_UNREACHABLE" protocol is unreachable

 0Ch "NET_ERR_PORT_UNREACHABLE" port is unreachable

 0Dh "NET_ERR_TIMEOUT" operation timed out

 0Eh "NET_ERR_HOSTUNKNOWN" unable to resolve host name

 0Fh "NET_ERR_NOSERVERS" no name servers configured

 10h "NET_ERR_SERVER_ERR" bad reply from name server

Subcodes: 0= no error, 1 = Host unreachable

 11h "NET_ERR_BADFORMAT" bad format for IP address or field in IP address struc

is zero

 12h "NET_ERR_BADARG" invalid argument

 13h "NET_ERR_EOF" foreign host closed its end of connection

 14h "NET_ERR_RESET" connection has been reset

 15h "NET_ERR_WOULDBLOCK" recv() call was done on a non-blocking connection

with no data available

 16h "NET_ERR_UNBOUND" insufficient resources to do operation

 17h "NET_ERR_NODESC" could not allocate network descriptor

 18h "NET_ERR_BADSYSCALL" invalid/unsupported kernel call

 19h "NET_ERR_CANTBROADCAST" unable to broadcast

 1Ah "NET_ERR_NOTESTAB" operation illegal because connection not established

 1Bh kernel busy, try again later

 1Ch "NET_ERR_ICMPMESG" an ICMP message was received (not on streams)

(see subcodes below)

---v2.1+---

 1Dh "NET_ERR_TERMINATING" internal kernel fatal error

 1Eh "NET_ERR_TAG_LOCKED" not allowed to set this tag (net_config)

 1Fh "NET_ERR_BAD_INTERFACE" non existent interface specified

 20h "NET_ERR_BADCONFIG" kernel cannot run - bad configuration

 21h "NET_ERR_EMM" expanded memory error

 22h "NET_ERR_CANT_SHUTDOWN" cant unload kernel (multitasker running)

 23h "NET_ERR_PARKED_IN" unable to unhook DOS interrupt

 24h "NET_ERR_NOQIOS" ran out of resources; try again later

 25h "NET_ERR_WOULD_TRUNCATE" datagram too large and "don't truncate" was set

INT 61 ----


61 ---- Values for subcodes of PC/TCP error 0Ah "NET_ERR_HOST_UNREACHABLE":

Copy to Main

Table 1963

Values for subcodes of PC/TCP error 0Ah "NET_ERR_HOST_UNREACHABLE":

 00h	no error

 01h	host unreachable

 02h	ARP failed

 03h	hardware failure

 04h	link failure

 05h	no route

 06h	gateway down

INT 61 ----


61 ---- Values for subcodes of PC/TCP error 1Ch "NET_ERR_ICMPMESG":

Copy to Main

Table 1964

Values for subcodes of PC/TCP error 1Ch "NET_ERR_ICMPMESG":

 07h	unrecognised

 08h	can't fragment

 09h	srcr_fail

 0Ah	source quench

 0Bh	time exceeded

 0Ch	parameter problem

 0Dh	admin_prohib. see also code 0Ah

INT 61 ----


61 00-- Format of network debugging information:

Copy to Main

Table 1965

Format of network debugging information:

Offset	Size	Description

 00h	DWORD	number of interrupts

 04h	DWORD	receive buffer low-water mark

 08h	DWORD	transmit buffer low-water mark

 0Ch	DWORD	number of packets received

 10h	DWORD	number of packets transmitted

 14h	DWORD	total receive errors

 18h	DWORD	total transmit errors

 1Ch  4 BYTEs	???

 20h	DWORD	receive resets

 24h	DWORD	transmit resets

 28h	DWORD	number of "runts" received

 2Ch	DWORD	number of alignment errors on received packets

 30h	DWORD	number of CRC errors on received packets

 34h	DWORD	number of parity errors on received packets

 38h	DWORD	number of receive overflow errors

 3Ch	DWORD	number of oversized packets received

 40h	DWORD	number of packets lost due to lack of buffers

 44h	DWORD	receive timeouts

 48h 32 BYTEs	???

 68h	DWORD	number of transmit collisions

 6Ch	DWORD	number of transmit timeouts

 70h	DWORD	number of transmit underflows

 74h	DWORD	number of lost "crs" on transmit

 78h	DWORD	number of times heartbeat failed on transmit

 7Ch 24 BYTEs	???

 94h	WORD	free packet buffers

 96h	WORD	total packet buffers

 98h	WORD	minimum number of packet buffers free since kernel started

 9Ah 24 BYTEs	???

 B2h	DWORD	pointer to TCP connection list???

 B6h	DWORD	pointer to IP routing table???

 BAh 30 BYTEs	???

INT 61 00--


61 00-- Format of the BANV code segment (revision 5.53):

Copy to Main

Table 1966

Format of the BANV code segment (revision 5.53):

Offset	Size	Description

 00h 16	BYTEs	reserved

 10h 16	DWORDs	far pointers to the service handlers (0 = not installed)

 50h	DWORD	far pointer to last called service

 54h	WORD	VINES revision

 56h	DWORD	VINES revision long

 5Ah	WORD	VINES revision (lower bound)

 5Ch	DWORD	VINES revision (lower bound) long

 60h	WORD	VINES revision (upper bound)

 62h	DWORD	VINES revision (upper bound) long

 66h	WORD	end of PCCONFIG area

 68h	WORD	start of PCCONFIG area

 6Ah  4	BYTEs	BANV interrupt identifier ("BANV")

 6Eh  N	BYTEs	BANV interrupt service

SeeAlso: #1967

INT 61 00--


61 0001 Format of internal communications control block:

Copy to Main

Table 1967

Format of internal communications control block:

Offset	Size	Description

 00h	WORD	subfunction number

 02h	WORD	magic number (FEFEh)

 04h	WORD	(ret) result, should be set to 0 before calling

 06h	WORD	reserved (will be set to client DS)

 08h	WORD	caller's code segment if function 000Bh, 0 else

 0Ah	WORD	pointer to parameter block

 0Ch	WORD	reserved (segment of parameter block; will be set to client DS)

 0Eh	WORD	StreetTalk handle

SeeAlso: #1966,#2709h at INT 61/AX=000Fh

INT 61 0001


61 0001 Values for VINES status:

Copy to Main

Table 1968

Values for VINES status:

 0000h	successful

 0001h	service not installed

 0002h	invalid service ID

 0003h	invalid function

 0004h-000Ah reserved for BANV interface errors

 0097h	invalid socket identifier

 0098h	resource already in use

 009Bh	destination node unreachable

 009Ch	message overflow

 009Dh	destination socket nonexistent

 009Eh	address family does not exist

 009Fh	socket type does not exist

 00A0h	protocol does not exist

 00A1h	no more sockets available

 00A2h	no more buffer space available

 00A3h	timeout

 00A5h	resource not available

 00A6h	internal communication failure

 00B1h	resource disconnect

INT 61 0001


61 0001 Format of VINES control block to open socket:

Copy to Main

Table 1969

Format of VINES control block to open socket:

Offset	Size	Description

 00h	WORD	0001h

 02h	WORD	pointer to argument block

 04h	WORD	error return code

 06h  4 BYTEs	reserved

SeeAlso: #1970

INT 61 0001


61 0001 Format of VINES argument block for opening socket:

Copy to Main

Table 1970

Format of VINES argument block for opening socket:

Offset	Size	Description

 00h	WORD	pointer to 2-byte buffer for socket identifier

 02h	WORD	address family

0003h Banyan

 04h	WORD	socket type

in address family 0003h

    0001h IPC socket

    0002h SPP socket

 06h	WORD	protocol number

FFFFh default

 08h	WORD	pointer to 16-byte buffer for socket address (see #1971)

 0Ah	WORD	local port number

0000h if service should assign transient port number

0001h to 01FFh well-known port number (assigned by Banyan)

SeeAlso: #1969

INT 61 0001


61 0001 Format of Banyan VINES IPC port:

Copy to Main

Table 1971

Format of Banyan VINES IPC port:

Offset	Size	Description

 00h	WORD	address family (always 0003h for Banyan ports)

 04h  4 BYTEs	network number (server's serial number)

 06h	WORD	subnet number  (0001h = server, 8000h-FFFEh = PC)

 08h	WORD	port ID (0001h-01FFh for "well-known" ports)

 0Ah	BYTE	hop count

 0Bh  5 BYTEs	filler

SeeAlso: #1976

INT 61 0001


61 0001 Format of VINES control block for subfunction 0002h:

Copy to Main

Table 1972

Format of VINES control block for subfunction 0002h:

Offset	Size	Description

 00h	WORD	0002h

 02h	WORD	pointer to argument block (see #1973)

 04h	WORD	error return code (0000h,0097h,00A2h,00A3h,00A5h,00A6h,00B1h)

(see #1968)

 06h  4 BYTEs	reserved

SeeAlso: #1977

INT 61 0001


61 0001 Format of VINES argument block for subfunction 0002h:

Copy to Main

Table 1973

Format of VINES argument block for subfunction 0002h:

Offset	Size	Description

 00h	WORD	routine metric

 02h	WORD	error return code

 04h	WORD	socket identifier

 06h	WORD	pointer to send buffer (see #1975)

 08h	WORD	length of send buffer

 0Ah	WORD	message request flags (see #1974)

 0Ch 16 BYTEs	socket address (see #1976)

 1Ch	WORD	timeout value in multiples of 200ms

 1Eh	WORD	connection identifier

 20h	WORD	type of request

0001h send message

0002h establish a virtual connection

0003h terminate a virtual connection

SeeAlso: #1972,#1978

INT 61 0001


61 0001 Bitfields for message request flags:

Copy to Main

Table 1974

Bitfields for message request flags:

Bit(s)	Description

 0	async request

 1	reliable message

 2	flush receive buffer on overflow

 3	end of user message received

 4	vectored request (if set, send buffer contains buffer descriptors)

 5	connection-specific receive

 6	change to connection-specific receive mode

SeeAlso: #1973,#1978

INT 61 0001


61 0001 Format of buffer descriptor:

Copy to Main

Table 1975

Format of buffer descriptor:

Offset	Size	Description

 00h	WORD	data segment

 02h	WORD	buffer pointer

 04h	WORD	buffer length

 06h	WORD	character count

SeeAlso: #1973

INT 61 0001


61 0001 Format of VINES socket address for unreliable datagrams:

Copy to Main

Table 1976

Format of VINES socket address for unreliable datagrams:

Offset	Size	Description

 00h	WORD	0003h	  address family

 02h	DWORD	FFFFFFFFh network number

 06h	WORD	FFFFh	  subnet number

 08h	WORD	  local port number

 0Ah	BYTE	00h-0Fh	  hop count

 0Bh  5 BYTEs	0000h	  filler

SeeAlso: #1971

INT 61 0001


61 0001 Format of VINES control block for subfunction 0003h:

Copy to Main

Table 1977

Format of VINES control block for subfunction 0003h:

Offset	Size	Description

 00h	WORD	0003h

 02h	WORD	pointer to argument block (see #1978)

 04h	WORD	error return code (0000h,0097h,00A2h,00A3h,00A5h,00A6h,00B1h)

(see #1968)

 06h  4 BYTEs	reserved

SeeAlso: #1972,#1978,#1980

INT 61 0001


61 0001 Format of VINES argument block for subfunction 0003h:

Copy to Main

Table 1978

Format of VINES argument block for subfunction 0003h:

Offset	Size	Description

 00h	WORD	character count

 02h	WORD	error return code

 04h	WORD	socket identifier

 06h	WORD	pointer to receive buffer (see #1979)

 08h	WORD	length of receive buffer

 0Ah	WORD	message request flags (see #1974)

 0Ch 16 BYTEs	socket address (see #1971)

 1Ch	WORD	timeout value in multiples of 200ms

 1Eh	WORD	connection identifier

 20h	WORD	type of response

0001h message received

0002h virtual connection established

0003h virtual connection terminated

SeeAlso: #1977,#1981

INT 61 0001


61 0001 Format of buffer descriptor:

Copy to Main

Table 1979

Format of buffer descriptor:

Offset	Size	Description

 00h	WORD	data segment

 02h	WORD	buffer pointer

 04h	WORD	buffer length

 06h	WORD	character count

SeeAlso: #1978

INT 61 0001


61 0001 Format of VINES control block to close socket:

Copy to Main

Table 1980

Format of VINES control block to close socket:

Offset	Size	Description

 00h	WORD	0004h

 02h	WORD	pointer to argument block (see #1981)

 04h	WORD	error return code (see #1968)

 06h  4 BYTEs	reserved

SeeAlso: #1977,#1983

INT 61 0001


61 0001 Format of VINES argument block for closing socket:

Copy to Main

Table 1981

Format of VINES argument block for closing socket:

Offset	Size	Description

 00h	WORD	socket identifier

SeeAlso: #1978,#1980,#1984

INT 61 0001


61 0001 Values for VINES function status:

Copy to Main

Table 1982

Values for VINES function status:

 0000h	successful

 0001h	service not installed

 0002h	invalid service ID

 0003h-000Ah reserved for BANV interface errors

 00A2h	no more buffer space available

 00A3h	timeout event

INT 61 0001


61 0001 Format of VINES control block for subfunction 0005h:

Copy to Main

Table 1983

Format of VINES control block for subfunction 0005h:

Offset	Size	Description

 00h	WORD	0005h

 02h	WORD	pointer to argument block (see #1984)

 04h	WORD	error return code

 06h  4 BYTEs	reserved

SeeAlso: #1980,#1985

INT 61 0001


61 0001 Format of VINES argument block for subfunction 0005h:

Copy to Main

Table 1984

Format of VINES argument block for subfunction 0005h:

Offset	Size	Description

 00h	WORD	pointer to WORD event pointer

 02h	WORD	timeout in multiples of 200ms, FFFFh = infinite

SeeAlso: #1981,#1983

INT 61 0001


61 0001 Format of VINES control block for subfunction 0006h:

Copy to Main

Table 1985

Format of VINES control block for subfunction 0006h:

Offset	Size	Description

 00h	WORD	0008h

 02h	WORD	process type

0001h transient process

0002h resident process

 04h	WORD	error return code

 06h  4 BYTEs	reserved

SeeAlso: #1983,#1986

INT 61 0001


61 0001 Format of VINES control block for subfunction 000Bh:

Copy to Main

Table 1986

Format of VINES control block for subfunction 000Bh:

Offset	Size	Description

 00h	WORD	000Bh

 02h	WORD	pointer to argument block (see #1987)

 04h	WORD	error return code (see #1968)

 06h  2 BYTEs	reserved

 08h	WORD	user CS register

SeeAlso: #1985

INT 61 0001


61 0001 Format of VINES argument block for subfunction 000Bh:

Copy to Main

Table 1987

Format of VINES argument block for subfunction 000Bh:

Offset	Size	Description

 00h	WORD	pointer to user interrupt function (see #1988)

 02h	WORD	pointer to user stack

 04h	WORD	initial timeout value in multiples of 200ms, FFFFh = infinite

SeeAlso: #1987

INT 61 0001


61 0001 Values FAR user function is invoked with:

Copy to Main

Table 1988

Values FAR user function is invoked with:

SS = DS = ES = segment of control block

STACK:	DWORD	return address

WORD	argument pointer (sosend or sorec argument block)

WORD	error return code

0000h argument pointer is valid

00A3h timeout

INT 61 0001


61 0002 Values for VINES 3270 interface function number:

Copy to Main

Table 1989

Values for VINES 3270 interface function number:

 00h "pi2reset"	 reset 3270/SNA or 3270/BSC driver

 02h "pi2bsc"	 (3270/BSC only)

 03h "pi2get"	 get information stored in 3270 resident driver

 04h "pi2put"	 store information in 3270 resident driver

 05h "pi2gcur"	 get current screen position

 07h "pi2sdat"	 send data keystroke

 08h "pi2scom"	 send command keystroke

 0Ah "pi2field"	 get field info for arbitrary screen positions

 0Fh "pi2stat"	 get logical unit/device status

 12h "pi2nlus"	 determine logical unit/device assignment

 13h "pi2gate"	 specifies comm port address to gateway service

 14h "pi2attach" attach a logical unit/device

 15h "pi2sdev"	 save logical unit/device info in resident driver

(not supported in >3.0)

 16h "pi2gdev"	 get device information (not supported in >3.0)

 17h "pi2luinfo" get info about specific logical unit/device

 18h "pi2gerr"	 get finer error detail

 19h "pi2dhold"	 (3270/SNA only)  holds a 3270 device

 1Ah "pi2shut"	 release memory-resident module

 1Ch "pi2sprof"	 save profile info in res driver (not supp in >3.0)

 1Dh "pi2gprof"	 get prevsly stored profile info (not supp in >3.0)

INT 61 0002


61 0002 Values for VINES 3270 status:

Copy to Main

Table 1990

Values for VINES 3270 status:

 0000h	successful

 000Bh	invalid parameter or data does not fit data area

 000Ch	another code path currently active in resident driver

 000Dh	operation currently not allowed

 0032h	encountered connection disconnect error

 0033h	encountered "sosend" completion error

 0034h	encountered "sosend" communication error

 0035h	attach request refused.	extended error info via "pi2gerr":

01h resource unavailable

02h invalid type

03h version mismatch

04h invalid logical unit number

05h error during ARL processing

06h no access for user

 0071h	encountered "sosock" error

 0072h	encountered unrecognizable error

 0073h	encountered "sowait" error (extended info via "pi2gerr")

 0074h	encountered invalid type-of-request on "sowait"

 0075h	encountered "sorec" error (extended info via "pi2gerr")

 0076h	encountered "sorec" completion error (ext info via "pi2gerr")

 0077h	encountered connection request

 0078h	encountered unrecognizable data

 0079h	encountered unknown connection ID (ext info via "pi2gerr")

SeeAlso: #1968

INT 61 0002


61 0002 Format of argument block for BH=03h,04h:

Copy to Main

Table 1991

Format of argument block for BH=03h,04h:

Offset	Size	Description

 00h	WORD	size of data area (max 256)

 02h  N BYTEs	data area

SeeAlso: #1992,#1993,#1994

INT 61 0002


61 0002 Format of argument block for BH=05h:

Copy to Main

Table 1992

Format of argument block for BH=05h:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	pointer to WORD buffer for cursor index

 04h	WORD	pointer to BYTE buffer for current field attribute

SeeAlso: #1991,#1993,#1994

INT 61 0002


61 0002 Format of argument block for BH=07h:

Copy to Main

Table 1993

Format of argument block for BH=07h:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	ASCII data byte

 04h	WORD	pointer to WORD count of characters which will need updating

SeeAlso: #1991,#1992,#1994

INT 61 0002


61 0002 Format of argument block for BH=08h:

Copy to Main

Table 1994

Format of argument block for BH=08h:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	3270 keystroke (see #1995)

SeeAlso: #1991,#1992,#1993,#1996

INT 61 0002


61 0002 Values for 3270 keystroke:

Copy to Main

Table 1995

Values for 3270 keystroke:

 0000h	Enter

 0001h	Clear

 0002h	PA1

 0003h	PA2

 0004h	PA3

 0005h	PF1

 ...

 001Ch	PF24

 001Dh	CSELECT (cursor select)

 001Eh	Insert

 001Fh	Delete

 0020h	EOField

 0021h	EINPUT (erase input)

 0022h	Reset

 0023h	Attention

 0024h	SysReq

 0025h	Duplicate

 0026h	Fieldmark

 0027h	Home

 0028h	NextLine

 0029h	Tab

 002Ah	BackTab

 002Bh	cursor up

 002Ch	cursor down

 002Dh	cursor right

 002Eh	cursor left

 002Fh	double cursor right

 0030h	double cursor left

 0031h	PRINT

 0032h	CANCEL

 0033h	Backspace

INT 61 0002


61 0002 Format of argument block for BH=0Ah:

Copy to Main

Table 1996

Format of argument block for BH=0Ah:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	screen index

 04h	WORD	pointer to WORD buffer for field length

 06h	WORD	pointer to WORD buffer for offset in screen of field start

SeeAlso: #1994,#1997

INT 61 0002


61 0002 Format of argument block for BH=0Fh:

Copy to Main

Table 1997

Format of argument block for BH=0Fh:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	clear mask (clear these bits of status after returning status)

 04h	WORD	pointer to WORD buffer for device status (see #1998)

SeeAlso: #1996,#1999

INT 61 0002


61 0002 Bitfields for Banyan 3270 device status:

Copy to Main

Table 1998

Bitfields for Banyan 3270 device status:

Bit(s)	Description

 10	status modified

 9	buffer modified

 8	set cursor

 5	sound alarm

 1-0	size of print line for printer logical units

00  unformatted line

01  40-character line

10  64-character line

11  80-character line

INT 61 0002


61 0002 Format of argument block for BH=12h:

Copy to Main

Table 1999

Format of argument block for BH=12h:

Offset	Size	Description

 00h	WORD	pointer to WORD buffer for number of logical units or devices

 02h	WORD	pointer to WORD buffer for version number

 04h	WORD	pointer to 64-byte buffer for logical unit/device list

SeeAlso: #1997,#2000

INT 61 0002


61 0002 Format of argument block for BH=13h:

Copy to Main

Table 2000

Format of argument block for BH=13h:

Offset	Size	Description

 00h 16 BYTEs	communications port address (see #1971)

SeeAlso: #1999,#2001

INT 61 0002


61 0002 Format of argument block for BH=14h:

Copy to Main

Table 2001

Format of argument block for BH=14h:

Offset	Size	Description

 00h	WORD	logical unit/device number

0000h attach any free device of the specified type

 02h	WORD	logical unit/device type

(3270/SNA) 01h, 02h, or 03h

(3270/BSC) 02h display

(3270/BSC) 03h printer

 04h	WORD	pointer to WORD buffer for attached logical unit/device number

SeeAlso: #2000,#2002

INT 61 0002


61 0002 Format of argument block for BH=16h:

Copy to Main

Table 2002

Format of argument block for BH=16h:

Offset	Size	Description

 00h	WORD	pointer to 18-byte buffer for device block (see #2007)

first WORD must be set to desired logical unit/device number

SeeAlso: #2001,#2003

INT 61 0002


61 0002 Format of argument block for BH=17h:

Copy to Main

Table 2003

Format of argument block for BH=17h:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	pointer to information block in caller's DS (see #2008)

SeeAlso: #2002,#2004

INT 61 0002


61 0002 Format of argument block for BH=18h:

Copy to Main

Table 2004

Format of argument block for BH=18h:

Offset	Size	Description

 00h	WORD	pointer to WORD buffer for major error code

 02h	WORD	pointer to WORD buffer for minor error code

SeeAlso: #2003,#2005

INT 61 0002


61 0002 Format of argument block for BH=19h:

Copy to Main

Table 2005

Format of argument block for BH=19h:

Offset	Size	Description

 00h	WORD	logical unit/device number

SeeAlso: #2004,#2006

INT 61 0002


61 0002 Format of argument block for BH=1Ch,1Dh:

Copy to Main

Table 2006

Format of argument block for BH=1Ch,1Dh:

Offset	Size	Description

 00h	WORD	pointer to profile block in caller's DS (see #2011)

SeeAlso: #1991,#2005

INT 61 0002


61 0002 Format of device block, argument block for BH=15h:

Copy to Main

Table 2007

Format of device block, argument block for BH=15h:

Offset	Size	Description

 00h	WORD	logical unit/device number

 02h	WORD	logical unit/device type

 04h	WORD	display model number

 06h	WORD	numeric checking

 08h	WORD	status line

 0Ah	BYTE	unprotected normal field attribute

 0Bh	BYTE	unprotected intensified field attribute

 0Ch	BYTE	protected normal field attribute

 0Dh	BYTE	protected intensified field attribute

 0Eh	WORD	reserved

 10h	WORD	printer port number

INT 61 0002


61 0002 Format of information block:

Copy to Main

Table 2008

Format of information block:

Offset	Size	Description

 00h	WORD	device model number

 02h	DWORD	screen buffer pointer

 06h	DWORD	status line pointer (see #2009)

 0Ah	DWORD	reserved

INT 61 0002


61 0002 Format of Banyan VINES 3270 status line:

Copy to Main

Table 2009

Format of Banyan VINES 3270 status line:

Offset	Size	Description

 00h	BYTE	comm line status

00h inactive

01h active

 01h	BYTE	activation level

01h physical unit activated

02h logical unit also activated

03h session is bound

 02h	BYTE	data traffic state

00h inactive

01h active

 03h	BYTE	screen ownership

00h SLU->PLU session owns screen

01h SLU->SSCP session owns screen

 04h	BYTE	keyboard status (see #2010)

 05h	BYTE	insert mode

01h if in insert mode

 06h	BYTE	numeric

01h if current screen buffer is numeric only

 07h	BYTE	printer status

00h printer not assigned

01h printer is inactive

02h printer error

03h currently printing

04h printer is busy

05h printer is very busy

 08h	BYTE	printer assignment

 09h	BYTE	maximum size of network name

 0Ah  N BYTEs	ASCIZ network name

BYTE	maximum size of message window

      M BYTEs	null-terminated message window

BYTE	code set

00h EBCDIC

01h ASCII

      M BYTEs	extended attributes

01h extended attributes are in effect (stored at screen+1920)

    each extended attribute specifies

    bits 0,1: 00=normal, 01=blink, 10=reverse, 11=underscor

    bits 2-4: 000=default,001=blue,010=red,011=pink,

      100=green,101=turquoise,110=yellow,111=white

BYTE	extended color

01h other than base color is in effect

INT 61 0002


61 0002 Values for Banyan VINES 3270 keyboard status:

Copy to Main

Table 2010

Values for Banyan VINES 3270 keyboard status:

 00h	UNLOCK - ready to accept data

 01h	TIME - aid was struck

 02h	SYSTEM - received response no restore

 03h	FUNCTION - unavailable keyboard function

 04h	INPUT - not currently used

 05h	ENDFIELD - field filled in insert mode

 06h	PROTECTED - attempt to enter in protected field

 07h	NUMERIC - attempt to enter in numeric field

 08h	PROGRAM - error in outbound data stream

INT 61 0002


61 0002 Format of Banyan VINES 3270 profile block:

Copy to Main

Table 2011

Format of Banyan VINES 3270 profile block:

Offset	Size	Description

 00h 64 BYTEs	gateway service name

 40h 16 BYTEs	gateway comm port address

 50h	WORD	primary logical unit number

 52h	WORD	secondary logical unit type

 54h	WORD	secondary logical unit number

 56h	WORD	printer assignment

 58h 50 BYTEs	keyboard definitions filename

INT 61 0002


61 0003 Values for VINES function status:

Copy to Main

Table 2012

Values for VINES function status:

 0000h	successful

 000Bh	invalid session ID

 000Ch	session not active

 000Dh	invalid request type

 000Eh	invalid parameters

 000Fh	out of heap space

 0010h	timeout on send

 0011h	Banyan communications error

 0012h	session not waiting for host

 0013h	session is active

 0014h	duplicate suspend session request

 0015h	no session suspended

 0016h	ring data buffer full

 0017h	printer error encountered

 0018h	Banyan communications error

 0019h	unable to make connection

 001Ah	no ring buffer specified at startup

 001Bh	service is down

 001Ch	invalid service name

 001Dh	service is closed

 001Eh	invalid connection name

 001Fh	max session limit reached for service

 0020h	access rights list for connection/dialout does not include this user

 0021h	service not responding

 0022h	missing telephone number

SeeAlso: #1968,#2016

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2013

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	00h (func "initialize user buffer pointer information area")

 02h	WORD	-> user buffer ptr info area in caller's current DS (see #2014)

INT 61 0003


61 0003 Format of user buffer ptr info area:

Copy to Main

Table 2014

Format of user buffer ptr info area:

Offset	Size	Description

 00h	WORD	flags

0000h don't read interface's data buffer

0001h read data buffer

 02h	DWORD	pointer to ring buffer

 06h	WORD	length of ring buffer

 08h	WORD	ring buffer offset to last byte read by caller

 0Ah	DWORD	pointer to WORD containing offset of last byte

  in ring buffer filled

 0Eh	DWORD	pointer to screen buffer

 12h	DWORD	pointer to field containing cursor position

 16h	DWORD	pointer to terminal status area (see #2015)

INT 61 0003


61 0003 Format of VINES terminal status area:

Copy to Main

Table 2015

Format of VINES terminal status area:

Offset	Size	Description

 00h	BYTE	status of session: 4Eh=oNline, 46h=oFfline, 57h=Waiting

 01h	BYTE	terminal type (00h=VT100, 01h=TTY, 02h=VT52, 03h=IBM3101)

 02h	BYTE	current keypad mode (VT100,VT52 only)

4Eh ("N") numeric mode

41h ("A") application mode

 03h  4 BYTEs	current state of LEDs (VT100 only)

00h off

01h on

 07h	WORD	line error count

 09h	WORD	primary error code (see #2016)

 0Bh	WORD	secondary error code

INT 61 0003


61 0003 Values for VINES primary error code:

Copy to Main

Table 2016

Values for VINES primary error code:

 0000h	no error

 0001h	unable to make connection

 0002h	communications error, restart session

 0003h	async terminal emulation service unavailable

 0004h	lost carrier

 0005h	all matching lines busy

 0006h	no lines defined for connection name

 0007h	no dial lines available on server

 0008h	no matching dial lines available

 0009h	out of heap space

 000Ah	service error encountered

 000Bh	timed out waiting to connect

 000Ch	communications error

 000Dh	communications error

 000Eh	host wants file transferred to/from PC

 000Fh	host software changed session parameter

 0010h	host software changed tap settings

 0011h	host software changed LED indicator

 0012h	host software changed display background (secondary error code 00h for

  white on black, 01h for black on white)

 0013h	host software changed display option (secondary error code 00h for off,

  01h for on)

 0014h	communications error

 0015h	communications error

 0016h	unable to make connection

 0017h	unable to make connection

SeeAlso: #2012

INT 61 0003


61 0003 Format of VINES argument block for Function 0003h subfunction 01h:

Copy to Main

Table 2017

Format of VINES argument block for Function 0003h subfunction 01h:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	01h (function "send to host")

 02h	BYTE	type

00h ASCII byte

01h ASCII string

02h terminal function code

03h up arrow

04h down arrow

05h left arrow

06h right arrow

07h break

 03h  N BYTEs	type-specific info (see #2018)

INT 61 0003


61 0003 Format of type-specific info:

Copy to Main

Table 2018

Format of type-specific info:

Offset	Size	Description

---ASCII byte---

 03h	BYTE	byte to send to host

---ASCII string---

 03h	WORD	length of string

 05h	WORD	pointer to string

---terminal function code (VT52/VT100)---

 03h	BYTE	function code

00h keypad 0

01h keypad 1

...

09h keypad 9

0Ah keypad -

0Bh keypad ,

0Ch keypad .

0Dh keypad ENTER

0Eh PF1

0Fh PF2

10h PF3

11h PF4

---terminal function code (IBM3101)---

 03h	BYTE	function code

00h PF1

...

07h PF8

08h Home

SeeAlso: #2017

INT 61 0003


61 0003 Format of VINES argument block for Function 0003h subfunction 02h:

Copy to Main

Table 2019

Format of VINES argument block for Function 0003h subfunction 02h:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	02h (function "control monitor")

 02h	BYTE	display flag

00h don't display data received from host

01h display data

INT 61 0003


61 0003 Format of VINES argument block for Function 0003h subfunction 03h:

Copy to Main

Table 2020

Format of VINES argument block for Function 0003h subfunction 03h:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	03h (function "flow control data")

 02h	BYTE	flow control flag

00h allow characters to be put into display or ring buffer

01h don't place any more characters into display or ring buffer

INT 61 0003


61 0003 Format of VINES argument block for ending active session:

Copy to Main

Table 2021

Format of VINES argument block for ending active session:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	04h (function "end active session")

INT 61 0003


61 0003 Format of VINES argument block for setting session parameters:

Copy to Main

Table 2022

Format of VINES argument block for setting session parameters:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	05h (function "set session parameter")

 02h	BYTE	parameter number (see #2023)

 03h	BYTE	new parameter value

INT 61 0003


61 0003 Values for parameter number:

Copy to Main

Table 2023

Values for parameter number:

 00h	line speed (00h=any, 01h=50, 02h=110, 03h=134.5, 04h=150,

  05h=300, 06h=600, 07h=1200, 08h=2400, 09h=4800, 0Ah=9600)

 01h	parity (00h=none, 01h=odd, 02h=even)

 02h	duplex (00h=full, 01h=half)

 03h	character size (00h=7 bits, 01h=8 bits)

 04h	stop bits (00h=1, 01h=2)

 05h	XON/XOFF flow control (00h=no, 01h=yes)

 07h	intercharacter delay in tenths of a second

 08h	interline delay in tenths of a second

 09h	auto linefeed (00h=no, 01h=yes)

 0Ah	filter control characters (00h=no, 01h=yes)

 0Bh	terminal type (00h=VT100,01h=glassTTY,02h=VT52,03h=IBM3101)

 0Ch	auto wrap (00h=no, 01h=yes)

 0Dh	cursor shape (00h=underscore, 01h=block)

 0Eh	character set (00h=UK, 01h=US ASCII)

 0Fh	printer port (00h=LPT1, 01h=LPT2, 02h=LPT3)

SeeAlso: #2022

INT 61 0003


61 0003 Format of VINES argument block for getting session parameters:

Copy to Main

Table 2024

Format of VINES argument block for getting session parameters:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	06h (function "get session parameter")

 02h	BYTE	parameter number (see #2023)

 03h	BYTE	(ret) current parameter value

INT 61 0003


61 0003 Format of VINES argument block for setting tab settings:

Copy to Main

Table 2025

Format of VINES argument block for setting tab settings:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	07h (function "set tab settings")

 02h	WORD	pointer to 80-byte buffer in caller's current DS

  each byte = 00h if no tab, 01h if tab at that position

INT 61 0003


61 0003 Format of VINES argument block for getting tab settings:

Copy to Main

Table 2026

Format of VINES argument block for getting tab settings:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	08h (function "get tab settings")

 02h	WORD	pointer to 80-byte buffer in caller's current DS

each byte set to 00h if no tab, 01h if tab at that position

INT 61 0003


61 0003 Format of VINES argument block for Function 0003h subfunction 09h:

Copy to Main

Table 2027

Format of VINES argument block for Function 0003h subfunction 09h:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	09h (function "refresh emulation screen")

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2028

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	0Ah (function "suspend session temporarily")

 02h	WORD	size of session information to be saved

 04h	WORD	pointer to buffer in caller's DS

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2029

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	0Bh (function "restore previously suspended session")

 02h	WORD	size of buffer into which session info is restored

 04h	WORD	pointer to buffer in caller's DS

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2030

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	0Ch (function "set state of scroll lock checking")

 02h	BYTE	check_scroll_lock flag

00h off

01h on (display of host data stopped while ScrollLock on)

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2031

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	0Dh (function "exit emulation")

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2032

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	0Eh (function "interrupt on character from host")

 02h	DWORD	pointer to routine to be called (0000h:0000h = don't call)

 06h	DWORD	stack pointer to use when call is made

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2033

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	0Fh (function "start a session")

 02h	WORD	pointer to information area in caller's current DS (see #2034)

INT 61 0003


61 0003 Format of VINES information area:

Copy to Main

Table 2034

Format of VINES information area:

Offset	Size	Description

 00h	WORD	length of service name

 02h	WORD	pointer to service name in caller's DS

 04h	BYTE	type of connection (00h=connection name, 01h=dialout)

 05h	WORD	length of connection name/telephone number

 07h	WORD	pointer to connection name/telephone number

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2035

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	10h (function "start/stop printing of data received from host")

 02h	WORD	print capture flag (00h=off, 01h=on)

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2036

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	11h (function "get file transfer parameters")

 02h	WORD	pointer to info area in caller's current DS (see #2037)

INT 61 0003


61 0003 Format of VINES info area:

Copy to Main

Table 2037

Format of VINES info area:

Offset	Size	Description

 00h	BYTE	protocol flag (00h none, 01h Kermit)

 01h	BYTE	direction flag (00h send, 01h receive)

 02h	BYTE	length of null-terminated PC filename

 03h	DWORD	pointer to null-terminated PC filename

 07h	BYTE	length of null-terminated host filename

 08h	DWORD	pointer to null-terminated host filename

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2038

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	12h (function "get connection information")

 02h	WORD	offset of buffer for connection information (see #2039)

INT 61 0003


61 0003 Format of VINES connection information:

Copy to Main

Table 2039

Format of VINES connection information:

Offset	Size	Description

 00h	WORD	length of service name (returned)

 02h	WORD	pointer to 64-byte buffer for service name

 04h	BYTE	type of connection

00h connection name

01h dialout

 05h	WORD	length of connection name/telephone number

 07h	WORD	pointer to 64-byte buffer for name/telno

 09h	BYTE	server line number being used (returned)

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2040

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	13h (function "start/stop tracing data traffic in session")

 02h	BYTE	trace flag (00h=off, 01h=on)

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2041

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	14h (function "interrupt on message from host")

 02h	DWORD	pointer to routine to be called (0000h:0000h = don't call)

 06h	DWORD	stack pointer to use when call is made

INT 61 0003


61 0003 Format of VINES argument block:

Copy to Main

Table 2042

Format of VINES argument block:

Offset	Size	Description

 00h	BYTE	session ID (00h)

 01h	BYTE	15h (function "reset error")

INT 61 0003


61 0004 Values for Banyan VINES file service control status code:

Copy to Main

Table 2043

Values for Banyan VINES file service control status code:

 0000h	successful

 0002h	file not found

 0003h	path not found

 000Fh	invalid drive

 0015h	drive not ready

 0033h	invalid request ID

 0034h	drive not connected

 0037h	drive number out of range

 0038h	drive number not available

 003Ah	invalid operation

 0055h	drive already connected

 0057h	invalid number of entries

INT 61 0004


61 0004 Format of Banyan VINES file service request block:

Copy to Main

Table 2044

Format of Banyan VINES file service request block:

Offset	Size	Description

 00h	WORD	request ID (1..28)

 02h  n BYTES	additional parameters and result buffer

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0001h request block:

Copy to Main

Table 2045

Format of VINES Function 0004h/Subfunction 0001h request block:

Offset	Size	Description

 00h	WORD	0001h

 02h	BYTE	drive number (0=default, 1=A, ...)

 03h 16	BYTEs	reserved

 13h 64	BYTEs	null-terminated file service name

 53h  5	BYTEs	reserved

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0002h request block:

Copy to Main

Table 2046

Format of VINES Function 0004h/Subfunction 0002h request block:

Offset	Size	Description

 00h	WORD	0002h

 02h	BYTE	drive number (0=default, 1=A, ...)

 03h 16	BYTEs	reserved

 13h 64	BYTEs	buffer for null-terminated file service name

 53h  5	BYTEs	reserved

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0003h request block:

Copy to Main

Table 2047

Format of VINES Function 0004h/Subfunction 0003h request block:

Offset	Size	Description

 00h	WORD	0003h

 02h	DWORD	buffer for drive map (bit0=A, bit1=B, ...)

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0004h request block:

Copy to Main

Table 2048

Format of VINES Function 0004h/Subfunction 0004h request block:

Offset	Size	Description

 00h	WORD	0004h

 02h 64	BYTE	null-terminated user name

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0005h request block:

Copy to Main

Table 2049

Format of VINES Function 0004h/Subfunction 0005h request block:

Offset	Size	Description

 00h	WORD	0005h (subfunction "Get User Name")

 02h 64	BYTE	buffer for null-terminated user name

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0006h request block:

Copy to Main

Table 2050

Format of VINES Function 0004h/Subfunction 0006h request block:

Offset	Size	Description

 00h	WORD	0006h (subfunction "Test Drive Connection")

 02h	BYTE	buffer for connection flag (1 = not connected, 2 = connected)

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0007h request block:

Copy to Main

Table 2051

Format of VINES Function 0004h/Subfunction 0007h request block:

Offset	Size	Description

 00h	WORD	0007h

 02h	BYTE	request ID (0..7) (see #2052)

 03h	WORD	buffer for pointer segment

 05h	WORD	buffer for pointer offset

SeeAlso: #2053,#2054

INT 61 0004


61 0004 Values for VINES pointer ID:

Copy to Main

Table 2052

Values for VINES pointer ID:

 00h	job file table ???

 01h	drive handle table

 02h	drive connection table

 03h	IPC port of drive Z:

 04h	end of drive connection table

 05h	???

 06h	???

 07h	redirector data segment (offset=0)

SeeAlso: #2051

INT 61 0004


61 0004 Format of VINES drive handle table:

Copy to Main

Table 2053

Format of VINES drive handle table:

Offset	Size	Description

 00h	BYTE	handle to default drive (0 = not connected)

 01h	BYTE	handle to drive A: (0 = not connected)

...

 1Ah	BYTE	handle to drive Z: (0 = not connected)

SeeAlso: #2054

INT 61 0004


61 0004 Format of VINES drive connection table:

Copy to Main

Table 2054

Format of VINES drive connection table:

Offset	Size	Description

 00h	WORD	file service type (?) (0001h if drive Z:, 0000h else)

 02h 16	BYTEs	IPC port (contains the server serial number)

 12h 46	BYTEs	???

 40h 64	BYTEs	null-terminated StreetTalk name of associated file service

 80h 64	BYTEs	null-terminated root directory (/ROOT: parameter of SETDRIVE)

SeeAlso: #2053

INT 61 0004


61 0004 Format of VINES request block for getting server serial number:

Copy to Main

Table 2055

Format of VINES request block for getting server serial number:

Offset	Size	Description

 00h	WORD	0008h

 02h	WORD	drive number (0=default, 1=A, ...)

 04h	DWORD	buffer for server serial number

 08h	WORD	buffer for server subnet number (always 0001h)

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0009h request block:

Copy to Main

Table 2056

Format of VINES Function 0004h/Subfunction 0009h request block:

Offset	Size	Description

 00h	WORD	0009h

 02h	WORD	parameter

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 000Bh request block:

Copy to Main

Table 2057

Format of VINES Function 0004h/Subfunction 000Bh request block:

Offset	Size	Description

 00h	WORD	000Bh

 02h	BYTE	drive number (0=default, 1=A, ...)

 03h	WORD	buffer for parameter

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 000Ch request block:

Copy to Main

Table 2058

Format of VINES Function 0004h/Subfunction 000Ch request block:

Offset	Size	Description

 00h	WORD	000Ch

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 000Eh request block:

Copy to Main

Table 2059

Format of VINES Function 0004h/Subfunction 000Eh request block:

Offset	Size	Description

 00h	WORD	000Eh (subfunction "Get Access Rights List")

 02h	BYTE	drive number (0=default, 1=A, ...)

 03h	BYTE	reserved

 04h	DWORD	pointer to path specification (drive letter ignored)

 08h	DWORD	pointer to ARL control block (see #2060)

 0Ch	WORD	buffer for number of ARL entries (1..5)

 0Eh	WORD	buffer for status (see #2061)

INT 61 0004


61 0004 Format of ARL control block:

Copy to Main

Table 2060

Format of ARL control block:

Offset	Size	Description

 00h 64	BYTEs	1st StreetTalk name (user, list, or service)

 40h	WORD	1st ARL

 42h 64	BYTEs	2nd StreetTalk name (user, list, or service)

 82h	WORD	2nd ARL

 84h 64	BYTEs	3rd StreetTalk name (user, list, or service)

 C4h	WORD	3rd ARL

 C6h 64	BYTEs	4th StreetTalk name (user, list, or service)

106h	WORD	4th ARL

108h 64	BYTEs	5th StreetTalk name (user, list, or service)

148h	WORD	5th ARL

INT 61 0004


61 0004 Values for VINES Get/Set Access Rights List status:

Copy to Main

Table 2061

Values for VINES Get/Set Access Rights List status:

 0000h	successful

 0002h	file not found

 0003h	path not found

 003Ah	invalid operation

 0057h	invalid number of entries

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 000Fh request block:

Copy to Main

Table 2062

Format of VINES Function 0004h/Subfunction 000Fh request block:

Offset	Size	Description

 00h	WORD	000Fh

 02h	BYTE	drive number (0=default, 1=A, ...)

 03h	BYTE	reserved

 04h	DWORD	pointer to path specification (drive letter ignored)

 08h	DWORD	pointer to ARL control block (see #2060)

 0Ch	WORD	number of ARL entries (1..5)

 0Eh	WORD	buffer for status (see #2061)

INT 61 0004


61 0004 Format of VINES Function 0004h/Subfunction 0010h request block:

Copy to Main

Table 2063

Format of VINES Function 0004h/Subfunction 0010h request block:

Offset	Size	Description

 00h	WORD	0010h

 02h	BYTE	drive number (0=default, 1=A, ...)

 03h	BYTE	reserved

 04h 64	BYTEs	???

 44h 16	BYTEs	IPC port (see #1971 at AX=0001h"Sosock")

INT 61 0004


61 0004 Format of request block:

Copy to Main

Table 2696

Format of request block:

Offset	Size	Description

 00h	WORD	0013h

 02h	WORD	variable index (0000h-001Fh) (see #2697)

 04h	WORD	buffer length (on exit set to # of bytes actually needed)

 06h	DWORD	far pointer to result buffer

SeeAlso: #2698

INT 61 0004


61 0004 Values for variable indices:

Copy to Main

Table 2697

Values for variable indices:

Index	Length	Description

 0000h	   1	???

 0001h	  16	StreetTalk port

 0002h	   4	StreetTalk session handle

 0003h	   6	colors

 0004h	  64	StreetTalk name of currently logged in user

 0005h	   0	old clear text password (not applicable)

 0006h	   0	default group (not applicable)

 0007h	   1	number of messages in message queue

 0008h	   1	message flag

 0009h	  16	TalkPort

 000Ah	   2	TalkPort socket

 000Bh	  64	StreetTalk name of mail service

 000Ch	   2	message timeout

 000Dh	   2	next message place

 000Eh	 246	message queue (3 times 80 characters + 2 flag bytes)

 000Fh	  14	system nonce

 0010h	   2	failed login count

 0011h	   1	new mail message received

 0012h	   8	mail service capabilities

 0013h	   3	printer port diverted

 0014h	  32	international location

 0015h	  16	IPC port of drive Z:

 0016h	1024	pointer to current directory table

 0017h	   2	maximum number of file volume mappings

 0018h	  24	routine to call back for messages (6 far pointers)

 0019h	   4	current virtual machine

 001Ah	  20	DOS redirector message bell tones

 001Bh	   2	various flags used for internal communication

 001Ch	   0	OS/2 client configuration (not applicable)

 001Dh	   8	redirector/IFS file version

 001Eh	   0	reserved (not applicable)

 001Fh	   4	address of VVINESD.386 dispatch

INT 61 0004


61 0004 Format of request block:

Copy to Main

Table 2698

Format of request block:

Offset	Size	Description

 00h	WORD	0014h

 02h	WORD	variable index (0000h-001Fh) (see #2697)

 04h	WORD	number of bytes to copy

 06h	DWORD	far pointer to new value

SeeAlso: #2696

INT 61 0004


61 0004 Format of request block:

Copy to Main

Table 2699

Format of request block:

Offset	Size	Description

 00h	WORD	0016h

 02h	BYTE	drive number (0=default, 1=A:, ...)

 03h	BYTE	reserved

 04h	WORD	buffer for open file count

SeeAlso: #2701

INT 61 0004


61 0004 Format of request block:

Copy to Main

Table 2700

Format of request block:

Offset	Size	Description

 00h	WORD	0018h

SeeAlso: #2701

INT 61 0004


61 0004 Format of request block:

Copy to Main

Table 2701

Format of request block:

Offset	Size	Description

 00h	WORD	001Bh

 02h	BYTE	drive number (0=default, 1=A:, ...)

 03h	BYTE	???

 04h	WORD	???

 06h	DWORD	far pointer to data area

 0Ah	WORD	???

 0Ch	DWORD	far pointer to data area

 10h	WORD	buffer for result

SeeAlso: #2699,#2701

INT 61 0004


61 0004 Format of request block:

Copy to Main

Table 2702

Format of request block:

Offset	Size	Description

 00h	WORD	001Ch

 02h	WORD	???

 04h	WORD	???

 06h	WORD	???

 08h	WORD	???

 0Ah	DWORD	far pointer to data area (14 bytes)

INT 61 0004


61 0005 Format of VINES request block for printer control:

Copy to Main

Table 2064

Format of VINES request block for printer control:

Offset	Size	Description

 00h	WORD	function

0201h "endspool" all data for a print job has been sent

0205h "getactive" get currently active printer port

0207h ??? purpose unknown; called periodically every second

 02h	WORD	number of active port (1-3)

 04h	WORD	??? (0 for func 0201h, 3 for func 0205h)

 06h	WORD	0000h

INT 61 0005


61 0005 Format of Optima 1024 window parameters:

Copy to Main

Table 2065

Format of Optima 1024 window parameters:

Offset	Size	Description

 00h	WORD	X start of zoom window

 02h	WORD	Y start of zoom window

 04h	WORD	X end of zoom window

 06h	WORD	Y end of zoom window

 08h	WORD	current zoom factor

 0Ah	WORD	zoom offset start X

 0Ch	WORD	zoom offset start Y

INT 61 0005


61 0006 Format of Optima 1024 zoom window description:

Copy to Main

Table 2066

Format of Optima 1024 zoom window description:

Offset	Size	Description

 00h	WORD	X start of zoom window

 02h	WORD	Y start of zoom window

 04h	WORD	X end of zoom window

 06h	WORD	Y end of zoom window

INT 61 0006


61 0006 Values for request IDs:

Copy to Main

Table 2067

Values for request IDs:

Request	Length	Description

 0000h	   1	???

 0001h	  16	StreetTalk port

 0002h	   4	StreetTalk session handle

 0003h	   6	colors

 0004h	  64	StreetTalk name of currently logged in user

 0005h	   0	old clear text password (always returns error code 000Bh)

 0006h	   0	default group (not applicable)

 0007h	   1	message queue count

 0008h	   1	message flag

 0009h	  16	TalkPort

 000Ah	   2	TalkPort socket

 000Bh	  64	StreetTalk name of mail service

 000Ch	   2	message timeout

 000Dh	   2	next message place

 000Eh	 246	message queue

 000Fh	  14	system nonce

 0010h	   2	failed login count

 0011h	   1	new mail message received

 0012h	   8	mail capabilities

 0013h	   3	printer port diverted

 0014h	  32	international location

 0015h	  16	IPC port of drive Z:

 0016h	1024	pointer to current directory table

 0017h	   2	maximum number of file volume mappings

 0018h	  24	routine to call back for messages

 0019h	   4	current virtual machine

 001Ah	  20	DOS redirector message bell tones

 001Bh	   2	various flags used for internal communication

 001Ch	   0	OS/2 client configuration (always returns error code 000Bh)

 001Dh	   8	redirector/IFS file version

 001Eh	   0	reserved (always returns error code 000Bh)

 001Fh	   4	address of VVINESD.386 dispatch

INT 61 0006


61 0007 Values for VINES function status:

Copy to Main

Table 2068

Values for VINES function status:

 0000h	successful

 0001h	requested handler not installed or incompatible

 000Bh	service busy

 000Ch	invalid request ID

 03E9h	incorrect name syntax

 03EAh	organization name too long

 03EBh	group name too long

 03ECh	item name too long

 03EDh	StreetTalk name too long

 03F3h	organization not found

 03F4h	group not found

 03F5h	StreetTalk name not found

 03F8h	not a StreetTalk name

 0409h	modify access denied

 040Dh	appropriate StreetTalk name unavailable

 0411h	all matching names have been returned

 0412h	some groups unavailable, all available matches returned

INT 61 0007


61 0007 Format of VINES port record block:

Copy to Main

Table 2069

Format of VINES port record block:

Offset	Size	Description

 00h	WORD	(call) number of 17-byte elements (01h-05h) to be filled

 02h	BYTE	(call) port type for first port

 03h 16 BYTEs	(ret) port (see #1971)

 13h	BYTE	(call) port type for second port

 14h 16 BYTEs	(ret) port (see #1971)

 24h	BYTE	(call) port type for third port

 25h 16 BYTEs	(ret) port (see #1971)

 35h	BYTE	(call) port type for fourth port

 36h 16 BYTEs	(ret) port (see #1971)

 46h	BYTE	(call) port type for fifth port

 47h 16 BYTEs	(ret) port (see #1971)

 57h	BYTE	reserved

SeeAlso: #2071

INT 61 0007


61 0007 Format of port control block:

Copy to Main

Table 2070

Format of port control block:

Offset	Size	Description

 00h	WORD	???

 02h	WORD	???

 04h 16	BYTEs	IPC port (see #1971 at AX=0001h"Sosock")

 14h  5	WORDs	???

SeeAlso: #2076

INT 61 0007


61 0007 Format of VINES port record block:

Copy to Main

Table 2071

Format of VINES port record block:

Offset	Size	Description

 00h	WORD	number of 17-byte elements

 02h	BYTE	port type for first port

 03h 16 BYTEs	first IPC port (see #1971)

 13h	BYTE	port type for second port

 14h 16 BYTEs	second IPC port (see #1971)

 24h	BYTE	port type for third port

 25h 16 BYTEs	third IPC port (see #1971)

 35h	BYTE	port type for fourth port

 36h 16 BYTEs	fourth IPC port (see #1971)

 46h	BYTE	port type for fifth port

 47h 16 BYTEs	fifth IPC port (see #1971)

 57h	BYTE	reserved

SeeAlso: #2069

INT 61 0007


61 0007 Format of VINES NiceName block:

Copy to Main

Table 2072

Format of VINES NiceName block:

Offset	Size	Description

 00h	WORD	type of name

0064h (100) organization

00C8h (200) group

012Ch (300) item

 02h	WORD	pointer to ASCIZ input name

 04h	WORD	pointer to 64-byte buffer for output name

SeeAlso: #2073

INT 61 0007


61 0007 Format of VINES enumerate block:

Copy to Main

Table 2073

Format of VINES enumerate block:

Offset	Size	Description

 00h	WORD	return code

 02h	WORD	pointer to pattern string

 04h	WORD	enumerate type

0064h (100) organization

00C8h (200) group

012Ch (300) item

 06h	WORD	enumerate class

0000h unspecified (return all matching items)

0001h user names

0002h service names

0003h list names

0004h nicknames

 08h	WORD	pointer to category criteria block (see #2074) or 0

 0Ah	WORD	pointer to array of 64-byte returned names

 0Ch	WORD	number of names returned

 0Eh  6 BYTEs	reserved for subsequent enumerated calls (set to zeros on first

  call)

SeeAlso: #2072

INT 61 0007


61 0007 Format of category criteria block:

Copy to Main

Table 2074

Format of category criteria block:

Offset	Size	Description

 00h	WORD	exclude flag

0000h return only items with the specified categories

0001h return all items except those with the given categories

 02h	WORD	number of categories (max 5, 0000h = match all categories)

 04h	WORD	category 1 value (see #2075)

 06h	WORD	category 2 value

 08h	WORD	category 3 value

 0Ah	WORD	category 4 value

 0Ch	WORD	category 5 value

SeeAlso: #2073

INT 61 0007


61 0007 Values for common VINES service categories:

Copy to Main

Table 2075

Values for common VINES service categories:

 0001h	server service

 0002h	file service

 0003h	print service

 0004h	mail service

 0005h	StreetTalk

 0006h	time service

 0007h	FTP service

 0008h	semaphore service

 0009h	3270/SNA service

 000Ah	terminal emulation service

 000Bh	asynchronous terminal service

 000Ch	NETBIOS service

 000Dh	PC-based service

 000Eh	BSC service

 000Fh	APPC service

 0010h	NM service

 0011h	VS service

 0012h	POP service

 0013h	AFP service

 0014h	VCS service

 0015h	EMS service

 0016h	LN service

 0017h	BS service

 0023h	RIPL service

 0064h	ADM service

SeeAlso: #2074

INT 61 0007


61 0007 Format of port control block:

Copy to Main

Table 2076

Format of port control block:

Offset	Size	Description

 00h	WORD	???

 02h	WORD	???

 04h 16	BYTEs	IPC port (see #1971 at AX=0001h"Sosock")

 14h 14 WORDs	???

SeeAlso: #2070

INT 61 0007


61 0008 Bitfields for VINES message display flags:

Copy to Main

Table 2077

Bitfields for VINES message display flags:

Bit(s)	Description

 0	message will remain on screen until user presses ^X

 1	ring bell after displaying message

 2	blink

INT 61 0008


61 0008 Format of VINES request block for 25-th line messages:

Copy to Main

Table 2078

Format of VINES request block for 25-th line messages:

Offset	Size	Description

 00h	DWORD	pointer to user-written message handler

 04h	DWORD	pointer to next request block (filled in by VINES)

 08h	DWORD	pointer to previous request block (filled in by VINES)

 0Ch	DWORD	pointer to message storage area (filled by VINES) (see #2079)

INT 61 0008


61 0008 Format of message storage area:

Copy to Main

Table 2079

Format of message storage area:

Offset	Size	Description

 00h 16 BYTEs	IPC port of message sender (see #1971)

 10h	BYTE	message flags

 11h	WORD	reserved

 13h	BYTE	length of message

 14h 80 BYTEs	message text

SeeAlso: #2078

INT 61 0008


61 000F Format of request block:

Copy to Main

Table 2709

Format of request block:

Offset	Size	Description

 00h	WORD	subfunction number (01h-16h)

 02h	WORD	magic number (FEFEh)

 04h	WORD	buffer for return code (set to 0 before calling)

 06h	WORD	reserved (will be set to client DS)

 08h	WORD	reserved (obviously not used; set to 0 before calling)

 0Ah	DWORD	far pointer to parameter block

 0Eh	WORD	StreetTalk handle

SeeAlso: #1967 at INT 61/AX=0001h

INT 61 000F


61 000F Format of request block:

Copy to Main

Table 2703

Format of request block:

Offset	Size	Description

 00h	WORD	0001h

 02h	WORD	magic number (FEFEh)

 04h	WORD	buffer for return code (set to 0 before calling)

 06h	WORD	reserved (will be set to client DS)

 08h	WORD	reserved (obviously not used; set to 0 before calling)

 0Ah	DWORD	far pointer to parameter block (see #2704)

 0Eh	WORD	process handle (see AX=000Fh/SF=0008h)

INT 61 000F


61 000F Format of parameter block:

Copy to Main

Table 2704

Format of parameter block:

Offset	Size	Description

 00h	WORD	reserved

 02h	WORD	address family (0003h = VINES)

 04h	WORD	socket type (0001h = IPC, 0002h = SPP)

 06h	WORD	protocol number (FFFFh = default protocol)

 08h	WORD	reserved

 0Ah	WORD	local port number (0 = transient, 1..1FFh = well-known port)

 0Ch	DWORD	far pointer to socket handle buffer (2 bytes)

 10h	DWORD	far pointer to IPC port buffer (16 bytes)

SeeAlso: #2703

INT 61 000F


61 000F Format of request block:

Copy to Main

Table 2705

Format of request block:

Offset	Size	Description

 00h	WORD	0002h

 02h	WORD	magic number (FEFEh)

 04h	WORD	buffer for return code (set to 0 before calling)

 06h	WORD	reserved (will be set to client DS)

 08h	WORD	reserved (obviously not used; set to 0 before calling)

 0Ah	DWORD	far pointer to parameter block (see #2706)

 0Eh	WORD	process handle (see AX=000Fh/SF=0008h)

INT 61 000F


61 000F Format of parameter block:

Copy to Main

Table 2706

Format of parameter block:

Offset	Size	Description

 00h	WORD	buffer for estimated communication cost in 220 msec ticks

 02h	WORD	buffer for return code (set to 0 before calling)

 04h	WORD	socket handle

 06h	DWORD	far pointer to IPC/SPP message buffer

 0Ah	WORD	length of IPC/SPP message buffer

 0Ch	WORD	option flags

bit 0: asynchronous communication

bit 1: reliable message

bit 3: end of message

bit 4: vectored I/O

 0Eh 16	BYTEs	socket address (IPC port of source)

 1Eh	WORD	not used (set to 0 before calling)

 20h	WORD	SPP connection id (0 for IPC messages)

 22h	WORD	request type (1 = data, 2 = connect SPP, 3 = disconnect SPP)

SeeAlso: #2705

INT 61 000F


61 000F Format of request block:

Copy to Main

Table 2707

Format of request block:

Offset	Size	Description

 00h	WORD	0004h

 02h	WORD	magic number (FEFEh)

 04h	WORD	buffer for return code (set to 0 before calling)

 06h	WORD	reserved (will be set to client DS)

 08h	WORD	reserved (obviously not used; set to 0 before calling)

 0Ah	DWORD	far pointer to socket handle (2 bytes)

 0Eh	WORD	process handle (see AX=000Fh/SF=0008h)

INT 61 000F


61 000F Format of request block:

Copy to Main

Table 2708

Format of request block:

Offset	Size	Description

 00h	WORD	0008h

 02h	WORD	magic number (FEFEh)

 04h	WORD	buffer for return code (set to 0 before calling)

 06h	WORD	reserved

 08h	WORD	reserved (obviously not used; set to 0 before calling)

 0Ah	DWORD	process type (1 = transient, 2 = resident; destroyed on exit)

 0Eh	WORD	buffer for process handle

INT 61 000F


61 01-- Values for VINES service ID:

Copy to Main

Table 2080

Values for VINES service ID:

 01h	communications

 02h	primary 3270 emulation

 03h	async terminal emulation

 04h	file deflection

 05h	print service control

 06h	get address of something

 07h	StreetTalk access service

 08h	environment

 09h	NETBIOS client service

 0Ah	secondary 3270 emulation

 0Bh	semaphore service

 0Ch	3270 emulation active status

 0Dh	T3270 keyboard interrupt simulator

 0Eh	enhanced 3270 service

 0Fh	comm Windows entry point

 10h	interface to NBNS

INT 61 01--


61 05-- Format of PCCONFIG area (VINES 4.00):

Copy to Main

Table 2081

Format of PCCONFIG area (VINES 4.00):

Offset	Size	Description

 00h  6	BYTEs	VINES revision (ASCII, zero-padded)

 06h  2	BYTEs	NEWREV-number (ASCII, two digits)

 08h	WORD	hardware interrupt level

 0Ah	WORD	DMA channel

 0Ch	WORD	I/O address

 0Eh	DWORD	adapter ROM address (linear)

 12h	DWORD	adapter RAM address (linear)

 16h	WORD	BANV interrupt

 18h 32	BYTEs	default login group #1

 38h 32	BYTEs	default login group #2

 58h 32	BYTEs	default login group #3

 78h	WORD	semaphore locking support flag

 7Ah	WORD	extended StreetTalk flag

 7Ch	WORD	maximum number of file volumes

 7Eh	WORD	NetBIOS flag

 80h 60	BYTEs	default network adapter

 BCh 60	BYTEs	default communications driver

 F8h	WORD	maximum number of SPP connections

 FAh	WORD	maximum number of open sockets

 FCh	WORD	communications buffer size (10..60 KB)

 FEh 20	BYTEs	location directory on drive Z:

112h 33	BYTEs	auxiliary configuration area #1 (see #2083)

133h 33	BYTEs	auxiliary configuration area #2

154h 33	BYTEs	auxiliary configuration area #3

SeeAlso: #2082

INT 61 05--


61 05-- Format of PCCONFIG area (VINES 4.10+):

Copy to Main

Table 2082

Format of PCCONFIG area (VINES 4.10+):

Offset	Size	Description

 00h  6	BYTEs	VINES revision (ASCII, zero-padded)

 06h  2	BYTEs	NEWREV-number (ASCII, two digits)

 08h	WORD	hardware interrupt level

 0Ah	WORD	DMA channel

 0Ch	WORD	I/O address

 0Eh	DWORD	adapter ROM address (linear)

 12h	DWORD	adapter RAM address (linear)

 16h	WORD	BANV interrupt

 18h 32	BYTEs	default login group #1

 38h 32	BYTEs	default login group #2

 58h 32	BYTEs	default login group #3

 78h	WORD	semaphore locking support flag

 7Ah	WORD	extended StreetTalk flag

 7Ch	WORD	named pipes support flag

 7Eh	WORD	maximum number of file volumes

 80h	WORD	NetBIOS flag

 82h 60	BYTEs	default network adapter

 BEh 60	BYTEs	default communications driver

 FAh	WORD	maximum number of SPP connections

 FCh	WORD	maximum number of open sockets

 FEh	WORD	communications buffer size (10..60 KB)

100h	WORD	number of mailslots

102h	WORD	maximum number of open files

104h	WORD	maximum number of NetBIOS sessions

106h	WORD	maximum number of NetBIOS commands

108h 20	BYTEs	location directory on drive Z:

11Ch 33	BYTEs	auxiliary configuration area #1 (see #2083)

13Dh 33	BYTEs	auxiliary configuration area #2

15Eh 33	BYTEs	auxiliary configuration area #3

INT 61 05--


61 05-- Format of auxiliary configuration area:

Copy to Main

Table 2083

Format of auxiliary configuration area:

Offset	Size	Description

 00h 16	BYTEs	item name (no zero terminator if length = 16)

 10h	BYTE	item value type (1=text, else numeric)

 11h 16	BYTEs	item value (string if type 1, else DWORD)

SeeAlso: #2081,#2082

INT 61 05--


61 06-- Format of PC/TCP interface statistics:

Copy to Main

Table 2084

Format of PC/TCP interface statistics:

Offset	Size	Description

 00h	WORD	interface class (e.g. 802.3)

 02h	WORD	type (manufacturer) of interface

 04h	WORD	interface number

 06h	DWORD	(big-endian) IP address of interface

 0Ah	DWORD	subnet mask

 0Eh	WORD	0001h if interface is up

 10h	DWORD	total packets received

 14h	DWORD	total packets sent

 18h	DWORD	receive errors

 1Ch	DWORD	send errors

 20h	WORD	length of local net address (e.g. 0006h for Ethernet)

 22h	DWORD	pointer to local net address

INT 61 06--


61 0C-- Format of PC/TCP kernel TCP statistics:

Copy to Main

Table 2085

Format of PC/TCP kernel TCP statistics:

Offset	Size	Description

 00h 16 BYTEs	unused

 10h	DWORD	bytes sent

 14h	DWORD	bytes received

 18h  8 BYTEs	unused

 20h	DWORD	packets sent

 24h	DWORD	packets received

 28h	DWORD	bad checksums

 2Ch	DWORD	count of window ignored by remote

 30h	DWORD	timeouts

 34h	DWORD	resets

 38h	DWORD	duplicate packets

 3Ch	DWORD	retransmits

SeeAlso: #2086,#2087,#2088

INT 61 0C--


61 0C-- Format of PC/TCP kernel IP statistics:

Copy to Main

Table 2086

Format of PC/TCP kernel IP statistics:

Offset	Size	Description

 00h  8 BYTEs	unused

 08h	DWORD	invalid IP header length errors

 0Ch	DWORD	protocol errors (unwanted packets)

 10h	DWORD	duplicate fragments received

 14h	DWORD	bad fragments received

 18h	DWORD	security errors

 1Ch	DWORD	count of bad IP addresses received

 20h	DWORD	packets sent

 24h	DWORD	packets received

 28h	DWORD	bad checksums received

 2Ch	DWORD	total IP protocol errors

 30h	DWORD	fragmentation errors

 34h	DWORD	IP packets discarded + bad security + bad fragments

 38h	DWORD	fragments received

 3Ch  4 BYTEs	unused

SeeAlso: #2085,#2087,#2088

INT 61 0C--


61 0C-- Format of PC/TCP kernel UDP statistics:

Copy to Main

Table 2087

Format of PC/TCP kernel UDP statistics:

Offset	Size	Description

 00h 28 BYTEs	unused

 1Ch	DWORD	packets dropped for lack of buffers

 20h	DWORD	packets sent

 24h	DWORD	packets received

 28h	DWORD	bad checksums

 2Ch	DWORD	port not listening errors

 30h  4 BYTEs	unused

 34h	DWORD	truncated receives

 38h  8 BYTEs	unused

SeeAlso: #2085,#2086,#2088

INT 61 0C--


61 0C-- Format of PC/TCP kernel ICMP statistics:

Copy to Main

Table 2088

Format of PC/TCP kernel ICMP statistics:

Offset	Size	Description

 00h	DWORD	"TimeEx" sent

 04h	DWORD	"TimeEx" received

 08h	DWORD	"ParamProb" sent

 0Ch	DWORD	"ParamProb" received

 10h	DWORD	redirects received

 14h	DWORD	source quenches received

 18h	DWORD	ICMP Echo Requests ("ping") sent

 1Ch	DWORD	ICMP Echo Requests received

 20h	DWORD	packets sent

 24h	DWORD	packets received

 28h	DWORD	bad packets received

 2Ch	DWORD	"DestUn" received

 30h	DWORD	packet send errors

 34h	DWORD	"DestUn" sent

 38h	DWORD	ICMP Echo replies received

 3Ch	DWORD	ICMP Echo replies sent

SeeAlso: #2085,#2086,#2087

INT 61 0C--


61 13-- Values for PC/TCP protocol:

Copy to Main

Table 2089

Values for PC/TCP protocol:

 0001h	raw net (undocumented)

 0002h	raw IP

 0003h	datagram (UDP)

 0004h	stream (TCP)

 0005h	raw ICMP

INT 61 13--


61 13-- Format of structure "addr":

Copy to Main

Table 2090

Format of structure "addr":

Offset	Size	Description

 00h	DWORD	Internet address (network order)

 04h	WORD	remote socket number (network order)

 06h	WORD	local socket number (network order) 0000h means "you choose"

 08h	BYTE	protocol (see #2089)

INT 61 13--


61 1A-- Bitfields for PC/TCP send options:

Copy to Main

Table 2091

Bitfields for PC/TCP send options:

Bit(s)	Description

 0	signal "URG"ent data

 3	attempt rerouting on non-stream calls if first attempt fails

 4	send data with PUSH flag (no override of Nagle) (see option 0Ch)

 5	fail rather than truncating datagram

 6	fail rather than blocking

 7	broadcast packet

INT 61 1A--


61 1B-- Bitfields for PC/TCP receive options:

Copy to Main

Table 2092

Bitfields for PC/TCP receive options:

Bit(s)	Description

 1	do not remove data from queue, just copy it

 2	do not copy data, just remove it from queue

 5	fail if datagram would be truncated

 6	do not block, return error if no data available

Note:	special case for UDP: if both 1 and 2 set, return number of datagrams

INT 61 1B--


61 1F-- Values for PC/TCP event type:

Copy to Main

Table 2093

Values for PC/TCP event type:

 00h	alarm

 01h	open (successfully opened stream connection)

 02h	receive (data available)

 03h	transmit (ACK received on stream connection)

 04h	transmit flush???

 05h	foreign close (remote host closed data connection)

 06h	close (local host closed connection and protocol is complete)

 07h	error (error code passed to handler as arg)

INT 61 1F--


61 1F-- Values PC/TCP user event handler is called with:

Copy to Main

Table 2094

Values PC/TCP user event handler is called with:

BX = network descriptor

CX = event type (see #2093)

DS:DX -> arg

ES:DI = 32-bit hint value

STACK:	small stack, possibly the DOS stack

INT 61 1F--


61 20-- Values for PC/TCP option to get or set:

Copy to Main

Table 2095

Values for PC/TCP option to get or set:

 01h	set non-blocking mode if non-zero

 02h	timeout of call in milliseconds

 03h	user-defined 4-byte magic cookie (not used by kernel)

 04h	TCP window or UDP buffer count (WORD, unsigned)

 06h	do TCP keep-alives if non-zero

 09h	(v2.1+) set IP precedence

 0Ah	(v2.1+) set IP type of service

 0Bh	use a privileged port if port = 0

 0Ch	turn off TCP PUSH bit and don't flush buffer every write (see AH=1Ah)

Note:	use "C" true or false values for boolean options

INT 61 20--


61 2A-- Format of PC/TCP configuration information:

Copy to Main

Table 2096

Format of PC/TCP configuration information:

Offset	Size	Description

 00h	BYTE	maximum TCP connections available

 01h	BYTE	maximum UDP connections available

 02h	BYTE	maximum IP connections available

 03h	BYTE	maximum Raw Net connections available

 04h	BYTE	number of TCP connections currently in use

 05h	BYTE	number of UDP connections currently in use

 06h	BYTE	number of IP connections currently in use

 07h	BYTE	number of Raw Net connections currently in use

 08h	WORD	number of local network descriptors active

 0Ah	WORD	number of global network descriptors active

 0Ch	BYTE	maximum header size on network

 0Dh	BYTE	maximum trailer size on network

 0Eh	WORD	size of large packet buffer

 10h	WORD	number of network interfaces attached

 12h	DWORD	milliseconds since kernel started

 16h	DWORD	IP broadcast address

INT 61 2A--


62 0000 Values for FGDRIVER status:

Copy to Main

Table 2097

Values for FGDRIVER status:

 0000h	successful

 0001h	specified page is a physical or logical page

 0007h	virtual page created/released, but memory control blocks corrupted

 0008h	not enough memory

 0009h	attempt to free a page which was never created

 FFFCh	insufficient memory

 FFFDh	page already created, or exists as physical or virtual page

 FFFEh	invalid page number

 FFFFh	memory manager not initialized

SeeAlso: #2667

INT 62 0000


62 0000 Values for FGDRIVER functions (by driver version):

Copy to Main

Table 2667

Values for FGDRIVER functions (by driver version):

Name	v1.10	v3.03	v4.02

 FG_ALLOCATE	0042h	0000h	0000h

 FG_ALLOCCMS	009Dh	0001h	0001h

 FG_ALLOCEMS	009Eh	0002h	0002h

 FG_ALLOCXMS	009Fh	0003h	0003h

 FG_AUTOMODE	0004h	0004h	0004h

 FG_BESTMODE	0003h	0005h	0005h

 FG_BOX	00A2h	0006h	0006h

 FG_BOXDEPTH	00A3h	0007h	0007h

 FG_BOXX	 --	0008h	0008h

 FG_BUTTON	0078h	0009h	0009h

 FG_CAPSLOCK	0070h	000Ah	000Ah

 FG_CHGATTR	0035h	000Bh	000Bh

 FG_CHGTEXT	0036h	000Ch	000Ch

 FG_CIRCLE	0030h	000Dh	000Dh

 FG_CIRCLEF	 --	000Eh	000Eh

 FG_CLIPMAP	 --	 --	000Fh

 FG_CLIPMASK	0052h	000Fh	0010h

 FG_CLPIMAGE	004Ah	0010h	0011h

 FG_CLPRECT	002Bh	0011h	0012h

 FG_COLORS	 --	 --	0013h

 FG_COPYPAGE	005Fh	0012h	0014h

 FG_CURSOR	0007h	0013h	0015h

 FG_DASH	0027h	0014h	0016h

 FG_DASHREL	0028h	0015h	0017h

 FG_DEFCOLOR	0014h	0016h	0018h

 FG_DEFPAGES	 --	0017h	0019h

 FG_DISPFILE	004Fh	0018h	001Ah

 FG_DISPLAY	004Dh	0019h	001Bh

 FG_DISPLAYP	004Eh	001Ah	001Ch

 FG_DISPPCX	0060h	 --	 --

 FG_DRAW	0025h	001Bh	001Dh

 FG_DRAWMAP	0047h	001Ch	001Eh

 FG_DRAWMASK	0051h	001Dh	001Fh

 FG_DRAWREL	0026h	001Eh	0020h

 FG_DRAWRELX	 --	001Fh	0021h

 FG_DRAWX	 --	0020h	0022h

 FG_DRECT	002Ch	0021h	0023h

 FG_DRWIMAGE	0049h	0022h	0024h

 FG_EGACHECK	0005h	0023h	0025h

 FG_ELLIPSE	002Dh	0024h	0026h

 FG_ELLIPSEF	 --	0025h	0027h

 FG_ERASE	001Eh	0026h	0028h

 FG_FADEIN	0064h	0027h	0029h

 FG_FADEOUT	0065h	0028h	002Ah

 FG_FILLPAGE	 --	0029h	002Bh

 FG_FINDPAGE	 --	 --	002Ch

 FG_FLICDONE	 --	 --	002Dh

 FG_FLICHEAD	 --	 --	002Eh

 FG_FLICMODE	 --	 --	002Fh

 FG_FLICOPEN	 --	 --	0030h

 FG_FLICPLAY	 --	 --	0031h

 FG_FLICSIZE	 --	 --	0032h

 FG_FLICSKIP	 --	 --	0033h

 FG_FLIPMASK	0054h	002Ah	0034h

 FG_FLOOD	 --	002Bh	0035h

 FG_FLPIMAGE	004Ch	002Ch	0036h

 FG_FONTSIZE	 --	002Dh	0037h

 FG_FREEPAGE	0043h	002Eh	0038h

 FG_GETADDR	0044h	002Fh	0039h

 FG_GETATTR	0037h	0030h	003Ah

 FG_GETBANKS	 --	 --	003Bh

 FG_GETBLOCK	 --	0031h	003Ch

 FG_GETCHAR	0038h	0032h	003Dh

 FG_GETCLIP	 --	 --	003Eh

 FG_GETCLOCK	0099h	0033h	003Fh

 FG_GETCOLOR	0015h	0034h	0040h

 FG_GETDACS	00A4h	0035h	0041h

 FG_GETENTRY	 --	0036h	0042h

 FG_GETHPAGE	0040h	0037h	0043h

 FG_GETIMAGE	0048h	0038h	0044h

 FG_GETINDEX	0016h	0039h	0045h

 FG_GETKEY	006Eh	003Ah	0046h

 FG_GETLINES	0010h	003Bh	0047h

 FG_GETMAP	0046h	003Ch	0048h

 FG_GETMAXX	000Ah	003Dh	0049h

 FG_GETMAXY	000Bh	003Eh	004Ah

 FG_GETMODE	0000h	003Fh	004Bh

 FG_GETPAGE	003Ch	0040h	004Ch

 FG_GETPIXEL	0020h	0041h	004Dh

 FG_GETRGB	001Ch	0042h	004Eh

 FG_GETVIEW	 --	 --	004Fh

 FG_GETVPAGE	003Eh	0043h	0050h

 FG_GETXBOX	 --	 --	0051h

 FG_GETXJOY	0076h	0044h	0052h

 FG_GETXJUST	 --	 --	0053h

 FG_GETXPOS	0021h	0045h	0054h

 FG_GETYBOX	 --	 --	0055h

 FG_GETYJOY	0077h	0046h	0056h

 FG_GETYJUST	 --	 --	0057h

 FG_GETYPOS	0022h	0047h	0058h

 FG_HUSH	008Eh	0048h	0059h

 FG_HUSHNEXT	008Fh	0049h	005Ah

 FG_IMAGEBUF	 --	004Ah	005Bh

 FG_IMAGESIZ	0062h	004Bh	005Ch

 FG_INITEMS	00A0h	004Ch	005Dh

 FG_INITJOY	0075h	004Dh	005Eh

 FG_INITPM	 --	 --	005Fh??? (NOP in v4.02)

 FG_INITXMS	00A1h	004Eh	0060h

 FG_INSIDE	 --	004Fh	0061h

 FG_INTJOY	0079h	0050h	0062h

 FG_INTKEY	006Fh	0051h	0063h

 FG_INVERT	 --	 --	0064h

 FG_JUSTIFY	 --	0052h	0065h

 FG_KBINIT	 --	0053h	0066h

 FG_KBLAST	 --	 --	0067h

 FG_KBRESET	 --	 --	0068h

 FG_KBTEST	 --	0054h	0069h

 FG_LOADPCX	 --	 --	006Ah

 FG_LOCATE	0033h	0055h	006Bh

 FG_MAKEPCX	0061h	0057h	006Ch

 FG_MAKEPPR	 --	0058h	006Dh

 FG_MAKESPR	 --	0059h	006Eh

 FG_MAPRGB	001Dh	005Ah	006Fh

 FG_MEASURE	0098h	005Bh	0070h

 FG_MEMAVAIL	009Bh	005Ch	0071h

 FG_MEMORY	 --	005Dh	0072h

 FG_MOUSE256	 --	 --	0073h

 FG_MOUSEBUT	007Ch	005Eh	0074h

 FG_MOUSECUR	007Eh	005Fh	0075h

 FG_MOUSEFIN	 --	0060h	0076h

 FG_MOUSEINI	007Ah	0061h	0077h

 FG_MOUSELIM	0080h	0062h	0078h

 FG_MOUSEMOV	0081h	0063h	0079h

 FG_MOUSEPOS	007Dh	0064h	007Ah

 FG_MOUSEPTR	007Fh	0065h	007Bh

 FG_MOUSESPD	0082h	0066h	007Ch

 FG_MOUSEVIS	007Bh	0067h	007Dh

 FG_MOVE	0023h	0068h	007Eh

 FG_MOVEREL	0024h	0069h	007Fh

 FG_MUSIC	008Ch	006Ah	0080h

 FG_MUSICB	008Dh	006Bh	0081h

 FG_NUMLOCK	0072h	006Ch	0082h

 FG_PACK	 --	 --	0083h

 FG_PAGESIZE	 --	006Dh	0084h

 FG_PAINT	002Fh	006Eh	0085h

 FG_PALETTE	0017h	006Fh	0086h

 FG_PALETTES	0018h	0070h	0087h

 FG_PAN	0066h	0071h	0088h

 FG_PATTERN	0050h	0072h	0089h

 FG_PCXHEAD	 --	0073h	008Ah

 FG_PCXMODE	 --	0074h	008Bh

 FG_PCXPAL	 --	 --	008Ch

 FG_PCXRANGE	 --	 --	008Dh

 FG_PLAYING	0091h	0075h	008Eh

 FG_POINT	001Fh	0076h	008Fh

 FG_POINTX	 --	0077h	0090h

 FG_POLYEDGE	 --	 --	0091h

 FG_POLYFILL	 --	0078h	0092h

 FG_POLYGON	002Eh	0079h	0093h

 FG_POLYLINE	 --	007Ah	0094h

 FG_POLYOFF	 --	007Bh	0095h

 FG_PRINT	 --	007Ch	0096h

 FG_PRINTC	 --	 --	0097h

 FG_PUTBLOCK	 --	007Dh	0098h

 FG_PUTIMAGE	 --	007Eh	0099h

 FG_QUIET	0090h	007Fh	009Ah

 FG_RECT	002Ah	0080h	009Bh

 FG_RESET	0006h	0081h	009Ch

 FG_RESIZE	0045h	0082h	009Dh

 FG_RESTORE	005Bh	0083h	009Eh

 FG_RESUME	0092h	0084h	009Fh

 FG_REVIMAGE	004Bh	0085h	00A0h

 FG_REVMASK	0053h	0086h	00A1h

 FG_SAVE	 --	0087h	00A2h

 FG_SCALE	 --	 --	00A3h

 FG_SCRLOCK	0074h	0088h	00A4h

 FG_SCROLL	0067h	0089h	00A5h

 FG_SETATTR	0019h	008Ah	00A6h

 FG_SETBANKS	 --	 --	00A7h

 FG_SETCAPS	0071h	008Bh	00A8h

 FG_SETCLIP	0029h	008Ch	00A9h

 FG_SETCOLOR	001Ah	008Dh	00AAh

 FG_SETDACS	00A5h	008Eh	00ABh

 FG_SETENTRY	 --	008Fh	00ACh

 FG_SETFUNC	009Ch	0090h	00ADh

 FG_SETHPAGE	0041h	0091h	00AEh

 FG_SETLINES	0011h	0092h	00AFh

 FG_SETMODE	0001h	0093h	00B0h

 FG_SETNUM	0073h	0094h	00B1h

 FG_SETPAGE	003Dh	0095h	00B2h

 FG_SETRGB	001Bh	0096h	00B3h

 FG_SETVIEW	 --	 --	00B5h

 FG_SETVPAGE	003Fh	0098h	00B6h

 FG_SHEAR	 --	 --	00B7h

 FG_SHOWFLIC	 --	 --	00B8h

 FG_SHOWPCX	 --	009Ah	00B9h

 FG_SHOWPPR	 --	009Bh	00BAh

 FG_SHOWSPR	 --	009Ch	00BBh

 FG_SOUND	0088h	009Dh	00BCh

 FG_SOUNDS	0089h	009Eh	00BDh

 FG_SPLIT	 --	 --	00BEh

 FG_STALL	0097h	009Fh	00BFh

 FG_SUSPEND	0093h	00A0h	00C0h

 FG_SVGAINIT	 --	00A1h	00C1h

 FG_SVGASTAT	 --	00A2h	00C2h

 FG_SVGAVER	 --	00A3h	00C3h

 FG_TCDEFINE	 --	00A4h	00C4h

 FG_TCMASK	005Eh	00A5h	00C5h

 FG_TCXFER	005Dh	00A6h	00C6h

 FG_TESTMODE	0002h	00A7h	00C7h

 FG_TEXT	0032h	00A8h	00C8h

 FG_TEXTC	 --	 --	00C9h

 FG_TRANSFER	005Ch	00A9h	00CAh

 FG_UNPACK	 --	 --	00CBh

 FG_VBADDR	 --	 --	00CCh

 FG_VBALLOC	 --	 --	00CDh

 FG_VBCLOSE	 --	 --	00CEh

 FG_VBCOPY	 --	 --	00CFh

 FG_VBCUT	 --	 --	00D0h

 FG_VBDEFINE	 --	 --	00D1h

 FG_VBFREE	 --	 --	00D2h

 FG_VBHANDLE	 --	 --	00D3h

 FG_VBINIT	 --	 --	00D4h

 FG_VBOPEN	 --	 --	00D5h

 FG_VBPASTE	 --	 --	00D6h

 FG_VBTCCOPY	 --	 --	00D7h

 FG_VBTCXFER	 --	 --	00D8h

 FG_VBUNDEF	 --	 --	00D9h

 FG_VGASTATE	 --	 --	00DAh

 FG_VOICE	008Ah	00AAh	00DBh

 FG_VOICES	008Bh	00ABh	00DCh

 FG_WAITFOR	0096h	00ACh	00DDh

 FG_WAITKEY	006Dh	00ADh	00DEh

 FG_WAITVR	 --	00AEh	00DFh

 FG_WHERE	0034h	00AFh	00E0h

 FG_XALPHA	000Ch	00B0h	00E1h

 FG_XCONVERT	000Eh	00B1h	00E2h

 FG_XVIEW	 --	 --	00E3h

 FG_YALPHA	000Dh	00B2h	00E4h

 FG_YCONVERT	000Fh	00B3h	00E5h

 FG_YVIEW	 --	 --	00E6h

SeeAlso: #2097

INT 62 0000


62 001F Format of FGDRIVER masking map:

Copy to Main

Table 2098

Format of FGDRIVER masking map:

Offset	Size	Description

 00h	BYTE	length of first "protect" run (pixels remain unchanged)

 01h	BYTE	length of first "zero" run (pixels set to background color)

 02h	BYTE	length of second "protect" run

 03h	BYTE	length of second "zero" run

...

INT 62 001F


62 002E Values for FGDRIVER FLIC processing status:

Copy to Main

Table 2678

Values for FGDRIVER FLIC processing status:

 0000h	successful

 FFFEh	not an FLI or FLC file

 FFFFh	file not found

INT 62 002E


62 002E Format of FGDRIVER FLICHEAD variable pointer record:

Copy to Main

Table 2676

Format of FGDRIVER FLICHEAD variable pointer record:

Offset	Size	Description

 00h	WORD	segment of ASCIZ FLI/FLC file name

 02h	WORD	offset of ASCIZ FLI/FLC file name

 04h	WORD	segment of buffer for 128-byte file header

 06h	WORD	offset of buffer for 128-byte file header

INT 62 002E


62 0030 Format of FGDRIVER FLICOPEN variable pointer record:

Copy to Main

Table 2677

Format of FGDRIVER FLICOPEN variable pointer record:

Offset	Size	Description

 00h	WORD	segment of ASCIZ FLI/FLC file name

 02h	WORD	offset of ASCIZ FLI/FLC file name

 04h	WORD	segment of buffer for 16-byte file context descriptor

 06h	WORD	offset of buffer for 16-byte file context descriptor

INT 62 0030


62 0031 Bitfields for FGDRIVER FLI/FLC control flags:

Copy to Main

Table 2688

Bitfields for FGDRIVER FLI/FLC control flags:

Bit(s)	Description

 0	skip inter-frame delay specified in FLI/FLC header

 1	display relative to current graphics position

 2	dipslay image from the FG_IMAGEBUF buffer instead of file

INT 62 0031


62 0032 Format of FGDRIVER FLICSIZE variable pointer record:

Copy to Main

Table 2679

Format of FGDRIVER FLICSIZE variable pointer record:

Offset	Size	Description

 00h	WORD	segment of buffer for 128-byte FLI/FLC file header

 02h	WORD	offset of buffer for 128-byte FLI/FLC file header

 04h	WORD	segment of WORD buffer for image width in pixels

 06h	WORD	offset of WORD buffer for image width in pixels

 08h	WORD	segment of WORD buffer for image height in pixels

 0Ah	WORD	offset of WORD buffer for image height in pixels

INT 62 0032


62 003B Format of FGDRIVER GETBANKS variable pointer record:

Copy to Main

Table 2680

Format of FGDRIVER GETBANKS variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for read bank number

 02h	WORD	offset of WORD buffer for read bank number

 04h	WORD	segment of WORD buffer for write bank number

 06h	WORD	offset of WORD buffer for write bank number

INT 62 003B


62 003E Format of FGDRIVER GETCLIP variable pointer record:

Copy to Main

Table 2681

Format of FGDRIVER GETCLIP variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for minimum X coordinate (left edge)

 02h	WORD	offset of WORD buffer for minimum X coordinate (left edge)

 04h	WORD	segment of WORD buffer for maximum X coordinate (right edge)

 06h	WORD	offset of WORD buffer for maximum X coordinate (right edge)

 08h	WORD	segment of WORD buffer for minimum Y coordinate (top edge)

 0Ah	WORD	offset of WORD buffer for minimum Y coordinate (top edge)

 0Ch	WORD	segment of WORD buffer for maximum Y coordinate (bottom edge)

 0Eh	WORD	offset of WORD buffer for maximum Y coordinate (bottom edge)

INT 62 003E


62 0042 Format of FGDRIVER GETENTRY variable pointer record:

Copy to Main

Table 2099

Format of FGDRIVER GETENTRY variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for page address

 02h	WORD	offset of WORD buffer for page address

 04h	WORD	segment of WORD buffer for page type (se #2100)

 06h	WORD	offset of WORD buffer for page type

INT 62 0042


62 0042 Values for FGDRIVER page type:

Copy to Main

Table 2100

Values for FGDRIVER page type:

 0000h	unallocated

 0001h	physical

 0002h	virtual

 0003h	logical page, stored in expanded memory (EMS)

 0004h	logical page, stored in extended memory (XMS)

 0005h	logical page, stored in conventional memory

INT 62 0042


62 0046 Format of FGDRIVER GETKEY variable pointer record:

Copy to Main

Table 2101

Format of FGDRIVER GETKEY variable pointer record:

Offset	Size	Description

 00h	WORD	segment of BYTE buffer for ASCII keycode

 02h	WORD	offset of BYTE buffer for ASCII keycode

 04h	WORD	segment of BYTE buffer for extended keycode

 06h	WORD	offset of BYTE buffer for extended keycode

INT 62 0046


62 004E Format of FGDRIVER GETRGB variable pointer record:

Copy to Main

Table 2102

Format of FGDRIVER GETRGB variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for red component of DAC register

 02h	WORD	offset of WORD buffer for red component

 04h	WORD	segment of WORD buffer for green component of DAC register

 06h	WORD	offset of WORD buffer for green component

 08h	WORD	segment of WORD buffer for blue component of DAC register

 0Ah	WORD	offset of WORD buffer for blue component

INT 62 004E


62 004F Format of FGDRIVER GETVIEW variable pointer record:

Copy to Main

Table 2682

Format of FGDRIVER GETVIEW variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for viewport left edge (viewport units)

 02h	WORD	offset of WORD buffer for viewport left edge (viewport units)

 04h	WORD	segment of WORD buffer for viewport right edge (viewport units)

 06h	WORD	offset of WORD buffer for viewport right edge (viewport units)

 08h	WORD	segment of WORD buffer for viewport top edge (viewport units)

 0Ah	WORD	offset of WORD buffer for viewport top edge (viewport units)

 0Ch	WORD	segment of WORD buffer for viewport bottom edge (viewp. units)

 0Eh	WORD	offset of WORD buffer for viewport bottom edge (viewp. units)

 10h	WORD	segment of WORD buffer for viewport left edge (screen space)

 12h	WORD	offset of WORD buffer for viewport left edge (screen space)

 14h	WORD	segment of WORD buffer for viewport right edge (screen space)

 16h	WORD	offset of WORD buffer for viewport right edge (screen space)

 18h	WORD	segment of WORD buffer for viewport top edge (screen space)

 1Ah	WORD	offset of WORD buffer for viewport top edge (screen space)

 1Ch	WORD	segment of WORD buffer for viewport bottom edge (screen space)

 1Eh	WORD	offset of WORD buffer for viewport bottom edge (screen space)

INT 62 004F


62 0062 Format of FGDRIVER INTJOY variable pointer record:

Copy to Main

Table 2103

Format of FGDRIVER INTJOY variable pointer record:

Offset	Size	Description

 00h	WORD	segment of BYTE buffer for button code

 02h	WORD	offset of BYTE buffer for button code

 04h	WORD	segment of BYTE buffer for joystick position

 06h	WORD	offset of BYTE buffer for joystick position

INT 62 0062


62 0063 Format of FGDRIVER INTKEY variable pointer record:

Copy to Main

Table 2104

Format of FGDRIVER INTKEY variable pointer record:

Offset	Size	Description

 00h	WORD	segment of BYTE buffer for ASCII keycode

 02h	WORD	offset of BYTE buffer for ASCII keycode

 04h	WORD	segment of BYTE buffer for extended keycode

 06h	WORD	offset of BYTE buffer for extended keycode

INT 62 0063


62 0074 Format of FGDRIVER MOUSEBUT variable pointer record:

Copy to Main

Table 2105

Format of FGDRIVER MOUSEBUT variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for press/release count

 02h	WORD	offset of WORD buffer for press/release count

 04h	WORD	segment of WORD buffer for screen space col of last press/rls

 06h	WORD	offset of WORD buffer for screen space col of last press/rels

 08h	WORD	segment of WORD buffer for screen space row of last press/rls

 0Ah	WORD	offset of WORD buffer for screen space row of last press/rls

INT 62 0074


62 007A Format of FGDRIVER MOUSEPOS variable pointer record:

Copy to Main

Table 2106

Format of FGDRIVER MOUSEPOS variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for mouse column

 02h	WORD	offset of WORD buffer for mouse column

 04h	WORD	segment of WORD buffer for mouse row

 06h	WORD	offset of WORD buffer for mouse row

 08h	WORD	segment of WORD buffer for button status

 0Ah	WORD	offset of WORD buffer for button status

Note:	button status: bit 0 = left button, bit 1 = right, bit 2 = middle

INT 62 007A


62 0083 Format of FGDRIVER PACK variable pointer record:

Copy to Main

Table 2683

Format of FGDRIVER PACK variable pointer record:

Offset	Size	Description

 00h	WORD	segment of source (mode-independent) bitmap

 02h	WORD	offset of source (mode-independent) bitmap

 04h	WORD	segment of buffer for result (mode-specific) bitmap

 06h	WORD	offset of buffer for result (mode-specific) bitmap

INT 62 0083


62 008A Format of FGDRIVER PCXHEAD variable pointer record:

Copy to Main

Table 2107

Format of FGDRIVER PCXHEAD variable pointer record:

Offset	Size	Description

 00h	WORD	segment of ASCIZ filename

 02h	WORD	offset of ASCIZ filename

 04h	WORD	segment of 128-byte buffer for PCX header

 06h	WORD	offset of 128-byte buffer for PCX header

INT 62 008A


62 008C Format of FGDRIVER PCXPAL variable pointer record:

Copy to Main

Table 2684

Format of FGDRIVER PCXPAL variable pointer record:

Offset	Size	Description

 00h	WORD	segment of ASCIZ .PCX filename

 02h	WORD	offset of ASCIZ .PCX filename

 04h	WORD	segment of buffer for .PCX palette RGB triples

 06h	WORD	offset of buffer for .PCX palette RGB triples

Note:	the buffer for the palette must hold at least three times as many bytes

  as there are colors in the palette

SeeAlso: #2685

INT 62 008C


62 008D Format of FGDRIVER PCXRANGE variable pointer record:

Copy to Main

Table 2685

Format of FGDRIVER PCXRANGE variable pointer record:

Offset	Size	Description

 00h	WORD	segment of 128-byte PCX file header

 02h	WORD	offset of 128-byte PCX file header

 04h	WORD	segment of WORD buffer for X coordinate of image's left edge

 04h	WORD	offset of WORD buffer for X coordinate of image's left edge

 08h	WORD	segment of WORD buffer for X coordinate of image's right edge

 0Ah	WORD	offset of WORD buffer for X coordinate of image's right edge

 0Ch	WORD	segment of WORD buffer for Y coordinate of image's top edge

 0Eh	WORD	offset of WORD buffer for Y coordinate of image's top edge

 10h	WORD	segment of WORD buffer for X coordinate of image's bottom edge

 12h	WORD	offset of WORD buffer for X coordinate of image's bottom edge

SeeAlso: #2684

INT 62 008D


62 0092 Format of FGDRIVER POLYFILL variable pointer record:

Copy to Main

Table 2108

Format of FGDRIVER POLYFILL variable pointer record:

Offset	Size	Description

 00h	WORD	segment of vertex array (see #2110)

 02h	WORD	offset of vertex array

 04h	WORD	segment of work array

 06h	WORD	offset of work array

SeeAlso: #2109

INT 62 0092


62 0093 Format of FGDRIVER POLYGON variable pointer record:

Copy to Main

Table 2109

Format of FGDRIVER POLYGON variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD array containing vertex columns

 02h	WORD	offset of WORD array containing vertex columns

 04h	WORD	segment of WORD array containing vertex rows

 06h	WORD	offset of WORD array containing vertex rows

SeeAlso: #2108

INT 62 0093


62 0094 Format of FGDRIVER POLYFILL/POLYLINE vertex array element:

Copy to Main

Table 2110

Format of FGDRIVER POLYFILL/POLYLINE vertex array element:

Offset	Size	Description

 00h	WORD	column

 02h	WORD	row

SeeAlso: #2109

INT 62 0094


62 00A3 Format of FGDRIVER SCALE variable pointer record:

Copy to Main

Table 2622

Format of FGDRIVER SCALE variable pointer record:

Offset	Size	Description

 00h	WORD	segment of source bitmap (one pixel per byte)

 02h	WORD	offset of source bitmap

 04h	WORD	segment of buffer for resulting scaled bitmap

 06h	WORD	offset of buffer for resulting scaled bitmap

INT 62 00A3


62 00B0 Values for FGDRIVER video mode:

Copy to Main

Table 2111

Values for FGDRIVER video mode:

 00h-07h standard BIOS modes

 09h	PCjr/Tandy1000 320x200x16

 0Bh	Hercules graphics 720x348

 0Ch	Hercules graphics 320x200

 0Dh-13h standard BIOS modes

 14h	VGA graphics 320x200x256

 15h	VGA graphics 320x400x256

 16h	VGA graphics 320x240x256

 17h	VGA graphics 320x480x256

 18h	SVGA graphics 640x400x256

 19h	SVGA graphics 640x480x256

 1Ah	SVGA graphics 800x600x256

 1Bh	SVGA graphics 1024x768x256

 1Ch	SVGA graphics 800x600x16

 1Dh	SVGA graphics 1024x768x16

INT 62 00B0


62 00B5 Format of FGDRIVER SETVIEW variable record:

Copy to Main

Table 2686

Format of FGDRIVER SETVIEW variable record:

Offset	Size	Description

 00h	WORD	viewport's left edge in viewport units

 02h	WORD	viewport's right edge in viewport units

 04h	WORD	viewport's top edge in viewport units

 06h	WORD	viewport's bottom edge in viewport units

 08h	WORD	viewport's left edge in screen space

 0Ah	WORD	viewport's right edge in screen space

INT 62 00B5


62 00B7 Format of FGDRIVER SHEAR variable pointer record:

Copy to Main

Table 2687

Format of FGDRIVER SHEAR variable pointer record:

Offset	Size	Description

 00h	WORD	segment of source bitmap

 02h	WORD	offset of source bitmap

 04h	WORD	segment of buffer for resulting bitmap

 06h	WORD	offset of buffer for resulting bitmap

INT 62 00B7


62 00B9 Bitfields for FGDRIVER flags:

Copy to Main

Table 2112

Bitfields for FGDRIVER flags:

Bit(s)	Description

 0	use current palette rather than PCX file's palette

 1	display image at cursor position instead of position in PCX header

 2-15	reserved

INT 62 00B9


62 00BD Format of FGDRIVER sounds array element:

Copy to Main

Table 2113

Format of FGDRIVER sounds array element:

Offset	Size	Description

 00h	WORD	frequency of sound in Hertz (0000h ends array)

 02h	WORD	duration of sound in clock ticks

INT 62 00BD


62 00C1 Values for FGDRIVER SVGA method:

Copy to Main

Table 2114

Values for FGDRIVER SVGA method:

 0000h	autodetect, give chipset-specific code priority over VESA

 0001h	autodetect, give VESA priority over chipset-specific code

 0002h	Ahead type "A"

 0003h	Ahead type "B"

 0004h	ATI 18800

 0005h	ATI 18800-1

 0006h	ATI 28800

 0007h	Chips & Technologies 82c451/455/456

 0008h	C&T 82c452

 0009h	C&T 82c453

 000Ah	Genoa 6000 series

 000Bh	Oak OTI-067

 000Ch	Paradise PVGA1a

 000Dh	Paradise WD90C00/WD90C10

 000Eh	Paradise WD90C11/WD90C30/WD90C31

 000Fh	Trident 8800

 0010h	Trident 8900

 0011h	Tseng ET3000

 0012h	Tseng ET4000

 0013h	Video7

 0014h	Cirrus Logic 5400 series

 0015h	S3

 0016h	Trident 8900B/8900C/9000

INT 62 00C1


62 00C2 Bitfields for FGDRIVER chipset information:

Copy to Main

Table 2115

Bitfields for FGDRIVER chipset information:

Bit(s)	Description

 0	SVGA kernel initialized

 1	VESA support enabled

 2	extended video pages available in modes 13-23

 3	SVGA chipset has separate read and write banks

 4-15	reserved (0)

INT 62 00C2


62 00C3 Format of FGDRIVER variable pointer record:

Copy to Main

Table 2116

Format of FGDRIVER variable pointer record:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for major version

 02h	WORD	offset of WORD buffer for major version

 04h	WORD	segment of WORD buffer for minor version (hundredths)

 06h	WORD	offset of WORD buffer for minor version

INT 62 00C3


62 00CA Format of FGDRIVER copy record:

Copy to Main

Table 2117

Format of FGDRIVER copy record:

Offset	Size	Description

 00h	WORD	left edge column of source region

 02h	WORD	right edge column of source region

 04h	WORD	top edge row of source region

 06h	WORD	bottom edge row of source region

 08h	WORD	left edge of destination

 0Ah	WORD	bottom edge of destination

INT 62 00CA


62 00CB Format of FGDRIVER UNPACK variable pointer record:

Copy to Main

Table 2689

Format of FGDRIVER UNPACK variable pointer record:

Offset	Size	Description

 00h	WORD	segment of source bitmap

 02h	WORD	offset of source bitmap

 04h	WORD	segment of buffer for resulting bitmap

 06h	WORD	offset of buffer for resulting bitmap

INT 62 00CB


62 00CF Format of FGDRIVER VBCOPY variable record:

Copy to Main

Table 2690

Format of FGDRIVER VBCOPY variable record:

Offset	Size	Description

 00h	WORD	source region's left edge

 02h	WORD	source region's right edge

 04h	WORD	source region's top edge

 06h	WORD	source region's bottom edge

 08h	WORD	X coordinate of destination's upper left corner

 0Ah	WORD	Y coordinate of destination's upper left corner

INT 62 00CF


62 00D7 Format of FGDRIVER VBTCCOPY variable record:

Copy to Main

Table 2691

Format of FGDRIVER VBTCCOPY variable record:

Offset	Size	Description

 00h	WORD	source region's left edge

 02h	WORD	source region's right edge

 04h	WORD	source region's top edge

 06h	WORD	source region's bottom edge

 08h	WORD	X coordinate of destination region's upper left corner

 0Ah	WORD	Y coordinate of destination region's upper left corner

INT 62 00D7


62 00DC Format of FGDRIVER tone array element:

Copy to Main

Table 2118

Format of FGDRIVER tone array element:

Offset	Size	Description

 00h	WORD	channel number (0000h terminates array)

 02h	WORD	frequency

 04h	WORD	volume

 06h	WORD	duration in 1/72.8 seconds

INT 62 00DC


62 00E0 Format of FGDRIVER variable pointers:

Copy to Main

Table 2119

Format of FGDRIVER variable pointers:

Offset	Size	Description

 00h	WORD	segment of WORD buffer for cursor row

 02h	WORD	offset of WORD buffer for cursor row

 04h	WORD	segment WORD buffer for cursor column

 06h	WORD	offset WORD buffer for cursor column

INT 62 00E0


62 08-- Format of BW-TCP ??? buffer:

Copy to Main

Table 2120

Format of BW-TCP ??? buffer:

Offset	Size	Description

 00h  6 BYTEs	hardware address???

 06h  6 BYTEs	???

 0Ch	WORD	???

 0Eh	WORD	???

INT 62 08--


63 ---- Format of DESQview/X socket interrupt handler entry:

Copy to Main

Table 2121

Format of DESQview/X socket interrupt handler entry:

Offset	Size	Description

 00h  3 BYTEs	near jump or short jump + NOP to actual interrupt handler

 03h	WORD	offset from following pointer for initial top of local stack

 05h	DWORD	pointer to argument/stack block (see INT 15/AX=DE2Eh)

 09h  7 BYTEs	signature "dvxunix"

INT 63 ----


65 ---- Format of AdLib signature block:

Copy to Main

Table 2122

Format of AdLib signature block:

Offset	Size	Description

 00h	WORD	version number

 02h 19 BYTEs	"SOUND-DRIVER-AD-LIB"

 15h	BYTE	01h

 16h	BYTE	01h

 17h	BYTE	00h

INT 65 ----


66 ---- Bitfields for TI Professional drive type information:

Copy to Main

Table 2123

Bitfields for TI Professional drive type information:

Bit(s)	Description

 7	floppy drive D: has 80 tracks

 6	floppy drive D: is double-sided

 5	floppy drive C: has 80 tracks

 4	floppy drive C: is double-sided

 3	floppy drive B: has 80 tracks

 2	floppy drive B: is double-sided

 1	floppy drive A: has 80 tracks

 0	floppy drive A: is double-sided

INT 66 ----


66 05-- Format of BitFax command block:

Copy to Main

Table 2124

Format of BitFax command block:

Offset	Size	Description

 00h 18 BYTEs	configuration bytes???

 12h	BYTEs	ASCIZ temporary file name to place converted fax

 52h	BYTEs	ASCIZ directory containing BitFax executables

 92h	BYTEs	ASCIZ telephone number

 C2h	BYTE	cover page control (00h don't send, 01h do send cover page)

 C3h 15 BYTEs	configuration bytes???

 E2h	BYTEs	ASCIZ path of BITFAX.TRA file (containing additional

  configuration information???)

122h	BYTEs	configuration bytes???

12Ch	BYTE	00h don't send cover page

01h send cover page

12Dh  7 BYTEs	configuration bytes???

134h	BYTEs	ASCIZ path of file to send

174h	BYTEs	more configuration bytes???

???

INT 66 05--


66 0688 Format of IBMSND driver SNDSTRUC:

Copy to Main

Table 2125

Format of IBMSND driver SNDSTRUC:

Offset	Size	Description

 00h	DWORD	-> audio data

 04h	WORD	length of audio data in bytes

 06h	DWORD	-> playback status flag

 0Ah	WORD	playback frequency

INT 66 0688


66 068C Bitfields for IBMSND driver capabilities:

Copy to Main

Table 2126

Bitfields for IBMSND driver capabilities:

Bit(s)	Description

 0	can play audio in background

 1	data is massaged for output device

 2	driver plays at fixed frequency, resampling input data to fit

 3	driver uses timer interrupt

---DIGPAK---

 4	device supports timer sharing

 5	supports looped sounds and pending

 6	supports stereo panning

 7	supports 8-bit PCM stereo playback

 8	supports audio recording

 9	supports DMA bakcfilling

INT 66 068C


67 ---- Bitfields for TI Professional PC System Configuration doubleword:

Copy to Main

Table 2127

Bitfields for TI Professional PC System Configuration doubleword:

Bit(s)	Description

 0	8087 present

 31-1	reserved (0)

INT 67 ----


67 00-- Values for PC-NET semaphore function status:

Copy to Main

Table 2128

Values for PC-NET semaphore function status:

 00h	successful

 01h	invalid function

 02h	semaphore already locked

 03h	unable to lock semaphore

 04h	semaphore space exhausted

INT 67 00--


67 1F-- Format of 386MAX MEMLIMIT request packet:

Copy to Main

Table 2129

Format of 386MAX MEMLIMIT request packet:

Offset	Size	Description

 00h	WORD	function code (00h-0Fh)

 02h	WORD	return code (see #2130)

 04h  4 BYTEs	???

 08h	WORD	???

???

INT 67 1F--


67 1F-- Values for 386MAX MEMLIMIT return code:

Copy to Main

Table 2130

Values for 386MAX MEMLIMIT return code:

 00h	unknown request

 01h	invalid parameter for VCPI limit

 02h	VCPI limit set

 03h	invalid parameter for EMS limit

 04h	EMS limit set

 05h	DPMI disabled

 06h	XMS disabled

 07h	XMS limit set

 08h	unable to uninstall

 09h	unloaded

INT 67 1F--


67 3F-- Values for calling QEMM "QPI_GetStatus" function:

Copy to Main

Table 2131

Values for calling QEMM "QPI_GetStatus" function:

AH = 00h get QEMM state

Return: CF clear

AL = QEMM state

    bit 0 set if QEMM turned OFF

    bit 1 set if in "Auto" mode

Note:	this function is officially documented

SeeAlso: #2132,#2133,#2134,#2245

INT 67 3F--


67 3F-- Values for calling QEMM "QPI_SetStatus" function:

Copy to Main

Table 2132

Values for calling QEMM "QPI_SetStatus" function:

AH = 01h set QEMM state

AL = new state

    bit 0 set: place QEMM in OFF state

Return: CF clear if successful

CF set on error

Note:	this function is officially documented

SeeAlso: #2131

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 02h:

Copy to Main

Table 2133

Values for calling QEMM QPI function 02h:

AH = 02h get ???

Return: CF clear

AX = segment of ??? data structure

Data Structure

Offset	Size	Description

 00h	DWORD	page table entry for ???

???

SeeAlso: #2134

INT 67 3F--


67 3F-- Values for calling QEMM "QPI_GetVersion" function:

Copy to Main

Table 2134

Values for calling QEMM "QPI_GetVersion" function:

AH = 03h get QEMM version

Return: CF clear

AX = BX = version in BCD

Notes:	this function is officially documented.	 The most recent official docs

  state that the version is returned in both AX and BX; older

  documentation only mentions BX

MICEMM returns AX=0001h, BX unchanged

SeeAlso: #2131,#2135

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 04h:

Copy to Main

Table 2135

Values for calling QEMM QPI function 04h:

AH = 04h allocate 4K page and set AUTO/ON mode

Return: CF clear if successful

    DX = page number of a 4K page

CF set if unable to allocate page

Note:	QEMM mode unchanged if not AUTO/OFF

SeeAlso: #2136

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 05h:

Copy to Main

Table 2136

Values for calling QEMM QPI function 05h:

AH = 05h free 4K page and turn QEMM off

DX = page number returned by function 04h

Return: CF clear

Note:	QEMM mode unchanged if not AUTO/ON

SeeAlso: #2135,#2137

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 06h:

Copy to Main

Table 2137

Values for calling QEMM QPI function 06h:

AH = 06h make new mapping context???

DX = page number of 4K page to hold page table

Return: CF clear

Note:	copies page table into given page and then sets ??? page table entry

  to point at copy

SeeAlso: #2138,#2139

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 07h:

Copy to Main

Table 2138

Values for calling QEMM QPI function 07h:

AH = 07h get mapping context

Return: CF clear

DX = page number of page table for current mapping context

SeeAlso: #2134,#2137,#2139

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 08h:

Copy to Main

Table 2139

Values for calling QEMM QPI function 08h:

AH = 08h set mapping context???

DX = linear page number of page table

Return: CF clear

SeeAlso: #2134,#2137,#2138,#2140,#2142

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 09h:

Copy to Main

Table 2140

Values for calling QEMM QPI function 09h:

AH = 09h get linear page number for page table entry

CX = page table index

Return: CF clear

DX = linear page number

SeeAlso: #2141

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 0Ah:

Copy to Main

Table 2141

Values for calling QEMM QPI function 0Ah:

AH = 0Ah set linear page number for page table entry

CX = page table index

DX = linear page number

Return: CF clear

SeeAlso: #2140

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 0Bh:

Copy to Main

Table 2142

Values for calling QEMM QPI function 0Bh:

AH = 0Bh map 4K pages

BX = number of pages

CX = first page number (must be 0100h to allocate HMA)

DX = EMS handle (memory belonging to EMS handle will be mapped

      into the address space beginning with the first page

      allocated to the handle)

Return: AH = 00h

SeeAlso: #2139,#2143

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 0Ch:

Copy to Main

Table 2143

Values for calling QEMM QPI function 0Ch:

AH = 0Ch get available memory

Return: CF clear

BX = 0001h

CX = total 4K pages???

DX = number of 4K pages free

SeeAlso: #2142,#2144

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 0Dh:

Copy to Main

Table 2144

Values for calling QEMM QPI function 0Dh:

AH = 0Dh CRT controller I/O port trapping

AL = mode

    00h only trap on I/O ports 03C0h-03C5h, 03C7h, 03CAh-03CFh

    01h trap on ports 03B4h, 03B5h, 03B8h, 03C6h, 03C8h, 03C9h,

  03D4h, and 03D5h

    02h only trap on I/O ports 03C6h, 03C8h, and 03C9h

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 0Eh:

Copy to Main

Table 2145

Values for calling QEMM QPI function 0Eh:

AH = 0Eh set cursor virtualization callbacks

DS:BX -> FAR routine for getting hardware cursor address

ES:DX -> FAR routine for setting hardware cursor address

Return: CF clear

Note:	both callbacks are invoked with CL indicating which

  CRT controller register to access (0Eh for high

  byte of cursor address, 0Fh for low byte)

the DS:BX callback should return BX=cursor address;

  ES:DX is called with BL or BH (depending on CL)

  set to the appropriate half of the cursor's address

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 0Fh:

Copy to Main

Table 2146

Values for calling QEMM QPI function 0Fh:

AH = 0Fh unmap 4K pages

CX = first page number

DX = number of pages

Return: CF clear

AL = 00h/01h if ???

Note:	if CX=0100h and DX=0010h, the HMA is remapped to

  simulate a disabled A20

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1000h:

Copy to Main

Table 2147

Values for calling QEMM QPI function 1000h:

AX = 1000h get protected-mode interface

DS:SI -> 16-byte buffer for two GDT entries

ES:DI -> buffer for 4K page table

Return: CF clear

EAX = offset of protected-mode API entry point

DS:SI buffer filled with two GDT descriptors

first is QEMM code segment, second is data???

ES:DI buffer filled with 4K page table

DI points to first unused page table entry

SeeAlso: INT 67/AX=DE01h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1001h:

Copy to Main

Table 2148

Values for calling QEMM QPI function 1001h:

AX = 1001h get CPU debug registers

ES:DI -> buffer for debug registers (8 DWORDs)

Return: CF clear

BL = INT01 handling (see function 1002h)

ES:DI buffer filled

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1002h:

Copy to Main

Table 2149

Values for calling QEMM QPI function 1002h:

AX = 1002h set CPU debug registers

BL = INT01 handling

    00h	 reflect all debugging exceptions as V86-mode INT 01's

    else convert debugging exceptions other than single-step

  into V86-mode INT 03's, single-step to INT 01's

ES:DI -> buffer containing debug registers (8 DWORDs)

Return: CF clear

Notes:	identical to INT 67/AX=DE09h if BL=01h

the INT01 handling flag is set to 01h by the general-protection

  violation handler for certain privileged instructions

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1003h:

Copy to Main

Table 2150

Values for calling QEMM QPI function 1003h:

AX = 1003h get machine status word CR0

Return: CF clear

EAX = contents of CR0

SeeAlso: INT 67/AX=DE07h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1004h:

Copy to Main

Table 2151

Values for calling QEMM QPI function 1004h:

AX = 1004h allocate a 4K page

Return: CF clear if successful

    EDX = linear address of allocated page

CF set on error

SeeAlso: INT 67/AX=DE04h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1005h:

Copy to Main

Table 2152

Values for calling QEMM QPI function 1005h:

AX = 1005h free 4K page

EDX = linear address of page to free

Return: CF clear

SeeAlso: INT 67/AX=DE05h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1006h:

Copy to Main

Table 2153

Values for calling QEMM QPI function 1006h:

AX = 1006h NOP

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1007h:

Copy to Main

Table 2154

Values for calling QEMM QPI function 1007h:

AX = 1007h get maximum physical memory address

Return: CF clear

EDX = physical address of highest 4K memory page

SeeAlso: INT 67/AX=DE02h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1008h:

Copy to Main

Table 2155

Values for calling QEMM QPI function 1008h:

AX = 1008h get physical address of page in first megabyte

CX = page number (linear address shifted right 12 bits)

Return: CF clear

EDX = linear address of page

SeeAlso: function 1F00h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1009h:

Copy to Main

Table 2156

Values for calling QEMM QPI function 1009h:

AX = 1009h switch to protected mode

ESI = linear address in first megabyte of system reg values

      (see INT 67/AX=DE0Ch)

interrupts disabled

Return: interrupts disabled

GDTR, IDTR, LDTR, TR loaded

SS:ESP must have at least 16 bytes space, and the

      entry point is required to set up a new stack

      before enabling interrupts

EAX, ESI, DS, ES, FS, GS destroyed

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 100Ah:

Copy to Main

Table 2157

Values for calling QEMM QPI function 100Ah:

AX = 100Ah switch back to virtual-86 mode

DS = selector for data segment from function 1000h

SS:ESP in first megabyte of linear memory

interrupts disabled

STACK:	QWORD  return address from FAR call to 32-bit segment

DWORD  EIP

DWORD  CS

DWORD  reserved for EFLAGS

DWORD  ESP

DWORD  SS

DWORD  ES

DWORD  DS

DWORD  FS

DWORD  GS

will switch to virtual86 mode with interrupts disabled, all

  segment registers loaded, and EAX destroyed.

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 11h:

Copy to Main

Table 2158

Values for calling QEMM QPI function 11h:

AH = 11h get memory type map

AL = zero/nonzero ??? (set by QEMM.COM but apparently ignored

      by QEMM 6.00)

ES:DI -> 256-byte buffer for memory types

Return: CF clear

BL = ???

ES:DI buffer filled

Note:	each byte of the buffer corresponds to a 4K page, and

  contains the type of that page: 00h = mappable,

  02h = mapped ROM, 03h = high RAM, 04h = excluded,

  05h = video, 06h = ROM, 07h = adapter ROM,

  08h = split ROM, 09h = page frame, 0Ah = RAMmable,

  0Bh = conventional, 83h = high RAM under MS Windows

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 12h:

Copy to Main

Table 2159

Values for calling QEMM QPI function 12h:

AH = 12h get HIRAM chain

Return: CF clear

BX = segment of first MCB in high memory

    0000h if no high memory

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1300h:

Copy to Main

Table 2160

Values for calling QEMM QPI function 1300h:

AX = 1300h VIDRAMEGA???

BL = 00h copy ???

     nonzero copy ??? (reverse)

Return: CF clear

AL = status

    00h if all pages clean

    01h if any page dirty

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1301h:

Copy to Main

Table 2161

Values for calling QEMM QPI function 1301h:

AX = 1301h check if pages modified

DX:DI = start address of range to check

CX = length of range in paragraphs

Return: CF clear

CX = status

    0000h none of the indicated pages is dirty

DI destroyed

    1000h one or more pages is dirty

DI = low word of first dirty page's linear addr

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1302h:

Copy to Main

Table 2162

Values for calling QEMM QPI function 1302h:

AX = 1302h ???

BL = ???

BH = ???

CX = ???

SI = offset of ???

DI = offset of ???

???

Return: CF clear

???

Note:	disables certain interrupts at the two 8259 PICs during

  execution; also modifies CRT controller during

  execution under certain circumstances

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1303h:

Copy to Main

Table 2163

Values for calling QEMM QPI function 1303h:

AX = 1303h initialize EGA graphics virtualization

BX = number of pages (less 1) of EMS to allocate

Return: CF clear if successful

    DX = EMS handle

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1304h:

Copy to Main

Table 2164

Values for calling QEMM QPI function 1304h:

AX = 1304h shutdown EGA graphics virtualization

DX = EMS handle being used for virtualization

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1305h:

Copy to Main

Table 2165

Values for calling QEMM QPI function 1305h:

AX = 1305h select portion of EGA graphics to virtualize???

(related to graphics virtualization, changes memory mappings)

CX = start offset within A000h segment of virtualized mem???

Return: CF clear

Note:	disables certain interrupts at the two 8259 PICs during

  execution (see func 130Ch) and runs inside a QEMM

  critical section

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1306h:

Copy to Main

Table 2166

Values for calling QEMM QPI function 1306h:

AX = 1306h set DESQview critical section counter address

ES:BX -> WORD DESQview critical section counter or 0000h:0000h

Return: CF clear

Note:	also sets a pointer in the low-memory part of QEMM to

  the current value of INT 15 if ES:BX not 0000h:0000h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1307h:

Copy to Main

Table 2167

Values for calling QEMM QPI function 1307h:

AX = 1307h ??? (changes memory mappings for entire A000h segment)

Return: CF clear

Note:	disables certain interrupts at the two 8259 PICs during

  execution (see func 130Ch) and runs inside a QEMM

  critical section

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1308h:

Copy to Main

Table 2168

Values for calling QEMM QPI function 1308h:

AX = 1308h start/reset CRT controller I/O trapping

BL = subfunction

    00h restore CRTC I/O port trapping to previous state

    else start trapping all accesses to I/O ports 03B0-03DF

Return: CF clear

Note:	if called more than once in a row with BL nonzero, the

  original state of the I/O port trapping will be lost

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1309h:

Copy to Main

Table 2169

Values for calling QEMM QPI function 1309h:

AX = 1309h Hercules mode-change support

ES:BX -> new address for Hercules mode-change callback

Return: CF clear

Note:	the callback function is called whenever the CRTC mode

  register is written, with AL set to the value written

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 130Ah:

Copy to Main

Table 2170

Values for calling QEMM QPI function 130Ah:

AX = 130Ah virtualize EGA/VGA DAC registers (I/O ports 03C8h/03C9h)

CX:DX -> DAC register virtualization buffer (see #2252)

or 0000h:0000h to disable

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 130Bh:

Copy to Main

Table 2171

Values for calling QEMM QPI function 130Bh:

AX = 130Bh ???

BL = ??? (??? or 00h)

Return: CF clear

???

Note:	calls AX=130Eh in some cases

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 130Ch:

Copy to Main

Table 2172

Values for calling QEMM QPI function 130Ch:

AX = 130Ch set interrupts to mask

BX = interrupts to mask out during AX=1302h,AX=1307h,AX=1308h,

      AX=130Dh,AX=1310h (BL = master PIC, BH = slave PIC)

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 130Dh:

Copy to Main

Table 2173

Values for calling QEMM QPI function 130Dh:

AX = 130Dh map EGA memory at A0000h

???

Return: CF clear

Note:	disables certain interrupts at the two 8259 PICs during execution

  (see #2172) and runs inside a QEMM critical section

calls AX=1307h (see #2167)

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 130Eh:

Copy to Main

Table 2174

Values for calling QEMM QPI function 130Eh:

AX = 130Eh ??? (modifies CRT controller setup)

???

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 130Fh:

Copy to Main

Table 2175

Values for calling QEMM QPI function 130Fh:

AX = 130Fh reset ???

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1310h:

Copy to Main

Table 2176

Values for calling QEMM QPI function 1310h:

AX = 1310h copy modified pages to physical video RAM???

???

Return: CF clear

Note:	disables certain interrupts at the two 8259 PICs during execution

  (see #2172) and runs inside a QEMM critical section

also calls AX=130Dh (see #2173)

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1311h:

Copy to Main

Table 2177

Values for calling QEMM QPI function 1311h:

AX = 1311h set ???

BL = zero/nonzero???

Return: CF clear

Note:	certain operations will be performed with interrupts

  (as set by AX=130Ch) enabled rather than disabled if

  called with BL nonzero

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1312h:

Copy to Main

Table 2178

Values for calling QEMM QPI function 1312h:

AX = 1312h (v6.02) NOP???

Note:	called by DV 2.42, but appears to be a NOP in QEMM 6.02

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1400h:

Copy to Main

Table 2179

Values for calling QEMM QPI function 1400h:

AX = 1400h initialize DESQview "protection level" support

ES:DI -> protection level configuration (at least 24 bytes)

(see #2246)

BL = highest ??? to return (one less than number of words)

Return: CF clear

AX = ??? (4204h for v6.00)

Note:	QEMM also sets the protected mode INT 02 and INT 06

  vectors to alternate handlers in certain cases

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1401h:

Copy to Main

Table 2180

Values for calling QEMM QPI function 1401h:

AX = 1401h turn off DESQview protection level support

Return: CF clear

???

Notes:	clears the DV critical-section flag address set with

  function 1306h

QEMM also sets the protected mode INT 02 and INT 06

  vectors to the default handlers if they had been

  revectored by function 1400h

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1402h:

Copy to Main

Table 2181

Values for calling QEMM QPI function 1402h:

AX = 1402h set protection level???

BL = protection level???

    00h NOP

    01h ???

    02h ???

    other (03h) ???

ES:DI -> ???

Return: CF clear

???

Format of Data structure:

Offset	Size	Description

 00h	WORD	segment of ??? (X, word at X:0136h set to X)

 02h	WORD	segment of ??? (word at X:0124h set to this)

 04h	WORD	number of paragraphs of ???

 06h  3 WORDs	??? (copied to X:0000h)

 0Ch	WORD	???

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1403h:

Copy to Main

Table 2182

Values for calling QEMM QPI function 1403h:

AX = 1403h add ??? to end of list and ??? (execute func 1406h)

ES:DI -> ??? structure added to end of ??? list

(at least 31 bytes, DWORD at offset 06h used for

 storing pointer to next struc, WORD at offset 00h

 seems to be a key or index)

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1404h:

Copy to Main

Table 2183

Values for calling QEMM QPI function 1404h:

AX = 1404h NOP

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1405h:

Copy to Main

Table 2184

Values for calling QEMM QPI function 1405h:

AX = 1405h remove ??? from ??? list

BX = key???

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1406h:

Copy to Main

Table 2185

Values for calling QEMM QPI function 1406h:

AX = 1406h ???

???

Return: CF clear

???

Notes:	this function is a NOP unless protection level 2 or 3

  is active

when not a NOP, one of the actions is to write-protect

  certain memory pages

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1407h:

Copy to Main

Table 2186

Values for calling QEMM QPI function 1407h:

AX = 1407h ???

???

Return: CF clear

???

Note:	same as function 1406h, but only does anything if

  protection level 2 is active

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1408h:

Copy to Main

Table 2187

Values for calling QEMM QPI function 1408h:

AX = 1408h unprotect???

???

Return: CF clear

???

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 1409h:

Copy to Main

Table 2188

Values for calling QEMM QPI function 1409h:

AX = 1409h abort program causing protection violation???

???

Return: CF clear

???

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 140Ah:

Copy to Main

Table 2189

Values for calling QEMM QPI function 140Ah:

AX = 140Ah set ???

BX = index of ???

Return: CF clear

???

Notes:	no range checking is performed on BX

this function is a NOP unless protection level 3 active

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 140Bh:

Copy to Main

Table 2190

Values for calling QEMM QPI function 140Bh:

AX = 140Bh get ???

BX = index of ???

SI = 0000h

Return: CF clear

SI = segment of 256-byte buffer??? or 0000h

Notes:	no range checking is performed on BX

this function is a NOP unless protection level 3 active

INT 67 3F--


67 3F-- Values for calling QEMM QPI function 15h:

Copy to Main

Table 2191

Values for calling QEMM QPI function 15h:

AH = 15h set timer channel 0 virtualization buffer

ES:BX -> WORD buffer for timer channel 0 divisor

0000h:0000h to disable virtualization

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM v5.00+ QPI function 1600h:

Copy to Main

Table 2192

Values for calling QEMM v5.00+ QPI function 1600h:

AX = 1600h get memory access status

ES:DI -> 256-byte buffer

Return: ES:DI buffer filled

Note:	each byte of the buffer indicates the status of a 4K

  page (bit 0 set if read, bit 1 set if written)

INT 67 3F--


67 3F-- Values for calling QEMM v5.00+ QPI function 1601h:

Copy to Main

Table 2193

Values for calling QEMM v5.00+ QPI function 1601h:

AX = 1601h set memory access status

ES:DI -> 256-byte buffer containing access statuses (see #2192)

INT 67 3F--


67 3F-- Values for calling QEMM v5.00+ QPI function 17h:

Copy to Main

Table 2194

Values for calling QEMM v5.00+ QPI function 17h:

AH = 17h get memory usage statistics

ES:DI -> 81-byte buffer for memory statistics (see #2250)

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 18h:

Copy to Main

Table 2195

Values for calling QEMM v5.11+ QPI function 18h:

AH = 18h check whether conventional memory mapped into address range

ES:BX = starting address

CX = number of 4K pages

Return: CF clear

AL = 00h one or more pages is remapped

     01h all pages in range are conventional memory

(physical address == virtual address)

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 19h:

Copy to Main

Table 2196

Values for calling QEMM v5.11+ QPI function 19h:

AH = 19h NOP

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIORead" function:

Copy to Main

Table 2197

Values for calling QEMM v5.11+ "QPI_UntrappedIORead" function:

AX = 1A00h get byte from I/O port

DX = port number

Return: CF clear

BL = port value

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIOWrite" function:

Copy to Main

Table 2198

Values for calling QEMM v5.11+ "QPI_UntrappedIOWrite" function:

AX = 1A01h send byte to I/O port

BL = value to send

DX = port number

Return: CF clear

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIOReadIndexed" function:

Copy to Main

Table 2199

Values for calling QEMM v5.11+ "QPI_UntrappedIOReadIndexed" function:

AX = 1A02h

BH = index value to send

DX = base port number

Return: CF clear

BL = value read from I/O port (DX+1)

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ "QPI_UntrappedIOWriteIndexed" function:

Copy to Main

Table 2200

Values for calling QEMM v5.11+ "QPI_UntrappedIOWriteIndexed" function:

AX = 1A03h send bytes to two consecutive I/O ports

BH = value for first I/O port (DX)

BL = value for second I/O port (DX+1)

DX = base port number

Return: CF clear

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_UntrappedIO" function:

Copy to Main

Table 2201

Values for calling QEMM v7.03+ "QPI_UntrappedIO" function:

AX = 1A04h

BX = value to write to port

CX = direction and size

    bit 2: output instead of input

    bit 3: word instead of byte

DX = I/O port to be accessed

Return: CF clear

BX = value read (if CX indicates read)

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ function 1A05h

Copy to Main

Table 2202

Values for calling QEMM v7.03+ function 1A05h

AX = 1A05h

???

Return: ???

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_GetIOCallback" function:

Copy to Main

Table 2203

Values for calling QEMM v7.03+ "QPI_GetIOCallback" function:

AX = 1A06h

Return: CF clear

ES:DI -> current I/O callback function

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_SetIOCallback" function:

Copy to Main

Table 2204

Values for calling QEMM v7.03+ "QPI_SetIOCallback" function:

AX = 1A07h

ES:DI -> new I/O callback function (see #2711)

Return: CF clear

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values QEMM v7.03+ I/O callback function is called with:

Copy to Main

Table 2711

Values QEMM v7.03+ I/O callback function is called with:

AL/AX = data to/from trapped port

CL = I/O direction (00h = IN instruction, else OUT instruction)

DX = I/O port address

Return: CF clear if port handled by callback function

CF set if not handled

all other registers returned to application executing the IN or OUT

  instruction (allowing arbitrary changes to port address, data value,

  etc.)

SeeAlso: #2204

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_GetPortTrap" function:

Copy to Main

Table 2205

Values for calling QEMM v7.03+ "QPI_GetPortTrap" function:

AX = 1A08h

DX = I/O port number

Return: CF clear

BL = trapping state (00h not being trapped, 01h trap installed)

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_SetPortTrap" function:

Copy to Main

Table 2206

Values for calling QEMM v7.03+ "QPI_SetPortTrap" function:

AX = 1A09h

DX = I/O port number

Return: CF clear

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_ClearPortTrap" function:

Copy to Main

Table 2207

Values for calling QEMM v7.03+ "QPI_ClearPortTrap" function:

AX = 1A0Ah

DX = I/O port number

Return: CF clear

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B00h:

Copy to Main

Table 2208

Values for calling QEMM v5.11+ QPI function 1B00h:

AX = 1B00h get EMM Import Structure address

ES:DI -> buffer for EMM import data structure (see #2248)

Return: CF set on error

CF clear if successful

SeeAlso: INT 21/AX=4402h/SF=01h

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B01h:

Copy to Main

Table 2209

Values for calling QEMM v5.11+ QPI function 1B01h:

AX = 1B01h disable V86 mode

Return: CF set on error

    (i.e. no Global EMM Import rec. allocated)

CF clear if successful

Note:	shuts down EMS and initializes Global EMM Import record; this function

  is invoked from the callback supplied by INT 2F/AX=1605h

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B02h:

Copy to Main

Table 2210

Values for calling QEMM v5.11+ QPI function 1B02h:

AX = 1B02h enable V86 mode

Return: CF set on error

CF clear if successful

Note:	restarts EMS and frees Global EMM Import record; this function is

  invoked from the callback supplied by INT 2F/AX=1605h

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B03h:

Copy to Main

Table 2211

Values for calling QEMM v5.11+ QPI function 1B03h:

AX = 1B03h MS Windows initializing

CX = segment from which Windows init broadcast made???

DX = Windows startup flags

DI = Windows version number (major in upper byte)

Return: CF clear if successful

    DS:SI -> V86 mode enable/disable callback

  (see #1413 at INT 2F/AX=1605h)

    ES:BX -> startup info structure (see #1410 at INT 2F/AX=1605h)

CF set on error (unable to start Windows)

SeeAlso: INT 2F/AX=1605h

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B04h:

Copy to Main

Table 2212

Values for calling QEMM v5.11+ QPI function 1B04h:

AX = 1B04h MS Windows terminating

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B05h:

Copy to Main

Table 2213

Values for calling QEMM v5.11+ QPI function 1B05h:

AX = 1B05h determine whether program is driver

DS:DX -> ASCIZ filename

Return: CF clear

AL = status

    01h if string ends in ".DRV"

    FFh if string ends in "GDI.EXE"

    00h otherwise

Note:	when MS Windows 3.0 standard mode starts, QEMM patches all drivers

  until GDI.EXE is loaded

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B06h:

Copy to Main

Table 2214

Values for calling QEMM v5.11+ QPI function 1B06h:

AX = 1B06h patch protected-mode check in Windows driver

CX = length of data pointed at by DS:DX

DS:DX -> buffer containing Windows driver code

Return: CF clear

Note:	patches all SMSW x/TEST x,1 instruction sequences into MOV x,CS/VERW x

  sequences, which has the effect that the protected-mode check will

  only indicate protected mode in native protected mode and not in V86

  mode

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1B07h:

Copy to Main

Table 2215

Values for calling QEMM v5.11+ QPI function 1B07h:

AX = 1B07h

BUG: QEMM 6.00-7.01 accept this and branch randomly

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1Bxxh:

Copy to Main

Table 2216

Values for calling QEMM v5.11+ QPI function 1Bxxh:

AX = 1B08h to 1BFFh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1C00h:

Copy to Main

Table 2217

Values for calling QEMM v5.11+ QPI function 1C00h:

AX = 1C00h disable IRQ0-7 calldowns

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1C01h:

Copy to Main

Table 2218

Values for calling QEMM v5.11+ QPI function 1C01h:

AX = 1C01h set V86-mode IRQ0-7 handlers

ES:DI -> 8 DWORDs containing V86-mode handler addresses

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1C02h:

Copy to Main

Table 2219

Values for calling QEMM v5.11+ QPI function 1C02h:

AX = 1C02h disable IRQ8-15 handlers

Return: CF clear

INT 67 3F--


67 3F-- Values for calling QEMM v5.11+ QPI function 1C03h:

Copy to Main

Table 2220

Values for calling QEMM v5.11+ QPI function 1C03h:

AX = 1C03h set V86-mode IRQ8-15 handlers

ES:DI -> 8 DWORDs containing V86-mode handler addresses

BUG:	although the jump table only contains four entries, QEMM 6.00 will

  attempt to use it for any value of AL between 00h and 2Ah, thus

  branching unpredictably for AL=04h-2Ah; QEMM v7.01 behaves

  similarly for AL=04h-1Bh

Note:	when enabled, the appropriate IRQs are reflected back to the specified

  handlers in virtual-86 mode after the CPU automatically invokes the

  protected-mode handler inside QEMM

INT 67 3F--


67 3F-- Values for calling QEMM v7.03+ "QPI_SimulateHWInt" function:

Copy to Main

Table 2221

Values for calling QEMM v7.03+ "QPI_SimulateHWInt" function:

AX = 1C04h

BX = number of interrupt to simulate

Return: ???

Notes:	this function will allow proper simulation of a hardware interrupt

  under DESQview and DESQview/X, where the correct interrupt handler

  may be in a different process with a completely different address

  space

this function was officially documented with the release of QEMM v7.50

INT 67 3F--


67 3F-- Values for calling QEMM v6.0x only QPI function 1D00h:

Copy to Main

Table 2222

Values for calling QEMM v6.0x only QPI function 1D00h:

AX = 1D00h switch to pre-Stealth interrupt vector table

Return: CF clear if supported (QEMM v6.x)

CF set if not supported (QEMM v7+)

Notes:	also switches VGA Save table pointer (0040h:00A8h) and overwrites the

  vectors currently assigned for use by the two interrupt controllers

  (see INT 67/AX=DE0Ah) with the vectors for INT 08-0F and 70-77 (to

  avoid crashing the system).

functions 1Dxxh are not supported by QEMM v7.01, and always return CF

  set

INT 67 3F--


67 3F-- Values for calling QEMM v6.0x only QPI function 1D01h:

Copy to Main

Table 2223

Values for calling QEMM v6.0x only QPI function 1D01h:

AX = 1D01h restore user interrupt vector table

Return: CF clear if supported (QEMM v6.x)

CF set if not supported (QEMM v7+)

Notes:	interrupts should be disabled around the AX=1D00h and AX=1D01h calls

  because QEMM does not modify the memory maps to map in ROM, so

  an interrupt could be disastrous

clears any pending IRQ7 at end of function

functions 1Dxxh are not supported by QEMM v7.01, and always return CF

  set

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ QPI function 1Dxxh:

Copy to Main

Table 2224

Values for calling QEMM v6.00+ QPI function 1Dxxh:

AX = 1D02h to 1DFFh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QEMM_GET_INFO"/"QPI_GetInfo" function:

Copy to Main

Table 2225

Values for calling QEMM v6.00+ "QEMM_GET_INFO"/"QPI_GetInfo" function:

AX = 1E00h get Stealth configuration

Return:	CF clear

BL = memory configuration flags (documented as "reserved") (see #2249)

BH = (v7.00+) disk buffer flags

    bit 0: DISKBUFFRAME buffer instead of DISKBUF buffer

    bit 1: buffer has already been used

CL = stealth type (00h none, 46h Frame, 4Dh Map, 50h Protect)

CH = suspend/resume interrupt (00h none)

DL = (v7.00+) size of QEMM disk buffer in KB (00h none)

DH = reserved (always 00h for v6.00)

SI = reserved (always 0000h for v6.00)

DI = reserved (always 0000h for v6.00)

Note:	this function is officially documented

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QPI_GetStealthCount" function:

Copy to Main

Table 2226

Values for calling QEMM v6.00+ "QPI_GetStealthCount" function:

AX = 1E01h get number of Stealth'ed ROMs

Return: CF clear

BX = number of Stealth'ed ROMs

Note:	this function is officially documented

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QPI_GetStealthList" function:

Copy to Main

Table 2227

Values for calling QEMM v6.00+ "QPI_GetStealthList" function:

AX = 1E02h

ES:DI -> buffer for Stealth ROM info (see #2251)

Return: CF clear

BX = number of Stealth'ed ROMs

ES:DI buffer filled

Note:	this function is officially documented

INT 67 3F--


67 3F-- Values for unimplemented Stealth information functions:

Copy to Main

Table 2228

Values for unimplemented Stealth information functions:

AX = 1E03h to 1EFFh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QEMM_GET_PTE"/"QPI_GetPTE" function:

Copy to Main

Table 2229

Values for calling QEMM v6.00+ "QEMM_GET_PTE"/"QPI_GetPTE" function:

AX = 1F00h get page table entry

CX = page number (0000h-010Fh)

Return:	CF clear

EDX = page table entry

Note:	this function is officially documented

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QEMM_SET_PTE"/"QPI_SetPTE" function:

Copy to Main

Table 2230

Values for calling QEMM v6.00+ "QEMM_SET_PTE"/"QPI_SetPTE" function:

AX = 1F01h set page table entry

CX = page number (0000h-010Fh)

EDX = new page table entry

Return: CF clear

Note:	this function is officially documented

SeeAlso: function 1008h

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ QPI function 1Fxxh:

Copy to Main

Table 2231

Values for calling QEMM v6.00+ QPI function 1Fxxh:

AX = 1F02h to 1FFFh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QEMM_GET_VHI_INFO"/"QPI_GetVHIInfo" function:

Copy to Main

Table 2232

Values for calling QEMM v6.00+ "QEMM_GET_VHI_INFO"/"QPI_GetVHIInfo" function:

AX = 2000h "QEMM_GET_VHI_INFO" get VirtualHDIRQ information

Return: CF clear

BL = flags

    bit 7: VirtualHDIRQ setting respected

  (set if Stealth active)

    bits 6-1 reserved

    bit 0: VirtualHDIRQ currently enabled

(INT 15/AH=90h suppressed when enabled)

Note:	this function is officially documented

SeeAlso: #2233

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QEMM_SET_VHI_INFO"/"QPI_SetVHIInfo" function:

Copy to Main

Table 2233

Values for calling QEMM v6.00+ "QEMM_SET_VHI_INFO"/"QPI_SetVHIInfo" function:

AX = 2001h set VirtualHDIRQ state

BL bit 0 = new VirtualHDIRQ state

Return: CF clear

BL = old VHI setting (bits 0 and 7, see #2232)

Note:	this function is officially documented

SeeAlso: #2232

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ QPI function 20xxh:

Copy to Main

Table 2234

Values for calling QEMM v6.00+ QPI function 20xxh:

AX = 2002h to 20FFh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ "QEMM_COPY_STEALTH_ROMS"/"QPI_CopyStealthRoms":

Copy to Main

Table 2235

Values for calling QEMM v6.00+ "QEMM_COPY_STEALTH_ROMS"/"QPI_CopyStealthRoms":

AX = 2100h copy data from Stealthed address space

DS:SI -> start address of hidden memory to copy

ES:DI -> buffer for copied data

ECX = number of bytes to copy

Return: CF clear if successful

CF set on error (no Stealth or DS:SI < C000h:0000h or DS:SI + ECX > 1M)

Note:	this function was officially documented with the release of QEMM 7.50

INT 67 3F--


67 3F-- Values for calling QEMM v6.00+ QPI function 21xxh:

Copy to Main

Table 2236

Values for calling QEMM v6.00+ QPI function 21xxh:

AX = 2101h to 21FFh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v6.03+ QPI function 2200h:

Copy to Main

Table 2237

Values for calling QEMM v6.03+ QPI function 2200h:

AX = 2200h DESQview/X support -- get ???

Return: CF clear

ES:DI -> ???

INT 67 3F--


67 3F-- Values for calling QEMM v6.03+ QPI function 2201h:

Copy to Main

Table 2238

Values for calling QEMM v6.03+ QPI function 2201h:

AX = 2201h DESQview/X support -- set ???

ES:DI -> ??? or 0000h:0000h

Return: CF clear if successful

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM v6.04+ QPI function 2300h:

Copy to Main

Table 2239

Values for calling QEMM v6.04+ QPI function 2300h:

AX = 2300h get ???

BX = which ??? to get (must be 0000h for v6.04)

Return: CF clear if successful

    ES:DI -> ???

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM v6.04+ QPI function 2301h:

Copy to Main

Table 2240

Values for calling QEMM v6.04+ QPI function 2301h:

AX = 2301h set ???

BX = which ??? to set (must be 0000h for v6.04)

ES:DI -> ???

Return: CF clear if successful

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM v6.04+ QPI function 2302h:

Copy to Main

Table 2241

Values for calling QEMM v6.04+ QPI function 2302h:

AX = 2302h clear specified ???

BX = which ??? to clear (must be 0000h for v6.04)

Return: CF clear if successful

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM v6.04+ QPI function 23FFh:

Copy to Main

Table 2242

Values for calling QEMM v6.04+ QPI function 23FFh:

AX = 23FFh clear all ???

Return: CF clear if successful

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM v6.04+ QPI function 23xxh:

Copy to Main

Table 2243

Values for calling QEMM v6.04+ QPI function 23xxh:

AX = 2303h to 23FEh

Return: CF set

INT 67 3F--


67 3F-- Values for calling QEMM v7.01+ QPI function 24h:

Copy to Main

Table 2244

Values for calling QEMM v7.01+ QPI function 24h:

AH = 24h ST-DBL support

AL = subfunction

    00h set ???

EDX -> information table (EDX = segment SHL 16 + offset)

    01h ???

Return: CF clear if successful

CF set on error

INT 67 3F--


67 3F-- Values for calling QEMM unimplemented QPI functions:

Copy to Main

Table 2245

Values for calling QEMM unimplemented QPI functions:

AH = 25h to FFh

Return: CF set

INT 67 3F--


67 3F-- Format of QEMM protection level configuration:

Copy to Main

Table 2246

Format of QEMM protection level configuration:

Offset	Size	Description

 00h	WORD	segment of 128 breakpoint (INT 3) instructions for use in

  DESQview protection level 3 interrupt vector checking, or

  0000h to disable; in pl3, INTs 00-7F are pointed at these

  breakpoints

 02h	DWORD	-> array of actual interrupt handler addresses for INT 00-7F

  when interrupt vectors are pointed at protection level 3

  breakpoints

 06h	DWORD	far pointer to ??? region list (see #2247)

 0Ah	DWORD	far pointer to buffer for returned ???

 0Eh	DWORD	seg:ofs of function to call on protection violation???

 12h	WORD	segment of ???

 14h	DWORD	far pointer to DWORD containing number of paragraphs of

  ??? for segment at offset 12h

???

INT 67 3F--


67 3F-- Format of protection level Region List:

Copy to Main

Table 2247

Format of protection level Region List:

Offset	Size	Description

 00h	WORD	number of PAIRS of pointers to follow

 02h 2N DWORDs	start/end seg:ofs addresses of ??? regions

Note:	QEMM converts the segmented addresses into linear addresses in place

INT 67 3F--


67 3F-- Format of EMM Import structure:

Copy to Main

Table 2248

Format of EMM Import structure:

Offset	Size	Description

 00h	DWORD	physical address of EMM import struct

 04h	BYTE	major version (v6.00 sets to 01h)

 05h	BYTE	minor version (v6.00 sets to 00h/0Bh)

SeeAlso: INT 21/AX=4402h/SF=01h

INT 67 3F--


67 3F-- Bitfields for memory configuration flags:

Copy to Main

Table 2249

Bitfields for memory configuration flags:

Bit(s)	Description

 0	conventional memory sorted

 1	conventional memory filled

 2	???

 3	???

 4	expanded memory is in use

 5	???

INT 67 3F--


67 3F-- Format of QEMM 6.0 memory statistics:

Copy to Main

Table 2250

Format of QEMM 6.0 memory statistics:

Offset	Size	Description

 00h	BYTE	01h if Shadow RAM found, 00h otherwise

 01h	DWORD	initial conventional memory in bytes

 05h	DWORD	initial extended memory in bytes

 09h	DWORD	initial expanded memory in bytes

 0Dh	DWORD	initial "top" or "shadow" memory in bytes

 11h	DWORD	Unavailable conventional memory in bytes

 15h	DWORD	Unavailable extended memory in bytes

 19h	DWORD	Unavailable expanded memory in bytes

 1Dh	DWORD	Unavailable "top" or "shadow" memory in bytes

Add to offset 49h for Total unavailable top/shadow.

 21h	DWORD	QEMM code size in bytes

 25h	DWORD	QEMM data size in bytes

 29h	DWORD	bytes used for TASKS=

 2Dh	DWORD	DMA buffer size

 31h	DWORD	bytes used for MAPS=

 35h	DWORD	bytes of high RAM

 39h	DWORD	bytes used by mapped ROMs

 3Dh	DWORD	bytes of conventional memory provided by QEMM

 41h	DWORD	bytes of extended memory NOT converted by QEMM (EXT=xxx)

 45h	DWORD	bytes of EMS/XMS pool memory provided by QEMM

 49h	DWORD	Unavailable "top" or "shadow" memory in bytes

Add to offset 1Dh for Total unavailable top/shadow.

 4Dh	DWORD	conventional memory overhead in bytes

(set to 0 by QEMM.COM prior to call)

INT 67 3F--


67 3F-- Format of Stealth ROM info [array]:

Copy to Main

Table 2251

Format of Stealth ROM info [array]:

Offset	Size	Description

 00h	WORD	starting segment of ROM

 02h	WORD	length of ROM in paragraphs

INT 67 3F--


67 3F-- Format of QEMM EGA/VGA DAC register virtualization buffer:

Copy to Main

Table 2252

Format of QEMM EGA/VGA DAC register virtualization buffer:

Offset	Size	Description

 00h	BYTE	(temp) current color register number

 01h	BYTE	(temp) number of bytes written so far for current color reg

 02h 768 BYTEs	three bytes per color register

INT 67 3F--


67 40-- Values for EMS function status:

Copy to Main

Table 2253

Values for EMS function status:

 00h	successful

 80h	internal error

 81h	hardware malfunction

 83h	invalid handle

 84h	undefined function requested by application

 85h	no more handles available

 86h	error in save or restore of mapping context

 87h	insufficient memory pages in system

 88h	insufficient memory pages available

 89h	zero pages requested

 8Ah	invalid logical page number encountered

 8Bh	invalid physical page number encountered

 8Ch	page-mapping hardware state save area is full

 8Dh	save of mapping context failed

 8Eh	restore of mapping context failed

 8Fh	undefined subfunction

 90h	undefined attribute type

 91h	feature not supported

 92h	successful, but a portion of the source region has been overwritten

 93h	length of source or destination region exceeds length of region

  allocated to either source or destination handle

 94h	conventional and expanded memory regions overlap

 95h	offset within logical page exceeds size of logical page

 96h	region length exceeds 1M

 97h	source and destination EMS regions have same handle and overlap

 98h	memory source or destination type undefined

 9Ah	specified alternate map register or DMA register set not supported

 9Bh	all alternate map register or DMA register sets currently allocated

 9Ch	alternate map register or DMA register sets not supported

 9Dh	undefined or unallocated alternate map register or DMA register set

 9Eh	dedicated DMA channels not supported

 9Fh	specified dedicated DMA channel not supported

 A0h	no such handle name

 A1h	a handle found had no name, or duplicate handle name

 A2h	attempted to wrap around 1M conventional address space

 A3h	source array corrupted

 A4h	operating system denied access

INT 67 40--


67 50-- Format of EMS mapping array entry:

Copy to Main

Table 2254

Format of EMS mapping array entry:

Offset	Size	Description

 00h	WORD	logical page number or FFFFh to unmap physical page

 02h	WORD	physical page number or segment address

INT 67 50--


67 51-- Values for EMS function status:

Copy to Main

Table 2255

Values for EMS function status:

 00h	successful

 80h	internal error

 81h	hardware malfunction

 83h	invalid handle

 84h	undefined function requested

 87h	more pages requested than present in system

 88h	more pages requested than currently available

 8Ah	invalid logical page number encountered

 8Bh	invalid physical page number encountered

 8Fh	undefined subfunction

 90h	undefined attribute type

 91h	feature not supported

 A0h	no such handle name

 A1h	duplicate handle name

INT 67 51--


67 54-- Format of EMS handle directory entry:

Copy to Main

Table 2256

Format of EMS handle directory entry:

Offset	Size	Description

 00h	WORD	handle

 02h  8 BYTEs	handle's name

INT 67 54--


67 57-- Values for EMS function status:

Copy to Main

Table 2257

Values for EMS function status:

 00h	successful

 80h	internal error

 81h	hardware failure

 83h	invalid handle

 84h	undefined function requested

 8Ah	invalid logical page number encountered

 8Fh	undefined subfunction

 92h	successful, but a portion of the source region has been overwritten

 93h	length of source or destination region exceeds length of region

  allocated to either source or destination handle

 94h	conventional and expanded memory regions overlap

 95h	offset within logical page exceeds size of logical page

 96h	region length exceeds 1M

 97h	source and destination EMS regions have same handle and overlap

 98h	memory source or destination type undefined

 A2h	attempted to wrap around 1M conventional address space

INT 67 57--


67 57-- Format of EMS copy data:

Copy to Main

Table 2258

Format of EMS copy data:

Offset	Size	Description

 00h	DWORD	region length in bytes

 04h	BYTE	source memory type

00h conventional

01h expanded

 05h	WORD	source handle (0000h if conventional memory)

 07h	WORD	source initial offset (within page if EMS, segment if convent)

 09h	WORD	source initial segment (conv mem) or logical page (EMS)

 0Bh	BYTE	destination memory type

00h conventional

01h expanded

 0Ch	WORD	destination handle

 0Eh	WORD	destination initial offset

 10h	WORD	destination initial segment or page

INT 67 57--


67 58-- Format of EMS mappable physical address entry:

Copy to Main

Table 2259

Format of EMS mappable physical address entry:

Offset	Size	Description

 00h	WORD	physical page segment

 02h	WORD	physical page number

INT 67 58--


67 59-- Format of EMS hardware configuration array:

Copy to Main

Table 2260

Format of EMS hardware configuration array:

Offset	Size	Description

 00h	WORD	size of raw EMM pages in paragraphs

 02h	WORD	number of alternate register sets

 04h	WORD	size of mapping-context save area in bytes

 06h	WORD	number of register sets assignable to DMA

 08h	WORD	DMA operation type

0000h DMA with alternate register sets

0001h only one DMA register set

INT 67 59--


67 5B-- Values for EMS function status:

Copy to Main

Table 2261

Values for EMS function status:

 00h	successful

 80h	internal error

 81h	hardware malfunction

 84h	undefined function requested

 8Fh	undefined subfunction

 9Ah	specified alternate map register or DMA register set not supported

 9Bh	all alternate map register or DMA register sets currently allocated

 9Ch	alternate map register or DMA register sets not supported

 9Dh	undefined or unallocated alternate map register/DMA register set

 9Eh	dedicated DMA channels not supported

 9Fh	specified dedicated DMA channel not supported

 A3h	source array corrupted

 A4h	operating system denied access

INT 67 5B--


67 5BE2 Format of RM386 V86-mode table:

Copy to Main

Table 2262

Format of RM386 V86-mode table:

Offset	Size	Description

 00h	DWORD	original INT 13 vector

 04h	DWORD	original INT 15 vector

 08h	DWORD	original INT 19 vector

 0Ch	DWORD	original INT 21 vector

 10h	DWORD	original INT 4B vector

 14h	DWORD	original INT 67 vector

INT 67 5BE2


67 5BF1 Values for MICEMM/RM386 memory type:

Copy to Main

Table 2263

Values for MICEMM/RM386 memory type:

 00h	unused (MICEMM), RAM/available (RM386)

 02h	DOS extension (XMS UMB)

 04h	shadowed ROM

 08h	mappable EMS

 10h	page frame

 20h	ROM

 40h	reserved (video memory, etc)

 80h	RAM (MICEMM), Windows UMB (RM386)

INT 67 5BF1


67 5BF4 Bitfields for RM386 global flags 1:

Copy to Main

Table 2264

Bitfields for RM386 global flags 1:

Bit(s)	Description

 0-3	reserved

 4	V86 mode

 5	reserved

 6	80386 or higher CPU

 7,8	reserved

 9	A20 enabled at startup

 10	"HIGH_IO"

 11	ROM

 12	large frame

 13,14	reserved

 15	PS/2-style A20 control

INT 67 5BF4


67 5BF4 Bitfields for RM386 global flags 2:

Copy to Main

Table 2265

Bitfields for RM386 global flags 2:

Bit(s)	Description

 0	HMA in use

 1	XMS present

 2	using XMS driver memory

 3	HIGH (NEAT only)

 4-7	reserved

 8	NOBKTRAP

 9	NORESET

 10	ALTMAP

 11	NOFRAME

 12-15	reserved

INT 67 5BF4


67 5BF4 Bitfields for RM386 global flags 3:

Copy to Main

Table 2266

Bitfields for RM386 global flags 3:

Bit(s)	Description

 0	NOTEST

 1	NOEBDA

 2	Windows3 support

 3	system board mouse

 4	DISKBUF

 5	EBDALOW

 6	A20 global enable flag

 7	A20 flag

 8	EBDA moved to stub

 9	VXD file was found

 10	reserved

 11	NOBOOTMAP

 12	AUTO

 13	PS/2 machine

 14	Compaq ROM merge active

 15	NOHMA set

INT 67 5BF4


67 5BF4 Bitfields for RM386 global flags 4:

Copy to Main

Table 2267

Bitfields for RM386 global flags 4:

Bit(s)	Description

 0	"NOV8259" don't virtualize interrupt controller

 1	NOSCSI

 2	NOSCAN

 3	NOTR

 4	ALTBOOT

 5	NOCOMPQ

 6	KB2TRAP

 7	DESHADOW

 8	Video 7 VGA detected

 9	reserved

 10	NOVGA

 11	NOPS2

 12	DEBUG

 13	NOVKB

 14,15	reserved

INT 67 5BF4


67 5C-- Values for EMS function status:

Copy to Main

Table 2268

Values for EMS function status:

 00h	successful

 80h	internal error

 81h	hardware malfunction

 84h	undefined function requested

INT 67 5C--


67 DE01 Call QEMM v6.03 protected mode entry point additionally with:

Copy to Main

Table 2269

Call QEMM v6.03 protected mode entry point additionally with:

AX = DF00h ???

???

Return: ???

AX = DF01h ???

???

Return: ???

INT 67 DE01


67 DE0C Format of system register values for switch to protected mode:

Copy to Main

Table 2270

Format of system register values for switch to protected mode:

Offset	Size	Description

 00h	DWORD	value for CR3

 04h	DWORD	linear address in first megabyte of value for GDTR

 08h	DWORD	linear address in first megabyte of value for IDTR

 0Ch	WORD	value for LDTR

 0Eh	WORD	value for TR

 10h	PWORD	CS:EIP of protected mode entry-point

INT 67 DE0C


67 FFA5 Call EMM386.EXE API entry point with:

Copy to Main

Table 2271

Call EMM386.EXE API entry point with:

AH = 00h get memory manager's status

    Return: AH = status

bit 0: not active (OFF)

bit 1: in "Auto" mode

AH = 01h set memory manager's state

    AL = new state (00h ON, 01h OFF, 02h AUTO)

AH = 02h Weitek coprocessor support

    AL = subfunction

00h get Weitek support state

    Return: AL = status

bit 0: Weitek coprocessor is present

bit 1: Weitek support is enabled

01h turn on Weitek support

02h turn off Weitek support

     --- v4.20-4.41 only ---

AH = 03h Windows support???

    AL = subfunction (00h, 01h)

AH = 04h print copyright notice to standard output

 (using INT 21/AH=09h)

AH = 05h print available report

 (the one shown when running EMM386 from the DOS prompt)

SeeAlso: #0733 at INT 21/AX=4402h/SF=02h,#1402 at INT 2F/AX=12FFh/BX=0106h

INT 67 FFA5


68 01-- Format of APPC/PC "DISPLAY" control block:

Copy to Main

Table 2272

Format of APPC/PC "DISPLAY" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1B00h (verb "DISPLAY")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	00h

 1Ah  8 BYTEs	(big-endian) logical unit ID

 22h  8 BYTEs	(big-endian) partner logical unit name

 2Ah  8 BYTEs	(big-endian) mode name

 32h	BYTE	logical unit session limit

 33h	BYTE	partner logical unit session limit

 34h	BYTE	node maximum negotiable session limit

 35h	BYTE	current session limit

 36h	BYTE	minimum negotiated winner limit

 37h	BYTE	maximum negotiated loser limit

 38h	BYTE	active session count

 39h	BYTE	active CONWINNER session count

 3Ah	BYTE	active CONLOSER session count

 3Bh	BYTE	session termination count

 3Ch	BYTE	bit 7: SESSION_TERMINATION_TARGET_DRAIN

bit 6: SESSION_TERMINATION_SOURCE_DRAIN

INT 68 01--


68 01-- Values for APPC/PC return code:

Copy to Main

Table 2273

Values for APPC/PC return code:

 0000h	successful

 0001h	BAD_TP_ID

 0002h	BAD_CONV_ID

 0003h	bad logical unit ID

 0008h	no physical unit attached

 0110h	bad state

 01B1h	BAD_PART_LUNAME

 01B2h	bad mode name

 0201h	physical unit already active

 0211h	logical unit already active

 0212h	BAD_PART_SESS

 0213h	BAD_RU_SIZES

 0214h	BAD_MODE_SESS

 0216h	BAD_PACING_CNT

 0219h	EXTREME_RUS

 021Ah	SNASVCMG_1

 0223h	SSCP_CONNECTED_LU

 0230h	invalid change

 0243h	too many TPs

 0272h	adapter close failure

 0281h	GET_ALLOC_BAD_TYPE

 0282h	unsuccessful

 0283h	DLC failure

 0284h	unrecognized DLC

 0286h	duplicate DLC

 0301h	SSCP_PU_SESSION_NOT_ACTIVE

 0302h	data exceeds RU size

 0401h	invalid direction

 0402h	invalid type

 0403h	segment overlap

 0404h	invalid first character

 0405h	table error

 0406h	conversion error

 F0010000h	APPC disabled

 F0020000h	APPC busy

 F0030000h	APPC abended

 F0040000h	incomplete

INT 68 01--


68 01-- Format of APPC/PC "Attach Physical Unit" control block:

Copy to Main

Table 2274

Format of APPC/PC "Attach Physical Unit" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2000h (verb "Attach Physical Unit")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	00h

 1Ah	BYTE	version

 1Bh	BYTE	release

 1Ch  8 BYTEs	(big-endian) net name

 24h  8 BYTEs	(big-endian) physical unit name

 2Ch  8 BYTEs	00h

 34h	DWORD	pointer to SYSTEM_LOG_EXIT routine, FFFFFFFFh=don't log errors

(see also AH=01h/SF=2100h)

 38h	DWORD	00h

 3Ch	BYTE	00h RETURN_CONTROL: COMPLETE

01h RETURN_CONTROL: INCOMPLETE

INT 68 01--


68 01-- Format of APPC/PC "Attach Logical Unit" control block:

Copy to Main

Table 2275

Format of APPC/PC "Attach Logical Unit" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2100h (verb "Attach Logical Unit")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	70  offset to partner logical unit record

 1Ah  8 BYTEs	(big-endian) logical unit name

 22h  8 BYTEs	(big-endian) logical unit ID

 2Ah	BYTE	logical unit local address

 2Bh	BYTE	logical unit session limit

 2Ch	DWORD	pointer to CREATE_TP_EXIT routine,

FFFFFFFFh = reject incoming ALLOCATEs

00000000h = queue ALLOCATEs

 30h	DWORD	00h

 34h	DWORD	pointer to SYSTEM_LOG_EXIT routine, FFFFFFFFh=don't log errors

 38h	DWORD	00h

 3Ch	BYTE	maximum TPs

 3Dh	BYTE	queue depth

 3Eh	DWORD	pointer to LU_LU_PASSWORD_EXIT routine, FFFFFFFFh=no pswd exit

 42h	DWORD	00h

 46h	WORD	total length of partner records

 48h	var	array of partner logical unit records (see #2276)

SeeAlso: #2278,#2279,#2281

INT 68 01--


68 01-- Format of APPC/PC partner logical unit record:

Copy to Main

Table 2276

Format of APPC/PC partner logical unit record:

Offset	Size	Description

 00h	WORD	length of this partner logical unit record

 02h	WORD	42  offset to mode records

 04h  8 BYTEs	(big-endian) partner logical unit name

 0Ch	BYTE	partner logical unit security capabilities

bit 7: already verified

bit 6: conversation level security

bit 5: session level security

 0Dh	BYTE	partner logical unit session limit

 0Eh	WORD	partner logical unit maximum MC_SEND_LL

 10h  8 BYTEs	(big-endian) partner logical unit DLC name

 18h	BYTE	partner logical unit adapter number

 19h 17 BYTEs	(counted string) partner logical unit adapter address

 2Ah	WORD	total length of mode records

 2Ch 16N BYTEs	array of mode records (see #2277)

INT 68 01--


68 01-- Format of mode record:

Copy to Main

Table 2277

Format of mode record:

Offset	Size	Description

 00h	WORD	16  length of this mode record

 02h  8 BYTEs	(big-endian) mode name

 0Ah	WORD	RU_SIZE high bound

 0Ch	WORD	RU_SIZE low bound

 0Eh	BYTE	mode maximum negotiable session limit

 0Fh	BYTE	pacing size for receive

Routines defined by LU_LU_PASSWORD_EXIT, CREATE_TP_EXIT, and SYSTEM_LOG_EXIT

pointers are called by pushing the DWORD pointer to the verb on the stack and

then performing a FAR call.

INT 68 01--


68 01-- Format of ACCESS_LU_LU_PW verb:

Copy to Main

Table 2278

Format of ACCESS_LU_LU_PW verb:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1900h (verb "ACCESS_LU_LU_PW")

 0Eh  8 BYTEs	(big-endian) logical unit ID

 16h  8 BYTEs	(big-endian) logical unit name

 1Eh  8 BYTEs	(big-endian) partner logical unit name

 26h 17 BYTEs	(counted string) partner fully qualified logical unit name

 37h	BYTE	password available (0=no, 1=yes)

 38h  8 BYTEs	password

SeeAlso: #2275,#2279,#2281

INT 68 01--


68 01-- Format of CREATE_TP verb:

Copy to Main

Table 2279

Format of CREATE_TP verb:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2300h (verb "CREATE_TP")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) sense code (see #2280)

 18h  8 BYTEs	(big-endian) TP ID

 20h  8 BYTEs	(big-endian) logical unit ID

 28h	DWORD	(big-endian) conversation ID

 2Ch	BYTE	0 basic conversation, 1 mapped conversation

 2Dh	BYTE	0 no sync level, 1 confirm

 2Eh	BYTE	reserved

 2Fh 65 BYTEs	(counted string) transaction program name

 70h  6 BYTEs	00h

 76h	WORD	length of ERROR_LOG_DATA to return

 78h	DWORD	pointer to ERROR_LOG_DATA buffer

 7Ch  8 BYTEs	(big-endian) partner logical unit name

 84h 18 BYTEs	(counted string) partner fully qualified logical unit name

 96h  8 BYTEs	(big-endian) mode name

 9Eh 12 BYTEs	00h

 AAh 11 BYTEs	(counted string) password

 B5h 11 BYTEs	(counted string) user ID

 C0h	BYTE	0 verification should be performed

1 already verified

SeeAlso: #2278,#2281

INT 68 01--


68 01-- Values for APPC/PC sense code:

Copy to Main

Table 2280

Values for APPC/PC sense code:

 00000000h	Ok

 080F6051h	SECURITY_NOT_VALID

 084B6031h	TP_NOT_AVAIL_RETRY

 084C0000h	TP_NOT_AVAIL_NO_RETRY

 10086021h	TP_NAME_NOT_RECOGNIZED

 10086034h	CONVERSATION_TYPE_MISMATCH

 10086041h	SYNC_LEVEL_NOT_SUPPORTED

INT 68 01--


68 01-- Format of SYSLOG verb:

Copy to Main

Table 2281

Format of SYSLOG verb:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2600h (verb "SYSLOG")

 0Eh 10 BYTEs	00h

 18h	WORD	(big-endian) type

 1Ah	DWORD	(big-endian) subtype

 1Eh	DWORD	pointer to ADDITIONAL_INFO

 22h	DWORD	(big-endian) conversation ID

 26h  8 BYTEs	(big-endian) TP ID

 2Eh  8 BYTEs	(big-endian) physical unit or logical unit name

 36h	WORD	length of data

 38h	DWORD	pointer to data

 3Ch	BYTE	00h

SeeAlso: #2278,#2279

INT 68 01--


68 01-- Format of APPC/PC "Detach Logical Unit" control block:

Copy to Main

Table 2282

Format of APPC/PC "Detach Logical Unit" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2200h (verb "Detach Logical Unit")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h  8 BYTEs	(big-endian) logical unit ID

 20h	BYTE	00h

INT 68 01--


68 01-- Format of APPC/PC "Detach Physical Unit" control block:

Copy to Main

Table 2283

Format of APPC/PC "Detach Physical Unit" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2700h (verb "Detach Physical Unit")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	BYTE	00h  type: hard

01h  type: soft

INT 68 01--


68 01-- Format of APPC/PC "Activate DLC" control block:

Copy to Main

Table 2284

Format of APPC/PC "Activate DLC" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2B00h (verb "Activate DLC")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h  8 BYTEs	(big-endian) DLC name

 20h	BYTE	adapter number

INT 68 01--


68 02-- Format of APPC/PC "Allocate" control block:

Copy to Main

Table 2285

Format of APPC/PC "Allocate" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0100h (verb "Allocate" or "MC_Allocate")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	(MC_Allocate only) conversation type

0 basic conversation

1 mapped conversation

 27h	BYTE	SYNC_LEVEL (00h none, 01h confirm)

 28h	WORD	0000h

 2Ah	BYTE	RETURN_CONTROL

00h when session allocated

01h immediate

02h when session free

 2Bh  8 BYTEs	00h

 33h  8 BYTEs	(big-endian) partner logical unit name

 3Bh  8 BYTEs	(big-endian) mode name

 43h 65 BYTEs	(counted string) TP name

 84h	BYTE	security (00h none, 01h same, 02h pgm)

 85h 11 BYTEs	00h

 90h 11 BYTEs	(counted string) password

 9Bh 11 BYTEs	(counted string) user ID

 A6h	WORD	PIP_DATA length

 A8h	DWORD	pointer to PIP_DATA

INT 68 02--


68 02-- Values for APPC/PC primary return code:

Copy to Main

Table 2286

Values for APPC/PC primary return code:

 0000h	successful

 0001h	parameter check

 0002h	state check

 0003h	allocation error

 0005h	deallocate abended

 0006h	deallocate abended program

 0007h	deallocate abended SVC

 0008h	deallocate abended timer

 0009h	deallocate normal return

 000Ah	data posting blocked

 000Bh	posting not active

 000Ch	PROG_ERROR_NO_TRUNC

 000Dh	PROG_ERROR_TRUNC

 000Eh	PROG_ERROR_PURGING

 000Fh	CONV_FAILURE_RETRY

 0010h	CONV_FAILURE_NO_RETRY

 0011h	SVC_ERROR_NO_TRUNC

 0012h	SVC_ERROR_TRUNC

 0013h	SVC_ERROR_PURGING

 0014h	unsuccessful

 0018h	CNOS partner logical unit reject

 0019h	conversation type mixed

 F001h	APPC disabled

 F002h	APPC busy

 F003h	APPC abended

 F004h	incomplete

INT 68 02--


68 02-- Values for APPC/PC error code:

Copy to Main

Table 2287

Values for APPC/PC error code:

 0001h	bad TP ID

 0002h	bad conversation ID

 0004h	allocation error, no retry

 0005h	allocation error, retry

 0006h	data area crosses segment boundary

 0010h	bad TPN length

 0011h	bad CONV length

 0012h	bad SYNC level

 0013h	bad security selection

 0014h	bad return control

 0015h	SEC_TOKENS too big

 0016h	PIP_LEN incorrect

 0017h	no use of SNASVCMG

 0018h	unknown partner mode

 0031h	confirm: SYNC_NONE

 0032h	confirm: bad state

 0033h	confirm: NOT_LL_BDY

 0041h	confirmed: bad state

 0051h	deallocate: bad type

 0052h	deallocate: flush bad state

 0053h	deallocate: confirm bad state

 0055h	deallocate: NOT_LL_BDY

 0057h	deallocate: log LL_WRONG

 0061h	flush: not send state

 0091h	post on receipt: invalid length

 0092h	post on receipt: not in receive state

 0093h	post on receipt: bad fill

 00A1h	prepare to receive:invalid type

 00A2h	prepare to receive: unfinished LL

 00A3h	prepare to receive: not in send state

 00B1h	receive and wait: bad state

 00B2h	receive and wait: NOT_LL_BDY

 00B5h	receive and wait: bad fill

 00C1h	receive immediate: not in receive state

 00C4h	receive immediate: bad fill

 00E1h	request to send: not in receive state

 00F1h	send data: bad LL

 00F2h	send data: not in send state

 0102h	send error: log LL wrong

 0103h	send error: bad type

 0121h	test: invalid type

 0122h	test: not in receive state

INT 68 02--


68 02-- Format of APPC/PC "Confirm" control block:

Copy to Main

Table 2288

Format of APPC/PC "Confirm" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0300h (verb "Confirm" or "MC_Confirm")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	request to send received (0=no, 1=yes)

INT 68 02--


68 02-- Format of APPC/PC "Confirmed" control block:

Copy to Main

Table 2289

Format of APPC/PC "Confirmed" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0400h (verb "Confirmed" or "MC_Confirmed")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

INT 68 02--


68 02-- Format of APPC/PC "Deallocate" control block:

Copy to Main

Table 2290

Format of APPC/PC "Deallocate" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0500h (verb "Deallocate" or "MC_Deallocate")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	00h

 27h	BYTE	type

00h SYNC_LEVEL

01h FLUSH

02h ABEND_PROC

03h ABEND_SVC

04h ABEND_TIMER

05h ABEND

 28h	WORD	(MC_Deallocate only) length of error log data

 2Ah	DWORD	(MC_Deallocate only) pointer to error log data

INT 68 02--


68 02-- Format of APPC/PC "Flush" control block:

Copy to Main

Table 2291

Format of APPC/PC "Flush" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0600h (verb "Flush" or "MC_Flush")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

INT 68 02--


68 02-- Format of APPC/PC "Get_Attributes" control block:

Copy to Main

Table 2292

Format of APPC/PC "Get_Attributes" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0700h (verb "Get_Attributes" or "MC_Get_Attributes")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h  8 BYTEs	(big-endian) logical unit ID

 2Eh	BYTE	00h

 2Fh	BYTE	SYNC_LEVEL (0=none, 1=confirm)

 30h  8 BYTEs	(big-endian) mode name

 38h  8 BYTEs	(big-endian) own net name

 40h  8 BYTEs	(big-endian) own logical unit name

 48h  8 BYTEs	(big-endian) partner logical unit name

 50h 18 BYTEs	(counted string) partner's fully qualified logical unit name

 62h	BYTE	00h

 63h 11 BYTEs	(counted string) user ID

INT 68 02--


68 02-- Format of APPC/PC "Get_Type" control block:

Copy to Main

Table 2293

Format of APPC/PC "Get_Type" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0800h (verb "Get_Type")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	(ret) type (0=basic conversation, 1=mapped conversation)

INT 68 02--


68 02-- Format of APPC/PC "Post_on_Receipt" control block:

Copy to Main

Table 2294

Format of APPC/PC "Post_on_Receipt" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0900h (verb "Post_on_Receipt")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	WORD	maximum length

 28h	BYTE	fill (0=buffer, 1=LL)

INT 68 02--


68 02-- Format of APPC/PC "Prepare_to_Receive" control block:

Copy to Main

Table 2295

Format of APPC/PC "Prepare_to_Receive" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0A00h (verb "Prepare_to_Receive" or "MC_Prepare_to_Receive")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	type (0=SYNC_LEVEL, 1=FLUSH)

 27h	BYTE	locks (0=short, 1=long)

INT 68 02--


68 02-- Format of APPC/PC "Receive_and_Wait" control block:

Copy to Main

Table 2296

Format of APPC/PC "Receive_and_Wait" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0B00h (verb "Receive_and_Wait" or "MC_Receive_and_Wait")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	type of information received (see #2297)

 27h	BYTE	(MC_Receive_and_Wait only) fill (0=buffer, 1=LL)

 28h	BYTE	Request_to_Send_Received (0=no, 1=yes)

 29h	WORD	maximum length

 2Bh	WORD	data length

 2Dh	DWORD	pointer to data

INT 68 02--


68 02-- Values for type of information received:

Copy to Main

Table 2297

Values for type of information received:

 00h	data

 01h	data complete

 02h	data incomplete

 03h	confirm

 04h	confirm send

 05h	confirm deallocate

 06h	send

INT 68 02--


68 02-- Format of APPC/PC "Receive_Immediate" control block:

Copy to Main

Table 2298

Format of APPC/PC "Receive_Immediate" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0C00h (verb "Receive_Immediate" or "MC_Receive_Immediate")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	type of information received (see #2297)

 27h	BYTE	(MC_Receive_Immediate only) fill (0=buffer, 1=LL)

 28h	BYTE	Request_to_Send_Received (0=no, 1=yes)

 29h	WORD	maximum length

 2Bh	WORD	data length

 2Dh	DWORD	pointer to data

INT 68 02--


68 02-- Format of APPC/PC "Request_to_Send" control block:

Copy to Main

Table 2299

Format of APPC/PC "Request_to_Send" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0E00h (verb "Request_to_Send" or "MC_Request_to_Send")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

INT 68 02--


68 02-- Format of APPC/PC "Send_Data" control block:

Copy to Main

Table 2300

Format of APPC/PC "Send_Data" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	0F00h (verb "Send_Data" or "MC_Send_Data")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	request to send received (0=no, 1=yes)

 27h	BYTE	00h

 28h	WORD	data length

 2Ah	DWORD	pointer to data

INT 68 02--


68 02-- Format of APPC/PC "Send_Error" control block:

Copy to Main

Table 2301

Format of APPC/PC "Send_Error" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1000h (verb "Send_Error" or "MC_Send_Error")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	request to send received (0=no, 1=yes)

 27h	BYTE	type (0=program, 1=SVC)

 28h	DWORD	00h

 2Ch	WORD	(MC_Send_Error only) LOG_DATA length

 2Eh	DWORD	(MC_Send_Error only) pointer to LOG_DATA

INT 68 02--


68 02-- Format of APPC/PC "Test" control block:

Copy to Main

Table 2302

Format of APPC/PC "Test" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1200h (verb "Test" or "MC_Test")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	(MC_Test only) test (0=posted, 1=request_to_send received)

Note:	error code has different interpretations for:

0 posted data

1 posted not data (primary return code = 0)

1 bad TP_ID (primary return code = 1)

INT 68 02--


68 02-- Format of APPC/PC "Wait" control block:

Copy to Main

Table 2303

Format of APPC/PC "Wait" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1300h (verb "Wait")

 0Eh	BYTE	1 if MC_ (mapped conversation) form of verb

0 if basic verb

 0Fh  5 BYTEs	reserved (0)

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) error code (see #2287,#2302)

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	(big-endian) conversation ID

 26h	BYTE	number of conversations to wait on

Note: error codes have interpretations as for AH=02h/SF=1200h

INT 68 02--


68 03-- Format of APPC/PC "TP Started" control block:

Copy to Main

Table 2304

Format of APPC/PC "TP Started" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2400h (verb "TP Started")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	00h

 1Ah  8 BYTEs	(big-endian) logical unit ID

 22h  8 BYTEs	(big-endian) TP ID

INT 68 03--


68 03-- Format of APPC/PC "Get ALLOCATE" control block:

Copy to Main

Table 2305

Format of APPC/PC "Get ALLOCATE" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2800h (verb "Get ALLOCATE")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	00h

 1Ah  8 BYTEs	(big-endian) logical unit ID

 22h	BYTE	type (00h dequeue, 01h test)

 23h	DWORD	pointer to CREATE_TP record

INT 68 03--


68 03-- Format of APPC/PC "Change Logical Unit" control block:

Copy to Main

Table 2306

Format of APPC/PC "Change Logical Unit" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	2A00h (verb "Change Logical Unit")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	00h

 1Ah  8 BYTEs	(big-endian) logical unit ID

 22h	DWORD	pointer to CREATE_TP_EXIT routine

00000000h queue ALLOCATEs

FFFFFFFFh reject incoming ALLOCATEs

 26h	DWORD	00000000h

 2Ah	DWORD	pointer to SYSTEM_LOG_EXIT routine, FFFFFFFFh= don't log errors

 2Eh	DWORD	00000000h

 32h	BYTE	maximum TPs

 33h	BYTE	00h stop QUEUE_ALLOCATEs

01h resume QUEUE_ALLOCATEs

 34h	DWORD	pointer to LU_LU_PASSWORD_EXIT routine, FFFFFFFFh = no exit

 38h	DWORD	00000000h

INT 68 03--


68 04-- Format of APPC/PC control block:

Copy to Main

Table 2307

Format of APPC/PC control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	verb (action)

2500h TP_ENDED

2900h TP_VALID

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h	WORD	00h

 1Ah  8 BYTEs	(big-endian) TP_ID

 22h	DWORD	-> CREATE_TP record (only if verb = 2900h)

INT 68 04--


68 05-- Format of APPC/PC "Transfer Message Data" control block:

Copy to Main

Table 2308

Format of APPC/PC "Transfer Message Data" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1C00h (verb "Transfer Message Data")

 0Eh	BYTE	data type

00h user defined

01h NMVT

02h alert subvectors

03h PDSTATS subvectors

 0Fh  5 BYTEs	00h

 14h	DWORD	(big-endian) return code (see #2273)

 18h 12 BYTEs	00h

 24h	BYTE	flags (see #2309)

 25h	BYTE	00h

 26h	WORD	length of data

 28h  N BYTEs	data

INT 68 05--


68 05-- Bitfields for APPC/PC message transfer flags:

Copy to Main

Table 2309

Bitfields for APPC/PC message transfer flags:

Bit(s)	Description

 0	don't add correlation subvector

 1	don't add product set ID subvector

 2	don't do SYSLOG

 3	don't send SSCP_PU_SESSION

SeeAlso: #2308

INT 68 05--


68 06-- Format of APPC/PC "Change Number of Sessions" control block:

Copy to Main

Table 2310

Format of APPC/PC "Change Number of Sessions" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1500h (verb "Change Number of Sessions")

 0Eh  6 BYTEs	00h

 14h	WORD	(big-endian) primary return code (see #2286)

 16h	DWORD	(big-endian) secondary return code (see #2273,#2311)

 1Ah  8 BYTEs	(big-endian) logical unit ID

 22h  8 BYTEs	blanks

 2Ah  8 BYTEs	(big-endian) partner logical unit name

 32h  8 BYTEs	(big-endian) mode name

 3Ah	BYTE	bit 7: use MODE_NAME_SELECT_ALL rather than MODE_NAME

bit 6: set negotiable values

 3Bh	BYTE	partner logical unit mode session limit

 3Ch	BYTE	minimum CONWINNERS_SOURCE

 3Dh	BYTE	maximum CONWINNERS_TARGET

 3Eh	BYTE	automatic activation

 3Fh	BYTE	00h

 40h	BYTE	flags

bit 7: drain target

bit 6: drain source

bit 5: target responsible, not source

INT 68 06--


68 06-- Values for secondary return code (see also AH=01h/SF=1B00h):

Copy to Main

Table 2311

Values for secondary return code (see also AH=01h/SF=1B00h):

 0000h	accepted

 0001h	negotiated

 0003h	bad logical unit ID

 0004h	allocation failure, no retry

 0005h	allocation failure, retry

 0151h	can't raise limits

 0153h	all modes must reset

 0154h	bad SNASVCMG limits

 0155h	minimum greater than total

 0156h	mode closed (primary return code = 1)

CNOS mode closed (primary return code = 18h)

 0157h	bad mode name (primary return code = 1)

CNOS bad mode name (primary return code = 18h)

 0159h	reset SNA drains

 015Ah	single not SRC response

 015Bh	bad partner logical unit

 015Ch	exceeds maximum allowed

 015Dh	change SRC drains

 015Eh	logical unit detached

 015Fh	CNOS command race reject

INT 68 06--


68 FB-- Format of APPC/PC "CONVERT" control block:

Copy to Main

Table 2312

Format of APPC/PC "CONVERT" control block:

Offset	Size	Description

 00h 12 BYTEs	reserved

 0Ch	WORD	1A00h (verb "CONVERT")

 0Eh  6 BYTEs	00h

 14h	DWORD	(big-endian) return code

 18h	BYTE	conversion

00h ASCII to EBCDIC

01h EBCDIC to ASCII

 19h	BYTE	character set

00h AE

01h A

02h G

 1Ah	WORD	length of string to convert

 1Ch	DWORD	pointer to source

 20h	DWORD	pointer to target

INT 68 FB--


68 FE-- Bitfields for trace destinations:

Copy to Main

Table 2313

Bitfields for trace destinations:

Bit(s)	Description

 0	storage (DS:DX -> trace stats record)

 1	display

 2	file (trace written to file OUTPUT.PC)

 3	printer

INT 68 FE--


68 FE-- Format of APPC/PC Trace Statistics Record:

Copy to Main

Table 2314

Format of APPC/PC Trace Statistics Record:

Offset	Size	Description

 00h	DWORD	pointer to storage trace buffer

 04h	WORD	max number of 80-byte records in trace

 06h	WORD	(high-order byte first!) current record number (must init to 0)

 08h	DWORD	(high-order byte first!) number of records written (init to 0)

 0Ch	DWORD	reserved

Note:	do not move record while trace is active

INT 68 FE--


69 0103 Bitfields for DECnet DOS CTERM status flags:

Copy to Main

Table 2315

Bitfields for DECnet DOS CTERM status flags:

Bit(s)	Description

 7	session has been aborted

 6	DECnet error

 1	trace data available

 0	receive data available

INT 69 0103


69 0103 Values for reason code:

Copy to Main

Table 2316

Values for reason code:

 00h	normal disconnect

 01h	unknown message from host

 02h	protocol violation from host

 03h	could not process the initiate message

 04h	error receiving message from host

 05h	error sending message to host

 06h	error checking for message from host

 07h	remote system does not support CTERM

 08h	remote system does not support correct protocol version

 09h	did not receive BIND message from host

 0Ah	could not send BIND message to host

 0Bh	no more sessions available

 0Ch	session does not exist

 0Dh	not enough memory to complete operation

 0Eh	connection has broken

Index:	error codes;DECnet DOS CTERM|DECnet DOS CTERM;error codes

INT 69 0103


69 0A-- Values for DECnet DOS Data Link Layer function:

Copy to Main

Table 2317

Values for DECnet DOS Data Link Layer function:

 00h	initialize

 01h	open portal

 02h	close portal

 03h	enable multicast address

 04h	disable multicast address

 05h	transmit

 06h	request transmit buffer

 07h	deallocate transmit buffer

 08h	read channel status

 09h	read datalink portal list

 0Ah	read information about a datalink portal

 0Bh	read and/or clear counters

 0Ch	request to boot from a network server

 0Dh	enable Ethernet channel

 0Eh	disable Ethernet channel

 0Fh	start MOP/send a System ID message

 10h	stop MOP

 11h	get DECPARM

 12h	set DECPARM

 13h	external loopback

INT 69 0A--


69 0A-- Values for DECnet DOS Data Link Layer status:

Copy to Main

Table 2318

Values for DECnet DOS Data Link Layer status:

 00h	successful

 01h	hardware failed to initialize

 02h	channel state was not off (must be off to execute that command)

 03h	channel state is off (must be on to execute that command)

 04h	address not set

 05h	hardware missing

 06h	buffer too small

 07h	no more buffers available

 08h	no more resources available

 09h	promiscuous receiver active

 0Ah	non exclusive

 0Bh	unrecognized portal

 0Ch	protocol type in use

 0Dh	not a valid Multicast address

 0Eh	outstanding calls

 0Fh	hardware doesn't support receiving bad frames

 10h	none outstanding

 11h	no events

 12h	broken

 13h	buffer quota exceeded

 14h	already initialized

 15h	loopback failure

Index:	error codes;DECnet DOS|DECnet DOS;error codes

INT 69 0A--


69 0A-- Format of Datalink Communication Block:

Copy to Main

Table 2319

Format of Datalink Communication Block:

Offset	Size	Description

 00h	WORD	portal ID

 02h  6 BYTEs	source address

 08h  6 BYTEs	destination address

 0Eh	DWORD	buffer pointer

 12h	WORD	buffer length

 14h	WORD	operation

 16h	BYTE	pad flag (used on open)

00h no pad

01h pad

 17h	BYTE	mode flag (used on open)

00h 802.3

01h Ethernet

02h promiscuous

 18h	DWORD	line status change function

 1Ch	DWORD	received data function

 20h	DWORD	transmitted data function

 24h	BYTE	maximum outstanding transmits/receives

 25h  2 BYTEs	protocol type

 27h	WORD	buffers lost

INT 69 0A--


6A ---- Format of DECnet DOS signature area:

Copy to Main

Table 2320

Format of DECnet DOS signature area:

Offset	Size	Description

 -5	BYTE	major version number

 -4	BYTE	minor version number

 -3   3 BYTEs	signature (ASCII "LAT")

INT 6A ----


6A 0001 Values for Super-TCP function status:

Copy to Main

Table 2321

Values for Super-TCP function status:

 0000h	successful

 0005h	unsupported function

 000Ah	out of memory

INT 6A 0001


6A 0001 Format of record1:

Copy to Main

Table 2322

Format of record1:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	WORD	size of ES:DI buffer

 06h 18 BYTEs	???

INT 6A 0001


6A 0001 Format of record2:

Copy to Main

Table 2323

Format of record2:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	WORD	size of ES:DI buffer

 06h 12 BYTEs	???

INT 6A 0001


6A 0001 Format of record3:

Copy to Main

Table 2324

Format of record3:

Offset	Size	Description

 00h  2 BYTEs	???

 02h	WORD	???

 04h	WORD	size of ES:DI buffer

 06h	WORD	???

 08h	WORD	operation number (for function 0401h)

 0Ah	DWORD	-> ???

 0Eh	WORD	(ret) ???

 10h 12 BYTEs	???

INT 6A 0001


6A 0001 Format of record4:

Copy to Main

Table 2325

Format of record4:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	WORD	size of ES:DI buffer

 06h 14 BYTEs	???

INT 6A 0001


6A 0001 Format of record5:

Copy to Main

Table 2326

Format of record5:

Offset	Size	Description

 00h	BYTE	operation??? (00h-07h)

 01h	BYTE	???

 02h	WORD	(ret) ???

 04h	DWORD	-> ???

 08h  4 BYTEs	???

 0Ch	DWORD	-> ??? or 0000h:0000h

 10h 16 BYTEs	???

 20h	DWORD	???

 24h  4 BYTEs	???

INT 6A 0001


6A 0001 Format of record6:

Copy to Main

Table 2327

Format of record6:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	WORD	size of ES:DI buffer

 06h 14 BYTEs	???

INT 6A 0001


6A 0001 Format of record7:

Copy to Main

Table 2328

Format of record7:

Offset	Size	Description

 00h	WORD	???

 02h	WORD	???

 04h	WORD	???

 06h 40 BYTEs	???

INT 6A 0001


6A 0001 Format of record8:

Copy to Main

Table 2329

Format of record8:

Offset	Size	Description

 00h  4 BYTEs	???

 04h	WORD	size of ES:DI buffer

 06h  6 BYTEs	???

 0Ch	WORD	(ret) ???

 0Eh	WORD	operation??? (01h-03h)

 10h 12 BYTEs	???

INT 6A 0001


6A 0003 Format of Super-TCP data area:

Copy to Main

Table 2330

Format of Super-TCP data area:

Offset	Size	Description

 00h  2 BYTEs	???

 02h	DWORD	original INT 6A vector

 06h  2 BYTEs	???

 08h 96 BYTEs	array of 16 6-byte ???

 68h	WORD	number of elements of above array in use

 6Ah	WORD	???

???

INT 6A 0003


6A 03-- Bitfields for DECnet DOS LAT status flags:

Copy to Main

Table 2331

Bitfields for DECnet DOS LAT status flags:

Bit(s)	Description

 5	transmit buffer empty

 3	session in start state

 2	session not active

 1	unable to queue transmit data

 0	receive data available

INT 6A 03--


6A D0-- Format of LAT Session Control Block:

Copy to Main

Table 2332

Format of LAT Session Control Block:

Offset	Size	Description

 00h 18 BYTEs	service name

 12h 18 BYTEs	node name (future use)

 24h 18 BYTEs	port name (future use)

 36h	DWORD	-> session stopped post routine

 3Ah	DWORD	-> service table overflow post routine

 3Eh	DWORD	-> transmit post routine

 42h	DWORD	-> receive post routine

 46h	WORD	session status

04h circuit failure

08h stop slot received

---LAT v???---

 48h	WORD	slot state (LAT driver use)

 4Ah	WORD	local credits (LAT driver use)

 4Ch	DWORD	-> VCB (LAT driver use)

 50h	WORD	backward slot (LAT driver use)

 52h	WORD	forward slot (LAT driver use)

 54h	WORD	remote slot ID (LAT driver use)

 56h	WORD	local slot ID (LAT driver use)

 58h	WORD	slot byte count (LAT driver use)

 5Ah	BYTE	remote credits (LAT driver use)

 5Bh 255 BYTEs	transmitted data slot

15Ah	BYTE	number of receive data slots (4 recommended)

15Bh	BYTE	number of occupied slots

15Ch	BYTE	index of next receive slot to use

15Dh	BYTE	index of current receive slot

15Eh	WORD	pointer to first received character

160h  N WORDs	pointers to receive slots (buffers); each is 259 bytes

     259N BYTEs	buffers

Note:	set post routines to 0000h:0000h if polled operation will be used

---LAT v4.1.17---

 48h	WORD	session state (LAT driver use)

 4Ah	BYTE	local credits (LAT driver use)

 4Bh	DWORD	-> VCB (LAT driver use)

 4Fh	WORD	backward slot (LAT driver use)

 51h	WORD	forward slot (LAT driver use)

 53h	BYTE	remote slot ID (LAT driver use)

 54h	BYTE	local slot ID (LAT driver use)

 55h	BYTE	slot byte count (LAT driver use)

 56h	BYTE	remote credits (LAT driver use)

 57h 255 BYTEs	transmitted data slot

156h	BYTE	number of receive data slots (4 recommended)

157h	BYTE	number of occupied slots

158h	BYTE	index of next receive slot to use

159h	BYTE	index of current receive slot

15Ah	WORD	pointer to first received character

15Ch  N WORDs	pointers to receive slots (buffers); each is 259 bytes

     259N BYTEs	buffers

Note:	set post routines to 0000h:0000h if polled operation will be used

INT 6A D0--


6A D000 Values for DECnet DOS LAT function status:

Copy to Main

Table 2333

Values for DECnet DOS LAT function status:

 0000h	successful

 0001h	no such session

 0002h	session not running, try again later

INT 6A D000


6B ---- Format of DECnet DOS signature area:

Copy to Main

Table 2334

Format of DECnet DOS signature area:

Offset	Size	Description

 -5	BYTE	major version number

 -4	BYTE	minor version number

 -3   3 BYTEs	signature (ASCII "PDV")

INT 6B ----


6B 15-- Format of virtual circuit configuration:

Copy to Main

Table 2335

Format of virtual circuit configuration:

Offset	Size	Description

 00h	WORD	buffer length

 02h	WORD	port ID

 04h	WORD	receive rate

 06h	WORD	receive word length

 08h	WORD	receive stop bits

 0Ah	WORD	receive parity

 0Ch	WORD	transmit rate

 0Eh	WORD	transmit word length

 10h	WORD	transmit stop bits

 12h	WORD	transmit parity

 14h	WORD	DTR

 16h	WORD	RTS

INT 6B 15--


6B 21-- Format of NCSI service name structure:

Copy to Main

Table 2336

Format of NCSI service name structure:

Offset	Size	Description

 00h	WORD	buffer length

 02h  8 BYTEs	service name

 0Ah  8 BYTEs	general name

 12h  8 BYTEs	specific name

 1Ah  4 BYTEs	???

---Novell NASI v3.0+ ---

 1Eh	BYTE	port number

 1Fh	BYTE	port status

00h idle (available)

01h allocated (available)

02h connected

03h on hold

INT 6B 21--


6C ---- Format of DECnet DOS signature area:

Copy to Main

Table 2337

Format of DECnet DOS signature area:

Offset	Size	Description

 -5	BYTE	major version number

 -4	BYTE	minor version number

 -3   3 BYTEs	signature (ASCII "SCH")

INT 6C ----


6D ---- Format of DECnet DOS signature area:

Copy to Main

Table 2338

Format of DECnet DOS signature area:

Offset	Size	Description

 -5	BYTE	major version number

 -4	BYTE	minor version number

 -3   3 BYTEs	signature (ASCII "DLL")

INT 6D ----


6E ---- Format of DECnet DOS signature area:

Copy to Main

Table 2339

Format of DECnet DOS signature area:

Offset	Size	Description

 -5	BYTE	major version number

 -4	BYTE	minor version number

 -3   3 BYTEs	signature (ASCII "DNP")

INT 6E ----


6F ---- Bitfields for PCOX status word:

Copy to Main

Table 2340

Bitfields for PCOX status word:

Bit(s)	Description

 0,1	cursor type

 2	cursor inhibited

 3	display inhibited

 4	feature step inhibited

 5	480-character format code

 6,7	unused

 8-10	model number (2-5)

 11	unit has been reset by controller (cleared after status returned)

 12	buffer has been written into (cleared after status returned)

 13	alarm has been sounded (cleared after status returned)

 14-15	monitor type (01 mono, 10 color, 11 hybrid)

INT 6F ----


6F 00-- Format of 10NET login record:

Copy to Main

Table 2341

Format of 10NET login record:

Offset	Size	Description

 00h  8 BYTEs	user name

 08h  8 BYTEs	password

 10h 12 BYTEs	name of SuperStation

INT 6F 00--


6F 00-- Values for 10NET status:

Copy to Main

Table 2342

Values for 10NET status:

 0000h	successful

 01FFh	"RTO_NERR" transmit interrupt lost (time out on response)

 02FFh	"NET_NERR" network (hardware) error

 03FFh	"PAS_NERR" invalid password

 04FFh	"LRN_NERR" local resource not available

 05FFh	"SRN_NERR" server resource not available

 06FFh	"LNM_NERR" already logged in under different name

 07FFh	"LSF_NERR" login security failure (node)

 08FFh	"NLI_NERR" not logged in

 09FFh	"DIVZ_NERR" position calc error

 0AFFh	"NT1_NERR" receive subfunction not = send subfunction (i.e. read,write)

 0BFFh	"RFNC_NERR" request function not in range

 0CFFh	"NSFH_NERR" no more server file handle entries left

 0DFFh	"NFTAB_NERR" no more shared file table entries left

 0EFFh	"NUFH_NERR" no more user file handle entries left

 0FFFh	"CHAT_NERR" chat permit not on

 10FFh	"NSRV_NERR" not a server on request

 11FFh	"NOBD_NERR" no transporter board error

 12FFh	"STO_NERR" time out on send

 13FFh	"INF_NERR" item not found (spool item not on queue)

 14FFh	"DACS_NERR" DOS access incompatible

 15FFh	"RLOCK_NERR" record already locked

 16FFh	"IVP_NERR" invalid parameter

 17FFh	"RLTO_NERR" record lock time out error

 18FFh	"CSPL_NERR" currently spooling to named device

 19FFh	"DRP_NERR" dropped receive message (throttle)

 1AFFh	"SOPV_NERR" open sharing violation

 1BFFh	"NTUF_NERR" no more tuf entries left

 1CFFh	"NOWN_NERR" not file owner on open

 1DFFh	"RSEC_NERR" read security not passed

 1EFFh	"WSEC_NERR" write security not passed

 1FFFh	"GSEC_NERR" group security not passed

 20FFh	"SEC1_NERR" security file failure

 21FFh	"ACT1_NERR" activity file failure

 22FFh	"SPL1_NERR" spool control file failure

 23FFh	"NMT_NERR" device not mounted (spooling)

 24FFh	"RSPL_NERR" spool file has not been terminated

 25FFh	"DNSH_NERR" device not mounted or is not being shared

 26FFh	"DUP_NERR" duplicate node ID

 27FFh	"FNF_NERR" file not found error

 28FFh	"NMF_NERR" no more files

 29FFh	"UN_NERR" unknown internal system error

 2AFFh	"QCP_NERR" print queue is full or corrupted

 2BFFh	"IFNC_NERR" invalid function

 2CFFh	"IVH_NERR" invalid handle

 2DFFh	"TOF_NERR" too many files opened

 2EFFh	"PNF_NERR" path not found

 2FFFh	"SACT_NERR" named file is active

---10NET v5.0+ ---

 30FFh	"NAK_NERR" received NAK on send (destination out of buffers)

 31FFh	"RENT_NERR" reentrancy in driver F_SEND

 32FFh	"RECV_NERR" driver could not be put in receive mode

 33FFh	"NRLT_NERR" no more RLTAB entries left

 34FFh	"DIAL_NERR" function requires an unsupported dialect

 35FFh	"IVD_NERR" invalid device

 36FFh	"NALV_NERR" netname access level violated

 37FFh	"NPIDNF_NERR" network path not found

 38FFh	"SP_NERR" server is paused

 39FFh	"TMNM_NERR" too many remote user names

 3AFFh	"DUPD_NERR" duplicate network device

 3BFFh	"DIU_NERR" shared device in use, can't delete

 3CFFh	"NNWD_NERR" network name was deleted

 3DFFh	"NPFS_NERR" not enough space for print file

 3EFFh	"NNNF_NERR" network name not found (can't find the call name)

 3FFFh	"NB_NERR" network busy

 40FFh	"NDNLE_NERR" network device no longer exists

 41FFh	"NBCLE_NERR" NetBIOS command limit exceeded

 42FFh	"FINT24_NERR" Fail on INT 24h

 43FFh	"PEXP_NERR" password expired

 44FFh	"NPUP_NERR" new password error

 45FFh	"MAXS_NERR" maximum allowed disk space exceeded

 46FFh	"TDOW_NERR" time-of-day/day-of-week error

SeeAlso: #2369

Index:	error codes;10Net|10Net;error codes

INT 6F 00--


6F 00-- Values for HP Vectra EX-BIOS driver ID:

Copy to Main

Table 2343

Values for HP Vectra EX-BIOS driver ID:

 0000h	V_SCOPY (null driver, but DS value points at system copyright string)

 0006h	V_DOLITTLE (null driver)

 000Ch	V_PNULL (null driver)

 0012h	V_SYSTEM

 0018h	reserved

 001Eh	V_S8259

 0024h	reserved

 002Ah	V_SINPUT

 0030h	reserved

 0036h	V_QWERTY (keyboard translator)

 003Ch	V_SOFTKEY (keyboard translator)

 0042h	V_FUNCTION (keyboard translator)

 0048h	V_NUMPAD (keyboard translator)

 004Eh	V_CCP (keyboard translator)

 0054h	V_SVIDEO

 005Ah	V_STRACK

 0060h	V_EVENT_TOUCH

 0066h	V_EVENT_TABLET

 006Ch	V_EVENT_POINTER

 0072h	reserved

 0078h	reserved

 007Eh	reserved

 0084h	reserved

 008Ah	V_CCPCUR (keyboard translator)

 0090h	V_RAW (keyboard translator)

 0096h	V_CCPNUM (keyboard translator)

 009Ch	V_OFF (keyboard translator)

 00A2h	V_CCPGID (translator: cursor control pad keys to GID data)

 00A8h	V_SKEY2FKEY (keyboard translator)

 00AEh	V_8041

 00B4h	V_PGID_CCP

 00BAh	C_LTABLET

 00C0h	V_LPOINTER (pointing device: mouse, etc.)

 00C6h	V_LTOUCH (touch screen)

 00CCh	V_LHPMOUSE

 00D2h	???

 ...

 0102h	???

 0108h	V_LNULL

 010Eh	reserved

 0114h	V_HPHIL

 011Ah-01C2h reserved

 016Eh	V_SCANDOOR (scancode management chip driver) (ES/QS/RS only)

 01C8h-0228h available

INT 6F 00--


6F 00-- Values for HP Vectra EX-BIOS ISR data type:

Copy to Main

Table 2344

Values for HP Vectra EX-BIOS ISR data type:

 00h	reserved "T_KC_R0"

 01h	reserved "T_KC_R1"

 02h	ASCII data

 03h	reserved "T_KC_R3"

 04h	HP150 keyboard (ITF) scancode

 05h	reserved "T_KC_R5"

 06h	device-definable type

 07h	HP Vectra keyboard set

 08h	IBM AT scancode set

 09h	button data

 0Ah	IBM PC scancode set

 0Bh	Softkey keypad (F1-F8)

 0Ch	function key keypad (F1-F10)

 0Dh	HP Cursor Control Pad keypad

 0Eh	Qwerty keypad

 0Fh	Numeric keypad

 1xh	bit 4 set: string of CX scancode of type 0xh at ES:SI

 2xh	bit 5 set: BH contains current keyboard state

 40h	signed 8-bit relative data

 41h	signed 16-bit relative data

 42h	unsigned 8-bit absolute data

 43h	unsigned 16-bit absolute data

 45h	specially-formed data (80x25) generated by V_LTOUCH

 46h	specially-formed data (640x200) generated by V_LTABLET

 47h	specially-formed data (640x200) generated by V_LPOINTER

INT 6F 00--


6F 00-- Bitfields for HP Vectra EX-BIOS keyboard state:

Copy to Main

Table 2345

Bitfields for HP Vectra EX-BIOS keyboard state:

Bit(s)	Description

 0	Alt pressed

 1	Left Shift pressed

 2	Right Shift pressed

 3	Ctrl pressed

 4	CapsLock active

 5	NumLock active

 6	Right unlabeled key pressed (some international keyboards)

 7	Left unlabeled key pressed (some international keyboards)

SeeAlso: #0442

INT 6F 00--


6F 00-- Values for HP Vectra EX-BIOS status:

Copy to Main

Table 2346

Values for HP Vectra EX-BIOS status:

 00h	successful

 02h	unsupported function

 04h	not serviced

 06h	done (no further processing should be performed on the ISR event)

 F2h	device is out of paper

 F4h	device is offline

 F6h	no more space for more drivers

 F8h	driver is busy

 FAh	bad parameter

 FEh	operation failed

Note:	status codes are always even; negative values (>= 80h) indicate errors

  while positive values indicate exceptional conditions

INT 6F 00--


6F 00-- Format of HP EX-BIOS driver header data:

Copy to Main

Table 2347

Format of HP EX-BIOS driver header data:

Offset	Size	Description

 00h	WORD	driver attributes (see #2348)

 02h	WORD	string index of driver's name

 04h	WORD	driver's default logical device vector (see #2343)

 06h	WORD	driver's parent class (bitset) (see #2349)

 08h	WORD	driver's child class (bitset)

 0Ah	WORD	driver's parent vector

 0Ch	WORD	driver's child vector

 0Eh	BYTE	major subaddress

 0Fh	BYTE	minor subaddress

Notes:	this structure is located at offset 0 in the driver's data segment,

  which in turn may be read from the HP_VECTOR_TABLE (see note in

  main entry)

only the first WORD is required, and everything from offset 6 onward

  is only required if the device wishes to perform device mapping

SeeAlso: #2350,#2351

INT 6F 00--


6F 00-- Bitfields for HP EX-BIOS driver header attributes:

Copy to Main

Table 2348

Bitfields for HP EX-BIOS driver header attributes:

Bit(s)	Description

 15	this is a complete driver header

 14	"ATR_DEVCFG" reserved

 13	driver can be mapped with the parent vector at offset 0Ah

 12	driver can be mapped with the child vector at offset 0Ch

 11-9	driver type

000 reserved vector

001 free vector

010 EX-BIOS service

011 logical driver (mapped from parent to child)

100 mappable driver (cannot be last in driver chain)

101 mappable driver that is last in driver chain

110 input driver (mappable)

111 reserved

 8	"ATR_STRING" reserved

 7	call SF_START whenever driver is remapped

 6-5	addressing requirements

00 no subaddresses required

01 requires major address be stored at offset 0Eh

10 requires minor address be stored at offset 0Fh

11 required major,minor, and mid addresses (minor in low nybble of

      offset 0Fh, mid address in high nybble of 0Fh)

 4	driver can be shared between several parent drivers

 3	driver can be shared between several child drivers

 2	this driver header is in ROM

 1	"ATR_YIELD" reserved

 0	reserved

SeeAlso: #2347,#2349

INT 6F 00--


6F 00-- Bitfields for HP EX-BIOS driver class:

Copy to Main

Table 2349

Bitfields for HP EX-BIOS driver class:

Bit(s)	Description

 15	maps F1 to F8 softkeys

 14	keyboard

 13	cursor pad

 12	console device

 11	serial output device (may be capable of limited input)

 10	"CL_COMM" reserved

 9	interfaces multiple resources transparent to operating system

 8	serial output device filter (can be mapped between logical and physical

  driver to perform translations)

 7	addressed block device

 6	priority boot device

 5	logical graphics input device

 4	physical graphics input device (can map to child of another driver)

 3	"CL_GID" can map to an event

 2	physical touch device

 1	reserved

 0	class extension bit

Note:	special values: FFFFh maps to all other devices (V_PNULL), and 0000h

  maps to no other driver

SeeAlso: #2347

INT 6F 00--


6F 00-- Format of HP EX-BIOS global data area:

Copy to Main

Table 2350

Format of HP EX-BIOS global data area:

Offset	Size	Description

 00h 20 BYTEs	reserved

 14h	BYTE	sound driver status

 15h	BYTE	number of pending key clicks (max 4) (see AH=34h/BP=0012h)

 16h	BYTE	current tick duration scaling factor

 17h	BYTE	current key click volume

 18h	WORD	current beep period (10 us increments) (see AH=3Ch/BP=0012h)

 1Ah	WORD	current beep duration (10 us increments)

 1Ch	BYTE	number of pending beep functions (max 4) (see AH=3Ah/BP=0012h)

 1Dh	BYTE	reserved

 1Eh	WORD	next unused string index number

 20h	...	reserved

SeeAlso: #2347

INT 6F 00--


6F 00-- Format of HP EX-BIOS Driver Describe Record:

Copy to Main

Table 2351

Format of HP EX-BIOS Driver Describe Record:

Offset	Size	Description

 00h 16 BYTEs	EX-BIOS driver header data (see #2347)

 10h	BYTE	device GID type

bits 7-4: device type

bits 3-0: physical device link address

 11h	BYTE	physical device ID (see #2353)

 12h	WORD	logical device status bits (see #2352)

 14h	BYTE	physical device vector number (driver ID / 6)

 15h	BYTE	maximum number of axes reported (0-2)

 16h	BYTE	device class

bits 7-4: current class

bits 3-0: default class

 17h	BYTE	number of buttons/prompts

bits 7-4: number of prompts

bits 3-0: number of buttons

 18h	BYTE	reserved

 19h	BYTE	(physical devices only) maximum output burst length

 1Ah	BYTE	(physical devices only) number of write registers

 1Bh	BYTE	(physical devices only) number of read registers

 1Ch	BYTE	button transition flags (bit 0 = button0, etc.)

 1Dh	BYTE	current button states (bit 0 = button0, etc.)

 1Eh	WORD	device resolution

 20h	WORD	maximum x-axis count

 22h	WORD	maximum y-axis count

 24h	WORD	X position data for absolute devices

 26h	WORD	Y position data for absolute devices

 28h	WORD	X delta for relative devices

 2Ah	WORD	Y delta for relative devices

 2Ch	WORD	(logical devices only) X-axis scaling accumulator

(fraction of one logical unit)

 2Eh	WORD	(logical devices only) Y-axis scaling accumulator

(fraction of one logical unit)

INT 6F 00--


6F 00-- Bitfields for HP logical device status flags:

Copy to Main

Table 2352

Bitfields for HP logical device status flags:

Bit(s)	Description

 15-5	reserved

 4	event enabled

 3	tracking enabled

 2	clipping enabled

 1	button error occurred

 0	interrupt in progress

SeeAlso: #2351

INT 6F 00--


6F 00-- Values for HP-HIL device ID:

Copy to Main

Table 2353

Values for HP-HIL device ID:

 00h-02h reserved

 03h	Swiss-French keyboard

 04h-06h reserved

 07h	Canadian-English keyboard

 08h-0Ah reserved

 0Bh	Italian keyboard

 0Ch	reserved

 0Dh	Dutch keyboard

 0Eh	Swedish keyboard

 0Fh	German keyboard

 10h-12h reserved

 13h	Spanish keyboard

 14h	reserved

 15h	Belgian (Flemish) keyboard

 16h	Finnish keyboard

 17h	UK keyboard

 18h	French-Canadian keyboard

 19h	Swiss-German keyboard

 1Ah	Nerwegian keyboard

 1Bh	Frensh keyboard

 1Ch	Danish keyboard

 1Dh	Katakana keyboard

 1Eh	Latin American-Spanish keyboard

 1Fh	US-American keyboard

 20h-2Bh reserved

 2Ch-2Fh tone generator

 30h-3Fh reserved

 40h-5Bh reserved (character entry)

 5Ch-5Fh barcode reader

 60h-67h reserved (relative positions)

 68h-6Bh mouse

 6Ch-6Fh trackball

 70h-7Fh reserved (relative positions)

 80h-87h reserved (absolute positions)

 88h-8Bh touchpad

 8Ch-8Fh touch screen

 90h-97h graphics tablet

 98h-9Fh reserved (absolute positions)

 A0h-BFh compressed keyboard (91-93 keys)

 C0h-DFh extended keyboard (107-109 keys)

 E0h-FFh standard keyboard (85-87 keys)

INT 6F 00--


6F 02-- Values for 10NET station type:

Copy to Main

Table 2354

Values for 10NET station type:

 00h	workstation

 01h	superstation

 02h	gateway station

 03h	gateway active

 04h	logged into multiple superstations

 05h	reserved

INT 6F 02--


6F 02-- Format of 10NET node status record:

Copy to Main

Table 2355

Format of 10NET node status record:

Offset	Size	Description

 00h  8 BYTEs	user name (0 if none)

 08h	BYTE	station type (see #2354)

 09h 24 BYTEs	list of superstations logged into more than one superstation

 21h 12 BYTEs	node ID

 2Dh	WORD	message count for this station (send for user node, receive for

  superstations)

---for superstations only---

 2Fh	WORD	drives allocated (bit 0=A:, bit 1=B:,...)

 31h	BYTE	user service flags (see #2356)

 32h	BYTE	printers allocated (bit 0=LPT1,...)

 33h	BYTE	number of unprinted spool files

 34h	BYTE	number of opened files

 35h	BYTE	number of logged on nodes

 36h	BYTE	primary drive (1=A:)

 37h	BYTE	reserved

 38h  N BYTEs	list of logged on node IDs (each 12 bytes, max 37 IDs)

1F4h  3 BYTEs	time: sec/min/hrs

1F7h  3 BYTEs	date: day/mon/year-1980

INT 6F 02--


6F 02-- Bitfields for 10NET user service flags:

Copy to Main

Table 2356

Bitfields for 10NET user service flags:

Bit(s)	Description

 7	gate

 6	print permit on

 4	SUBMIT is on

 3	mail waiting for node

 2	calendar waiting for you

 1	news waiting for you

 0	mail waiting for you

INT 6F 02--


6F 0204 Bitfields for HP Vectra V_HPHIL driver state:

Copy to Main

Table 2357

Bitfields for HP Vectra V_HPHIL driver state:

Bit(s)	Description

 0	link configuration in progress

 1	reserved

 2	no devices attached

 3	general failure

 4,5	reserved

 6	HP-HIL driver open

 7	reserved

 8	link has been reconfigured

 9	error during output request

 10	reserved

 11	output request complete

 12	timeout

 13-15	reserved

INT 6F 0204


6F 03-- Format of 10NET configuration table:

Copy to Main

Table 2358

Format of 10NET configuration table:

Offset	Size	Description

-41	WORD	local device table address

-39	WORD	extended network error mapping table address

-37	WORD	shared device table address

-35	WORD	mounted device table address

-33	BYTE	receive buffer counter

-32	BYTE	collect buffer counter

-31	WORD	TUF address

-29	BYTE	enable flag

-28	BYTE	FCB keep flag

-27	WORD	reserved

---up to here, 10NET v3.3---

-25	WORD	count of dropped Send6F

-23	WORD	buffer start address

-21	WORD	comm driver base address

-19	WORD	send/receive retry count

-17	BYTE	number of 550ms loops before timeout

-16	WORD	UFH address

-14	WORD	CDIR address

-12	WORD	LTAB address

-10	WORD	SFH address

-8	WORD	FTAB address

-6	WORD	RLTAB address

-4	WORD	SMI address

-2	WORD	NTAB address

 00h	WORD	address of first CT_DRV

 02h	BYTE	number of DRV entries

 03h  8 BYTEs	login name

 0Bh 12 BYTEs	node ID (blank-padded)

 17h  6 BYTEs	node address

 1Dh	BYTE	flag

 1Eh	BYTE	CT_CFLG (chat permit)

bit 1: sound bell

bit 0: CHAT permit

 1Fh	BYTE	CT_PSFLG (see #2359)

 20h	BYTE	in 10Net flag

 21h	WORD	receive message count

 23h	WORD	send message count

 25h	WORD	retry count

 27h	WORD	failed count

 29h	WORD	driver errors

 2Bh	WORD	dropped responses/CHATs

 2Dh  9 BYTEs	LIST ID/NTAB address (3 entries--LPT1-3)

 36h  6 BYTEs	AUX ID/NTAB address (2 entries--COM1-2)

 3Ch	BYTE	active CB channel

 3Dh	BYTE	received 6F messages on queue

 3Eh  9 BYTEs	activity counters for channels 1-9

---beyond here, 10NET v3.3---

 47h	BYTE	bit 0: RS232 gate

bit 1: Send6F gate (user set)

 48h	DWORD	pointer into gate (user set)

 4Ch	DWORD	pointer into 10Net send

 50h  N WORDs	addresses of timer blocks

INT 6F 03--


6F 03-- Bitfields for CT_PSFLG:

Copy to Main

Table 2359

Bitfields for CT_PSFLG:

Bit(s)	Description

 5	PRINT permit

 4	KB initiated

 3	CHAT called FOXPTRM

 2	SUBMIT active

 1	SUBMIT received

 0	SUBMIT permit

INT 6F 03--


6F 04-- Format of 10NET send record:

Copy to Main

Table 2360

Format of 10NET send record:

Offset	Size	Description

 00h 12 BYTEs	receiving node's ID

if first byte has high-order bit set, message is directed to

  the CT_RGATE vector at the receiver

if second byte is 00h, first byte is taken as a CB

  channel number and delivered to all nodes on same channel

 0Ch	WORD	 length of data at DX

INT 6F 04--


6F 0402 Format of HP Vectra EX-BIOS driver link table:

Copy to Main

Table 2361

Format of HP Vectra EX-BIOS driver link table:

Offset	Size	Description

 00h	BYTE	vector number of HP-HIL device #1's child

 01h	BYTE	vector number of HP-HIL device #1's parent

...

 0Ch	BYTE	vector number of HP-HIL device #7's child

 0Dh	BYTE	vector number of HP-HIL device #7's parent

INT 6F 0402


6F 0408 Bitfields for HP Vectra V_HPHIL device address indicator:

Copy to Main

Table 2362

Bitfields for HP Vectra V_HPHIL device address indicator:

Bit(s)	Description

 15-14	reserved

 13	address in DH is valid (must be set, clear is reserved)

 12	valid value in DL

 11-0	reserved

INT 6F 0408


6F 05-- Format of 10NET receive buffer:

Copy to Main

Table 2363

Format of 10NET receive buffer:

Offset	Size	Description

 00h 12 BYTEs	sending node's ID

 0Ch	WORD	length of message

 0Eh  N BYTEs	message (maximum 1024 bytes)

INT 6F 05--


6F 08-- Format of HP Vectra HP-HIL physical device status table:

Copy to Main

Table 2364

Format of HP Vectra HP-HIL physical device status table:

Offset	Size	Description

 00h	BYTE	status for HP-HIL device #1

bit 0: device present

bits 7-2 reserved

 01h	BYTE	device ID for HP-HIL device #1

...

 0Ch	BYTE	status for HP-HIL device #7

 0Dh	BYTE	device ID for HP-HIL device #7

INT 6F 08--


6F 09-- Format of 10NET submit record:

Copy to Main

Table 2365

Format of 10NET submit record:

Offset	Size	Description

 00h 12 BYTEs	destination node ID (must be logged in)

 0Ch	WORD	length+2 of following 'command line' text

 0Eh  N BYTEs	command line text (<=100 bytes), system adds CR

INT 6F 09--


6F 0A-- Format of 10NET chat control parameters:

Copy to Main

Table 2366

Format of 10NET chat control parameters:

Offset	Size	Description

 00h  8 BYTEs	sender ID, defaults to node's userID if nulls

 08h  8 BYTEs	destination user ID, 'EVERYONE' may be used

 10h 12 BYTEs	destination node ID

INT 6F 0A--


6F 0A-- Format of 10NET chat message:

Copy to Main

Table 2367

Format of 10NET chat message:

Offset	Size	Description

 00h	WORD	length+2 of following text

 02h  N BYTEs	text, max 101 bytes

INT 6F 0A--


6F 0A-- Format of HP Vectra F_PUT_BLOCK/F_GET_BLOCK command block:

Copy to Main

Table 2368

Format of HP Vectra F_PUT_BLOCK/F_GET_BLOCK command block:

Offset	Size	Description

 00h	DWORD	data transfer address

 04h	WORD	number of blocks

 06h	DWORD	block address (some devices only use low word)

INT 6F 0A--


6F 0B-- Values for 10NET status:

Copy to Main

Table 2369

Values for 10NET status:

 00h	successful

 01h	semaphore currently locked

 02h	server not responding

 03h	invalid semaphore name

 04h	semaphore list is full

 05h	invalid drive ID

 06h	invalid Ethernet address

 07h	not logged in

 08h	write to network failed

 09h	semaphore already logged in this CPU

SeeAlso: #2342

Index:	error codes;10-Net|10-Net;error codes

INT 6F 0B--


6F 0D-- Format of station record:

Copy to Main

Table 2370

Format of station record:

Offset	Size	Description

 00h 12 BYTEs	node ID

 0Ch	BYTE	station flags (see #2371)

---if AL = 01h---

 0Dh	BYTE	version number

 0Eh	WORD	level number of 10Net software in responding node

---if AL = 02h---

 0Dh  8 BYTEs	user ID

 15h	BYTE	version number

 16h	WORD	level number

INT 6F 0D--


6F 0D-- Bitfields for station flags:

Copy to Main

Table 2371

Bitfields for station flags:

Bit(s)	Description

 1	workstation

 2	superstation

 3	xgate

 4	active gate

INT 6F 0D--


6F 0E-- Values for 10NET spooler operation code:

Copy to Main

Table 2372

Values for 10NET spooler operation code:

 0000h	initiate spool

 0001h	abort print

 0002h	close spool

 0003h	delete spool

 0004h	print

 0005h	get report info

 0006h	set chat template

 0007h	queue

 0008h	return queue

 0009h	queue non-spooled file for printing

INT 6F 0E--


6F 0E-- Format of 10NET Spool/Print record:

Copy to Main

Table 2373

Format of 10NET Spool/Print record:

Offset	Size	Description

 00h	WORD	operation code (see #2372)

 02h 11 BYTEs	file name in FCB format

---if operation code = 00h or 06h---

 0Dh	BYTE	notification flags (see #2374)

 0Eh	BYTE	days to keep (FFh=forever)

 0Fh	BYTE	bits 0,1: device (1=LPT1)

bits 4-7: remote drive to store spool file (1=A,...)

 10h	WORD	length of following data area

 12h  N BYTEs	up to 64 bytes of description

---if operation code = 03h---

 0Dh  8 BYTEs	user ID to associate with filename

---if operation code = 04h---

 0Dh	WORD	block number

 0Fh  8 BYTEs	user ID to associate with filename

---if operation code = 05h---

 0Dh	BYTE	RRN to start retrieve

 0Eh	BYTE	bits 0,1: local print device (LPTx)

bit 3: if set, return entries for all users

 0Fh	WORD	length of following area

 11h  N BYTEs	up to 1500 bytes to receive $SCNTL records returned

---if operation code = 07h---

 0Dh	BYTE	queue number

 0Eh	BYTE	bits 0,1: local print device (LPTx)

 0Fh	WORD	number of bytes of test print to be done

 11h	BYTE	code:

01h print device

02h test print count

03h prn

---if operation code = 08h---

 0Dh	BYTE	queue location or $SCNTL location to start access

returns next item for access:

    00h-7Fh queued items

    80h-FEh non-queued, non-printed items

    FFh	no more items

 0Eh	WORD	unused

 10h	WORD	length of following area

 12h  N BYTEs	up to 64 bytes to receive $SCNTL records (see #2375)

---if operation code = 09h---

 0Dh  3 BYTEs	unused

 10h  N BYTEs	path to non-spooled file to be queued for printing

INT 6F 0E--


6F 0E-- Bitfields for notification flags:

Copy to Main

Table 2374

Bitfields for notification flags:

Bit(s)	Description

 7	queue to top

 6	do ID page

 5	no form feed

 4	reserved

 3	explicit queuing only

 2	notify at print completion

 1	notify server operator, with reply

 0	notify at print start

INT 6F 0E--


6F 0E-- Format of 10NET $SCNTL record:

Copy to Main

Table 2375

Format of 10NET $SCNTL record:

Offset	Size	Description

 00h  8 BYTEs	user ID

 08h 11 BYTEs	filename in FCB format

 13h  6 BYTEs	node ID

 19h  3 BYTEs	creation date

 1Ch	BYTE	notification flags (see #2374)

 1Dh	BYTE	retention time in days

 1Eh	BYTE	printing device (LPTx)

 1Fh  3 BYTEs	date last printed (0 = never)

 22h	BYTE	device containing spoolfile

 23h	WORD	bytes to print for test print

 25h	WORD	block number to start print

 27h	BYTE	reserved

INT 6F 0E--


6F 1501 Format of 10NET shared device table entry:

Copy to Main

Table 2376

Format of 10NET shared device table entry:

Offset	Size	Description

 00h  8 BYTEs	device

 08h  8 BYTEs	alias

 10h 64 BYTEs	path

 50h  8 BYTEs	password

 58h	BYTE	access

 59h  4 BYTEs	mask

INT 6F 1501


6F 42-- Format of HP Vectra EX-BIOS bucket header:

Copy to Main

Table 2377

Format of HP Vectra EX-BIOS bucket header:

Offset	Size	Description

 00h	DWORD	pointer to next bucket header (FFFFh:FFFFh if last)

 04h	WORD	upper bound on string index

 06h	WORD	lower bound on string index

 08h	DWORD	pointer to array of string offset pointers

 0Ch	WORD	segment of strings

Note:	the strings pointed at by the offset pointers are byte-counted ASCIZ

  strings

INT 6F 42--


6F 80-- Format of 10NET login record:

Copy to Main

Table 2378

Format of 10NET login record:

Offset	Size	Description

 00h  8 BYTEs	user name

 08h  8 BYTEs	password

 10h 15 BYTEs	server node ID

 1Fh  8 BYTEs	new password

 27h	BYTE	invoke mode (00h command line, 01h interactive)

INT 6F 80--


6F 8A-- Format of 10NET chat parameters:

Copy to Main

Table 2379

Format of 10NET chat parameters:

Offset	Size	Description

 00h  8 BYTEs	sender's user name

 08h  8 BYTEs	destination user name

 10h 15 BYTEs	destination node (0 if broadcast-style chat)

INT 6F 8A--


6F 8A-- Format of 10NET chat message:

Copy to Main

Table 2380

Format of 10NET chat message:

Offset	Size	Description

 00h	WORD	message length

 02h  N BYTEs	chat message contents

INT 6F 8A--


6F 8D-- Bitfields for 10NET service mask:

Copy to Main

Table 2381

Bitfields for 10NET service mask:

Bit(s)	Description

 0	workstation

 1	file server

 2	print server

 3	de-spool server

INT 6F 8D--


6F 8D-- Format of 10NET Who data structure:

Copy to Main

Table 2382

Format of 10NET Who data structure:

Offset	Size	Description

 00h  8 BYTEs	user name

 08h 15 BYTEs	node ID

 17h  3 BYTEs	unique portion of Ethernet address

 1Ah	BYTE	Who group number

 1Bh	WORD	service mask (see #2381)

 1Dh	DWORD	serial number

 21h	BYTE	maximum concurrent users with same serial number allowed on net

 22h	BYTE	chat mask (see #2383)

 23h	BYTE	internal system bits (see #2384)

 24h  9 BYTEs	version number in format MM.mm.xxx

 2Dh	BYTE	number of shared directories

 2Eh	BYTE	number of shared printer queues

INT 6F 8D--


6F 8D-- Bitfields for 10NET chat mask:

Copy to Main

Table 2383

Bitfields for 10NET chat mask:

Bit(s)	Description

 0	chat permitted

 1	bell enabled

 2	chat keyboard initiated

 3	in INT 16 handler

 4	in Get Input

 5	display has timed out

 6	chat is idle

INT 6F 8D--


6F 8D-- Bitfields for 10NET internal system bits:

Copy to Main

Table 2384

Bitfields for 10NET internal system bits:

Bit(s)	Description

 0	submit permitted

 1	submit initiated

 2	submit executing

 3	internal client call/chat/spool/autospool

 4	in spool termination

 5	print permitted

 6	waiting for keyboard input

INT 6F 8D--


6F 9501 Format of 10NET shared device structure:

Copy to Main

Table 2385

Format of 10NET shared device structure:

Offset	Size	Description

 00h  8 BYTEs	alias

 08h	BYTE	type (02h modem, 03h print queue, 04h directory)

 09h	BYTE	access rights

bit 0: read

bit 1: write

bit 2: create

 0Ah  8 BYTEs	password

 12h 32 BYTEs	comment

---directory---

 32h 64 BYTEs	pathname of shared directory

---print queue---

 32h	BYTE	notification bit mask (see #2386)

 33h	BYTE	job control bit mask (see #2387)

 34h	WORD	number of days to retain file

 36h	WORD	test print length

 38h	BYTE	number of copies to print

 39h	BYTE	compression algorithm

 3Ah	BYTE	tab width (00h = don't expand)

 3Bh	BYTE	priority

 3Ch	WORD	time to open queue (FFFFh = always)

 3Eh	WORD	time to close queue

 40h	WORD	pause following queue switch, in clock ticks

 42h	WORD	pause between print jobs, in clock ticks

 44h	BYTE	associate queue file existence mask

bit 0: queue switch file exists

bit 1: initiate file exists

bit 2: abort file exists

 45h  6 BYTEs	character sequence for page eject

 4Bh	BYTE	status of print queue

bit 0: queue is closed

 4Ch	WORD	number of jobs on queue

 4Eh	WORD	offset of next print job to be dispatched (FFFFh = none)

 50h	BYTE	number of print devices in printer pool

 51h	WORD	offset of first print device structure (FFFFh if empty)

INT 6F 9501


6F 9501 Bitfields for notification flags:

Copy to Main

Table 2386

Bitfields for notification flags:

Bit(s)	Description

 0	user at print start

 1	operator at start, with reply

 2	user at print completion

 3	operator at completion, with reply

 4	user on queue switch

 5	operator on queue switch, with reply

 6	user on print error

INT 6F 9501


6F 9501 Bitfields for 10NET job control mask:

Copy to Main

Table 2387

Bitfields for 10NET job control mask:

Bit(s)	Description

 0	print banner page

 1	eject page at end of job

 2	mark as "held" (queue but don't print)

 3	rush job (queue at top)

 4	overwrite file with zeros before deletion

 5	hyperspool if possible

INT 6F 9501


78 00-- Values for TARGA.DEV error code:

Copy to Main

Table 2388

Values for TARGA.DEV error code:

 00h	illegal command given to SCSI code

 01h	invalid I/O port specified (must be from 100H to 3F8H, and must be on

  an 8-port boundary)

 02h	invalid DMA channel specified (must be from 1 to 3)

 03h	invalid SCSI board number specified (must be from 0 to 7)

 04h	error from data register test during self-test

 05h	SCSI input signals not all 0 when SCSI RST activated

 06h	SCSI input signals not all 0 before selecting a SCSI device

 07h	BSY signal is active; SCSI bus is busy

 08h	SCSI board not selected, BSY signal did not come on in response to

  raising SEL

 09h	time-out waiting for status state, signifying end of DMA transfer

INT 78 00--


78 --00 Values for HugeRealMode Server error code:

Copy to Main

Table 2721

Values for HugeRealMode Server error code:

 00h	successful

 01h	unknown function

 02h	A20 disabled

 03h	A20 enabled

 04h	memory allocation error

 05h	memory not fixeable (LOCK)

 06h	memory not deallocaable

 07h	memory not moveable (UNLOCK)

 08h	change in memory allocation size not possible

 09h	file error (with .XMF-file)

 0Ah	memory error (with .XMF-file)

 0Bh	unknown procedure (currently Turbo Pascal unit only)

INT 78 --00


78 --09 Format of .XMF program file header::

Copy to Main

Table 2723

Format of .XMF program file header::

Offset	Size	Description

 00h	DWORD	signature "XMF_"

 04h	WORD	length of programs code

 06h	WORD	count of 32bit addresses to relocate

 08h	WORD	offset to code start (releative to file start) (see #2724)

 0Ah	WORD	relocation table

Note:	each word contains a 16bit address, where a relocation has to be

  performed

INT 78 --09


78 --09 Format of .XMF-file code header::

Copy to Main

Table 2724

Format of .XMF-file code header::

Offset	Size	Description

 00h	WORD	count of exported functions

 02h  N PWORDs	48bit pointers (16bit segment+32bit offset) to each function

(16bit segment is always zero)

 var	start of program's code

SeeAlso: #2723

INT 78 --09


78 --0A Bitfields for HugeRealMode Server segment limits:

Copy to Main

Table 2722

Bitfields for HugeRealMode Server segment limits:

Bit(s)	Description

 7	CS size: 1=4GB, 0=64KB

 6-5	not used

 4	SS size: 1=4GB, 0=64KB

 3	GS size

 2	FS size

 1	ES size

 0	DS size

INT 78 --0A


78 10-- Format of SCSI Command:

Copy to Main

Table 2389

Format of SCSI Command:

Offset	Size	Description

 00h	BYTE	length of command

 01h	???	command bytes

INT 78 10--


78 11-- Format of TARGA.DEV SCSI Command:

Copy to Main

Table 2390

Format of TARGA.DEV SCSI Command:

Offset	Size	Description

 00h	BYTE	length of command

 01h	???	command bytes

INT 78 11--


78 12-- Format of TARGA.DEV SCSI Command:

Copy to Main

Table 2391

Format of TARGA.DEV SCSI Command:

Offset	Size	Description

 00h	BYTE	length of command

 01h	???	command bytes

INT 78 12--


78 13-- Format of TARGA.DEV SCSI Command:

Copy to Main

Table 2392

Format of TARGA.DEV SCSI Command:

Offset	Size	Description

 00h	BYTE	length of command

 01h	???	command bytes

INT 78 13--


78 14-- Format of TARGA.DEV SCSI Command:

Copy to Main

Table 2393

Format of TARGA.DEV SCSI Command:

Offset	Size	Description

 00h	BYTE	length of command

 01h	???	command bytes

INT 78 14--


7A ---- Values for IPX socket number:

Copy to Main

Table 2394

Values for IPX socket number:

 0451h	File Service (NetWare Core Protocol)

 0452h	Service Advertising Protocol (see #2402)

 0453h	Routing Information Packet (see #2405)

 0455h	NetBIOS Packet

 0456h	diagnostics

 0457h	server serial numbers (labeled "Copy Protection" by Lanalyzer)

 4000h-7FFFh used for dynamic allocation

 4444h	Brightwork Development's SiteLock server

 5555h	Brightwork Development's SiteLock client (workstation)

 8000h-FFFFh assigned by Novell

 869Ch	ID Software's DOOM

Note:	SiteLock is an application metering product using IPX to communicate

  between the application and the license server

INT 7A ----


7A ---- Format of IPX Event Control Block:

Copy to Main

Table 2395

Format of IPX Event Control Block:

Offset	Size	Description

 00h	DWORD	Link

 04h	DWORD	-> Event Service Routine (00000000h if none) (see #2399)

 08h	BYTE	in use flag (see #2397)

 09h	BYTE	completion code (see #2398)

 0Ah	WORD	(big-endian) socket number (see #2394)

 0Ch  4 BYTEs	IPX workspace

 10h 12 BYTEs	driver workspace

 1Ch  6 BYTEs	immediate local node address

 22h	WORD	fragment count

 24h	var	fragment descriptors

Offset	Size	Description

 00h	DWORD	-> fragment data

 04h	WORD	size of fragment in bytes.

Notes:	ESR is a far procedure that is called when the ECB has been handled.

  On call, the in use flag is zero if the ECB has been handled,

  non-zero otherwise. If the flag is zero, the completion code holds

  the result of the event.

the first fragment should start with an IPX header (see #2400)

all fragments are concatenated and sent in one piece

node address FFh FFh FFh FFh FFh FFh broadcasts to all nodes

SeeAlso: #2396

INT 7A ----


7A ---- Format of AES-ECB:

Copy to Main

Table 2396

Format of AES-ECB:

Offset	Size	Description

 00h	DWORD	Link

 04h	DWORD	ESR (Event Service Routine) address (see #2399)

 08h	BYTE	in use flag (see #2397)

 09h  5 BYTEs	AES workspace

SeeAlso: #2395

INT 7A ----


7A ---- Values for ECB in use flag:

Copy to Main

Table 2397

Values for ECB in use flag:

 00h	available

 E0h	AES temporary

 F6h	\ special IPX/SPX processing for v3.02+

 F7h	/

 F8h	IPX in critical section

 F9h	SPX listening

 FAh	processing

 FBh	holding

 FCh	AES waiting

 FDh	AES couting down delay time

 FEh	awaiting packet reception

 FFh	sending packet

SeeAlso: #2395,#2396,#2398

INT 7A ----


7A ---- Values for ECB completion code:

Copy to Main

Table 2398

Values for ECB completion code:

 00h	success

 ECh	remote terminated connection without acknowledging packet

 EDh	abnormal connection termination

 EEh	invalid connection ID

 EFh	SPX connection table full

 F9h	event should not be cancelled

 FAh	cannot establish connection with specified destination

 FCh	cancelled

 FDh	malformed packet

 FEh	packet undeliverable

 FFh	physical error

SeeAlso: #2395,#2397

INT 7A ----


7A ---- Values Event Service Routine is called with:

Copy to Main

Table 2399

Values Event Service Routine is called with:

AL = caller's identity (00h = AES, FFh = IPX)

ES:SI -> event control block

interrupts disabled

Return: all registers preserved

SeeAlso: #2395,#2400

INT 7A ----


7A ---- Format of IPX header:

Copy to Main

Table 2400

Format of IPX header:

Offset	Size	Description

 00h	WORD	(big-endian) checksum

 02h	WORD	(big-endian) length in bytes of total packet

 04h	BYTE	transport control

 05h	BYTE	packet type (see #2401)

 06h 10 BYTEs	destination internetwork address

 10h	WORD	(big-endian) destination socket

 12h 10 BYTEs	source internetwork address

 1Ch	WORD	(big-endian) source socket

SeeAlso: #2395,#2411

INT 7A ----


7A ---- Values for IPX packet type:

Copy to Main

Table 2401

Values for IPX packet type:

 00h	unknown packet type

 01h	routing information packet

 02h	echo packet

 03h	error packet

 04h	packet exchange packet (always use this one)

 05h	SPX packet (see #2411)

 11h	NetWare Core Protocol

 14h	Propagated Packet (for NetWare), NetBIOS name packet

 15h-1Eh experimental protocols

Note:	undocumented packet type 14h will cross up to 16 networks deep in

  all directions; as Aaron Martin of Origin Systems discovered, the

  first 64 bytes of the IPX data in such packets should be considered

  reserved, as IPX places the traversed server nodes there.

INT 7A ----


7A ---- Format of Service Advertising Protocol Service Query Packet:

Copy to Main

Table 2402

Format of Service Advertising Protocol Service Query Packet:

Offset	Size	Description

 00h 30 BYTEs	IPX header

 1Eh	WORD	(big-endian) query type

0001h general find service

0003h find nearest server

 20h	WORD	(big-endian) server type (see INT 21/AH=E3h"NetWare")

SeeAlso: #2403

INT 7A ----


7A ---- Format of Service Advertising Protocol Server Identification Packet:

Copy to Main

Table 2403

Format of Service Advertising Protocol Server Identification Packet:

Offset	Size	Description

 00h 30 BYTEs	IPX header

 1Eh	WORD	(big-endian) response type

0002h general service

0004h nearest service

 20h 64N BYTEs	server entries (1-7) (see #2404)

SeeAlso: #2402,#2405

INT 7A ----


7A ---- Format of SAP server entry:

Copy to Main

Table 2404

Format of SAP server entry:

Offset	Size	Description

 00h	WORD	(big-endian) server type (see INT 21/AH=E3h"NetWare")

 02h 48 BYTEs	ASCIZ server name

 32h  2 WORDs	(big-endian) network number

 34h  3 WORDs	(big-endian) node number

 3Ch	WORD	(big-endian) socket number

 3Eh	WORD	(big-endian) number of hops between caller and server

INT 7A ----


7A ---- Format of IPX Routing Information packet:

Copy to Main

Table 2405

Format of IPX Routing Information packet:

Offset	Size	Description

 00h 30 BYTEs	IPX header

 1Eh	WORD	operation (0001h request, 0002h response)

 20h 8N BYTEs	network entries (1-50) (see #2406)

SeeAlso: #2403

INT 7A ----


7A ---- Format of RIP network entry:

Copy to Main

Table 2406

Format of RIP network entry:

Offset	Size	Description

 00h	DWORD	network number (FFFFFFFFh = general request)

 04h	WORD	(response) number of hops

 06h	WORD	(response) number of clock ticks to reach destination

INT 7A ----


7A ---- Values for IPX return code:

Copy to Main

Table 2407

Values for IPX return code:

 00h	success

 F9h	event in use

 FCh	event cancelled

 FFh	unsuccessful, event not in use, or unrecognized ECB flag

INT 7A ----


7A ---- Format of IPX internetwork address:

Copy to Main

Table 2408

Format of IPX internetwork address:

Offset	Size	Description

 00h  4 BYTEs	(big-endian) network number

 04h  6 BYTEs	(big-endian) node number within network

INT 7A ----


7A ---- Format of IPX internetwork address:

Copy to Main

Table 2409

Format of IPX internetwork address:

Offset	Size	Description

 00h  4 BYTEs	(big-endian) destination network

 04h  6 BYTEs	(big-endian) destination node

 0Ah  2 BYTEs	(big-endian) destination socket

INT 7A ----


7A ---- Values for SPX function status:

Copy to Main

Table 2410

Values for SPX function status:

 00h	attempting to contact destination socket

 EEh	no such connection

 EFh	local connection table full

 FDh	buffer size not 42 or fragment count not 1

 FFh	sending socket not open

INT 7A ----


7A ---- Format of SPX header:

Copy to Main

Table 2411

Format of SPX header:

Offset	Size	Description

 00h	WORD	(big-endian) checksum

 02h	WORD	(big-endian) length in bytes of total packet

 04h	BYTE	transport control

 05h	BYTE	packet type (see #2401 at INT 7A/BX=0003h)

 06h 10 BYTEs	destination internet address

 10h	WORD	(big-endian) destination socket

 12h 10 BYTEs	source internet address

 1Ch	WORD	(big-endian) source socket

 1Eh	BYTE	connection control (see #2412)

 1Fh	BYTE	datastream type

FEh terminate connection request packet

FFh terminate connection acknowledgement packet

other user-defined, ignored by SPX

 20h	WORD	(big-endian) source connection ID

 22h	WORD	(big-endian) destination connection ID

 24h	WORD	(big-endian) sequence number

 26h	WORD	(big-endian) acknowledge number

 28h	WORD	(big-endian) allocation number

SeeAlso: #2400

INT 7A ----


7A ---- Bitfields for SPX connection control:

Copy to Main

Table 2412

Bitfields for SPX connection control:

Bit(s)	Description

 3-0	unused???

 4	end of message

 5	reserved

 6	acknowledgement required

 7	system packet

INT 7A ----


7A ---- Format of SPX status buffer:

Copy to Main

Table 2413

Format of SPX status buffer:

Offset	Size	Description

 00h	BYTE	connection state

01h waiting to establish connection

02h starting (attempting to create connection)

03h connection established

04h terminating

 01h	BYTE	watchdog flag

bit 0: used internally by SPX

bit 1: SPX watchdog is monitoring connection

bits 2-7 used internally by SPX

 02h	WORD	(big-endian) source connection ID

 04h	WORD	(big-endian) destination connection ID

 06h	WORD	(big-endian) sequence number of next packet sent

 08h	WORD	(big-endian) acknowledge number, expected sequence number of

  next received packet

 0Ah	WORD	(big-endian) maximum sequence number remote SPX may send

  without ACK from local SPX

 0Ch	WORD	(big-endian) remote acknowledge number, next sequence number

  remote SPX expects to receive

 0Eh	WORD	(big-endian) remote allocation number, maximum sequence number

  local SPX may send

 10h	WORD	(big-endian) connection socket

 12h  6 BYTEs	immediate node address--bridge on local network to destination

 18h 10 BYTEs	destination internetwork address (see #2409 at INT 7A/BX=000Bh)

 22h	WORD	(big-endian) retransmit count

 24h	WORD	(big-endian) estimated roundtrip delay

 26h	WORD	(big-endian) retransmitted packets

 28h	WORD	(big-endian) suppressed packets

 2Ah 12 BYTEs	??? (v2.15)

INT 7A ----


7A ---- Format of IPX diagnostic element:

Copy to Main

Table 2414

Format of IPX diagnostic element:

Offset	Size	Description

 00h	DWORD	pointer to next diagnostic element

 04h	DWORD	pointer to function for ???

 08h	DWORD	pointer to function for ???

INT 7A ----


7A ---- Call IPXODI entry point with:

Copy to Main

Table 2415

Call IPXODI entry point with:

ES:SI -> ECB??? (offset 24h is far pointer to ??? data)

INT 7A ----


7A ---- Call IPX Look-Ahead handler with:

Copy to Main

Table 2416

Call IPX Look-Ahead handler with:

AX = packet's destination socket

DS:SI -> look-ahead structure (see #1694 at INT 2F/AX=C000h"LSL")

DF clear

interrupt disabled (must remain disabled)

Return: AX = packet use

    0000h application want packet

ES:SI -> ODI ECB (see #1695 at INT 2F/AX=C000h"LSL")

    8001h application does not want packet

ZF set if AX=0000h

DS,DI,BP,SS,SP preserved

interrupts disabled

INT 7A ----


7A 0001 Call packet-mode entry point with:

Copy to Main

Table 2417

Call packet-mode entry point with:

STACK:	DWORD	pointer to request packet (see #2418)

WORD	length of packet

INT 7A 0001


7A 0001 Format of request packet:

Copy to Main

Table 2418

Format of request packet:

Offset	Size	Description

 00h	WORD	function number (00h-45h for Compaq VGADI41.EXE)

INT 7A 0001


7A 09-- Values for service:

Copy to Main

Table 2419

Values for service:

 01h	get session ID

 02h	get session info

 04h	dettach from session

 05h	attach to session

 06h	get list of windows available

 07h	get environment of window

 08h	get 'PIF' (program information file) info

 0Ah	get base window ID

 0Bh	get cursor info

INT 7A 09--


7A 09-- Values for 3270 Workstation Program keyboard service:

Copy to Main

Table 2420

Values for 3270 Workstation Program keyboard service:

 01h	connect to keyboard

 02h	disconnect from keyboard

 03h	read from keyboard

 04h	send keystroke to session

 05h	disable input

 06h	enable input

 07h	update status code

INT 7A 09--


7A 09-- Values for 3270 Workstation Program window service:

Copy to Main

Table 2421

Values for 3270 Workstation Program window service:

 01h	connect to WS control

 02h	disconnect from WS control

 03h	add a window

 04h	change window's position on screen

 05h	change window's size

 06h	change window's color

 07h	change window's position in the presentation space

 08h	hide/unhide toggle

 09h	enlarge/reduce toggle

 0Ah	change screen background color

 0Bh	get window's position on screen

 0Ch	get window's size

 0Dh	get window's color

 0Eh	get window's position in the presentation space

 0Fh	determine whether hidden

 10h	determine whether enlarged

 11h	get background color

 12h	get window names

 13h	delete all windows from profile

 14h	pick active window

 15h	redraw screen

 16h	redraw window

 17h	delete a window from profile

 18h	get active window

 19h	get active screen

 1Ah	get window data

 1Bh	change window data

 1Ch	select active screen

INT 7A 09--


7A 09-- Values for 3270 Workstation Program host service:

Copy to Main

Table 2422

Values for 3270 Workstation Program host service:

 01h	connect to host

 02h	disconnect from host

 03h	read DFT structured data from host

 04h	write DFT structured data to host

 05h	create a host buffer

INT 7A 09--


7A 81-- Values for 3270 Workstation Program gate name:

Copy to Main

Table 2423

Values for 3270 Workstation Program gate name:

 "SESSMGR "

 "KEYBOARD"

 "WSCTRL  "

 "MFIC	  "

 "PCPSM	  "

 "3270EML "

 "COPY	  "

 "XLATE	  "

 "OIAM	  "

 "MEMORY  "

 "INDJQRY "

 "INDJASY "

INT 7A 81--


7A FDCB Format of Personal Communications/3270 signature block:

Copy to Main

Table 2424

Format of Personal Communications/3270 signature block:

Offset	Size	Description

 04h	WORD	PCS/3270 signature (5741h)

 06h	WORD	version (0501h = PCS/3270 v1.0)

INT 7A FDCB


7B ---- Format of Btrieve parameter record:

Copy to Main

Table 2425

Format of Btrieve parameter record:

Offset	Size	Description

 00h	DWORD	pointer to data buffer

 04h	WORD	data buffer length

 06h	DWORD	pointer to 90-byte record containing positioning info

(should be same for all calls for same file)

 0Ah	DWORD	pointer to 38-byte FCB info buffer

(should be same for all calls for same file)

 0Eh	WORD	function code (see #2426)

 10h	DWORD	pointer to file name/key buffer

 14h	BYTE	key length

 15h	BYTE	key number

 16h	DWORD	pointer to status code (see #2427)

 1Ah	WORD	interface code (version specific)

6176h version 5.10

INT 7B ----


7B ---- Values for function code:

Copy to Main

Table 2426

Values for function code:

 00h	open

 01h	close

 02h	insert

 03h	update

 04h	delete

 05h	get_equal

 06h	get_next

 07h	get_prev

 08h	get_greater

 09h	get_gr_eql

 0Ah	get_less

 0Bh	get_less_eq

 0Ch	get_first

 0Dh	get_last

 0Eh	create

 0Fh	stat

 10h	extend

 11h	set_dir: set directory information

 12h	get_dir: get directory information

 13h	begin_trans

 14h	end_trans

 15h	abort_trans

 16h	get_pos: get record position number

 17h	get_direct: get data by sending record position

 18h	step_next

 19h	stop

 1Ah	version

 1Bh	unlock

 1Ch	reset

 1Dh	set owner

 1Eh	clear owner

 1Fh	create supplemental index

 20h	drop supplemental index

 21h	step first

 22h	step last

 23h	step previous

 24h	get next extended: get multiple records using a filter

 25h	get previous extended: get multiple records using a filter

 26h	step next extended: get multiple records using a filter

 27h	step previous extended: get multiple records using a filter

 28h	insert extended: insert one or more records

 31h	???

Notes:	add 50 (32h) to any "get" operation to just return the key data

add 100 (64h) for a single-record wait lock (automatically released

  on next get)

add 200 (C8h) for a single-record nowait lock (nowait lock returns

  error 54h or 55h if record already locked)

add 300 (12Ch) for a multiple-record wait lock (not released until

  unlock called)

add 400 (190h) for a multiple-record nowait lock (nowait lock returns

  error 54h or 55h if record already locked)

INT 7B ----


7B ---- Values for Btrieve status code:

Copy to Main

Table 2427

Values for Btrieve status code:

 00h	successful

 01h	invalid operation

 02h	I/O error

 03h	file not open

 04h	key value not found

 05h	duplicate key value

 06h	invalid key number

 07h	different key number

 08h	invalid positioning

 09h	end of file

 0Ah	modifiable key value error

 0Bh	invalid file name

 0Ch	file not found

 0Dh	extended file error

 0Eh	pre-image open error

 0Fh	pre-image I/O error

 10h	expansion error

 11h	close error

 12h	disk full

 13h	unrecoverable error

 14h	record manager inactive

 15h	key buffer too short

 16h	data buffer length overrun

 17h	position block length

 18h	page size error

 19h	create I/O error

 1Ah	number of keys

 1Bh	invalid key position

 1Ch	invalid record length

 1Dh	invalid key length

 1Eh	not a Btrieve file

 1Fh	file already extended

 20h	extended I/O error

 22h	invalid extension name

 23h	directory error

 24h	transaction error

 25h	transaction is active

 26h	transaction control file I/O error

 27h	end/abort transaction error

 28h	transaction max files

 29h	operation not allowed

 2Ah	incomplete accelerated access

 2Bh	invalid record address

 2Ch	null key path

 2Dh	inconsistent key flags

 2Eh	access to file denied

 2Fh	maximum open files

 30h	invalid alternate sequence definition

 31h	key type error

 32h	owner already set

 33h	invalid owner

 34h	error writing cache

 35h	invalid interface

 36h	variable page error

 37h	autoincrement error

 38h	incomplete index

 39h	expanded memory error

 3Ah	compression buffer too short

 3Bh	file already exists

 3Ch	reject count reached

 3Dh	work space too small

 3Eh	incorrect descriptor

 3Fh	invalid extended insert

 40h	filter limit reached

 41h	incorrect field offset

 4Ah	automatic transaction abort

 4Dh	Btrieve engine busy or resource locked by another user

 4Eh	deadlock detected

 50h	conflict

 51h	lock error

 52h	lost position

 53h	read outside transaction

 54h	record in use

 55h	file in use

 56h	file table full

 57h	handle table full

 58h	incompatible open mode

 5Ah	redirected device table full

 5Bh	server error

 5Ch	transaction table full

 5Dh	incompatible lock type

 5Eh	permission error

 5Fh	session no longer valid

 60h	communications environment error

 61h	data message too small

 62h	internal transaction error

INT 7B ----


7B ---- Values for Novell XQL function number:

Copy to Main

Table 2428

Values for Novell XQL function number:

 00h	log in

 01h	log out

 02h	"tNewFcn"

 03h	"tFreeFcn"

 04h	"tMoveFldFcn"

 05h	"tFieldFcn"

 06h	"tDescribeFcn"

 07h	"tFetchFcn"

 08h	"tComputeFcn"

 09h	"tOrderFcn"

 0Ah	"tRestrictFcn"

 0Bh	"tJoinFcn"

 0Ch	"tInsertFcn"

 0Dh	"tUpdateFcn"

 0Eh	"tUpdallFcn"

 0Fh	"tRemoveFcn"

 10h	"tRemallFcn"

 11h	"tResetFcn"

 12h	"tTransFcn"

 13h	"tStatFcn"

 14h	"tDDCreFcn"

 15h	"tStoreFcn"

 16h	"tRecallFcn"

 17h	"tStopFcn"

 18h	"tDDFileFcn"

 19h	"tDDFieldFcn"

 1Ah	"tDDIndexFcn"

 1Bh	"tDDModFcn"

 1Ch	"tDDViewFcn"

 1Dh	"tDDDrpFcn"

 1Eh	"tDDPathFcn"

 1Fh	"tDDAttrFcn"

 20h	"tDDFcn"

 21h	"tSecurFcn"

 22h	"tUserFcn"

 23h	"tAccessFcn"

 24h	"tPswdFcn"

 25h	"tCharFcn"

 26h	"tVersionFcn"

 27h	"tCnvFcn"

 28h	"tValFcn"

 29h	"tMaskFcn"

SeeAlso: #2429

INT 7B ----


7B ---- Format of XQL parameter block:

Copy to Main

Table 2429

Format of XQL parameter block:

Offset	Size	Description

 00h  4 BYTEs	signature "XQLP"

 04h	WORD	function number (see #2428)

 06h	WORD	handle

 08h	WORD	status

 0Ah	WORD	session ID

 0Ch	var	data record (varies by function)

---function 00h---

 0Ch	DWORD	-> user name

 10h	DWORD	-> password

 14h	DWORD	-> dictionary

 18h	DWORD	-> filepath

 1Ch	DWORD	-> machine name

 20h	WORD	process ID

---function 01h---

 no additional fields???

---function 02h---

 0Ch	DWORD	-> filename

 10h	DWORD	-> owner name

 14h	WORD	open mode

---function 03h---

 no additional fields???

---function 04h---

 0Ch	WORD	"frompos"

 0Eh	WORD	"topos"

---function 05h---

 0Ch	WORD	subfunction

 0Eh	WORD	position

 10h	WORD	count

 12h	DWORD	-> field list

---function 06h---

 0Ch	WORD	subfunction

 0Eh	WORD	length of description

 10h	WORD	position

 12h	WORD	count

 14h	DWORD	pointer to description list

---function 07h---

 0Ch	WORD	data length

 0Eh	WORD	"op"

 10h	DWORD	"select"

 14h	DWORD	"reject"

 18h	DWORD	pointer to data buffer

---function 08h---

 0Ch	DWORD	-> field name

 10h	WORD	field type

 12h	WORD	field size

 14h	WORD	"flddec"

 16h	WORD	"explen"

 18h	DWORD	pointer to "expbuf"

---function 09h---

 0Ch	WORD	count

 0Eh	DWORD	-> field list

---function 0Ah---

 0Ch	WORD	"newexp"

 0Eh	WORD	"explen"

 10h	DWORD	-> "expbuf"

---function 0Bh---

 0Ch	DWORD	-> filename

 10h	DWORD	-> owner name

 14h	WORD	type of join

 16h	WORD	"pCount"

 18h	DWORD	-> "pNames"

 1Ch	WORD	"sCount"

 1Eh	DWORD	-> "sNames"

---functions 0Ch, 0Dh, 0Fh---

 0Ch	WORD	file count

 0Eh	DWORD	-> file list

 12h	DWORD	count

 16h	DWORD	-> buffer

---function 0Eh---

 0Ch	WORD	file count

 0Eh	DWORD	-> file list

 12h	WORD	"op"

 14h	DWORD	"select"

 18h	DWORD	"reject"

 1Ch	WORD	count

 1Eh	DWORD	-> "res"

 22h	DWORD	-> "comp"

---function 10h---

 0Ch	WORD	file count

 0Eh	DWORD	-> file list

 12h	WORD	"op"

 14h	DWORD	"select"

 18h	DWORD	"reject"

---function 11h---

 0Ch	DWORD	machine name

---function 12h---

 0Ch	WORD	option

---function 13h---

 0Ch	WORD	subfunction

 0Eh	WORD	length of buffer

 10h	DWORD	-> buffer

---function 14h---

 0Ch	WORD	subfunction

 0Eh	DWORD	-> filename

 12h	WORD	"create"

 14h	DWORD	-> pathname

 18h	DWORD	-> owner name

 1Ch	WORD	owner access restrictions

 1Eh	WORD	number of fields

 20h	DWORD	-> field list

 24h	WORD	number of keys

 28h	DWORD	-> key list

 2Ch	WORD	"buflen"

 2Eh	DWORD	-> create parameters

---function 15h---

 0Ch	DWORD	-> "StoreName"

 10h	WORD	length of buffer

 12h	DWORD	-> buffer

---function 16h---

 0Ch	DWORD	-> "RecallName"

 10h	WORD	owner number

 12h	DWORD	-> owner list

 16h	WORD	open mode

 18h	WORD	length of buffer

 1Ah	DWORD	-> buffer

---function 17h---

 no additional fields???

---function 18h---

 0Ch	WORD	"rtype"

 0Eh	WORD	count

 10h	DWORD	-> "filebuf"

 14h	WORD	length of following buffer

 16h	DWORD	-> output buffer

---functions 19h, 1Ah---

 0Ch	WORD	"rtype"

 0Eh	WORD	count

 10h	DWORD	-> field buffer

 14h	WORD	length of following buffer

 16h	DWORD	-> output buffer

---function 1Bh---

 0Ch	WORD	subfunction

 0Eh	DWORD	-> filename

 12h	WORD	"create"

 14h	DWORD	-> pathname

 18h	DWORD	-> owner name

 1Ch	WORD	owner access restrictions

 1Eh	WORD	field count

 20h	DWORD	-> field list

 24h	WORD	number of keys

 26h	DWORD	-> list of keys

---function 1Ch---

 0Ch	WORD	count

 0Eh	DWORD	-> view name

 12h	WORD	length of following buffer

 14h	DWORD	-> output buffer

---function 1Dh---

 0Ch	DWORD	-> filename

 10h	WORD	file type

 12h	WORD	"deletepath"

---function 1Eh---

 0Ch	WORD	"dirtype"

 0Eh	DWORD	-> pathname

---function 1Fh---

 0Ch	WORD	function

 0Eh	DWORD	-> field name

 12h	WORD	attribute

 14h	WORD	size of buffer

 16h	DWORD	-> buffer for attributes

---function 20h---

 0Ch	DWORD	-> directory path

 10h	WORD	function

---function 21h---

 0Ch	DWORD	-> master password

 10h	WORD	"securityflag"

---function 22h---

 0Ch	DWORD	-> master password

 10h	WORD	function (add/modify/remove)

 12h	DWORD	-> user name

 16h	DWORD	-> password

 1Ah	WORD	global rights

 1Ch	WORD	count

 1Eh	WORD	length of following buffer

 20h	DWORD	-> "userbuf"

---function 23h---

 0Ch	DWORD	-> master password

 10h	DWORD	-> user name

 14h	WORD	function (allow/deny/getrights)

 16h	WORD	rights

 18h	DWORD	-> filename

 1Ch	WORD	number of field names in following buffer

 1Eh	DWORD	-> field names

 22h	WORD	maximum buffer length

 24h	DWORD	-> output buffer

---function 24h---

 0Ch	DWORD	-> user name

 10h	DWORD	-> password

---function 25h---

 0Ch	WORD	"charFcn"

 0Eh	WORD	"charType"

 10h	WORD	"charValue"

---function 26h---

 0Ch	DWORD	-> buffer

---function 27h---

 0Ch	WORD	option

 0Eh	WORD	type

 10h	WORD	size

 12h	WORD	"dec"

 14h	WORD	"dsize"

 16h	DWORD	-> value

 1Ah	DWORD	-> "retval"

 1Eh	DWORD	-> mask

 22h	WORD	"justify"

---function 28h---

 0Ch	DWORD	-> field name

 10h	WORD	length of buffer

 12h	DWORD	-> buffer for data

---function 29h---

 0Ch	WORD	option

 0Eh	WORD	type

 10h	WORD	size

 12h	WORD	"dec"

 14h	WORD	length of mask

 16h	DWORD	-> mask

INT 7B ----


7C 0000 Values for SK-UPPS Data Link Interface OEM signature (defined by SK):

Copy to Main

Table 2430

Values for SK-UPPS Data Link Interface OEM signature (defined by SK):

 0001h	experimental

 3343h	('3C')	3COM

 4942h	('IB')	IBM

 4943h	('IC')	Intellicom

 494Eh	('IN')	Intel

 4B4Fh	('KO')	Kodiak

 4D41h	('MA')	Madge

 4E45h	('NE')	Novell

 4F43h	('OC')	Olicom

 5349h	('SI')	Siemens

 534Bh	('SK')	Schneider & Koch (SysKonnect)

 5744h	('WD')	Western Digital

INT 7C 0000


7C 0001 Values for SK-UPPS completion code:

Copy to Main

Table 2431

Values for SK-UPPS completion code:

 0000h	SUCCESS

 0005h	INVALID_MULTICAST

 0006h	BUFFER_TOO_SMALL

 0007h	NO_BUFFERS_LEFT

 0008h	NO_RESOURCES_LEFT

 000Bh	ILLEGAL_PROTOCOL_ID

 000Ch	PROTOCOL_IN_USE

 000Dh	NO_MULTICAST_ADDRESS

 000Fh	PROTOCOLS_ACTIVE

 0010h	CLIENTS_ACTIVE

 001Bh	INVALID_MODE

 001Ch	MODE_NOT_SUPPORTED

 FFFFh	UNKNOWN_SERVICE

INT 7C 0001


7C 0004 Format of SK-UPPS Memory Buffer (Mbuf):

Copy to Main

Table 2432

Format of SK-UPPS Memory Buffer (Mbuf):

Offset	Size	Description

 00h	DWORD	-> NEXT Mbuf (linked list)

 04h	WORD	OFFSET of actual data within DATA area

 06h  2 BYTEs	reserved (currently unused)

 08h	WORD	LENGTH of actual data found in DATA area starting at OFFSET

 0Ah  2 BYTEs	reserved (currently unused)

 0Ch	DWORD	-> DATA area (size can be obtained via AX=000Eh call)

 10h	WORD	PROTOCOL ID of protocol currently "owning" the Mbuf

 12h	BYTE	IN USE flag; nonzero if Mbuf still in use by DLI (see AX=0006h)

 13h	BYTE	RECEIVE STATUS (bit 0-7 only; see AX=0007h - Receive Upcall)

INT 7C 0004


7C 0006 Values SK-UPPS Transmit Upcall is called with:

Copy to Main

Table 2433

Values SK-UPPS Transmit Upcall is called with:

ES:BX -> Mbuf (NEXT field destroyed)

interrupts disabled

Note:	On FDDI the bytes of the source and destination node fields in the MAC

  header have been bit-swapped to physical address format.

INT 7C 0006


7C 0007 Format of SK-UPPS Protocol Control Block (PCB):

Copy to Main

Table 2434

Format of SK-UPPS Protocol Control Block (PCB):

Offset	Size	Description

 00h	WORD	(big-endian) protocol type

 02h	WORD	protocol mode (see #2435)

 04h	DWORD	-> Receive Upcall routine (see #2436)

 08h	DWORD	-> Transmit Upcall routine

 0Ch	DWORD	-> Event Upcall routine (see #2438)

 10h	DWORD	-> ASCIZ protocol name (zero if none)

 14h	WORD	protocol ID will be returned here (always non-zero)

INT 7C 0007


7C 0007 Bitfields for SK-UPPS protocol mode:

Copy to Main

Table 2435

Bitfields for SK-UPPS protocol mode:

Bit(s)	Description

 0	promiscuous mode; protocol receives all frames regardless of their

  destination (PROTOCOL TYPE must be FFFFh)

 1	if set, protocol's Event Upcall will be called on entry and exit of the

  DLI's Interrupt Service Routine (see event codes below)

 2	DLI 2.2+ hook mode; protocol receives all directed frames destined for

  this station (PROTOCOL TYPE must be FFFFh)

 3	DLI 2.3+ receive error frames (only valid in promiscuous mode (0))

 4-5	DLI 2.5+ frame type:

00 Ethernet II; specify type code in PROTOCOL TYPE field (high-low)

01 IEEE 802.2; specify Service Access Point (SAP) in MSB

      (offset 0) of PROCOTOL TYPE field; LSB must be zero

10 IEEE 802.2 with SNAP header; specify type code in PROTOCOL TYPE

      field (high-low)

11 reserved (currently unused)

 6	DLI 2.5+ if set, protocol's Event Upcall will be called with event code

  EV_BUFFER_WANTED, when DLI runs out of Mbufs

 7	DLI 2.7+ chain mode; if set, client allows the specified frame type to

  be shared with other clients

 8	DLI 2.8+ receive non-LLC frames rather than LLC frames

 9	DLI 2.8+ receive all multicast frames (see also AX=0009h)

 10-15	reserved (currently unused; must be zero)

Notes:	If PROTOCOL TYPE is FFFFh and neither the "promiscuous" nor the "hook"

  mode is set, the protocol receives all frames that did not match

  any registered frame type (demultiplexor mode).

Protocols using "promiscuous", "hook" or "chain" mode should always

  return from the Receive Upcall with the received Mbuf in ES:BX and

  the Carry Flag set. The DLI will then pass the Mbuf to the FEED BACK

  BUFFER function (see AX=000Fh).

Some DLIs do not support all or even any of the "promiscuous",

  "receive non-LLC" and "receive all multicasts" mode bits.

INT 7C 0007


7C 0007 Values SK-UPPS Receive Upcall is called with:

Copy to Main

Table 2436

Values SK-UPPS Receive Upcall is called with:

 ES:BX -> Mbuf

 AX = receive status (see #2437) (also stored in Mbuf's RECEIVE STATUS field)

 interrupts disabled

INT 7C 0007


7C 0007 Bitfields for SK-UPPS receive status:

Copy to Main

Table 2437

Bitfields for SK-UPPS receive status:

Bit(s)	Description

 0-2	reserved (0), currently unused

 3	frame check sequence (FCS) error

 4	overflow (frame too long)

 5	framing error

 6	reserved (0), currently unused

 7	non-LLC frame (see 8 of PCB's protocol mode field)

 8-15	reserved (0), currently unused

Notes:	The protocol's Receive Upcall routine will be called whenever a frame

  matching the specified frame type is received. A received frame is

  passed to the protocol in the Mbuf's DATA area at OFFSET and its size

  is LENGTH bytes.

The receive status passed to the Receive Upcall in register AL is

  always zero, except for protocols using "non-LLC" mode (8 of PCB's

  protocol mode field) or "promiscuous" mode together with "receive

  error frames" (0 & 3).

Upcalls are FAR routines and must return with a RET FAR. If the Carry

  Flag is set on return from a Receive or Transmit Upcall, then ES:BX

  must point to an Mbuf, which the DLI will then pass to the RELEASE

  BUFFER function (see AX=0005h). See also notes for PROTOCOL MODE.

INT 7C 0007


7C 0007 Values SK-UPPS Event Upcall is called with:

Copy to Main

Table 2438

Values SK-UPPS Event Upcall is called with:

 AX = event code (see #2439)

Note:	All Event Upcalls may be ignored by the protocol.

INT 7C 0007


7C 0007 Values for SK-UPPS Event Upcall event code:

Copy to Main

Table 2439

Values for SK-UPPS Event Upcall event code:

 00h	EV_BUFFER_AVAILABLE client may now call REQUEST BUFFER (AX=0004h)

 01h	EV_ISR_START	    start of Interrupt Service Routine

 02h	EV_ISR_END	    end of ISR (see bit 1 in PCB's protocol mode field)

 03h	EV_BUFFER_WANTED    DLI temporarily out of Mbufs

 04h	EV_NETWORK_STATUS   DLI 2.8+ network status -- DX=status (see #2440)

 05h	EV_IO_CONTROL	    DLI 2.8+ I/O control -- DX=subfunc (see AX=0016h)

INT 7C 0007


7C 0007 Bitfields for EV_NETWORK_STATUS in register DX:

Copy to Main

Table 2440

Bitfields for EV_NETWORK_STATUS in register DX:

Bit(s)	Description

Token-Ring	FDDI

 15	SIGNAL_LOSS	SIGNAL_LOSS

 14	HARD_ERROR	HARD_ERROR

 13	SOFT_ERROR	SOFT_ERROR

 12	TRANSMIT_BEACON	TRANSMIT_BEACON

 11	LOBE_WIRE_FAULT	PATH_TEST_FAILED

 10	AUTO_REMOVAL	SELF_TEST_REQUIRED

 9	reserved	reserved

 8	REMOVE_RECEIVED	REMOTE_DISCONNECT

 7	COUNTER_OVERFLOW	reserved

 6	SINGLE_STATION	DUPLICATE_ADDRESS

 5	RING_RECOVERY	NO_RING_OP_STATUS

 4	reserved	VERSION_MISMATCH

 3	reserved	STUCK_BYPASS

 2	reserved	FDDI_EVENT

 1	reserved	RING_OP_CHANGE

 0	reserved	reserved

Note:	EV_NETWORK_STATUS is not supported on Ethernet

INT 7C 0007


7C 000C Format of SK-UPPS Protocol Status Block (PSB):

Copy to Main

Table 2441

Format of SK-UPPS Protocol Status Block (PSB):

Offset	Size	Description

 00h	DWORD	-> ASCIZ protocol name

 04h	WORD	protocol mode (see #2435)

 06h	WORD	protocol type (see AX=0007h)

 08h	WORD	number of registered multicasts (see AX=0009h,AX=0014h)

INT 7C 000C


7C 000D Format of SK-UPPS Statistics Data Block (SDB):

Copy to Main

Table 2442

Format of SK-UPPS Statistics Data Block (SDB):

Offset	Size	Description

 00h	DWORD	node uptime in ticks (1/18.21 sec.)

 04h	DWORD	bytes received

 08h	DWORD	bytes transmitted

 0Ch	DWORD	frames received

 10h	DWORD	frames transmitted

 14h	DWORD	multicast bytes received

 18h	DWORD	multicast frames received

 1Ch	DWORD	unrecognized frames

 20h	WORD	missed frames

 22h	WORD	frame check sequence (FCS) errors

 24h	WORD	framing errors

 26h	WORD	babbling errors

 28h	WORD	late collision errors

 2Ah	WORD	loss of carrier errors

 2Ch	WORD	16 retries failed errors

 2Eh	WORD	overflow errors

Note:	fields 26h through 2Ch are always zero, except in some very old

  versions of the DLI.	Use GET MEDIA STATISTICS (AX=0015h) to get

  more detailed information.

INT 7C 000D


7C 000E Format of SK-UPPS Driver Information Block (DIB):

Copy to Main

Table 2443

Format of SK-UPPS Driver Information Block (DIB):

Offset	Size	Description

 00h  6 BYTEs	physical node address (from adapter's ROM)

 06h  6 BYTEs	current node address (see AX=0003h)

 0Ch	BYTE	adapter id (defined by OEM)

 0Dh	BYTE	IRQ line (FFh if none)

 0Eh	DWORD	-> shared memory (zero if none)

 12h	DWORD	size of shared memory (zero if none)

 16h	WORD	base I/O port (zero if none)

 18h	BYTE	DMA line (FFh if none)

 19h	BYTE	DLI 2.4+ topology (see AX=0000h)

 1Ah	WORD	size of an Mbuf's DATA area (see #2432)

 1Ch  2 BYTEs	reserved (currently unused)

 1Eh	WORD	total number of Mbufs the DLI has

 20h	WORD	maximum number of Mbufs that can be allocated via REQUEST

  BUFFER (AX=0004h) and SYNC REQUEST BUFFER (AX=0012h)

 ---- end of Status Information Block returned by GET DRIVER STATUS (AX=0002h)

 22h	DWORD	-> ASCIZ adapter name

 26h	WORD	number of I/O ports used (zero if none)

 28h	DWORD	line speed in bits/sec.

INT 7C 000E


7C 0015 Format of SK-UPPS media-specific statistics for Ethernet:

Copy to Main

Table 2444

Format of SK-UPPS media-specific statistics for Ethernet:

Offset	Size	Description

 00h	DWORD	alignment errors

 04h	DWORD	frame check sequence (FCS) errors

 08h	DWORD	single collision frames

 0Ch	DWORD	multiple collision frames

 10h	DWORD	signal quality error (SQE) test errors

 14h	DWORD	deferred transmissions

 18h	DWORD	late collisions

 1Ch	DWORD	excessive collisions

 20h	DWORD	internal MAC transmit errors

 24h	DWORD	carrier sense errors

 28h	DWORD	excessive deferrals

 2Ch	DWORD	frame too longs

 30h	DWORD	in range length errors

 34h	DWORD	out of range length fields

 38h	DWORD	internal MAC receive errors

INT 7C 0015


7C 0015 Format of SK-UPPS media-specific statistics for FDDI:

Copy to Main

Table 2445

Format of SK-UPPS media-specific statistics for FDDI:

Offset	Size	Description

 00h	DWORD	SMT operating version id (refer to ANSI 7.1.2.2)

 04h	DWORD	SMT CF state: 1=Isolated, 2= Wrap_S, 3=Wrap_A, 4=Wrap_B,

  5=Wrap_AB, 6=Thru (refer to ANSI SMT 9.7.4.3)

 08h	DWORD	SMT frames sent

 0Ch	DWORD	SMT frames received

 10h	DWORD	SMT ring up count

 14h  6 BYTEs	MAC upstream neighbour

 1Ah  6 BYTEs	MAC downstream neighbour

 20h	DWORD	MAC frame counter (refer to ANSI MAC 2.2.1)

 24h	DWORD	MAC error counter ( " )

 28h	DWORD	MAC lost counter ( " )

 2Ch	BYTE	port 1 link error estimate (ranges from 10**-4 to 10**-15 and

  is reported as the absolute value of the exponent)

 2Dh	BYTE	port 2 link error estimate ( " )

 2Eh  2 BYTEs	reserved (currently unused)

 30h	DWORD	attachment class: 1=single-attachment (S PORT),

  2=dual-attachment (A/B PORT pairs), 3=concentrator (M PORTs)

 34h	DWORD	attachment optical bypass present: 1=true, 2=false

INT 7C 0015


7C 0015 Format of SK-UPPS media-specific statistics for Token-Ring:

Copy to Main

Table 2446

Format of SK-UPPS media-specific statistics for Token-Ring:

Offset	Size	Description

 00h  6 BYTEs	upstream neighbour

 06h	WORD	local ring number

 08h	DWORD	ring up count

 0Ch	DWORD	signal loss errors

 10h	DWORD	lobe wire faults

 14h	DWORD	ring recovery count

 18h	DWORD	line errors

 1Ch	DWORD	burst errors

 20h	DWORD	ARI/FCI errors

 24h	DWORD	lost frame errors

 28h	DWORD	receive congestion errors

 2Ch	DWORD	frame copied errors

 30h	DWORD	token errors

 34h	DWORD	DMA bus errors

 38h	DWORD	DMA parity errors

 3Ch	DWORD	receive overflow errors

INT 7C 0015


7D ---- Format of HyperPAD data area:

Copy to Main

Table 2447

Format of HyperPAD data area:

Offset	Size	Description

 -16h	DWORD	pointer to ??? FAR function

 -12h	DWORD	pointer to callback setting function

[C calling conventions, (*callback)(int (_loadds far *)()) ]

 -0Eh 6 BYTEs	signature "BRC001"

 -08h	DWORD	pointer to previous INT 7D handler

 -04h	DWORD	pointer to ??? data

 00h	HyperPAD INT 7D handler

INT 7D ----


7D 02-- Format of SCSILink parameter block:

Copy to Main

Table 2448

Format of SCSILink parameter block:

Offset	Size	Description

 00h	DWORD	size of command block

 04h	DWORD	address of command block (see #2449)

 08h	DWORD	size of buffer

 0Ch	DWORD	address of buffer

INT 7D 02--


7D 02-- Format of SCSILink command block:

Copy to Main

Table 2449

Format of SCSILink command block:

Offset	Size	Description

 00h	info not yet available

INT 7D 02--


7D 03-- Values for SCSILink timeout selector:

Copy to Main

Table 2450

Values for SCSILink timeout selector:

 00h	time to wait for bus (default 18)

 01h	time to wait for new phase (default 5)

 02h	maximum time to send/receive block (default 18)

 03h	time to wait for reselect (default 180)

INT 7D 03--


7F ---- Values for Halo88 API function:

Copy to Main

Table 2451

Values for Halo88 API function:

 64h	arc

 65h	bar

 66h	box

 67h	circle

 68h	clr

 69h	default hatch style

 6Ah	default line style

 6Bh	delhcur

 6Ch	delln / deltcur

 6Dh	ellipse

 6Eh	fill

 6Fh	flood

 70h	flood2

 71h	init graphics

 72h	init hcur

 73h	init marker

 74h	init tcur

 75h	inqarc

 76h	inqbknd

 77h	inqclr

 78h	inqerr

 79h	inqgcur

 7Ah	inqhcur

 7Bh	inqmarker

 7Dh	inqtcur

 7Eh	inqtext

 7Fh	lnabs

 80h	lnrel

 81h	markerabs

 82h	markerrel

 83h	moveabs

 84h	movehcurabs

 85h	movehcurrel

 86h	moverel

 87h	movetcurabs

 88h	movetcurrel

 89h	movefrom

 8Ah	moveto

 8Bh	pie

 8Ch	polylnabs

 8Dh	polylnrel

 8Eh	ptabs

 8Fh	ptrel

 91h	setasp

 92h	set color

 93h	set font

 94h	set hatch	style

 95h	set line style

 97h	settext

 98h	set text color

 99h	btext

 9Ah	setseg

 9Bh	display

 9Ch	setscreen

 9Eh	close graphics

 9Fh	ftinit

 A0h	ftlocate

 A1h	ftext

 A5h	set viewport

 A6h	set window

 A7h	set world

 AAh	ftcolor

 ACh	initlp

 ADh	inqasp

 AEh	inqdev

 AFh	inqdisplay

 B0h	inqft

 B1h	inqftcolor

 B2h	inqinterlace

 B3h	inqlpa

 B4h	inqlpg

 B5h	inqmode

 B6h	inqscreen

 B7h	inqversion

 B8h	roam

 B9h	scroll

 BAh	setieee

 BBh	set interlace

 BCh	shift

 BDh	start graphics

 BEh	vpan

 CBh	gwrite

 CCh	gread

 CDh	setxor

 CEh	rbox

 CFh	rcir

 D0h	rlnabs

 D1h	rlnrel

 D2h	delbox

 D3h	delcir

 D5h	setseg2

 DCh	worldoff

 DDh	mapwtod

 DEh	mapdtow

 DFh	mapwton

 E0h	mapntow

 E1h	mapdton

 E2h	mapntod

 E3h	inqworld

 E4h	inqviewport

 E5h	set line width

 E6h	lnjoint

 E7h	set locator

 E8h	read locator

 E9h	setdev

 EBh	setstext

 ECh	setstclr

 EDh	setstang

 EEh	stext

 EFh	inqstext

 F0h	setdegree

 F1h	inqstsize

 F2h	polyfabs

 F3h	polyfrel

 F4h	inqdrange

 F5h	inqstang

 F6h	orglocator

 F7h	inqlocator

 F8h	inqarea

 F9h	setipal

 FAh	setborder

 FBh	inqcrange

 FEh	setclip

 FFh	fcir

100h	setcrange

101h	setdrange

102h	setlattr

103h	polycabs

104h	polycrel

108h	memcom

109h	memexp

10Ah	memmov

10Eh	movefx

10Fh	movetx

110h	inqrgb

111h	save image

112h	restore image

113h	setapal

114h	setxpal

118h	inqtsize

12Eh	gprint

130h	setprn

131h	setpattr

133h	setbattr

135h	pexpand

136h	ptnorm

137h	pfnorm

13Bh	inqprn

13Ch	lopen

13Dh	lclose

13Eh	lappend

13Fh	lrecord

140h	lswitch

142h	inqfun

15Dh	lsetup

15Eh	lrest

15Fh	lsave

INT 7F ----


7F ---- Format of Telebit ACS parameter block:

Copy to Main

Table 2452

Format of Telebit ACS parameter block:

Offset	Size	Description

 00h	BYTE	command (see #2453)

 01h	BYTE	gateway number

 02h	BYTE	reserved

 03h	BYTE	port

 04h 17 BYTEs	auxiliary buffer

 15h	BYTE	session

 16h	WORD	count of bytes passed to API

 18h	DWORD	buffer pointer passed to/from API

 1Ch	WORD	count of bytes passed from API

 1Eh	BYTE	return code (see #2454)

INT 7F ----


7F ---- Values for Telebit ACS command:

Copy to Main

Table 2453

Values for Telebit ACS command:

 3Ch	status

 3Dh	connect

 3Eh	disconnect

 3Fh	read

 40h	data/command write

 41h	clear receive buffer

 42h	get configuration

 43h	get receiver status

 44h	raw write

 45h	search servers

 46h	set transmit buffer size

INT 7F ----


7F ---- Values for Telebit ACS return code:

Copy to Main

Table 2454

Values for Telebit ACS return code:

 00h	success

 01h	invalid session

 05h	servername invalid

 06h	NetWare fileserver bindery is locked

 07h	communication server not active

 08h	general failure in NetWare fileserver

 09h	not logged into a fileserver

 10h	connection table full

 11h	no response from communication server

 12h	connection attempt terminated abnormally

 13h	connection refused - no sessions available

 14h	gateway number/port already in use

 15h	invalid connection response

 16h	port invalid

 17h	incorrect version in server response

 18h	gateway number/port combination not configured

 19h	initialization has not been completed

 20h	no more sockets are available

 21h	no active poolname

 23h	FATAL internal interface error

 24h	registration of host workstation failed - name is already in use

 25h	registration of host workstation failed - workstation name table full

 26h	registration of host workstation failed - only one session may be

  registered for dial-in

 FFh	Telebit ACS API is busy - retry later

INT 7F ----


7F ---- Format of the WinRun control block (WCB):

Copy to Main

Table 2668

Format of the WinRun control block (WCB):

Offset	Size	Description

 00h	DWORD	pointer to ASCIZ command string

 04h	WORD	(ret) WinRun receiver status

0000h-001Fh WinExec() error

0020h-FFFEh WinExec() instance handle

FFFFh	    Windows not running or WinRun receiver not

  installed

INT 7F ----


7F 00-- Values for Alloy function status:

Copy to Main

Table 2455

Values for Alloy function status:

 00h	successful

 01h	invalid function

 02h	semaphore already locked

 03h	unable to lock/unlock semaphore

 04h	semaphore space exhausted

 05h	host/target PC did not respond (NTNX)

INT 7F 00--


7F 0104 Format of HLLAPI parameter control block:

Copy to Main

Table 2456

Format of HLLAPI parameter control block:

Offset	Size	Description

 00h  3 BYTEs	signature = 'PCB'

 03h	BYTE	function number (see #2457,#2458)

 04h	WORD	segment of control string

 06h	WORD	offset of control string

 08h	WORD	length of control string, unless explicit end-of-str char set

 0Ah	BYTE	unused (IBM)

ControlString[0] (Rabbit)

 0Bh	WORD	return code (see #2460)

 0Dh	WORD	maximum length of control string (IBM)

unused (Rabbit)

INT 7F 0104


7F 0104 Values for HLLAPI function number:

Copy to Main

Table 2457

Values for HLLAPI function number:

 00h	OEM function (Query system for Attachmate implementation)

 01h	Connect presentation space

 02h	Disconnect presentation space

 03h	Send string of keystrokes as if typed from keyboard

 04h	Wait ~60s, returns status of presentation space

 05h	Copy current presentation space into a user-defined buffer

 06h	Search presentation space for first occurrence of a specified string

 07h	Query cursor location in current presentation space

 08h	Copy part or all of current presentation space into user buffer

 09h	Set session parameters; parameters vary by vendor (see #2459)

 0Ah	Get info on sessions currently connected

 0Bh	Lock current presentation space

 0Ch	Unlock previously locked presentation space

 0Dh	Return copy of operator info area (OIA) of current presentation space

 0Eh	get attribute byte for given position in the current presentation space

 0Fh	copy string of characters to the current presentation space

 10h	workstation control functions

 11h	storage manager functions, intended primarily for BASIC applications

(not implemented by Rabbit)

 12h	set delay period in half-second intervals

 14h	get info on level of workstation support used

 15h	reset session parameters to default values

 16h	get detailed info on the current session

 17h	start host notification to application on presentation sp or OIA update

 18h	check host update when host notification enabled

 19h	stop host notification

 1Eh	search field within current presentation space for string

 1Fh	get first positionof a selected field in the current presentation space

 20h	get length of specified field

 21h	copy string into a specified field

 22h	copy specified field into a user-defined buffer

 23h	create alternate presentation space (IBM only), don't use with BASIC

 24h	switch to alternate presentation space (IBM only), not with BASIC

 25h	display cursor in specified area (IBM only), don't use with BASIC

 26h	display alternate presentation space (IBM only), don't use with BASIC

 27h	delete alternate presentation space (IBM only), don't use with BASIC

 28h	set cursor

 29h	start Close Intercept

 2Ah	query Close Intercept

 2Bh	stop Close Intercept

 32h	start intercepting keystrokes to allow filtering

 33h	get keystrokes after turning on interception

 34h	notify operator when keystroke rejected by filter subroutine

 35h	stop intercepting keystrokes

 5Ah	send file

 5Bh	receive file

 5Ch	run a program (not implemented by Rabbit)

 5Dh	execute DOS command (not implemented by Rabbit)

 63h	change presentation space position to PC display row/col or vice versa

 65h	connect to Window Services

 66h	disconnect from Window Services

 67h	set/query window coordinates

 68h	set/query window status

 69h	change presentation space name

 78h	connect Structured Fields

 79h	disconnect Structured Fields

 7Ah	query size of communications buffer

 7Bh	allocate communications buffer

 7Ch	free communications buffer

 7Dh	get request completion state

 7Eh	read Structured Fields

 7Fh	write Structured Fields

 FFh	Get info on DCA implementation

INT 7F 0104


7F 0104 Values for LLAPI function number:

Copy to Main

Table 2458

Values for LLAPI function number:

 80h	initialize LLAPI (internal call)

 83h	set Session ID (one-character ID)

 84h	read Session ID (one-character ID)

 85h	lock 327x keyboard

 86h	unlock 327x keyboard

 87h	wait for Clear to Send

 88h	type ASCII character

 89h	type 327x key

 8Ah	read keyboard lock state

 8Fh	force screen update

 90h	view session

 91h	relinquish (suspend foreground until background becomes idle)

 92h	poke screen character

 93h	poke translated character

 94h	peek screen character

 95h	peek translated character

 96h	set cursor position

 97h	send scan code (Rabbit only)

 98h	synchronize (returns after keystroke queue empty)

 99h	type PC key (Rabbit only)

INT 7F 0104


7F 0104 Values for HLLAPI Function 09h Session Parameters:

Copy to Main

Table 2459

Values for HLLAPI Function 09h Session Parameters:

 ASCII	??? (Rabbit only)

 ATTRIB	return attributes in hex

 NOATTRIB	return attributes as blanks

 CONPHYS	make physical connection

 CONLOG	only make logical connection

 EAB	copy extended attribute bytes along with data

 NOEAB	copy data only

 ESC=n	set escape character to "n" (default '@')

 EOT=n	set end of string character (default 00h)

 FPAUSE	full-duration pause

 FTNOWAIT	return immediately from functions 5Ah and 5Bh (Rabbit only)

 FTWAIT	wait for file transfer to complete (Rabbit only)

 IPAUSE	interruptable pause

 RABESC	??? (Rabbit only)

 NORABESC	??? (Rabbit only)

 SCANCODE	??? (Rabbit only)

 STRLEN	use explicit string lengths

 STREOT	use terminated strings

 SRCHALL	search entire presentation space

 SRCHFROM	search from specified offset

 SRCHFRWD	search forward from position 1

 SRCHBKWD	search backward from last position in presentation space

 TIMEOUT=n	??? (Rabbit only)

 TWAIT	wait specified time for keyboard ready

 LWAIT	wait until keyboard ready

 NWAIT	no wait

 TRON	enable tracing

 TROFF	disable tracing

 AUTORESET	send reset before sending keys with function 03h

 NORESET	don't send reset

 QUIET	don't display messages sent with INT 21/AH=09h

 NOQUIET	allow messages to be displayed

 TIMEOUT=n	set timeout in 30-second intervals, 0 = wait until ^Break

 XLATE	translate extended attribute bytes

 NOXLATE	don't translate

 NEWRET	use HLLAPI v3.0 return code conventions

 OLDRET	use HLLAPI v2.0 return code conventions

INT 7F 0104


7F 0104 Values for Windows HLLAPI return code:

Copy to Main

Table 2460

Values for Windows HLLAPI return code:

 00h	successful

 01h	Presentation Space not connected/requested size unavailable

 02h	invalid function or parameter error/invalid block ID

 03h	file transfer complete

 04h	file transfer complete (segmented)/Presentation Space busy

 05h	inhibited or keyboard locked

 06h	data truncated

 07h	invalid Presentation Space position

 08h	operation not available

 09h	system error

 0Ah	blocking error

 0Bh	resource not available

 0Ch	session stopped

 14h	undefined key combination

 15h	OIA updated

 16h	Presentation Space updated

 17h	both Presentation Space and OIA updated

 18h	no such field

 19h	no keystrokes available

 1Ah	Presentation Space or Operator Information Area changed

 1Bh	file transfer aborted

 1Ch	zero-length field

 1Eh	cursor type invalid

 1Fh	keystroke overflow

 20h	another application is already connected

 22h	message sent to host cancelled

 23h	transmission from host cancelled

 24h	lost contact with host

 25h	function successful

 26h	function incomplete

 27h	a DDM session is already connected

 28h	disconnected, but asynchronous requests still pending

 29h	buffer already in use

 2Ah	no matching request found

12Dh	invalid function number

12Eh	file not found

131h	access denied

134h	out of memory

136h	environment invalid

137h	format invalid

270Eh (9998) invalid Presentation Space ID

270Fh (9999) invalid row or column code

---Windows HLLAPI extensions---

F000h	asynchronous call already in progress

F001h	invalid asynchronous task ID

F002h	blocking call cancelled

F003h	underlying subsystem not started

F004h	unsupported application version

INT 7F 0104


7F 0105 Values for HDILOAD function number: (do FAR call via entry_points+4*function)

Copy to Main

Table 2461

Values for HDILOAD function number: (do FAR call via entry_points+4*function)

 08h	HOPEN	Open Adapter (see #2493)

 09h	HSMX	Set Mix (see #2522)

 10h	HINT	Interrupt (see #2489)

 13h	HLDPAL	Load Palette (see #2490)

 15h	HBBW	BitBLT Write Image Data (see #2476)

 17h	HBBR	BitBLT Read Image Data (see #2477)

 18h	HBBCHN	Chained Data Go (see #2475)

 19h	HBBC	BitBLT Copy Data (see #2474)

 1Dh	HQMODE	Get Current Mode (see #2499)

 20h	HRECT	Fill Rectangle (see #2501)

 22h	HCLOSE	Close Adapter and place in quiescent state (see #2482)

 30h	HINIT	Initialize State (see #2488)

 31h	HSYNC	Synchronize Adapter (see #2527)

 39h	HSPAL	Save Palette (see #2524)

 3Ah	HRPAL	Restore Palette (see #2504)

 ???	HSGQ	Set Graphics Quality (see #2513)

 ???	HSCOORD	Set Coordinate Type (see #2510)

 ???	HESC	Escape, Terminate Processing (see #2487)

 ???	HSBCOL	Set Background Color (see #2505)

 ???	HSBP	Set Bit Plane Controls (see #2506)

 ???	HSCMP	Set Color Comparison Register (see #2508)

 ???	HSCOL	Set Color (see #2509)

 ???	HSHS	Set Scissors (clipping rectangle) (see #2514)

 ???	HXLATE	Assign Text Color (see #2528)

 ???	HQMODES	Get Adapter Modes (see #2500)

 ???	HQDPS	Get Drawing Process State Size (see #2498)

 ???	HQDFPAL	Get Default Palette (see #2497)

 ???	HQCOORD	Get Coordinate Type (see #2495)

 ???	HQCP	Get Current Position (see #2496)

 ???	HSMODE	Change Mode (see #2520)

 ???	HLINE	Draw Line at Given Position (see #2491)

 ???	HCLINE	Draw Line at Current Position (see #2481)

 ???	HRLINE	Draw Line Relative from Given Position (see #2502)

 ???	HCRLINE	Draw Line Relative at Current Position (see #2484)

 ???	HSLT	Set Line Type (see #2517)

 ???	HSLW	Set Line Width (see #2519)

 ???	HSLPC	Save Line Pattern Count (see #2516)

 ???	HRLPC	Restore Line Pattern Count (see #2503)

 ???	HCBBW	BitBLT Write Image Data at Current Position (see #2478)

 ???	HBAR	Begin Area (see #2473)

 ???	HEAR	End Area (see #2485)

 ???	HSPATT	Set Pattern (see #2525)

 ???	HSPATTO	Set Pattern Reference Point (see #2526)

 ???	HEGS	Erase Graphics Screen (see #2486)

 ???	HSCP	Set Current Position (see #2511)

 ???	HMRK	Set Marker (see #2492)

 ???	HCMRK	Set Marker at Current Position (see #2483)

 ???	HSMARK	Set Marker Shape (see #2521)

 ???	HSCS	Set Character Set (see #2512)

 ???	HCHST	Write Character String at Given Position (see #2480)

 ???	HCCHST	Write Character String at Current Position (see #2479)

 ???	HSCELL	Set Cell Size for Alphanumeric Text (see #2507)

 ???	ABLOCKMFI Write Character/Attribute Block MFI (see #2464)

 ???	ABLOCKCGA Write Character Block CGA (see #2462)

 ???	AERASE	Erase Rectangle (see #2467)

 ???	ASCROLL Scroll Rectangle (see #2468)

 ???	ACURSOR	Set Alphanumerics Cursor Position (see #2466)

 ???	ASCUR	Set Alphanumeric Cursor Shape (see #2469)

 ???	ASFONT	Set Font (see #2470)

 ???	AXLATE	Assign Alphanumeric Color (see #2472)

INT 7F 0105


7F 0105 Format of ABLOCKCGA parameter block:

Copy to Main

Table 2462

Format of ABLOCKCGA parameter block:

Offset	Size	Description

 00h	WORD	000Ah (length of following data)

 02h	WORD	top-left coordinate of character block

 04h	WORD	width of block

 06h	DWORD	-> block of WORDs describing characters (see #2463)

 0Ah	BYTE	length of block in characters

 0Bh	BYTE	highlight attribute

bit 4: transparent background

bit 5: overstrike

bit 6: reverse video

bit 7: underscore

SeeAlso: #2464

INT 7F 0105


7F 0105 Bitfields for one character in ABLOCKCGA character block:

Copy to Main

Table 2463

Bitfields for one character in ABLOCKCGA character block:

Bit(s)	Description

 3-0	foreground attribute

 7-4	background attribute

 15-8	character code

INT 7F 0105


7F 0105 Format of ABLOCKMFI parameter block:

Copy to Main

Table 2464

Format of ABLOCKMFI parameter block:

Offset	Size	Description

 00h	WORD	0009h (length of following data)

 02h	WORD	top-left coordinate of character block

 04h	WORD	width of block

 06h	DWORD	-> block of DWORDs describing characters (see #2465)

 0Ah	BYTE	length of block in characters

SeeAlso: #2462

INT 7F 0105


7F 0105 Bitfields for one character in ABLOCKMFI character block:

Copy to Main

Table 2465

Bitfields for one character in ABLOCKMFI character block:

Bit(s)	Description

 7-0	reserved

 9-8	low two bits of font number

 12	transparent background

 13	overstrike

 14	reverse video

 15	underscore

 19-16	foreground color attribute

 23-20	background color attribute

 31-24	character code

INT 7F 0105


7F 0105 Format of ACURSOR parameter block:

Copy to Main

Table 2466

Format of ACURSOR parameter block:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	column (0-based)

 03h	BYTE	row (0-based)

SeeAlso: #2469

INT 7F 0105


7F 0105 Format of AERASE parameter block:

Copy to Main

Table 2467

Format of AERASE parameter block:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	left-most column (0-based)

 03h	BYTE	top-most row (0-based)

 04h	BYTE	rectangle's width in character cells

 05h	BYTE	rectangle's height in character cells

 06h	BYTE	background color (bits 7-4)

SeeAlso: #2468

INT 7F 0105


7F 0105 Format of ASCROLL parameter block:

Copy to Main

Table 2468

Format of ASCROLL parameter block:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	BYTE	left-most column (0-based) of source

 03h	BYTE	top-most row (0-based) of source

 04h	BYTE	rectangle's width in character cells

 05h	BYTE	rectangle's height in character cells

 06h	BYTE	left-most column (0-based) of destination

 07h	BYTE	top-most row (0-based) of destination

SeeAlso: #2467

INT 7F 0105


7F 0105 Format of ASCUR parameter block:

Copy to Main

Table 2469

Format of ASCUR parameter block:

Offset	Size	Description

 00h	WORD	0003h (length of following data)

 02h	BYTE	cursor start line (00h = top of cell, FFh = keep current shape)

 03h	BYTE	cursor stop line

 04h	BYTE	cursor attribute

00h normal

01h hidden

02h left-arrow (requires start = 2 and stop = bottom of cell)

03h right-arrow (requires start = 2 and stop = bottom of cell)

Notes:	no cursor is shown if the start line is greater than the stop line

the alphanumeric cursor is hidden after each mode change

SeeAlso: #2466,INT 10/AH=01h

INT 7F 0105


7F 0105 Format of ASFONT parameter block:

Copy to Main

Table 2470

Format of ASFONT parameter block:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	BYTE	font number (0-3)

 03h	DWORD	-> character set definition block (see #2471)

INT 7F 0105


7F 0105 Format of 8514/A character set definition block:

Copy to Main

Table 2471

Format of 8514/A character set definition block:

Offset	Size	Description

 00h	BYTE	reserved

 01h	BYTE	type of character set

00h bitmapped, 01h&02h reserved, 03h short-stroke font

 02h	BYTE	reserved

 03h	DWORD	reserved

 07h	BYTE	cell width in pixels

 08h	BYTE	cell height in pixels

 09h	BYTE	reserved

 0Ah	WORD	cell size in bytes

 0Ch	WORD	flags

bit 15: reserved (0)

bit 14: color bitmap

bit 13: proportional spacing

 0Eh	DWORD	-> index table

 12h	DWORD	-> character width table

 16h	BYTE	initial code point

 17h	BYTE	final code point

 18h	DWORD	-> character definition table

 1Ch	WORD	reserved

 1Eh	DWORD	-> second character definition table

 22h	WORD	reserved

 24h	DWORD	-> third character definition table

INT 7F 0105


7F 0105 Format of AXLATE parameter block:

Copy to Main

Table 2472

Format of AXLATE parameter block:

Offset	Size	Description

 00h	WORD	0080h (length of following data)

 02h 64 BYTEs	character foreground translation table

 42h 64 BYTEs	character background translation table

INT 7F 0105


7F 0105 Format of HBAR parameter block:

Copy to Main

Table 2473

Format of HBAR parameter block:

Offset	Size	Description

 00h	WORD	0000h (no data following)

SeeAlso: #2485

INT 7F 0105


7F 0105 Format of HBBC parameter block:

Copy to Main

Table 2474

Format of HBBC parameter block:

Offset	Size	Description

 00h	WORD	0010h (length of following data)

 02h	WORD	data format

0000h across-the-plane copy (color expansion)

0008h through-the-plane copy

 04h	WORD	data rectangle's width

 06h	WORD	data rectangle's height

 08h	BYTE	source bit plane number (across-the-plane copies only)

 09h	BYTE	reserved

 0Ah  2 WORDs	X,Y coordinates of source's upper-left corner in display memory

 0Eh  2 WORDs	X,Y coordinates of destination's upper-left corner in

  display memory

Note:	copies data from one location in video memory to another

SeeAlso: #2475

INT 7F 0105


7F 0105 Format of HBBCHN parameter block:

Copy to Main

Table 2475

Format of HBBCHN parameter block:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	DWORD	-> data buffer in system memory

 06h	WORD	number of bytes to transfer

Note:	this function performs the actual data transfer for a bitBLT set up

  with HBBR, HBBW, or HCBBW

SeeAlso: #2474,#2476,#2477,#2478

INT 7F 0105


7F 0105 Format of HBBR parameter block:

Copy to Main

Table 2476

Format of HBBR parameter block:

Offset	Size	Description

 00h	WORD	000Ch or 0014h (length of following data)

 02h	WORD	data format

0000h across-the-plane copy (color expansion)

0008h through-the-plane copy

 04h	WORD	data rectangle's width

 06h	WORD	data rectangle's height

 08h	BYTE	source bit plane number

 09h	BYTE	reserved

 0Ah  2 WORDs	X,Y coordinates of destination's upper-left corner in

  display memory

---optional---

 0Eh	WORD	sub-rectangle left margin in pixels

 10h	WORD	sub-rectangle top margin in pixels

 12h	WORD	sub-rectangle width

 14h	WORD	sub-rectangle height

SeeAlso: #2475,#2476,#2478

INT 7F 0105


7F 0105 Format of HBBW parameter block:

Copy to Main

Table 2477

Format of HBBW parameter block:

Offset	Size	Description

 00h	WORD	000Ah or 0012h (length of following data)

 02h	WORD	data format

0000h across-the-plane copy (color expansion)

0008h through-the-plane copy

 04h	WORD	data rectangle's width

 06h	WORD	data rectangle's height

 08h  2 WORDs	X,Y coordinates of destination in display memory

---optional---

 0Ch	WORD	sub-rectangle left margin in pixels

 0Eh	WORD	sub-rectangle top margin in pixels

 10h	WORD	sub-rectangle width

 12h	WORD	sub-rectangle height

SeeAlso: #2475,#2477,#2478

INT 7F 0105


7F 0105 Format of HCBBW parameter block:

Copy to Main

Table 2478

Format of HCBBW parameter block:

Offset	Size	Description

 00h	WORD	0006h or 000Eh (length of following data)

 02h	WORD	data format

0000h across-the-plane copy (color expansion)

0008h through-the-plane copy

 04h	WORD	data rectangle's width

 06h	WORD	data rectangle's height

---optional---

 08h	WORD	sub-rectangle left margin in pixels

 0Ah	WORD	sub-rectangle top margin in pixels

 0Ch	WORD	sub-rectangle width

 0Eh	WORD	sub-rectangle height

SeeAlso: #2475,#2476,#2477

INT 7F 0105


7F 0105 Format of HCCHST parameter block:

Copy to Main

Table 2479

Format of HCCHST parameter block:

Offset	Size	Description

 00h	WORD	length of following data

 02h  N BYTEs	ASCII string to display (length given by 'length' field above)

SeeAlso: #2480

INT 7F 0105


7F 0105 Format of HCHST parameter block:

Copy to Main

Table 2480

Format of HCHST parameter block:

Offset	Size	Description

 00h	WORD	length of following data

 02h  2 WORDs	X,Y of left-bottom corner of string on screen

 06h  N BYTEs	ASCII string to display (length given by 'length' field above)

SeeAlso: #2479

INT 7F 0105


7F 0105 Format of HCLINE parameter block:

Copy to Main

Table 2481

Format of HCLINE parameter block:

Offset	Size	Description

 00h	WORD	length of following data (multiple of 4)

 02h 2N WORDs	X,Y coordinates for each of N points in polyline

Notes:	the first line segment is drawn beginning at the current position

on completion, the current position is set to the last point drawn

SeeAlso: #2491,#2502,#2484

INT 7F 0105


7F 0105 Format of HCLOSE parameter block:

Copy to Main

Table 2482

Format of HCLOSE parameter block:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 01h	BYTE	(ret) return code

SeeAlso: #2493

INT 7F 0105


7F 0105 Format of HCMRK parameter block:

Copy to Main

Table 2483

Format of HCMRK parameter block:

Offset	Size	Description

 00h	WORD	length of following data

 02h 2N WORDs	X,Y of N points

Note:	draws N+1 marker symbols, the first one at the current position

SeeAlso: #2492

INT 7F 0105


7F 0105 Format of HCRLINE parameter block:

Copy to Main

Table 2484

Format of HCRLINE parameter block:

Offset	Size	Description

 00h	WORD	length of following data (multiple of 4)

 02h 2N WORDs	X,Y coordinates relative to the position of the previous point

  (current position for first point) for each of N points in

  polyline

Notes:	the first line segment is drawn beginning at the current position

on completion, the current position is set to the last point drawn

SeeAlso: #2491,#2481,#2502

INT 7F 0105


7F 0105 Format of HEAR parameter block:

Copy to Main

Table 2485

Format of HEAR parameter block:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	area definition flags

bits 7-6: End Area type

00 complete, perform fill

01 suspend definition

10 complete, but don't fill

SeeAlso: #2473

INT 7F 0105


7F 0105 Format of HEGS parameter block:

Copy to Main

Table 2486

Format of HEGS parameter block:

Offset	Size	Description

 00h	WORD	0000h (no data following)

INT 7F 0105


7F 0105 Format of HESC parameter block:

Copy to Main

Table 2487

Format of HESC parameter block:

Offset	Size	Description

 00h	WORD	0000h (no data following)

INT 7F 0105


7F 0105 Format of HINIT parameter block:

Copy to Main

Table 2488

Format of HINIT parameter block:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	WORD	segment of task buffer

SeeAlso: #2527

INT 7F 0105


7F 0105 Format of HINT parameter block:

Copy to Main

Table 2489

Format of HINT parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	DWORD	interrupt/event identifier

bit 31: vertical blanking

INT 7F 0105


7F 0105 Format of HLDPAL parameter block:

Copy to Main

Table 2490

Format of HLDPAL parameter block:

Offset	Size	Description

 00h	WORD	000Ah (length of following data)

 02h	BYTE	palette ID (00h = user, 01h = default)

 03h	BYTE	reserved

 04h	WORD	number of first palette entry

 06h	WORD	number of entries

 08h	DWORD	-> palette entries

SeeAlso: #2524

INT 7F 0105


7F 0105 Format of HLINE parameter block:

Copy to Main

Table 2491

Format of HLINE parameter block:

Offset	Size	Description

 00h	WORD	length of following data (multiple of 4)

 02h 2N WORDs	X,Y coordinates for each of N points in polyline

Note:	on completion, the current position is set to the last point drawn

SeeAlso: #2481,#2502,#2484

INT 7F 0105


7F 0105 Format of HMRK parameter block:

Copy to Main

Table 2492

Format of HMRK parameter block:

Offset	Size	Description

 00h	WORD	length of following data (multiple of 4)

 02h 2N WORDs	X,Y for N points

SeeAlso: #2483

INT 7F 0105


7F 0105 Format of HOPEN parameter block:

Copy to Main

Table 2493

Format of HOPEN parameter block:

Offset	Size	Description

 00h	WORD	0003h (length of following data)

 01h	BYTE	initialization flags

bit 6: don't load default palette

bit 7: clear bitplanes

 02h	BYTE	mode type (see #2494)

 03h	BYTE	(ret) return code

bit 7: no adapter (hardware mismatch)

SeeAlso: #2482

INT 7F 0105


7F 0105 Values for 8514/A display mode:

Copy to Main

Table 2494

Values for 8514/A display mode:

 0000h	12x20 characters, 1024x768

 0001h	8x14 characters, 640x480

 0002h	8x14 characters, 1024x768

 0003h	7x15 characters, 1024x768

INT 7F 0105


7F 0105 Format of HQCOORD parameter block:

Copy to Main

Table 2495

Format of HQCOORD parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	BYTE	(ret) coordinate format

bits 7-4: bytes per coordinate

bits 3-0: fraction bytes in coordinate

 03h	BYTE	(ret) relative coordinate format

bits 7-4: bytes per coordinate

bits 3-0: fraction bytes in coordinate

 04h	BYTE	(ret) number of dimensions (2-4)

 05h	BYTE	(ret) test results

bit 7: coordinate format not supported

bit 6: relative coordinate format not supported

bit 5: specified dimension not supported

INT 7F 0105


7F 0105 Format of HQCP parameter block:

Copy to Main

Table 2496

Format of HQCP parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	WORD	(ret) current X position

 04h	WORD	(ret) current Y position

INT 7F 0105


7F 0105 Format of HQDFPAL parameter block:

Copy to Main

Table 2497

Format of HQDFPAL parameter block:

Offset	Size	Description

 00h	WORD	0040h (length of following data)

 02h 16	DWORDs	(ret) color index values

Note:	the default palette is set to match the default EGA/VGA 16-color

  palettes

INT 7F 0105


7F 0105 Format of HQDPS parameter block:

Copy to Main

Table 2498

Format of HQDPS parameter block:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	WORD	(ret) size of data buffer in bytes

 04h	WORD	(ret) stack size in bytes

 06h	WORD	(ret) size of palette save buffer in bytes

INT 7F 0105


7F 0105 Format of HQMODE parameter block:

Copy to Main

Table 2499

Format of HQMODE parameter block:

Offset	Size	Description

 00h	WORD	0012h (length of following data)

 02h	BYTE	current video mode (see #2494)

 03h	WORD	driver version

bit 6: 80286/8086 CPU

bit 5: 8 bit planes instead of 4 planes

bits 4-0: hardware release number

 05h	BYTE	adapter type

03h 8514/A

04h XGA

 06h	BYTE	reserved (display type)

 07h	BYTE	character cell width

 08h	BYTE	character cell height

 09h	BYTE	number of bit planes

 0Ah	WORD	screen width (pixels)

 0Ch	WORD	screen height (pixels)

 0Eh	WORD	horizontal resolution (pixels/inch)

 10h	WORD	vertical resolution (pixels/inch)

 12h	BYTE	flag: 00h = monochrome, FFh = color

 13h	BYTE	intensity levels

SeeAlso: #2500

INT 7F 0105


7F 0105 Format of HQMODES parameter block:

Copy to Main

Table 2500

Format of HQMODES parameter block:

Offset	Size	Description

 00h	WORD	0021h (length of following data)

 02h	BYTE	(ret) adapter type

 03h 32 BYTEs	(ret) available display modes (FFh byte marks end of data)

SeeAlso: #2499

INT 7F 0105


7F 0105 Format of HRECT parameter block:

Copy to Main

Table 2501

Format of HRECT parameter block:

Offset	Size	Description

 00h	WORD	0008h (legth of following data)

 02h  2 WORDs	X,Y coordinates of top left corner or rectangle

 06h	WORD	rectangle's width

 08h	WORD	rectangle's height

Note:	the rectangle is filled using the current pattern, color, and mix

INT 7F 0105


7F 0105 Format of HRLINE parameter block:

Copy to Main

Table 2502

Format of HRLINE parameter block:

Offset	Size	Description

 00h	WORD	length of following data (multiple of 4)

 02h  2 WORDs	X,Y coordinates of starting point

 06h 2N WORDs	X,Y coordinates relative to the position of the previous point

  for each of N points in polyline

Note:	on completion, the current position is set to the last point drawn

SeeAlso: #2491,#2481,#2484

INT 7F 0105


7F 0105 Format of HRLPC parameter block:

Copy to Main

Table 2503

Format of HRLPC parameter block:

Offset	Size	Description

 00h	WORD	0000h (no data following)

Note:	used for continuity of lines crossing scissors boundaries

SeeAlso: #2516

INT 7F 0105


7F 0105 Format of HRPAL parameter block:

Copy to Main

Table 2504

Format of HRPAL parameter block:

Offset	Size	Description

 00h	WORD	0300h (length of following data)

 02h 768 BYTEs	buffer containing previously-saved palette table

SeeAlso: #2524

INT 7F 0105


7F 0105 Format of HSBCOL parameter block:

Copy to Main

Table 2505

Format of HSBCOL parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	DWORD	color index for new background color

SeeAlso: #2509

INT 7F 0105


7F 0105 Format of HSBP parameter block:

Copy to Main

Table 2506

Format of HSBP parameter block:

Offset	Size	Description

 00h	WORD	000Ch (length of following data)

 02h	DWORD	bitmask for graphics updates

 06h	DWORD	bitmask for alphanumeric updates

 0Ah	DWORD	display bitmask

INT 7F 0105


7F 0105 Format of HSCELL parameter block:

Copy to Main

Table 2507

Format of HSCELL parameter block:

Offset	Size	Description

 00h

INT 7F 0105


7F 0105 Format of HSCMP parameter block:

Copy to Main

Table 2508

Format of HSCMP parameter block:

Offset	Size	Description

 00h	WORD	0005h (length of following data)

 02h	DWORD	comparison color

 06h	BYTE	logical operation

00h True

01h pel > testcolor

02h pel == testcolor

03h pel < testcolor

04h False

05h pel >= testcolor

06h pel <> testcolor

07h pel <= testcolor

INT 7F 0105


7F 0105 Format of HSCOL parameter block:

Copy to Main

Table 2509

Format of HSCOL parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	DWORD	color index for new foreground color

SeeAlso: #2505

INT 7F 0105


7F 0105 Format of HSCOORD parameter block:

Copy to Main

Table 2510

Format of HSCOORD parameter block:

Offset	Size	Description

 00h	WORD	0003h (length of following data)

 02h	BYTE	coordinate format

bits 7-4: bytes per coordinate

bits 3-0: fraction bytes in coordinate

 03h	BYTE	relative coordinates format

bits 7-4: bytes per coordinate

bits 3-0: fraction bytes in coordinate

 04h	BYTE	number of dimensions (2-4)

INT 7F 0105


7F 0105 Format of HSCP parameter block:

Copy to Main

Table 2511

Format of HSCP parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h  2 WORDs	X,Y or coordinate for new current position

INT 7F 0105


7F 0105 Format of HSCS parameter block:

Copy to Main

Table 2512

Format of HSCS parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h	DWORD	-> character set definition

INT 7F 0105


7F 0105 Format of HSGQ parameter block:

Copy to Main

Table 2513

Format of HSGQ parameter block:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	WORD	quality settings (see #2515)

INT 7F 0105


7F 0105 Format of HSHS parameter block:

Copy to Main

Table 2514

Format of HSHS parameter block:

Offset	Size	Description

 00h	WORD	0008h (length of following data)

 02h	WORD	left edge of clipping rectangle (-2048 to +6143)

 04h	WORD	right edge

 06h	WORD	top edge

 08h	WORD	bottom edget

INT 7F 0105


7F 0105 Bitfields for 8514/A quality settings:

Copy to Main

Table 2515

Bitfields for 8514/A quality settings:

Bit(s)	Description

 15	reserved

 14	high precision

 13	reserved

 12-11	pel code

00 not drawn

01 drawn

02 conditional on overpainting/mixes

 10	don't close areas to be filed

 9-0	reserved

INT 7F 0105


7F 0105 Format of HSLPC parameter block:

Copy to Main

Table 2516

Format of HSLPC parameter block:

Offset	Size	Description

 00h	WORD	0000h (no data following)

Note:	used for continuity of lines crossing scissors boundaries

SeeAlso: #2503

INT 7F 0105


7F 0105 Format of HSLT parameter block:

Copy to Main

Table 2517

Format of HSLT parameter block:

Offset	Size	Description

 00h	WORD	0006h (length of following data)

 02h	BYTE	line type (see #2518)

 03h	BYTE	reserved

 04h	DWORD	-> user line-type definition (if user type)

SeeAlso: #2519

INT 7F 0105


7F 0105 Values for 8514/A line type:

Copy to Main

Table 2518

Values for 8514/A line type:

 00h	user line type

 01h	dotted

 02h	short dashes

 03h	dash-dot

 04h	double dotted

 05h	dashed

 06h	dash double dot

 07h	solid

 08h	invisible

SeeAlso: #2517

INT 7F 0105


7F 0105 Format of HSLW parameter block:

Copy to Main

Table 2519

Format of HSLW parameter block:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	width of line in pixels

SeeAlso: #2517

INT 7F 0105


7F 0105 Format of HSMODE parameter block:

Copy to Main

Table 2520

Format of HSMODE parameter block:

Offset	Size	Description

 00h	WORD	0001h (length of following data)

 02h	BYTE	new display mode number (see #2494)

INT 7F 0105


7F 0105 Format of HSMRK paramter block:

Copy to Main

Table 2521

Format of HSMRK paramter block:

Offset	Size	Description

 00h	WORD	000Eh (length of following data)

 02h	BYTE	cell width

 03h	BYTE	cell height

 04h	BYTE	flags

 05h	BYTE	reserved

 06h	WORD	length of marker symbol

 08h	DWORD	-> image definition data

 0Ch	DWORD	-> color definition data

SeeAlso: #2525

INT 7F 0105


7F 0105 Format of HSMX parameter block:

Copy to Main

Table 2522

Format of HSMX parameter block:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	BYTE	foreground mix (see #2523)

 03h	BYTE	background mix (see #2523)

INT 7F 0105


7F 0105 Values for 8514/A mix:

Copy to Main

Table 2523

Values for 8514/A mix:

 00h	retain previous mix

 01h	source OR destination

 02h	source

 04h	source XOR destination

 05h	leave as-is

 06h	max(source,destination)

 07h	min(source,destination)

 08h	source+destination (clipped)

 09h	destination-source (clipped to zero)

 0Ah	source-destination (clipped to zero)

 0Bh	average source and destination

 10h	zero destination

 11h	source AND destination

 12h	source AND NOT destination

 13h	source

 14h	NOT source AND destination

 15h	leave as-is

 16h	source XOR destination

 17h	source OR destination

 18h	NOT source AND NOT destination

 19h	NOT (source XOR destination)

 1Ah	NOT destination

 1Bh	source OR NOT destination

 1Ch	NOT source

 1Dh	NOT source OR destination

 1Eh	NOT source OR NOT destination

 1Fh	set all bits of destination

INT 7F 0105


7F 0105 Format of HSPAL parameter block:

Copy to Main

Table 2524

Format of HSPAL parameter block:

Offset	Size	Description

 00h	WORD	0300h (length of following data)

 02h 768 BYTEs	buffer for palette table

SeeAlso: #2490,#2504

INT 7F 0105


7F 0105 Format of HSPATT parameter block:

Copy to Main

Table 2525

Format of HSPATT parameter block:

Offset	Size	Description

 00h	WORD	000Eh (length of following data)

 02h	BYTE	cell width

 03h	BYTE	cell height

 04h	BYTE	flags

 05h	BYTE	reserved

 06h	WORD	length of marker symbol

 08h	DWORD	-> image definition data

 0Ch	DWORD	-> color definition data

SeeAlso: #2521,#2526

INT 7F 0105


7F 0105 Format of HSPATTO parameter block:

Copy to Main

Table 2526

Format of HSPATTO parameter block:

Offset	Size	Description

 00h	WORD	0004h (length of following data)

 02h  2 WORDs	X,Y of pattern reference point (origin)

SeeAlso: #2525

INT 7F 0105


7F 0105 Format of HSYNC parameter block:

Copy to Main

Table 2527

Format of HSYNC parameter block:

Offset	Size	Description

 00h	WORD	0002h (length of following data)

 02h	WORD	segment of task state buffer

SeeAlso: #2488

INT 7F 0105


7F 0105 Format of HXLATE parameter block:

Copy to Main

Table 2528

Format of HXLATE parameter block:

Offset	Size	Description

 00h	WORD	0020h (length of following data)

 02h 32 BYTEs	color index table

INT 7F 0105


7F 05-- Format of Alloy user information record:

Copy to Main

Table 2529

Format of Alloy user information record:

Offset	Size	Description

 00h	WORD	segment of video RAM

 02h	WORD	segment of secondary copy of video RAM

 04h	WORD	offset of screen update flag (see INT 10/AH=8Bh)

flag nonzero if update needed

 06h	WORD	video NMI enable port

(not used by MW386, set to 0000h)

 08h	WORD	video NMI disable port

(not used by MW386, set to 0000h)

 0Ah	BYTE	processor type

00h 8088

01h V20

02h 8086

03h V30

06h 80386

 0Bh	WORD	multitasking flag (00h = single tasking, 01h = multitasking)

(not used by MW386, set to 0000h)

 0Dh	WORD	offset of terminal driver

(not used by MW386, set to 0000h)

 0Fh	BYTE	port for console I/O

(not used by MW386, set to 0000h)

 10h	WORD	offset of processor communication busy flag

bit 7 set when slave communicating with host

 12h	WORD	pointer to FAR NX system call

(not used by MW386, set to 0000h)

 14h	WORD	offset of 16-byte user configuration record (see AH=38h)

 16h	WORD	offset of command/status word

 18h	WORD	offset of screen valid flag (see INT 10/AH=93h)

nonzero if screen must be repainted

 1Ah	WORD	offset of screen repaint flag

 1Ch	WORD	pointer to NEAR NX system call

(not used by MW386, set to 0000h)

 1Eh	WORD	offset for intercept flags

(not used by MW386, set to 0000h)

intercept flag = FFh if MS-DOS intercepts should be disabled

 20h	WORD	offset of terminal lock flag (see INT 10/AH=92h)

lock flag = FFh if backgrnd screen updates should be suspended

 22h 26 BYTEs	reserved

INT 7F 05--


7F 06-- Format of Alloy drive info record:

Copy to Main

Table 2530

Format of Alloy drive info record:

Offset	Size	Description

 00h	WORD	segment of drive IO-REQUEST structure (MS-DOS DPB)

 02h	WORD	segment of allocation map (owner table)

one byte per FAT entry, containing user ID owning that entry

 04h	WORD	segment of master FAT for drive (copy of FAT on disk)

 06h	WORD	pointer to configuration file

 08h	WORD	total number of clusters

 0Ah	WORD	bytes per sector

 0Ch	WORD	sectors per cluster

 0Eh	BYTE	FAT type (0Ch = 12-bit, 10h = 16-bit)

INT 7F 06--


7F 07-- Format of Alloy shared drive list:

Copy to Main

Table 2531

Format of Alloy shared drive list:

Offset	Size	Description

 00h	BYTE	string length

 01h	BYTE	number of shared drives

 02h  N BYTEs	one byte per shared drive

INT 7F 07--


7F 08-- Bitfields for G8BPQ session type:

Copy to Main

Table 2532

Bitfields for G8BPQ session type:

Bit(s)	Description

 0	L2LINK

 1	SESSION

 2	UPLINK

 3	DOWNLIND

 5	BPQHOST

INT 7F 08--


7F 0A-- Format of Alloy system flags:

Copy to Main

Table 2533

Format of Alloy system flags:

Offset	Size	Description

 00h	DWORD	pointer to NX_Busy flag (nonzero when communicating with users)

 04h	DWORD	pointer to device driver busy flag

 08h	DWORD	pointer to InTimer flag

INT 7F 0A--


7F 0B-- Format of G8BPQ received data:

Copy to Main

Table 2534

Format of G8BPQ received data:

Offset	Size	Description

 00h	WORD	internal control information

 02h	BYTE	port number (bit 7 set if transmitted frame)

 03h	WORD	frame length including this header

 05h	var	user data

INT 7F 0B--


7F 10-- Values for Alloy function status:

Copy to Main

Table 2535

Values for Alloy function status:

 00h	successful

 01h	busy

 02h	channel range error (not 00h-3Fh)

 03h	invalid subfunction

 0Ah	channel not open

 0Ch	channel already locked

 0Dh	unable to open

INT 7F 10--


7F 11-- Values for Alloy function status:

Copy to Main

Table 2536

Values for Alloy function status:

 00h	successful

 01h	busy

 02h	channel range error (not 00h-3Fh)

 03h	invalid subfunction

 0Ah	packet too large (or <2 bytes if NTNX)

 0Bh	can't send packet to itself

 0Ch	invalid number of destinations

 0Dh	destination channel number out of range

 0Eh	destination user is busy

 0Fh	destination user has locked channel

 10h	channel not open

 11h	no datagram server on destination (NTNX)

INT 7F 11--


7F 11-- Format of Alloy request block:

Copy to Main

Table 2537

Format of Alloy request block:

Offset	Size	Description

 00h	DWORD	pointer to packet to send

 04h	WORD	packet size in bytes (1-4096)

 06h	BYTE	number of destinations for packet (max 1Fh)

 07h 31 BYTEs	destination user IDs (FFh = broadcast to all except sender)

 26h 31 BYTEs	destination channels (FFh = first available channel)

 45h 31 BYTEs	return destination statuses

INT 7F 11--


7F 12-- Values for Alloy function status:

Copy to Main

Table 2538

Values for Alloy function status:

 00h	successful

 01h	busy

 02h	channel range error (not 00h-3Fh)

 03h	invalid subfunction

 0Ah	channel not open

 0Bh	no message in channel

 0Ch	destination slave busy--retry (NTNX)

 0Dh	destination user not active

 0Eh	destination slave not active (NTNX)

 0Fh	destination disabled datagram service

INT 7F 12--


7F 14-- Values Alloy receive service routine is called with:

Copy to Main

Table 2539

Values Alloy receive service routine is called with:

DH = sender ID

DL = channel with datagram

interrupts disabled

Return: AL = response code

    00h leave buffer locked, set channel status, and repeat call later

    01h release channel buffer

    02h change buffer pointer to DX:DI

AH,CX,DX,DI,SI may be destroyed

INT 7F 14--


7F 14-- Values Alloy acknowledge service routine is called with:

Copy to Main

Table 2540

Values Alloy acknowledge service routine is called with:

DS:SI -> acknowledge structure (see #2544)

Return: AL = response code

    00h application busy, network executive should call again later

    01h acknowledge accepted

AH,DX,SI may be destroyed

INT 7F 14--


7F 14-- Format of Alloy busy structure:

Copy to Main

Table 2541

Format of Alloy busy structure:

Offset	Size	Description

 00h	DWORD	pointer to busy flag byte

 04h	WORD	fixed port address (FF00h)

INT 7F 14--


7F 15-- Format of Alloy channel status structure:

Copy to Main

Table 2542

Format of Alloy channel status structure:

Offset	Size	Description

 00h	BYTE	channel status

bit 0: channel open

bit 1: channel buffer contains received data

bit 7: channel locked

 01h	BYTE	sender ID

INT 7F 15--


7F 15-- Format of Alloy full-channel structure:

Copy to Main

Table 2543

Format of Alloy full-channel structure:

Offset	Size	Description

 00h	BYTE	number of channel with oldest datagram

 01h	BYTE	sender ID

INT 7F 15--


7F 15-- Format of Alloy status structure:

Copy to Main

Table 2544

Format of Alloy status structure:

Offset	Size	Description

 00h	BYTE	sender ID

 01h	BYTE	channel number

 02h  4 BYTEs	receiver status (see #2538)

INT 7F 15--


7F 16-- Format of Alloy transfer structure:

Copy to Main

Table 2545

Format of Alloy transfer structure:

Offset	Size	Description

 00h	WORD	bytes to transfer

 02h	BYTE	source ID

FEh = caller

 03h	DWORD	source address

 07h	BYTE	destination ID

FFh = all slaves except caller

FEh = caller

 08h	DWORD	destination address

INT 7F 16--


7F 21-- Format of Alloy control packet:

Copy to Main

Table 2546

Format of Alloy control packet:

Offset	Size	Description

 00h	BYTE	packet type

00h message

01h NTNX command

02h MW386 command

 01h	BYTE	destination user ID or 'A' for all users

 02h 62 BYTEs	ASCIZ message (packet type 00h)

BIOS keycodes terminated by NUL byte (type 01h) or word (02h)

Note:	a maximum of 16 keycodes will be processed for NTNX and MW386 commands

INT 7F 21--


7F 24-- Values for Alloy function status:

Copy to Main

Table 2547

Values for Alloy function status:

 00h	successful

 01h	invalid request

 02h	already attached

 03h	not attached

 04h	lock table full

INT 7F 24--


7F 25-- Values for Alloy network executive type:

Copy to Main

Table 2548

Values for Alloy network executive type:

 00h	RTNX

 01h	ATNX

 02h	NTNX

 03h	BTNX

 04h	MW386

 05h	ANSK

INT 7F 25--


7F 26-- Bitfields for Alloy file mode bits:

Copy to Main

Table 2549

Bitfields for Alloy file mode bits:

Bit(s)	Description

 0	directory protection enabled

 1	extended open enabled

 2	flush on every disk write

 3	flush on every disk write in locked interval

 4	flush on reads from simultaneously opened file

INT 7F 26--


7F 41-- Values for Alloy function status:

Copy to Main

Table 2550

Values for Alloy function status:

 00h	successful

 01h	invalid function

 02h	already locked

 03h	unable to lock

 04h	lock table full or semaphore space exhausted

INT 7F 41--


7F ABCD Values for 8516 Touch Screen function number:

Copy to Main

Table 2551

Values for 8516 Touch Screen function number:

 00h	check initialization and reset (see #2552)

 14h	set user-defined subroutine (see #2553)

Notes:	each driver function takes two stack parameters using Pascal calling

  conventions: address of parameter block and address of results buffer

all pointers are FAR pointers

on return, AX contains the status of the call:

    AX = 0000h successful

 0001h invalid input

 0002h interface error

 0003h unable to perform function

INT 7F ABCD


7F ABCD Format of 8516 Touch Screen Function 00h parameter block:

Copy to Main

Table 2552

Format of 8516 Touch Screen Function 00h parameter block:

Offset	Size	Description

 00h	WORD	0000h (function number)

Note:	this function should be called before any other device driver functions

INT 7F ABCD


7F ABCD Format of 8516 Touch Screen Function 00h results buffer:

Copy to Main

Table 2553

Format of 8516 Touch Screen Function 00h results buffer:

Offset	Size	Description

 00h	WORD	touch screen status

0000h unavailable

0001h uncalibrated

FFFFh available

 02h	WORD	aux mouse status (0000h not present, FFFFh present)

Notes:	the following driver parameters will have been reset to zero:

  touchdown counter, liftoff counter, position at last touch, position

  at last lift, int call mask, select on count, select off count,

  pos select on count, pos select off count.

the following driver parameters will have been reset as listed:

  mouse emulation mode: left on

  thresholds: 46 on screen, 96 push harder, 80 push release

  x, y hysteresis: 400

  data repeat rate: 40/sec

  select mechanism: push-harder - first-touch

  coordinate origin: upper left corner

  filter frequency: medium

  data block mask: all enabled

  click lock: on

INT 7F ABCD


7F D6-- Format of Alloy MW386 reset packet:

Copy to Main

Table 2554

Format of Alloy MW386 reset packet:

Offset	Size	Description

 00h	DWORD	reset code (60606060h)

 04h 16 BYTEs	ASCIZ supervisor password padded with nulls

INT 7F D6--


80 ---- Values for SBSIM error code:

Copy to Main

Table 2555

Values for SBSIM error code:

 01h	busy--currently in use

 02h	bad driver specified

 03h	invalid function

 04h	voice process already active

 05h	couldn't start CT-VOICE

 06h	couldn't start CTVDSK

 07h	invalid SBSIM handle

 08h	buffer not initialized yet

 09h	bad filename

 0Ah	bad file handle

 0Bh	driver not started yet

 0Ch	XMS driver not installed

 0Dh	no free SBSIM handles

 0Eh	bad file type

 0Fh	couldn't free XMS block

 10h	invalid source selected

 11h	get pan position failed

 12h	set pan position failed

 13h	set volume failed

 14h	couldn't start fade/pan

 15h	couldn't stop fade/pan

 16h	couldn't pause fade/pan

 17h	not a fade/pan operation

 18h	bad mode for fade/pan

 19h	couldn't start fade/pan

 1Ah	source not fading/panning

 1Bh	FM or MIDI already playing

 1Ch	bad MIDI mapper format

INT 80 ----


80 ---- Bitfields for SBSIM loaded drivers:

Copy to Main

Table 2556

Bitfields for SBSIM loaded drivers:

Bit(s)	Description

 0	FM

 1	double disk-buffered voice driver (DDBV)

 2	memory voice driver

 3	auxiliary driver (mixer)

 4	MIDI

INT 80 ----


80 ---- Values for SBSIM sound source:

Copy to Main

Table 2557

Values for SBSIM sound source:

 00h	master volume

 01h	voice

 02h	FM

 03h	CD

 04h	line in

 05h	microphone

INT 80 ----


81 0200 Values for MegaEm status:

Copy to Main

Table 2558

Values for MegaEm status:

 0000h	successful

 0001h	invalid command line optie

 0002h	display options

 0003h	???

 0004h	invalid number of voices specified

 0005h	could not load enough patches to provide acceptable emulation

 0006h	to many warnings on patch loading

 0007h	??? (not used anymore)

 0008h	/CO and SCSI don't work together

 0009h	invalid music volume

 000Ah	invalid master volume

 000Bh	/SC switch is no longer valid

 0100h	??? (some error on patch loading)

INT 81 0200


83 00-- Values for JM Pro Tracker error code:

Copy to Main

Table 2559

Values for JM Pro Tracker error code:

 000Ah	???

 000Bh	???

 0014h	???

 001Eh	some required parameters have not yet been set

 001Fh	already playing???

 FExxh	busy (API call already in progress)

 FFxxh	invalid function number

INT 83 00--


83 18-- Format of JM Pro Tracker buffer-pointer structure:

Copy to Main

Table 2560

Format of JM Pro Tracker buffer-pointer structure:

Offset	Size	Description

 00h	WORD	length of ??? buffer (see AH=05h)

 02h	DWORD	-> ??? buffer (see AH=05h)

 06h	WORD	length of ??? buffer (see AH=06h)

 08h	DWORD	-> ??? buffer (see AH=06h)

 0Ch	WORD	length of ??? buffer (see AH=07h)

 0Eh	DWORD	-> ??? buffer (see AH=07h)

 12h	WORD	??? (see AH=07h)

 14h	WORD	??? (see AH=10h) (subfunction 01h)

 16h	WORD	??? (see AH=10h) (subfunction 01h)

 18h	WORD	??? (see AH=10h) (subfunction 00h)

 1Ah	WORD	??? (see AH=10h) (subfunction 01h)

INT 83 18--


88 --00 Format of APL*PLUS/PC shape model:

Copy to Main

Table 2561

Format of APL*PLUS/PC shape model:

Offset	Size	Description

 00h	BYTE	type

01h character (2-byte dimension sizes)

02h integer (2-byte dimension sizes)

08h floating point (2-byte dimension sizes)

11h character (4-byte dimension sizes)

12h integer (4-byte dimension sizes)

18h floating point (4-byte dimension sizes)

 01h	BYTE	rank

 02h	(D)WORD first dimension of shape

 N	(D)WORD second dimension of shape

...

INT 88 --00


92 E1-- Values for Da Vinci eMail function status:

Copy to Main

Table 2562

Values for Da Vinci eMail function status:

 0001h	success

 FF97h	"ERS_NOT_AVAILABLE"

 FF99h	"ERS_TOO_MANY_NAMES"

 FF9Ah	"ERS_BAD_NAME_PASSWORD"

 FFE3h	"ERS_NAME_NOT_FOUND"

 FFF8h	"ERS_USE_STRING" (call NetGetError to get error string)

 FFFFh	"ERS_NO_SUCH_FILE"

INT 92 E1--


92 E100 Format of Da Vinci eMail "NetInitStart" parameter block:

Copy to Main

Table 2563

Format of Da Vinci eMail "NetInitStart" parameter block:

Offset	Size	Description

 00h	WORD	segment of ???

 02h	WORD	offset of ???

 04h	WORD	high part of long ???

 06h	WORD	low part of long ???

 08h	WORD	high part of long ???

 0Ah	WORD	low part of long ???

 0Ch	WORD	high part of long ???

 0Eh	WORD	low part of long ???

 10h	WORD	high part of long ???

 12h	WORD	low part of long ???

INT 92 E100


92 E104 Format of Da Vinci eMail "NetWhereIs" parameter block:

Copy to Main

Table 2564

Format of Da Vinci eMail "NetWhereIs" parameter block:

Offset	Size	Description

 00h	WORD	segment of node address buffer

 02h	WORD	offset of node address buffer

 04h	WORD	segment of uppercase username

 06h	WORD	offset of uppercase username

 08h	WORD	segment of "DVSEMAIL"

 0Ah	WORD	offset of "DVSEMAIL"

INT 92 E104


92 E105 Format of Da Vinci eMail "NetOpen" parameter block:

Copy to Main

Table 2565

Format of Da Vinci eMail "NetOpen" parameter block:

Offset	Size	Description

 00h	WORD	operation (1 = read, 2 = write)

 02h	WORD	segment of uppercase To: username

 04h	WORD	offset of uppercase To: username

 06h	WORD	segment of "DVSEMAIL"

 08h	WORD	offset of "DVSEMAIL"

 0Ah	WORD	segment of node address

 0Ch	WORD	offset of node address

INT 92 E105


92 E108 Format of Da Vinci eMail "NetWrite" parameter block:

Copy to Main

Table 2566

Format of Da Vinci eMail "NetWrite" parameter block:

Offset	Size	Description

 00h	WORD	buffer count (see #2568)

 02h	WORD	segment of command buffer (see #2567)

 04h	WORD	offset of command buffer

 06h	WORD	handle from NetOpen

INT 92 E108


92 E108 Format of Da Vinci eMail command buffer:

Copy to Main

Table 2567

Format of Da Vinci eMail command buffer:

Offset	Size	Description

 00h	BYTE	command

21h '!' Protocol commands for remote control

41h 'A' Authorization protocol element

42h 'B' Return(back) routing information

    Associated data is the From: username

43h 'C' Carbon Copy list

    Associated data is a comma delimitted list of usernames

44h 'D' Distribution list

    Associated data is a comma delimitted list of usernames

45h 'E' Mail end marker

    No associated data

48h 'H' Mail message header

    Associated data is a message header buffer

4Dh 'M' Mail message

    Associated data is the body of the message

4Fh 'O' Object

50h 'P' Paperclip attachment

52h 'R' Routing information

    Associated data is the To: username

53h 'S' Subject

    Associated data is the subject of the message

54h 'T' Trail of Reply/Forwards

 01h	BYTE	subcommand

 02h	DWORD	length of associated data

INT 92 E108


92 E108 Format of Da Vinci eMail message header buffer:

Copy to Main

Table 2568

Format of Da Vinci eMail message header buffer:

Offset	Size	Description

 00h 30 BYTEs	subject line

 1Eh 24 BYTEs	To

 36h 24 BYTEs	From

 4Eh	DWORD	Time

BYTE	00h

BYTE	hour

BYTE	minute

BYTE	second

 52h	DWORD	Date

BYTE	00h

BYTE	year

BYTE	month

BYTE	day

 56h	DWORD	serial number (00000000h)

 5Ah	WORD	mail types (see #2569)

 5Ch	WORD	special types (0)

INT 92 E108


92 E108 Bitfields for Da Vinci eMail mail types:

Copy to Main

Table 2569

Bitfields for Da Vinci eMail mail types:

Bit(s)	Description

 7	blind carbon copy

 6	carbon copy

 5	priority

 4	confidential

 3	certified

 2	bulk

 1-0	class (first, second, third, bulk)

INT 92 E108


92 E109 Format of Da Vinci eMail "NetErrorFix" parameter block:

Copy to Main

Table 2570

Format of Da Vinci eMail "NetErrorFix" parameter block:

Offset	Size	Description

 00h	WORD	???

INT 92 E109


92 E10A Format of Da Vinci eMail "NetClose" parameter block:

Copy to Main

Table 2571

Format of Da Vinci eMail "NetClose" parameter block:

Offset	Size	Description

 00h	WORD	handle from NetOpen

INT 92 E10A


92 E10B Format of Da Vinci eMail "NetCheckQueue" parameter block:

Copy to Main

Table 2572

Format of Da Vinci eMail "NetCheckQueue" parameter block:

Offset	Size	Description

 00h	WORD	segment of 24-byte username buffer

 02h	WORD	offset of 24-byte username buffer

 04h	WORD	segment of 24-byte protocol buffer

 06h	WORD	offset of 24-byte protocol buffer

INT 92 E10B


92 E10C Format of Da Vinci eMail "NetReadQueue" parameter block:

Copy to Main

Table 2573

Format of Da Vinci eMail "NetReadQueue" parameter block:

Offset	Size	Description

 00h	WORD	Segment of 128 byte node address buffer

 02h	WORD	Offset of 128 byte node address buffer

INT 92 E10C


92 E10D Format of Da Vinci eMail "NetSubmitName" parameter block:

Copy to Main

Table 2574

Format of Da Vinci eMail "NetSubmitName" parameter block:

Offset	Size	Description

 00h	WORD	segment of uppercase password string

 02h	WORD	offset of uppercase password string

 04h	WORD	segment of uppercase username string

 06h	WORD	offset of uppercase username string

 08h	WORD	segment of "DVSEMAIL"

 0Ah	WORD	offset of "DVSEMAIL"

INT 92 E10D


92 E10E Format of Da Vinci eMail "NetRemoveName" parameter block:

Copy to Main

Table 2575

Format of Da Vinci eMail "NetRemoveName" parameter block:

Offset	Type	Description

 00h	WORD	segment of uppercase username

 02h	WORD	offset of uppercase username

 04h	WORD	segment of "DVSEMAIL"

 06h	WORD	offset of "DVSEMAIL"

INT 92 E10E


92 E110 Format of Da Vinci eMail "NetGetAltRoute" parameter block:

Copy to Main

Table 2576

Format of Da Vinci eMail "NetGetAltRoute" parameter block:

Offset	Size	Description

 00h  6 WORDs	???

INT 92 E110


92 E111 Format of Da Vinci eMail "NetDeleteAltRoutes" parameter block:

Copy to Main

Table 2577

Format of Da Vinci eMail "NetDeleteAltRoutes" parameter block:

Offset	Size	Description

 00h  4 WORDs	???

INT 92 E111


92 E112 Format of Da Vinci eMail "NetChangePassword" parameter block:

Copy to Main

Table 2578

Format of Da Vinci eMail "NetChangePassword" parameter block:

Offset	Size	Description

 00h  8 WORDs	???

INT 92 E112


92 E113 Format of Da Vinci eMail "NetSetAltRoute" parameter block:

Copy to Main

Table 2579

Format of Da Vinci eMail "NetSetAltRoute" parameter block:

Offset	Size	Description

 00h  8 WORDs	???

INT 92 E113


94 ---- Format of PCM driver function 0002h parameters:

Copy to Main

Table 2580

Format of PCM driver function 0002h parameters:

Offset	Size	Description

 00h	DWORD	rate

 04h	WORD	channel number

 06h	WORD	"comp"

 08h	WORD	"dsize"

INT 94 ----


94 ---- Format of PCM driver function 0003h parameters:

Copy to Main

Table 2581

Format of PCM driver function 0003h parameters:

Offset	Size	Description

 00h	DWORD	-> DMA buffer

 04h	WORD	size of DMA buffer

 06h	WORD	number of divisions

INT 94 ----


94 ---- Format of PCM driver function 0004h parameters:

Copy to Main

Table 2582

Format of PCM driver function 0004h parameters:

Offset	Size	Description

 00h	DWORD	-> user function

INT 94 ----


94 ---- Format of PCM driver functio 000Bh parameters:

Copy to Main

Table 2583

Format of PCM driver functio 000Bh parameters:

Offset	Size	Description

 00h	DWORD	-> memory block to contain DMA buffer

 04h	WORD	desired size of DMA buffer

INT 94 ----


94 ---- Bitfields for PCM.COM status:

Copy to Main

Table 2584

Bitfields for PCM.COM status:

Bit(s)	Description

 0	playing

 1	recording

 2	SBplaying

 3	SBrecording

 14	SBpaused

 15	paused

INT 94 ----


94 ---- Format of PCM.COM DMA info structure:

Copy to Main

Table 2585

Format of PCM.COM DMA info structure:

Offset	Size	Description

 00h	DWORD	-> DMA buffer (offset FFFFh = return current buffer info)

 04h	WORD	DMA buffer size

 06h	WORD	divisions

INT 94 ----


94 --10 Bitfields for PCM.COM timer options:

Copy to Main

Table 2586

Bitfields for PCM.COM timer options:

Bit(s)	Description

 7	set timer

 6	timer active (timer turned off if clear)

 5-0	timer number

INT 94 --10


D4 02-- Format of PC-MOS/386 System Control Block:

Copy to Main

Table 2587

Format of PC-MOS/386 System Control Block:

Offset	Size	Description

 00h	WORD	pointer to first TCB in chain

 02h 17 BYTEs	reserved

 13h	WORD	pointer to current task's TCB

 15h	WORD	pointer to TCB of visible (console) task

INT D4 02--


D4 03-- Format of PC-MOS/386 directory information:

Copy to Main

Table 2588

Format of PC-MOS/386 directory information:

Offset	Size	Description

 00h	BYTE	reserved (0)

 01h	BYTE	file class ('A'-'Z' or 00h)

 02h	DWORD	user ID of file creator

 06h	WORD	file creation time (see #0876 at INT 21/AX=5700h)

 08h	WORD	file creation date (see #0877 at INT 21/AX=5700h)

INT D4 03--


D4 04-- Format of PC-MOS/386 Task Control Block:

Copy to Main

Table 2589

Format of PC-MOS/386 Task Control Block:

Offset	Size	Description

 00h	BYTE	signature byte "H" if allocated from system memory pool

 01h	BYTE	header block ID, "T" = TCB

 02h	WORD	length of block in paragraphs

 04h	WORD	segment address of next header block (0000h if last)

 06h	WORD	segment address of previous header block (0000h if first)

 08h	WORD	pointer to next TCB

 0Ah	WORD	pointer to previous TCB

 0Ch	WORD	pointer to associated TCB (if applicable)

 0Eh	WORD	reserved

---TCB---

 10h	WORD	TCB task ID

 12h	WORD	native context save area

 14h	WORD	start address of task

 16h	WORD	end address of task

 18h	BYTE	task priority

 19h	BYTE	task time slice

 1Ah	BYTE	"TCBWAIT" run status of task

 1Bh	BYTE	"TCBSTAT" what the task is waiting for

 1Ch	DWORD	address of polling routine

 20h	BYTE	error code from last function call

 21h 11 BYTEs	name of currently executing task

 2Ch  4 BYTEs	???

 30h	BYTE	keyboard disabled if bit 1 set

 31h	BYTE	current shift state and toggles

 32h  2 BYTEs	???

 34h	BYTE	current video mode

 35h	BYTE	current video page

 36h	BYTE	number of text columns per screen

 37h	BYTE	number of text rows per screen

 38h	WORD	length of video buffer

 3Ah	WORD	video page length

 3Ch	WORD	apge start address in video RAM

 3Eh  4 WORDs	current cursor positions for four screen pages

 46h  8 BYTEs	???

 4Eh	WORD	current cursor type

 50h	BYTE	current palette setting

 51h	BYTE	original video mode

 52h	BYTE	start CRT row (00h or 01h)

 53h	BYTE	video RAM in task active

 54h	WORD	handle of video save area

 56h	WORD	page count of video save area

 58h	WORD	segment address of video save area

 5Ah	WORD	poitner to first Task File Block (see #2592)

 5Ch	WORD	pointer to first Current Directory Block (see #2595)

 5Eh	WORD	pointer to active Current Directory Block (see #2595)

 60h	BYTE	number of drives

 61h	BYTE	current drive (0=A:, etc.)

 62h	DWORD	disk transfer address

 66h  4 BYTEs	???

 6Ah	BYTE	verify flag (nonzero = on)

 6Bh	BYTE	break flag (nonzero = on)

 6Ch	WORD	share/lock retry count

 6Eh	WORD	ticks between share/lock retries

 70h	BYTE	remote printer flags (see #2590)

 71h	BYTE	ETX/ACK delay count

 72h	WORD	spooler segment address

 74h  2 BYTEs	???

 76h  3 BYTEs	remote printer redirection for LPT1 through LPT3 (see #2591)

 79h  2 BYTEs	???

 7Bh	DWORD	offset of username in TCB

 7Fh	BYTE	current output class

 80h  7 BYTEs	protection access rights, 2 bits per class (writeable!)

 87h 122 BYTEs	???

101h	BYTE	TCB sleep downcounter value

102h 20 BYTEs	???

116h	BYTE	last scan code

...

5D0h	DWORD	far pointer to Device Driver Terminal's entry point

5D4h	WORD	offset of logical screen

5D6h	WORD	segment of logical screen

5D8h	WORD	cursor offset within page

5DAh	BYTE	screen columns

5DBh	WORD	async port number (0000h = none)

5DDh	DWORD	physical baudrate

5E1h 19 BYTEs	reserved for Device Driver Terminal (DDT)

...

7A6h	DWORD	far pointer to unregister calling chain

INT D4 04--


D4 04-- Bitfields for PC-MOS/386 remote printer flags:

Copy to Main

Table 2590

Bitfields for PC-MOS/386 remote printer flags:

Bit(s)	Description

 0	LPT1 to terminal

 1	LPT2 to terminal

 2	LPT3 to terminal

 3	escape to printer pending

 4	use XON/XOFF

 5	use ETX/ACK

 6	waiting for ACK or XON

 7	transparent printing on

INT D4 04--


D4 04-- Values for PC-MOS/386 remote printer redirection:

Copy to Main

Table 2591

Values for PC-MOS/386 remote printer redirection:

 00h	not redirected

 01h	redirected to COM1

 ...

 18h	redirected to COM24

 51h	redirected to LPT1

 52h	redirected to LPT2

 53h	redirected to LPT3

INT D4 04--


D4 04-- Format of PC-MOS/386 Task File Block:

Copy to Main

Table 2592

Format of PC-MOS/386 Task File Block:

Offset	Size	Description

 00h	BYTE	signature byte "H" if allocated from system memory pool

 01h	BYTE	header block ID, "F" = task file block

 02h	WORD	length of block in paragraphs

 04h	WORD	segment address of next header block (0000h if last)

 06h	WORD	segment address of previous header block (0000h if first)

 08h	WORD	pointer to next TCB

 0Ah	WORD	pointer to previous TCB

 0Ch	WORD	pointer to associated TCB (if applicable)

 0Eh	WORD	reserved

---TFB---

 10h	WORD	segment address of next TFB

 12h	WORD	segment address of previous TFB

 14h	WORD	segment address of TFB's Global File Block (see #2594)

 16h	WORD	segment address of owner's PSP

 18h	WORD	file handle

 1Ah  3 BYTEs	???

 1Dh	DWORD	file position

 21h  4 BYTEs	???

 25h	BYTE	IOCTL flags (see #2593)

 26h  2 BYTEs	???

INT D4 04--


D4 04-- Bitfields for PC-MOS/386 IOCTL flags:

Copy to Main

Table 2593

Bitfields for PC-MOS/386 IOCTL flags:

Bit(s)	Description

 0	stdin

 1	stdout

 2	null device

 3	clock device

 4	reserved

 5	ASCII mode instead of binary

 6	EOF encountered on input

 7	device rather than file

INT D4 04--


D4 04-- Format of PC-MOS/386 Global File Block:

Copy to Main

Table 2594

Format of PC-MOS/386 Global File Block:

Offset	Size	Description

 00h	BYTE	signature byte "H" if allocated from system memory pool

 01h	BYTE	header block ID, "G" = global file block

 02h	WORD	length of block in paragraphs

 04h	WORD	segment address of next header block (0000h if last)

 06h	WORD	segment address of previous header block (0000h if first)

 08h	WORD	pointer to next TCB

 0Ah	WORD	pointer to previous TCB

 0Ch	WORD	pointer to associated TCB (if applicable)

 0Eh	WORD	reserved

---GFB---

 10h 10 BYTEs	???

 1Ah	WORD	file attribute

 1Ch	BYTE	???

 1Dh	DWORD	address of device driver

 21h	WORD	first cluster

 23h	WORD	time of last modification

 25h	WORD	date of last modification

 27h	DWORD	size of file in bytes

 2Bh 11 BYTEs	???

 36h 11 BYTEs	device name or FCB-format filename

 41h	WORD	segment address of TFB list

 43h	WORD	segment address of first RLB (see #2597) (0000h = none)

 45h	BYTE	flag: nonzero if GFB refers to character device

 46h	WORD	address of Block Device Block (see #2596)

 48h	WORD	sector of file's directory entry

 4Ah	WORD	high word of file's directory entry

 4Ch	WORD	ofsset of directory entry within sector

INT D4 04--


D4 04-- Format of PC-MOS/386 Current Directory Block:

Copy to Main

Table 2595

Format of PC-MOS/386 Current Directory Block:

Offset	Size	Description

 00h	BYTE	signature byte "H" if allocated from system memory pool

 01h	BYTE	header block ID, "C" = current directory block

 02h	WORD	length of block in paragraphs

 04h	WORD	segment address of next header block (0000h if last)

 06h	WORD	segment address of previous header block (0000h if first)

 08h	WORD	pointer to next TCB

 0Ah	WORD	pointer to previous TCB

 0Ch	WORD	pointer to associated TCB (if applicable)

 0Eh	WORD	reserved

---CDB---

 10h	BYTE	drive number

 11h	BYTE	???

 12h 64 BYTEs	directory name

 52h	WORD	first directory cluster (0000h = root)

INT D4 04--


D4 04-- Format of PC-MOS/386 Block Device Block:

Copy to Main

Table 2596

Format of PC-MOS/386 Block Device Block:

Offset	Size	Description

 00h	BYTE	signature byte "H" if allocated from system memory pool

 01h	BYTE	header block ID, "B" = block device block

 02h	WORD	length of block in paragraphs

 04h	WORD	segment address of next header block (0000h if last)

 06h	WORD	segment address of previous header block (0000h if first)

 08h	WORD	pointer to next TCB

 0Ah	WORD	pointer to previous TCB

 0Ch	WORD	pointer to associated TCB (if applicable)

 0Eh	WORD	reserved

---BDB---

 10h	BYTE	logical drive

 11h	BYTE	unit passed to driver

 12h	WORD	sector size

 14h	BYTE	cluster mask

 15h	BYTE	cluster shift count

 16h	WORD	starting sector of first FAT

 18h	BYTE	number of FATs

 19h	WORD	number of root directories

 1Bh	WORD	sector number of first data sector (cluster 0002h)

 1Dh	WORD	number of clusters + 1 (number of highest data cluster)

 1Fh	BYTE	number of sectors in FAT

 20h	WORD	beginning root directory sector number

 22h	DWORD	device driver address

 26h	BYTE	media descriptor byte

 27h  5 BYTEs	???

 2Ch	BYTE	flag: volume > 32MB

 2Dh	BYTE	???

 2Eh	BYTE	number of sectors per cluster

 2Fh	WORD	number of clusters on device

 31h	WORD	number of free clusters (FFFFh = unknown)

 33h	WORD	root directory cluster number

 35h	WORD	pointer to alias/subst string

 37h	WORD	TCB segment address of owner (0000h = none)

INT D4 04--


D4 04-- Format of PC-MOS/386 Record Lock Block:

Copy to Main

Table 2597

Format of PC-MOS/386 Record Lock Block:

Offset	Size	Description

 00h	BYTE	signature byte "H" if allocated from system memory pool

 01h	BYTE	header block ID, "R" = record lock block

 02h	WORD	length of block in paragraphs

 04h	WORD	segment address of next header block (0000h if last)

 06h	WORD	segment address of previous header block (0000h if first)

 08h	WORD	pointer to next TCB

 0Ah	WORD	pointer to previous TCB

 0Ch	WORD	pointer to associated TCB (if applicable)

 0Eh	WORD	reserved

---RLB---

 10h	WORD	segment address of owner's PSP

 12h	WORD	segment address of Global File Block (see #2594)

 14h	WORD	segment address of owner's Task File Block (see #2592)

 16h	DWORD	file offset of locked region start

 1Ah	DWORD	length of locked region

 1Eh	WORD	owner's handle for file

INT D4 04--


D4 07-- Bitfields for PC-MOS/386 events to monitor:

Copy to Main

Table 2598

Bitfields for PC-MOS/386 events to monitor:

Bit(s)	Description

 0	keystroke

 1	timeout

 2	IRQ

 3	port access

 7	return status of user poll routine (other ignored if set)

INT D4 07--


D4 1D-- Format of PC-MOS/386 program name buffer:

Copy to Main

Table 2599

Format of PC-MOS/386 program name buffer:

Offset	Size	Description

 00h  8 BYTEs	filename

 08h  3 BYTEs	extension

INT D4 1D--


D4 22-- Values for PC-MOS/386 error code:

Copy to Main

Table 2600

Values for PC-MOS/386 error code:

 08h	insufficient memory

 0Bh	invalid addtask structure format

 12h	insufficient available space in system memory pool

 1Fh	general failure

 55h	already allocated

 57h	if task already in use or invalid parameter

INT D4 22--


D4 22-- Format of PC-MOS/386 addtask data structure:

Copy to Main

Table 2601

Format of PC-MOS/386 addtask data structure:

Offset	Size	Description

 00h	WORD	task size in KB (min 16KB)

 02h	WORD	task ID (0000h for automatic selection)

 04h	BYTE	task class (' ' or 'A'-'Z')

 05h	DWORD	-> ASCIZ name of task startup batchfile

 09h	DWORD	-> task's terminal driver (0000000h = background task)

 0Dh	WORD	task port

 0Fh	DWORD	task baud rate

 13h	DWORD	(ret) total extended memory

 17h	DWORD	(ret) number of 4K extended memory pages allocated

 1Bh	WORD	(ret) paragraphs of system memory pool allocated

 1Dh	WORD	(ret) system memory pool size in paragraphs

 1Fh	WORD	(ret) ASCII task percentage of system memory pool

 21h  3 BYTEs	reserved

INT D4 22--


E0 ---- Values for CP/M-86,DR Multiuser DOS function number:

Copy to Main

Table 2602

Values for CP/M-86,DR Multiuser DOS function number:

 00h	terminate calling process (see also INT 21/AH=00h)

 01h	read a character

 02h	write character to default console (see also INT 21/AH=02h)

 03h	read character from default AUX (see also INT 21/AH=03h)

 04h	write character to default AUX (see also INT 21/AH=04h)

 05h	write character to default list device (see also INT 21/AH=05h)

 06h	perform raw I/O on default console (see also INT 21/AH=06h)

 07h	return default AUX input status

 08h	return default AUX output status

 09h	write string to default console (see also INT 21/AH=09h)

 0Ah	read string from default console (see also INT 21/AH=0Ah)

 0Bh	return default console input status (see also INT 21/AH=0Bh)

 0Ch	get BDOS release ID

 0Dh	reset all disk drives (see also INT 21/AH=0Dh)

 0Eh	set default drive (see also INT 21/AH=0Eh)

 0Fh	open file via FCB (see also INT 21/AH=0Fh,#0574)

 10h	close file via FCB (see also INT 21/AH=10h)

 11h	search for first matching file with FCB (see also INT 21/AH=11h)

 12h	search for next matching file with FCB (see also INT 21/AH=12h)

 13h	delete file via FCB (see also INT 21/AH=13h)

 14h	sequential read via FCB (see also INT 21/AH=14h)

 15h	sequential write via FCB (see also INT 21/AH=15h)

 16h	create file via FCB (see also INT 21/AH=16h)

 17h	rename file via FCB (see also INT 21/AH=17h)

 18h	get bit map of logged drives

 19h	get default drive (see also INT 21/AH=19h)

 1Ah	set DMA address offset

 1Bh	get default disk allocation vector (see also INT 21/AH=1Bh)

 1Ch	set default drive to read-only

 1Dh	get bit map of read-only drives

 1Eh	set file attributes via FCB (see also INT 21/AX=4301h)

 1Fh	get address of disk parameter block (see also INT 21/AH=1Fh)

 20h	get/set default user number

 21h	read random record via FCB (see also INT 21/AH=21h)

 22h	write random record via FCB (see also INT 21/AH=22h)

 23h	compute file size with FCB (see also INT 21/AH=23h)

 24h	get FCB random record number (see also INT 21/AH=24h)

 25h	reset specified drives

 26h	access specified drives (not in DR DOS Plus v2.1)

 27h	free specified drives

 28h	write random with FCB, zero fill (see also also INT 21/AH=28h)

 2Ah	lock records in FCB file (see also INT 21/AH=5Ch)

 2Bh	unlock records in FCB file (see also INT 21/AH=5Ch)

 2Ch	set BDOS multisector count

 2Dh	set BDOS error mode

 2Eh	get free space on disk

 2Fh	load, initialize, and jump to process (see also INT 21/AH=4Bh)

 30h	flush write-deferred buffers

 31h	get/set system variable (DOS Plus v2.1)

 32h	call BIOS (XIOS) character routine (see #2603)

 33h	set DMA address segment

 34h	get DMA buffer address

 35h	CP/M-86 allocate maximum memory

 36h	allocate maximum memory at specified segment

 37h	CP/M-86 allocate memory segment (see also INT 21/AH=48h)

 38h	allocate memory at specified segment

 39h	CP/M-86 free specified memory segment (see also INT 21/AH=49h)

 3Ah	CP/M-86 free all memory (not in DOS Plus v2.1)

 3Bh	load .CMD file into memory

 3Ch	(DOS Plus v2.1) call RSX program

 40h	(DR-NET) log on a server

 41h	(DR-NET) log off a server

 42h	(DR-NET) send a message

 43h	(DR-NET) receive a message

 44h	(DR-NET) get network status

 45h	(DR-NET) get requestor configuration table

 46h	(DR-NET) set compatibility attributes

 47h	(DR-NET) get server configuration table

 48h	(DR-NET) set network error mode

 49h	(DR-NET) attach network

 4Ah	(DR-NET) detach network

 4Bh	(DR-NET) set default password

 4Ch	(DR-NET) get-set long timeout

 4Dh	(DR-NET) get parameter table

 50h	(DR-NET) get network information

 53h	get current time (see also INT 21/AH=2Ch)

 54h	set current time (see also INT 21/AH=2Dh)

 55h	get binary system date (see also INT 21/AH=2Ah)

 56h	set system date (see also INT 21/AH=2Bh)

 57h	allocate system flag

 58h	deallocate system flag

 59h	reserve memory in global area

 5Ah	lock physical drive

 5Bh	unlock physical drive

 5Ch	search path for executable file

 5Dh	load and execute command (see also INT 21/AH=4Bh)

 5Eh	get/set process exit code

 5Fh	set country information

 60h	get country information

 63h	truncate FCB file (see also INT 21/AH=28h)

 64h	create/update directory label

 65h	get directory label

 66h	get FCB date stamp and password mode

 67h	write extended FCB

 68h	set system date and time

 69h	get system date and time in binary

 6Ah	establish password for file access

 6Bh	get OS serial number

 6Ch	(DOS Plus v2.1) get/set program return code

 6Dh	get/set console mode

 6Eh	get/set string delimiter

 6Fh	write block to default console

 70h	write block to default list device

 71h	execute DOS-compatible function

 74h	set FCB time and date stamps

 80h	allocate memory

 82h	deallocate memory

 83h	poll I/O device

 84h	wait on system flag

 85h	set system flag

 86h	create message queue

 87h	open message queue

 88h	delete message queue

 89h	read from message queue

 8Ah	conditionally read from message queue

 8Bh	write to message queue

 8Ch	conditionally write to message queue

 8Dh	delay calling process

 8Eh	call process dispatcher (yield CPU)

 8Fh	terminate calling process (same as function 00h)

 90h	create a process

 91h	set calling process' priority

 92h	attach to default console

 93h	detach from default console

 95h	assign default console to process

 96h	interpret and execute commandline

 97h	resident procedure library

 98h	parse ASCII string into FCB (see also INT 21/AH=29h)

 99h	return default console

 9Ah	get address of system data (SYSDAT)

 9Bh	get system time and date

 9Ch	return calling process' descriptor

 9Dh	terminate process by name or PD address

 9Eh	attach to default list device

 9Fh	detach from default list device

 A0h	select default list device

 A1h	conditionally attach to default list device

 A2h	conditionally attach to default console

 A3h	get OS version number

 A4h	get default list device

 A5h	attach to default AUX

 A6h	detach from default AUX

 A7h	conditionally attach to default AUX

 A8h	set default AUX

 A9h	return default AUX

 ACh	read block from default AUX

 ADh	(DOS Plus v2.1) write block to default AUX

 B0h	configure default AUX

 B1h	get/set device control parameters

 B2h	send Break through default AUX

 B3h	allocate physical memory

 B4h	free physical memory

 B5h	map physical memory

 B6h	nondestructive message queue read

 B7h	timed wait on system flag

 B8h	get/set I/O port mapping

 B9h	set list device timeout

 BAh	set AUX timeout value

 BBh	execute XIOS service

 BDh	(DR Multiuser DOS) delay

 FFh	return 80386 to native mode

INT E0 ----


E0 ---- Values for DOS Plus v2.1 XIOS functions:

Copy to Main

Table 2603

Values for DOS Plus v2.1 XIOS functions:

 00h	terminate program

 01h	???

 02h	check for console input status

 03h	read character from console

 04h	write character to console

 05h	write character to list device

 06h	write character to auxiliary device

 07h	read cahracter from auxiliary device

 0Fh	get list device status

 10h-14h reserved

 15h	device initialization

 16h	check console output status

 17h-7Fh reserved

---BBC Acorn---

 80h	get XIOS version

 81h	get Tube semaphore

 82h	release Tube semaphore

 83h	select text/graphics

 84h	update B&W graphics rectangle

 85h	update color graphics rectangle

 86h	get/release/update mouse

 87h	get system error info

 88h	entry in CLOCK called by WatchDog RSP

 89h	BBC OSBYTE function

 8Ah	BBC OSWORD function

INT E0 ----


E0 ---- Values for DR Multiuser DOS Error Return Code:

Copy to Main

Table 2604

Values for DR Multiuser DOS Error Return Code:

 00h	no error

 01h	system call not implemented

 02h	illegal system call number

 03h	cannot find memory

 04h	illegal flag number

 05h	flag overrun

 06h	flag underrun

 07h	no unused Queue Descriptors

 08h	no free queue buffer

 09h	cannot find queue

 0Ah	queue in use

 0Ch	no free Process Descriptors

 0Dh	no queue access

 0Eh	empty queue

 0Fh	full queue

 10h	CLI queue missing

 11h	no 8087 in system

 12h	no unused Memory Descriptors

 13h	illegal console number

 14h	no Process Descriptor match

 15h	no console match

 16h	no CLI process

 17h	illegal disk number

 18h	illegal filename

 19h	illegal filetype

 1Ah	character not ready

 1Bh	illegal Memory Descriptor

 1Ch	bad return from BDOS load

 1Dh	bad return from BDOS read

 1Eh	bad return from BDOS open

 1Fh	null command

 20h	not owner of resource

 21h	no CSEG in load file

 22h	process Descriptor exists on Thread Root

 23h	could not terminate process

 24h	cannot attach to process

 25h	illegal list device number

 26h	illegal password

 28h	external termination occurred

 29h	fixup error upon load

 2Ah	flag set ignored

 2Bh	illegal auxilliary device number

INT E0 ----


E0 ---- Format of DR Multiuser DOS queue descriptor:

Copy to Main

Table 2605

Format of DR Multiuser DOS queue descriptor:

Offset	Size	Description

 00h  2 WORDs	internal use, initialize to zeros

 04h	WORD	flags

 06h  8 BYTEs	queue name

 0Eh	WORD	length of message

 10h	WORD	number of messages

 12h  4 WORDs	internal use, initialize to zeros

 1Ah	WORD	offset in system area of buffer for messages

INT E0 ----


E0 ---- Format of DR Multiuser DOS queue parameter block:

Copy to Main

Table 2606

Format of DR Multiuser DOS queue parameter block:

Offset	Size	Description

 00h	WORD	internal use, initialize to zero

 02h	WORD	queue ID (set by INT E0/CL=87h)

 04h	WORD	internal use, initialize to zero

 06h	WORD	offset of queue message buffer

 08h  8 BYTEs	queue name

INT E0 ----


E0 ---- Format of DR Multiuser DOS character control block (CHCB):

Copy to Main

Table 2607

Format of DR Multiuser DOS character control block (CHCB):

Offset	Size	Description

 00h	DWORD	pointer to character buffer

 04h	WORD	length of character buffer

INT E0 ----


E0 ---- Format of DR Multiuser DOS AUX device parameter block:

Copy to Main

Table 2608

Format of DR Multiuser DOS AUX device parameter block:

Offset	Size	Description

 00h	BYTE	function (00h get, 01h set)

 01h	BYTE	baud rate (see #2610) FFh = don't change/unknown

 02h	BYTE	parity (see #2609)

 03h	BYTE	stop bits (00h one, 01h 1.5, 02h two, FFh unknown/don't change)

 04h	BYTE	data bits (05h-08h or FFh unknown/don't change)

 05h	BYTE	handshake (00h none, 01h DTS/DSR, 02h RTS/CTS, 04h XON/XOFF,

FFh unknown/don't change)

 06h	BYTE	XON character, FFh unknown/don't change

 07h	BYTE	XOFF character, FFh unknown/don't change

INT E0 ----


E0 ---- Values for DR Multiuser DOS AUX parity:

Copy to Main

Table 2609

Values for DR Multiuser DOS AUX parity:

 00h	none

 01h	odd

 02h	none

 03h	even

 04h	stick parity bit

 FFh	don't change/unknown

INT E0 ----


E0 ---- Values for DR Multiuser DOS AUX baud rate:

Copy to Main

Table 2610

Values for DR Multiuser DOS AUX baud rate:

 00h	50 baud

 01h	62.5 baud

 02h	75 baud

 03h	110 baud

 04h	134.5 baud

 05h	150 baud

 06h	200 baud

 07h	300 baud

 08h	600 baud

 09h	1200 baud

 0Ah	1800 baud

 0Bh	2000 baud

 0Ch	2400 baud

 0Dh	3600 baud

 0Eh	4800 baud

 0Fh	7200 baud

 10h	9600 baud

 11h	19200 baud

 12h	38400 baud

 13h	56000 baud

 14h	76800 baud

 15h	115200 baud

INT E0 ----


E0 ---- Format of DR Multiuser DOS AUX device control block:

Copy to Main

Table 2611

Format of DR Multiuser DOS AUX device control block:

Offset	Size	Description

 00h	BYTE	function (00h get, 01h set)

 01h	BYTE	DTR state (00h low, 01h high, FFh unknown/don't change)

 02h	BYTE	RTS state (00h low, 01h high, FFh unknown/don't change)

 03h	BYTE	DSR state (00h low, 01h high, FFh unknown/don't change)

 04h	BYTE	CTS state (00h low, 01h high, FFh unknown/don't change)

 05h	BYTE	DCD state (00h low, 01h high, FFh unknown/don't change)

 06h	BYTE	RI state (00h inactive, 01h active, FFh unknown/don't change)

INT E0 ----


E0 0021 Values for PCROBOTS map squares:

Copy to Main

Table 2612

Values for PCROBOTS map squares:

 2Eh '.' empty square

 44h 'D' damaging trap

 52h 'R' refueling point

 58h 'X' wall

INT E0 0021


E0 0080 Bitfields for PCROBOTS basic configuration:

Copy to Main

Table 2613

Bitfields for PCROBOTS basic configuration:

Bit(s)	Description

 0-3	maximum speed (0-4 = 50,75,100,150,200)

 4-7	maneuverability (0-4 = 20%,35%,50%,75%,100%)

 8-11	cannon range (0-4 = 300,500,700,1000,1500)

 12-15	robot armor (0-4 = 50,75,100,150,200)

INT E0 0080


E0 0080 Bitfields for PCROBOTS advanced configuration:

Copy to Main

Table 2614

Bitfields for PCROBOTS advanced configuration:

Bit(s)	Description

 0-2	robot acceleration (0-4 = 5,7,10,15,20)

 3	capable of invisibility

INT E0 0080


F1 --01 Format of CAPI v2.0 interrupt handler entry point:

Copy to Main

Table 2615

Format of CAPI v2.0 interrupt handler entry point:

Offset	Size	Description

 00h  2 BYTEs	short jump to actual start of interrupt handler, immediately

  following this data block (EBh 0Fh)

 02h	DWORD	address of next handler in chain

 06h	WORD	signature 424Bh

 08h	BYTE	EOI flag (80h)

80h primary hardware interrupt handler (will issue EOI)

 09h  2 BYTEs	reserved (0)

(is short jump to hardware reset routine in ISP header)

 0Bh  4 BYTEs	signature "CAPI"

 0Fh  2 BYTEs	two-digit CAPI version number in ASCII ('20')

SeeAlso: #1363 at INT 2D

INT F1 --01


F1 02-- Values for CAPI v1.1 error code:

Copy to Main

Table 2657

Values for CAPI v1.1 error code:

 0000h	successful

 1001h	registration error

 1002h	invalid application ID

 1003h	message too small or incorrectly coded message number

 1004h	invalid command or subcommand

 1005h	message queue full

 1006h	message queue empty

 1007h	message(s) lost due to queue overflow

 1008h	error uninstalling

SeeAlso: #2660

INT F1 02--


F1 --02 Values for CAPI v2.0 error code:

Copy to Main

Table 2660

Values for CAPI v2.0 error code:

 0000h	successful

 1001h	too many applications

 1002h	logical block size too small (must be at least 128 bytes)

 1003h	buffer > 64K

 1004h	message buffer too small (minimum 1024 bytes)

 1005h	too many logical connections requested

 1006h	reserved

 1007h	could not register because CAPI busy, try again

 1008h	OS resource unavailable (out of memory, etc.)

 1009h	COMMON-ISDN-API not installed

 100Ah	controller does not support external equipment

 100Bh	controller supports only external equipment

 1101h	invalid application ID

 1102h	illegal comand or subcommand, or message too short

 1103h	message queue full

 1104h	queue empty

 1105h	queue overflowed (message lost)

 1106h	unknown notification parameter

 1107h	could not accept message because CAPI busy, try again

 1108h	OS resource unavailable (out of memory, etc.)

 1109h	COMMON-ISDN-API not installed

 110Ah	controller does not support external equipment

 110Bh	controller supports only external equipment

 2001h	message not supported in current state

 2002h	illegal controller/PLCI/NCCI

 2003h	out of PLCI

 2004h	out of NCCI

 2005h	out of LISTEN

 2006h	out of FAX resources (T.30 protocol)

 2007h	illegal message parameter coding

 3001h	unsupported B1 protocol

 3002h	unsupported B2 protocol

 3003h	unsupported B3 protocol

 3004h	unsupported B1 protocol parameter

 3005h	unsupported B2 protocol parameter

 3006h	unsupported B3 protocol parameter

 3007h	unsupported B protocol combination

 3008h	NCPI not supported

 3009h	unknown CIP value

 300Ah	unsupported flags (reserved bits set)

 300Bh	unsupported facility

 300Ch	data length not supported by current protocol

 300Dh	reset procedure not supported by current protocol

SeeAlso: #2657

INT F1 --02


F1 03-- Format of CAPI message:

Copy to Main

Table 2658

Format of CAPI message:

Offset	Size	Description

 00h	WORD	total message length, including header

 02h	WORD	application ID (see AH=01h)

 04h	BYTE	command (see #2659,#2661)

 05h	BYTE	subcommand (see #2659,#2661)

 06h	WORD	message sequence number

0000h-7FFFh messages from application to CAPI (and replies)

8000h-FFFFh messages from CAPI to application (and replies)

 08h	var	message data (max 172 bytes for v1.1 only)

INT F1 03--


F1 03-- Values for CAPI v1.1 message command/subcommand:

Copy to Main

Table 2659

Values for CAPI v1.1 message command/subcommand:

Cmd/SubCmd	Name	Description

 01h/00h    RESET-B3-REQ	request resetting of a Level 3 connection

 01h/01h    RESET-B3-CONF	confirm Level 3 connection reset

 01h/02h    RESET-B3-IND	indication from CAPI that Level 3 conn. reset

 01h/03h    RESET-B3-RESP	confirm receipt of RESET-B3-IND

 02h/00h    CONNECT-REQ	establish B-channel connection

 02h/01h    CONNECT-CONF	confirm start of connection establishment

 02h/02h    CONNECT-IND	indication from CAPI of incoming connection

 02h/03h    CONNECT-RESP	accept incoming connection

 03h/02h    CONNECT-ACTIVE-IND	indication that B-channel connection complete

 03h/03h    CONNECT-ACTIVE-RESP	confirm connection-complete indication

 04h/00h    DISCONNECT-REQ	request shutdown of B-channel connection

 04h/01h    DISCONNECT-CONF	confirm shutdown of B-channel connection

 04h/02h    DISCONNECT-IND	indication that B-channel is shutting down

 04h/03h    DISCONNECT-RESP	confirm that application knows of shutdown

 05h/00h    LISTEN-REQ	enable indication of incoming connections

 05h/01h    LISTEN-CONF	confirm enabling of incoming conn. indication

 06h/00h    GET-PARAMS-REQ	request B-channel parameters

 06h/01h    GET-PARAMS-CONF	return B-channel parameters

 07h/00h    INFO-REQ	set B-channel info to be signalled to app

 07h/01h    INFO-CONF	confirm B-channel info signalling

 07h/02h    INFO-IND	signal B-channel events to application

 07h/03h    INFO-CONF	confirm receipt of INFO-IND

 08h/00h    DATA-REQ	send D-channel data

 08h/01h    DATA-CONF	confirm receipt of DATA-REQ

 08h/02h    DATA-IND	receive D-channel data

 08h/03h    DATA-RESP	confirm receipt fo DATA-IND

 09h/00h    CONNECT-INFO-REQ	request connection information

 09h/01h    CONNECT-INFO-CONF	return connection information

 40h/00h    SELECT-B2-PROTOCOL-REQ  select Level 2 protocol

 40h/01h    SELECT-B2-PROTOCOL-CONF confirm receipt of SELECT-B2-PROTOCOL-REQ

 80h/00h    SELECT-B3-PROTOCOL-REQ  select Level 3 protocol

 80h/01h    SELECT-B3-PROTOCOL-CONF confirm receipt of SELECT-B3-PROTOCOL-REQ

 81h/00h    LISTEN-B3-REQ	enable notification of incoming Level 3 calls

 81h/01h    LISTEN-B3-CONF	confirm receipt of LISTEN-B3-REQ

 82h/00h    CONNECT-B3-REQ	establish Level 3 connection

 82h/01h    CONNECT-B3-CONF	confirm start of connection establishment

 82h/02h    CONNECT-B3-IND	indication of incoming Level 3 connection

 82h/03h    CONNECT-B3-RESP	accept incoming connection

 83h/02h    CONNECT-B3-ACTIVE-IND  indication that Level 3 connection complete

 83h/03h    CONNECT-B3-ACTIVE-RESP confirm connection-complete indication

 84h/00h    DISCONNECT-B3-REQ	request shutdown of Level 3 connection

 84h/01h    DISCONNECT-B3-CONF	confirm shutdown of Level 3 connection

 84h/02h    DISCONNECT-B3-IND	indication that Level 3 is shutting down

 84h/03h    DISCONNECT-B3-RESP	confirm that application knows of shutdown

 85h/00h    GET-B3-PARAMS-REQ	request Level 3 parameters

 85h/01h    GET-B3-PARAMS-CONF	return Level 3 parameters

 86h/00h    DATA-B3-REQ	send data on Level 3

 86h/01h    DATA-B3-CONF	confirm sending of Level 3 data

 86h/02h    DATA-B3-IND	indication of incoming Level 3 data

 86h/03h    DATA-B3-RESP	confirm receipt of Level 3 data

 87h/02h    HANDSET-IND	indication of Handset events

 87h/03h    HANDSET-RESP	confirm receipt of Handset event

 FFh/00h    MANUFACTURER-REQ	vendor-specific request

 FFh/01h    MANUFACTURER-CONF	vendor-specific request confirmation

 FFh/02h    MANUFACTURER-IND	vendor-specific notification

 FFh/03h    MANUFACTURER-RESP	vendor-specific notification confirmation

SeeAlso: #2658,#2661

INT F1 03--


F1 --03 Values for CAPI v2.0 message command/subcommand:

Copy to Main

Table 2661

Values for CAPI v2.0 message command/subcommand:

Cmd/SubCmd	Name	Description

 01h/80h    ALERT_REQ	indicate compatibility with incoming calls

 01h/81h    ALERT_CONF	confirm receipt of ALERT_REQ

 02h/80h    CONNECT_REQ	establish B-channel connection

 02h/81h    CONNECT_CONF	confirm start of connection establishment

 02h/82h    CONNECT_IND	indication from CAPI of incoming connection

 02h/83h    CONNECT_RESP	accept incoming connection

 03h/82h    CONNECT_ACTIVE_IND	indication that B-channel connection complete

 03h/83h    CONNECT_ACTIVE_RESP	confirm connection-complete indication

 04h/80h    DISCONNECT_REQ	request shutdown of B-channel connection

 04h/81h    DISCONNECT_CONF	confirm shutdown of B-channel connection

 04h/82h    DISCONNECT_IND	indication that B-channel is shutting down

 04h/83h    DISCONNECT_RESP	confirm that application knows of shutdown

 05h/80h    LISTEN_REQ	enable signalling on incoming events

 05h/81h    LISTEN_CONF	confirm enabling of incoming event signalling

 08h/80h    INFO_REQ	send protocol information for physical connect

 08h/81h    INFO_CONF	confirm INFO_REQ

 08h/82h    INFO_IND	indicate event for physical connection

 08h/83h    INFO_CONF	confirm receipt of INFO_IND

 41h/80h    SELECT_B_PROTOCOL_REQ   change protocol on already-active connect

 41h/81h    SELECT_B_PROTOCOL_CONF  confirm receipt of SELECT_B_PROTOCOL_REQ

 80h/80h    FACILITY_REQ	control optional facilities

 80h/81h    FACILITY_CONF	confirm acceptance of FACILITY_REQ

 80h/82h    FACILITY_IND	indicate facility-dependent event

 80h/83h    FACILITY_RESP	confirm receipt of FACILITY_IND

 82h/80h    CONNECT_B3_REQ	establish Level 3 connection

 82h/81h    CONNECT_B3_CONF	confirm start of connection establishment

 82h/82h    CONNECT_B3_IND	indication of incoming Level 3 connection

 82h/83h    CONNECT_B3_RESP	accept incoming connection

 83h/82h    CONNECT_B3_ACTIVE_IND  indication that Level 3 connection complete

 83h/83h    CONNECT_B3_ACTIVE_RESP confirm connection-complete indication

 84h/80h    DISCONNECT_B3_REQ	request shutdown of Level 3 connection

 84h/81h    DISCONNECT_B3_CONF	confirm shutdown of Level 3 connection

 84h/82h    DISCONNECT_B3_IND	indication that Level 3 is shutting down

 84h/83h    DISCONNECT_B3_RESP	confirm that application knows of shutdown

 85h/80h    GET_B3_PARAMS_REQ	request Level 3 parameters

 85h/81h    GET_B3_PARAMS_CONF	return Level 3 parameters

 86h/80h    DATA_B3_REQ	send data on Level 3

 86h/81h    DATA_B3_CONF	confirm sending of Level 3 data

 86h/82h    DATA_B3_IND	indication of incoming Level 3 data

 86h/83h    DATA_B3_RESP	confirm receipt of Level 3 data

 87h/80h    RESET_B3_REQ	request resetting of a logical connection

 87h/81h    RESET_B3_CONF	confirm logical connection reset

 87h/82h    RESET_B3_IND	indication from CAPI that logical conn. reset

 87h/83h    RESET_B3_RESP	confirm receipt of RESET_B3_IND

 88h/82h    CONNECT_B3_T90_ACTIVE_IND  indicate switch from T.70 to T.90

 88h/83h    CONNECT_B3_T90_ACTIVE_RESP confirm receipt of T90_ACTIVE_IND

 FFh/80h    MANUFACTURER_REQ	vendor-specific request

 FFh/81h    MANUFACTURER_CONF	vendor-specific request confirmation

 FFh/82h    MANUFACTURER_IND	vendor-specific notification

 FFh/83h    MANUFACTURER_RESP	vendor-specific notification confirmation

SeeAlso: #2658,#2659

INT F1 --03


F1 --F3 Format of CAPI v2.0 capabilities:

Copy to Main

Table 2662

Format of CAPI v2.0 capabilities:

Offset	Size	Description

 00h	WORD	number of installed controllers

 02h	WORD	number of supported B channels

 04h	DWORD	global options (see #2663)

 08h	DWORD	B1 protocol support flags (see #2664)

 0Ch	DWORD	B2 protocol support flags (see #2665)

 10h	DWORD	B3 protocol support flags (see #2666)

 14h 24 BYTEs	reserved for CAPI use

 2Ch 20 BYTEs	vendor-specific information

INT F1 --F3


F1 --F3 Bitfields for CAPI v2.0 global options:

Copy to Main

Table 2663

Bitfields for CAPI v2.0 global options:

Bit(s)	Description

 0	internal controller supported

 1	external controller supported

 2	handset supported (only if bit 1 also set)

 3	DTMF supported

 4-31	reserved (0)

SeeAlso: #2662

INT F1 --F3


F1 --F3 Bitfields for CAPI v2.0 B1 protocol support:

Copy to Main

Table 2664

Bitfields for CAPI v2.0 B1 protocol support:

Bit(s)	Description

 0	64k bps with HDLC framing (required, always set)

 1	64k bps bit-transparent operation with network byte framing

 2	V.110 asynchronous with start/stop byte framing

 3	V.110 synchronous with HDLC framing

 4	T.30 modem for group 3 FAX

 5	64k bps inverted with HDLC framing

 6	56k bps bit-transparent operation with network byte framing

 7-31	reserved (0)

SeeAlso: #2662

INT F1 --F3


F1 --F3 Bitfields for CAPI v2.0 B2 protocol support:

Copy to Main

Table 2665

Bitfields for CAPI v2.0 B2 protocol support:

Bit(s)	Description

 0	ISO 7776 (X.75 SLP) (required, always set)

 1	transparent

 2	SDLC

 3	Q.921 LAPD (D-channel X.25)

 4	T.30 for group 3 FAX

 5	point-to-point protocol (PPP)

 6	transparent (ignoring B1 framing errors)

 7-31	reserved (0)

SeeAlso: #2662

INT F1 --F3


F1 --F3 Bitfields for CAPI v2.0 B3 protocol support:

Copy to Main

Table 2666

Bitfields for CAPI v2.0 B3 protocol support:

Bit(s)	Description

 0	transparent (required, always set)

 1	T.90NL with T.70NL compatibility

 2	ISO 8208 (X.25 DTE-DTE)

 3	X.25 DCE

 4	T.30 for group 3 FAX

 5-31	reserved (0)

SeeAlso: #2662

INT F1 --F3


F2 ---- Values for ImageCapture function:

Copy to Main

Table 2616

Values for ImageCapture function:

 01h	power up

 02h	power down

 03h	set controls

 04h	capture image

 05h	display image

 06h	read file

 07h	write file

 08h	write array

 09h	read pixel

 0Ah	write pixel

 0Bh	check if VGA present

 0Ch	set video mode

 0Dh	check for keystroke

 0Eh	delay

INT F2 ----


FF ---- Values for QEMM internal functions:

Copy to Main

Table 2617

Values for QEMM internal functions:

 00h	reflect back to Virtual86-mode interrupt handler (default)

 01h	???

 02h	access DR7???

 03h	QPI upcall (see INT 67/AH=3Fh)

 04h	???

 05h	???

 06h	INT 15/AH=87h

 07h	EMS services (see INT 67/AH=40h,INT 67/AH=5Dh)

 08h	???

 09h	QEMM exception handler

 0Ah	XMS services (see INT 2F/AX=4310h)

 0Bh	Virtual DMA Services (see INT 4B/AX=8102h)

 0Ch	???

INT FF ----


Selected Topics

This index gives access to selected topics from the Interrupt List:

DOS Error Codes	Extended error information

SYSVARS	Get List of Lists

PSP Format	Program Segment Prefix description

EXE Header	"EXEC" function with .EXE header information

Country Information	Country-Specific Information


DOS Error Codes

GET EXTENDED ERROR INFORMATION

    Values for DOS extended error code:

    Format of media ID structure:

    Values for DOS Error Class:

    Values for DOS Suggested Action::

    Values for DOS Error Locus:


SYSVARS

"SYSVARS" - GET LIST OF LISTS

    Format of List of Lists:


EXE Header

"EXEC" - LOAD AND/OR EXECUTE PROGRAM

    Format of .EXE file header:

    Format of new executable header:


Country_Specific Information
Country-Specific Information

Get Country-Specific Information

    Format of DOS 2.00-2.10 country info:

    Format of DOS 2.11+ country info:

    Values for country code:

Set Country Code

Get Extended Country Information

    Format of country information:

    Format of uppercase table:

    Format of filename uppercase table:

    Format of filename terminator table:

    Format of collating table:

    Format of DBCS lead byte table:

Character Capitalization

Yes/No Responce

Filename Capitalization

Get Global Code Page Table

Set Global Code Page Table


Miscellaneous Information

Pin assignments, screen colors, scan codes, and control code acronyms.

This screen gives access to:

  Serial Port Pin Assignments

  Printer Port Pin Assignments

  Game Port Pin Assignments

  Colors on EGA/VGA display

  Keyboard Scan Codes

  Acronyms for ASCII Control Codes

Compiled from INT2GUID.ADD in the INT2GUID.ZIP package included in the

Interrupt List.

Copyright © 1991-1994 Bent Lynggaard


Serial Port Pin Assignments

RS-232-C serial port (COM port) pin assignments.

*n = PC pin, n is pin number on the 9 pin AT connector.

> = from PC or DTE; < = to PC or DTE. DTE = Data Terminal Equipment.

    1 FG    Frame ground            14 TD2 > Secondary TD

*3  2 TD  > Transmit Data           15 TC  < Transmission Signal Timing

*2  3 RD  < Receive Data            16 RD2 < Secondary RD

*7  4 RTS > Request To Send         17 RC  < Receiver Signal Timing

*8  5 CTS < Clear To Send           18       (unassigned)

*6  6 DSR < Data Set Ready          19 RS2 > Secondary RTS

*5  7 SG    Signal ground        *4 20 DTR > Data Terminal Ready

*1  8 DCD < Data Carrier Detect     21 SQ  < Signal Quality Detector

    9       (test)               *9 22 RI  < Ring Indicator

   10       (test)                  23 DRS = Data signal Rate Selector

   11       (unassigned)            24 TT  > Transmit Signal Timing

   12 CD2 < Secondary DCD           25       (unassigned)

   13 CT2 < Secondary CTS

See also INT 14.

Printer Port and Game Port pin assignments are also available.

Back to Miscellaneous Information index.


Printer Port Pin Assignments

Printer port (parallel port, LPT port) pin assignments.

25 pin PC printer port and 36 pin Centronic port.

> = from PC; < = to PC. Pins 1-9 are bidirectional on PS-2 models in ext. mode.

 Data                    Gnd          Data                    Gnd

  1 1 > ^Strobe         19 19         10 10 < ^Acknowledge   24 28

  2 2 > Data Bit 0      20 20         11 11 < Busy           24 29

  3 3 >  "    "  1      20 21         12 12 < Paper End      25 30

  4 4 >  "    "  2      21 22         13 13 < Select         18 16,33

  5 5 >  "    "  3      21 23         14 14 > ^Auto Feed xt  18 16,33

  6 6 >  "    "  4      22 24         32 15 < ^Error         18 16,33

  7 7 >  "    "  5      22 25         31 16 > ^Initialize    18 16,33

  8 8 >  "    "  6      23 26         36 17 > ^Select In     18 16,33

  9 9 >  "    "  7      23 27

See also INT 17.

Serial Port and Game Port pin assignments are also available.

Back to Miscellaneous Information index.


Game Port Pin Assignments

Game port pin assignments. (15 pins in 2 rows)

  1,8,9: +5 V

  15: +5 V or Midi RXD

  4,5: 0 V (ground)

  12: 0 V or Midi TXD

  2:  Switch A-1                Switches are sensed active when shorted

  3:  X-position A              to ground.

  6:  Y-position A

  7:  Switch A-2                Position sensors are variable resistors

  10: Switch B-1                0 ohms - 250 kiloohms from the position

  11: X-position B              pins to +5 V.

  13: Y-position B

  14: Switch B-2

See also INT 15 function 84.

Serial Port and Printer Port pin assignments are also available.

Back to Miscellaneous Information index.


Colors on EGA/VGA display

Screen colors.

 Normal colors       Bright colors          Attribute bits

 0 00 Black          8 08 Dark grey         7 normal    Foreground blink

 1 01 Blue           9 09 Light blue        7 alternate Background bright

 2 02 Green         10 0A Light green       6-4         Background color

 3 03 Cyan          11 0B Light cyan        3 normal    Foreground bright

 4 04 Red           12 0C Light red         3 alternate Alternate char. set

 5 05 Magenta       13 0D Light magenta     2-0         Foreground color

 6 06 Brown         14 0E Yellow

 7 07 White (grey)  15 0F Bright (white)

Normal/alternate function:       Set                     Read

  Attribute bit 7:         INT 10 AX=1003    INT 10 AH=1B offs. 2D bit 5

  Attribute bit 3:         INT 10 AX=1103*   INT 10 AH=1B offs. 2B<>offs. 2C

* BL bits 0,1,4<>bits 2,3,5. The bright attribute is still active, it can be

disabled/enabled by INT 10 AX=1000 BX=0712/0F12.

Back to Miscellaneous Information index.


Keyboard Scan Codes

Scan codes: special keys. Num Lock off (on: swap Plain/Shift col. Up - Del).

*: Not INT 16 AH = 00. See also next page.

       Plain  Shift   Ctrl    Alt         Plain  Shift   Ctrl    Alt

    Up  4800   4838    --     --       F1  3B00   5400   5E00   6800

  Down  5000   5032    --     --       F2  3C00   5500   5F00   6900

  Left  4B00   4B34   7300    --       F3  3D00   5600   6000   6A00

 Right  4D00   4D36   7400    --       F4  3E00   5700   6100   6B00

  Home  4700   4737   7700    --       F5  3F00   5800   6200   6C00

   End  4F00   4F31   7500    --       F6  4000   5900   6300   6D00

  PgUp  4900   4939   8400    --       F7  4100   5A00   6400   6E00

  PgDn  5100   5133   7600    --       F8  4200   5B00   6500   6F00

   Ins  5200   5230    --     --       F9  4300   5C00   6600   7000

   Del  5300   532E    --     --      F10  4400   5D00   6700   7100

   Esc  011B   011B   011B  *0100     F11 *8500  *8700  *8900  *8B00

   Tab  0F09   0F00  *9400  *A500     F12 *8600  *8800  *8A00  *8C00

  BkSp  0E08   0E08   0E7F  *0E00

Return  1C0D   1C0D   1C0A  *1C00   Enter  1C0D   1C0D   1C0A    --

 Space  3920   3920   3920   3920

Scan codes: special keys extended codes. Num Lock off. INT 16 AH = 10

             Numeric Keypad                     Special Keypad

       Plain  Shift   Ctrl    Alt         Plain  Shift   Ctrl    Alt

    Up  4800   4838   8D00   *--           48E0   48E0   8DE0   9800

  Down  5000   5032   9100   *--           50E0   50E0   91E0   A000

  Left  4B00   4B34   7300   *--           4BE0   4BE0   73E0   9B00

 Right  4D00   4D36   7400   *--           4DE0   4DE0   74E0   9D00

  Home  4700   4737   7700   *--           47E0   47E0   77E0   9700

   End  4F00   4F31   7500   *--           4FE0   4FE0   75E0   9F00

  PgUp  4900   4939   8400   *--           49E0   49E0   84E0   9900

  PgDn  5100   5133   7600   *--           51E0   51E0   76E0   A100

   Ins  5200   5230   9200   *--           52E0   52E0   9200   A200

   Del  5300   532E   9300    --           53E0   53E0   93E0   A300

   5    4C00   4C35   8F00   *--   * = compose

   /    E02F   E02F   9500   A400

   *    372A   372A   9600   3700

   -    4A2D   4A2D   8E00   4A00

   +    4E2B   4E2B   9000   4E00   Enter  E00D   E00D   E00A   A600

Scan codes: digits, punctuation marks, etc.

NB! US keyboard. The high byte may differ if a national keyboard is active,

and the symbols may not be paired as in the table.

*: Not INT 16 AH = 00. +: See also previous page.

     Plain  Shift   Ctrl    Alt         Plain  Shift   Ctrl    Alt

 ` ~  2960   297E    --   *2900     [ {  1A5B   1A7B   1A1B  *1A00

 1 !  0231   0221    --    7800     ] }  1B5D   1B7D   1B1D  *1B00

 2 @  0332   0340   0300   7900     ; :  273B   273A    --   *2700

 3 #  0433   0423    --    7A00     ' "  2827   2822    --   *2800

 4 $  0534   0524    --    7B00     \ |  2B5C   2B7C   2B1C  *2B00

 5 %  0635   0625    --    7C00     \ |  565C   567C    --     --  102nd key

 6 ^  0736   075E   071E   7D00     , <  332C   333C    --   *3300

 7 &  0837   0826    --    7E00     . >  342E   343E    --   *3400

 8 *  0938   092A    --    7F00     / ?  352F   353F    --   *3500

 9 (  0A39   0A28    --    8000    +/    352F   352F    --     --  numeric

 0 )  0B30   0B29    --    8100    +*    372A   372A    --     --  numeric

 - _  0C2D   0C5F   0C1F   8200    +-    4A2D   4A2D    --     --  numeric

 = +  0D3D   0D2B    --    8300    ++    4E2B   4E2B    --     --  numeric

Scan codes: letters. Caps Lock off. (Caps Lock on: swap Plain/Shift columns)

NB! US keyboard. The high byte may differ if a national keyboard is active.

     Plain  Shift   Ctrl    Alt         Plain  Shift   Ctrl    Alt

   a  1E61   1E41   1E01   1E00       n  316E   314E   310E   3100

   b  3062   3042   3002   3000       o  186F   184F   180F   1800

   c  2E63   2E43   2E03   2E00       p  1970   1950   1910   1900

   d  2064   2044   2004   2000       q  1071   1051   1011   1000

   e  1265   1245   1205   1200       r  1372   1352   1312   1300

   f  2166   2146   2106   2100       s  1F73   1F53   1F13   1F00

   g  2267   2247   2207   2200       t  1474   1454   1414   1400

   h  2368   2348   2308   2300       u  1675   1655   1615   1600

   i  1769   1749   1709   1700       v  2F76   2F56   2F16   2F00

   j  246A   244A   240A   2400       w  1177   1157   1117   1100

   k  256B   254B   250B   2500       x  2D78   2D58   2D18   2D00

   l  266C   264C   260C   2600       y  1579   1559   1519   1500

   m  326D   324D   320D   3200       z  2C7A   2C5A   2C1A   2C00

Back to Miscellaneous Information index.


Acronyms for ASCII Control Codes

Alphabetic list of control codes (C0) and extended control codes (C1).

ACK=  6    DEL=127    FE3= 11    IS4= 28    PU2=146    STX=  2    US = 31

APC=159    DLE= 16    FE4= 12    LF = 10    RI =141    SUB= 26    VT = 11

BEL=  7    EM = 25    FE5= 13    LS0= 15    RS = 30    SYN= 22    VTS=138

BS =  8    ENQ=  5    FF = 12    LS1= 14    SI = 15    TC1=  1

CAN= 24    EOT=  4    FS = 28    MW =149    SO = 14    TC2=  2

CCH=148    EPA=151    GS = 29    NAK= 21    SOH=  1    TC3=  3

CR = 13    ESA=135    HT =  9    NEL=133    SP = 32    TC4=  4

CSI=155    ESC= 27    HTJ=137    NUL=  0    SPA=150    TC5=  5

DC1= 17    ETB= 23    HTS=136    OSC=157    SS2=142    TC6=  6

DC2= 18    ETX=  3    IND=132    PLD=139    SS3=143    TC7= 16

DC3= 19    FE0=  8    IS1= 31    PLU=140    SSA=134    TC8= 21

DC4= 20    FE1=  9    IS2= 30    PM =158    ST =156    TC9= 22

DCS=144    FE2= 10    IS3= 29    PU1=145    STS=147    TCx= 23

This list includes the graphics codes (G0):

 32 20 SP  Space                       127 7F DEL Delete

Control codes ASCII 0 - 31 (C0).

Often symbolized by ^ + char. @ - _, e.g. ^M=CR.

  0 00 @ NUL Null                       16 10 P DLE (TC7) Data Link Escape

  1 01 A SOH (TC1) Start Of Heading     17 11 Q DC1 Device Control 1, Xon

  2 02 B STX (TC2) Start of Text        18 12 R DC2 Device Control 2

  3 03 C ETX (TC3) End of Text          19 13 S DC3 Device Control 3, Xoff

  4 04 D EOT (TC4) End Of Transmission  20 14 T DC4 Device Control 4

  5 05 E ENQ (TC5) Enquiry              21 15 U NAK (TC8) Not Acknowledge

  6 06 F ACK (TC6) Acknowledge          22 16 V SYN (TC9) Synchronous idle

  7 07 G BEL Bell                       23 17 W ETB (TC10) End Transm. Block

  8 08 H BS  (FE0) Back Space           24 18 X CAN Cancel

  9 09 I HT  (FE1) Horizontal Tabulat.  25 19 Y EM  End of Medium

 10 0A J LF  (FE2) Line Feed            26 1A Z SUB Substitute character

 11 0B K VT  (FE3) Vertical Tabulation  27 1B [ ESC Escape seq. introd.

 12 0C L FF  (FE4) Form Feed            28 1C \ FS  (IS4) File Separator

 13 0D M CR  (FE5) Carriage Return      29 1D ] GS  (IS3) Group Separator

 14 0E N SO  (LS1) Shift Out            30 1E ^ RS  (IS2) Record Separator

 15 0F O SI  (LS0) Shift In             31 1F _ US  (IS1) Unit Separator

TC=Transmission Control

FE=Format Effector

LS=Locking Shift

IS=Information Separator

Extended control codes 128 - 159 (C1).

Sometimes emulated by ESC + char. @ - _, e.g. Ansi code "ESC[" = "CSI"

128 80 @     (unassigned)              144 90 P DCS Device Control String

129 81 A     (unassigned)              145 91 Q PU1 Private Use 1

130 82 B     (unassigned)              146 92 R PU2 Private Use 2

131 83 C     (unassigned)              147 93 S STS Set Transmit State

132 84 D IND Index                     148 94 T CCH Cancel Character

133 85 E NEL Next Line                 149 95 U MW  Message Waiting

134 86 F SSA Start Selected Area       150 96 V SPA Start Protected Area

135 87 G ESA End Selected Area         151 97 W EPA End Protected Area

136 88 H HTS Horizontal Tab. Set       152 98 X     (unassigned)

137 89 I HTJ Horiz. Tab. w. Justif.    153 99 Y     (unassigned)

138 8A J VTS Vertical Tab. Set         154 9A Z     (unassigned)

139 8B K PLD Partial Line Down         155 9B [ CSI Control Seq. Introd.

140 8C L PLU Partial Line Up           156 9C \ ST  String Terminator

141 8D M RI  Reverse Index             157 9D ] OSC Operating System Command

142 8E N SS2 Single Shift G2           158 9E ^ PM  Privacy Message

143 8F O SS3 Single Shift G3           159 9F _ APC Application Program Cmd.

Back to Miscellaneous Information index.


"SeeAlso:"

INTWIN does not provide hotspots for interrupt references in "See" or "SeeAlso:" fields, as a failsafe interpretation of these references is not feasible. Rather, use INTWIN's search facilities, and use the short form interrupt search string. Then, from the list of hits, select the right topic. Remember that if no interrupt number is specified in the reference, it is the current interrupt number.

Examples and number of hits are based on release 43 of the List:

INT 03 - Columbia PCs (desktop,VP portables) - ROM DEBUGGER

...

SeeAlso: INT 00"Zenith",INT 03"Realia"

Search on "00": 2 hits, one is "INT 00 ---- - Zenith - ROM DEBUGGER"

Search on "03": 8 hits, one is "INT 03 ---- - Realia COBOL - DEBUGGER SUPPORT"

INT 05 - PRINT SCREEN

...

SeeAlso: INT 10/AH=12h/BL=20h

Search on "10 12 BL20": one hit.

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET SPECIAL MODE

        AX = 007Eh

        BX = horizontal dimension of the mode desired

...

SeeAlso: AH=00h,AX=0070h,AX=007Fh,AX=6F05h,AH=FFh"GO32"

Search on "10 00--": one hit.

Search on "10 0070": one hit.

Search on "10 007F": 9 hits, 4 begin with "INT 10 007F - VIDEO - Paradise VGA"

Search on "10 6F05": one hit.

Search on "10 FF--": 3 hits, one is "INT 10 FF-- - DJ GO32.EXE ..."

INT 10 - VIDEO - Paradise VGA, AT&T VDC600 - SET VGA OPERATION

        AX = 007Fh

        BH = 00h

...

SeeAlso: AX=007Fh/BH=01h,AX=007Fh/BH=02h

Search on "10 007F BH01" and "10 007F BH02": one hit each. - In this case it is evident that the referenced topics are probably the next topics, so browsing to them is easier than searching.

INT 10 - VIDEO - SET CURSOR POSITION

        AH = 02h

...

SeeAlso: AH=03h,AH=05h,INT 60/DI=030Bh

Search on "10 03": one hit.

Search on "10 05": 3 hits, one is "INT 10 05-- - VIDEO -  SELECT ACTIVE DISPLAY PAGE"

Search on "60 DI030B": one hit.

INT 88 - APL*PLUS/PC - CREATE CHARACTER SCALAR/VECTOR/MATRIX <64K IN SIZE

        AL = 01h

...

SeeAlso: AL=02h,AL=08h,INT C8"APL"

Search on "88 --02": one hit

Search on "88 --08": one hit

Search on "C8": 2 hits, one is "INT C8 ---- - APL*PLUS/PC - IDENTICAL TO INT 88"


Compile Time Configuration

Apparently this help file was already compiled. Many properties of the help file can be defined in the INT2WHLP.CFG file used by the the INT2WHLP compiler available in the DOS version of Ralf Brown's Interrupt List, see INTERRUP.1ST. After compilation, only a few of them can be changed, and only utilizing special programs, see Size and Color.

The following can be controlled at compile time:

Whether the help file has both a compressed and an expanded index, or a compressed index only.

Which one of the two pops up initially.

Whether single-entry interrupts (interrupts numbers with only one topic in the list) are referenced directly from the compressed index, or the reference in the compressed index goes to a subindex with one entry.

Whether the compressed index is listed in a single column with a header for each interrupt number, or in 4, 8, or 16 columns without headers, but with more entries visible simultaniously.

Whether or not the expanded index has headers separating the interrupt numbers.

Whether or not keywords (like "See also:", "Notes") are bolded.

Whether or not there are spaces around the equal sign in interrupt search strings e.g. "INT 21 AH = 4C" or "INT 21 AH=4C".

The initial position and size, and the background colors of both the main and the table window.

The font and font size used for the headers and for the text.

Extra topics included in addition to Ralf Brown's Interrupt List (like this Help and Hints text).

See also the files (in INTERnn?.ZIP/INT2WHLP.ZIP):

I2W-FILE.TXT

I2W-HINT.TXT

I2W-CFG.TXT

I2W-OPT.TXT

Program source files.

I2W-TEST.ZIP

Use the latter subpackage for experimenting with compile time options and their effects.


Copying

A topic can be copied to the clipboard by clicking on the Copy pushbutton or by pressing O.

A selected part of a topic can be copied to the clipboard from the Edit menu's Copy... entry.


Full Text Search

This compilation of the Interrupt List includes a full text search facility implemented as a special version of Oxford Computer Consultants' text search facility. To use it, copy HINTSRCH.DLL from Oxford Computer Consultants' program package HINTSRCH.ZIP to your Windows SYSTEM directory. Use the "Find Text" push button to invoke the facility from the Interrupt List window.

Thanks to Oxford Computer Consultants for supplying this program. See material in HINTSRCH.ZIP for information about Oxford Computer Consultants' products. Note that HINTSRCH.DLL will work only with the INTWIN.HLP file.

Oxford Computer Consultants' text search facility is pretty fast, but after all, it does take time to uncompress and search several megabytes of text. Microsoft offers a Full Text Search kit in the Development Network library which uses an index file for the search, so a search is a matter of an index lookup rather than a text search, and thus it is virtually instant. This compilation of the Interrupt List is prepared to use Microsoft's kit in that it includes a BAG.INI baggage file with the following contents:

[bag.ini]

groupcount=1

group1=INTWIN

[INTWIN]

Title=INTWIN Full Text Search

Indexfile=INTWIN.IND

If you have access to Microsoft's kit and want to use it for the List, you can use the WH_wEdit program (see "Size and Color") to delete macros for the Oxford Computer Consultants text search facility and insert the macros for the Microsoft text search facility. Note that the index file you must generate is very long, about 1.7 times the size of INTWIN.HLP.


Help Window Pushbuttons

The Help Window includes some extra shortcut pushbuttons.

"Print" sends the current topic to the currently selected printer. See also Printing.

"Copy" copies the current topic to the clipboard. See also Copying.

"Exit" closes both the main window and an open secodary (table) window. Selecting "Close" from the control menu or pressing Alt F4 close only the main window.

"Print" and "Exit" are equivalent to selecting "Print Topic" and "Exit" from the "File" menu.

"Text Search" invokes a Full Text Search facility.


INTWIN Help and Hints

Interrupts

Table Cross-References

Search Facilities

"SeeAlso:"

Full Text Search

Printing

Copying

Help Window Pushbuttons

Compile Time Configuration

Size and Color

Remote Access


Interrupts

The interrupt topics can be accessed with search keys (see Search Facilities) or from the main index via sub indexes.

The appearance of sub indexes depends on some configuration file settings and program options at compile time. The following text describes the default appearence. See Compile Time Configuration for other posibilities.

The main index's "Interrupt Index" entry takes you to either a compressed index or to an expanded index. Each of them has a hotspot at the top causing the other one to pop up and to be the one selected from the main index.

The compressed index has references to a subindex for each interrupt number, for example to INT 03 - CPU-generated - BREAKPOINT. The subindexes have references to the individual interrupt topics.

The expanded index has direct references to each individual interrupt topic.

Many interrupt topics have references to tables, always of the form "#nnnn" where nnnn is a four digit decimal number. Clicking on these hotspots causes the table to pop up in a separate window, so it is easy to switch between the two topics. Tables can have references to other tables, and if such a hotspot is selected in the secondary (table) window, the current window is erased and the new table is drawn. To ease cross referencing between two tables, use the first table's hotspot "Copy to Main" to have it pop up in the main window before selecting the referenced table.


Printing

A topic can be sent to the currently selected printer by clicking on the Print pushbutton or by pressing P.

Another printer or printer setup can be specified using the File menu's Print setup... entry.


Remote Access

This file can be accessed from other help files. The interfile jump address "Identifier@drive:\path\intwin.hlp" or the jump macro "JumpId(`drive:\path\intwin.hlp',`Identifier')"  will open this file at the specified identifier - or "context string" as it is usually called in WINHELP terminology. Below is a list of identifiers used for the Interrupt List.

Window Title	Identifier	Comment
Contents:	contents	Main index
Interrupt Index	idIndex	Expanded subindex, if included
Interrupts	idInterrupts	Compressed subindex
INT NN - <title>	nn_0	Sub-sub index for INT NN, nn are two hex digits, e.g. 00_0, 03_0.
INT NN AHAL - <title>	nn_1	First entry about INT NN, the following entries have consecutive identifiers ... nn_9, nn_10, ... , for example. 03_1, 03_2. Note: Topics selected with these identifiers can change as information is updated in new releases of Ralf Brown's Interrupt List. See also "aliases" later in this topic.
Tables	idTables	Table index.
NN AHAL <table title>	tnnnn	Table No. nnnn, nnnn are the four decimal digits from the List. NN and AHAL in the title are the interrupt number and the register contents (sub function) where the table is defined. Examples: t0001, t0002. See note at identifier "nn_1".
FILELIST	1	The initial part of the Interrrupt List.
<notes>	n	Other notes have consecutive numbers as identifiers, e.g. 2, 3.
INTERRUP.1ST File	id1st	INTERRUP.1ST file topic.
Credits	idCredits	The Credits topic.

The help file also uses the identifier "Compressed_Index", and partial (filtered) compilations of the list use the identifiers "idPartComp", "idFlt_file", and "idFlt_meth".

Aliases for Interrupt List topics can be included in the INT2WHLP configuration file and compiled with the list. As an example, the configuration file's [ALIAS] and [TABLEALIAS] sections have the lines:

HHtest1=INT 02 ---- - external hardware - NON-MASKABLE INTERRUPT

and

HHtest2=03 0913 Format of Soft-ICE breakpoint structure:

causing HHtest1 and HHtest2 to be alternative identifiers for the interrupt and the table specified, also available for interfile (remote) access.

Other identifiers can be defined by including files at compile time, for example idHelpHints for the index to this part of the file, and HHaccess for this topic.


Search Facilities

INTWIN facilitates seaching interrupt topics with many different keys, based on:

a. Elements in the interrupt header line.

b. Keys in the file CATEGORY.KEY for the appropriate interrupts category.

c. Combinations of interrupt number and register contents. These keys have a normal and a short form. The short form was introduced to ease the typing of a search string. See the examples below.

d. Category letters.

For example,

--------D-215E01CH00-----------------------------

INT 21 - DOS 3.1+ network - SET MACHINE NAME

AX = 5E01h

CH = 00h undefine name (make it invalid)

will be listed with the following search keys:

DOS 3.1+ network          \      a

SET MACHINE NAME          /

DOS kernal                \

kernal (DOS)               >     b

operating systems (DOS)   /

INT 21 AX = 5E01 CH = 00  \

INT 21 AX = 5E01           \

INT 21 AH = 5E              \

INT 21          1)           \

21 5E01 CH00                  \

21 5E01                        > c

21 5E           2)            /

21              1)           /

AX = 5E01                   /

AH = 5E         3)         /

CH = 00                   /

D!              4)               d

1)	WINHELP lists only the first 400 search hits.

2)	The short form of an interrupt using AL to specify a function has two leading dashes in the function number, e.g. the short form of INT 2D AL = 10 is 2D --10.

Two dashes can be appended to the short form of an interrupt using AH for funtion number, to distinguish the string from the more general string used also as keyword for interrupts with the same value in the high part of the AX register, e.g. 10 00-- will give less search hits than 10 00.

3)	Use AH = nn to search for functions called with nn in AH or in the high byte of AX. Use AX = nn-- to search for functions called with nn in AH and no specific value in AL.

4) 	Because WINHELP's search facility does not distinguish between letter case, the search keys for capital letter categories are the letter followed by an exclamation mark.


Size and Color

The position and size of the secondary window used for tables must be defined at compile time, and the information is stored in the INTWIN.HLP file. However, WINHELP reads the values as a fraction of the screen size, and therefore proper values depend on the graphics resolution.

To facilitate the use of a help file on another graphics system than it was compiled for, the program WH_wEdit can be obtained from SimTel Software Repository mirrors as WH_EDnnn.ZIP in directory SimTel/win3/winhelp/. nnn is a version number >= 111. The SimTel directory may be a subdirectory on some mirror sites. This program will let you edit both the position and size, and the background colors of the nonscrolling (header) and scrolling (text) areas of the screen. See INTERRUP.1ST for SimTel mirror sites.

Version 1.11 (and newer) of WH_wEdit facilitates also editing of macros in help files. This can be useful if you want to use another Full Text Search facility than the one included in this compilation.

WH_wEdit is a Windows application, and it is straightforward to use. It has a - very short - online help.

WH_wEdit is freeware. It is supplied without any warranties. Be sure to have a backup of files you want to edit with WH_wEdit.


Table Cross-References

Tables are separate topics in the help file. When referenced from a "#nnnn" hotspot, the table pops up in a secondary window, thus the user can easily change between the source in the main help window and the referenced table in the secondary window. However, secondary windows are less flexible than the main window:

Topics are not recorded in the history list.

You cannot browse between topics (<< and >> pushbuttons).

The topics cannot be copied or printed from the secondary window.

Therefore all tables have a "Copy to Main" hotspot at the top.

Copying a table to the main window also eases cross referencing between the table and subtables referenced from that table.

There are two search keys for each table topic: "#nnnn" where nnnn is the four digit table number, and the table title as given in the Interrupt List ("Bitfields for ...", "Call ... with:", "Format of ...", "Values for ...").

There is a Tables subindex with a listing of all the tables.

The table topic titles include the interrupt number and subfunction where the table is defined, and there is a hotspot at the end of each table that pops up the appropriate interrupt in the main window.

Normally every table will be referenced from the current interrupt either directly or inderectly (from another table). If for some reason the compiler program creating the INTWIN help file fails to detect a reference to one or more table, the program inserts a "Table #nnnn" hotspot at the end of the interrupt topic for each of these tables, to ensure a path to the table.